From e5c61e7e8febeaf78b97cf13e2b0d32af17f3f02 Mon Sep 17 00:00:00 2001 From: David Taylor Date: Tue, 9 Jul 2024 16:31:18 +0100 Subject: [PATCH] Add per-commit tests between Ember 5.9 and 5.10 --- config/environment.js | 2 +- ember/ember-3.28.8.prod.js | 5103 ---- ember/ember-3.28.8.template-compiler.js | 23704 ---------------- ember/ember-4.0.1.prod.js | 3381 --- ember/ember-4.0.1.template-compiler.js | 21729 -------------- ember/ember-5.5.0.prod.js | 3440 --- ember/ember-5.5.0.template-compiler.js | 19195 ------------- ....prod.js => ember-git-01-a474b88f.prod.js} | 15 +- ...mber-git-01-a474b88f.template-compiler.js} | 4 +- ember/ember-git-02-a4359032.prod.js | 3734 +++ ...mber-git-02-a4359032.template-compiler.js} | 3332 ++- ....prod.js => ember-git-03-f9cfada9.prod.js} | 1239 +- ...mber-git-03-f9cfada9.template-compiler.js} | 3458 ++- ....prod.js => ember-git-04-aa913464.prod.js} | 1240 +- ...mber-git-04-aa913464.template-compiler.js} | 3753 +-- ....prod.js => ember-git-05-5c8df04a.prod.js} | 1985 +- ...ember-git-05-5c8df04a.template-compiler.js | 20034 +++++++++++++ ember/ember-git-06-12f617ec.prod.js | 3732 +++ ...ember-git-06-12f617ec.template-compiler.js | 20034 +++++++++++++ ember/ember-git-07-53b2de8e.prod.js | 3388 +++ ...ember-git-07-53b2de8e.template-compiler.js | 18886 ++++++++++++ ember/ember-git-08-fbe87383.prod.js | 3388 +++ ...ember-git-08-fbe87383.template-compiler.js | 18886 ++++++++++++ ember/ember-git-09-438ff67e.prod.js | 3388 +++ ...mber-git-09-438ff67e.template-compiler.js} | 4 +- ....prod.js => ember-git-10-756f0e3f.prod.js} | 4 +- ...ember-git-10-756f0e3f.template-compiler.js | 18886 ++++++++++++ ember/ember-git-11-3daeddda.prod.js | 3390 +++ ...ember-git-11-3daeddda.template-compiler.js | 18886 ++++++++++++ scripts/build-ember-assets.js | 70 +- 30 files changed, 144906 insertions(+), 83384 deletions(-) delete mode 100644 ember/ember-3.28.8.prod.js delete mode 100644 ember/ember-3.28.8.template-compiler.js delete mode 100644 ember/ember-4.0.1.prod.js delete mode 100644 ember/ember-4.0.1.template-compiler.js delete mode 100644 ember/ember-5.5.0.prod.js delete mode 100644 ember/ember-5.5.0.template-compiler.js rename ember/{ember-5.9.0.prod.js => ember-git-01-a474b88f.prod.js} (99%) rename ember/{ember-5.9.0.template-compiler.js => ember-git-01-a474b88f.template-compiler.js} (99%) create mode 100644 ember/ember-git-02-a4359032.prod.js rename ember/{ember-5.8.0.template-compiler.js => ember-git-02-a4359032.template-compiler.js} (90%) rename ember/{ember-5.8.0.prod.js => ember-git-03-f9cfada9.prod.js} (86%) rename ember/{ember-5.7.0.template-compiler.js => ember-git-03-f9cfada9.template-compiler.js} (90%) rename ember/{ember-5.7.0.prod.js => ember-git-04-aa913464.prod.js} (86%) rename ember/{ember-5.6.0.template-compiler.js => ember-git-04-aa913464.template-compiler.js} (88%) rename ember/{ember-5.6.0.prod.js => ember-git-05-5c8df04a.prod.js} (76%) create mode 100644 ember/ember-git-05-5c8df04a.template-compiler.js create mode 100644 ember/ember-git-06-12f617ec.prod.js create mode 100644 ember/ember-git-06-12f617ec.template-compiler.js create mode 100644 ember/ember-git-07-53b2de8e.prod.js create mode 100644 ember/ember-git-07-53b2de8e.template-compiler.js create mode 100644 ember/ember-git-08-fbe87383.prod.js create mode 100644 ember/ember-git-08-fbe87383.template-compiler.js create mode 100644 ember/ember-git-09-438ff67e.prod.js rename ember/{ember-5.10.0.template-compiler.js => ember-git-09-438ff67e.template-compiler.js} (99%) rename ember/{ember-5.10.0.prod.js => ember-git-10-756f0e3f.prod.js} (99%) create mode 100644 ember/ember-git-10-756f0e3f.template-compiler.js create mode 100644 ember/ember-git-11-3daeddda.prod.js create mode 100644 ember/ember-git-11-3daeddda.template-compiler.js diff --git a/config/environment.js b/config/environment.js index dc3934a..6fc8a0d 100644 --- a/config/environment.js +++ b/config/environment.js @@ -7,7 +7,7 @@ function emberVersions() { return fs .readdirSync("ember") .map(function (file) { - const matched = file.match(/^ember-(\d+\.\d+\.\d+)\.prod/); + const matched = file.match(/^ember-(.*)\.prod/); if (matched) { return matched[1]; diff --git a/ember/ember-3.28.8.prod.js b/ember/ember-3.28.8.prod.js deleted file mode 100644 index 80b8760..0000000 --- a/ember/ember-3.28.8.prod.js +++ /dev/null @@ -1,5103 +0,0 @@ -window.EmberENV=function(e,t){for(var r in t)e[r]=t[r] -return e}(window.EmberENV||{},{EXTEND_PROTOTYPES:!1,FEATURES:{},_APPLICATION_TEMPLATE_WRAPPER:!1,_DEFAULT_ASYNC_OBSERVERS:!0,_JQUERY_INTEGRATION:!1,_TEMPLATE_ONLY_GLIMMER_COMPONENTS:!0}) -var loader,define,requireModule,require,requirejs,runningTests=!1 -if(function(e){"use strict" -function t(){var e=Object.create(null) -return e.__=void 0,delete e.__,e}var r={loader:loader,define:define,requireModule:requireModule,require:require,requirejs:requirejs} -requirejs=require=requireModule=function(e){for(var t=[],r=u(e,"(require)",t),i=t.length-1;i>=0;i--)t[i].exports() -return r.module.exports},loader={noConflict:function(t){var i,n -for(i in t)t.hasOwnProperty(i)&&r.hasOwnProperty(i)&&(n=t[i],e[n]=e[i],e[i]=r[i])},makeDefaultExport:!0} -var i=t(),n=(t(),0) -var s=["require","exports","module"] -function a(e,t,r,i){this.uuid=n++,this.id=e,this.deps=!t.length&&r.length?s:t,this.module={exports:{}},this.callback=r,this.hasExportsAsDep=!1,this.isAlias=i,this.reified=new Array(t.length),this.state="new"}function o(){}function l(e){this.id=e}function u(e,t,r){for(var n=i[e]||i[e+"/index"];n&&n.isAlias;)n=i[n.id]||i[n.id+"/index"] -return n||function(e,t){throw new Error("Could not find module `"+e+"` imported from `"+t+"`")}(e,t),r&&"pending"!==n.state&&"finalized"!==n.state&&(n.findDeps(r),r.push(n)),n}function c(e,t){if("."!==e.charAt(0))return e -for(var r=e.split("/"),i=t.split("/").slice(0,-1),n=0,s=r.length;n(t||(t=(0,i.default)("ember").default),t) -function n(t){Object.defineProperty(e.context.exports,t,{enumerable:!0,configurable:!0,get:r})}n("Ember"),n("Em"),"object"==typeof module&&"function"==typeof module.require&&(module.exports=t=(0,i.default)("ember").default)})()})),e("@ember/-internals/browser-environment/index",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.window=e.userAgent=e.location=e.isIE=e.isFirefox=e.isChrome=e.history=e.hasDOM=void 0 -var t=e.hasDOM="object"==typeof self&&null!==self&&self.Object===Object&&"undefined"!=typeof Window&&self.constructor===Window&&"object"==typeof document&&null!==document&&self.document===document&&"object"==typeof location&&null!==location&&self.location===location&&"object"==typeof history&&null!==history&&self.history===history&&"object"==typeof navigator&&null!==navigator&&self.navigator===navigator&&"string"==typeof navigator.userAgent -e.window=t?self:null,e.location=t?self.location:null,e.history=t?self.history:null,e.userAgent=t?self.navigator.userAgent:"Lynx (textmode)",e.isChrome=!!t&&("object"==typeof chrome&&!("object"==typeof opera)),e.isFirefox=!!t&&"undefined"!=typeof InstallTrigger,e.isIE=!!t&&("undefined"!=typeof MSInputMethodContext&&"undefined"!=typeof documentMode)})),e("@ember/-internals/console/index",["exports","@ember/debug","@ember/deprecated-features"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i -r.LOGGER&&(i={log(){return console.log(...arguments)},warn(){return console.warn(...arguments)},error(){return console.error(...arguments)},info(){return console.info(...arguments)},debug(){return console.debug?console.debug(...arguments):console.info(...arguments)},assert(){return console.assert(...arguments)}}) -e.default=i})),e("@ember/-internals/container/index",["exports","@ember/-internals/owner","@ember/-internals/utils","@ember/debug","@ember/polyfills"],(function(e,t,r,i,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.deprecatedStoreInjections=e.Registry=e.INIT_FACTORY=e.Container=void 0,e.getFactoryFor=function(e){return e[f]},e.privatize=function([e]){var t=y[e] -if(t)return t -var[i,n]=e.split(":") -return y[e]=(0,r.intern)(`${i}:${n}-${_}`)},e.setFactoryFor=m -e.deprecatedStoreInjections=void 0 -class s{constructor(e,t={}){this.registry=e,this.owner=t.owner||null,this.cache=(0,r.dictionary)(t.cache||null),this.factoryManagerCache=(0,r.dictionary)(t.factoryManagerCache||null),this.isDestroyed=!1,this.isDestroying=!1}lookup(e,t){if(this.isDestroyed)throw new Error("Can not call `.lookup` after the owner has been destroyed") -return l(this,this.registry.normalize(e),t)}destroy(){this.isDestroying=!0,h(this)}finalizeDestroy(){p(this),this.isDestroyed=!0}reset(e){this.isDestroyed||(void 0===e?(h(this),p(this)):function(e,t){var r=e.cache[t] -delete e.factoryManagerCache[t],r&&(delete e.cache[t],r.destroy&&r.destroy())}(this,this.registry.normalize(e)))}ownerInjection(){var e={} -return(0,t.setOwner)(e,this.owner),e}factoryFor(e){if(this.isDestroyed)throw new Error("Can not call `.factoryFor` after the owner has been destroyed") -var t=this.registry.normalize(e) -return u(this,t,e)}}function a(e,t){return!1!==e.registry.getOption(t,"singleton")}function o(e,t){return!1!==e.registry.getOption(t,"instantiate")}function l(e,t,r={}){var i=t -if(!0===r.singleton||void 0===r.singleton&&a(e,t)){var n=e.cache[i] -if(void 0!==n)return n}return function(e,t,r,i){var n=u(e,t,r) -if(void 0===n)return -if(function(e,t,{instantiate:r,singleton:i}){return!1!==i&&!1!==r&&(!0===i||a(e,t))&&o(e,t)}(e,r,i)){var s=e.cache[t]=n.create() -return e.isDestroying&&"function"==typeof s.destroy&&s.destroy(),s}if(function(e,t,{instantiate:r,singleton:i}){return!1!==r&&(!1===i||!a(e,t))&&o(e,t)}(e,r,i))return n.create() -if(function(e,t,{instantiate:r,singleton:i}){return!1!==i&&!r&&a(e,t)&&!o(e,t)}(e,r,i)||function(e,t,{instantiate:r,singleton:i}){return!(!1!==r||!1!==i&&a(e,t)||o(e,t))}(e,r,i))return n.class -throw new Error("Could not create factory")}(e,i,t,r)}function u(e,t,r){var i=e.factoryManagerCache[t] -if(void 0!==i)return i -var n=e.registry.resolve(t) -if(void 0!==n){0 -var s=new g(e,n,r,t) -return e.factoryManagerCache[t]=s,s}}function c(e,t,r){for(var i=r.injections,n=0;n{if("object"==typeof e&&null!==e){for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&"EXTEND_PROTOTYPES"!==r&&"EMBER_LOAD_HOOKS"!==r){var i=a[r] -!0===i?a[r]=!1!==e[r]:!1===i&&(a[r]=!0===e[r])}var{EXTEND_PROTOTYPES:n}=e -if(void 0!==n)if("object"==typeof n&&null!==n)a.EXTEND_PROTOTYPES.String=!1!==n.String,t.FUNCTION_PROTOTYPE_EXTENSIONS&&(a.EXTEND_PROTOTYPES.Function=!1!==n.Function),a.EXTEND_PROTOTYPES.Array=!1!==n.Array -else{var s=!1!==n -a.EXTEND_PROTOTYPES.String=s,t.FUNCTION_PROTOTYPE_EXTENSIONS&&(a.EXTEND_PROTOTYPES.Function=s),a.EXTEND_PROTOTYPES.Array=s}var{EMBER_LOAD_HOOKS:o}=e -if("object"==typeof o&&null!==o)for(var l in o)if(Object.prototype.hasOwnProperty.call(o,l)){var u=o[l] -Array.isArray(u)&&(a.EMBER_LOAD_HOOKS[l]=u.filter((e=>"function"==typeof e)))}var{FEATURES:c}=e -if("object"==typeof c&&null!==c)for(var d in c)Object.prototype.hasOwnProperty.call(c,d)&&(a.FEATURES[d]=!0===c[d]) -0}})(n.EmberENV)})),e("@ember/-internals/error-handling/index",["exports"],(function(e){"use strict" -var t -Object.defineProperty(e,"__esModule",{value:!0}),e.getDispatchOverride=function(){return r},e.getOnerror=function(){return t},e.onErrorTarget=void 0,e.setDispatchOverride=function(e){r=e},e.setOnerror=function(e){t=e} -var r -e.onErrorTarget={get onerror(){return t}}})),e("@ember/-internals/extension-support/index",["exports","@ember/-internals/extension-support/lib/data_adapter","@ember/-internals/extension-support/lib/container_debug_adapter"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ContainerDebugAdapter",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"DataAdapter",{enumerable:!0,get:function(){return t.default}})})),e("@ember/-internals/extension-support/lib/container_debug_adapter",["exports","@ember/string","@ember/-internals/runtime"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=r.Object.extend({resolver:null,canCatalogEntriesByType:e=>"model"!==e&&"template"!==e,catalogEntriesByType(e){var i=(0,r.A)(r.Namespace.NAMESPACES),n=(0,r.A)(),s=new RegExp(`${(0,t.classify)(e)}$`) -return i.forEach((e=>{for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)&&s.test(i)){var a=e[i] -"class"===(0,r.typeOf)(a)&&n.push((0,t.dasherize)(i.replace(s,"")))}})),n}})})),e("@ember/-internals/extension-support/lib/data_adapter",["exports","@ember/-internals/owner","@ember/runloop","@ember/-internals/metal","@ember/string","@ember/-internals/utils","@ember/-internals/runtime","@glimmer/validator"],(function(e,t,r,i,n,s,a,o){"use strict" -function l(e,t){if(s.HAS_NATIVE_SYMBOL&&Symbol.iterator in e)for(var r of e)t(r) -else e.forEach(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class u{getCacheForItem(e){var t=this.recordCaches.get(e) -if(!t){var r=!1 -t=(0,o.createCache)((()=>{r?this.updated.push(this.wrapRecord(e)):(this.added.push(this.wrapRecord(e)),r=!0)})),this.recordCaches.set(e,t)}return t}constructor(e,t,r,i,n,s){this.recordCaches=new Map,this.added=[],this.updated=[],this.removed=[],this.release=s,this.wrapRecord=n,this.recordArrayCache=(0,o.createCache)((()=>{var s=new Set;(0,o.consumeTag)((0,o.tagFor)(e,"[]")),l(e,(e=>{(0,o.getValue)(this.getCacheForItem(e)),s.add(e)})),(0,o.untrack)((()=>{this.recordCaches.forEach(((e,t)=>{s.has(t)||(this.removed.push(n(t)),this.recordCaches.delete(t))}))})),this.added.length>0&&(t(this.added),this.added=[]),this.updated.length>0&&(r(this.updated),this.updated=[]),this.removed.length>0&&(i(this.removed),this.removed=[])}))}revalidate(){(0,o.getValue)(this.recordArrayCache)}}class c{constructor(e,t,r){var i=!1 -this.cache=(0,o.createCache)((()=>{l(e,(()=>{})),(0,o.consumeTag)((0,o.tagFor)(e,"[]")),!0===i?t():i=!0})),this.release=r}revalidate(){(0,o.getValue)(this.cache)}}e.default=a.Object.extend({init(){this._super(...arguments),this.containerDebugAdapter=(0,t.getOwner)(this).lookup("container-debug-adapter:main"),this.releaseMethods=(0,a.A)(),this.recordsWatchers=new Map,this.typeWatchers=new Map,this.flushWatchers=null},attributeLimit:3,acceptsModelName:!0,getFilters:()=>(0,a.A)(),watchModelTypes(e,t){var r=this.getModelTypes(),i=(0,a.A)() -e(r.map((e=>{var r=e.klass,n=this.wrapModelType(r,e.name) -return i.push(this.observeModelType(e.name,t)),n}))) -var n=()=>{i.forEach((e=>e())),this.releaseMethods.removeObject(n)} -return this.releaseMethods.pushObject(n),n},_nameToClass(e){if("string"==typeof e){var r=(0,t.getOwner)(this).factoryFor(`model:${e}`) -e=r&&r.class}return e},watchRecords(e,t,r,i){var n=this._nameToClass(e),s=this.getRecords(n,e),{recordsWatchers:a}=this,o=a.get(s) -return o||(o=new u(s,t,r,i,(e=>this.wrapRecord(e)),(()=>{a.delete(s),this.updateFlushWatchers()})),a.set(s,o),this.updateFlushWatchers(),o.revalidate()),o.release},updateFlushWatchers(){null===this.flushWatchers?(this.typeWatchers.size>0||this.recordsWatchers.size>0)&&(this.flushWatchers=()=>{this.typeWatchers.forEach((e=>e.revalidate())),this.recordsWatchers.forEach((e=>e.revalidate()))},r._backburner.on("end",this.flushWatchers)):0===this.typeWatchers.size&&0===this.recordsWatchers.size&&(r._backburner.off("end",this.flushWatchers),this.flushWatchers=null)},willDestroy(){this._super(...arguments),this.typeWatchers.forEach((e=>e.release())),this.recordsWatchers.forEach((e=>e.release())),this.releaseMethods.forEach((e=>e())),this.flushWatchers&&r._backburner.off("end",this.flushWatchers)},detect:()=>!1,columnsForType:()=>(0,a.A)(),observeModelType(e,t){var r=this._nameToClass(e),i=this.getRecords(r,e),{typeWatchers:n}=this,s=n.get(i) -return s||(s=new c(i,(()=>{t([this.wrapModelType(r,e)])}),(()=>{n.delete(i),this.updateFlushWatchers()})),n.set(i,s),this.updateFlushWatchers(),s.revalidate()),s.release},wrapModelType(e,t){var r=this.getRecords(e,t) -return{name:t,count:(0,i.get)(r,"length"),columns:this.columnsForType(e),object:e}},getModelTypes(){var e,t=this.get("containerDebugAdapter") -return e=t.canCatalogEntriesByType("model")?t.catalogEntriesByType("model"):this._getObjectsOnNamespaces(),e=(0,a.A)(e).map((e=>({klass:this._nameToClass(e),name:e}))),e=(0,a.A)(e).filter((e=>this.detect(e.klass))),(0,a.A)(e)},_getObjectsOnNamespaces(){var e=(0,a.A)(a.Namespace.NAMESPACES),t=(0,a.A)() -return e.forEach((e=>{for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&this.detect(e[r])){var i=(0,n.dasherize)(r) -t.push(i)}})),t},getRecords:()=>(0,a.A)(),wrapRecord(e){var t={object:e} -return t.columnValues=this.getRecordColumnValues(e),t.searchKeywords=this.getRecordKeywords(e),t.filterValues=this.getRecordFilterValues(e),t.color=this.getRecordColor(e),t},getRecordColumnValues:()=>({}),getRecordKeywords:()=>(0,a.A)(),getRecordFilterValues:()=>({}),getRecordColor:()=>null})})),e("@ember/-internals/glimmer/index",["exports","@ember/polyfills","@glimmer/opcode-compiler","@ember/-internals/metal","@ember/debug","@ember/deprecated-features","@ember/string","@glimmer/reference","@glimmer/validator","@ember/-internals/views","@glimmer/destroyable","@glimmer/manager","@ember/-internals/utils","@ember/instrumentation","@ember/runloop","@glimmer/util","@ember/-internals/owner","@glimmer/runtime","@ember/-internals/runtime","@ember/-internals/browser-environment","@ember/engine","@ember/service","@ember/object","@ember/-internals/environment","@ember/-internals/container","@glimmer/node","@ember/-internals/glimmer","@glimmer/global-context","@ember/-internals/routing","@ember/error","@glimmer/program","rsvp"],(function(e,t,r,i,n,s,a,o,l,u,c,d,h,p,f,m,g,b,v,y,_,E,R,O,w,T,P,A,S,C,k,M){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.Component=e.Checkbox=void 0,Object.defineProperty(e,"DOMChanges",{enumerable:!0,get:function(){return b.DOMChanges}}),Object.defineProperty(e,"DOMTreeConstruction",{enumerable:!0,get:function(){return b.DOMTreeConstruction}}),e.LinkComponent=e.Input=e.INVOKE=e.Helper=void 0,Object.defineProperty(e,"NodeDOMTreeConstruction",{enumerable:!0,get:function(){return T.NodeDOMTreeConstruction}}),e.Textarea=e.TextField=e.TextArea=e.SafeString=e.RootTemplate=e.Renderer=e.OutletView=void 0,e._resetRenderers=function(){Rr.length=0},e.componentCapabilities=void 0,e.escapeExpression=function(e){if("string"!=typeof e){if(e&&e.toHTML)return e.toHTML() -if(null==e)return"" -if(!e)return String(e) -e=String(e)}if(!I.test(e))return e -return e.replace(F,L)},e.getTemplate=function(e){if(Object.prototype.hasOwnProperty.call(Sr,e))return Sr[e]},e.getTemplates=function(){return Sr},e.hasTemplate=function(e){return Object.prototype.hasOwnProperty.call(Sr,e)},e.helper=wt,e.htmlSafe=z,e.isHTMLSafe=B,Object.defineProperty(e,"isSerializationFirstNode",{enumerable:!0,get:function(){return b.isSerializationFirstNode}}),e.modifierCapabilities=void 0,e.renderSettled=function(){null===Tr&&(Tr=M.default.defer(),(0,f._getCurrentRunLoop)()||f._backburner.schedule("actions",null,wr)) -return Tr.promise},e.setComponentManager=function(e,t){var r -r=s.COMPONENT_MANAGER_STRING_LOOKUP&&"string"==typeof e?function(t){return t.lookup(`component-manager:${e}`)}:e -return(0,d.setComponentManager)(r,t)},e.setTemplate=function(e,t){return Sr[e]=t},e.setTemplates=function(e){Sr=e},e.setupApplicationRegistry=function(e){e.injection("renderer","env","-environment:main"),e.register("service:-dom-builder",{create({bootOptions:e}){var{_renderMode:t}=e -switch(t){case"serialize":return T.serializeBuilder.bind(null) -case"rehydrate":return b.rehydrationBuilder.bind(null) -default:return b.clientBuilder.bind(null)}}}),e.injection("service:-dom-builder","bootOptions","-environment:main"),e.injection("renderer","builder","service:-dom-builder"),e.register(w.privatize`template:-root`,j),e.injection("renderer","rootTemplate",w.privatize`template:-root`),e.register("renderer:-dom",Ar),e.injection("renderer","document","service:-document")},e.setupEngineRegistry=function(e){e.optionsForType("template",{instantiate:!1}),e.register("view:-outlet",ri),e.register("template:-outlet",Zr),e.injection("view:-outlet","template","template:-outlet"),e.optionsForType("helper",{instantiate:!1}),e.register("helper:loc",Xr),e.register("component:-text-field",Te),e.register("component:-checkbox",Oe),e.register("component:input",ht),e.register("component:link-to",Jr),e.register("component:-link-to",ke),e.register("component:-textarea",Pe),e.register("component:textarea",gt),O.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS||e.register(w.privatize`component:-default`,Ee)},Object.defineProperty(e,"template",{enumerable:!0,get:function(){return r.templateFactory}}),Object.defineProperty(e,"templateCacheCounters",{enumerable:!0,get:function(){return r.templateCacheCounters}}) -var j=e.RootTemplate=(0,r.templateFactory)({id:"9BtKrod8",block:'[[[46,[30,0],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/root.hbs",isStrictMode:!1}) -function x(e){return"function"==typeof e}class D{constructor(e){this.string=e}toString(){return`${this.string}`}toHTML(){return this.toString()}}e.SafeString=D -var N={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},I=/[&<>"'`=]/,F=/[&<>"'`=]/g -function L(e){return N[e]}function z(e){return null==e?e="":"string"!=typeof e&&(e=String(e)),new D(e)}function B(e){return null!==e&&"object"==typeof e&&"function"==typeof e.toHTML}function U(e,t){return"attrs"===t[0]&&(t.shift(),1===t.length)?(0,o.childRefFor)(e,t[0]):(0,o.childRefFromParts)(e,t)}function $(e){var t=e.indexOf(":") -if(-1===t)return[e,e,!0] -var r=e.substring(0,t),i=e.substring(t+1) -return[r,i,!1]}function H(e,t,r,n){var[a,l,u]=r -if("id"===l){var c=(0,i.get)(e,a) -return null==c&&(c=e.elementId),c=(0,o.createPrimitiveRef)(c),void n.setAttribute("id",c,!0,null)}var d=a.indexOf(".")>-1,h=d?U(t,a.split(".")):(0,o.childRefFor)(t,a) -s.EMBER_COMPONENT_IS_VISIBLE&&"style"===l&&void 0!==q&&(h=q(h,(0,o.childRefFor)(t,"isVisible"))),n.setAttribute(l,h,!1,null)}var q,V,W="display: none;",G=z(W) -function Y(e,t,r){var[i,n,s]=t.split(":") -if(""===i)r.setAttribute("class",(0,o.createPrimitiveRef)(n),!0,null) -else{var a,l=i.indexOf(".")>-1,u=l?i.split("."):[],c=l?U(e,u):(0,o.childRefFor)(e,i) -a=void 0===n?Q(c,l?u[u.length-1]:i):function(e,t,r){return(0,o.createComputeRef)((()=>(0,o.valueForRef)(e)?t:r))}(c,n,s),r.setAttribute("class",a,!1,null)}}function Q(e,t){var r -return(0,o.createComputeRef)((()=>{var i=(0,o.valueForRef)(e) -return!0===i?r||(r=(0,a.dasherize)(t)):i||0===i?String(i):null}))}function K(){}s.EMBER_COMPONENT_IS_VISIBLE&&(q=(e,t)=>(0,o.createComputeRef)((()=>{var r=(0,o.valueForRef)(e),i=(0,o.valueForRef)(t) -if(!1!==i)return r -if(r){var n=r+" "+W -return B(r)?z(n):n}return G})),V=(e,t)=>{t.setAttribute("style",q(o.UNDEFINED_REFERENCE,(0,o.childRefFor)(e,"isVisible")),!1,null)}) -class J{constructor(e,t,r,i,n,s){this.component=e,this.args=t,this.argsTag=r,this.finalizer=i,this.hasWrappedElement=n,this.isInteractive=s,this.classRef=null,this.classRef=null,this.argsRevision=null===t?0:(0,l.valueForTag)(r),this.rootRef=(0,o.createConstRef)(e,"this"),(0,c.registerDestructor)(this,(()=>this.willDestroy()),!0),(0,c.registerDestructor)(this,(()=>this.component.destroy()))}willDestroy(){var{component:e,isInteractive:t}=this -if(t){(0,l.beginUntrackFrame)(),e.trigger("willDestroyElement"),e.trigger("willClearRender"),(0,l.endUntrackFrame)() -var r=(0,u.getViewElement)(e) -r&&((0,u.clearElementView)(r),(0,u.clearViewElement)(e))}e.renderer.unregister(e)}finalize(){var{finalizer:e}=this -e(),this.finalizer=K}}function X(e){return(0,d.setInternalHelperManager)(e,{})}var Z=new m._WeakSet,ee=e.INVOKE=(0,h.symbol)("INVOKE"),te=X((e=>{var t,{named:r,positional:n}=e,[s,a,...l]=n,u=a.debugLabel,c="target"in r?r.target:s,d=function(e,t){var r,n -t.length>0&&(r=e=>t.map(o.valueForRef).concat(e)) -e&&(n=t=>{var r=(0,o.valueForRef)(e) -return r&&t.length>0&&(t[0]=(0,i.get)(t[0],r)),t}) -return r&&n?e=>n(r(e)):r||n||re}("value"in r&&r.value,l) -return t=(0,o.isInvokableRef)(a)?ie(a,a,ne,d,u):function(e,t,r,i,n){0 -return(...s)=>ie(e,(0,o.valueForRef)(t),(0,o.valueForRef)(r),i,n)(...s)}((0,o.valueForRef)(s),c,a,d,u),Z.add(t),(0,o.createUnboundRef)(t,"(result of an `action` helper)")})) -function re(e){return e}function ie(e,t,r,i,n){var s,a -if("function"==typeof r[ee])s=r,a=r[ee] -else{var o=typeof r -"string"===o?(s=t,a=t.actions&&t.actions[r]):"function"===o&&(s=e,a=r)}return(...e)=>{var t={target:s,args:e,label:"@glimmer/closure-action"} -return(0,p.flaggedInstrument)("interaction.ember-action",t,(()=>(0,f.join)(s,a,...i(e))))}}function ne(e){(0,o.updateRef)(this,e)}function se(e){var t=Object.create(null),r=Object.create(null) -for(var i in r[ue]=e,e){var n=e[i],s=(0,o.valueForRef)(n),a="function"==typeof s&&Z.has(s);(0,o.isUpdatableRef)(n)&&!a?t[i]=new oe(n,s):t[i]=s,r[i]=s}return r.attrs=t,r}var ae=(0,h.symbol)("REF") -class oe{constructor(e,t){this[u.MUTABLE_CELL]=!0,this[ae]=e,this.value=t}update(e){(0,o.updateRef)(this[ae],e)}}var le=function(e,t){var r={} -for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(r[i]=e[i]) -if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0 -for(i=Object.getOwnPropertySymbols(e);n(0,b.reifyPositional)(d)))},(0,t.assign)(u,r.named.capture())}else{if(!(Array.isArray(c)&&c.length>0))return null -var h=Math.min(c.length,r.positional.length) -u={},(0,t.assign)(u,r.named.capture()) -for(var p=0;p{a.setAttribute("class",(0,o.createPrimitiveRef)(e),!1,null)})),p&&p.length&&p.forEach((e=>{Y(i,e,a)})),a.setAttribute("class",fe,!1,null),"ariaRole"in e&&a.setAttribute("role",(0,o.childRefFor)(i,"ariaRole"),!1,null),e._transitionTo("hasElement"),r&&((0,l.beginUntrackFrame)(),e.trigger("willInsertElement"),(0,l.endUntrackFrame)())}didRenderLayout(e,t){e.component[pe]=t,e.finalize()}didCreate({component:e,isInteractive:t}){t&&(e._transitionTo("inDOM"),e.trigger("didInsertElement"),e.trigger("didRender"))}update(e){var{component:t,args:r,argsTag:i,argsRevision:n,isInteractive:s}=e -if(e.finalizer=(0,p._instrumentStart)("render.component",be,t),(0,l.beginUntrackFrame)(),null!==r&&!(0,l.validateTag)(i,n)){(0,l.beginTrackFrame)() -var a=se(r) -i=e.argsTag=(0,l.endTrackFrame)(),e.argsRevision=(0,l.valueForTag)(i),t[he]=!0,t.setProperties(a),t[he]=!1,t.trigger("didUpdateAttrs"),t.trigger("didReceiveAttrs")}s&&(t.trigger("willUpdate"),t.trigger("willRender")),(0,l.endUntrackFrame)(),(0,l.consumeTag)(i),(0,l.consumeTag)(t[de])}didUpdateLayout(e){e.finalize()}didUpdate({component:e,isInteractive:t}){t&&(e.trigger("didUpdate"),e.trigger("didRender"))}getDestroyable(e){return e}}function ge(e){return e.instrumentDetails({initialRender:!0})}function be(e){return e.instrumentDetails({initialRender:!1})}var ve={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!0,hasSubOwner:!1},ye=new me -function _e(e){return e===ye}var Ee=e.Component=u.CoreView.extend(u.ChildViewsSupport,u.ViewStateSupport,u.ClassNamesSupport,v.TargetActionSupport,u.ActionSupport,u.ViewMixin,{isComponent:!0,init(){this._super(...arguments),this[he]=!1,this[de]=(0,l.createTag)(),this[pe]=null},rerender(){(0,l.dirtyTag)(this[de]),this._super()},[i.PROPERTY_DID_CHANGE](e,t){if(!this[he]){var r=this[ue],n=void 0!==r?r[e]:void 0 -void 0!==n&&(0,o.isUpdatableRef)(n)&&(0,o.updateRef)(n,2===arguments.length?t:(0,i.get)(this,e))}},getAttr(e){return this.get(e)},readDOMAttr(e){var t=(0,u.getViewElement)(this),r=t,i="http://www.w3.org/2000/svg"===r.namespaceURI,{type:n,normalized:s}=(0,b.normalizeProperty)(r,e) -return i||"attr"===n?r.getAttribute(s):r[s]},didReceiveAttrs(){},didRender(){},willRender(){},didUpdateAttrs(){},willUpdate(){},didUpdate(){}}) -Ee.toString=()=>"@ember/component",Ee.reopenClass({isComponentFactory:!0,positionalParams:[]}),(0,d.setInternalComponentManager)(ye,Ee),Object.defineProperty(Ee,"_wasReopened",{configurable:!0,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(Ee,"reopen",{configurable:!0,enumerable:!1,writable:!0,value:function(...e){return this===Ee&&(Ee._wasReopened=!0),v.CoreObject.reopen.call(this,...e)}}),Object.defineProperty(Ee,"reopenClass",{configurable:!0,enumerable:!1,writable:!0,value:function(...e){return this===Ee&&(Ee._wasReopened=!0),v.CoreObject.reopenClass.call(this,...e)}}) -var Re=(0,r.templateFactory)({id:"14evwHqT",block:"[[],[],false,[]]",moduleName:"packages/@ember/-internals/glimmer/lib/templates/empty.hbs",isStrictMode:!1}),Oe=e.Checkbox=Ee.extend({layout:Re,classNames:["ember-checkbox"],tagName:"input",attributeBindings:["type","checked","indeterminate","disabled","tabindex","name","autofocus","required","form"],type:"checkbox",disabled:!1,indeterminate:!1,didInsertElement(){this._super(...arguments),this.element.indeterminate=Boolean(this.indeterminate)},change(){(0,i.set)(this,"checked",this.element.checked)}}) -Oe.toString=()=>"@ember/component/checkbox",Object.defineProperty(Oe,"_wasReopened",{configurable:!0,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(Oe,"reopen",{configurable:!0,enumerable:!1,writable:!0,value:function(...e){return this===Oe&&(Oe._wasReopened=!0),v.FrameworkObject.reopen.call(this,...e)}}),Object.defineProperty(Oe,"reopenClass",{configurable:!0,enumerable:!1,writable:!0,value:function(...e){return this===Oe&&(Oe._wasReopened=!0),v.FrameworkObject.reopenClass.call(this,...e)}}) -var we=y.hasDOM?Object.create(null):null -var Te=e.TextField=Ee.extend(u.TextSupport,{layout:Re,classNames:["ember-text-field"],tagName:"input",attributeBindings:["accept","autocomplete","autosave","dir","formaction","formenctype","formmethod","formnovalidate","formtarget","height","inputmode","lang","list","type","max","min","multiple","name","pattern","size","step","value","width"],value:"",type:(0,i.computed)({get:()=>"text",set(e,t){var r="text" -return function(e){if(!y.hasDOM)return Boolean(e) -if(e in we)return we[e] -var t=document.createElement("input") -try{t.type=e}catch(r){}return we[e]=t.type===e}(t)&&(r=t),r}}),size:null,pattern:null,min:null,max:null}) -Te.toString=()=>"@ember/component/text-field",Object.defineProperty(Te,"_wasReopened",{configurable:!0,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(Te,"reopen",{configurable:!0,enumerable:!1,writable:!0,value:function(...e){return this===Te&&(Te._wasReopened=!0),v.CoreObject.reopen.call(this,...e)}}),Object.defineProperty(Te,"reopenClass",{configurable:!0,enumerable:!1,writable:!0,value:function(...e){return this===Te&&(Te._wasReopened=!0),v.CoreObject.reopenClass.call(this,...e)}}) -var Pe=e.TextArea=Ee.extend(u.TextSupport,{classNames:["ember-text-area"],layout:Re,tagName:"textarea",attributeBindings:["rows","cols","name","selectionEnd","selectionStart","autocomplete","wrap","lang","dir","value"],rows:null,cols:null}) -Pe.toString=()=>"@ember/component/text-area",Object.defineProperty(Pe,"_wasReopened",{configurable:!0,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(Pe,"reopen",{configurable:!0,enumerable:!1,writable:!0,value:function(...e){return this===Pe&&(Pe._wasReopened=!0),v.CoreObject.reopen.call(this,...e)}}),Object.defineProperty(Pe,"reopenClass",{configurable:!0,enumerable:!1,writable:!0,value:function(...e){return this===Pe&&(Pe._wasReopened=!0),v.CoreObject.reopenClass.call(this,...e)}}) -var Ae=(0,r.templateFactory)({id:"zyblzQRj",block:'[[[41,[48,[30,1]],[[[18,1,null]],[]],[[[1,[30,0,["linkTitle"]]]],[]]]],["&default"],false,["if","has-block","yield"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/-link-to.hbs",isStrictMode:!1}),Se=Object.freeze({toString:()=>"UNDEFINED"}),Ce=Object.freeze({}),ke=e.LinkComponent=Ee.extend({layout:Ae,tagName:"a",route:Se,model:Se,models:Se,query:Se,"current-when":null,title:null,rel:null,tabindex:null,target:null,activeClass:"active",loadingClass:"loading",disabledClass:"disabled",replace:!1,preventDefault:!0,attributeBindings:["href","title","rel","tabindex","target"],classNameBindings:["active","loading","disabled","transitioningIn","transitioningOut"],eventName:"click",init(){this._super(...arguments),this.assertLinkToOrigin() -var{eventName:e}=this -this.on(e,this,this._invoke)},_routing:(0,E.inject)("-routing"),_currentRoute:(0,i.alias)("_routing.currentRouteName"),_currentRouterState:(0,i.alias)("_routing.currentState"),_targetRouterState:(0,i.alias)("_routing.targetState"),_isEngine:(0,i.computed)((function(){return void 0!==(0,_.getEngineParent)((0,g.getOwner)(this))})),_engineMountPoint:(0,i.computed)((function(){return(0,g.getOwner)(this).mountPoint})),_route:(0,i.computed)("route","_currentRouterState",(function(){var{route:e}=this -return e===Se?this._currentRoute:this._namespaceRoute(e)})),_models:(0,i.computed)("model","models",(function(){var{model:e,models:t}=this -return e!==Se?[e]:t!==Se?t:[]})),_query:(0,i.computed)("query",(function(){var{query:e}=this -return e===Se?Ce:(0,t.assign)({},e)})),disabled:(0,i.computed)({get:e=>!1,set(e,t){return this._isDisabled=t,!!t&&this.disabledClass}}),active:(0,i.computed)("activeClass","_active",(function(){return!!this._active&&this.activeClass})),_active:(0,i.computed)("_currentRouterState","_route","_models","_query","loading","current-when",(function(){var{_currentRouterState:e}=this -return!!e&&this._isActive(e)})),willBeActive:(0,i.computed)("_currentRouterState","_targetRouterState","_route","_models","_query","loading","current-when",(function(){var{_currentRouterState:e,_targetRouterState:t}=this -if(e!==t)return this._isActive(t)})),assertLinkToOrigin(){},_isActive(e){if(this.loading)return!1 -var t=this["current-when"] -if("boolean"==typeof t)return t -var{_models:r,_routing:i}=this -return"string"==typeof t?t.split(" ").some((t=>i.isActiveForRoute(r,void 0,this._namespaceRoute(t),e))):i.isActiveForRoute(r,this._query,this._route,e)},transitioningIn:(0,i.computed)("_active","willBeActive",(function(){return!0===this.willBeActive&&!this._active&&"ember-transitioning-in"})),transitioningOut:(0,i.computed)("_active","willBeActive",(function(){return!(!1!==this.willBeActive||!this._active)&&"ember-transitioning-out"})),_namespaceRoute(e){var{_engineMountPoint:t}=this -return void 0===t?e:"application"===e?t:`${t}.${e}`},_invoke(e){if(!(0,u.isSimpleClick)(e))return!0 -var{bubbles:t,preventDefault:r}=this,i=this.element.target,n=!i||"_self"===i -if(!1!==r&&n&&e.preventDefault(),!1===t&&e.stopPropagation(),this._isDisabled)return!1 -if(this.loading)return!1 -if(!n)return!1 -var{_route:s,_models:a,_query:o,replace:l}=this,c={queryParams:o,routeName:s} -return(0,p.flaggedInstrument)("interaction.link-to",c,this._generateTransition(c,s,a,o,l)),!1},_generateTransition(e,t,r,i,n){var{_routing:s}=this -return()=>{e.transition=s.transitionTo(t,r,i,n)}},href:(0,i.computed)("_currentRouterState","_route","_models","_query","tagName","loading","loadingHref",(function(){if("a"===this.tagName){if(this.loading)return this.loadingHref -var{_route:e,_models:t,_query:r,_routing:i}=this -return i.generateURL(e,t,r)}})),loading:(0,i.computed)("_route","_modelsAreLoaded","loadingClass",(function(){var{_route:e,_modelsAreLoaded:t}=this -if(!t||null==e)return this.loadingClass})),_modelsAreLoaded:(0,i.computed)("_models",(function(){for(var{_models:e}=this,t=0;t{t=this.params.slice() -var e=[],i=!1 -r||t.shift() -var n=t[t.length-1] -if(n&&n.isQueryParams&&(t.pop(),i=!0),t.length>0&&(t.shift(),e.push("`@route`")),1===t.length?e.push("`@model`"):t.length>1&&e.push("`@models`"),i&&e.push("`@query`"),e.length>0){`Please use the equivalent named arguments (${e.join(", ")})`,i&&" along with the `hash` helper",r||" and pass a block for the link's content.","."}}))}else{var{_models:s}=this -if(s.length>0){var a=s[s.length-1] -"object"==typeof a&&null!==a&&a.isQueryParams&&(this.query=a.values,s.pop())}}}}) -ke.toString=()=>"@ember/routing/link-component",ke.reopenClass({positionalParams:"params"}),Object.defineProperty(ke,"_wasReopened",{configurable:!0,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(ke,"reopen",{configurable:!0,enumerable:!1,writable:!0,value:function(...e){return this===ke&&(ke._wasReopened=!0),v.CoreObject.reopen.call(this,...e)}}),Object.defineProperty(ke,"reopenClass",{configurable:!0,enumerable:!1,writable:!0,value:function(...e){return this===ke&&(ke._wasReopened=!0),v.CoreObject.reopenClass.call(this,...e)}}) -var Me=(0,r.templateFactory)({id:"4uiR2oaY",block:'[[[41,[30,0,["modernized"]],[[[11,"input"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[16,"role",[30,0,["role"]]],[16,"autocapitalize",[30,0,["autocapitalize"]]],[16,"autocorrect",[30,0,["autocorrect"]]],[16,"autofocus",[30,0,["autofocus"]]],[16,"disabled",[30,0,["disabled"]]],[16,"form",[30,0,["form"]]],[16,"maxlength",[30,0,["maxlength"]]],[16,"minlength",[30,0,["minlength"]]],[16,"placeholder",[30,0,["placeholder"]]],[16,"readonly",[30,0,["readonly"]]],[16,"required",[30,0,["required"]]],[16,"selectionDirection",[30,0,["selectionDirection"]]],[16,"spellcheck",[30,0,["spellcheck"]]],[16,"tabindex",[30,0,["tabindex"]]],[16,"title",[30,0,["title"]]],[16,"accept",[30,0,["accept"]]],[16,"autocomplete",[30,0,["autocomplete"]]],[16,"autosave",[30,0,["autosave"]]],[16,"dir",[30,0,["dir"]]],[16,"formaction",[30,0,["formaction"]]],[16,"formenctype",[30,0,["formenctype"]]],[16,"formmethod",[30,0,["formmethod"]]],[16,"formnovalidate",[30,0,["formnovalidate"]]],[16,"formtarget",[30,0,["formtarget"]]],[16,"height",[30,0,["height"]]],[16,"inputmode",[30,0,["inputmode"]]],[16,"lang",[30,0,["lang"]]],[16,"list",[30,0,["list"]]],[16,"max",[30,0,["max"]]],[16,"min",[30,0,["min"]]],[16,"multiple",[30,0,["multiple"]]],[16,3,[30,0,["name"]]],[16,"pattern",[30,0,["pattern"]]],[16,"size",[30,0,["size"]]],[16,"step",[30,0,["step"]]],[16,"width",[30,0,["width"]]],[16,"indeterminate",[30,0,["indeterminate"]]],[17,1],[16,4,[30,0,["type"]]],[16,"checked",[30,0,["checked"]]],[16,2,[30,0,["value"]]],[4,[38,1],["change",[30,0,["change"]]],null],[4,[38,1],["input",[30,0,["input"]]],null],[4,[38,1],["keyup",[30,0,["keyUp"]]],null],[4,[38,1],["paste",[30,0,["valueDidChange"]]],null],[4,[38,1],["cut",[30,0,["valueDidChange"]]],null],[4,[30,0,["handleDeprecatedEvents"]],[[30,0]],null],[12],[13]],[]],[[[44,[[50,"-checkbox",0,null,null],[50,"-text-field",0,null,null]],[[[41,[30,0,["isCheckbox"]],[[[8,[30,2],[[17,1]],[["@target","@__ARGS__"],[[30,0,["caller"]],[30,0,["args"]]]],null]],[]],[[[8,[30,3],[[17,1]],[["@target","@__ARGS__"],[[30,0,["caller"]],[30,0,["args"]]]],null]],[]]]],[2,3]]]],[]]]],["&attrs","Checkbox","TextField"],false,["if","on","let","component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/input.hbs",isStrictMode:!1}) -class je{constructor(e,t,r){this.owner=e,this.element=t,this.args=r,(0,g.setOwner)(this,e)}static toString(){return"internal modifier"}install(){}remove(){}positional(e){var t=this.args.positional[e] -return t?(0,o.valueForRef)(t):void 0}named(e){var t=this.args.named[e] -return t?(0,o.valueForRef)(t):void 0}toString(){return`<${this.constructor.toString()}:${(0,h.guidFor)(this)}>`}}function xe(e){e.remove()}class De{constructor(e){this.instance=e}}class Ne{constructor(e,t){this.ModifierClass=e,this.name=t}create(e,t,r,i){var{ModifierClass:n}=this,s=new n(e,t,i) -return(0,c.registerDestructor)(s,xe),new De(s)}getTag(){return null}getDebugName(){return this.name}install({instance:e}){return e.install()}update(){}getDestroyable({instance:e}){return e}}function Ie(){}var Fe="function"==typeof Object.entries?Object.entries:e=>Object.keys(e).map((t=>[t,e[t]])),Le="function"==typeof Object.values?Object.values:e=>Object.keys(e).map((t=>e[t])) -class ze{constructor(e,t,r){this.owner=e,this.args=t,this.caller=r,(0,g.setOwner)(this,e)}static toString(){return"internal component"}get id(){return(0,h.guidFor)(this)}get class(){return"ember-view"}validateArguments(){for(var e of Object.keys(this.args.named))this.isSupportedArgument(e)||this.onUnsupportedArgument(e)}named(e){var t=this.args.named[e] -return t?(0,o.valueForRef)(t):void 0}positional(e){var t=this.args.positional[e] -return t?(0,o.valueForRef)(t):void 0}listenerFor(e){var t=this.named(e) -return t||Ie}isSupportedArgument(e){return!1}onUnsupportedArgument(e){}toString(){return`<${this.constructor}:${(0,h.guidFor)(this)}>`}}var Be=new WeakMap -function Ue(e,t){var r={create(){throw(0,n.assert)("Use constructor instead of create")},toString:()=>e.toString()} -return Be.set(r,e),(0,d.setInternalComponentManager)(He,r),(0,d.setComponentTemplate)(t,r),r}var $e={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!1,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -var He=new class{getCapabilities(){return $e}create(e,t,r,i,n,s){var a,u=new(a=t,Be.get(a))(e,r.capture(),(0,o.valueForRef)(s)) -return(0,l.untrack)(u.validateArguments.bind(u)),u}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}getDebugName(e){return e.toString()}getSelf(e){return(0,o.createConstRef)(e,"this")}getDestroyable(e){return e}} -function qe(e){e.toString() -var{prototype:t}=e,r=t.onUnsupportedArgument -Object.defineProperty(t,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(e){this.modernized=!1,r.call(this,e)}})}function Ve(e,t){var r=e.toString(),{prototype:i}=(r.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase(),e),n=(e,t)=>e?Object.getOwnPropertyDescriptor(e,t)||n(Object.getPrototypeOf(e),t):null -t.forEach((e=>{var t,r -Array.isArray(e)?[t,r]=e:t=r=e -var s=i.isSupportedArgument -Object.defineProperty(i,"isSupportedArgument",{configurable:!0,enumerable:!1,value:function(e){return this.modernized&&e===r||s.call(this,e)}}) -var a=n(i,t),o=()=>{} -a&&(o=a.get),Object.defineProperty(i,t,{configurable:!0,enumerable:!0,get(){return r in this.args.named?"class"===t&&a?`${o.call(this)} ${this.named(r)}`:this.named(r):o.call(this)}})}))}var We,Ge=new WeakMap,Ye=Object.freeze({}),Qe=e=>{var t=Ge.get(e) -if(void 0===t){t=Ye -var r=e.lookup("event_dispatcher:main") -null!=r&&"_finalEvents"in r&&null!==r._finalEvents&&void 0!==r._finalEvents&&(t=r._finalEvents),Ge.set(e,t)}return t} -function Ke(e){if(s.JQUERY_INTEGRATION){var{prototype:t}=e,r=t.listenerFor -Object.defineProperty(t,"listenerFor",{configurable:!0,enumerable:!1,value:function(e){var t=r.call(this,e) -return u.jQuery&&!u.jQueryDisabled?e=>t(new u.jQuery.Event(e)):t}})}}We=(e,t=[])=>{var r=e.toString(),{prototype:i}=(r.toLowerCase(),e),n=i.isSupportedArgument -Object.defineProperty(i,"isSupportedArgument",{configurable:!0,enumerable:!1,value:function(e){var t=[...Le(Qe(this.owner)),"focus-in","focus-out","key-press","key-up","key-down"] -return this.modernized&&-1!==t.indexOf(e)||n.call(this,e)}}) -class s extends je{constructor(){super(...arguments),this.listeners=new Map}static toString(){return"DeprecatedEventHandlersModifier"}install(){var{element:e,component:r,listenerFor:i,listeners:n}=this,s=[...Fe(Qe(this.owner)),...t] -for(var[a,o]of s){var l=i.call(r,a,o) -l&&(n.set(a,l),e.addEventListener(a,l))}Object.freeze(n)}remove(){var{element:e,listeners:t}=this -for(var[r,i]of Fe(t))e.removeEventListener(r,i) -this.listeners=new Map}get component(){var e=this.positional(0) -return e}listenerFor(e,t){return t in this.args.named?this.listenerFor.call(this,t):null}}(0,d.setInternalModifierManager)(new Ne(s,"deprecated-event-handlers"),s),Object.defineProperty(i,"handleDeprecatedEvents",{configurable:!0,enumerable:!0,value:s})} -var Je=function(e,t,r,i){var n,s=arguments.length,a=s<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,i) -else for(var o=e.length-1;o>=0;o--)(n=e[o])&&(a=(s<3?n(a):s>3?n(t,r,a):n(t,r))||a) -return s>3&&a&&Object.defineProperty(t,r,a),a},Xe=Object.freeze({}) -function Ze(e){return function(e){return e.target}(e).value}function et(e){return t=>e(Ze(t),t)}function tt(e){return void 0===e?new rt(void 0):(0,o.isConstRef)(e)?new rt((0,o.valueForRef)(e)):(0,o.isUpdatableRef)(e)?new it(e):new nt(e)}class rt{constructor(e){this.value=e}get(){return this.value}set(e){this.value=e}}Je([i.tracked],rt.prototype,"value",void 0) -class it{constructor(e){this.reference=e}get(){return(0,o.valueForRef)(this.reference)}set(e){(0,o.updateRef)(this.reference,e)}}class nt{constructor(e){this.lastUpstreamValue=Xe,this.upstream=new it(e)}get(){var e=this.upstream.get() -return e!==this.lastUpstreamValue&&(this.lastUpstreamValue=e,this.local=new rt(e)),this.local.get()}set(e){this.local.set(e)}}class st extends ze{constructor(){super(...arguments),this.modernized=this.shouldModernize(),this._value=tt(this.args.named.value)}validateArguments(){super.validateArguments()}shouldModernize(){return Boolean(!0)&&!1===Ee._wasReopened&&!1===u.TextSupport._wasReopened&&!1===v.TargetActionSupport._wasReopened}get value(){return this._value.get()}set value(e){this._value.set(e)}valueDidChange(e){this.value=Ze(e)}change(e){this.valueDidChange(e)}input(e){this.valueDidChange(e)}keyUp(e){switch(e.key){case"Enter":this.listenerFor("enter")(e),this.listenerFor("insert-newline")(e) -break -case"Escape":this.listenerFor("escape-press")(e)}}listenerFor(e){var t=super.listenerFor(e) -return this.isVirtualEventListener(e,t)?et(t):t}isVirtualEventListener(e,t){return-1!==["enter","insert-newline","escape-press"].indexOf(e)}}function at(e,t){if(s.SEND_ACTION){e.toString() -var{prototype:r}=e,i=r.listenerFor -Object.defineProperty(r,"listenerFor",{configurable:!0,enumerable:!1,value:function(e){var t=this.named(e) -if("string"==typeof t){var r,{caller:n}=this -r=(e=>"function"==typeof e.send)(n)?(...e)=>n.send(t,...e):n[t] -var s=(...e)=>r(...e) -return this.isVirtualEventListener(e,s)?et(s):s}return i.call(this,e)}})}var{prototype:n}=e,a={focusin:"focus-in",focusout:"focus-out",keypress:"key-press",keyup:"key-up",keydown:"key-down"} -qe(e),Ve(e,t),We(e,Fe(a)) -var o=n.isVirtualEventListener -Object.defineProperty(n,"isVirtualEventListener",{configurable:!0,enumerable:!1,value:function(e,t){return-1!==Le(a).indexOf(e)||o.call(this,e,t)}}),s.JQUERY_INTEGRATION&&Ke(e)}Je([R.action],st.prototype,"valueDidChange",null),Je([R.action],st.prototype,"keyUp",null) -var ot,lt=function(e,t,r,i){var n,s=arguments.length,a=s<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,i) -else for(var o=e.length-1;o>=0;o--)(n=e[o])&&(a=(s<3?n(a):s>3?n(t,r,a):n(t,r))||a) -return s>3&&a&&Object.defineProperty(t,r,a),a} -if(y.hasDOM){var ut=Object.create(null),ct=document.createElement("input") -ut[""]=!1,ut.text=!0,ut.checkbox=!0,ot=e=>{var t=ut[e] -if(void 0===t){try{ct.type=e,t=ct.type===e}catch(r){t=!1}finally{ct.type="text"}ut[e]=t}return t}}else ot=e=>""!==e -class dt extends st{constructor(){super(...arguments),this._checked=tt(this.args.named.checked)}static toString(){return"Input"}get class(){return this.isCheckbox?"ember-checkbox ember-view":"ember-text-field ember-view"}get type(){var e=this.named("type") -return null==e?"text":ot(e)?e:"text"}get isCheckbox(){return"checkbox"===this.named("type")}get checked(){return this.isCheckbox?this._checked.get():void 0}set checked(e){this._checked.set(e)}change(e){this.isCheckbox?this.checkedDidChange(e):super.change(e)}input(e){this.isCheckbox||super.input(e)}checkedDidChange(e){var t=e.target -this.checked=t.checked}shouldModernize(){return super.shouldModernize()&&!1===Te._wasReopened&&!1===Oe._wasReopened}isSupportedArgument(e){return-1!==["type","value","checked","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}lt([R.action],dt.prototype,"change",null),lt([R.action],dt.prototype,"input",null),lt([R.action],dt.prototype,"checkedDidChange",null),at(dt,["id",["id","elementId"],"class",["class","classNames"],["role","ariaRole"],"autocapitalize","autocorrect","autofocus","disabled","form","maxlength","minlength","placeholder","readonly","required","selectionDirection","spellcheck","tabindex","title","accept","autocomplete","autosave","dir","formaction","formenctype","formmethod","formnovalidate","formtarget","height","inputmode","lang","list","max","min","multiple","name","pattern","size","step","width","indeterminate"]) -var ht=e.Input=Ue(dt,Me),pt=(0,r.templateFactory)({id:"mmUstqaU",block:'[[[41,[30,0,["modernized"]],[[[11,"textarea"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[16,"role",[30,0,["role"]]],[16,"autocapitalize",[30,0,["autocapitalize"]]],[16,"autocorrect",[30,0,["autocorrect"]]],[16,"autofocus",[30,0,["autofocus"]]],[16,"disabled",[30,0,["disabled"]]],[16,"form",[30,0,["form"]]],[16,"maxlength",[30,0,["maxlength"]]],[16,"minlength",[30,0,["minlength"]]],[16,"placeholder",[30,0,["placeholder"]]],[16,"readonly",[30,0,["readonly"]]],[16,"required",[30,0,["required"]]],[16,"selectionDirection",[30,0,["selectionDirection"]]],[16,"spellcheck",[30,0,["spellcheck"]]],[16,"tabindex",[30,0,["tabindex"]]],[16,"title",[30,0,["title"]]],[16,"rows",[30,0,["rows"]]],[16,"cols",[30,0,["cols"]]],[16,3,[30,0,["name"]]],[16,"selectionEnd",[30,0,["selectionEnd"]]],[16,"selectionStart",[30,0,["selectionStart"]]],[16,"autocomplete",[30,0,["autocomplete"]]],[16,"wrap",[30,0,["wrap"]]],[16,"lang",[30,0,["lang"]]],[16,"dir",[30,0,["dir"]]],[17,1],[16,2,[30,0,["value"]]],[4,[38,1],["change",[30,0,["change"]]],null],[4,[38,1],["input",[30,0,["input"]]],null],[4,[38,1],["keyup",[30,0,["keyUp"]]],null],[4,[38,1],["paste",[30,0,["valueDidChange"]]],null],[4,[38,1],["cut",[30,0,["valueDidChange"]]],null],[4,[30,0,["handleDeprecatedEvents"]],[[30,0]],null],[12],[13]],[]],[[[44,[[50,"-textarea",0,null,null]],[[[8,[30,2],[[17,1]],[["@target","@__ARGS__"],[[30,0,["caller"]],[30,0,["args"]]]],null]],[2]]]],[]]]],["&attrs","Textarea"],false,["if","on","let","component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/textarea.hbs",isStrictMode:!1}),ft=function(e,t,r,i){var n,s=arguments.length,a=s<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,i) -else for(var o=e.length-1;o>=0;o--)(n=e[o])&&(a=(s<3?n(a):s>3?n(t,r,a):n(t,r))||a) -return s>3&&a&&Object.defineProperty(t,r,a),a} -class mt extends st{static toString(){return"Textarea"}get class(){return"ember-text-area ember-view"}change(e){super.change(e)}input(e){super.input(e)}shouldModernize(){return super.shouldModernize()&&!1===Pe._wasReopened}isSupportedArgument(e){return-1!==["type","value","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}ft([R.action],mt.prototype,"change",null),ft([R.action],mt.prototype,"input",null),at(mt,["id",["id","elementId"],"class",["class","classNames"],["role","ariaRole"],"autocapitalize","autocorrect","autofocus","disabled","form","maxlength","minlength","placeholder","readonly","required","selectionDirection","spellcheck","tabindex","title","rows","cols","name","selectionEnd","selectionStart","autocomplete","wrap","lang","dir"]) -var gt=e.Textarea=Ue(mt,pt),bt=(0,h.symbol)("RECOMPUTE_TAG"),vt=e.Helper=v.FrameworkObject.extend({init(){this._super(...arguments),this[bt]=(0,l.createTag)()},recompute(){(0,f.join)((()=>(0,l.dirtyTag)(this[bt])))}}),yt=(0,h.symbol)("IS_CLASSIC_HELPER") -vt.isHelperFactory=!0,vt[yt]=!0 -class _t{constructor(e){this.capabilities=(0,d.helperCapabilities)("3.23",{hasValue:!0,hasDestroyable:!0}) -var t={};(0,g.setOwner)(t,e),this.ownerInjection=t}createHelper(e,t){return{instance:void 0===e.class?e.create(this.ownerInjection):e.create(),args:t}}getDestroyable({instance:e}){return e}getValue({instance:e,args:t}){var r,{positional:i,named:n}=t -return r=e.compute(i,n),(0,l.consumeTag)(e[bt]),r}getDebugName(e){return(0,h.getDebugName)(e.class.prototype)}}(0,d.setHelperManager)((e=>new _t(e)),vt) -var Et=(0,d.getInternalHelperManager)(vt) -class Rt{constructor(e){this.compute=e,this.isHelperFactory=!0}create(){return{compute:this.compute}}}var Ot=new class{constructor(){this.capabilities=(0,d.helperCapabilities)("3.23",{hasValue:!0})}createHelper(e,t){var{compute:r}=e -return()=>r.call(null,t.positional,t.named)}getValue(e){return e()}getDebugName(e){return(0,h.getDebugName)(e.compute)}} -function wt(e){return new Rt(e)}function Tt(e){return{object:`${e.name}:${e.outlet}`}}(0,d.setHelperManager)((()=>Ot),Rt.prototype) -var Pt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class At{create(e,t,r,i,n){var s=n.get("outletState"),a=t.ref -n.set("outletState",a) -var l={self:(0,o.createConstRef)(t.controller,"this"),finalize:(0,p._instrumentStart)("render.outlet",Tt,t)} -if(void 0!==i.debugRenderTree){l.outlet={name:t.outlet} -var u=(0,o.valueForRef)(s),c=u&&u.render&&u.render.owner,d=(0,o.valueForRef)(a).render.owner -if(c&&c!==d){var h=d,f=h.mountPoint -l.engine=h,l.engineBucket={mountPoint:f}}}return l}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r){var i=[] -return t.outlet&&i.push({bucket:t.outlet,type:"outlet",name:t.outlet.name,args:b.EMPTY_ARGS,instance:void 0,template:void 0}),t.engineBucket&&i.push({bucket:t.engineBucket,type:"engine",name:t.engineBucket.mountPoint,args:b.EMPTY_ARGS,instance:t.engine,template:void 0}),i.push({bucket:t,type:"route-template",name:e.name,args:r,instance:e.controller,template:(0,m.unwrapTemplate)(e.template).moduleName}),i}getCapabilities(){return Pt}getSelf({self:e}){return e}didCreate(){}didUpdate(){}didRenderLayout(e){e.finalize()}didUpdateLayout(){}getDestroyable(){return null}}var St=new At -class Ct{constructor(e,t=St){this.state=e,this.manager=t,this.handle=-1 -var r=t.getCapabilities() -this.capabilities=(0,d.capabilityFlagsFrom)(r),this.compilable=r.wrapped?(0,m.unwrapTemplate)(e.template).asWrappedLayout():(0,m.unwrapTemplate)(e.template).asLayout(),this.resolvedName=e.name}}class kt extends me{constructor(e){super(),this.component=e}create(e,t,r,{isInteractive:i},n){var s=this.component,a=(0,p._instrumentStart)("render.component",ge,s) -n.view=s -var o=""!==s.tagName -o||(i&&s.trigger("willRender"),s._transitionTo("hasElement"),i&&s.trigger("willInsertElement")) -var u=new J(s,null,l.CONSTANT_TAG,a,o,i) -return(0,l.consumeTag)(s[de]),u}}var Mt={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!1,createArgs:!1,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!1,hasSubOwner:!1} -class jt{constructor(e){this.handle=-1,this.resolvedName="-top-level",this.capabilities=(0,d.capabilityFlagsFrom)(Mt),this.compilable=null,this.manager=new kt(e),this.state=(0,w.getFactoryFor)(e)}}class xt{constructor(e){this.inner=e}}var Dt=X((({positional:e})=>{var t=e[0] -return(0,o.createComputeRef)((()=>{var e=(0,o.valueForRef)(t) -return(0,l.consumeTag)((0,i.tagForObject)(e)),(0,h.isProxy)(e)&&(e=(0,v._contentFor)(e)),new xt(e)}))})) -class Nt{constructor(e){this.length=e,this.position=0}isEmpty(){return!1}memoFor(e){return e}next(){var{length:e,position:t}=this -if(t>=e)return null -var r=this.valueFor(t),i=this.memoFor(t) -return this.position++,{value:r,memo:i}}}class It extends Nt{constructor(e){super(e.length),this.array=e}static from(e){return e.length>0?new this(e):null}static fromForEachable(e){var t=[] -return e.forEach((e=>t.push(e))),this.from(t)}valueFor(e){return this.array[e]}}class Ft extends Nt{constructor(e){super(e.length),this.array=e}static from(e){return e.length>0?new this(e):null}valueFor(e){return(0,i.objectAt)(this.array,e)}}class Lt extends Nt{constructor(e,t){super(t.length),this.keys=e,this.values=t}static fromIndexable(e){var t=Object.keys(e),{length:r}=t -if(0===r)return null -for(var i=[],n=0;n=2)&&t.push(s),r.push(e),i++})),0===i?null:n?new this(t,r):new It(r)}valueFor(e){return this.values[e]}memoFor(e){return this.keys[e]}}class zt{constructor(e,t){this.iterable=e,this.result=t,this.position=0}static from(e){var t=e[Symbol.iterator](),r=t.next(),{done:i}=r -return i?null:new this(t,r)}isEmpty(){return!1}next(){var{iterable:e,result:t,position:r}=this -if(t.done)return null -var i=this.valueFor(t,r),n=this.memoFor(t,r) -return this.position++,this.result=e.next(),{value:i,memo:n}}}class Bt extends zt{valueFor(e){return e.value}memoFor(e,t){return t}}class Ut extends zt{valueFor(e){return e.value[1]}memoFor(e){return e.value[0]}}function $t(e){return"function"==typeof e.forEach}function Ht(e){return"function"==typeof e[Symbol.iterator]}(0,A.default)({scheduleRevalidate(){f._backburner.ensureInstance()},toBool:function(e){return(0,h.isProxy)(e)?((0,l.consumeTag)((0,i.tagForProperty)(e,"content")),Boolean((0,i.get)(e,"isTruthy"))):(0,v.isArray)(e)?((0,l.consumeTag)((0,i.tagForProperty)(e,"[]")),0!==e.length):(0,P.isHTMLSafe)(e)?Boolean(e.toString()):Boolean(e)},toIterator:function(e){return e instanceof xt?function(e){if(t=e,null===t||"object"!=typeof t&&"function"!=typeof t)return null -var t -return Array.isArray(e)||(0,h.isEmberArray)(e)?Lt.fromIndexable(e):h.HAS_NATIVE_SYMBOL&&Ht(e)?Ut.from(e):$t(e)?Lt.fromForEachable(e):Lt.fromIndexable(e)}(e.inner):function(e){if(!(0,h.isObject)(e))return null -return Array.isArray(e)?It.from(e):(0,h.isEmberArray)(e)?Ft.from(e):h.HAS_NATIVE_SYMBOL&&Ht(e)?Bt.from(e):$t(e)?It.fromForEachable(e):null}(e)},getProp:i._getProp,setProp:i._setProp,getPath:i.get,setPath:i.set,scheduleDestroy(e,t){(0,f.schedule)("actions",null,t,e)},scheduleDestroyed(e){(0,f.schedule)("destroy",null,e)},warnIfStyleNotTrusted(e){},assert(e,t,r){},deprecate(e,t,r){}}) -O.ENV._DISABLE_PROPERTY_FALLBACK_DEPRECATION -class qt{constructor(e,t){this.owner=e,this.isInteractive=t,this.enableDebugTooling=O.ENV._DEBUG_RENDER_TREE}onTransactionCommit(){}}var Vt=X((({positional:e,named:t})=>{var r=e[0],i=t.type,n=t.loc,s=t.original;(0,o.valueForRef)(i),(0,o.valueForRef)(n),(0,o.valueForRef)(s) -return(0,o.createComputeRef)((()=>{var e=(0,o.valueForRef)(r) -return e}))})),Wt=X((e=>e.positional[0])),Gt=X((({positional:e})=>(0,o.createComputeRef)((()=>{var t=(0,o.valueForRef)(e[0]).split("."),r=t[t.length-1],i=(0,o.valueForRef)(e[1]) -return!0===i?(0,a.dasherize)(r):i||0===i?String(i):""})))),Yt=X((({positional:e},t)=>{var r,i=e[0],n=(0,o.valueForRef)(i) -return(0,o.createConstRef)(null===(r=t.factoryFor(n))||void 0===r?void 0:r.class,`(-resolve "${n}")`)})),Qt=X((({positional:e})=>{var t=e[0] -return(0,o.createComputeRef)((()=>{var e=(0,o.valueForRef)(t) -return(0,h.isObject)(e)&&(0,l.consumeTag)((0,i.tagForProperty)(e,"[]")),e}))})),Kt=X((({positional:e})=>{var t=e[0] -return(0,o.createInvokableRef)(t)})),Jt=X((({positional:e,named:r})=>(0,o.createComputeRef)((()=>new S.QueryParams((0,t.assign)({},(0,b.reifyNamed)(r))))))),Xt=X((({positional:e})=>(0,o.createReadOnlyRef)(e[0]))),Zt=X((({positional:e,named:t})=>(0,o.createUnboundRef)((0,o.valueForRef)(e[0]),"(resurt of an `unbound` helper)"))),er=["alt","shift","meta","ctrl"],tr=/^click|mouse|touch/ -var rr={registeredActions:u.ActionManager.registeredActions,registerAction(e){var{actionId:t}=e -return u.ActionManager.registeredActions[t]=e,t},unregisterAction(e){var{actionId:t}=e -delete u.ActionManager.registeredActions[t]}} -class ir{constructor(e,t,r,i,n){this.tag=(0,l.createUpdatableTag)(),this.element=e,this.actionId=t,this.actionArgs=r,this.namedArgs=i,this.positional=n,this.eventName=this.getEventName(),(0,c.registerDestructor)(this,(()=>rr.unregisterAction(this)))}getEventName(){var{on:e}=this.namedArgs -return void 0!==e?(0,o.valueForRef)(e):"click"}getActionArgs(){for(var e=new Array(this.actionArgs.length),t=0;t=0)return!0 -for(var r=0;r{var e=this.getActionArgs(),r={args:e,target:d,name:null} -"function"!=typeof t[ee]?(0,o.isInvokableRef)(t)?(0,p.flaggedInstrument)("interaction.ember-action",r,(()=>{(0,o.updateRef)(t,e[0])})):"function"!=typeof t?(r.name=t,d.send?(0,p.flaggedInstrument)("interaction.ember-action",r,(()=>{d.send.apply(d,[t,...e])})):(0,p.flaggedInstrument)("interaction.ember-action",r,(()=>{d[t].apply(d,e)}))):(0,p.flaggedInstrument)("interaction.ember-action",r,(()=>{t.apply(d,e)})):(0,p.flaggedInstrument)("interaction.ember-action",r,(()=>{t[ee].apply(t,e)}))})),h)}}var nr=new class{create(e,t,r,{named:i,positional:n}){for(var s=[],a=2;a1&&(i=a[0],r=a[1],t=(0,o.isInvokableRef)(r)?r:(0,o.valueForRef)(r)) -e.actionName=t,e.implicitTarget=i,rr.registerAction(e),n.setAttribute("data-ember-action",""),n.setAttribute(`data-ember-action-${s}`,String(s))}update(e){var{positional:t}=e,r=t[1];(0,o.isInvokableRef)(r)||(e.actionName=(0,o.valueForRef)(r)),e.eventName=e.getEventName()}getTag(e){return e.tag}getDestroyable(e){return e}},sr=(0,d.setInternalModifierManager)(nr,{}),ar={dynamicLayout:!0,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!0} -var or=new class{getDynamicLayout(e){var t=e.engine.lookup("template:application") -return(0,m.unwrapTemplate)(t(e.engine)).asLayout()}getCapabilities(){return ar}getOwner(e){return e.engine}create(e,{name:t},r,i){var n=e.buildChildEngineInstance(t) -n.boot() -var s,a,l,u=n.factoryFor("controller:application")||(0,S.generateControllerFactory)(n,"application") -if(r.named.has("model")&&(l=r.named.get("model")),void 0===l)a={engine:n,controller:s=u.create(),self:(0,o.createConstRef)(s,"this"),modelRef:l} -else{var d=(0,o.valueForRef)(l) -a={engine:n,controller:s=u.create({model:d}),self:(0,o.createConstRef)(s,"this"),modelRef:l}}return i.debugRenderTree&&(0,c.associateDestroyableChild)(n,s),a}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r,i){return[{bucket:t.engine,instance:t.engine,type:"engine",name:e.name,args:r},{bucket:t.controller,instance:t.controller,type:"route-template",name:"application",args:r,template:i}]}getSelf({self:e}){return e}getDestroyable(e){return e.engine}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}update(e){var{controller:t,modelRef:r}=e -void 0!==r&&t.set("model",(0,o.valueForRef)(r))}} -class lr{constructor(e){this.resolvedName=e,this.handle=-1,this.manager=or,this.compilable=null,this.capabilities=(0,d.capabilityFlagsFrom)(ar),this.state={name:e}}}var ur,cr,dr,hr=X(((e,t)=>{var r,i,n,s=e.positional[0] -return r=(0,b.createCapturedArgs)(e.named,b.EMPTY_POSITIONAL),(0,o.createComputeRef)((()=>{var e=(0,o.valueForRef)(s) -return"string"==typeof e?i===e?n:(i=e,n=(0,b.curry)(0,new lr(e),t,r,!0)):(n=null,i=null,null)}))})),pr=X(((e,t,r)=>{var i -i=0===e.positional.length?(0,o.createPrimitiveRef)("main"):e.positional[0] -var n=(0,o.createComputeRef)((()=>{var e=(0,o.valueForRef)(r.get("outletState")),t=void 0!==e?e.outlets:void 0 -return void 0!==t?t[(0,o.valueForRef)(i)]:void 0})),s=null,a=null -return(0,o.createComputeRef)((()=>{var e,r,i=(0,o.valueForRef)(n),l=function(e,t){if(void 0===t)return null -var r=t.render -if(void 0===r)return null -var i=r.template -if(void 0===i)return null -x(i)&&(i=i(r.owner)) -return{ref:e,name:r.name,outlet:r.outlet,template:i,controller:r.controller,model:r.model}}(n,i) -if(!function(e,t){if(null===e)return null===t -if(null===t)return!1 -return e.template===t.template&&e.controller===t.controller}(l,s))if(s=l,null!==l){var u=(0,m.dict)(),c=(0,o.childRefFromParts)(n,["render","model"]),d=(0,o.valueForRef)(c) -u.model=(0,o.createComputeRef)((()=>(s===l&&(d=(0,o.valueForRef)(c)),d))) -var h=(0,b.createCapturedArgs)(u,b.EMPTY_POSITIONAL) -a=(0,b.curry)(0,new Ct(l),null!==(r=null===(e=null==i?void 0:i.render)||void 0===e?void 0:e.owner)&&void 0!==r?r:t,h,!0)}else a=null -return a}))})) -function fr(e){return{object:`component:${e}`}}s.PARTIALS&&(ur=function(e,t){if(null!==e){var r=cr(t,dr(e),e) -return r}},cr=function(e,t,r){if(s.PARTIALS){if(!r)return -if(!e)throw new C.default("Container was not found when looking up a views template. This is most likely due to manually instantiating an Ember.View. See: http://git.io/EKPpnA") -return e.lookup(`template:${t}`)||e.lookup(`template:${r}`)}},dr=function(e){var t=e.split("/"),r=t[t.length-1] -return t[t.length-1]=`_${r}`,t.join("/")}) -var mr={action:te,mut:Kt,readonly:Xt,unbound:Zt,"query-params":Jt,"-hash":b.hash,"-each-in":Dt,"-normalize-class":Gt,"-resolve":Yt,"-track-array":Qt,"-mount":hr,"-outlet":pr,"-in-el-null":Wt} -mr["-disallow-dynamic-resolution"]=Vt -var gr=(0,t.assign)((0,t.assign)({},mr),{array:b.array,concat:b.concat,fn:b.fn,get:b.get,hash:b.hash}),br={action:sr},vr=(0,t.assign)((0,t.assign)({},br),{on:b.on}) -new m._WeakSet -class yr{constructor(){this.componentDefinitionCache=new Map}lookupPartial(e,t){if(s.PARTIALS){var i=ur(e,t)(t) -return new r.PartialDefinitionImpl(e,i)}return null}lookupHelper(e,t){var r=gr[e] -if(void 0!==r)return r -var i=t.factoryFor(`helper:${e}`) -if(void 0===i)return null -var n=i.class -return void 0===n?null:"function"==typeof n&&!0===n[yt]?((0,d.setInternalHelperManager)(Et,i),i):n}lookupBuiltInHelper(e){var t -return null!==(t=mr[e])&&void 0!==t?t:null}lookupModifier(e,t){var r=vr[e] -if(void 0!==r)return r -var i=t.factoryFor(`modifier:${e}`) -return void 0===i?null:i.class||null}lookupBuiltInModifier(e){var t -return null!==(t=br[e])&&void 0!==t?t:null}lookupComponent(e,t){var r=function(e,t,r){var i=function(e,t,r){var i=`component:${e}` -return t.factoryFor(i,r)||null}(t,e,r) -if(null!==i&&void 0!==i.class){var n=(0,d.getComponentTemplate)(i.class) -if(void 0!==n)return{component:i,layout:n}}var s=function(e,t,r){var i=`template:components/${e}` -return t.lookup(i,r)||null}(t,e,r) -return null===i&&null===s?null:{component:i,layout:s}}(t,e) -if(null===r)return null -var i,n=null -i=null===r.component?n=r.layout(t):r.component -var s=this.componentDefinitionCache.get(i) -if(void 0!==s)return s -null===n&&null!==r.layout&&(n=r.layout(t)) -var a=(0,p._instrumentStart)("render.getComponentDefinition",fr,e),o=null -if(null===r.component)if(O.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS)o={state:(0,b.templateOnlyComponent)(void 0,e),manager:b.TEMPLATE_ONLY_COMPONENT_MANAGER,template:n} -else{var l=t.factoryFor(w.privatize`component:-default`) -o={state:l,manager:(0,d.getInternalComponentManager)(l.class),template:n}}else{var u=r.component,c=u.class,h=(0,d.getInternalComponentManager)(c) -o={state:_e(h)?u:c,manager:h,template:n}}return a(),this.componentDefinitionCache.set(i,o),o}}class _r{constructor(e,t){this.view=e,this.outletState=t}child(){return new _r(this.view,this.outletState)}get(e){return this.outletState}set(e,t){return this.outletState=t,t}}class Er{constructor(e,t,r,i,n,s,a,o,l){this.root=e,this.runtime=t,this.id=(0,u.getViewId)(e),this.result=void 0,this.destroyed=!1,this.render=()=>{var e=(0,m.unwrapTemplate)(n).asLayout(),u=(0,b.renderMain)(t,r,i,s,l(t.env,{element:a,nextSibling:null}),e,o),c=this.result=u.sync() -this.render=()=>c.rerender({alwaysRevalidate:!1})}}isFor(e){return this.root===e}destroy(){var{result:e,runtime:{env:t}}=this -this.destroyed=!0,this.runtime=void 0,this.root=null,this.result=void 0,this.render=void 0,void 0!==e&&(0,b.inTransaction)(t,(()=>(0,c.destroy)(e)))}}var Rr=[] -function Or(e){var t=Rr.indexOf(e) -Rr.splice(t,1)}function wr(){}var Tr=null -var Pr=0 -f._backburner.on("begin",(function(){for(var e=0;eO.ENV._RERENDER_LOOP_LIMIT)throw Pr=0,Rr[e].destroy(),new Error("infinite rendering invalidation detected") -return Pr++,f._backburner.join(null,wr)}Pr=0,function(){if(null!==Tr){var e=Tr.resolve -Tr=null,f._backburner.join(null,e)}}()})) -class Ar{constructor(e,t,i,n,s,a=b.clientBuilder){this._inRenderTransaction=!1,this._lastRevision=-1,this._destroyed=!1,this._owner=e,this._rootTemplate=n(e),this._viewRegistry=s,this._roots=[],this._removedRoots=[],this._builder=a,this._isInteractive=i.isInteractive -var o=this._runtimeResolver=new yr,l=(0,k.artifacts)() -this._context=(0,r.programCompilationContext)(l,o) -var u=new qt(e,i.isInteractive) -this._runtime=(0,b.runtimeContext)({appendOperations:i.hasDOM?new b.DOMTreeConstruction(t):new T.NodeDOMTreeConstruction(t),updateOperations:new b.DOMChanges(t)},u,l,o)}static create(e){var{document:t,env:r,rootTemplate:i,_viewRegistry:n,builder:s}=e -return new this((0,g.getOwner)(e),t,r,i,n,s)}get debugRenderTree(){var{debugRenderTree:e}=this._runtime.env -return e}appendOutletView(e,r){var i=function(e){if(O.ENV._APPLICATION_TEMPLATE_WRAPPER){var r=(0,t.assign)({},Pt,{dynamicTag:!0,elementHook:!0,wrapped:!0}),i=new class extends At{getTagName(){return"div"}getCapabilities(){return r}didCreateElement(e,t){t.setAttribute("class","ember-view"),t.setAttribute("id",(0,h.guidFor)(e))}} -return new Ct(e.state,i)}return new Ct(e.state)}(e) -this._appendDefinition(e,(0,b.curry)(0,i,e.owner,null,!0),r)}appendTo(e,t){var r=new jt(e) -this._appendDefinition(e,(0,b.curry)(0,r,this._owner,null,!0),t)}_appendDefinition(e,t,r){var i=(0,o.createConstRef)(t,"this"),n=new _r(null,o.UNDEFINED_REFERENCE),s=new Er(e,this._runtime,this._context,this._owner,this._rootTemplate,i,r,n,this._builder) -this._renderRoot(s)}rerender(){this._scheduleRevalidate()}register(e){var t=(0,u.getViewId)(e) -this._viewRegistry[t]=e}unregister(e){delete this._viewRegistry[(0,u.getViewId)(e)]}remove(e){e._transitionTo("destroying"),this.cleanupRootFor(e),this._isInteractive&&e.trigger("didDestroyElement")}cleanupRootFor(e){if(!this._destroyed)for(var t=this._roots,r=this._roots.length;r--;){var i=t[r] -i.isFor(e)&&(i.destroy(),t.splice(r,1))}}destroy(){this._destroyed||(this._destroyed=!0,this._clearAllRoots())}getElement(e){if(this._isInteractive)return(0,u.getViewElement)(e) -throw new Error("Accessing `this.element` is not allowed in non-interactive environments (such as FastBoot).")}getBounds(e){var t=e[pe] -return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}createElement(e){return this._runtime.env.getAppendOperations().createElement(e)}_renderRoot(e){var t,{_roots:r}=this -r.push(e),1===r.length&&(t=this,Rr.push(t)),this._renderRootsTransaction()}_renderRoots(){var e,{_roots:t,_runtime:r,_removedRoots:i}=this -do{e=t.length,(0,b.inTransaction)(r.env,(()=>{for(var r=0;r=e||n.render()}this._lastRevision=(0,l.valueForTag)(l.CURRENT_TAG)}))}while(t.length>e) -for(;i.length;){var n=i.pop(),s=t.indexOf(n) -t.splice(s,1)}0===this._roots.length&&Or(this)}_renderRootsTransaction(){if(!this._inRenderTransaction){this._inRenderTransaction=!0 -var e=!1 -try{this._renderRoots(),e=!0}finally{e||(this._lastRevision=(0,l.valueForTag)(l.CURRENT_TAG)),this._inRenderTransaction=!1}}}_clearAllRoots(){for(var e=this._roots,t=0;t=0;o--)(n=e[o])&&(a=(s<3?n(a):s>3?n(t,r,a):n(t,r))||a) -return s>3&&a&&Object.defineProperty(t,r,a),a},Mr=[],jr={} -function xr(e){return null==e}function Dr(e){return!xr(e)}function Nr(e){return"object"==typeof e&&null!==e&&!0===e.isQueryParams}(0,n.debugFreeze)(Mr),(0,n.debugFreeze)(jr) -class Ir extends ze{constructor(){super(...arguments),this.modernized=this.shouldModernize(),this.currentRouteCache=(0,l.createCache)((()=>((0,l.consumeTag)((0,l.tagFor)(this.routing,"currentState")),(0,l.untrack)((()=>this.routing.currentRouteName)))))}static toString(){return"LinkTo"}validateArguments(){super.validateArguments()}get class(){var e="ember-view" -return this.isActive?(e+=this.classFor("active"),!1===this.willBeActive&&(e+=" ember-transitioning-out")):this.willBeActive&&(e+=" ember-transitioning-in"),this.isLoading&&(e+=this.classFor("loading")),this.isDisabled&&(e+=this.classFor("disabled")),e}get href(){if(this.isLoading)return"#" -var{routing:e,route:t,models:r,query:i}=this -return(0,l.consumeTag)((0,l.tagFor)(e,"currentState")),e.generateURL(t,r,i)}click(e){if((0,u.isSimpleClick)(e)){var t=e.currentTarget -if((""===t.target||"_self"===t.target)&&(this.preventDefault(e),!this.isDisabled&&!this.isLoading)){var{routing:r,route:i,models:n,query:s,replace:a}=this,o={routeName:i,queryParams:s,transition:void 0};(0,p.flaggedInstrument)("interaction.link-to",o,(()=>{o.transition=r.transitionTo(i,n,s,a)}))}}}get route(){if("route"in this.args.named){var e=this.named("route") -return e&&this.namespaceRoute(e)}return this.currentRoute}get currentRoute(){return(0,l.getValue)(this.currentRouteCache)}get models(){if("models"in this.args.named){var e=this.named("models") -return e}return"model"in this.args.named?[this.named("model")]:Mr}get query(){if("query"in this.args.named){var e=this.named("query") -return(0,t.assign)({},e)}return jr}get replace(){return!0===this.named("replace")}get isActive(){return this.isActiveForState(this.routing.currentState)}get willBeActive(){var e=this.routing.currentState,t=this.routing.targetState -return e===t?null:this.isActiveForState(t)}get isLoading(){return xr(this.route)||this.models.some((e=>xr(e)))}get isDisabled(){return Boolean(this.named("disabled"))}get isEngine(){return void 0!==(0,_.getEngineParent)(this.owner)}get engineMountPoint(){return this.owner.mountPoint}classFor(e){var t=this.named(`${e}Class`) -return!0===t||xr(t)?` ${e}`:t?` ${t}`:""}namespaceRoute(e){var{engineMountPoint:t}=this -return void 0===t?e:"application"===e?t:`${t}.${e}`}isActiveForState(e){if(!Dr(e))return!1 -if(this.isLoading)return!1 -var t=this.named("current-when") -if("boolean"==typeof t)return t -if("string"==typeof t){var{models:r,routing:i}=this -return t.split(" ").some((t=>i.isActiveForRoute(r,void 0,this.namespaceRoute(t),e)))}var{route:n,models:s,query:a,routing:o}=this -return o.isActiveForRoute(s,a,n,e)}preventDefault(e){e.preventDefault()}shouldModernize(){return Boolean(!0)&&!1===Ee._wasReopened&&!1===v.TargetActionSupport._wasReopened&&!1===ke._wasReopened}isSupportedArgument(e){return-1!==["route","model","models","query","replace","disabled","current-when","activeClass","loadingClass","disabledClass"].indexOf(e)||super.isSupportedArgument(e)}}kr([(0,E.inject)("-routing")],Ir.prototype,"routing",void 0),kr([R.action],Ir.prototype,"click",null) -var{prototype:Fr}=Ir,Lr=(e,t)=>e?Object.getOwnPropertyDescriptor(e,t)||Lr(Object.getPrototypeOf(e),t):null -qe(Ir),Ve(Ir,["id",["id","elementId"],"class",["class","classNames"],["role","ariaRole"],"title","rel","tabindex","target"]),We(Ir) -var zr=Fr.onUnsupportedArgument -Object.defineProperty(Fr,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(e){"href"===e||zr.call(this,e)}}) -var Br=Fr.onUnsupportedArgument -Object.defineProperty(Fr,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(e){if("tagName"===e){this.named("tagName") -this.modernized=!1}else Br.call(this,e)}}) -var Ur=Fr.isSupportedArgument -Object.defineProperty(Fr,"isSupportedArgument",{configurable:!0,enumerable:!1,value:function(e){if(this.modernized){if("bubbles"===e)return!0 -if("preventDefault"===e)return!0}return Ur.call(this,e)}}),Object.defineProperty(Fr,"preventDefault",{configurable:!0,enumerable:!1,value:function(e){var t=!0,r=!1 -if("preventDefault"in this.args.named){var i=this.named("preventDefault") -xr(i)||i||(t=!1)}"bubbles"in this.args.named&&(!1===this.named("bubbles")&&(r=!0)) -t&&e.preventDefault(),r&&e.stopPropagation()}}) -var $r=Fr.isSupportedArgument -Object.defineProperty(Fr,"isSupportedArgument",{configurable:!0,enumerable:!1,value:function(e){return!(!this.modernized||"disabledWhen"!==e)||$r.call(this,e)}}) -var Hr=Lr(Fr,"isDisabled"),qr=Hr.get -Object.defineProperty(Fr,"isDisabled",{configurable:!0,enumerable:!1,get:function(){return"disabledWhen"in this.args.named?Boolean(this.named("disabledWhen")):qr.call(this)}}) -var Vr=Lr(Fr,"models"),Wr=Vr.get -Object.defineProperty(Fr,"models",{configurable:!0,enumerable:!1,get:function(){var e=Wr.call(this) -return e.length>0&&!("query"in this.args.named)&&Nr(e[e.length-1])&&(e=e.slice(0,-1)),e}}) -var Gr=Lr(Fr,"query"),Yr=Gr.get -Object.defineProperty(Fr,"query",{configurable:!0,enumerable:!1,get:function(){var e -if("query"in this.args.named){var t=Yr.call(this) -return Nr(t)?null!==(e=t.values)&&void 0!==e?e:jr:t}var r=Wr.call(this) -if(r.length>0){var i=r[r.length-1] -if(Nr(i)&&null!==i.values)return i.values}return jr}}) -var Qr=Fr.validateArguments -Object.defineProperty(Fr,"validateArguments",{configurable:!0,enumerable:!1,value:function(){(0!==this.args.positional.length||"params"in this.args.named)&&(this.modernized=!1),Qr.call(this)}}) -var Kr=Fr.onUnsupportedArgument -Object.defineProperty(Fr,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(e){"params"!==e&&Kr.call(this,e)}}),s.JQUERY_INTEGRATION&&Ke(Ir) -var Jr=Ue(Ir,Cr),Xr=wt((function(e){return a.loc.apply(null,e)})),Zr=(0,r.templateFactory)({id:"3jT+eJpe",block:'[[[46,[28,[37,1],null,null],null,null,null]],[],false,["component","-outlet"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/outlet.hbs",isStrictMode:!1}),ei="-top-level",ti="main" -class ri{constructor(e,t,r){this._environment=e,this.owner=t,this.template=r -var i=(0,l.createTag)(),n={outlets:{main:void 0},render:{owner:t,into:void 0,outlet:ti,name:ei,controller:void 0,model:void 0,template:r}},s=this.ref=(0,o.createComputeRef)((()=>((0,l.consumeTag)(i),n)),(e=>{(0,l.dirtyTag)(i),n.outlets.main=e})) -this.state={ref:s,name:ei,outlet:ti,template:r,controller:void 0,model:void 0}}static extend(e){return class extends ri{static create(r){return r?super.create((0,t.assign)({},e,r)):super.create(e)}}}static reopenClass(e){(0,t.assign)(this,e)}static create(e){var{_environment:t,template:r}=e,i=(0,g.getOwner)(e),n=r(i) -return new ri(t,i,n)}appendTo(e){var t -t=this._environment.hasDOM&&"string"==typeof e?document.querySelector(e):e -var r=this.owner.lookup("renderer:-dom");(0,f.schedule)("render",r,"appendOutletView",this,t)}rerender(){}setOutletState(e){(0,o.updateRef)(this.ref,e)}destroy(){}}e.OutletView=ri -e.componentCapabilities=d.componentCapabilities,e.modifierCapabilities=d.modifierCapabilities})),e("@ember/-internals/meta/index",["exports","@ember/-internals/meta/lib/meta"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Meta",{enumerable:!0,get:function(){return t.Meta}}),Object.defineProperty(e,"UNDEFINED",{enumerable:!0,get:function(){return t.UNDEFINED}}),Object.defineProperty(e,"counters",{enumerable:!0,get:function(){return t.counters}}),Object.defineProperty(e,"meta",{enumerable:!0,get:function(){return t.meta}}),Object.defineProperty(e,"peekMeta",{enumerable:!0,get:function(){return t.peekMeta}}),Object.defineProperty(e,"setMeta",{enumerable:!0,get:function(){return t.setMeta}})})),e("@ember/-internals/meta/lib/meta",["exports","@ember/-internals/utils","@ember/debug","@glimmer/destroyable"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.meta=e.counters=e.UNDEFINED=e.Meta=void 0,e.peekMeta=d,e.setMeta=c -var n=Object.prototype -var s=e.UNDEFINED=(0,t.symbol)("undefined"),a=1 -class o{constructor(e){this._listenersVersion=1,this._inheritedEnd=-1,this._flattenedVersion=0,this._parent=void 0,this._descriptors=void 0,this._mixins=void 0,this._lazyChains=void 0,this._values=void 0,this._revisions=void 0,this._isInit=!1,this.source=e,this.proto=void 0===e.constructor?void 0:e.constructor.prototype,this._listeners=void 0}get parent(){var e=this._parent -if(void 0===e){var t=l(this.source) -this._parent=e=null===t||t===n?null:h(t)}return e}setSourceDestroying(){}setSourceDestroyed(){}isSourceDestroying(){return(0,i.isDestroying)(this.source)}isSourceDestroyed(){return(0,i.isDestroyed)(this.source)}setInitializing(){this._isInit=!0}unsetInitializing(){this._isInit=!1}isInitializing(){return this._isInit}isPrototypeMeta(e){return this.proto===this.source&&this.source===e}_getOrCreateOwnMap(e){return this[e]||(this[e]=Object.create(null))}_getOrCreateOwnSet(e){return this[e]||(this[e]=new Set)}_findInheritedMap(e,t){for(var r=this;null!==r;){var i=r[e] -if(void 0!==i){var n=i.get(t) -if(void 0!==n)return n}r=r.parent}}_hasInInheritedSet(e,t){for(var r=this;null!==r;){var i=r[e] -if(void 0!==i&&i.has(t))return!0 -r=r.parent}return!1}valueFor(e){var t=this._values -return void 0!==t?t[e]:void 0}setValueFor(e,t){this._getOrCreateOwnMap("_values")[e]=t}revisionFor(e){var t=this._revisions -return void 0!==t?t[e]:void 0}setRevisionFor(e,t){this._getOrCreateOwnMap("_revisions")[e]=t}writableLazyChainsFor(e){var t=this._getOrCreateOwnMap("_lazyChains"),r=t[e] -return void 0===r&&(r=t[e]=[]),r}readableLazyChainsFor(e){var t=this._lazyChains -if(void 0!==t)return t[e]}addMixin(e){this._getOrCreateOwnSet("_mixins").add(e)}hasMixin(e){return this._hasInInheritedSet("_mixins",e)}forEachMixins(e){for(var t,r=this;null!==r;){var i=r._mixins -void 0!==i&&(t=void 0===t?new Set:t,i.forEach((r=>{t.has(r)||(t.add(r),e(r))}))),r=r.parent}}writeDescriptors(e,t){(this._descriptors||(this._descriptors=new Map)).set(e,t)}peekDescriptors(e){var t=this._findInheritedMap("_descriptors",e) -return t===s?void 0:t}removeDescriptors(e){this.writeDescriptors(e,s)}forEachDescriptors(e){for(var t,r=this;null!==r;){var i=r._descriptors -void 0!==i&&(t=void 0===t?new Set:t,i.forEach(((r,i)=>{t.has(i)||(t.add(i),r!==s&&e(i,r))}))),r=r.parent}}addToListeners(e,t,r,i,n){this.pushListener(e,t,r,i?1:0,n)}removeFromListeners(e,t,r){this.pushListener(e,t,r,2)}pushListener(e,t,r,i,n=!1){var s=this.writableListeners(),a=p(s,e,t,r) -if(-1!==a&&a0&&(r.splice(0,this._inheritedEnd),this._inheritedEnd=0) -for(var i=0;i=0;n--){var s=e[n] -if(s.event===t&&s.target===r&&s.method===i)return n}return-1}})),e("@ember/-internals/metal/index",["exports","@ember/-internals/meta","@ember/-internals/utils","@ember/debug","@ember/-internals/environment","@ember/runloop","@glimmer/destroyable","@glimmer/validator","@glimmer/manager","@glimmer/util","@ember/error","ember/version","@ember/-internals/container","@ember/deprecated-features","@ember/polyfills","@ember/-internals/owner"],(function(e,t,r,i,n,s,a,o,l,u,c,d,h,p,f,m){"use strict" -function g(e,r,i,n,s,a=!0){n||"function"!=typeof i||(n=i,i=null),(0,t.meta)(e).addToListeners(r,i,n,!0===s,a)}function b(e,r,i,n){var s,a -"object"==typeof i?(s=i,a=n):(s=null,a=i),(0,t.meta)(e).removeFromListeners(r,s,a)}function v(e,r,i,n,s){if(void 0===n){var a=void 0===s?(0,t.peekMeta)(e):s -n=null!==a?a.matchingListeners(r):void 0}if(void 0===n||0===n.length)return!1 -for(var o=n.length-3;o>=0;o-=3){var l=n[o],u=n[o+1],c=n[o+2] -if(u){c&&b(e,r,l,u),l||(l=e) -var d=typeof u -"string"!==d&&"symbol"!==d||(u=l[u]),u.apply(l,i)}}return!0}Object.defineProperty(e,"__esModule",{value:!0}),e.TrackedDescriptor=e.SYNC_OBSERVERS=e.PROXY_CONTENT=e.PROPERTY_DID_CHANGE=e.NAMESPACES_BY_ID=e.NAMESPACES=e.Mixin=e.Libraries=e.DEBUG_INJECTION_FUNCTIONS=e.ComputedProperty=e.ASYNC_OBSERVERS=void 0,e._getPath=we,e._getProp=Oe,e._setProp=Ae,e.activateObserver=A,e.addArrayObserver=function(e,t,r,i=!1){return K(e,t,r,g,!1)},e.addListener=g,e.addNamespace=function(e){He.unprocessedNamespaces=!0,Ve.push(e)},e.addObserver=w,e.alias=function(e){return le(new De(e),xe)},e.aliasMethod=void 0,e.applyMixin=ut,e.arrayContentDidChange=V,e.arrayContentWillChange=q,e.autoComputed=function(...e){return le(new ke(e),Me)},e.beginPropertyChanges=U,e.changeProperties=H,e.computed=je,Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return o.createCache}}),e.defineProperty=be,e.deprecateProperty=function(e,t,r,i){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,set(e){Pe(this,r,e)},get(){return Re(this,r)}})},e.descriptorForDecorator=de,e.descriptorForProperty=ce,e.eachProxyArrayDidChange=function(e,t,r,i){var n=Fe.get(e) -void 0!==n&&n.arrayDidChange(e,t,r,i)},e.eachProxyArrayWillChange=function(e,t,r,i){var n=Fe.get(e) -void 0!==n&&n.arrayWillChange(e,t,r,i)},e.endPropertyChanges=$,e.expandProperties=me,e.findNamespace=function(e){$e||Qe() -return We[e]},e.findNamespaces=Ge -e.flushAsyncObservers=function(e=!0){var r=(0,o.valueForTag)(o.CURRENT_TAG) -if(j===r)return -j=r,O.forEach(((r,i)=>{var n=(0,t.peekMeta)(i) -r.forEach(((r,a)=>{if(!(0,o.validateTag)(r.tag,r.lastRevision)){var l=()=>{try{v(i,a,[i,r.path],void 0,n)}finally{r.tag=ee(i,r.path,(0,o.tagMetaFor)(i),(0,t.peekMeta)(i)),r.lastRevision=(0,o.valueForTag)(r.tag)}} -e?(0,s.schedule)("actions",l):l()}}))}))},e.get=Re,e.getCachedValueFor=function(e,r){var i=(0,t.peekMeta)(e) -if(i)return i.valueFor(r)},e.getProperties=function(e,t){var r={},i=arguments,n=1 -2===arguments.length&&Array.isArray(t)&&(n=0,i=arguments[1]) -for(;n0},e.inject=function(e,...t){var r=re(t),i=r?void 0:t[0],n=function(t){var r=(0,m.getOwner)(this)||this.container -return r.lookup(`${e}:${i||t}`)} -0 -var s=je({get:n,set(e,t){be(this,e,null,t)}}) -return r?s(t[0],t[1],t[2]):s},e.isBlank=ze,e.isClassicDecorator=he,e.isComputed=function(e,t){return Boolean(ce(e,t))},Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return o.isConst}}),e.isElementDescriptor=re,e.isEmpty=Le,e.isNamespaceSearchDisabled=function(){return $e},e.isNone=function(e){return null==e},e.isPresent=function(e){return!ze(e)},e.libraries=void 0,e.markObjectAsDirty=F,e.mixin=function(e,...t){return ut(e,t),e},e.nativeDescDecorator=ie,e.notifyPropertyChange=B,e.objectAt=G,e.observer=function(...e){var t,i,s,a=e.pop() -"function"==typeof a?(t=a,i=e,s=!n.ENV._DEFAULT_ASYNC_OBSERVERS):(t=a.fn,i=a.dependentKeys,s=a.sync) -for(var o=[],l=0;lo.push(e))) -return(0,r.setObservers)(t,{paths:o,sync:s}),t},e.on=function(...e){var t=e.pop(),i=e -return(0,r.setListeners)(t,i),t},e.processAllNamespaces=Qe,e.processNamespace=Ye,e.removeArrayObserver=function(e,t,r,i=!1){return K(e,t,r,b,!0)},e.removeListener=b,e.removeNamespace=function(e){var t=(0,r.getName)(e) -delete We[t],Ve.splice(Ve.indexOf(e),1),t in n.context.lookup&&e===n.context.lookup[t]&&(n.context.lookup[t]=void 0)} -e.removeObserver=T,e.replace=function(e,t,r,i=W){Array.isArray(e)?Q(e,t,r,i):e.replace(t,r,i)},e.replaceInNativeArray=Q,e.sendEvent=v,e.set=Pe,e.setClassicDecorator=pe,e.setNamespaceSearchDisabled=function(e){$e=Boolean(e)},e.setProperties=function(e,t){if(null===t||"object"!=typeof t)return t -return H((()=>{for(var r,i=Object.keys(t),n=0;nfunction(e){R.size>0&&R.delete(e) -O.size>0&&O.delete(e)}(e)),!0)),r.get(e)}function A(e,r,i=!1){var n=P(e,i) -if(n.has(r))n.get(r).count++ -else{var s=r.substring(0,r.lastIndexOf(":")),a=ee(e,s,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)) -n.set(r,{count:1,path:s,tag:a,lastRevision:(0,o.valueForTag)(a),suspended:!1})}}var S=!1,C=[] -function k(e,t,r=!1){if(!0!==S){var i=!0===r?R:O,n=i.get(e) -if(void 0!==n){var s=n.get(t) -s.count--,0===s.count&&(n.delete(t),0===n.size&&i.delete(e))}}else C.push([e,t,r])}function M(e){O.has(e)&&O.get(e).forEach((r=>{r.tag=ee(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)})),R.has(e)&&R.get(e).forEach((r=>{r.tag=ee(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)}))}var j=0 -function x(){R.forEach(((e,r)=>{var i=(0,t.peekMeta)(r) -e.forEach(((e,n)=>{if(!e.suspended&&!(0,o.validateTag)(e.tag,e.lastRevision))try{e.suspended=!0,v(r,n,[r,e.path],void 0,i)}finally{e.tag=ee(r,e.path,(0,o.tagMetaFor)(r),(0,t.peekMeta)(r)),e.lastRevision=(0,o.valueForTag)(e.tag),e.suspended=!1}}))}))}function D(e,t,r){var i=R.get(e) -if(i){var n=i.get(_(t)) -n&&(n.suspended=r)}}var N=(0,r.symbol)("SELF_TAG") -function I(e,t,r=!1,i){var n=(0,l.getCustomTagFor)(e) -if(void 0!==n)return n(e,t,r) -var s=(0,o.tagFor)(e,t,i) -return s}function F(e,t){(0,o.dirtyTagFor)(e,t),(0,o.dirtyTagFor)(e,N)}var L=e.PROPERTY_DID_CHANGE=(0,r.enumerableSymbol)("PROPERTY_DID_CHANGE"),z=0 -function B(e,r,i,n){var s=void 0===i?(0,t.peekMeta)(e):i -null!==s&&(s.isInitializing()||s.isPrototypeMeta(e))||(F(e,r),z<=0&&x(),L in e&&(4===arguments.length?e[L](r,n):e[L](r)))}function U(){z++,S=!0}function $(){--z<=0&&(x(),function(){for(var[e,t,r]of(S=!1,C))k(e,t,r) -C=[]}())}function H(e){U() -try{e()}finally{$()}}function q(e,t,r,i){return void 0===t?(t=0,r=i=-1):(void 0===r&&(r=-1),void 0===i&&(i=-1)),v(e,"@array:before",[e,t,r,i]),e}function V(e,r,i,n,s=!0){void 0===r?(r=0,i=n=-1):(void 0===i&&(i=-1),void 0===n&&(n=-1)) -var a=(0,t.peekMeta)(e) -if(s&&((n<0||i<0||n-i!=0)&&B(e,"length",a),B(e,"[]",a)),v(e,"@array:change",[e,r,i,n]),null!==a){var o=-1===i?0:i,l=e.length-((-1===n?0:n)-o),u=r<0?l+r:r -if(void 0!==a.revisionFor("firstObject")&&0===u&&B(e,"firstObject",a),void 0!==a.revisionFor("lastObject"))l-1e.indexOf("."))) -function Ee(e){return"string"==typeof e&&-1!==_e.get(e)}e.PROXY_CONTENT=(0,r.symbol)("PROXY_CONTENT") -function Re(e,t){return Ee(t)?we(e,t):Oe(e,t)}function Oe(e,t){var i,n=typeof e,s="object"===n -return s||"function"===n?(void 0===(i=e[t])&&s&&!(t in e)&&"function"==typeof e.unknownProperty&&(i=e.unknownProperty(t)),(0,o.isTracking)()&&((0,o.consumeTag)((0,o.tagFor)(e,t)),(Array.isArray(i)||(0,r.isEmberArray)(i))&&(0,o.consumeTag)((0,o.tagFor)(i,"[]")))):i=e[t],i}function we(e,t){for(var r=e,i="string"==typeof t?t.split("."):t,n=0;nOe({},"a"))),(0,o.track)((()=>Oe({},1))),(0,o.track)((()=>Oe({a:[]},"a"))),(0,o.track)((()=>Oe({a:Te},"a"))) -function Se(){}class Ce extends ne{constructor(e){super(),this._volatile=!1,this._readOnly=!1,this._hasConfig=!1,this._getter=void 0,this._setter=void 0 -var t=e[e.length-1] -if("function"==typeof t||null!==t&&"object"==typeof t){this._hasConfig=!0 -var r=e.pop() -if("function"==typeof r)this._getter=r -else{var i=r -this._getter=i.get||Se,this._setter=i.set}}e.length>0&&this._property(...e)}setup(e,t,r,i){if(super.setup(e,t,r,i),!1===this._hasConfig){var{get:n,set:s}=r -void 0!==n&&(this._getter=n),void 0!==s&&(this._setter=function(e,t){var r=s.call(this,t) -return void 0!==n&&void 0===r?n.call(this):r})}}_property(...e){var t=[] -function r(e){t.push(e)}for(var i=0;i{i=u.call(e,r)})),void 0!==c&&(0,o.updateTag)(a,Z(e,c,s,n)),n.setValueFor(r,i),n.setRevisionFor(r,(0,o.valueForTag)(a)),X(n,r,i)}return(0,o.consumeTag)(a),Array.isArray(i)&&(0,o.consumeTag)((0,o.tagFor)(i,"[]")),i}set(e,r,i){if(this._readOnly&&this._throwReadOnlyError(e,r),!this._setter)return this.clobberSet(e,r,i) -if(this._volatile)return this.volatileSet(e,r,i) -var n,s=(0,t.meta)(e) -s.isInitializing()&&void 0!==this._dependentKeys&&this._dependentKeys.length>0&&"function"==typeof e[L]&&e.isComponent&&w(e,r,(()=>{e[L](r)}),void 0,!0) -try{U(),n=this._set(e,r,i,s),X(s,r,n) -var a=(0,o.tagMetaFor)(e),l=(0,o.tagFor)(e,r,a),{_dependentKeys:u}=this -void 0!==u&&(0,o.updateTag)(l,Z(e,u,a,s)),s.setRevisionFor(r,(0,o.valueForTag)(l))}finally{$()}return n}_throwReadOnlyError(e,t){throw new c.default(`Cannot set read-only property "${t}" on object: ${(0,r.inspect)(e)}`)}clobberSet(e,r,i){return be(e,r,null,(0,t.meta)(e).valueFor(r)),Pe(e,r,i),i}volatileSet(e,t,r){return this._setter.call(e,t,r)}_set(e,t,r,i){var n,s=void 0!==i.revisionFor(t),a=i.valueFor(t),{_setter:o}=this -D(e,t,!0) -try{n=o.call(e,t,r,a)}finally{D(e,t,!1)}return s&&a===n||(i.setValueFor(t,n),B(e,t,i,r)),n}teardown(e,t,r){this._volatile||void 0!==r.revisionFor(t)&&(r.setRevisionFor(t,void 0),r.setValueFor(t,void 0)),super.teardown(e,t,r)}}e.ComputedProperty=Ce -class ke extends Ce{get(e,r){if(this._volatile)return this._getter.call(e,r) -var i,n=(0,t.meta)(e),s=(0,o.tagMetaFor)(e),a=(0,o.tagFor)(e,r,s),l=n.revisionFor(r) -if(void 0!==l&&(0,o.validateTag)(a,l))i=n.valueFor(r) -else{var{_getter:u}=this,c=(0,o.track)((()=>{i=u.call(e,r)}));(0,o.updateTag)(a,c),n.setValueFor(r,i),n.setRevisionFor(r,(0,o.valueForTag)(a)),X(n,r,i)}return(0,o.consumeTag)(a),Array.isArray(i)&&(0,o.consumeTag)((0,o.tagFor)(i,"[]",s)),i}}class Me extends Function{readOnly(){var e=de(this) -return e._readOnly=!0,this}volatile(){return de(this)._volatile=!0,this}property(...e){return de(this)._property(...e),this}meta(e){var t=de(this) -return 0===arguments.length?t._meta||{}:(t._meta=e,this)}get _getter(){return de(this)._getter}set enumerable(e){de(this).enumerable=e}}function je(...e){return re(e)?le(new Ce([]),Me)(e[0],e[1],e[2]):le(new Ce(e),Me)}class xe extends Function{readOnly(){return de(this).readOnly(),this}oneWay(){return de(this).oneWay(),this}meta(e){var t=de(this) -if(0===arguments.length)return t._meta||{} -t._meta=e}}class De extends ne{constructor(e){super(),this.altKey=e}setup(e,t,r,i){super.setup(e,t,r,i),J.add(this)}get(e,r){var i,n=(0,t.meta)(e),s=(0,o.tagMetaFor)(e),a=(0,o.tagFor)(e,r,s);(0,o.untrack)((()=>{i=Re(e,this.altKey)})) -var l=n.revisionFor(r) -return void 0!==l&&(0,o.validateTag)(a,l)||((0,o.updateTag)(a,ee(e,this.altKey,s,n)),n.setRevisionFor(r,(0,o.valueForTag)(a)),X(n,r,i)),(0,o.consumeTag)(a),i}set(e,t,r){return Pe(e,this.altKey,r)}readOnly(){this.set=Ne}oneWay(){this.set=Ie}}function Ne(e,t){throw new c.default(`Cannot set read-only property '${t}' on object: ${(0,r.inspect)(e)}`)}function Ie(e,t,r){return be(e,t,null),Pe(e,t,r)}var Fe=new WeakMap -function Le(e){var t=null==e -if(t)return t -if("number"==typeof e.size)return!e.size -var r=typeof e -if("object"===r){var i=Re(e,"size") -if("number"==typeof i)return!i}if("number"==typeof e.length&&"function"!==r)return!e.length -if("object"===r){var n=Re(e,"length") -if("number"==typeof n)return!n}return!1}function ze(e){return Le(e)||"string"==typeof e&&!1===/\S/.test(e)}class Be{constructor(){this._registry=[],this._coreLibIndex=0}_getLibraryByName(e){for(var t=this._registry,r=t.length,i=0;i=65&&e<=90){var o=Je(t,a) -o&&(0,r.setName)(o,a)}}}function Ye(e){Ke([e.toString()],e,new Set)}function Qe(){var e=He.unprocessedNamespaces -if(e&&(Ge(),He.unprocessedNamespaces=!1),e||qe){for(var t=Ve,r=0;r{var t=s.indexOf(e);-1!==t&&s.splice(t,1)})))}else ot(t,o,r,i,n,s,a)}function ot(e,t,r,i,n,s,a){for(var o=tt("concatenatedProperties",t,i,n),l=tt("mergedProperties",t,i,n),u=Object.keys(t),c=0;c=0||"concatenatedProperties"===d||"mergedProperties"===d?h=nt(d,h,i):l&&l.indexOf(d)>-1?h=st(d,h,i):m&&(h=it(d,h,i,r)),i[d]=h,r[d]=void 0}}}function lt(e,t,i,n){var s=(0,r.observerListenerMetaFor)(i) -if(void 0!==s){var{observers:a,listeners:o}=s -if(void 0!==a)for(var l=n?w:T,u=0;u{e.properties||i.push(e)})),i}reopen(...e){if(0!==e.length){if(this.properties){var t=new pt(void 0,this.properties) -this.properties=void 0,this.mixins=[t]}else this.mixins||(this.mixins=[]) -return this.mixins=this.mixins.concat(ft(e)),this}}apply(e,t=!1){return ut(e,[this],t)}applyPartial(e){return ut(e,[this])}detect(e){if("object"!=typeof e||null===e)return!1 -if(ht.has(e))return mt(e,this) -var r=(0,t.peekMeta)(e) -return null!==r&&r.hasMixin(this)}without(...e){var t=new pt([this]) -return t._without=e,t}keys(){return gt(this)}toString(){return"(unknown mixin)"}}function ft(e){var t=e&&e.length||0,r=void 0 -if(t>0){r=new Array(t) -for(var i=0;imt(e,t,r)))}function gt(e,t=new Set,r=new Set){if(!r.has(e)){if(r.add(e),e.properties)for(var i=Object.keys(e.properties),n=0;ngt(e,t,r))) -return t}}if(e.Mixin=pt,p.ALIAS_METHOD){var bt=new u._WeakSet -dt=e=>bt.has(e),ct=class{constructor(e){this.methodName=e,bt.add(this)}}}function vt(...e){if(!re(e)){var t=e[0],r=t?t.initializer:void 0,i=t?t.value:void 0,n=function(e,t,n,s,a){return yt([e,t,{initializer:r||(()=>i)}])} -return pe(n),n}return yt(e)}function yt([e,i,n]){var{getter:s,setter:a}=(0,o.trackedData)(i,n?n.initializer:void 0) -function l(){var e=s(this) -return(Array.isArray(e)||(0,r.isEmberArray)(e))&&(0,o.consumeTag)((0,o.tagFor)(e,"[]")),e}function u(e){a(this,e),(0,o.dirtyTagFor)(this,N)}var c={enumerable:!0,configurable:!0,isTracked:!0,get:l,set:u} -return oe.add(u),(0,t.meta)(e).writeDescriptors(i,new _t(l,u)),c}p.ALIAS_METHOD&&(e.aliasMethod=function(e){return new ct(e)}) -class _t{constructor(e,t){this._get=e,this._set=t,J.add(this)}get(e){return this._get.call(e)}set(e,t,r){this._set.call(e,r)}}e.TrackedDescriptor=_t})),e("@ember/-internals/overrides/index",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.onRunloopDotAccess=e.onEmberGlobalAccess=e.onComputedDotAccess=void 0})),e("@ember/-internals/owner/index",["exports","@glimmer/owner","@ember/-internals/utils","@ember/debug"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.LEGACY_OWNER=void 0,e.getOwner=function(e){var r=(0,t.getOwner)(e) -void 0===r&&(r=e[n]) -return r},e.setOwner=function(e,r){(0,t.setOwner)(e,r),e[n]=r} -var n=e.LEGACY_OWNER=(0,r.enumerableSymbol)("LEGACY_OWNER")})),e("@ember/-internals/routing/index",["exports","@ember/-internals/routing/lib/ext/controller","@ember/-internals/routing/lib/location/api","@ember/-internals/routing/lib/location/none_location","@ember/-internals/routing/lib/location/hash_location","@ember/-internals/routing/lib/location/history_location","@ember/-internals/routing/lib/location/auto_location","@ember/-internals/routing/lib/system/generate_controller","@ember/-internals/routing/lib/system/controller_for","@ember/-internals/routing/lib/system/dsl","@ember/-internals/routing/lib/system/router","@ember/-internals/routing/lib/system/route","@ember/-internals/routing/lib/system/query_params","@ember/-internals/routing/lib/services/routing","@ember/-internals/routing/lib/services/router","@ember/-internals/routing/lib/system/router_state","@ember/-internals/routing/lib/system/cache"],(function(e,t,r,i,n,s,a,o,l,u,c,d,h,p,f,m,g){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"AutoLocation",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"BucketCache",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(e,"HashLocation",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"HistoryLocation",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"Location",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"NoneLocation",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"QueryParams",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(e,"Route",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(e,"Router",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(e,"RouterDSL",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(e,"RouterService",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(e,"RouterState",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(e,"RoutingService",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(e,"controllerFor",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"generateController",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"generateControllerFactory",{enumerable:!0,get:function(){return o.generateControllerFactory}})})),e("@ember/-internals/routing/lib/ext/controller",["exports","@ember/-internals/metal","@ember/-internals/owner","@ember/controller/lib/controller_mixin","@ember/-internals/routing/lib/utils"],(function(e,t,r,i,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,i.default.reopen({concatenatedProperties:["queryParams"],init(){this._super(...arguments) -var e=(0,r.getOwner)(this) -e&&(this.namespace=e.lookup("application:main"),this.target=e.lookup("router:main"))},queryParams:null,_qpDelegate:null,_qpChanged(e,r){var i=r.indexOf(".[]"),n=-1===i?r:r.slice(0,i);(0,e._qpDelegate)(n,(0,t.get)(e,n))},transitionToRoute(...e){(0,n.deprecateTransitionMethods)("controller","transitionToRoute") -var r=(0,t.get)(this,"target") -return(r.transitionToRoute||r.transitionTo).apply(r,(0,n.prefixRouteNameArg)(this,e))},replaceRoute(...e){(0,n.deprecateTransitionMethods)("controller","replaceRoute") -var r=(0,t.get)(this,"target") -return(r.replaceRoute||r.replaceWith).apply(r,(0,n.prefixRouteNameArg)(this,e))}}) -e.default=i.default})),e("@ember/-internals/routing/lib/location/api",["exports","@ember/debug"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default={create(e){var t=e&&e.implementation,r=this.implementations[t] -return r.create(...arguments)},implementations:{}}})),e("@ember/-internals/routing/lib/location/auto_location",["exports","@ember/-internals/browser-environment","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/runtime","@ember/debug","@ember/-internals/routing/lib/location/util"],(function(e,t,r,i,n,s,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.getHashPath=c,e.getHistoryPath=u -class o extends n.Object{constructor(){super(...arguments),this.implementation="auto"}detect(){var e=this.rootURL,t=function(e){var{location:t,userAgent:r,history:i,documentMode:n,global:s,rootURL:o}=e,l="none",d=!1,h=(0,a.getFullPath)(t) -if((0,a.supportsHistory)(r,i)){var p=u(o,t) -h===p?l="history":"/#"===h.substr(0,2)?(i.replaceState({path:p},"",p),l="history"):(d=!0,(0,a.replacePath)(t,p))}else if((0,a.supportsHashChange)(n,s)){var f=c(o,t) -h===f||"/"===h&&"/#/"===f?l="hash":(d=!0,(0,a.replacePath)(t,f))}if(d)return!1 -return l}({location:this.location,history:this.history,userAgent:this.userAgent,rootURL:e,documentMode:this.documentMode,global:this.global}) -!1===t&&((0,r.set)(this,"cancelRouterSetup",!0),t="none") -var n=(0,i.getOwner)(this).lookup(`location:${t}`);(0,r.set)(n,"rootURL",e),(0,r.set)(this,"concreteImplementation",n)}willDestroy(){var{concreteImplementation:e}=this -e&&e.destroy()}}function l(e){return function(...t){var r,{concreteImplementation:i}=this -return null===(r=i[e])||void 0===r?void 0:r.call(i,...t)}}function u(e,t){var r,i,n=(0,a.getPath)(t),s=(0,a.getHash)(t),o=(0,a.getQuery)(t) -n.indexOf(e) -return"#/"===s.substr(0,2)?(r=(i=s.substr(1).split("#")).shift(),"/"===n.charAt(n.length-1)&&(r=r.substr(1)),n+=r+o,i.length&&(n+=`#${i.join("#")}`)):n+=o+s,n}function c(e,t){var r=e,i=u(e,t).substr(e.length) -return""!==i&&("/"!==i[0]&&(i=`/${i}`),r+=`#${i}`),r}e.default=o,o.reopen({rootURL:"/",initState:l("initState"),getURL:l("getURL"),setURL:l("setURL"),replaceURL:l("replaceURL"),onUpdateURL:l("onUpdateURL"),formatURL:l("formatURL"),location:t.location,history:t.history,global:t.window,userAgent:t.userAgent,cancelRouterSetup:!1})})),e("@ember/-internals/routing/lib/location/hash_location",["exports","@ember/-internals/metal","@ember/-internals/runtime","@ember/runloop","@ember/-internals/routing/lib/location/util"],(function(e,t,r,i,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class s extends r.Object{constructor(){super(...arguments),this.implementation="hash"}init(){(0,t.set)(this,"location",this._location||window.location),this._hashchangeHandler=void 0}getHash(){return(0,n.getHash)(this.location)}getURL(){var e=this.getHash().substr(1),t=e -return"/"!==t[0]&&(t="/",e&&(t+=`#${e}`)),t}setURL(e){this.location.hash=e,(0,t.set)(this,"lastSetURL",e)}replaceURL(e){this.location.replace(`#${e}`),(0,t.set)(this,"lastSetURL",e)}onUpdateURL(e){this._removeEventListener(),this._hashchangeHandler=(0,i.bind)(this,(function(){var r=this.getURL() -this.lastSetURL!==r&&((0,t.set)(this,"lastSetURL",null),e(r))})),window.addEventListener("hashchange",this._hashchangeHandler)}formatURL(e){return`#${e}`}willDestroy(){this._removeEventListener()}_removeEventListener(){this._hashchangeHandler&&window.removeEventListener("hashchange",this._hashchangeHandler)}}e.default=s})),e("@ember/-internals/routing/lib/location/history_location",["exports","@ember/-internals/metal","@ember/-internals/runtime","@ember/-internals/routing/lib/location/util"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var n=!1 -function s(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t -return t=16*Math.random()|0,("x"===e?t:3&t|8).toString(16)}))}class a extends r.Object{constructor(){super(...arguments),this.implementation="history",this.rootURL="/"}getHash(){return(0,i.getHash)(this.location)}init(){this._super(...arguments) -var e=document.querySelector("base"),r="" -null!==e&&e.hasAttribute("href")&&(r=e.getAttribute("href")),(0,t.set)(this,"baseURL",r),(0,t.set)(this,"location",this.location||window.location),this._popstateHandler=void 0}initState(){var e=this.history||window.history;(0,t.set)(this,"history",e) -var{state:r}=e,i=this.formatURL(this.getURL()) -r&&r.path===i?this._previousURL=this.getURL():this.replaceState(i)}getURL(){var{location:e,rootURL:t,baseURL:r}=this,i=e.pathname -t=t.replace(/\/$/,""),r=r.replace(/\/$/,"") -var n=i.replace(new RegExp(`^${r}(?=/|$)`),"").replace(new RegExp(`^${t}(?=/|$)`),"").replace(/\/\//g,"/") -return n+=(e.search||"")+this.getHash()}setURL(e){var{state:t}=this.history -e=this.formatURL(e),t&&t.path===e||this.pushState(e)}replaceURL(e){var{state:t}=this.history -e=this.formatURL(e),t&&t.path===e||this.replaceState(e)}pushState(e){var t={path:e,uuid:s()} -this.history.pushState(t,null,e),this._previousURL=this.getURL()}replaceState(e){var t={path:e,uuid:s()} -this.history.replaceState(t,null,e),this._previousURL=this.getURL()}onUpdateURL(e){this._removeEventListener(),this._popstateHandler=()=>{(n||(n=!0,this.getURL()!==this._previousURL))&&e(this.getURL())},window.addEventListener("popstate",this._popstateHandler)}formatURL(e){var{rootURL:t,baseURL:r}=this -return""!==e?(t=t.replace(/\/$/,""),r=r.replace(/\/$/,"")):"/"===r[0]&&"/"===t[0]&&(r=r.replace(/\/$/,"")),r+t+e}willDestroy(){this._removeEventListener()}_removeEventListener(){this._popstateHandler&&window.removeEventListener("popstate",this._popstateHandler)}}e.default=a})),e("@ember/-internals/routing/lib/location/none_location",["exports","@ember/-internals/metal","@ember/-internals/runtime","@ember/debug"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class n extends r.Object{constructor(){super(...arguments),this.implementation="none"}detect(){var{rootURL:e}=this}getURL(){var{path:e,rootURL:t}=this -return t=t.replace(/\/$/,""),e.replace(new RegExp(`^${t}(?=/|$)`),"")}setURL(e){(0,t.set)(this,"path",e)}onUpdateURL(e){this.updateCallback=e}handleURL(e){(0,t.set)(this,"path",e),this.updateCallback(e)}formatURL(e){var{rootURL:t}=this -return""!==e&&(t=t.replace(/\/$/,"")),t+e}}e.default=n,n.reopen({path:"",rootURL:"/"})})),e("@ember/-internals/routing/lib/location/util",["exports"],(function(e){"use strict" -function t(e){var t=e.pathname -return"/"!==t[0]&&(t=`/${t}`),t}function r(e){return e.search}function i(e){return void 0!==e.hash?e.hash.substr(0):""}function n(e){var t=e.origin -return t||(t=`${e.protocol}//${e.hostname}`,e.port&&(t+=`:${e.port}`)),t}Object.defineProperty(e,"__esModule",{value:!0}),e.getFullPath=function(e){return t(e)+r(e)+i(e)},e.getHash=i,e.getOrigin=n,e.getPath=t,e.getQuery=r,e.replacePath=function(e,t){e.replace(n(e)+t)},e.supportsHashChange=function(e,t){return Boolean(t&&"onhashchange"in t&&(void 0===e||e>7))},e.supportsHistory=function(e,t){if((-1!==e.indexOf("Android 2.")||-1!==e.indexOf("Android 4.0"))&&-1!==e.indexOf("Mobile Safari")&&-1===e.indexOf("Chrome")&&-1===e.indexOf("Windows Phone"))return!1 -return Boolean(t&&"pushState"in t)}})),e("@ember/-internals/routing/lib/services/router",["exports","@ember/-internals/owner","@ember/-internals/runtime","@ember/-internals/utils","@ember/debug","@ember/object/computed","@ember/polyfills","@ember/service","@glimmer/validator","@ember/-internals/routing/lib/utils"],(function(e,t,r,i,n,s,a,o,l,u){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var c=(0,i.symbol)("ROUTER") -function d(e,t){return"/"===t?e:e.substr(t.length,e.length)}class h extends o.default{get _router(){var e=this[c] -return void 0!==e?e:(e=(0,t.getOwner)(this).lookup("router:main"),this[c]=e)}willDestroy(){super.willDestroy(...arguments),this[c]=null}transitionTo(...e){if((0,u.resemblesURL)(e[0]))return this._router._doURLTransition("transitionTo",e[0]) -var{routeName:t,models:r,queryParams:i}=(0,u.extractRouteArgs)(e),n=this._router._doTransition(t,r,i,!0) -return n._keepDefaultQueryParamValues=!0,n}replaceWith(){return this.transitionTo(...arguments).method("replace")}urlFor(e,...t){return this._router.setupRouter(),this._router.generate(e,...t)}isActive(...e){var{routeName:t,models:r,queryParams:i}=(0,u.extractRouteArgs)(e),n=this._router._routerMicrolib -return(0,l.consumeTag)((0,l.tagFor)(this._router,"currentURL")),!!n.isActiveIntent(t,r)&&(!(Object.keys(i).length>0)||(i=(0,a.assign)({},i),this._router._prepareQueryParams(t,r,i,!0),(0,u.shallowEqual)(i,n.state.queryParams)))}recognize(e){this._router.setupRouter() -var t=d(e,this.rootURL) -return this._router._routerMicrolib.recognize(t)}recognizeAndLoad(e){this._router.setupRouter() -var t=d(e,this.rootURL) -return this._router._routerMicrolib.recognizeAndLoad(t)}}e.default=h,h.reopen(r.Evented,{currentRouteName:(0,s.readOnly)("_router.currentRouteName"),currentURL:(0,s.readOnly)("_router.currentURL"),location:(0,s.readOnly)("_router.location"),rootURL:(0,s.readOnly)("_router.rootURL"),currentRoute:(0,s.readOnly)("_router.currentRoute")})})),e("@ember/-internals/routing/lib/services/routing",["exports","@ember/-internals/owner","@ember/-internals/utils","@ember/object/computed","@ember/polyfills","@ember/service"],(function(e,t,r,i,n,s){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var a=(0,r.symbol)("ROUTER") -class o extends s.default{get router(){var e=this[a] -return void 0!==e?e:((e=(0,t.getOwner)(this).lookup("router:main")).setupRouter(),this[a]=e)}hasRoute(e){return this.router.hasRoute(e)}transitionTo(e,t,r,i){var n=this.router._doTransition(e,t,r) -return i&&n.method("replace"),n}normalizeQueryParams(e,t,r){this.router._prepareQueryParams(e,t,r)}_generateURL(e,t,r){var i={} -return r&&((0,n.assign)(i,r),this.normalizeQueryParams(e,t,i)),this.router.generate(e,...t,{queryParams:i})}generateURL(e,t,r){if(this.router._initialTransitionStarted)return this._generateURL(e,t,r) -try{return this._generateURL(e,t,r)}catch(i){return}}isActiveForRoute(e,t,r,i){var n=this.router._routerMicrolib.recognizer.handlersFor(r),s=n[n.length-1].handler,a=function(e,t){for(var r=0,i=0;ia&&(r=s),i.isActiveIntent(r,e,t)}}e.default=o,o.reopen({targetState:(0,i.readOnly)("router.targetState"),currentState:(0,i.readOnly)("router.currentState"),currentRouteName:(0,i.readOnly)("router.currentRouteName"),currentPath:(0,i.readOnly)("router.currentPath")})})),e("@ember/-internals/routing/lib/system/cache",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{constructor(){this.cache=new Map}has(e){return this.cache.has(e)}stash(e,t,r){var i=this.cache.get(e) -void 0===i&&(i=new Map,this.cache.set(e,i)),i.set(t,r)}lookup(e,t,r){if(!this.has(e))return r -var i=this.cache.get(e) -return i.has(t)?i.get(t):r}}})),e("@ember/-internals/routing/lib/system/controller_for",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return e.lookup(`controller:${t}`,r)}})),e("@ember/-internals/routing/lib/system/dsl",["exports","@ember/debug","@ember/polyfills"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=0 -function n(e){return"function"==typeof e}class s{constructor(e=null,t){this.explicitIndex=!1,this.parent=e,this.enableLoadingSubstates=Boolean(t&&t.enableLoadingSubstates),this.matches=[],this.options=t}route(e,t,r){var i,l=null,u=`/_unused_dummy_error_path_route_${e}/:error` -if(n(t)?(i={},l=t):n(r)?(i=t,l=r):i=t||{},this.enableLoadingSubstates&&(o(this,`${e}_loading`,{resetNamespace:i.resetNamespace}),o(this,`${e}_error`,{resetNamespace:i.resetNamespace,path:u})),l){var c=a(this,e,i.resetNamespace),d=new s(c,this.options) -o(d,"loading"),o(d,"error",{path:u}),l.call(d),o(this,e,i,d.generate())}else o(this,e,i)}push(e,t,i,n){var s=t.split(".") -if(this.options.engineInfo){var a=t.slice(this.options.engineInfo.fullName.length+1),o=(0,r.assign)({localFullName:a},this.options.engineInfo) -n&&(o.serializeMethod=n),this.options.addRouteForEngine(t,o)}else if(n)throw new Error(`Defining a route serializer on route '${t}' outside an Engine is not allowed.`) -""!==e&&"/"!==e&&"index"!==s[s.length-1]||(this.explicitIndex=!0),this.matches.push(e,t,i)}generate(){var e=this.matches -return this.explicitIndex||this.route("index",{path:"/"}),t=>{for(var r=0;r`(generated ${t} controller)`}) -var i=`controller:${t}` -return e.register(i,r),e.factoryFor(i)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){i(e,t) -var r=`controller:${t}`,n=e.lookup(r) -0 -return n},e.generateControllerFactory=i})),e("@ember/-internals/routing/lib/system/query_params",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{constructor(e=null){this.isQueryParams=!0,this.values=e}}})),e("@ember/-internals/routing/lib/system/route-info",[],(function(){})),e("@ember/-internals/routing/lib/system/route",["exports","@ember/polyfills","@ember/-internals/container","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/runtime","@ember/-internals/utils","@ember/debug","@ember/deprecated-features","@ember/object/compat","@ember/runloop","router_js","@ember/-internals/routing/lib/utils","@ember/-internals/routing/lib/system/generate_controller"],(function(e,t,r,i,n,s,a,o,l,u,c,d,h,p){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ROUTE_CONNECTIONS=e.ROUTER_EVENT_DEPRECATIONS=void 0,e.defaultSerialize=b,e.getFullQueryParams=_,e.hasDefaultSerialize=function(e){return e.serialize===b} -var f,m=e.ROUTE_CONNECTIONS=new WeakMap,g=(0,a.symbol)("render") -function b(e,t){if(!(t.length<1)&&e){var r={} -if(1===t.length){var[n]=t -n in e?r[n]=(0,i.get)(e,n):/_id$/.test(n)?r[n]=(0,i.get)(e,"id"):(0,a.isProxy)(e)&&(r[n]=(0,i.get)(e,n))}else r=(0,i.getProperties)(e,t) -return r}}class v extends s.Object{constructor(e){if(super(...arguments),this.context={},e){var t=e.lookup("router:main"),i=e.lookup(r.privatize`-bucket-cache:main`) -this._router=t,this._bucketCache=i,this._topLevelViewTemplate=e.lookup("template:-outlet"),this._environment=e.lookup("-environment:main")}}_setRouteName(e){this.routeName=e,this.fullRouteName=O((0,n.getOwner)(this),e)}_stashNames(e,t){if(!this._names){var r=this._names=e._names -r.length||(r=(e=t)&&e._names||[]) -for(var n=(0,i.get)(this,"_qp.qps"),s=new Array(r.length),a=0;a(e[t]=l[t],e)),o)}serializeQueryParamKey(e){return e}serializeQueryParam(e,t,r){return this._router._serializeQueryParam(e,r)}deserializeQueryParam(e,t,r){return this._router._deserializeQueryParam(e,r)}_optionsForQueryParam(e){return(0,i.get)(this,`queryParams.${e.urlKey}`)||(0,i.get)(this,`queryParams.${e.prop}`)||{}}resetController(e,t,r){return this}exit(e){this.deactivate(e),this.trigger("deactivate",e),this.teardownViews()}_internalReset(e,t){var r=this.controller -r._qpDelegate=(0,i.get)(this,"_qp.states.inactive"),this.resetController(r,e,t)}enter(e){m.set(this,[]),this.activate(e),this.trigger("activate",e)}deactivate(e){}activate(e){}transitionTo(...e){return(0,h.deprecateTransitionMethods)("route","transitionTo"),this._router.transitionTo(...(0,h.prefixRouteNameArg)(this,e))}intermediateTransitionTo(...e){var[t,...r]=(0,h.prefixRouteNameArg)(this,e) -this._router.intermediateTransitionTo(t,...r)}refresh(){return this._router._routerMicrolib.refresh(this)}replaceWith(...e){return(0,h.deprecateTransitionMethods)("route","replaceWith"),this._router.replaceWith(...(0,h.prefixRouteNameArg)(this,e))}setup(e,t){var r,n=this.controllerName||this.routeName,s=this.controllerFor(n,!0) -if(r=s||this.generateController(n),!this.controller){var o=(0,i.get)(this,"_qp"),l=void 0!==o?(0,i.get)(o,"propertyNames"):[];(function(e,t){t.forEach((t=>{if(void 0===(0,i.descriptorForProperty)(e,t)){var r=(0,a.lookupDescriptor)(e,t) -null===r||"function"!=typeof r.get&&"function"!=typeof r.set||(0,i.defineProperty)(e,t,(0,u.dependentKeyCompat)({get:r.get,set:r.set}))}(0,i.addObserver)(e,`${t}.[]`,e,e._qpChanged,!1)}))})(r,l),this.controller=r}var c=(0,i.get)(this,"_qp"),p=c.states -if(r._qpDelegate=p.allowOverrides,t){(0,h.stashParamNames)(this._router,t[d.STATE_SYMBOL].routeInfos) -var f=this._bucketCache,m=t[d.PARAMS_SYMBOL] -c.propertyNames.forEach((e=>{var t=c.map[e] -t.values=m -var n=(0,h.calculateCacheKey)(t.route.fullRouteName,t.parts,t.values),s=f.lookup(n,e,t.undecoratedDefaultValue);(0,i.set)(r,e,s)})) -var g=E(this,t[d.STATE_SYMBOL]);(0,i.setProperties)(r,g)}this.setupController(r,e,t),this._environment.options.shouldRender&&this.renderTemplate(r,e),(0,i.flushAsyncObservers)(!1)}_qpChanged(e,t,r){if(r){var i=this._bucketCache,n=(0,h.calculateCacheKey)(r.route.fullRouteName,r.parts,r.values) -i.stash(n,e,t)}}beforeModel(){}afterModel(){}redirect(){}contextDidChange(){this.currentModel=this.context}model(e,r){var n,s,a,o=(0,i.get)(this,"_qp.map") -for(var l in e)if(!("queryParams"===l||o&&l in o)){var u=l.match(/^(.*)_id$/) -null!==u&&(n=u[1],a=e[l]),s=!0}if(!n){if(s)return(0,t.assign)({},e) -if(r.resolveIndex<1)return -return r[d.STATE_SYMBOL].routeInfos[r.resolveIndex-1].context}return this.findModel(n,a)}deserialize(e,t){return this.model(this._paramsFor(this.routeName,e),t)}findModel(...e){return(0,i.get)(this,"store").find(...e)}setupController(e,t,r){e&&void 0!==t&&(0,i.set)(e,"model",t)}controllerFor(e,t){var r=(0,n.getOwner)(this),i=r.lookup(`route:${e}`) -i&&i.controllerName&&(e=i.controllerName) -var s=r.lookup(`controller:${e}`) -return s}generateController(e){var t=(0,n.getOwner)(this) -return(0,p.default)(t,e)}modelFor(e){var t,r=(0,n.getOwner)(this),i=this._router&&this._router._routerMicrolib?this._router._routerMicrolib.activeTransition:void 0 -t=r.routable&&void 0!==i?O(r,e):e -var s=r.lookup(`route:${t}`) -if(null!=i){var a=s&&s.routeName||t -if(Object.prototype.hasOwnProperty.call(i.resolvedModels,a))return i.resolvedModels[a]}return s&&s.currentModel}[g](e,t){var r=function(e,t,r){var i,s=!t&&!r -s||("object"!=typeof t||r?i=t:(i=e.templateName||e.routeName,r=t)) -var a,o,l,u,c,d=(0,n.getOwner)(e),h=void 0 -r&&(l=r.into&&r.into.replace(/\//g,"."),u=r.outlet,h=r.controller,c=r.model) -u=u||"main",s?(a=e.routeName,o=e.templateName||a):o=a=i.replace(/\//g,".") -void 0===h&&(h=s?e.controllerName||d.lookup(`controller:${a}`):d.lookup(`controller:${a}`)||e.controllerName||e.routeName) -if("string"==typeof h){var p=h -h=d.lookup(`controller:${p}`)}void 0===c?c=e.currentModel:h.set("model",c) -var f,m=d.lookup(`template:${o}`) -l&&(f=y(e))&&l===f.routeName&&(l=void 0) -var g={owner:d,into:l,outlet:u,name:a,controller:h,model:c,template:void 0!==m?m(d):e._topLevelViewTemplate(d)} -return g}(this,e,t) -m.get(this).push(r),(0,c.once)(this._router,"_setOutlets")}renderTemplate(e,t){this[g]()}render(e,t){this[g](e,t)}disconnectOutlet(e){var t,r -e&&("string"==typeof e?t=e:(t=e.outlet,r=e.parentView?e.parentView.replace(/\//g,"."):void 0)),t=t||"main",this._disconnectOutlet(t,r) -for(var i=this._router._routerMicrolib.currentRouteInfos,n=0;n0&&(m.set(this,[]),(0,c.once)(this._router,"_setOutlets"))}buildRouteInfoMetadata(){}}function y(e){var t=function(e,t,r=0){if(!t)return -for(var i=0;ie.route)) -return(0,t.assign)(i,r.queryParams),e._deserializeQueryParams(r.routeInfos,i),n&&(r.fullQueryParams=i),i}function E(e,t){t.queryParamsFor=t.queryParamsFor||{} -var r=e.fullRouteName -if(t.queryParamsFor[r])return t.queryParamsFor[r] -for(var n=_(e._router,t),s=t.queryParamsFor[r]={},a=(0,i.get)(e,"_qp.qps"),o=0;o0 -if(o){var c=(0,i.get)(o,"queryParams")||{} -e=function(e,r){var i={},n={defaultValue:!0,type:!0,scope:!0,as:!0} -for(var s in e)if(Object.prototype.hasOwnProperty.call(e,s)){var a={};(0,t.assign)(a,e[s],r[s]),i[s]=a,n[s]=!0}for(var o in r)if(Object.prototype.hasOwnProperty.call(r,o)&&!n[o]){var l={};(0,t.assign)(l,r[o],e[o]),i[o]=l}return i}((0,h.normalizeControllerQueryParams)(c),l)}else u&&(o=(0,p.default)(a,r),e=l) -var d=[],f={},m=[] -for(var g in e)if(Object.prototype.hasOwnProperty.call(e,g)&&"unknownProperty"!==g&&"_super"!==g){var b=e[g],v=b.scope||"model",y=void 0 -"controller"===v&&(y=[]) -var _=b.as||this.serializeQueryParamKey(g),E=(0,i.get)(o,g) -E=R(E) -var O=b.type||(0,s.typeOf)(E),w=this.serializeQueryParam(E,_,O),T=`${r}:${g}`,P={undecoratedDefaultValue:(0,i.get)(o,g),defaultValue:E,serializedDefaultValue:w,serializedValue:w,type:O,urlKey:_,prop:g,scopedPropertyName:T,controllerName:r,route:this,parts:y,values:null,scope:v} -f[g]=f[_]=f[T]=P,d.push(P),m.push(g)}return{qps:d,map:f,propertyNames:m,states:{inactive:(e,t)=>{var r=f[e] -this._qpChanged(e,t,r)},active:(e,t)=>{var r=f[e] -return this._qpChanged(e,t,r),this._activeQPChanged(r,t)},allowOverrides:(e,t)=>{var r=f[e] -return this._qpChanged(e,t,r),this._updatingQPChanged(r)}}}})),send(...e){if(this._router&&this._router._routerMicrolib||!(0,o.isTesting)())this._router.send(...e) -else{var t=e.shift(),r=this.actions[t] -if(r)return r.apply(this,e)}},actions:{queryParamsDidChange(e,t,r){for(var n=(0,i.get)(this,"_qp").map,s=Object.keys(e).concat(Object.keys(r)),a=0;a{var t=(0,i.get)(e.route,"_qp") -e.route.controller._qpDelegate=(0,i.get)(t,"states.active")})),a._qpUpdates.clear()}}}}),l.ROUTER_EVENTS&&(e.ROUTER_EVENT_DEPRECATIONS=f={on(e){this._super(...arguments)}},v.reopen(f,{_paramsFor(e,t){return void 0!==this._router._routerMicrolib.activeTransition?this.paramsFor(e):t}})) -e.default=v})),e("@ember/-internals/routing/lib/system/router",["exports","@ember/-internals/container","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/runtime","@ember/debug","@ember/deprecated-features","@ember/error","@ember/polyfills","@ember/runloop","@ember/-internals/routing/lib/location/api","@ember/-internals/routing/lib/utils","@ember/-internals/routing/lib/system/dsl","@ember/-internals/routing/lib/system/route","@ember/-internals/routing/lib/system/router_state","router_js"],(function(e,t,r,i,n,s,a,o,l,u,c,d,h,p,f,m){"use strict" -function g(e){S(this),this._cancelSlowTransitionTimer(),this.notifyPropertyChange("url"),this.set("currentState",this.targetState),(0,u.once)(this,this.trigger,"didTransition")}function b(e,t,r){(0,u.once)(this,this.trigger,"willTransition",r)}function v(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.triggerEvent=P -var{slice:y}=Array.prototype -class _ extends n.Object{constructor(e){super(...arguments),this._didSetupRouter=!1,this._initialTransitionStarted=!1,this.currentURL=null,this.currentRouteName=null,this.currentPath=null,this.currentRoute=null,this._qpCache=Object.create(null),this._qpUpdates=new Set,this._queuedQPChanges={},this._toplevelView=null,this._handledErrors=new Set,this._engineInstances=Object.create(null),this._engineInfoByRoute=Object.create(null),this.currentState=null,this.targetState=null,this._resetQueuedQueryParameterChanges(),this.namespace=e.lookup("application:main") -var r=e.lookup(t.privatize`-bucket-cache:main`) -this._bucketCache=r -var i=e.lookup("service:router") -this._routerService=i}_initRouterJs(){var e=(0,r.get)(this,"location"),t=this,n=(0,i.getOwner)(this),s=Object.create(null) -class o extends m.default{getRoute(e){var r=e,i=n,a=t._engineInfoByRoute[r] -a&&(i=t._getEngineInstance(a),r=a.localFullName) -var o=`route:${r}`,l=i.lookup(o) -if(s[e])return l -if(s[e]=!0,!l){var u=i.factoryFor("route:basic").class -i.register(o,u.extend()),l=i.lookup(o)}if(l._setRouteName(r),a&&!(0,p.hasDefaultSerialize)(l))throw new Error("Defining a custom serialize method on an Engine route is not supported.") -return l}getSerializer(e){var r=t._engineInfoByRoute[e] -if(r)return r.serializeMethod||p.defaultSerialize}updateURL(i){(0,u.once)((()=>{e.setURL(i),(0,r.set)(t,"currentURL",i)}))}didTransition(e){a.ROUTER_EVENTS&&t.didTransition,t.didTransition(e)}willTransition(e,r,i){a.ROUTER_EVENTS&&t.willTransition,t.willTransition(e,r,i)}triggerEvent(e,r,i,n){return P.bind(t)(e,r,i,n)}routeWillChange(e){t.trigger("routeWillChange",e),t._routerService.trigger("routeWillChange",e),e.isIntermediate&&t.set("currentRoute",e.to)}routeDidChange(e){t.set("currentRoute",e.to),(0,u.once)((()=>{t.trigger("routeDidChange",e),t._routerService.trigger("routeDidChange",e)}))}transitionDidError(e,r){return e.wasAborted||r.isAborted?(0,m.logAbort)(r):(r.trigger(!1,"error",e.error,r,e.route),t._isErrorHandled(e.error)?(r.rollback(),this.routeDidChange(r),e.error):(r.abort(),e.error))}replaceURL(i){if(e.replaceURL){(0,u.once)((()=>{e.replaceURL(i),(0,r.set)(t,"currentURL",i)}))}else this.updateURL(i)}}var l=this._routerMicrolib=new o,c=this.constructor.dslCallbacks||[v],d=this._buildDSL() -d.route("application",{path:"/",resetNamespace:!0,overrideNameAssertion:!0},(function(){for(var e=0;er.factoryFor(`route-map:${e}`),addRouteForEngine(e,r){t._engineInfoByRoute[e]||(t._engineInfoByRoute[e]=r)}} -return new h.default(null,n)}_resetQueuedQueryParameterChanges(){this._queuedQPChanges={}}_hasModuleBasedResolver(){var e=(0,i.getOwner)(this),t=(0,r.get)(e,"application.__registry__.resolver.moduleBasedResolver") -return Boolean(t)}startRouting(){if(this.setupRouter()){var e=(0,r.get)(this,"initialURL") -void 0===e&&(e=(0,r.get)(this,"location").getURL()) -var t=this.handleURL(e) -if(t&&t.error)throw t.error}}setupRouter(){if(this._didSetupRouter)return!1 -this._didSetupRouter=!0,this._setupLocation() -var e=(0,r.get)(this,"location") -return!(0,r.get)(e,"cancelRouterSetup")&&(this._initRouterJs(),e.onUpdateURL((e=>{this.handleURL(e)})),!0)}_setOutlets(){if(!this.isDestroying&&!this.isDestroyed){var e=this._routerMicrolib.currentRouteInfos -if(e){for(var t,r=null,n=0;n{if(i)delete t[e],t[i.urlKey]=i.route.serializeQueryParam(r,i.urlKey,i.type) -else{if(void 0===r)return -t[e]=this._serializeQueryParam(r,(0,n.typeOf)(r))}}))}_serializeQueryParam(e,t){return null==e?e:"array"===t?JSON.stringify(e):`${e}`}_deserializeQueryParams(e,t){k(this,e,t,((e,r,i)=>{i&&(delete t[e],t[i.prop]=i.route.deserializeQueryParam(r,i.urlKey,i.type))}))}_deserializeQueryParam(e,t){return null==e?e:"boolean"===t?"true"===e:"number"===t?Number(e).valueOf():"array"===t?(0,n.A)(JSON.parse(e)):e}_pruneDefaultQueryParamValues(e,t){var r=this._queryParamsFor(e) -for(var i in t){var n=r.map[i] -n&&n.serializedDefaultValue===t[i]&&delete t[i]}}_doTransition(e,t,r,i){var n=e||(0,d.getActiveTargetName)(this._routerMicrolib) -this._initialTransitionStarted=!0 -var s={} -this._processActiveTransitionQueryParams(n,t,s,r),(0,l.assign)(s,r),this._prepareQueryParams(n,t,s,Boolean(i)) -var a=this._routerMicrolib.transitionTo(n,...t,{queryParams:s}) -return C(a,this),a}_processActiveTransitionQueryParams(e,t,r,i){if(this._routerMicrolib.activeTransition){var n={},s=this._qpUpdates,a=(0,p.getFullQueryParams)(this,this._routerMicrolib.activeTransition[m.STATE_SYMBOL]) -for(var o in a)s.has(o)||(n[o]=a[o]) -this._fullyScopeQueryParams(e,t,i),this._fullyScopeQueryParams(e,t,n),(0,l.assign)(r,n)}}_prepareQueryParams(e,t,r,i){var n=A(this,e,t) -this._hydrateUnsuppliedQueryParams(n,r,Boolean(i)),this._serializeQueryParams(n.routeInfos,r),i||this._pruneDefaultQueryParamValues(n.routeInfos,r)}_getQPMeta(e){var t=e.route -return t&&(0,r.get)(t,"_qp")}_queryParamsFor(e){var t=e.length,r=e[t-1].name,i=this._qpCache[r] -if(void 0!==i)return i -for(var n,s,a=!0,o={},u=[],c=0;c=0;--r){var i=e[r],n=i.route -if(void 0!==n&&!0!==t(n,i))return}}var R={willResolveModel(e,t,r){this._scheduleLoadingEvent(t,r)},error(e,t,r){var i=this,n=e[e.length-1] -E(e,((e,r)=>{if(r!==n){var s=w(e,"error") -if(s)return i._markErrorAsHandled(t),i.intermediateTransitionTo(s,t),!1}var a=O(e,"error") -return!a||(i._markErrorAsHandled(t),i.intermediateTransitionTo(a,t),!1)})),function(e,t){var r,i=[] -r=e&&"object"==typeof e&&"object"==typeof e.errorThrown?e.errorThrown:e -t&&i.push(t) -r&&(r.message&&i.push(r.message),r.stack&&i.push(r.stack),"string"==typeof r&&i.push(r)) -console.error(...i)}(t,`Error while processing route: ${r.targetName}`)},loading(e,t){var r=this,i=e[e.length-1] -E(e,((e,n)=>{if(n!==i){var s=w(e,"loading") -if(s)return r.intermediateTransitionTo(s),!1}var a=O(e,"loading") -return a?(r.intermediateTransitionTo(a),!1):t.pivotHandler!==e}))}} -function O(e,t){var r=(0,i.getOwner)(e),{routeName:n,fullRouteName:s,_router:a}=e,o=`${s}_${t}` -return T(r,a,`${n}_${t}`,o)?o:""}function w(e,t){var r=(0,i.getOwner)(e),{routeName:n,fullRouteName:s,_router:a}=e,o="application"===s?t:`${s}.${t}` -return T(r,a,"application"===n?t:`${n}.${t}`,o)?o:""}function T(e,t,r,i){var n=t.hasRoute(i),s=e.hasRegistration(`template:${r}`)||e.hasRegistration(`route:${r}`) -return n&&s}function P(e,t,r,i){if(!e){if(t)return -throw new o.default(`Can't trigger action '${r}' because your app hasn't finished transitioning into its first route. To trigger an action on destination routes during a transition, you can call \`.send()\` on the \`Transition\` object passed to the \`model/beforeModel/afterModel\` hooks.`)}for(var n,s,a=!1,l=e.length-1;l>=0;l--)if(s=(n=e[l].route)&&n.actions&&n.actions[r]){if(!0!==s.apply(n,i))return void("error"===r&&n._router._markErrorAsHandled(i[0])) -a=!0}var u=R[r] -if(u)u.apply(this,[e,...i]) -else if(!a&&!t)throw new o.default(`Nothing handled the action '${r}'. If you did handle the action, this error can be caused by returning true from an action handler in a controller, causing the action to bubble.`)}function A(e,t,r){for(var i=e._routerMicrolib.applyIntent(t,r),{routeInfos:n,params:s}=i,a=0;a(0,r.get)(e,"currentPath")}),(0,r.notifyPropertyChange)(l,"currentPath"),"currentRouteName"in l||Object.defineProperty(l,"currentRouteName",{get:()=>(0,r.get)(e,"currentRouteName")}),(0,r.notifyPropertyChange)(l,"currentRouteName"))}}function C(e,t){var r=new f.default(t,t._routerMicrolib,e[m.STATE_SYMBOL]) -t.currentState||t.set("currentState",r),t.set("targetState",r),e.promise=e.catch((e=>{if(!t._isErrorHandled(e))throw e -t._clearHandledError(e)}),"Transition Error")}function k(e,t,r,i){var n=e._queryParamsFor(t) -for(var s in r){if(Object.prototype.hasOwnProperty.call(r,s))i(s,r[s],n.map[s])}}function M(e,t){if(e)for(var r=[e];r.length>0;){var i=r.shift() -if(i.render.name===t)return i -var n=i.outlets -for(var s in n)r.push(n[s])}}function j(e,t,i){var n,s={render:i,outlets:Object.create(null),wasUsed:!1} -return(n=i.into?M(e,i.into):t)?(0,r.set)(n.outlets,i.outlet,s):e=s,{liveRoutes:e,ownState:s}}function x(e,t,{routeName:r}){var i=M(e,r) -return i||(t.outlets.main={render:{name:r,outlet:"main"},outlets:{}},t)}_.reopenClass({map(e){return this.dslCallbacks||(this.dslCallbacks=[],this.reopenClass({dslCallbacks:this.dslCallbacks})),this.dslCallbacks.push(e),this},_routePath(e){var t,r,i=[] -function n(e,t){for(var r=0;r0){var a=(0,t.assign)({},n) -return this.emberRouter._prepareQueryParams(e,i,a),(0,r.shallowEqual)(a,s.queryParams)}return!0}}})),e("@ember/-internals/routing/lib/system/transition",[],(function(){})),e("@ember/-internals/routing/lib/utils",["exports","@ember/-internals/metal","@ember/-internals/owner","@ember/debug","@ember/error","@ember/polyfills","router_js"],(function(e,t,r,i,n,s,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.calculateCacheKey=function(e,r=[],i){for(var n="",s=0;s0)-(r<0)}})),e("@ember/-internals/runtime/lib/copy",["exports","@ember/debug","@ember/-internals/runtime/lib/system/object","@ember/-internals/runtime/lib/mixins/copyable"],(function(e,t,r,i){"use strict" -function n(e,t,r,s){if("object"!=typeof e||null===e)return e -var a,o -if(t&&(o=r.indexOf(e))>=0)return s[o] -if(t&&r.push(e),Array.isArray(e)){if(a=e.slice(),t)for(s.push(a),o=a.length;--o>=0;)a[o]=n(a[o],t,r,s)}else if(i.default.detect(e))a=e.copy(t,r,s),t&&s.push(a) -else if(e instanceof Date)a=new Date(e.getTime()),t&&s.push(a) -else{var l -for(l in a={},t&&s.push(a),e)Object.prototype.hasOwnProperty.call(e,l)&&"__"!==l.substring(0,2)&&(a[l]=t?n(e[l],t,r,s):e[l])}return a}Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){if("object"!=typeof e||null===e)return e -if(!Array.isArray(e)&&i.default.detect(e))return e.copy(t) -return n(e,t,t?[]:null,t?[]:null)}})),e("@ember/-internals/runtime/lib/ext/function",["@ember/-internals/environment","@ember/-internals/metal","@ember/debug","@ember/deprecated-features"],(function(e,t,r,i){"use strict" -i.FUNCTION_PROTOTYPE_EXTENSIONS&&e.ENV.EXTEND_PROTOTYPES.Function&&Object.defineProperties(Function.prototype,{property:{configurable:!0,enumerable:!1,writable:!0,value:function(){return(0,t.computed)(...arguments,this)}},observes:{configurable:!0,enumerable:!1,writable:!0,value:function(){return(0,t.observer)(...arguments,this)}},on:{configurable:!0,enumerable:!1,writable:!0,value:function(){return(0,t.on)(...arguments,this)}}})})),e("@ember/-internals/runtime/lib/ext/rsvp",["exports","rsvp","@ember/runloop","@ember/-internals/error-handling","@ember/debug"],(function(e,t,r,i,n){"use strict" -function s(e){var t=function(e){if(!e)return -if(e.errorThrown)return function(e){var t=e.errorThrown -"string"==typeof t&&(t=new Error(t)) -return Object.defineProperty(t,"__reason_with_error_thrown__",{value:e,enumerable:!1}),t}(e) -if("UnrecognizedURLError"===e.name)return -if("TransitionAborted"===e.name)return -return e}(e) -if(t){var r=(0,i.getDispatchOverride)() -if(!r)throw t -r(t)}}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.onerrorDefault=s,t.configure("async",((e,t)=>{r._backburner.schedule("actions",null,e,t)})),t.configure("after",(e=>{r._backburner.schedule(r._rsvpErrorQueue,null,e)})),t.on("error",s) -e.default=t})),e("@ember/-internals/runtime/lib/is-equal",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){if(e&&"function"==typeof e.isEqual)return e.isEqual(t) -if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime() -return e===t}})),e("@ember/-internals/runtime/lib/mixins/-proxy",["exports","@ember/-internals/meta","@ember/-internals/metal","@ember/-internals/utils","@ember/debug","@glimmer/manager","@glimmer/validator"],(function(e,t,r,i,n,s,a){"use strict" -function o(e){var t=(0,r.get)(e,"content") -return(0,a.updateTag)((0,r.tagForObject)(e),(0,r.tagForObject)(t)),t}function l(e,t,n){var s=(0,a.tagMetaFor)(e),l=(0,a.tagFor)(e,t,s) -if(t in e)return l -var u=[l,(0,a.tagFor)(e,"content",s)],c=o(e) -return(0,i.isObject)(c)&&u.push((0,r.tagForProperty)(c,t,n)),(0,a.combine)(u)}Object.defineProperty(e,"__esModule",{value:!0}),e.contentFor=o,e.default=void 0 -e.default=r.Mixin.create({content:null,init(){this._super(...arguments),(0,i.setProxy)(this),(0,r.tagForObject)(this),(0,s.setCustomTagFor)(this,l)},willDestroy(){this.set("content",null),this._super(...arguments)},isTruthy:(0,r.computed)("content",(function(){return Boolean((0,r.get)(this,"content"))})),unknownProperty(e){var t=o(this) -if(t)return(0,r.get)(t,e)},setUnknownProperty(e,i){var n=(0,t.meta)(this) -if(n.isInitializing()||n.isPrototypeMeta(this))return(0,r.defineProperty)(this,e,null,i),i -var s=o(this) -return(0,r.set)(s,e,i)}})})),e("@ember/-internals/runtime/lib/mixins/action_handler",["exports","@ember/-internals/metal","@ember/debug"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=t.Mixin.create({mergedProperties:["actions"],send(e,...r){if(this.actions&&this.actions[e]&&!(!0===this.actions[e].apply(this,r)))return -var i=(0,t.get)(this,"target") -i&&i.send(...arguments)}}) -e.default=i})),e("@ember/-internals/runtime/lib/mixins/array",["exports","@ember/-internals/metal","@ember/-internals/utils","@ember/debug","@ember/-internals/runtime/lib/mixins/enumerable","@ember/-internals/runtime/lib/compare","@ember/-internals/environment","@ember/-internals/runtime/lib/mixins/observable","@ember/-internals/runtime/lib/mixins/mutable_enumerable","@ember/-internals/runtime/lib/type-of"],(function(e,t,r,i,n,s,a,o,l,u){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.NativeArray=e.MutableArray=e.A=void 0,e.isArray=E,e.removeAt=y,e.uniqBy=h -var c=Object.freeze([]),d=e=>e -function h(e,r=d){var i=w(),n=new Set,s="function"==typeof r?r:e=>(0,t.get)(e,r) -return e.forEach((e=>{var t=s(e) -n.has(t)||(n.add(t),i.push(e))})),i}function p(e,r){return 2===arguments.length?i=>r===(0,t.get)(i,e):r=>Boolean((0,t.get)(r,e))}function f(e,r,i){for(var n=e.length,s=i;s!i(e,t,r)),0)}function v(e,t,r=0,i){var n=e.length -return r<0&&(r+=n),f(e,i&&t!=t?e=>e!=e:e=>e===t,r)}function y(e,r,i=1){return(0,t.replace)(e,r,i,c),e}function _(e,r,i){return(0,t.replace)(e,r,0,[i]),i}function E(e){var t=e -if(!t||t.setInterval)return!1 -if(Array.isArray(t)||T.detect(t))return!0 -var r=(0,u.typeOf)(t) -if("array"===r)return!0 -var i=t.length -return"number"==typeof i&&i==i&&"object"===r}function R(){var e=(0,t.computed)(...arguments) -return e.enumerable=!1,e}function O(e){return this.map((r=>(0,t.get)(r,e)))}var w,T=t.Mixin.create(n.default,{init(){this._super(...arguments),(0,r.setEmberArray)(this)},objectsAt(e){return e.map((e=>(0,t.objectAt)(this,e)))},"[]":R({get(){return this},set(e,t){return this.replace(0,this.length,t),this}}),firstObject:R((function(){return(0,t.objectAt)(this,0)})).readOnly(),lastObject:R((function(){return(0,t.objectAt)(this,this.length-1)})).readOnly(),slice(e=0,r){var i=w(),n=this.length -for(e<0&&(e=n+e),void 0===r||r>n?r=n:r<0&&(r=n+r);e=i)&&(r=i-1),r<0&&(r+=i) -for(var n=r;n>=0;n--)if((0,t.objectAt)(this,n)===e)return n -return-1},addArrayObserver(e,r){return(0,t.addArrayObserver)(this,e,r)},removeArrayObserver(e,r){return(0,t.removeArrayObserver)(this,e,r)},hasArrayObservers:(0,t.nativeDescDecorator)({configurable:!0,enumerable:!1,get(){return(0,t.hasListeners)(this,"@array:change")||(0,t.hasListeners)(this,"@array:before")}}),arrayContentWillChange(e,r,i){return(0,t.arrayContentWillChange)(this,e,r,i)},arrayContentDidChange(e,r,i){return(0,t.arrayContentDidChange)(this,e,r,i)},forEach(e,t=null){for(var r=this.length,i=0;i(0,t.set)(i,e,r)))},map(e,t=null){var r=w() -return this.forEach(((i,n,s)=>r[n]=e.call(t,i,n,s))),r},mapBy:O,filter(e,t=null){var r=w() -return this.forEach(((i,n,s)=>{e.call(t,i,n,s)&&r.push(i)})),r},reject(e,t=null){return this.filter((function(){return!e.apply(t,arguments)}))},filterBy(){return this.filter(p(...arguments))},rejectBy(){return this.reject(p(...arguments))},find(e,t=null){return m(this,e,t)},findBy(){return m(this,p(...arguments))},every(e,t=null){return b(this,e,t)},isEvery(){return b(this,p(...arguments))},any(e,t=null){return g(this,e,t)},isAny(){return g(this,p(...arguments))},reduce(e,t){var r=t -return this.forEach((function(t,i){r=e(r,t,i,this)}),this),r},invoke(e,...t){var r=w() -return this.forEach((i=>r.push(i[e]?.(...t)))),r},toArray(){return this.map((e=>e))},compact(){return this.filter((e=>null!=e))},includes(e,t){return-1!==v(this,e,t,!0)},sortBy(){var e=arguments -return this.toArray().sort(((r,i)=>{for(var n=0;nt!==e:e=>e==e -return this.filter(t)}}),P=e.MutableArray=t.Mixin.create(T,l.default,{clear(){var e=this.length -return 0===e||this.replace(0,e,c),this},insertAt(e,t){return _(this,e,t),this},removeAt(e,t){return y(this,e,t)},pushObject(e){return _(this,this.length,e)},pushObjects(e){return this.replace(this.length,0,e),this},popObject(){var e=this.length -if(0===e)return null -var r=(0,t.objectAt)(this,e-1) -return this.removeAt(e-1,1),r},shiftObject(){if(0===this.length)return null -var e=(0,t.objectAt)(this,0) -return this.removeAt(0),e},unshiftObject(e){return _(this,0,e)},unshiftObjects(e){return this.replace(0,0,e),this},reverseObjects(){var e=this.length -if(0===e)return this -var t=this.toArray().reverse() -return this.replace(0,e,t),this},setObjects(e){if(0===e.length)return this.clear() -var t=this.length -return this.replace(0,t,e),this},removeObject(e){for(var r=this.length||0;--r>=0;){(0,t.objectAt)(this,r)===e&&this.removeAt(r)}return this},removeObjects(e){(0,t.beginPropertyChanges)() -for(var r=e.length-1;r>=0;r--)this.removeObject(e[r]) -return(0,t.endPropertyChanges)(),this},addObject(e){return this.includes(e)||this.pushObject(e),this},addObjects(e){return(0,t.beginPropertyChanges)(),e.forEach((e=>this.addObject(e))),(0,t.endPropertyChanges)(),this}}),A=e.NativeArray=t.Mixin.create(P,o.default,{objectAt(e){return this[e]},replace(e,r,i=c){return(0,t.replaceInNativeArray)(this,e,r,i),this}}),S=["length"] -A.keys().forEach((e=>{Array.prototype[e]&&S.push(e)})),e.NativeArray=A=A.without(...S),a.ENV.EXTEND_PROTOTYPES.Array?(A.apply(Array.prototype,!0),e.A=w=function(e){return e||[]}):e.A=w=function(e){return e||(e=[]),T.detect(e)?e:A.apply(e)} -e.default=T})),e("@ember/-internals/runtime/lib/mixins/comparable",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Mixin.create({compare:null})})),e("@ember/-internals/runtime/lib/mixins/container_proxy",["exports","@ember/runloop","@ember/-internals/metal"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i={__container__:null,ownerInjection(){return this.__container__.ownerInjection()},lookup(e,t){return this.__container__.lookup(e,t)},destroy(){var e=this.__container__ -e&&(0,t.join)((()=>{e.destroy(),(0,t.schedule)("destroy",e,"finalizeDestroy")})),this._super()},factoryFor(e,t={}){return this.__container__.factoryFor(e,t)}} -e.default=r.Mixin.create(i)})),e("@ember/-internals/runtime/lib/mixins/copyable",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Mixin.create({copy:null})})),e("@ember/-internals/runtime/lib/mixins/enumerable",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Mixin.create()})),e("@ember/-internals/runtime/lib/mixins/evented",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Mixin.create({on(e,r,i){return(0,t.addListener)(this,e,r,i),this},one(e,r,i){return(0,t.addListener)(this,e,r,i,!0),this},trigger(e,...r){(0,t.sendEvent)(this,e,r)},off(e,r,i){return(0,t.removeListener)(this,e,r,i),this},has(e){return(0,t.hasListeners)(this,e)}})})),e("@ember/-internals/runtime/lib/mixins/mutable_enumerable",["exports","@ember/-internals/runtime/lib/mixins/enumerable","@ember/-internals/metal"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=r.Mixin.create(t.default)})),e("@ember/-internals/runtime/lib/mixins/observable",["exports","@ember/-internals/meta","@ember/-internals/metal","@ember/debug"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=r.Mixin.create({get(e){return(0,r.get)(this,e)},getProperties(...e){return(0,r.getProperties)(...[this].concat(e))},set(e,t){return(0,r.set)(this,e,t)},setProperties(e){return(0,r.setProperties)(this,e)},beginPropertyChanges(){return(0,r.beginPropertyChanges)(),this},endPropertyChanges(){return(0,r.endPropertyChanges)(),this},notifyPropertyChange(e){return(0,r.notifyPropertyChange)(this,e),this},addObserver(e,t,i,n){return(0,r.addObserver)(this,e,t,i,n),this},removeObserver(e,t,i,n){return(0,r.removeObserver)(this,e,t,i,n),this},hasObserverFor(e){return(0,r.hasListeners)(this,`${e}:change`)},getWithDefault(e,t){return(0,r.getWithDefault)(this,e,t)},incrementProperty(e,t=1){return(0,r.set)(this,e,(parseFloat((0,r.get)(this,e))||0)+t)},decrementProperty(e,t=1){return(0,r.set)(this,e,((0,r.get)(this,e)||0)-t)},toggleProperty(e){return(0,r.set)(this,e,!(0,r.get)(this,e))},cacheFor(e){var r=(0,t.peekMeta)(this) -if(null!==r)return r.valueFor(e)}})})),e("@ember/-internals/runtime/lib/mixins/promise_proxy",["exports","@ember/-internals/metal","@ember/error"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Mixin.create({reason:null,isPending:(0,t.computed)("isSettled",(function(){return!(0,t.get)(this,"isSettled")})).readOnly(),isSettled:(0,t.computed)("isRejected","isFulfilled",(function(){return(0,t.get)(this,"isRejected")||(0,t.get)(this,"isFulfilled")})).readOnly(),isRejected:!1,isFulfilled:!1,promise:(0,t.computed)({get(){throw new r.default("PromiseProxy's promise must be set")},set(e,r){return function(e,r){return(0,t.setProperties)(e,{isFulfilled:!1,isRejected:!1}),r.then((r=>(e.isDestroyed||e.isDestroying||(0,t.setProperties)(e,{content:r,isFulfilled:!0}),r)),(r=>{throw e.isDestroyed||e.isDestroying||(0,t.setProperties)(e,{reason:r,isRejected:!0}),r}),"Ember: PromiseProxy")}(this,r)}}),then:i("then"),catch:i("catch"),finally:i("finally")}) -function i(e){return function(){return(0,t.get)(this,"promise")[e](...arguments)}}})),e("@ember/-internals/runtime/lib/mixins/registry_proxy",["exports","@ember/debug","@ember/-internals/metal"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=r.Mixin.create({__registry__:null,resolveRegistration(e,t){return this.__registry__.resolve(e,t)},register:i("register"),unregister:i("unregister"),hasRegistration:i("has"),registeredOption:i("getOption"),registerOptions:i("options"),registeredOptions:i("getOptions"),registerOptionsForType:i("optionsForType"),registeredOptionsForType:i("getOptionsForType"),inject:i("injection")}) -function i(e){return function(){return this.__registry__[e](...arguments)}}})),e("@ember/-internals/runtime/lib/mixins/target_action_support",["exports","@ember/-internals/environment","@ember/-internals/metal","@ember/debug"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var n=r.Mixin.create({target:null,action:null,actionContext:null,actionContextObject:(0,r.computed)("actionContext",(function(){var e=(0,r.get)(this,"actionContext") -if("string"==typeof e){var i=(0,r.get)(this,e) -return void 0===i&&(i=(0,r.get)(t.context.lookup,e)),i}return e})),triggerAction(e={}){var{action:i,target:n,actionContext:s}=e -if((i=i||(0,r.get)(this,"action"),n=n||function(e){var i=(0,r.get)(e,"target") -if(i){if("string"==typeof i){var n=(0,r.get)(e,i) -return void 0===n&&(n=(0,r.get)(t.context.lookup,i)),n}return i}if(e._target)return e._target -return null}(this),void 0===s&&(s=(0,r.get)(this,"actionContextObject")||this),n&&i)&&!1!==(n.send?n.send(...[i].concat(s)):n[i](...[].concat(s))))return!0 -return!1}}) -Object.defineProperty(n,"_wasReopened",{configurable:!0,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(n,"reopen",{configurable:!0,enumerable:!1,writable:!0,value:function(...e){return this===n&&(n._wasReopened=!0),r.Mixin.prototype.reopen.call(this,...e)}}) -e.default=n})),e("@ember/-internals/runtime/lib/system/array_proxy",["exports","@ember/-internals/metal","@ember/-internals/utils","@ember/-internals/runtime/lib/system/object","@ember/-internals/runtime/lib/mixins/array","@ember/debug","@glimmer/manager","@glimmer/validator"],(function(e,t,r,i,n,s,a,o){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var l={willChange:"_arrangedContentArrayWillChange",didChange:"_arrangedContentArrayDidChange"} -function u(e,t){return"[]"===t?(e._revalidate(),e._arrTag):"length"===t?(e._revalidate(),e._lengthTag):(0,o.tagFor)(e,t)}class c extends i.default{init(){super.init(...arguments),this._objectsDirtyIndex=0,this._objects=null,this._lengthDirty=!0,this._length=0,this._arrangedContent=null,this._arrangedContentIsUpdating=!1,this._arrangedContentTag=null,this._arrangedContentRevision=null,this._lengthTag=null,this._arrTag=null,(0,a.setCustomTagFor)(this,u)}[t.PROPERTY_DID_CHANGE](){this._revalidate()}willDestroy(){this._removeArrangedContentArrayObserver()}objectAtContent(e){return(0,t.objectAt)((0,t.get)(this,"arrangedContent"),e)}replace(e,t,r){this.replaceContent(e,t,r)}replaceContent(e,r,i){(0,t.get)(this,"content").replace(e,r,i)}objectAt(e){if(this._revalidate(),null===this._objects&&(this._objects=[]),-1!==this._objectsDirtyIndex&&e>=this._objectsDirtyIndex){var r=(0,t.get)(this,"arrangedContent") -if(r)for(var i=this._objects.length=(0,t.get)(r,"length"),n=this._objectsDirtyIndex;ns)&&(this._objectsDirtyIndex=s),this._lengthDirty=!0,this.arrayContentDidChange(r,i,n)}_invalidate(){this._objectsDirtyIndex=0,this._lengthDirty=!0}_revalidate(){if(!0!==this._arrangedContentIsUpdating&&(null===this._arrangedContentTag||!(0,o.validateTag)(this._arrangedContentTag,this._arrangedContentRevision))){var e=this.get("arrangedContent") -null===this._arrangedContentTag?this._addArrangedContentArrayObserver(e):(this._arrangedContentIsUpdating=!0,this._updateArrangedContentArray(e),this._arrangedContentIsUpdating=!1) -var i=this._arrangedContentTag=(0,o.tagFor)(this,"arrangedContent") -this._arrangedContentRevision=(0,o.valueForTag)(this._arrangedContentTag),(0,r.isObject)(e)?(this._lengthTag=(0,o.combine)([i,(0,t.tagForProperty)(e,"length")]),this._arrTag=(0,o.combine)([i,(0,t.tagForProperty)(e,"[]")])):this._lengthTag=this._arrTag=i}}}e.default=c,c.reopen(n.MutableArray,{arrangedContent:(0,t.alias)("content"),arrayContentDidChange(e,r,i){return(0,t.arrayContentDidChange)(this,e,r,i,!1)}})})),e("@ember/-internals/runtime/lib/system/core_object",["exports","@ember/-internals/container","@ember/-internals/owner","@ember/polyfills","@ember/-internals/utils","@ember/-internals/meta","@ember/-internals/metal","@ember/-internals/runtime/lib/mixins/action_handler","@ember/debug","@glimmer/util","@glimmer/destroyable","@glimmer/owner"],(function(e,t,r,i,n,s,a,o,l,u,c,d){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var h=a.Mixin.prototype.reopen,p=new u._WeakSet,f=new WeakMap,m=new Set -function g(e){m.has(e)||e.destroy()}function b(e,t){var r=(0,s.meta)(e) -if(void 0!==t)for(var o=e.concatenatedProperties,l=e.mergedProperties,u=void 0!==o&&o.length>0,c=void 0!==l&&l.length>0,d=Object.keys(t),h=0;h-1){var b=e[p] -f=b?(0,n.makeArray)(b).concat(f):(0,n.makeArray)(f)}if(c&&l.indexOf(p)>-1){var v=e[p] -f=(0,i.assign)({},v,f)}}if(g)m.set(e,p,f) -else if("function"!=typeof e.setUnknownProperty||p in e){e[p]=f}else e.setUnknownProperty(p,f)}e.init(t),r.unsetInitializing() -var y=r.observerEvents() -if(void 0!==y)for(var _=0;_t.willDestroy())),(0,s.meta)(t).setInitializing()}set[r.LEGACY_OWNER](e){}reopen(...e){return(0,a.applyMixin)(this,e),this}init(){}get isDestroyed(){return(0,c.isDestroyed)(this)}set isDestroyed(e){}get isDestroying(){return(0,c.isDestroying)(this)}set isDestroying(e){}destroy(){m.add(this) -try{(0,c.destroy)(this)}finally{m.delete(this)}return this}willDestroy(){}toString(){var e="function"==typeof this.toStringExtension?`:${this.toStringExtension()}`:"" -return`<${(0,t.getFactoryFor)(this)||"(unknown)"}:${(0,n.guidFor)(this)}${e}>`}static extend(){var e=class extends(this){} -return h.apply(e.PrototypeMixin,arguments),e}static create(e,i){var n -return void 0!==e?(n=new this((0,r.getOwner)(e)),(0,t.setFactoryFor)(n,(0,t.getFactoryFor)(e))):n=new this,b(n,void 0===i?e:y.apply(this,arguments)),n}static reopen(){return this.willReopen(),h.apply(this.PrototypeMixin,arguments),this}static willReopen(){var e=this.prototype -p.has(e)&&(p.delete(e),f.has(this)&&f.set(this,a.Mixin.create(this.PrototypeMixin)))}static reopenClass(){return(0,a.applyMixin)(this,arguments),this}static detect(e){if("function"!=typeof e)return!1 -for(;e;){if(e===this)return!0 -e=e.superclass}return!1}static detectInstance(e){return e instanceof this}static metaForProperty(e){var t=this.proto(),r=(0,a.descriptorForProperty)(t,e) -return r._meta||{}}static eachComputedProperty(e,t=this){this.proto() -var r={};(0,s.meta)(this.prototype).forEachDescriptors(((i,n)=>{if(n.enumerable){var s=n._meta||r -e.call(t,i,s)}}))}static get PrototypeMixin(){var e=f.get(this) -return void 0===e&&((e=a.Mixin.create()).ownerConstructor=this,f.set(this,e)),e}static get superclass(){var e=Object.getPrototypeOf(this) -return e!==Function.prototype?e:void 0}static proto(){var e=this.prototype -if(!p.has(e)){p.add(e) -var t=this.superclass -t&&t.proto(),f.has(this)&&this.PrototypeMixin.apply(e)}return e}static toString(){return`<${(0,t.getFactoryFor)(this)||"(unknown)"}:constructor>`}}function y(...e){for(var{concatenatedProperties:t,mergedProperties:r}=this,s=void 0!==t&&t.length>0,a=void 0!==r&&r.length>0,o={},l=0;l-1){var m=o[p] -f=m?(0,n.makeArray)(m).concat(f):(0,n.makeArray)(f)}if(a&&r.indexOf(p)>-1){var g=o[p] -f=(0,i.assign)({},g,f)}o[p]=f}return o}if(v.isClass=!0,v.isMethod=!1,!n.HAS_NATIVE_SYMBOL){var _=new WeakMap,E=new WeakMap -Object.defineProperty(v.prototype,d.OWNER,{get(){return _.get(this)},set(e){_.set(this,e)}}),Object.defineProperty(v.prototype,t.INIT_FACTORY,{get(){return E.get(this)},set(e){E.set(this,e)}}),Object.defineProperty(v,t.INIT_FACTORY,{get(){return E.get(this)},set(e){E.set(this,e)},enumerable:!1})}e.default=v})),e("@ember/-internals/runtime/lib/system/namespace",["exports","@ember/-internals/metal","@ember/-internals/utils","@ember/-internals/runtime/lib/system/object"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class n extends i.default{init(){(0,t.addNamespace)(this)}toString(){var e=(0,t.get)(this,"name")||(0,t.get)(this,"modulePrefix") -return e||((0,t.findNamespaces)(),void 0===(e=(0,r.getName)(this))&&(e=(0,r.guidFor)(this),(0,r.setName)(this,e)),e)}nameClasses(){(0,t.processNamespace)(this)}destroy(){(0,t.removeNamespace)(this),super.destroy()}}e.default=n,n.prototype.isNamespace=!0,n.NAMESPACES=t.NAMESPACES,n.NAMESPACES_BY_ID=t.NAMESPACES_BY_ID,n.processAll=t.processAllNamespaces,n.byName=t.findNamespace})) -e("@ember/-internals/runtime/lib/system/object",["exports","@ember/-internals/container","@ember/-internals/utils","@ember/-internals/metal","@ember/-internals/runtime/lib/system/core_object","@ember/-internals/runtime/lib/mixins/observable","@ember/debug"],(function(e,t,r,i,n,s,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.FrameworkObject=void 0 -class o extends n.default{get _debugContainerKey(){var e=(0,t.getFactoryFor)(this) -return void 0!==e&&e.fullName}}var l -e.default=o,s.default.apply(o.prototype),e.FrameworkObject=l=class extends n.default{get _debugContainerKey(){var e=(0,t.getFactoryFor)(this) -return void 0!==e&&e.fullName}},s.default.apply(l.prototype)})),e("@ember/-internals/runtime/lib/system/object_proxy",["exports","@ember/-internals/runtime/lib/system/object","@ember/-internals/runtime/lib/mixins/-proxy"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class i extends t.default{}e.default=i,i.PrototypeMixin.reopen(r.default)})),e("@ember/-internals/runtime/lib/type-of",["exports","@ember/-internals/runtime/lib/system/core_object"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.typeOf=function(e){if(null===e)return"null" -if(void 0===e)return"undefined" -var n=r[i.call(e)]||"object" -"function"===n?t.default.detect(e)&&(n="class"):"object"===n&&(e instanceof Error?n="error":e instanceof t.default?n="instance":e instanceof Date&&(n="date")) -return n} -var r={"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object AsyncFunction]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regexp","[object Object]":"object","[object FileList]":"filelist"},{toString:i}=Object.prototype})),e("@ember/-internals/utils/index",["exports","@glimmer/util","@ember/debug"],(function(e,t,r){"use strict" -function i(e){var t={} -for(var r in t[e]=1,t)if(r===e)return r -return e}function n(e){return null!==e&&("object"==typeof e||"function"==typeof e)}Object.defineProperty(e,"__esModule",{value:!0}),e.ROOT=e.HAS_NATIVE_SYMBOL=e.HAS_NATIVE_PROXY=e.GUID_KEY=e.Cache=void 0,e.canInvoke=F,e.checkHasSuper=void 0,e.dictionary=function(e){var t=Object.create(e) -return t._dict=null,delete t._dict,t},e.enumerableSymbol=p,e.generateGuid=function(e,t=o){var r=t+a() -n(e)&&l.set(e,r) -return r},e.getDebugName=void 0,e.getName=function(e){return z.get(e)},e.guidFor=function(e){var t -if(n(e))void 0===(t=l.get(e))&&(t=o+a(),l.set(e,t)) -else if(void 0===(t=u.get(e))){var r=typeof e -t="string"===r?"st"+a():"number"===r?"nu"+a():"symbol"===r?"sy"+a():"("+e+")",u.set(e,t)}return t},e.inspect=function(e){if("number"==typeof e&&2===arguments.length)return this -return D(e,0)},e.intern=i,e.isEmberArray=function(e){return H.has(e)},e.isInternalSymbol=function(e){return-1!==h.indexOf(e)},e.isObject=n,e.isProxy=function(e){if(n(e))return $.has(e) -return!1},e.lookupDescriptor=I,e.makeArray=function(e){if(null==e)return[] -return L(e)?e:[e]},e.observerListenerMetaFor=function(e){return R.get(e)},e.setEmberArray=function(e){H.add(e)},e.setListeners=function(e,t){O(e).listeners=t},e.setName=function(e,t){n(e)&&z.set(e,t)},e.setObservers=function(e,t){O(e).observers=t},e.setProxy=function(e){n(e)&&$.add(e)},e.teardownMandatorySetter=e.symbol=e.setupMandatorySetter=e.setWithMandatorySetter=void 0,e.toString=function e(t){if("string"==typeof t)return t -if(null===t)return"null" -if(void 0===t)return"undefined" -if(Array.isArray(t)){for(var r="",i=0;i0&&(r+=","),U(t[i])||(r+=e(t[i])) -return r}if("function"==typeof t.toString)return t.toString() -return B.call(t)},e.tryInvoke=function(e,t,r){if(F(e,t)){return e[t].apply(e,r)}},e.uuid=a,e.wrap=function(e,t){if(!_(e))return e -if(!w.has(t)&&_(t))return T(e,T(t,y)) -return T(e,t)} -var s=0 -function a(){return++s}var o="ember",l=new WeakMap,u=new Map,c=e.GUID_KEY=i(`__ember${Date.now()}`) -var d=e.HAS_NATIVE_SYMBOL="function"==typeof Symbol&&"symbol"==typeof Symbol(),h=[] -function p(e){var t=i(`__${e}${c+Math.floor(Math.random()*Date.now())}__`) -return t}var f -e.symbol=d?Symbol:p -e.getDebugName=f -var m=/\.(_super|call\(this|apply\(this)/,g=Function.prototype.toString,b=e.checkHasSuper=g.call((function(){return this})).indexOf("return this")>-1?function(e){return m.test(g.call(e))}:function(){return!0},v=new WeakMap,y=e.ROOT=Object.freeze((function(){})) -function _(e){var t=v.get(e) -return void 0===t&&(t=b(e),v.set(e,t)),t}v.set(y,!1) -class E{constructor(){this.listeners=void 0,this.observers=void 0}}var R=new WeakMap -function O(e){var t=R.get(e) -return void 0===t&&(t=new E,R.set(e,t)),t}var w=new t._WeakSet -function T(e,t){function r(){var r=this._super -this._super=t -var i=e.apply(this,arguments) -return this._super=r,i}w.add(r) -var i=R.get(e) -return void 0!==i&&R.set(r,i),r}var{toString:P}=Object.prototype,{toString:A}=Function.prototype,{isArray:S}=Array,{keys:C}=Object,{stringify:k}=JSON,M=100,j=4,x=/^[\w$]+$/ -function D(e,r,i){var n=!1 -switch(typeof e){case"undefined":return"undefined" -case"object":if(null===e)return"null" -if(S(e)){n=!0 -break}if(e.toString===P||void 0===e.toString)break -return e.toString() -case"function":return e.toString===A?e.name?`[Function:${e.name}]`:"[Function]":e.toString() -case"string":return k(e) -default:return e.toString()}if(void 0===i)i=new t._WeakSet -else if(i.has(e))return"[Circular]" -return i.add(e),n?function(e,t,r){if(t>j)return"[Array]" -for(var i="[",n=0;n=M){i+=`... ${e.length-M} more items` -break}i+=D(e[n],t,r)}return i+=" ]"}(e,r+1,i):function(e,t,r){if(t>j)return"[Object]" -for(var i="{",n=C(e),s=0;s=M){i+=`... ${n.length-M} more keys` -break}var a=n[s] -i+=N(a)+": "+D(e[a],t,r)}return i+=" }"}(e,r+1,i)}function N(e){return x.test(e)?e:k(e)}function I(e,t){var r=e -do{var i=Object.getOwnPropertyDescriptor(r,t) -if(void 0!==i)return i -r=Object.getPrototypeOf(r)}while(null!==r) -return null}function F(e,t){return null!=e&&"function"==typeof e[t]}var{isArray:L}=Array -var z=new WeakMap -var B=Object.prototype.toString -function U(e){return null==e}e.HAS_NATIVE_PROXY="function"==typeof Proxy -var $=new t._WeakSet -e.Cache=class{constructor(e,t,r){this.limit=e,this.func=t,this.store=r,this.size=0,this.misses=0,this.hits=0,this.store=r||new Map}get(e){return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,this.set(e,this.func(e)))}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}} -var H=new t._WeakSet})),e("@ember/-internals/views/index",["exports","@ember/-internals/views/lib/system/jquery","@ember/-internals/views/lib/system/utils","@ember/-internals/views/lib/system/event_dispatcher","@ember/-internals/views/lib/component_lookup","@ember/-internals/views/lib/mixins/text_support","@ember/-internals/views/lib/views/core_view","@ember/-internals/views/lib/mixins/class_names_support","@ember/-internals/views/lib/mixins/child_views_support","@ember/-internals/views/lib/mixins/view_state_support","@ember/-internals/views/lib/mixins/view_support","@ember/-internals/views/lib/mixins/action_support","@ember/-internals/views/lib/compat/attrs","@ember/-internals/views/lib/system/action_manager"],(function(e,t,r,i,n,s,a,o,l,u,c,d,h,p){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ActionManager",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(e,"ActionSupport",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(e,"ChildViewsSupport",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"ClassNamesSupport",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"ComponentLookup",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"CoreView",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"EventDispatcher",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"MUTABLE_CELL",{enumerable:!0,get:function(){return h.MUTABLE_CELL}}),Object.defineProperty(e,"TextSupport",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"ViewMixin",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(e,"ViewStateSupport",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(e,"addChildView",{enumerable:!0,get:function(){return r.addChildView}}),Object.defineProperty(e,"clearElementView",{enumerable:!0,get:function(){return r.clearElementView}}),Object.defineProperty(e,"clearViewElement",{enumerable:!0,get:function(){return r.clearViewElement}}),Object.defineProperty(e,"constructStyleDeprecationMessage",{enumerable:!0,get:function(){return r.constructStyleDeprecationMessage}}),Object.defineProperty(e,"getChildViews",{enumerable:!0,get:function(){return r.getChildViews}}),Object.defineProperty(e,"getElementView",{enumerable:!0,get:function(){return r.getElementView}}),Object.defineProperty(e,"getRootViews",{enumerable:!0,get:function(){return r.getRootViews}}),Object.defineProperty(e,"getViewBoundingClientRect",{enumerable:!0,get:function(){return r.getViewBoundingClientRect}}),Object.defineProperty(e,"getViewBounds",{enumerable:!0,get:function(){return r.getViewBounds}}),Object.defineProperty(e,"getViewClientRects",{enumerable:!0,get:function(){return r.getViewClientRects}}),Object.defineProperty(e,"getViewElement",{enumerable:!0,get:function(){return r.getViewElement}}),Object.defineProperty(e,"getViewId",{enumerable:!0,get:function(){return r.getViewId}}),Object.defineProperty(e,"isSimpleClick",{enumerable:!0,get:function(){return r.isSimpleClick}}),Object.defineProperty(e,"jQuery",{enumerable:!0,get:function(){return t.jQuery}}),Object.defineProperty(e,"jQueryDisabled",{enumerable:!0,get:function(){return t.jQueryDisabled}}),Object.defineProperty(e,"setElementView",{enumerable:!0,get:function(){return r.setElementView}}),Object.defineProperty(e,"setViewElement",{enumerable:!0,get:function(){return r.setViewElement}})})),e("@ember/-internals/views/lib/compat/attrs",["exports","@ember/-internals/utils"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.MUTABLE_CELL=void 0 -e.MUTABLE_CELL=(0,t.symbol)("MUTABLE_CELL")})),e("@ember/-internals/views/lib/compat/fallback-view-registry",["exports","@ember/-internals/utils"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=(0,t.dictionary)(null)})),e("@ember/-internals/views/lib/component_lookup",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Object.extend({componentFor(e,t,r){var i=`component:${e}` -return t.factoryFor(i,r)},layoutFor(e,t,r){var i=`template:components/${e}` -return t.lookup(i,r)}})})),e("@ember/-internals/views/lib/mixins/action_support",["exports","@ember/-internals/utils","@ember/-internals/metal","@ember/debug","@ember/-internals/views/lib/compat/attrs","@ember/deprecated-features"],(function(e,t,r,i,n,s){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var a={send(e,...t){var i=this.actions&&this.actions[e] -if(i&&!(!0===i.apply(this,t)))return -var n=(0,r.get)(this,"target") -n&&n.send(...arguments)}} -if(s.SEND_ACTION){var o=function(e,t){return t&&t[n.MUTABLE_CELL]&&(t=t.value),t} -a.sendAction=function(e,...t){var i -void 0===e&&(e="action"),i=(0,r.get)(this,`attrs.${e}`)||(0,r.get)(this,e),void 0!==(i=o(this,i))&&("function"==typeof i?i(...t):this.triggerAction({action:i,actionContext:t}))}}e.default=r.Mixin.create(a)})),e("@ember/-internals/views/lib/mixins/child_views_support",["exports","@ember/-internals/metal","@ember/-internals/views/lib/system/utils"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Mixin.create({childViews:(0,t.nativeDescDecorator)({configurable:!1,enumerable:!1,get(){return(0,r.getChildViews)(this)}}),appendChild(e){(0,r.addChildView)(this,e)}})})),e("@ember/-internals/views/lib/mixins/class_names_support",["exports","@ember/-internals/metal","@ember/debug"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=Object.freeze([]) -e.default=t.Mixin.create({concatenatedProperties:["classNames","classNameBindings"],init(){this._super(...arguments)},classNames:i,classNameBindings:i})})),e("@ember/-internals/views/lib/mixins/text_support",["exports","@ember/-internals/metal","@ember/debug","@ember/deprecated-features","@ember/-internals/views"],(function(e,t,r,i,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var s={Enter:"insertNewline",Escape:"cancel"},a=t.Mixin.create({value:"",attributeBindings:["autocapitalize","autocorrect","autofocus","disabled","form","maxlength","minlength","placeholder","readonly","required","selectionDirection","spellcheck","tabindex","title"],placeholder:null,disabled:!1,maxlength:null,init(){this._super(...arguments),this.on("paste",this,this._elementValueDidChange),this.on("cut",this,this._elementValueDidChange),this.on("input",this,this._elementValueDidChange)},bubbles:!1,interpretKeyEvents(e){var t=s[e.key] -if(this._elementValueDidChange(),t)return this[t](e)},_elementValueDidChange(){(0,t.set)(this,"value",this.element.value)},change(e){this._elementValueDidChange(e)},insertNewline(e){o("enter",this,e),o("insert-newline",this,e)},cancel(e){o("escape-press",this,e)},focusIn(e){o("focus-in",this,e)},focusOut(e){this._elementValueDidChange(e),o("focus-out",this,e)},keyPress(e){o("key-press",this,e)},keyUp(e){this.interpretKeyEvents(e),o("key-up",this,e)},keyDown(e){o("key-down",this,e)}}) -function o(e,r,s){var a=(0,t.get)(r,`attrs.${e}`) -null!==a&&"object"==typeof a&&!0===a[n.MUTABLE_CELL]&&(a=a.value),void 0===a&&(a=(0,t.get)(r,e)) -var o=(0,t.get)(r,"value") -if(i.SEND_ACTION&&"string"==typeof a){r.triggerAction({action:a,actionContext:[o,s]})}else"function"==typeof a&&a(o,s) -a&&!(0,t.get)(r,"bubbles")&&s.stopPropagation()}Object.defineProperty(a,"_wasReopened",{configurable:!0,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(a,"reopen",{configurable:!0,enumerable:!1,writable:!0,value:function(...e){return this===a&&(a._wasReopened=!0),t.Mixin.prototype.reopen.call(this,...e)}}) -e.default=a})),e("@ember/-internals/views/lib/mixins/view_state_support",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Mixin.create({_transitionTo(e){var t=this._currentState,r=this._currentState=this._states[e] -this._state=e,t&&t.exit&&t.exit(this),r.enter&&r.enter(this)}})})),e("@ember/-internals/views/lib/mixins/view_support",["exports","@ember/-internals/utils","@ember/-internals/metal","@ember/debug","@ember/-internals/browser-environment","@ember/-internals/views/lib/system/utils","@ember/-internals/views/lib/system/jquery","@ember/deprecated-features"],(function(e,t,r,i,n,s,a,o){"use strict" -function l(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var u={concatenatedProperties:["attributeBindings"],nearestOfType(e){for(var t=this.parentView,i=e instanceof r.Mixin?t=>e.detect(t):t=>e.detect(t.constructor);t;){if(i(t))return t -t=t.parentView}},nearestWithProperty(e){for(var t=this.parentView;t;){if(e in t)return t -t=t.parentView}},rerender(){return this._currentState.rerender(this)},element:(0,r.nativeDescDecorator)({configurable:!1,enumerable:!1,get(){return this.renderer.getElement(this)}}),appendTo(e){var t -return t=n.hasDOM&&"string"==typeof e?document.querySelector(e):e,this.renderer.appendTo(this,t),this},append(){return this.appendTo(document.body)},elementId:null,willInsertElement:l,didInsertElement:l,willClearRender:l,destroy(){this._super(...arguments),this._currentState.destroy(this)},willDestroyElement:l,didDestroyElement:l,parentViewDidChange:l,tagName:null,init(){this._super(...arguments),this.elementId||""===this.tagName||(this.elementId=(0,t.guidFor)(this))},handleEvent(e,t){return this._currentState.handleEvent(this,e,t)}} -o.JQUERY_INTEGRATION&&(u.$=function(e){if(this.element)return e?(0,a.jQuery)(e,this.element):(0,a.jQuery)(this.element)}) -e.default=r.Mixin.create(u)})),e("@ember/-internals/views/lib/system/action_manager",["exports"],(function(e){"use strict" -function t(){}Object.defineProperty(e,"__esModule",{value:!0}),e.default=t,t.registeredActions={}})),e("@ember/-internals/views/lib/system/event_dispatcher",["exports","@ember/-internals/owner","@ember/polyfills","@ember/debug","@ember/-internals/metal","@ember/-internals/runtime","@ember/-internals/views","@ember/-internals/views/lib/system/jquery","@ember/-internals/views/lib/system/action_manager","@ember/-internals/views/lib/system/jquery_event_deprecation","@ember/-internals/views/lib/system/utils","@ember/deprecated-features"],(function(e,t,r,i,n,s,a,o,l,u,c,d){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var h="ember-application",p=`.${h}`,f={mouseenter:"mouseover",mouseleave:"mouseout"} -e.default=s.Object.extend({events:(0,r.assign)({touchstart:"touchStart",touchmove:"touchMove",touchend:"touchEnd",touchcancel:"touchCancel",keydown:"keyDown",keyup:"keyUp",keypress:"keyPress",mousedown:"mouseDown",mouseup:"mouseUp",contextmenu:"contextMenu",click:"click",dblclick:"doubleClick",focusin:"focusIn",focusout:"focusOut",submit:"submit",input:"input",change:"change",dragstart:"dragStart",drag:"drag",dragenter:"dragEnter",dragleave:"dragLeave",dragover:"dragOver",drop:"drop",dragend:"dragEnd"},d.MOUSE_ENTER_LEAVE_MOVE_EVENTS?{mouseenter:"mouseEnter",mouseleave:"mouseLeave",mousemove:"mouseMove"}:{}),rootElement:"body",init(){this._super(),this._eventHandlers=Object.create(null),this._didSetup=!1},setup(e,t){var i=this._finalEvents=(0,r.assign)({},(0,n.get)(this,"events"),e) -null!=t&&(0,n.set)(this,"rootElement",t) -var s,a=(0,n.get)(this,"rootElement") -if(!d.JQUERY_INTEGRATION||o.jQueryDisabled)(s="string"!=typeof a?a:document.querySelector(a)).classList.add(h) -else if((s=(0,o.jQuery)(a)).addClass(h),!s.is(p))throw new TypeError(`Unable to add '${h}' class to root element (${s.selector||s[0].tagName}). Make sure you set rootElement to the body or an element in the body.`) -for(var l in i)Object.prototype.hasOwnProperty.call(i,l)&&this.setupHandler(s,l,i[l]) -this._didSetup=!0},setupHandler(e,t,r){if(null!==r)if(!d.JQUERY_INTEGRATION||o.jQueryDisabled){var i=(e,t)=>{var i=(0,a.getElementView)(e),n=!0 -return i&&(n=i.handleEvent(r,t)),n},n=(e,t)=>{var i=e.getAttribute("data-ember-action"),n=l.default.registeredActions[i] -if(""===i){var s=e.attributes,a=s.length -n=[] -for(var o=0;o{var r=document.createEvent("MouseEvent") -return r.initMouseEvent(e,!1,!1,t.view,t.detail,t.screenX,t.screenY,t.clientX,t.clientY,t.ctrlKey,t.altKey,t.shiftKey,t.metaKey,t.button,t.relatedTarget),Object.defineProperty(r,"target",{value:t.target,enumerable:!0}),r},m=this._eventHandlers[s]=e=>{for(var t=e.target,r=e.relatedTarget;t&&1===t.nodeType&&(null===r||r!==t&&!(0,c.contains)(t,r));)(0,a.getElementView)(t)?i(t,p(h,e)):t.hasAttribute("data-ember-action")&&n(t,p(h,e)),t=t.parentNode} -e.addEventListener(s,m)}else{var g=this._eventHandlers[t]=e=>{var t=e.target -do{if((0,a.getElementView)(t)){if(!1===i(t,e)){e.preventDefault(),e.stopPropagation() -break}if(!0===e.cancelBubble)break}else if("function"==typeof t.hasAttribute&&t.hasAttribute("data-ember-action")&&!1===n(t,e))break -t=t.parentNode}while(t&&1===t.nodeType)} -e.addEventListener(t,g)}}else e.on(`${t}.ember`,".ember-view",(function(e){var t=(0,a.getElementView)(this),i=!0 -return t&&(i=t.handleEvent(r,(0,u.default)(e))),i})),e.on(`${t}.ember`,"[data-ember-action]",(e=>{var t=e.currentTarget.attributes,i=[] -e=(0,u.default)(e) -for(var n=0;n"(EventDispatcher)"})})),e("@ember/-internals/views/lib/system/jquery",["exports","@ember/-internals/environment","@ember/-internals/browser-environment","@ember/deprecated-features"],(function(e,t,r,i){"use strict" -var n -Object.defineProperty(e,"__esModule",{value:!0}),e.jQueryDisabled=e.jQuery=void 0 -var s=e.jQueryDisabled=!i.JQUERY_INTEGRATION||!1===t.ENV._JQUERY_INTEGRATION -i.JQUERY_INTEGRATION&&r.hasDOM&&(e.jQuery=n=t.context.imports.jQuery,!s&&n?n.event.addProp?n.event.addProp("dataTransfer"):["dragstart","drag","dragenter","dragleave","dragover","drop","dragend"].forEach((e=>{n.event.fixHooks[e]={props:["dataTransfer"]}})):(e.jQuery=n=void 0,e.jQueryDisabled=s=!0))})),e("@ember/-internals/views/lib/system/jquery_event_deprecation",["exports","@ember/debug","@ember/-internals/environment","@ember/-internals/utils","@ember/deprecated-features"],(function(e,t,r,i,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return e}})),e("@ember/-internals/views/lib/system/utils",["exports","@ember/-internals/owner","@ember/-internals/utils","@ember/debug"],(function(e,t,r,i){"use strict" -function n(e){return""!==e.tagName&&e.elementId?e.elementId:(0,r.guidFor)(e)}Object.defineProperty(e,"__esModule",{value:!0}),e.addChildView=function(e,t){var r=o.get(e) -void 0===r&&(r=l(e)) -r.add(n(t))},e.clearElementView=function(e){s.delete(e)},e.clearViewElement=function(e){a.delete(e)},e.collectChildViews=u,e.constructStyleDeprecationMessage=function(e){return'Binding style attributes may introduce cross-site scripting vulnerabilities; please ensure that values being bound are properly escaped. For more information, including how to disable this warning, see https://deprecations.emberjs.com/v1.x/#toc_binding-style-attributes. Style affected: "'+e+'"'},e.contains=function(e,t){if(void 0!==e.contains)return e.contains(t) -var r=t.parentNode -for(;r&&(r=r.parentNode);)if(r===e)return!0 -return!1},e.elMatches=void 0,e.getChildViews=function(e){var r=(0,t.getOwner)(e).lookup("-view-registry:main") -return u(e,r)},e.getElementView=function(e){return s.get(e)||null},e.getRootViews=function(e){var t=e.lookup("-view-registry:main"),r=[] -return Object.keys(t).forEach((e=>{var i=t[e] -null===i.parentView&&r.push(i)})),r},e.getViewBoundingClientRect=function(e){return d(e).getBoundingClientRect()},e.getViewBounds=c,e.getViewClientRects=function(e){return d(e).getClientRects()},e.getViewElement=function(e){return a.get(e)||null},e.getViewId=n,e.getViewRange=d,e.initChildViews=l,e.isSimpleClick=function(e){var t=e.shiftKey||e.metaKey||e.altKey||e.ctrlKey,r=e.which>1 -return!t&&!r},e.matches=function(e,t){return h.call(e,t)},e.setElementView=function(e,t){s.set(e,t)},e.setViewElement=function(e,t){a.set(e,t)} -var s=new WeakMap,a=new WeakMap -var o=new WeakMap -function l(e){var t=new Set -return o.set(e,t),t}function u(e,t){var r=[],i=o.get(e) -return void 0!==i&&i.forEach((e=>{var i=t[e] -!i||i.isDestroying||i.isDestroyed||r.push(i)})),r}function c(e){return e.renderer.getBounds(e)}function d(e){var t=c(e),r=document.createRange() -return r.setStartBefore(t.firstNode),r.setEndAfter(t.lastNode),r}var h=e.elMatches="undefined"!=typeof Element?Element.prototype.matches||Element.prototype.matchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector||Element.prototype.oMatchesSelector||Element.prototype.webkitMatchesSelector:void 0})),e("@ember/-internals/views/lib/views/core_view",["exports","@ember/-internals/metal","@ember/-internals/runtime","@ember/-internals/views/lib/views/states"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var n=r.FrameworkObject.extend(r.Evented,r.ActionHandler,{isView:!0,_states:i.default,init(){this._super(...arguments),this._state="preRender",this._currentState=this._states.preRender},renderer:(0,t.inject)("renderer","-dom"),parentView:null,instrumentDetails(e){return e.object=this.toString(),e.containerKey=this._debugContainerKey,e.view=this,e},trigger(e,...t){this._super(...arguments) -var r=this[e] -if("function"==typeof r)return r.apply(this,t)},has(e){return"function"==typeof this[e]||this._super(e)}}) -n.reopenClass({isViewFactory:!0}) -e.default=n})),e("@ember/-internals/views/lib/views/states",["exports","@ember/-internals/views/lib/views/states/pre_render","@ember/-internals/views/lib/views/states/has_element","@ember/-internals/views/lib/views/states/in_dom","@ember/-internals/views/lib/views/states/destroying"],(function(e,t,r,i,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var s=Object.freeze({preRender:t.default,inDOM:i.default,hasElement:r.default,destroying:n.default}) -e.default=s})),e("@ember/-internals/views/lib/views/states/default",["exports","@ember/error"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var r={appendChild(){throw new t.default("You can't use appendChild outside of the rendering process")},handleEvent:()=>!0,rerender(){},destroy(){}} -e.default=Object.freeze(r)})),e("@ember/-internals/views/lib/views/states/destroying",["exports","@ember/polyfills","@ember/error","@ember/-internals/views/lib/views/states/default"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var n=(0,t.assign)({},i.default,{appendChild(){throw new r.default("You can't call appendChild on a view being destroyed")},rerender(){throw new r.default("You can't call rerender on a view being destroyed")}}) -e.default=Object.freeze(n)})),e("@ember/-internals/views/lib/views/states/has_element",["exports","@ember/polyfills","@ember/-internals/views/lib/views/states/default","@ember/runloop","@ember/instrumentation"],(function(e,t,r,i,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var s=(0,t.assign)({},r.default,{rerender(e){e.renderer.rerender(e)},destroy(e){e.renderer.remove(e)},handleEvent:(e,t,r)=>!e.has(t)||(0,n.flaggedInstrument)(`interaction.${t}`,{event:r,view:e},(()=>(0,i.join)(e,e.trigger,t,r)))}) -e.default=Object.freeze(s)})),e("@ember/-internals/views/lib/views/states/in_dom",["exports","@ember/-internals/utils","@ember/polyfills","@ember/error","@ember/-internals/views/lib/views/states/has_element"],(function(e,t,r,i,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var s=(0,r.assign)({},n.default,{enter(e){e.renderer.register(e)}}) -e.default=Object.freeze(s)})),e("@ember/-internals/views/lib/views/states/pre_render",["exports","@ember/-internals/views/lib/views/states/default","@ember/polyfills"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=(0,r.assign)({},t.default) -e.default=Object.freeze(i)})),e("@ember/application/deprecations",["exports","@ember/debug"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.deprecate=function(e,t,r){},e.deprecateFunc=function(e,r,i){(0,t.deprecateFunc)(e,r,i)}})),e("@ember/application/globals-resolver",["exports","@ember/-internals/utils","@ember/-internals/metal","@ember/debug","@ember/string","@ember/-internals/runtime","@ember/-internals/glimmer","@ember/deprecated-features"],(function(e,t,r,i,n,s,a,o){"use strict" -var l -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,o.GLOBALS_RESOLVER&&(l=class extends s.Object{static create(e){return super.create(e)}init(){this._parseNameCache=(0,t.dictionary)(null)}normalize(e){var[t,r]=e.split(":") -return"template"!==t?`${t}:${r.replace(/(\.|_|-)./g,(e=>e.charAt(1).toUpperCase()))}`:e}resolve(e){var t,r=this.parseName(e),i=r.resolveMethodName -return this[i]&&(t=this[i](r)),t=t||this.resolveOther(r)}parseName(e){return this._parseNameCache[e]||(this._parseNameCache[e]=this._parseName(e))}_parseName(e){var[t,i]=e.split(":"),s=i,a=(0,r.get)(this,"namespace"),o=s.lastIndexOf("/"),l=-1!==o?s.slice(0,o):null -if("template"!==t&&-1!==o){var u=s.split("/") -s=u[u.length-1] -var c=(0,n.capitalize)(u.slice(0,-1).join(".")) -a=(0,r.findNamespace)(c)}var d="main"===i?"Main":(0,n.classify)(t) -if(!s||!t)throw new TypeError(`Invalid fullName: \`${e}\`, must be of the form \`type:name\` `) -return{fullName:e,type:t,fullNameWithoutType:i,dirname:l,name:s,root:a,resolveMethodName:`resolve${d}`}}lookupDescription(e){var t,r=this.parseName(e) -return"template"===r.type?`template at ${r.fullNameWithoutType.replace(/\./g,"/")}`:(t=`${r.root}.${(0,n.classify)(r.name).replace(/\./g,"")}`,"model"!==r.type&&(t+=(0,n.classify)(r.type)),t)}makeToString(e){return"string"==typeof e?e:e.name??"(unknown class)"}useRouterNaming(e){"basic"===e.name?e.name="":e.name=e.name.replace(/\./g,"_")}resolveTemplate(e){var t=e.fullNameWithoutType.replace(/\./g,"/") -return(0,a.getTemplate)(t)||(0,a.getTemplate)((0,n.decamelize)(t))}resolveView(e){return this.useRouterNaming(e),this.resolveOther(e)}resolveController(e){return this.useRouterNaming(e),this.resolveOther(e)}resolveRoute(e){return this.useRouterNaming(e),this.resolveOther(e)}resolveModel(e){var t=(0,n.classify)(e.name) -return(0,r.get)(e.root,t)}resolveHelper(e){return this.resolveOther(e)}resolveOther(e){var t=(0,n.classify)(e.name)+(0,n.classify)(e.type) -return(0,r.get)(e.root,t)}resolveMain(e){var t=(0,n.classify)(e.type) -return(0,r.get)(e.root,t)}knownForType(e){for(var i=(0,r.get)(this,"namespace"),s=(0,n.classify)(e),a=new RegExp(`${s}$`),o=(0,t.dictionary)(null),l=Object.keys(i),u=0;ut.options.shouldRender?(0,a.renderSettled)().then((()=>this)):this,s=e=>{if(e.error)throw e.error -if("TransitionAborted"===e.name&&i._routerMicrolib.activeTransition)return i._routerMicrolib.activeTransition.then(n,s) -throw"TransitionAborted"===e.name?new Error(e.message):e},o=(0,r.get)(i,"location") -return o.setURL(e),i.handleURL(o.getURL()).then(n,s)},willDestroy(){this._super(...arguments),this.application._unwatchInstance(this)}}) -o.reopenClass({setupRegistry(e,t={}){t.toEnvironment||(t=new l(t)),e.register("-environment:main",t.toEnvironment(),{instantiate:!1}),e.register("service:-document",t.document,{instantiate:!1}),this._super(e,t)}}) -class l{constructor(e={}){this.jQuery=n.jQuery,this.isInteractive=i.hasDOM,this._renderMode=e._renderMode,void 0!==e.isBrowser?this.isBrowser=Boolean(e.isBrowser):this.isBrowser=i.hasDOM,this.isBrowser||(this.jQuery=null,this.isInteractive=!1,this.location="none"),void 0!==e.shouldRender?this.shouldRender=Boolean(e.shouldRender):this.shouldRender=!0,this.shouldRender||(this.jQuery=null,this.isInteractive=!1),e.document?this.document=e.document:this.document="undefined"!=typeof document?document:null,e.rootElement&&(this.rootElement=e.rootElement),void 0!==e.location&&(this.location=e.location),void 0!==e.jQuery&&(this.jQuery=e.jQuery),void 0!==e.isInteractive&&(this.isInteractive=Boolean(e.isInteractive))}toEnvironment(){var e=(0,t.assign)({},i) -return e.hasDOM=this.isBrowser,e.isInteractive=this.isInteractive,e._renderMode=this._renderMode,e.options=this,e}}e.default=o})) -e("@ember/application/lib/application",["exports","@ember/-internals/utils","@ember/-internals/environment","@ember/-internals/browser-environment","@ember/debug","@ember/runloop","@ember/-internals/metal","@ember/application/lib/lazy_load","@ember/-internals/runtime","@ember/-internals/views","@ember/-internals/routing","@ember/application/instance","@ember/engine","@ember/-internals/container","@ember/-internals/glimmer","@ember/deprecated-features"],(function(e,t,r,i,n,s,a,o,l,u,c,d,h,p,f,m){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var g=!1,b=h.default.extend({rootElement:"body",_document:i.hasDOM?window.document:null,eventDispatcher:null,customEvents:null,autoboot:!0,_globalsMode:!0,_applicationInstances:null,init(){this._super(...arguments),this.$||(this.$=u.jQuery),g||(g=!0,m.JQUERY_INTEGRATION&&i.hasDOM&&!u.jQueryDisabled&&a.libraries.registerCoreLibrary("jQuery",(0,u.jQuery)().jquery)),this._readinessDeferrals=1,this._booted=!1,this._applicationInstances=new Set,this.autoboot=this._globalsMode=Boolean(this.autoboot),this._globalsMode&&this._prepareForGlobalsMode(),this.autoboot&&this.waitForDOMReady()},buildInstance(e={}){return e.base=this,e.application=this,d.default.create(e)},_watchInstance(e){this._applicationInstances.add(e)},_unwatchInstance(e){return this._applicationInstances.delete(e)},_prepareForGlobalsMode(){this.Router=(this.Router||c.Router).extend(),this._buildDeprecatedInstance()},_buildDeprecatedInstance(){var e=this.buildInstance() -this.__deprecatedInstance__=e,this.__container__=e.__container__},waitForDOMReady(){if(null===this._document||"loading"!==this._document.readyState)(0,s.schedule)("actions",this,"domReady") -else{var e=()=>{this._document.removeEventListener("DOMContentLoaded",e),(0,s.run)(this,"domReady")} -this._document.addEventListener("DOMContentLoaded",e)}},domReady(){this.isDestroying||this.isDestroyed||this._bootSync()},deferReadiness(){this._readinessDeferrals++},advanceReadiness(){this._readinessDeferrals--,0===this._readinessDeferrals&&(0,s.once)(this,this.didBecomeReady)},boot(){if(this._bootPromise)return this._bootPromise -try{this._bootSync()}catch(e){}return this._bootPromise},_bootSync(){if(!(this._booted||this.isDestroying||this.isDestroyed)){var e=this._bootResolver=l.RSVP.defer() -this._bootPromise=e.promise -try{this.runInitializers(),(0,o.runLoadHooks)("application",this),this.advanceReadiness()}catch(t){throw e.reject(t),t}}},reset(){var e=this.__deprecatedInstance__ -this._readinessDeferrals=1,this._bootPromise=null,this._bootResolver=null,this._booted=!1,(0,s.join)(this,(function(){(0,s.run)(e,"destroy"),this._buildDeprecatedInstance(),(0,s.schedule)("actions",this,"_bootSync")}))},didBecomeReady(){if(!this.isDestroying&&!this.isDestroyed)try{var e -if(this.autoboot)(e=this._globalsMode?this.__deprecatedInstance__:this.buildInstance())._bootSync(),this.ready(),e.startRouting() -this._bootResolver.resolve(this),this._booted=!0}catch(t){throw this._bootResolver.reject(t),t}},ready(){return this},willDestroy(){this._super(...arguments),o._loaded.application===this&&(o._loaded.application=void 0),this._applicationInstances.size&&(this._applicationInstances.forEach((e=>e.destroy())),this._applicationInstances.clear())},visit(e,t){return this.boot().then((()=>{var r=this.buildInstance() -return r.boot(t).then((()=>r.visit(e))).catch((e=>{throw(0,s.run)(r,"destroy"),e}))}))}}) -b.reopenClass({buildRegistry(){var e=this._super(...arguments) -return function(e){e.register("router:main",c.Router),e.register("-view-registry:main",{create:()=>(0,t.dictionary)(null)}),e.register("route:basic",c.Route),e.register("event_dispatcher:main",u.EventDispatcher),e.register("location:auto",c.AutoLocation),e.register("location:hash",c.HashLocation),e.register("location:history",c.HistoryLocation),e.register("location:none",c.NoneLocation),e.register(p.privatize`-bucket-cache:main`,{create:()=>new c.BucketCache}),e.register("service:router",c.RouterService)}(e),(0,f.setupApplicationRegistry)(e),e}}) -e.default=b})),e("@ember/application/lib/lazy_load",["exports","@ember/-internals/environment","@ember/-internals/browser-environment"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._loaded=void 0,e.onLoad=function(e,t){var r=n[e] -i[e]=i[e]||[],i[e].push(t),r&&t(r)},e.runLoadHooks=function(e,t){if(n[e]=t,r.window&&"function"==typeof CustomEvent){var s=new CustomEvent(e,{detail:t,name:e}) -r.window.dispatchEvent(s)}i[e]&&i[e].forEach((e=>e(t)))} -var i=t.ENV.EMBER_LOAD_HOOKS||{},n={} -e._loaded=n})),e("@ember/application/namespace",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Namespace}})})),e("@ember/application/resolver",["exports","@ember/application/globals-resolver"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),e("@ember/array/index",["exports","@ember/-internals/runtime","@ember/-internals/utils"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"A",{enumerable:!0,get:function(){return t.A}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Array}}),Object.defineProperty(e,"isArray",{enumerable:!0,get:function(){return t.isArray}}),Object.defineProperty(e,"makeArray",{enumerable:!0,get:function(){return r.makeArray}})})),e("@ember/array/mutable",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.MutableArray}})})),e("@ember/array/proxy",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.ArrayProxy}})})),e("@ember/canary-features/index",["exports","@ember/-internals/environment","@ember/polyfills"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.FEATURES=e.EMBER_STRICT_MODE=e.EMBER_NAMED_BLOCKS=e.EMBER_MODERNIZED_BUILT_IN_COMPONENTS=e.EMBER_LIBRARIES_ISREGISTERED=e.EMBER_IMPROVED_INSTRUMENTATION=e.EMBER_GLIMMER_INVOKE_HELPER=e.EMBER_GLIMMER_HELPER_MANAGER=e.EMBER_DYNAMIC_HELPERS_AND_MODIFIERS=e.DEFAULT_FEATURES=void 0,e.isEnabled=function(e){var r=n[e] -return!0===r||!1===r?r:!!t.ENV.ENABLE_OPTIONAL_FEATURES} -var i=e.DEFAULT_FEATURES={EMBER_LIBRARIES_ISREGISTERED:!1,EMBER_IMPROVED_INSTRUMENTATION:!1,EMBER_NAMED_BLOCKS:!0,EMBER_GLIMMER_HELPER_MANAGER:!0,EMBER_GLIMMER_INVOKE_HELPER:!0,EMBER_MODERNIZED_BUILT_IN_COMPONENTS:!0,EMBER_STRICT_MODE:!0,EMBER_DYNAMIC_HELPERS_AND_MODIFIERS:!0},n=e.FEATURES=(0,r.assign)(i,t.ENV.FEATURES) -function s(e){return!(!t.ENV.ENABLE_OPTIONAL_FEATURES||null!==e)||e}e.EMBER_LIBRARIES_ISREGISTERED=s(n.EMBER_LIBRARIES_ISREGISTERED),e.EMBER_IMPROVED_INSTRUMENTATION=s(n.EMBER_IMPROVED_INSTRUMENTATION),e.EMBER_NAMED_BLOCKS=s(n.EMBER_NAMED_BLOCKS),e.EMBER_GLIMMER_HELPER_MANAGER=s(n.EMBER_GLIMMER_HELPER_MANAGER),e.EMBER_GLIMMER_INVOKE_HELPER=s(n.EMBER_GLIMMER_INVOKE_HELPER),e.EMBER_MODERNIZED_BUILT_IN_COMPONENTS=s(n.EMBER_MODERNIZED_BUILT_IN_COMPONENTS),e.EMBER_STRICT_MODE=s(n.EMBER_STRICT_MODE),e.EMBER_DYNAMIC_HELPERS_AND_MODIFIERS=s(n.EMBER_DYNAMIC_HELPERS_AND_MODIFIERS)})),e("@ember/component/checkbox",["exports","@ember/debug","@ember/-internals/glimmer"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return r.Checkbox}})})),e("@ember/component/helper",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Helper}}),Object.defineProperty(e,"helper",{enumerable:!0,get:function(){return t.helper}})})),e("@ember/component/index",["exports","@glimmer/manager","@ember/-internals/glimmer"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Input",{enumerable:!0,get:function(){return r.Input}}),Object.defineProperty(e,"capabilities",{enumerable:!0,get:function(){return r.componentCapabilities}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return r.Component}}),Object.defineProperty(e,"getComponentTemplate",{enumerable:!0,get:function(){return t.getComponentTemplate}}),Object.defineProperty(e,"setComponentManager",{enumerable:!0,get:function(){return r.setComponentManager}}),Object.defineProperty(e,"setComponentTemplate",{enumerable:!0,get:function(){return t.setComponentTemplate}})})),e("@ember/component/template-only",["exports","@glimmer/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.templateOnlyComponent}})})),e("@ember/component/text-area",["exports","@ember/debug","@ember/-internals/glimmer"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return r.TextArea}})})),e("@ember/component/text-field",["exports","@ember/debug","@ember/-internals/glimmer"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return r.TextField}})})),e("@ember/controller/index",["exports","@ember/-internals/runtime","@ember/-internals/metal","@ember/controller/lib/controller_mixin"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.inject=function(){return(0,r.inject)("controller",...arguments)} -var n=t.FrameworkObject.extend(i.default) -e.default=n})),e("@ember/controller/lib/controller_mixin",["exports","@ember/-internals/metal","@ember/-internals/runtime","@ember/-internals/utils"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var n=(0,i.symbol)("MODEL") -e.default=t.Mixin.create(r.ActionHandler,{isController:!0,target:null,store:null,model:(0,t.computed)({get(){return this[n]},set(e,t){return this[n]=t}})})})),e("@ember/debug/container-debug-adapter",["exports","@ember/-internals/extension-support"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.ContainerDebugAdapter}})})),e("@ember/debug/data-adapter",["exports","@ember/-internals/extension-support"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.DataAdapter}})})),e("@ember/debug/index",["exports","@ember/-internals/browser-environment","@ember/error","@ember/debug/lib/deprecate","@ember/debug/lib/testing","@ember/debug/lib/warn","@ember/-internals/utils","@ember/debug/lib/capture-render-tree"],(function(e,t,r,i,n,s,a,o){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.assert=e._warnIfUsingStrippedFeatureFlags=void 0,Object.defineProperty(e,"captureRenderTree",{enumerable:!0,get:function(){return o.default}}),e.info=e.getDebugFunction=e.deprecateFunc=e.deprecate=e.debugSeal=e.debugFreeze=e.debug=void 0,Object.defineProperty(e,"inspect",{enumerable:!0,get:function(){return a.inspect}}),Object.defineProperty(e,"isTesting",{enumerable:!0,get:function(){return n.isTesting}}),Object.defineProperty(e,"registerDeprecationHandler",{enumerable:!0,get:function(){return i.registerHandler}}),Object.defineProperty(e,"registerWarnHandler",{enumerable:!0,get:function(){return s.registerHandler}}),e.setDebugFunction=e.runInDebug=void 0,Object.defineProperty(e,"setTesting",{enumerable:!0,get:function(){return n.setTesting}}),e.warn=void 0 -var l=()=>{},u=(e.assert=l,e.info=l,e.warn=l,e.debug=l,e.deprecate=l,e.debugSeal=l,e.debugFreeze=l,e.runInDebug=l,e.setDebugFunction=l,e.getDebugFunction=l,function(){return arguments[arguments.length-1]}) -e.deprecateFunc=u})),e("@ember/debug/lib/capture-render-tree",["exports","@glimmer/util"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return(0,t.expect)(e.lookup("renderer:-dom"),"BUG: owner is missing renderer").debugRenderTree.capture()}})),e("@ember/debug/lib/deprecate",["exports","@ember/-internals/environment","@ember/debug/index","@ember/debug/lib/handlers"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.missingOptionsUntilDeprecation=e.missingOptionsSinceDeprecation=e.missingOptionsIdDeprecation=e.missingOptionsForDeprecation=e.missingOptionsDeprecation=e.default=e.SINCE_MISSING_DEPRECATIONS=e.FOR_MISSING_DEPRECATIONS=void 0 -var n=()=>{} -e.registerHandler=n -var s=()=>"" -e.missingOptionsForDeprecation=s -var a=()=>"" -e.missingOptionsSinceDeprecation=a -var o=()=>{} -e.FOR_MISSING_DEPRECATIONS=new Set,e.SINCE_MISSING_DEPRECATIONS=new Set,e.default=o})),e("@ember/debug/lib/handlers",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.invoke=e.HANDLERS=void 0 -e.HANDLERS={} -var t=()=>{} -e.registerHandler=t -var r=()=>{} -e.invoke=r})),e("@ember/debug/lib/testing",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.isTesting=function(){return t},e.setTesting=function(e){t=Boolean(e)} -var t=!1})),e("@ember/debug/lib/warn",["exports","@ember/debug/index","@ember/debug/lib/handlers"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.missingOptionsIdDeprecation=e.missingOptionsDeprecation=e.default=void 0 -var i=()=>{} -e.registerHandler=i -var n=()=>{} -e.default=n})),e("@ember/deprecated-features/index",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.SEND_ACTION=e.ROUTER_EVENTS=e.PARTIALS=e.MOUSE_ENTER_LEAVE_MOVE_EVENTS=e.MERGE=e.LOGGER=e.JQUERY_INTEGRATION=e.GLOBALS_RESOLVER=e.FUNCTION_PROTOTYPE_EXTENSIONS=e.EMBER_EXTEND_PROTOTYPES=e.EMBER_COMPONENT_IS_VISIBLE=e.COMPONENT_MANAGER_STRING_LOOKUP=e.APP_CTRL_ROUTER_PROPS=e.ALIAS_METHOD=void 0 -e.SEND_ACTION=!0,e.EMBER_EXTEND_PROTOTYPES=!0,e.LOGGER=!0,e.MERGE=!0,e.ROUTER_EVENTS=!0,e.COMPONENT_MANAGER_STRING_LOOKUP=!0,e.JQUERY_INTEGRATION=!0,e.ALIAS_METHOD=!0,e.APP_CTRL_ROUTER_PROPS=!0,e.FUNCTION_PROTOTYPE_EXTENSIONS=!0,e.MOUSE_ENTER_LEAVE_MOVE_EVENTS=!0,e.EMBER_COMPONENT_IS_VISIBLE=!0,e.PARTIALS=!0,e.GLOBALS_RESOLVER=!0})),e("@ember/destroyable/index",["exports","@glimmer/destroyable"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"assertDestroyablesDestroyed",{enumerable:!0,get:function(){return t.assertDestroyablesDestroyed}}),Object.defineProperty(e,"associateDestroyableChild",{enumerable:!0,get:function(){return t.associateDestroyableChild}}),Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return t.destroy}}),Object.defineProperty(e,"enableDestroyableTracking",{enumerable:!0,get:function(){return t.enableDestroyableTracking}}),Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return t.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return t.isDestroying}}),e.registerDestructor=function(e,r){return(0,t.registerDestructor)(e,r)},e.unregisterDestructor=function(e,r){return(0,t.unregisterDestructor)(e,r)}})),e("@ember/engine/index",["exports","@ember/engine/lib/engine-parent","@ember/-internals/utils","@ember/controller","@ember/-internals/runtime","@ember/-internals/container","dag-map","@ember/debug","@ember/-internals/metal","@ember/application/globals-resolver","@ember/engine/instance","@ember/-internals/routing","@ember/-internals/extension-support","@ember/-internals/views","@ember/-internals/glimmer"],(function(e,t,r,i,n,s,a,o,l,u,c,d,h,p,f){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,Object.defineProperty(e,"getEngineParent",{enumerable:!0,get:function(){return t.getEngineParent}}),Object.defineProperty(e,"setEngineParent",{enumerable:!0,get:function(){return t.setEngineParent}}) -var m=n.Namespace.extend(n.RegistryProxyMixin,{init(){this._super(...arguments),this.buildRegistry()},_initializersRan:!1,ensureInitializers(){this._initializersRan||(this.runInitializers(),this._initializersRan=!0)},buildInstance(e={}){return this.ensureInitializers(),e.base=this,c.default.create(e)},buildRegistry(){return this.__registry__=this.constructor.buildRegistry(this)},initializer(e){this.constructor.initializer(e)},instanceInitializer(e){this.constructor.instanceInitializer(e)},runInitializers(){this._runInitializer("initializers",((e,t)=>{t.initialize(this)}))},runInstanceInitializers(e){this._runInitializer("instanceInitializers",((t,r)=>{r.initialize(e)}))},_runInitializer(e,t){for(var r,i=(0,l.get)(this.constructor,e),n=function(e){var t=[] -for(var r in e)t.push(r) -return t}(i),s=new a.default,o=0;ot(this._bootSync(e))))),this._bootPromise},_bootSync(e){return this._booted||(this.cloneParentDependencies(),this.setupRegistry(e),this.base.runInstanceInitializers(this),this._booted=!0),this},setupRegistry(e=this.__container__.lookup("-environment:main")){this.constructor.setupRegistry(this.__registry__,e)},unregister(e){this.__container__.reset(e),this._super(...arguments)},buildChildEngineInstance(e,t={}){var r=this.lookup(`engine:${e}`) -if(!r)throw new i.default(`You attempted to mount the engine '${e}', but it is not registered with its parent.`) -var n=r.buildInstance(t) -return(0,a.setEngineParent)(n,this),n},cloneParentDependencies(){var e=(0,a.getEngineParent)(this);["route:basic","service:-routing"].forEach((t=>this.register(t,e.resolveRegistration(t)))) -var t=e.lookup("-environment:main") -this.register("-environment:main",t,{instantiate:!1}) -var r=["router:main",n.privatize`-bucket-cache:main`,"-view-registry:main","renderer:-dom","service:-document"] -t.isInteractive&&r.push("event_dispatcher:main"),r.forEach((t=>this.register(t,e.lookup(t),{instantiate:!1}))),this.inject("view","_environment","-environment:main"),this.inject("route","_environment","-environment:main")}}) -o.reopenClass({setupRegistry(e,t){t&&e.injection("view","_environment","-environment:main")}}) -e.default=o})),e("@ember/engine/lib/engine-parent",["exports","@ember/-internals/utils"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.getEngineParent=function(e){return e[r]},e.setEngineParent=function(e,t){e[r]=t} -var r=(0,t.symbol)("ENGINE_PARENT")})),e("@ember/enumerable/index",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Enumerable}})})) -e("@ember/error/index",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=Error})),e("@ember/helper/index",["exports","@glimmer/manager","@glimmer/runtime"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"array",{enumerable:!0,get:function(){return r.array}}),Object.defineProperty(e,"capabilities",{enumerable:!0,get:function(){return t.helperCapabilities}}),Object.defineProperty(e,"concat",{enumerable:!0,get:function(){return r.concat}}),Object.defineProperty(e,"fn",{enumerable:!0,get:function(){return r.fn}}),Object.defineProperty(e,"get",{enumerable:!0,get:function(){return r.get}}),Object.defineProperty(e,"hash",{enumerable:!0,get:function(){return r.hash}}),Object.defineProperty(e,"invokeHelper",{enumerable:!0,get:function(){return r.invokeHelper}}),Object.defineProperty(e,"setHelperManager",{enumerable:!0,get:function(){return t.setHelperManager}})})),e("@ember/instrumentation/index",["exports","@ember/-internals/environment"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._instrumentStart=u,e.flaggedInstrument=void 0,e.instrument=o,e.reset=function(){r.length=0,i={}},e.subscribe=function(e,t){for(var n,s=e.split("."),a=[],o=0;oc)) -return d===l?a.call(o):function(e,t,r,i){try{return e.call(i)}catch(n){throw r.exception=n,n}finally{t()}}(a,d,c,o)}function l(){}function u(e,n,s){if(0===r.length)return l -var o=i[e] -if(o||(o=function(e){for(var t,n=[],s=0;s{e=n.call(this)})) -return(0,i.updateTag)(r,s),(0,i.consumeTag)(s),e}),r} -function s(e,r,i){if(!(0,t.isElementDescriptor)([e,r,i])){i=e -var s=function(e,t,r,s,a){return n(e,t,i)} -return(0,t.setClassicDecorator)(s),s}return n(e,r,i)}(0,t.setClassicDecorator)(s)})),e("@ember/object/computed",["exports","@ember/-internals/metal","@ember/object/lib/computed/computed_macros","@ember/object/lib/computed/reduce_computed_macros"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"alias",{enumerable:!0,get:function(){return t.alias}}),Object.defineProperty(e,"and",{enumerable:!0,get:function(){return r.and}}),Object.defineProperty(e,"bool",{enumerable:!0,get:function(){return r.bool}}),Object.defineProperty(e,"collect",{enumerable:!0,get:function(){return i.collect}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.ComputedProperty}}),Object.defineProperty(e,"deprecatingAlias",{enumerable:!0,get:function(){return r.deprecatingAlias}}),Object.defineProperty(e,"empty",{enumerable:!0,get:function(){return r.empty}}),Object.defineProperty(e,"equal",{enumerable:!0,get:function(){return r.equal}}),Object.defineProperty(e,"expandProperties",{enumerable:!0,get:function(){return t.expandProperties}}),Object.defineProperty(e,"filter",{enumerable:!0,get:function(){return i.filter}}),Object.defineProperty(e,"filterBy",{enumerable:!0,get:function(){return i.filterBy}}),Object.defineProperty(e,"gt",{enumerable:!0,get:function(){return r.gt}}),Object.defineProperty(e,"gte",{enumerable:!0,get:function(){return r.gte}}),Object.defineProperty(e,"intersect",{enumerable:!0,get:function(){return i.intersect}}),Object.defineProperty(e,"lt",{enumerable:!0,get:function(){return r.lt}}),Object.defineProperty(e,"lte",{enumerable:!0,get:function(){return r.lte}}),Object.defineProperty(e,"map",{enumerable:!0,get:function(){return i.map}}),Object.defineProperty(e,"mapBy",{enumerable:!0,get:function(){return i.mapBy}}),Object.defineProperty(e,"match",{enumerable:!0,get:function(){return r.match}}),Object.defineProperty(e,"max",{enumerable:!0,get:function(){return i.max}}),Object.defineProperty(e,"min",{enumerable:!0,get:function(){return i.min}}),Object.defineProperty(e,"none",{enumerable:!0,get:function(){return r.none}}),Object.defineProperty(e,"not",{enumerable:!0,get:function(){return r.not}}),Object.defineProperty(e,"notEmpty",{enumerable:!0,get:function(){return r.notEmpty}}),Object.defineProperty(e,"oneWay",{enumerable:!0,get:function(){return r.oneWay}}),Object.defineProperty(e,"or",{enumerable:!0,get:function(){return r.or}}),Object.defineProperty(e,"readOnly",{enumerable:!0,get:function(){return r.readOnly}}),Object.defineProperty(e,"reads",{enumerable:!0,get:function(){return r.oneWay}}),Object.defineProperty(e,"setDiff",{enumerable:!0,get:function(){return i.setDiff}}) -Object.defineProperty(e,"sort",{enumerable:!0,get:function(){return i.sort}}),Object.defineProperty(e,"sum",{enumerable:!0,get:function(){return i.sum}}),Object.defineProperty(e,"union",{enumerable:!0,get:function(){return i.union}}),Object.defineProperty(e,"uniq",{enumerable:!0,get:function(){return i.uniq}}),Object.defineProperty(e,"uniqBy",{enumerable:!0,get:function(){return i.uniqBy}})})),e("@ember/object/core",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.CoreObject}})})),e("@ember/object/evented",["exports","@ember/-internals/runtime","@ember/-internals/metal"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Evented}}),Object.defineProperty(e,"on",{enumerable:!0,get:function(){return r.on}})})),e("@ember/object/events",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"addListener",{enumerable:!0,get:function(){return t.addListener}}),Object.defineProperty(e,"removeListener",{enumerable:!0,get:function(){return t.removeListener}}),Object.defineProperty(e,"sendEvent",{enumerable:!0,get:function(){return t.sendEvent}})})),e("@ember/object/index",["exports","@ember/debug","@ember/polyfills","@ember/-internals/metal","@ember/-internals/overrides","@ember/-internals/runtime","@ember/object/computed"],(function(e,t,r,i,n,s,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.action=u,Object.defineProperty(e,"aliasMethod",{enumerable:!0,get:function(){return i.aliasMethod}}),Object.defineProperty(e,"computed",{enumerable:!0,get:function(){return i.computed}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return s.Object}}),Object.defineProperty(e,"defineProperty",{enumerable:!0,get:function(){return i.defineProperty}}),Object.defineProperty(e,"get",{enumerable:!0,get:function(){return i.get}}),Object.defineProperty(e,"getProperties",{enumerable:!0,get:function(){return i.getProperties}}),Object.defineProperty(e,"getWithDefault",{enumerable:!0,get:function(){return i.getWithDefault}}),Object.defineProperty(e,"notifyPropertyChange",{enumerable:!0,get:function(){return i.notifyPropertyChange}}),Object.defineProperty(e,"observer",{enumerable:!0,get:function(){return i.observer}}),Object.defineProperty(e,"set",{enumerable:!0,get:function(){return i.set}}),Object.defineProperty(e,"setProperties",{enumerable:!0,get:function(){return i.setProperties}}),Object.defineProperty(e,"trySet",{enumerable:!0,get:function(){return i.trySet}}),i.computed.alias=a.alias,i.computed.and=a.and,i.computed.bool=a.bool,i.computed.collect=a.collect,i.computed.deprecatingAlias=a.deprecatingAlias,i.computed.empty=a.empty,i.computed.equal=a.equal,i.computed.filterBy=a.filterBy,i.computed.filter=a.filter,i.computed.gte=a.gte,i.computed.gt=a.gt,i.computed.intersect=a.intersect,i.computed.lte=a.lte,i.computed.lt=a.lt,i.computed.mapBy=a.mapBy,i.computed.map=a.map,i.computed.match=a.match,i.computed.max=a.max,i.computed.min=a.min,i.computed.none=a.none,i.computed.notEmpty=a.notEmpty,i.computed.not=a.not,i.computed.oneWay=a.oneWay,i.computed.reads=a.oneWay,i.computed.or=a.or,i.computed.readOnly=a.readOnly,i.computed.setDiff=a.setDiff,i.computed.sort=a.sort,i.computed.sum=a.sum,i.computed.union=a.union -i.computed.uniqBy=a.uniqBy,i.computed.uniq=a.uniq -var o=new WeakMap -function l(e,t,i){if(void 0!==e.constructor&&"function"==typeof e.constructor.proto&&e.constructor.proto(),!Object.prototype.hasOwnProperty.call(e,"actions")){var n=e.actions -e.actions=n?(0,r.assign)({},n):{}}return e.actions[t]=i,{get(){var e=o.get(this) -void 0===e&&(e=new Map,o.set(this,e)) -var t=e.get(i) -return void 0===t&&(t=i.bind(this),e.set(i,t)),t}}}function u(e,t,r){var n -if(!(0,i.isElementDescriptor)([e,t,r])){n=e -var s=function(e,t,r,i,s){return l(e,t,n)} -return(0,i.setClassicDecorator)(s),s}return l(e,t,n=r.value)}(0,i.setClassicDecorator)(u)})),e("@ember/object/internals",["exports","@ember/-internals/metal","@ember/-internals/runtime","@ember/-internals/utils"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"cacheFor",{enumerable:!0,get:function(){return t.getCachedValueFor}}),Object.defineProperty(e,"copy",{enumerable:!0,get:function(){return r.copy}}),Object.defineProperty(e,"guidFor",{enumerable:!0,get:function(){return i.guidFor}})})),e("@ember/object/lib/computed/computed_macros",["exports","@ember/-internals/metal","@ember/debug"],(function(e,t,r){"use strict" -function i(e,r){return(...e)=>{var i=function(e,r){var i=[] -function n(e){i.push(e)}for(var s=0;sr}))},e.gte=function(e,r){return(0,t.computed)(e,(function(){return(0,t.get)(this,e)>=r}))},e.lt=function(e,r){return(0,t.computed)(e,(function(){return(0,t.get)(this,e)e)),e.or=i(0,(e=>!e))})),e("@ember/object/lib/computed/reduce_computed_macros",["exports","@ember/debug","@ember/-internals/metal","@ember/-internals/runtime"],(function(e,t,r,i){"use strict" -function n(e,t,i,n){return(0,r.computed)(`${e}.[]`,(function(){var n=(0,r.get)(this,e) -return null===n||"object"!=typeof n?i:n.reduce(t,i,this)})).readOnly()}function s(e,t,n){var s -return/@each/.test(e)?s=e.replace(/\.@each.*$/,""):(s=e,e+=".[]"),(0,r.computed)(e,...t,(function(){var e=(0,r.get)(this,s) -return(0,i.isArray)(e)?(0,i.A)(n.call(this,e)):(0,i.A)()})).readOnly()}function a(e,t,n){var s=e.map((e=>`${e}.[]`)) -return(0,r.computed)(...s,(function(){return(0,i.A)(t.call(this,e))})).readOnly()}function o(e,t,r){return void 0===r&&"function"==typeof t&&(r=t,t=[]),s(e,t,(function(e){return e.map(r,this)}))}function l(e,t,r){return void 0===r&&"function"==typeof t&&(r=t,t=[]),s(e,t,(function(e){return e.filter(r,this)}))}function u(...e){return a(e,(function(e){var t=(0,i.A)(),n=new Set -return e.forEach((e=>{var s=(0,r.get)(this,e);(0,i.isArray)(s)&&s.forEach((e=>{n.has(e)||(n.add(e),t.push(e))}))})),t}))}Object.defineProperty(e,"__esModule",{value:!0}),e.collect=function(...e){return a(e,(function(){var t=e.map((e=>{var t=(0,r.get)(this,e) -return void 0===t?null:t})) -return(0,i.A)(t)}),"collect")},e.filter=l,e.filterBy=function(e,t,i){var n -n=2===arguments.length?e=>(0,r.get)(e,t):e=>(0,r.get)(e,t)===i -return l(`${e}.@each.${t}`,n)},e.intersect=function(...e){return a(e,(function(e){var t=e.map((e=>{var t=(0,r.get)(this,e) -return(0,i.isArray)(t)?t:[]})),n=t.pop().filter((e=>{for(var r=0;r(0,r.get)(e,t)))},e.max=function(e){return n(e,((e,t)=>Math.max(e,t)),-1/0,"max")},e.min=function(e){return n(e,((e,t)=>Math.min(e,t)),1/0,"min")},e.setDiff=function(e,t){return(0,r.computed)(`${e}.[]`,`${t}.[]`,(function(){var n=(0,r.get)(this,e),s=(0,r.get)(this,t) -return(0,i.isArray)(n)?(0,i.isArray)(s)?n.filter((e=>-1===s.indexOf(e))):(0,i.A)(n):(0,i.A)()})).readOnly()},e.sort=function(e,t,n){void 0!==n||Array.isArray(t)||(n=t,t=[]) -return"function"==typeof n?function(e,t,r){return s(e,t,(function(e){return e.slice().sort(((e,t)=>r.call(this,e,t)))}))}(e,t,n):function(e,t){var n=(0,r.autoComputed)((function(n){var s=(0,r.get)(this,t),a="@this"===e,o=function(e){return e.map((e=>{var[t,r]=e.split(":") -return[t,r=r||"asc"]}))}(s),l=a?this:(0,r.get)(this,e) -return(0,i.isArray)(l)?0===o.length?(0,i.A)(l.slice()):function(e,t){return(0,i.A)(e.slice().sort(((e,n)=>{for(var s=0;se+t),0,"sum")},e.union=void 0,e.uniq=u,e.uniqBy=function(e,t){return(0,r.computed)(`${e}.[]`,(function(){var n=(0,r.get)(this,e) -return(0,i.isArray)(n)?(0,i.uniqBy)(n,t):(0,i.A)()})).readOnly()} -e.union=u})),e("@ember/object/mixin",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Mixin}})})),e("@ember/object/observable",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Observable}})})),e("@ember/object/observers",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"addObserver",{enumerable:!0,get:function(){return t.addObserver}}),Object.defineProperty(e,"removeObserver",{enumerable:!0,get:function(){return t.removeObserver}})})),e("@ember/object/promise-proxy-mixin",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.PromiseProxyMixin}})})),e("@ember/object/proxy",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.ObjectProxy}})})),e("@ember/polyfills/index",["exports","@ember/deprecated-features","@ember/polyfills/lib/merge","@ember/polyfills/lib/assign"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"assign",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"assignPolyfill",{enumerable:!0,get:function(){return i.assign}}),e.merge=e.hasPropertyAccessors=void 0 -e.merge=t.MERGE?r.default:void 0,e.hasPropertyAccessors=!0})),e("@ember/polyfills/lib/assign",["exports"],(function(e){"use strict" -function t(e){for(var t=1;t(...t)=>h(...e.concat(t)) -function f(){c.begin()}function m(){c.end()}function g(){return c.schedule(...arguments)}function b(){return c.hasTimers()}function v(){c.cancelTimers()}function y(){return c.later(...arguments)}function _(...e){return e.unshift("actions"),c.scheduleOnce(...e)}function E(){return c.scheduleOnce(...arguments)}function R(...e){return e.push(1),c.later(...e)}function O(e){return c.cancel(e)}function w(){return c.debounce(...arguments)}function T(){return c.throttle(...arguments)}e.bind=p,d.backburner=c,d.begin=f,d.bind=p,d.cancel=O,d.debounce=w,d.end=m,d.hasScheduledTimers=b,d.join=h,d.later=y,d.next=R,d.once=_,d.schedule=g,d.scheduleOnce=E,d.throttle=T,d.cancelTimers=v,Object.defineProperty(d,"currentRunLoop",{get:o,enumerable:!1})})),e("@ember/service/index",["exports","@ember/-internals/runtime","@ember/-internals/metal"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.inject=function(){return(0,r.inject)("service",...arguments)} -var i=t.FrameworkObject.extend() -i.reopenClass({isServiceFactory:!0}) -e.default=i})),e("@ember/string/index",["exports","@ember/string/lib/string_registry","@ember/-internals/environment","@ember/-internals/utils","@ember/debug","@ember/-internals/glimmer"],(function(e,t,r,i,n,s){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"_getStrings",{enumerable:!0,get:function(){return t.getStrings}}),Object.defineProperty(e,"_setStrings",{enumerable:!0,get:function(){return t.setStrings}}),e.camelize=P,e.capitalize=C,e.classify=A,e.dasherize=T,e.decamelize=w,e.htmlSafe=function(e){return k("htmlSafe"),(0,s.htmlSafe)(e)},e.isHTMLSafe=function(e){return k("isHTMLSafe"),(0,s.isHTMLSafe)(e)},e.loc=R,e.underscore=S,e.w=O -var a=/[ _]/g,o=new i.Cache(1e3,(e=>w(e).replace(a,"-"))),l=/(-|_|\.|\s)+(.)?/g,u=/(^|\/)([A-Z])/g,c=new i.Cache(1e3,(e=>e.replace(l,((e,t,r)=>r?r.toUpperCase():"")).replace(u,(e=>e.toLowerCase())))),d=/^(-|_)+(.)?/,h=/(.)(-|_|\.|\s)+(.)?/g,p=/(^|\/|\.)([a-z])/g,f=new i.Cache(1e3,(e=>{for(var t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,i)=>t+(i?i.toUpperCase():""),i=e.split("/"),n=0;ne.toUpperCase()))})),m=/([a-z\d])([A-Z]+)/g,g=/-|\s+/g,b=new i.Cache(1e3,(e=>e.replace(m,"$1_$2").replace(g,"_").toLowerCase())),v=/(^|\/)([a-z\u00C0-\u024F])/g,y=new i.Cache(1e3,(e=>e.replace(v,(e=>e.toUpperCase())))),_=/([a-z\d])([A-Z])/g,E=new i.Cache(1e3,(e=>e.replace(_,"$1_$2").toLowerCase())) -function R(e,r){return(!Array.isArray(r)||arguments.length>2)&&(r=Array.prototype.slice.call(arguments,1)),function(e,t){var r=0 -return e.replace(/%@([0-9]+)?/g,((e,i)=>{var n=i?parseInt(i,10)-1:r++,s=n{throw new Error("Attempted to use test utilities, but `ember-testing` was not included")} -e.registerAsyncHelper=i,e.registerHelper=i,e.registerWaiter=i,e.unregisterHelper=i,e.unregisterWaiter=i}})),e("@ember/utils/index",["exports","@ember/-internals/metal","@ember/-internals/utils","@ember/-internals/runtime"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"compare",{enumerable:!0,get:function(){return i.compare}}),Object.defineProperty(e,"isBlank",{enumerable:!0,get:function(){return t.isBlank}}),Object.defineProperty(e,"isEmpty",{enumerable:!0,get:function(){return t.isEmpty}}),Object.defineProperty(e,"isEqual",{enumerable:!0,get:function(){return i.isEqual}}),Object.defineProperty(e,"isNone",{enumerable:!0,get:function(){return t.isNone}}),Object.defineProperty(e,"isPresent",{enumerable:!0,get:function(){return t.isPresent}}),Object.defineProperty(e,"tryInvoke",{enumerable:!0,get:function(){return r.tryInvoke}}),Object.defineProperty(e,"typeOf",{enumerable:!0,get:function(){return i.typeOf}})})),e("@ember/version/index",["exports","ember/version"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"VERSION",{enumerable:!0,get:function(){return t.default}})})),e("@glimmer/destroyable",["exports","@glimmer/util","@glimmer/global-context"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._hasDestroyableChildren=function(e){var t=i.get(e) -return void 0!==t&&null!==t.children},e.assertDestroyablesDestroyed=void 0,e.associateDestroyableChild=function(e,t){0 -var r=o(e),i=o(t) -return r.children=n(r.children,t),i.parents=n(i.parents,e),t},e.destroy=l,e.destroyChildren=function(e){var{children:t}=o(e) -s(t,l)},e.enableDestroyableTracking=void 0,e.isDestroyed=function(e){var t=i.get(e) -return void 0!==t&&t.state>=2},e.isDestroying=u,e.registerDestructor=function(e,t,r=!1){0 -var i=o(e),s=!0===r?"eagerDestructors":"destructors" -return i[s]=n(i[s],t),t},e.unregisterDestructor=function(e,t,r=!1){0 -var i=o(e),n=!0===r?"eagerDestructors":"destructors" -i[n]=a(i[n],t,!1)} -var i=new WeakMap -function n(e,t){return null===e?t:Array.isArray(e)?(e.push(t),e):[e,t]}function s(e,t){if(Array.isArray(e))for(var r=0;r1){var i=e.indexOf(t) -return e.splice(i,1),e}return null}function o(e){var t=i.get(e) -return void 0===t&&(t={parents:null,children:null,eagerDestructors:null,destructors:null,state:0},i.set(e,t)),t}function l(e){var t=o(e) -if(!(t.state>=1)){var{parents:i,children:n,eagerDestructors:u,destructors:c}=t -t.state=1,s(n,l),s(u,(t=>t(e))),s(c,(t=>(0,r.scheduleDestroy)(e,t))),(0,r.scheduleDestroyed)((()=>{s(i,(t=>function(e,t){var r=o(t) -0===r.state&&(r.children=a(r.children,e))}(e,t))),t.state=2}))}}function u(e){var t=i.get(e) -return void 0!==t&&t.state>=1}})),e("@glimmer/encoder",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.InstructionEncoderImpl=void 0 -e.InstructionEncoderImpl=class{constructor(e){this.buffer=e,this.size=0}encode(e,t){if(e>255)throw new Error(`Opcode type over 8-bits. Got ${e}.`) -var r=e|t|arguments.length-2<<8 -this.buffer.push(r) -for(var i=2;i{} -e.scheduleRevalidate=t -e.default=function(r){e.scheduleRevalidate=t=r.scheduleRevalidate,e.scheduleDestroy=r.scheduleDestroy,e.scheduleDestroyed=r.scheduleDestroyed,e.toIterator=r.toIterator,e.toBool=r.toBool,e.getProp=r.getProp,e.setProp=r.setProp,e.getPath=r.getPath,e.setPath=r.setPath,e.warnIfStyleNotTrusted=r.warnIfStyleNotTrusted,e.assert=r.assert,e.deprecate=r.deprecate}})),e("@glimmer/low-level",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.Storage=e.Stack=void 0 -e.Storage=class{constructor(){this.array=[],this.next=0}add(e){var{next:t,array:r}=this -if(t===r.length)this.next++ -else{var i=r[t] -this.next=i}return this.array[t]=e,t}deref(e){return this.array[e]}drop(e){this.array[e]=this.next,this.next=e}} -class t{constructor(e=[]){this.vec=e}clone(){return new t(this.vec.slice())}sliceFrom(e){return new t(this.vec.slice(e))}slice(e,r){return new t(this.vec.slice(e,r))}copy(e,t){this.vec[t]=this.vec[e]}writeRaw(e,t){this.vec[e]=t}getRaw(e){return this.vec[e]}reset(){this.vec.length=0}len(){return this.vec.length}}e.Stack=t})),e("@glimmer/manager",["exports","@glimmer/util","@glimmer/reference","@glimmer/validator","@glimmer/destroyable","@glimmer/owner"],(function(e,t,r,i,n,s){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.CustomModifierManager=e.CustomHelperManager=e.CustomComponentManager=void 0,e.capabilityFlagsFrom=function(e){return(e.dynamicLayout?1:0)|(e.dynamicTag?2:0)|(e.prepareArgs?4:0)|(e.createArgs?8:0)|(e.attributeHook?16:0)|(e.elementHook?32:0)|(e.dynamicScope?64:0)|(e.createCaller?128:0)|(e.updateHook?256:0)|(e.createInstance?512:0)|(e.wrapped?1024:0)|(e.willDestroy?2048:0)|(e.hasSubOwner?4096:0)},e.componentCapabilities=function(e,t={}){0 -var r=!0 -"3.13"===e&&(r=Boolean(t.updateHook)) -return m({asyncLifeCycleCallbacks:Boolean(t.asyncLifecycleCallbacks),destructor:Boolean(t.destructor),updateHook:r})},e.getComponentTemplate=function(e){var t=e -for(;null!==t;){var r=D.get(t) -if(void 0!==r)return r -t=N(t)}return},e.getCustomTagFor=function(e){return b.get(e)},e.getInternalComponentManager=function(e,t){0 -var r=d(a,e) -if(void 0===r&&!0===t)return null -return r},e.getInternalHelperManager=function(e,t){0 -var r=d(l,e) -if(void 0===r&&!0===t)return null -return r},e.getInternalModifierManager=function(e,t){0 -var r=d(o,e) -if(void 0===r&&!0===t)return null -return r},e.hasCapability=function(e,t){return!!(e&t)},e.hasDestroyable=j,e.hasInternalComponentManager=function(e){return void 0!==d(a,e)},e.hasInternalHelperManager=function(e){return void 0!==d(l,e)},e.hasInternalModifierManager=function(e){return void 0!==d(o,e)},e.hasValue=M,e.helperCapabilities=function(e,t={}){0 -0 -0 -return m({hasValue:Boolean(t.hasValue),hasDestroyable:Boolean(t.hasDestroyable),hasScheduledEffect:Boolean(t.hasScheduledEffect)})},e.managerHasCapability=function(e,t,r){return!!(t&r)},e.modifierCapabilities=function(e,t={}){0 -return m({disableAutoTracking:Boolean(t.disableAutoTracking),useArgsProxy:"3.13"!==e,passFactoryToCreate:"3.13"===e})},e.setComponentManager=function(e,t){return f(new A(e),t)},e.setComponentTemplate=function(e,t){0 -0 -return D.set(t,e),t},e.setCustomTagFor=v,e.setHelperManager=function(e,t){return p(new x(e),t)},e.setInternalComponentManager=f,e.setInternalHelperManager=p,e.setInternalModifierManager=h,e.setModifierManager=function(e,t){return h(new C(e),t)} -var a=new WeakMap,o=new WeakMap,l=new WeakMap,u=Object.getPrototypeOf -function c(e,t,r){return e.set(r,t),r}function d(e,t){for(var r=t;null!=r;){var i=e.get(r) -if(void 0!==i)return i -r=u(r)}}function h(e,t){return c(o,e,t)}function p(e,t){return c(l,e,t)}function f(e,t){return c(a,e,t)}function m(e){return e}var g,b=new WeakMap -function v(e,t){b.set(e,t)}function y(e){if("symbol"==typeof e)return null -var t=Number(e) -return isNaN(t)?null:t%1==0?t:null}function _(e,t){return(0,i.track)((()=>{t in e&&(0,r.valueForRef)(e[t])}))}function E(e,t){return(0,i.track)((()=>{"[]"===t&&e.forEach(r.valueForRef) -var i=y(t) -null!==i&&i{var{named:r,positional:i}=e,n=new R(r),s=new O(i),a=Object.create(null),o=new Proxy(a,n),l=new Proxy([],s) -return v(o,((e,t)=>_(r,t))),v(l,((e,t)=>E(i,t))),{named:o,positional:l}}:(e,t)=>{var{named:i,positional:n}=e,s={},a=[] -return v(s,((e,t)=>_(i,t))),v(a,((e,t)=>E(n,t))),Object.keys(i).forEach((e=>{Object.defineProperty(s,e,{enumerable:!0,configurable:!0,get:()=>(0,r.valueForRef)(i[e])})})),n.forEach(((e,t)=>{Object.defineProperty(a,t,{enumerable:!0,configurable:!0,get:()=>(0,r.valueForRef)(e)})})),{named:s,positional:a}} -var w={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -function T(e){return e.capabilities.asyncLifeCycleCallbacks}function P(e){return e.capabilities.updateHook}class A{constructor(e){this.factory=e,this.componentManagerDelegates=new WeakMap}getDelegateFor(e){var{componentManagerDelegates:t}=this,r=t.get(e) -if(void 0===r){var{factory:i}=this -r=i(e),t.set(e,r)}return r}create(e,t,r){var i,n=this.getDelegateFor(e),s=g(r.capture(),"component") -return i=n.createComponent(t,s),new S(i,n,s)}getDebugName(e){return"function"==typeof e?e.name:e.toString()}update(e){var{delegate:t}=e -if(P(t)){var{component:r,args:i}=e -t.updateComponent(r,i)}}didCreate({component:e,delegate:t}){T(t)&&t.didCreateComponent(e)}didUpdate({component:e,delegate:t}){(function(e){return T(e)&&P(e)})(t)&&t.didUpdateComponent(e)}didRenderLayout(){}didUpdateLayout(){}getSelf({component:e,delegate:t}){return(0,r.createConstRef)(t.getContext(e),"this")}getDestroyable(e){var{delegate:t}=e -if(function(e){return e.capabilities.destructor}(t)){var{component:r}=e -return(0,n.registerDestructor)(e,(()=>t.destroyComponent(r))),e}return null}getCapabilities(){return w}}e.CustomComponentManager=A -class S{constructor(e,t,r){this.component=e,this.delegate=t,this.args=r}}class C{constructor(e){this.factory=e,this.componentManagerDelegates=new WeakMap}getDelegateFor(e){var{componentManagerDelegates:t}=this,r=t.get(e) -if(void 0===r){var{factory:i}=this -r=i(e),t.set(e,r)}return r}create(e,r,a,o){var l,u=this.getDelegateFor(e),{useArgsProxy:c,passFactoryToCreate:d}=u.capabilities,h=g(o,"modifier"),p=c?h:k(o),f=a -d&&(f={create(r){var i=(0,t.assign)({},r) -return(0,s.setOwner)(i,e),a.create(r)},class:a}),l=u.createModifier(f,p) -var m,b=(0,i.createUpdatableTag)() -return m=c?{tag:b,element:r,delegate:u,args:p,modifier:l}:{tag:b,element:r,modifier:l,delegate:u,get args(){return k(o)}},(0,n.registerDestructor)(m,(()=>u.destroyModifier(l,h))),m}getDebugName({debugName:e}){return e}getTag({tag:e}){return e}install({element:e,args:t,modifier:r,delegate:n}){var{capabilities:s}=n -!0===s.disableAutoTracking?(0,i.untrack)((()=>n.installModifier(r,e,t))):n.installModifier(r,e,t)}update({args:e,modifier:t,delegate:r}){var{capabilities:n}=r -!0===n.disableAutoTracking?(0,i.untrack)((()=>r.updateModifier(t,e))):r.updateModifier(t,e)}getDestroyable(e){return e}}function k({named:e,positional:i}){var n=(0,t.dict)() -for(var s in e)n[s]=(0,r.valueForRef)(e[s]) -return{named:n,positional:i.map(r.valueForRef)}}function M(e){return e.capabilities.hasValue}function j(e){return e.capabilities.hasDestroyable}e.CustomModifierManager=C -class x{constructor(e){this.factory=e,this.helperManagerDelegates=new WeakMap,this.undefinedDelegate=null}getDelegateForOwner(e){var t=this.helperManagerDelegates.get(e) -if(void 0===t){var{factory:r}=this -t=r(e),this.helperManagerDelegates.set(e,t)}return t}getDelegateFor(e){if(void 0===e){var{undefinedDelegate:t}=this -if(null===t){var{factory:r}=this -this.undefinedDelegate=t=r(void 0)}return t}return this.getDelegateForOwner(e)}getHelper(e){return(t,i)=>{var s=this.getDelegateFor(i),a=g(t,"helper"),o=s.createHelper(e,a) -if(M(s)){var l=(0,r.createComputeRef)((()=>s.getValue(o)),null,!1) -return j(s)&&(0,n.associateDestroyableChild)(l,s.getDestroyable(o)),l}if(j(s)){var u=(0,r.createConstRef)(void 0,!1) -return(0,n.associateDestroyableChild)(u,s.getDestroyable(o)),u}return r.UNDEFINED_REFERENCE}}}e.CustomHelperManager=x -var D=new WeakMap,N=Object.getPrototypeOf})),e("@glimmer/node",["exports","@glimmer/runtime","@simple-dom/document"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.NodeDOMTreeConstruction=void 0,e.serializeBuilder=function(e,t){return s.forInitialRender(e,t)} -class i extends t.DOMTreeConstruction{constructor(e){super(e||(0,r.default)())}setupUselessElement(){}insertHTMLBefore(e,r,i){var n=this.document.createRawHTMLSection(i) -return e.insertBefore(n,r),new t.ConcreteBounds(e,n,n)}createElement(e){return this.document.createElement(e)}setAttribute(e,t,r){e.setAttribute(t,r)}}e.NodeDOMTreeConstruction=i -var n=new WeakMap -class s extends t.NewElementBuilder{constructor(){super(...arguments),this.serializeBlockDepth=0}__openBlock(){var{tagName:e}=this.element -if("TITLE"!==e&&"SCRIPT"!==e&&"STYLE"!==e){var t=this.serializeBlockDepth++ -this.__appendComment(`%+b:${t}%`)}super.__openBlock()}__closeBlock(){var{tagName:e}=this.element -if(super.__closeBlock(),"TITLE"!==e&&"SCRIPT"!==e&&"STYLE"!==e){var t=--this.serializeBlockDepth -this.__appendComment(`%-b:${t}%`)}}__appendHTML(e){var{tagName:r}=this.element -if("TITLE"===r||"SCRIPT"===r||"STYLE"===r)return super.__appendHTML(e) -var i=this.__appendComment("%glmr%") -if("TABLE"===r){var n=e.indexOf("<") -if(n>-1)"tr"===e.slice(n+1,n+3)&&(e=`${e}`)}""===e?this.__appendComment("% %"):super.__appendHTML(e) -var s=this.__appendComment("%glmr%") -return new t.ConcreteBounds(this.element,i,s)}__appendText(e){var{tagName:t}=this.element,r=function(e){var{element:t,nextSibling:r}=e -return null===r?t.lastChild:r.previousSibling}(this) -return"TITLE"===t||"SCRIPT"===t||"STYLE"===t?super.__appendText(e):""===e?this.__appendComment("% %"):(r&&3===r.nodeType&&this.__appendComment("%|%"),super.__appendText(e))}closeElement(){return n.has(this.element)&&(n.delete(this.element),super.closeElement()),super.closeElement()}openElement(e){return"tr"===e&&"TBODY"!==this.element.tagName&&"THEAD"!==this.element.tagName&&"TFOOT"!==this.element.tagName&&(this.openElement("tbody"),n.set(this.constructing,!0),this.flushElement(null)),super.openElement(e)}pushRemoteElement(e,t,r=null){var{dom:i}=this,n=i.createElement("script") -return n.setAttribute("glmr",t),i.insertBefore(e,n,r),super.pushRemoteElement(e,t,r)}}})),e("@glimmer/opcode-compiler",["exports","@glimmer/util","@glimmer/vm","@glimmer/global-context","@glimmer/manager","@glimmer/encoder"],(function(e,t,r,i,n,s){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.WrappedBuilder=e.StdLib=e.PartialDefinitionImpl=e.MINIMAL_CAPABILITIES=e.EMPTY_BLOCKS=e.DEFAULT_CAPABILITIES=e.CompileTimeCompilationContextImpl=void 0,e.compilable=ee,e.compileStatements=te,e.compileStd=ae,e.debugCompiler=void 0,e.invokeStaticBlock=D,e.invokeStaticBlockWithStack=N,e.meta=P,e.programCompilationContext=function(e,t){return new ue(e,t)},e.templateCacheCounters=void 0,e.templateCompilationContext=W,e.templateFactory=function({id:e,moduleName:t,block:r,scope:i,isStrictMode:n}){var s,a=e||"client-"+de++,o=null,l=new WeakMap,u=e=>{if(void 0===s&&(s=JSON.parse(r)),void 0===e)return null===o?(he.cacheMiss++,o=new pe({id:a,block:s,moduleName:t,owner:null,scope:i,isStrictMode:n})):he.cacheHit++,o -var u=l.get(e) -return void 0===u?(he.cacheMiss++,u=new pe({id:a,block:s,moduleName:t,owner:e,scope:i,isStrictMode:n}),l.set(e,u)):he.cacheHit++,u} -return u.__id=a,u.__meta={moduleName:t},u} -class a{constructor(e){this.blocks=e,this.names=e?Object.keys(e):[]}get(e){return this.blocks&&this.blocks[e]||null}has(e){var{blocks:t}=this -return null!==t&&e in t}with(e,r){var{blocks:i}=this -return new a(i?(0,t.assign)({},i,{[e]:r}):{[e]:r})}get hasAny(){return null!==this.blocks}}var o=e.EMPTY_BLOCKS=new a(null) -function l(e){if(null===e)return o -for(var r=(0,t.dict)(),[i,n]=e,s=0;s{if(!function(e){return Array.isArray(e)&&2===e.length}(t))return!1 -var r=t[0] -return 31===r||32===r||r===e}}var f=p(39),m=p(38),g=p(37),b=p(35),v=p(34) -function y(e,t,r,i,n){var{upvars:s}=r,a=s[e[1]],o=t.lookupBuiltInHelper(a) -return i.helper(o,a)}class _{constructor(){this.names={},this.funcs=[]}add(e,t){this.names[e]=this.funcs.push(t)-1}compile(e,t){var r=t[0],i=this.names[r];(0,this.funcs[i])(e,t)}}var E=new _ -function R(e,t){if(void 0!==t&&0!==t.length)for(var r=0;r=0;a--){var o=i[a] -e(1e3,o.label),e(34,1),o.callback(),0!==a&&e(4,u("END"))}e(1e3,"END"),e(1002),e(70)}function L(e,t,r){e(1001),e(0),e(6,u("ENDINITIAL")),e(69,t()),r(),e(1e3,"FINALLY"),e(70),e(5),e(1e3,"ENDINITIAL"),e(1),e(1002)}function z(e,t,r,i){return L(e,t,(()=>{e(66,u("ELSE")),r(),e(4,u("FINALLY")),e(1e3,"ELSE"),void 0!==i&&i()}))}E.add(29,((e,[,t])=>{for(var r of t)O(e,r) -e(27,t.length)})),E.add(28,((e,[,t,r,i])=>{g(t)?e(1005,t,(t=>{k(e,t,r,i)})):(O(e,t),M(e,r,i))})),E.add(50,((e,[,t,i,n,s])=>{(function(e,t,i,n,s){e(0),w(e,n,s,!1),e(86),O(e,i),e(77,t,{type:2,value:void 0}),e(1),e(36,r.$v0)})(e,i,t,n,s)})),E.add(30,((e,[,t,r])=>{e(21,t),R(e,r)})),E.add(32,((e,[,t,r])=>{e(1011,t,(t=>{e(29,t),R(e,r)}))})),E.add(31,((e,[,t,r])=>{e(1009,t,(e=>{}))})),E.add(33,((e,[,t,r])=>{e(1010,t,((t,r)=>{e(21,0),e(22,t)})),R(e,r)})),E.add(34,(()=>{throw new Error("unimplemented opcode")})),E.add(36,((e,t)=>{e(1010,t[1],(r=>{e(1006,t,{ifHelper:t=>{k(e,t,null,null)},ifFallback:(t,r)=>{e(21,0),e(22,t)}})}))})),E.add(99,((e,t)=>{e(1010,t[1],(r=>{e(1006,t,{ifHelper:(r,i,n)=>{t[2][0] -k(e,r,null,null)},ifFallback:(t,r)=>{e(21,0),e(22,t)}})}))})),E.add(27,(e=>S(e,void 0))),E.add(48,((e,[,t])=>{O(e,t),e(25)})),E.add(49,((e,[,t])=>{O(e,t),e(24),e(61),e(26)})),E.add(52,((e,[,t,r,i])=>{O(e,i),O(e,r),O(e,t),e(109)})),E.add(51,((e,[,t])=>{O(e,t),e(110)})),E.add(53,((e,[,t])=>{O(e,t),e(111)})),E.add(54,((e,[,t])=>{e(0),w(e,t,null,!1),e(112),e(1),e(36,r.$v0)})) -var B="&attrs" -function U(e,i,s,a,o,u){var{compilable:c,capabilities:d,handle:p}=i,f=s?[s,[]]:null,m=Array.isArray(u)||null===u?l(u):u -c?(e(78,p),function(e,{capabilities:i,layout:s,elementBlock:a,positional:o,named:l,blocks:u}){var{symbolTable:c}=s,d=c.hasEval||(0,n.hasCapability)(i,4) -if(d)return void H(e,{capabilities:i,elementBlock:a,positional:o,named:l,atNames:!0,blocks:u,layout:s}) -e(36,r.$s0),e(33,r.$sp,1),e(35,r.$s0),e(0) -var{symbols:p}=c,f=[],m=[],g=[],b=u.names -if(null!==a){var v=p.indexOf(B);-1!==v&&(x(e,a),f.push(v))}for(var y=0;y0?1:0),e(19,0) -for(var N=m.length-1;N>=0;N--){var I=m[N];-1===I?e(34,1):e(19,I+1)}null!==o&&e(34,o.length) -for(var F=f.length-1;F>=0;F--){e(20,f[F]+1)}e(28,h(s)),e(61),e(2),e(100,r.$s0),e(1),e(40),(0,n.hasCapability)(i,64)&&e(60) -e(98),e(35,r.$s0)}(e,{capabilities:d,layout:c,elementBlock:f,positional:a,named:o,blocks:m})):(e(78,p),H(e,{capabilities:d,elementBlock:f,positional:a,named:o,atNames:!0,blocks:m}))}function $(e,t,i,n,s,a,o,c){var d=i?[i,[]]:null,h=Array.isArray(a)||null===a?l(a):a -L(e,(()=>(O(e,t),e(33,r.$sp,0),2)),(()=>{e(66,u("ELSE")),c?e(81):e(80,{type:2,value:void 0}),e(79),H(e,{capabilities:!0,elementBlock:d,positional:n,named:s,atNames:o,blocks:h}),e(1e3,"ELSE")}))}function H(e,{capabilities:i,elementBlock:s,positional:a,named:o,atNames:l,blocks:u,layout:c}){var p=!!u,f=!0===i||(0,n.hasCapability)(i,4)||!(!o||0===o[0].length),m=u.with("attrs",s) -e(36,r.$s0),e(33,r.$sp,1),e(35,r.$s0),e(0),function(e,r,i,n,s){for(var a=n.names,o=0;o{c?(e(63,d(c.symbolTable)),e(28,h(c)),e(61)):e(92,r.$s0),e(95,r.$s0)})),e(35,r.$s0)}function q(e,t,i,n,s=null){e(97,r.$s0),e(59),e(87,0|t,r.$s0),s&&s(),e(88,r.$s0),e(90,r.$s0),e(38,r.$s0),e(19,0),e(94,r.$s0),n&&e(17,r.$s0),i&&e(18,r.$s0),e(34,1),e(96,r.$s0),e(100,r.$s0),e(1),e(40),e(60),e(98)}class V{constructor(e,t,r,i,n){this.main=e,this.trustingGuardedAppend=t,this.cautiousGuardedAppend=r,this.trustingNonDynamicAppend=i,this.cautiousNonDynamicAppend=n}get"trusting-append"(){return this.trustingGuardedAppend}get"cautious-append"(){return this.cautiousGuardedAppend}get"trusting-non-dynamic-append"(){return this.trustingNonDynamicAppend}get"cautious-non-dynamic-append"(){return this.cautiousNonDynamicAppend}getAppend(e){return e?this.trustingGuardedAppend:this.cautiousGuardedAppend}}function W(e,t){return{program:e,encoder:new ne(e.heap,t,e.stdlib),meta:t}}e.StdLib=V -var G=new _,Y=["class","id","value","name","type","style","href"],Q=["div","span","p","a"] -function K(e){return"string"==typeof e?e:Q[e]}function J(e){return"string"==typeof e?e:Y[e]}function X(e){return null===e?null:[e[0].map((e=>`@${e}`)),e[1]]}G.add(3,((e,t)=>e(42,t[1]))),G.add(13,(e=>e(55))),G.add(12,(e=>e(54))),G.add(4,((e,[,t,i,n])=>{m(t)?e(1003,t,(t=>{e(0),w(e,i,n,!1),e(57,t),e(1)})):(O(e,t),e(0),w(e,i,n,!1),e(33,r.$fp,1),e(108),e(1))})),G.add(14,((e,[,t,r,i])=>{e(51,J(t),r,null!=i?i:null)})),G.add(24,((e,[,t,r,i])=>{e(105,J(t),r,null!=i?i:null)})),G.add(15,((e,[,t,r,i])=>{O(e,r),e(52,J(t),!1,null!=i?i:null)})),G.add(22,((e,[,t,r,i])=>{O(e,r),e(52,J(t),!0,null!=i?i:null)})),G.add(16,((e,[,t,r,i])=>{O(e,r),e(53,J(t),!1,null!=i?i:null)})),G.add(23,((e,[,t,r,i])=>{O(e,r),e(53,J(t),!0,null!=i?i:null)})),G.add(10,((e,[,t])=>{e(48,K(t))})),G.add(11,((e,[,t])=>{e(89),e(48,K(t))})),G.add(8,((e,[,t,r,i,n])=>{f(t)?e(1004,t,(t=>{U(e,t,r,null,i,n)})):$(e,t,r,null,i,n,!0,!0)})),G.add(19,((e,[,t,i])=>{z(e,(()=>(O(e,t),e(33,r.$sp,0),2)),(()=>{e(101,{type:3,value:void 0},i),e(40),e(1)}))})),G.add(18,((e,[,t,r])=>j(e,t,r))),G.add(17,((e,[,t])=>j(e,t,null))),G.add(26,((e,[,t])=>e(103,{type:3,value:void 0},t))),G.add(1,((e,[,t])=>{if(Array.isArray(t))if(v(t))e(1008,t,{ifComponent(t){U(e,t,null,null,null,null)},ifHelper(t){e(0),k(e,t,null,null),e(3,c("cautious-non-dynamic-append")),e(1)},ifValue(t){e(0),e(29,t),e(3,c("cautious-non-dynamic-append")),e(1)},ifFallback(r){e(0),e(1010,t[1],((t,r)=>{e(21,0),e(22,t)})),e(3,c("cautious-append")),e(1)}}) -else if(28===t[0]){var[,r,i,n]=t -b(r)?e(1007,r,{ifComponent(t){U(e,t,null,i,X(n),null)},ifHelper(t){e(0),k(e,t,i,n),e(3,c("cautious-non-dynamic-append")),e(1)}}):F(e,(()=>{O(e,r),e(106)}),(t=>{t(0,(()=>{e(81),e(79),H(e,{capabilities:!0,elementBlock:null,positional:i,named:n,atNames:!1,blocks:l(null)})})),t(1,(()=>{M(e,i,n,(()=>{e(3,c("cautious-non-dynamic-append"))}))}))}))}else e(0),O(e,t),e(3,c("cautious-append")),e(1) -else e(41,null==t?"":String(t))})),G.add(2,((e,[,t])=>{Array.isArray(t)?(e(0),O(e,t),e(3,c("trusting-append")),e(1)):e(41,null==t?"":String(t))})),G.add(6,((e,[,t,r,i,n])=>{f(t)?e(1004,t,(t=>{U(e,t,null,r,X(i),n)})):$(e,t,null,r,i,n,!1,!1)})),G.add(40,((e,[,t,i,n,s])=>{z(e,(()=>(O(e,i),void 0===s?S(e,void 0):O(e,s),O(e,n),e(33,r.$sp,0),4)),(()=>{e(50),D(e,t),e(56)}))})),G.add(41,((e,[,t,r,i])=>z(e,(()=>(O(e,t),e(71),1)),(()=>{D(e,r)}),i?()=>{D(e,i)}:void 0))),G.add(42,((e,[,t,i,n,s])=>L(e,(()=>(i?O(e,i):S(e,null),O(e,t),2)),(()=>{e(72,u("BODY"),u("ELSE")),e(0),e(33,r.$fp,1),e(6,u("ITER")),e(1e3,"ITER"),e(74,u("BREAK")),e(1e3,"BODY"),N(e,n,2),e(34,2),e(4,u("FINALLY")),e(1e3,"BREAK"),e(1),e(73),e(4,u("FINALLY")),e(1e3,"ELSE"),s&&D(e,s)})))),G.add(43,((e,[,t,i,n])=>{z(e,(()=>(O(e,t),e(33,r.$sp,0),e(71),2)),(()=>{N(e,i,1)}),(()=>{n&&D(e,n)}))})),G.add(44,((e,[,t,r])=>{N(e,r,T(e,t))})),G.add(45,((e,[,t,r])=>{if(t){var[i,n]=t -T(e,n),function(e,t,r){e(59),e(58,t),r(),e(60)}(e,i,(()=>{D(e,r)}))}else D(e,r)})),G.add(46,((e,[,t,r,i,n])=>{f(t)?e(1004,t,(t=>{U(e,t,null,r,X(i),n)})):$(e,t,null,r,i,n,!1,!1)})) -class Z{constructor(e,t,r,i="plain block"){this.statements=e,this.meta=t,this.symbolTable=r,this.moduleName=i,this.compiled=null}compile(e){return function(e,t){if(null!==e.compiled)return e.compiled -e.compiled=-1 -var{statements:r,meta:i}=e,n=te(r,i,t) -return e.compiled=n,n}(this,e)}}function ee(e,t){var[r,i,n]=e.block -return new Z(r,P(e),{symbols:i,hasEval:n},t)}function te(e,t,r){var i=G,n=W(r,t),{encoder:s,program:{constants:a,resolver:o}}=n -function l(...e){ie(s,a,o,t,e)}for(var u=0;ue(76)),(n=>{n(2,(()=>{t?(e(68),e(43)):e(47)})),"number"==typeof i?(n(0,(()=>{e(81),e(79),function(e){e(36,r.$s0),e(33,r.$sp,1),e(35,r.$s0),e(0),e(83),e(85,r.$s0),q(e,!1,!1,!0,(()=>{e(92,r.$s0),e(95,r.$s0)})),e(35,r.$s0)}(e)})),n(1,(()=>{M(e,null,null,(()=>{e(3,i)}))}))):(n(0,(()=>{e(47)})),n(1,(()=>{e(47)}))),n(4,(()=>{e(68),e(44)})),n(5,(()=>{e(68),e(45)})),n(6,(()=>{e(68),e(46)}))}))}function ae(e){var t=le(e,(e=>function(e){e(75,r.$s0),q(e,!1,!1,!0)}(e))),i=le(e,(e=>se(e,!0,null))),n=le(e,(e=>se(e,!1,null))),s=le(e,(e=>se(e,!0,i))),a=le(e,(e=>se(e,!1,n))) -return new V(t,s,a,i,n)}var oe={asPartial:!1,evalSymbols:null,upvars:null,moduleName:"stdlib",scopeValues:null,isStrictMode:!0,owner:null,size:0} -function le(e,t){var{constants:r,heap:i,resolver:n}=e,s=new ne(i,oe) -t((function(...e){ie(s,r,n,oe,e)})) -var a=s.commit(0) -if("number"!=typeof a)throw new Error("Unexpected errors compiling std") -return a}class ue{constructor({constants:e,heap:t},r){this.resolver=r,this.constants=e,this.heap=t,this.stdlib=ae(this)}}e.CompileTimeCompilationContextImpl=ue -e.DEFAULT_CAPABILITIES={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!1,elementHook:!1,dynamicScope:!0,createCaller:!1,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1},e.MINIMAL_CAPABILITIES={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,dynamicScope:!1,createCaller:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -e.PartialDefinitionImpl=class{constructor(e,t){this.name=e,this.template=t}getPartial(e){var r=(0,t.unwrapTemplate)(this.template).asPartial(),i=r.compile(e) -return{symbolTable:r.symbolTable,handle:i}}} -class ce{constructor(e,t){this.layout=e,this.moduleName=t,this.compiled=null -var{block:r}=e,[,i,n]=r,s=(i=i.slice()).indexOf(B) -this.attrsBlockNumber=-1===s?i.push(B):s+1,this.symbolTable={hasEval:n,symbols:i}}compile(e){if(null!==this.compiled)return this.compiled -var t,i,n,s=P(this.layout),a=W(e,s),{encoder:o,program:{constants:l,resolver:c}}=a -t=function(...e){ie(o,l,c,s,e)},i=this.layout,n=this.attrsBlockNumber,t(1001),function(e,t,r){e(36,t),r(),e(35,t)}(t,r.$s1,(()=>{t(91,r.$s0),t(31),t(33,r.$sp,0)})),t(66,u("BODY")),t(36,r.$s1),t(89),t(49),t(99,r.$s0),j(t,n,null),t(54),t(1e3,"BODY"),D(t,[i.block[0],[]]),t(36,r.$s1),t(66,u("END")),t(55),t(1e3,"END"),t(35,r.$s1),t(1002) -var d=a.encoder.commit(s.size) -return"number"!=typeof d||(this.compiled=d),d}}e.WrappedBuilder=ce -var de=0,he=e.templateCacheCounters={cacheHit:0,cacheMiss:0} -class pe{constructor(e){this.parsedLayout=e,this.result="ok",this.layout=null,this.partial=null,this.wrappedLayout=null}get moduleName(){return this.parsedLayout.moduleName}get id(){return this.parsedLayout.id}get referrer(){return{moduleName:this.parsedLayout.moduleName,owner:this.parsedLayout.owner}}asLayout(){return this.layout?this.layout:this.layout=ee((0,t.assign)({},this.parsedLayout,{asPartial:!1}),this.moduleName)}asPartial(){return this.partial?this.partial:this.partial=ee((0,t.assign)({},this.parsedLayout,{asPartial:!0}),this.moduleName)}asWrappedLayout(){return this.wrappedLayout?this.wrappedLayout:this.wrappedLayout=new ce((0,t.assign)({},this.parsedLayout,{asPartial:!1}),this.moduleName)}}})),e("@glimmer/owner",["exports","@glimmer/util"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.OWNER=void 0,e.getOwner=function(e){return e[r]},e.setOwner=function(e,t){e[r]=t} -var r=e.OWNER=(0,t.symbol)("OWNER")})),e("@glimmer/program",["exports","@glimmer/util","@glimmer/manager","@glimmer/opcode-compiler"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.RuntimeProgramImpl=e.RuntimeOpImpl=e.RuntimeHeapImpl=e.RuntimeConstantsImpl=e.HeapImpl=e.ConstantsImpl=e.CompileTimeConstantImpl=void 0,e.artifacts=function(){return{constants:new u,heap:new p}},e.hydrateHeap=function(e){return new h(e)} -var n={id:"1b32f5c2-7623-43d6-a0ad-9672898920a1",moduleName:"__default__.hbs",block:JSON.stringify([[[18,1,null]],["&default"],!1,[]]),scope:null,isStrictMode:!0},s=Object.freeze([]),a=(0,t.constants)(s),o=a.indexOf(s) -class l{constructor(){this.values=a.slice(),this.indexMap=new Map(this.values.map(((e,t)=>[e,t])))}value(e){var t=this.indexMap,r=t.get(e) -return void 0===r&&(r=this.values.push(e)-1,t.set(e,r)),r}array(e){if(0===e.length)return o -for(var t=new Array(e.length),r=0;r>8)}get isMachine(){return 1024&this.heap.getbyaddr(this.offset)?1:0}get type(){return 255&this.heap.getbyaddr(this.offset)}get op1(){return this.heap.getbyaddr(this.offset+1)}get op2(){return this.heap.getbyaddr(this.offset+2)}get op3(){return this.heap.getbyaddr(this.offset+3)}}e.RuntimeOpImpl=c -var d=1048576 -class h{constructor(e){var{buffer:t,table:r}=e -this.heap=new Int32Array(t),this.table=r}getaddr(e){return this.table[e]}getbyaddr(e){return this.heap[e]}sizeof(e){return f(this.table,e)}}e.RuntimeHeapImpl=h -class p{constructor(){this.offset=0,this.handle=0,this.heap=new Int32Array(d),this.handleTable=[],this.handleState=[]}push(e){this.sizeCheck(),this.heap[this.offset++]=e}sizeCheck(){var{heap:e}=this -if(this.offset===this.heap.length){var t=new Int32Array(e.length+d) -t.set(e,0),this.heap=t}}getbyaddr(e){return this.heap[e]}setbyaddr(e,t){this.heap[e]=t}malloc(){return this.handleTable.push(this.offset),this.handleTable.length-1}finishMalloc(e){}size(){return this.offset}getaddr(e){return this.handleTable[e]}sizeof(e){return f(this.handleTable,e)}free(e){this.handleState[e]=1}compact(){for(var e=0,{handleTable:t,handleState:r,heap:i}=this,n=0;nd(e)),(t=>h(e,t))) -return t.debugLabel=e.debugLabel,t[n]=3,t},e.createIteratorItemRef=function(e){var t=e,r=(0,i.createTag)() -return u((()=>((0,i.consumeTag)(r),t)),(e=>{t!==e&&(t=e,(0,i.dirtyTag)(r))}))},e.createIteratorRef=function(e,i){return u((()=>{var n=d(e),s=function(e){switch(e){case"@key":return _(m) -case"@index":return _(g) -case"@identity":return _(b) -default:return function(e){0 -return _((r=>(0,t.getPath)(r,e)))}(e)}}(i) -if(Array.isArray(n))return new R(n,s) -var a=(0,t.toIterator)(n) -return null===a?new R(r.EMPTY_ARRAY,(()=>null)):new E(a,s)}))},e.createPrimitiveRef=a,e.createReadOnlyRef=function(e){return c(e)?u((()=>d(e)),null,e.debugLabel):e},e.createUnboundRef=l,e.isConstRef=function(e){return e.tag===i.CONSTANT_TAG},e.isInvokableRef=function(e){return 3===e[n]},e.isUpdatableRef=c,e.updateRef=h,e.valueForRef=d -var n=e.REFERENCE=(0,r.symbol)("REFERENCE") -class s{constructor(e){this.tag=null,this.lastRevision=i.INITIAL,this.children=null,this.compute=null,this.update=null,this[n]=e}}function a(e){var t=new s(2) -return t.tag=i.CONSTANT_TAG,t.lastValue=e,t}var o=e.UNDEFINED_REFERENCE=a(void 0) -e.NULL_REFERENCE=a(null),e.TRUE_REFERENCE=a(!0),e.FALSE_REFERENCE=a(!1) -function l(e,t){var r=new s(2) -return r.lastValue=e,r.tag=i.CONSTANT_TAG,r}function u(e,t=null,r="unknown"){var i=new s(1) -return i.compute=e,i.update=t,i}function c(e){return null!==e.update}function d(e){var t=e,{tag:r}=t -if(r===i.CONSTANT_TAG)return t.lastValue -var n,{lastRevision:s}=t -if(null!==r&&(0,i.validateTag)(r,s))n=t.lastValue -else{var{compute:a}=t -r=t.tag=(0,i.track)((()=>{n=t.lastValue=a()}),!1),t.lastRevision=(0,i.valueForTag)(r)}return(0,i.consumeTag)(r),n}function h(e,t){(0,e.update)(t)}function p(e,i){var s,a=e,c=a[n],h=a.children -if(null===h)h=a.children=new Map -else if(void 0!==(s=h.get(i)))return s -if(2===c){var p=d(a) -s=(0,r.isDict)(p)?l(p[i]):o}else s=u((()=>{var e=d(a) -if((0,r.isDict)(e))return(0,t.getProp)(e,i)}),(e=>{var n=d(a) -if((0,r.isDict)(n))return(0,t.setProp)(n,i,e)})) -return h.set(i,s),s}var f={},m=(e,t)=>t,g=(e,t)=>String(t),b=e=>null===e?f:e -class v{get weakMap(){return void 0===this._weakMap&&(this._weakMap=new WeakMap),this._weakMap}get primitiveMap(){return void 0===this._primitiveMap&&(this._primitiveMap=new Map),this._primitiveMap}set(e,t){(0,r.isObject)(e)?this.weakMap.set(e,t):this.primitiveMap.set(e,t)}get(e){return(0,r.isObject)(e)?this.weakMap.get(e):this.primitiveMap.get(e)}}var y=new v -function _(e){var t=new v -return(r,i)=>{var n=e(r,i),s=t.get(n)||0 -return t.set(n,s+1),0===s?n:function(e,t){var r=y.get(e) -void 0===r&&(r=[],y.set(e,r)) -var i=r[t] -return void 0===i&&(i={value:e,count:t},r[t]=i),i}(n,s)}}class E{constructor(e,t){this.inner=e,this.keyFor=t}isEmpty(){return this.inner.isEmpty()}next(){var e=this.inner.next() -return null!==e&&(e.key=this.keyFor(e.value,e.memo)),e}}class R{constructor(e,t){this.iterator=e,this.keyFor=t,this.pos=0,0===e.length?this.current={kind:"empty"}:this.current={kind:"first",value:e[this.pos]}}isEmpty(){return"empty"===this.current.kind}next(){var e,t=this.current -if("first"===t.kind)this.current={kind:"progress"},e=t.value -else{if(this.pos>=this.iterator.length-1)return null -e=this.iterator[++this.pos]}var{keyFor:r}=this -return{key:r(e,this.pos),value:e,memo:this.pos}}}})),e("@glimmer/runtime",["exports","@glimmer/util","@glimmer/reference","@glimmer/global-context","@glimmer/destroyable","@glimmer/vm","@glimmer/validator","@glimmer/manager","@glimmer/program","@glimmer/owner","@glimmer/runtime"],(function(e,t,r,i,n,s,a,o,l,u,c){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.array=e.UpdatingVM=e.UpdatableBlockImpl=e.TemplateOnlyComponentManager=e.TemplateOnlyComponent=e.TEMPLATE_ONLY_COMPONENT_MANAGER=e.SimpleDynamicAttribute=e.SERIALIZATION_FIRST_NODE_STRING=e.RemoteLiveBlock=e.RehydrateBuilder=e.PartialScopeImpl=e.NewElementBuilder=e.LowLevelVM=e.IDOMChanges=e.EnvironmentImpl=e.EMPTY_POSITIONAL=e.EMPTY_NAMED=e.EMPTY_ARGS=e.DynamicScopeImpl=e.DynamicAttribute=e.DOMTreeConstruction=e.DOMChanges=e.CursorImpl=e.CurriedValue=e.ConcreteBounds=void 0,e.clear=w,e.clientBuilder=function(e,t){return se.forInitialRender(e,t)},e.concat=void 0,e.createCapturedArgs=Me,e.curry=Re,Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return n.destroy}}),e.dynamicAttribute=W,e.hash=e.get=e.fn=void 0,e.inTransaction=Dt,e.invokeHelper=function(e,t,r){0 -var i=(0,u.getOwner)(e),s=(0,o.getInternalHelperManager)(t) -0 -0 -var l,c=s.getDelegateFor(i),d=new lr(e,r),h=c.createHelper(t,d) -if(!(0,o.hasValue)(c))throw new Error("TODO: unreachable, to be implemented with hasScheduledEffect") -l=(0,a.createCache)((()=>c.getValue(h))),(0,n.associateDestroyableChild)(e,l) -if((0,o.hasDestroyable)(c)){var p=c.getDestroyable(h);(0,n.associateDestroyableChild)(l,p)}return l},Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return n.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return n.isDestroying}}),e.isSerializationFirstNode=function(e){return e.nodeValue===Kt},e.isWhitespace=function(e){return _t.test(e)},e.normalizeProperty=k,e.on=void 0,Object.defineProperty(e,"registerDestructor",{enumerable:!0,get:function(){return n.registerDestructor}}),e.rehydrationBuilder=function(e,t){return Xt.forInitialRender(e,t)},e.reifyArgs=De,e.reifyNamed=je,e.reifyPositional=xe,e.renderComponent=function(e,i,n,s,a,o={},l=new d){var u=Wt.empty(e,{treeBuilder:i,handle:n.stdlib.main,dynamicScope:l,owner:s},n) -return function(e,r,i,n,s){var a=Object.keys(s).map((e=>[e,s[e]])),o=["main","else","attrs"],l=a.map((([e])=>`@${e}`)),u=e[v].component(n,i) -e.pushFrame() -for(var c=0;c<3*o.length;c++)e.stack.push(null) -e.stack.push(null),a.forEach((([,t])=>{e.stack.push(t)})),e[y].setup(e.stack,l,o,0,!0) -var d=u.compilable,h=(0,t.unwrapHandle)(d.compile(r)),p={handle:h,symbolTable:d.symbolTable} -return e.stack.push(e[y]),e.stack.push(p),e.stack.push(u),new Qt(e)}(u,n,s,a,(c=o,h=(0,r.createConstRef)(c,"args"),Object.keys(c).reduce(((e,t)=>(e[t]=(0,r.childRefFor)(h,t),e)),{}))) -var c,h},e.renderMain=function(e,r,i,n,s,a,o=new d){var l=(0,t.unwrapHandle)(a.compile(r)),u=a.symbolTable.symbols.length,c=Wt.initial(e,r,{self:n,dynamicScope:o,treeBuilder:s,handle:l,numSymbols:u,owner:i}) -return new Qt(c)},e.renderSync=function(e,t){var r -return Dt(e,(()=>r=t.sync())),r},e.resetDebuggerCallback=function(){ot=at},e.runtimeContext=function(e,t,r,i){return{env:new xt(e,t),program:new l.RuntimeProgramImpl(r.constants,r.heap),resolver:i}},e.setDebuggerCallback=function(e){ot=e},e.templateOnlyComponent=function(e,t){return new ht(e,t)} -class d{constructor(e){this.bucket=e?(0,t.assign)({},e):{}}get(e){return this.bucket[e]}set(e,t){return this.bucket[e]=t}child(){return new d(this.bucket)}}e.DynamicScopeImpl=d -class h{constructor(e,t,r,i,n){this.slots=e,this.owner=t,this.callerScope=r,this.evalScope=i,this.partialMap=n}static root(e,t=0,i){for(var n=new Array(t+1),s=0;s<=t;s++)n[s]=r.UNDEFINED_REFERENCE -return new h(n,i,null,null,null).init({self:e})}static sized(e=0,t){for(var i=new Array(e+1),n=0;n<=e;n++)i[n]=r.UNDEFINED_REFERENCE -return new h(i,t,null,null,null)}init({self:e}){return this.slots[0]=e,this}getSelf(){return this.get(0)}getSymbol(e){return this.get(e)}getBlock(e){var t=this.get(e) -return t===r.UNDEFINED_REFERENCE?null:t}getEvalScope(){return this.evalScope}getPartialMap(){return this.partialMap}bind(e,t){this.set(e,t)}bindSelf(e){this.set(0,e)}bindSymbol(e,t){this.set(e,t)}bindBlock(e,t){this.set(e,t)}bindEvalScope(e){this.evalScope=e}bindPartialMap(e){this.partialMap=e}bindCallerScope(e){this.callerScope=e}getCallerScope(){return this.callerScope}child(){return new h(this.slots.slice(),this.owner,this.callerScope,this.evalScope,this.partialMap)}get(e){if(e>=this.slots.length)throw new RangeError(`BUG: cannot get $${e} from scope; length=${this.slots.length}`) -return this.slots[e]}set(e,t){if(e>=this.slots.length)throw new RangeError(`BUG: cannot get $${e} from scope; length=${this.slots.length}`) -this.slots[e]=t}}e.PartialScopeImpl=h -var p=(0,t.symbol)("INNER_VM"),f=(0,t.symbol)("DESTROYABLE_STACK"),m=(0,t.symbol)("STACKS"),g=(0,t.symbol)("REGISTERS"),b=(0,t.symbol)("HEAP"),v=(0,t.symbol)("CONSTANTS"),y=(0,t.symbol)("ARGS");(0,t.symbol)("PC") -class _{constructor(e,t){this.element=e,this.nextSibling=t}}e.CursorImpl=_ -class E{constructor(e,t,r){this.parentNode=e,this.first=t,this.last=r}parentElement(){return this.parentNode}firstNode(){return this.first}lastNode(){return this.last}}e.ConcreteBounds=E -class R{constructor(e,t){this.parentNode=e,this.node=t}parentElement(){return this.parentNode}firstNode(){return this.node}lastNode(){return this.node}}function O(e,t){for(var r=e.parentElement(),i=e.firstNode(),n=e.lastNode(),s=i;;){var a=s.nextSibling -if(r.insertBefore(s,t),s===n)return a -s=a}}function w(e){for(var t=e.parentElement(),r=e.firstNode(),i=e.lastNode(),n=r;;){var s=n.nextSibling -if(t.removeChild(n),n===i)return s -n=s}}function T(e){return P(e)?"":String(e)}function P(e){return null==e||"function"!=typeof e.toString}function A(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}function S(e){return"object"==typeof e&&null!==e&&"number"==typeof e.nodeType}function C(e){return"string"==typeof e}function k(e,t){var r,i,n,s,a -if(t in e)i=t,r="prop" -else{var o=t.toLowerCase() -o in e?(r="prop",i=o):(r="attr",i=t)}return"prop"===r&&("style"===i.toLowerCase()||(n=e.tagName,s=i,(a=M[n.toUpperCase()])&&a[s.toLowerCase()]))&&(r="attr"),{normalized:i,type:r}}var M={INPUT:{form:!0,autocorrect:!0,list:!0},SELECT:{form:!0},OPTION:{form:!0},TEXTAREA:{form:!0},LABEL:{form:!0},FIELDSET:{form:!0},LEGEND:{form:!0},OBJECT:{form:!0},OUTPUT:{form:!0},BUTTON:{form:!0}} -var j,x,D=["javascript:","vbscript:"],N=["A","BODY","LINK","IMG","IFRAME","BASE","FORM"],I=["EMBED"],F=["href","src","background","action"],L=["src"] -function z(e,t){return-1!==e.indexOf(t)}function B(e,t){return(null===e||z(N,e))&&z(F,t)}function U(e,t){return null!==e&&(z(I,e)&&z(L,t))}function $(e,t){return B(e,t)||U(e,t)}if("object"==typeof URL&&null!==URL&&"function"==typeof URL.parse){var H=URL -j=e=>{var t=null -return"string"==typeof e&&(t=H.parse(e).protocol),null===t?":":t}}else if("function"==typeof URL)j=e=>{try{return new URL(e).protocol}catch(t){return":"}} -else{var q=document.createElement("a") -j=e=>(q.href=e,q.protocol)}function V(e,t,r){var i=null -if(null==r)return r -if(A(r))return r.toHTML() -i=e?e.tagName.toUpperCase():null -var n=T(r) -if(B(i,t)){var s=j(n) -if(z(D,s))return`unsafe:${n}`}return U(i,t)?`unsafe:${n}`:n}function W(e,t,r,i=!1){var{tagName:n,namespaceURI:s}=e,a={element:e,name:t,namespace:r} -if("http://www.w3.org/2000/svg"===s)return G(n,t,a) -var{type:o,normalized:l}=k(e,t) -return"attr"===o?G(n,l,a):function(e,t,r){if($(e,t))return new J(t,r) -if(function(e,t){return("INPUT"===e||"TEXTAREA"===e)&&"value"===t}(e,t))return new Z(t,r) -if(function(e,t){return"OPTION"===e&&"selected"===t}(e,t))return new ee(t,r) -return new K(t,r)}(n,l,a)}function G(e,t,r){return $(e,t)?new X(r):new Q(r)}class Y{constructor(e){this.attribute=e}}e.DynamicAttribute=Y -class Q extends Y{set(e,t,r){var i=te(t) -if(null!==i){var{name:n,namespace:s}=this.attribute -e.__setAttribute(n,i,s)}}update(e,t){var r=te(e),{element:i,name:n}=this.attribute -null===r?i.removeAttribute(n):i.setAttribute(n,r)}}e.SimpleDynamicAttribute=Q -class K extends Y{constructor(e,t){super(t),this.normalizedName=e}set(e,t,r){null!=t&&(this.value=t,e.__setProperty(this.normalizedName,t))}update(e,t){var{element:r}=this.attribute -this.value!==e&&(r[this.normalizedName]=this.value=e,null==e&&this.removeAttribute())}removeAttribute(){var{element:e,namespace:t}=this.attribute -t?e.removeAttributeNS(t,this.normalizedName):e.removeAttribute(this.normalizedName)}}class J extends K{set(e,t,r){var{element:i,name:n}=this.attribute,s=V(i,n,t) -super.set(e,s,r)}update(e,t){var{element:r,name:i}=this.attribute,n=V(r,i,e) -super.update(n,t)}}class X extends Q{set(e,t,r){var{element:i,name:n}=this.attribute,s=V(i,n,t) -super.set(e,s,r)}update(e,t){var{element:r,name:i}=this.attribute,n=V(r,i,e) -super.update(n,t)}}class Z extends K{set(e,t){e.__setProperty("value",T(t))}update(e){var t=this.attribute.element,r=t.value,i=T(e) -r!==i&&(t.value=i)}}class ee extends K{set(e,t){null!=t&&!1!==t&&e.__setProperty("selected",!0)}update(e){var t=this.attribute.element -t.selected=!!e}}function te(e){return!1===e||null==e||void 0===e.toString?null:!0===e?"":"function"==typeof e?null:String(e)}class re{constructor(e){this.node=e}firstNode(){return this.node}}class ie{constructor(e){this.node=e}lastNode(){return this.node}}var ne=(0,t.symbol)("CURSOR_STACK") -class se{constructor(e,r,i){this.constructing=null,this.operations=null,this[x]=new t.Stack,this.modifierStack=new t.Stack,this.blockStack=new t.Stack,this.pushElement(r,i),this.env=e,this.dom=e.getAppendOperations(),this.updateOperations=e.getDOM()}static forInitialRender(e,t){return new this(e,t.element,t.nextSibling).initialize()}static resume(e,t){var r=new this(e,t.parentElement(),t.reset(e)).initialize() -return r.pushLiveBlock(t),r}initialize(){return this.pushSimpleBlock(),this}debugBlocks(){return this.blockStack.toArray()}get element(){return this[ne].current.element}get nextSibling(){return this[ne].current.nextSibling}get hasBlocks(){return this.blockStack.size>0}block(){return this.blockStack.current}popElement(){this[ne].pop(),this[ne].current}pushSimpleBlock(){return this.pushLiveBlock(new ae(this.element))}pushUpdatableBlock(){return this.pushLiveBlock(new le(this.element))}pushBlockList(e){return this.pushLiveBlock(new ue(this.element,e))}pushLiveBlock(e,t=!1){var r=this.blockStack.current -return null!==r&&(t||r.didAppendBounds(e)),this.__openBlock(),this.blockStack.push(e),e}popBlock(){return this.block().finalize(this),this.__closeBlock(),this.blockStack.pop()}__openBlock(){}__closeBlock(){}openElement(e){var t=this.__openElement(e) -return this.constructing=t,t}__openElement(e){return this.dom.createElement(e,this.element)}flushElement(e){var t=this.element,r=this.constructing -this.__flushElement(t,r),this.constructing=null,this.operations=null,this.pushModifiers(e),this.pushElement(r,null),this.didOpenElement(r)}__flushElement(e,t){this.dom.insertBefore(e,t,this.nextSibling)}closeElement(){return this.willCloseElement(),this.popElement(),this.popModifiers()}pushRemoteElement(e,t,r){return this.__pushRemoteElement(e,t,r)}__pushRemoteElement(e,t,r){if(this.pushElement(e,r),void 0===r)for(;e.lastChild;)e.removeChild(e.lastChild) -var i=new oe(e) -return this.pushLiveBlock(i,!0)}popRemoteElement(){this.popBlock(),this.popElement()}pushElement(e,t=null){this[ne].push(new _(e,t))}pushModifiers(e){this.modifierStack.push(e)}popModifiers(){return this.modifierStack.pop()}didAppendBounds(e){return this.block().didAppendBounds(e),e}didAppendNode(e){return this.block().didAppendNode(e),e}didOpenElement(e){return this.block().openElement(e),e}willCloseElement(){this.block().closeElement()}appendText(e){return this.didAppendNode(this.__appendText(e))}__appendText(e){var{dom:t,element:r,nextSibling:i}=this,n=t.createTextNode(e) -return t.insertBefore(r,n,i),n}__appendNode(e){return this.dom.insertBefore(this.element,e,this.nextSibling),e}__appendFragment(e){var t=e.firstChild -if(t){var r=new E(this.element,t,e.lastChild) -return this.dom.insertBefore(this.element,e,this.nextSibling),r}return new R(this.element,this.__appendComment(""))}__appendHTML(e){return this.dom.insertHTMLBefore(this.element,this.nextSibling,e)}appendDynamicHTML(e){var t=this.trustedContent(e) -this.didAppendBounds(t)}appendDynamicText(e){var t=this.untrustedContent(e) -return this.didAppendNode(t),t}appendDynamicFragment(e){var t=this.__appendFragment(e) -this.didAppendBounds(t)}appendDynamicNode(e){var t=this.__appendNode(e),r=new R(this.element,t) -this.didAppendBounds(r)}trustedContent(e){return this.__appendHTML(e)}untrustedContent(e){return this.__appendText(e)}appendComment(e){return this.didAppendNode(this.__appendComment(e))}__appendComment(e){var{dom:t,element:r,nextSibling:i}=this,n=t.createComment(e) -return t.insertBefore(r,n,i),n}__setAttribute(e,t,r){this.dom.setAttribute(this.constructing,e,t,r)}__setProperty(e,t){this.constructing[e]=t}setStaticAttribute(e,t,r){this.__setAttribute(e,t,r)}setDynamicAttribute(e,t,r,i){var n=W(this.constructing,e,i,r) -return n.set(this,t,this.env),n}}e.NewElementBuilder=se,x=ne -class ae{constructor(e){this.parent=e,this.first=null,this.last=null,this.nesting=0}parentElement(){return this.parent}firstNode(){return this.first.firstNode()}lastNode(){return this.last.lastNode()}openElement(e){this.didAppendNode(e),this.nesting++}closeElement(){this.nesting--}didAppendNode(e){0===this.nesting&&(this.first||(this.first=new re(e)),this.last=new ie(e))}didAppendBounds(e){0===this.nesting&&(this.first||(this.first=e),this.last=e)}finalize(e){null===this.first&&e.appendComment("")}}class oe extends ae{constructor(e){super(e),(0,n.registerDestructor)(this,(()=>{this.parentElement()===this.firstNode().parentNode&&w(this)}))}}e.RemoteLiveBlock=oe -class le extends ae{reset(){(0,n.destroy)(this) -var e=w(this) -return this.first=null,this.last=null,this.nesting=0,e}}e.UpdatableBlockImpl=le -class ue{constructor(e,t){this.parent=e,this.boundList=t,this.parent=e,this.boundList=t}parentElement(){return this.parent}firstNode(){return this.boundList[0].firstNode()}lastNode(){var e=this.boundList -return e[e.length-1].lastNode()}openElement(e){}closeElement(){}didAppendNode(e){}didAppendBounds(e){}finalize(e){}}var ce=new class{constructor(){this.evaluateOpcode=(0,t.fillNulls)(104).slice()}add(e,t,r="syscall"){this.evaluateOpcode[e]={syscall:"machine"!==r,evaluate:t}}debugBefore(e,t){return{sp:undefined,pc:e.fetchValue(s.$pc),name:undefined,params:undefined,type:t.type,isMachine:t.isMachine,size:t.size,state:void 0}}debugAfter(e,t){}evaluate(e,t,r){var i=this.evaluateOpcode[r] -i.syscall?i.evaluate(e,t):i.evaluate(e[p],t)}} -function de(e){return"function"!=typeof e.toString?"":String(e)}var he=(0,t.symbol)("TYPE"),pe=(0,t.symbol)("INNER"),fe=(0,t.symbol)("OWNER"),me=(0,t.symbol)("ARGS"),ge=(0,t.symbol)("RESOLVED"),be=new t._WeakSet -function ve(e){return be.has(e)}function ye(e,t){return ve(e)&&e[he]===t}class _e{constructor(e,t,r,i,n=!1){be.add(this),this[he]=e,this[pe]=t,this[fe]=r,this[me]=i,this[ge]=n}}function Ee(e){for(var t,r,i,n,s,a=e;;){var{[me]:o,[pe]:l}=a -if(null!==o){var{named:u,positional:c}=o -c.length>0&&(t=void 0===t?c:c.concat(t)),void 0===r&&(r=[]),r.unshift(u)}if(!ve(l)){i=l,n=a[fe],s=a[ge] -break}a=l}return{definition:i,owner:n,resolved:s,positional:t,named:r}}function Re(e,t,r,i,n=!1){return new _e(e,t,r,i,n)}e.CurriedValue=_e -class Oe{constructor(){this.stack=null,this.positional=new Te,this.named=new Pe,this.blocks=new Ce}empty(e){var t=e[g][s.$sp]+1 -return this.named.empty(e,t),this.positional.empty(e,t),this.blocks.empty(e,t),this}setup(e,t,r,i,n){this.stack=e -var a=this.named,o=t.length,l=e[g][s.$sp]-o+1 -a.setup(e,l,o,t,n) -var u=l-i -this.positional.setup(e,u,i) -var c=this.blocks,d=r.length,h=u-3*d -c.setup(e,h,d,r)}get base(){return this.blocks.base}get length(){return this.positional.length+this.named.length+3*this.blocks.length}at(e){return this.positional.at(e)}realloc(e){var{stack:t}=this -if(e>0&&null!==t){for(var{positional:r,named:i}=this,n=r.base+e,a=r.length+i.length-1;a>=0;a--)t.copy(a+r.base,a+n) -r.base+=e,i.base+=e,t[g][s.$sp]+=e}}capture(){var e=0===this.positional.length?Ie:this.positional.capture() -return{named:0===this.named.length?Ne:this.named.capture(),positional:e}}clear(){var{stack:e,length:t}=this -t>0&&null!==e&&e.pop(t)}}var we=(0,t.emptyArray)() -class Te{constructor(){this.base=0,this.length=0,this.stack=null,this._references=null}empty(e,t){this.stack=e,this.base=t,this.length=0,this._references=we}setup(e,t,r){this.stack=e,this.base=t,this.length=r,this._references=0===r?we:null}at(e){var{base:t,length:i,stack:n}=this -return e<0||e>=i?r.UNDEFINED_REFERENCE:n.get(e,t)}capture(){return this.references}prepend(e){var t=e.length -if(t>0){var{base:r,length:i,stack:n}=this -this.base=r-=t,this.length=i+t -for(var s=0;s0){for(var{names:r,length:i,stack:n}=this,s=r.slice(),a=0;a{var a=e.stack,o=a.pop(),l=a.pop(),u=e.getOwner() -e.runtime.resolver -e.loadValue(s.$v0,function(e,i,n,s,a,o){var l,u -return(0,r.createComputeRef)((()=>{var a=(0,r.valueForRef)(i) -return a===l||(u=ye(a,e)?s?Re(e,a,n,s):s:0===e&&"string"==typeof a&&a||(0,t.isObject)(a)?Re(e,a,n,s):null,l=a),u}))}(i,o,u,l))})),ce.add(107,(e=>{var i,a=e.stack,o=a.pop(),l=a.pop().capture(),u=e.getOwner(),c=(0,r.createComputeRef)((()=>{void 0!==i&&(0,n.destroy)(i) -var s=(0,r.valueForRef)(o) -if(ye(s,1)){var{definition:a,owner:d,positional:h,named:p}=Ee(s),f=Le(e[v],a,o) -void 0!==p&&(l.named=(0,t.assign)({},...p,l.named)),void 0!==h&&(l.positional=h.concat(l.positional)),i=f(l,d),(0,n.associateDestroyableChild)(c,i)}else if((0,t.isObject)(s)){var m=Le(e[v],s,o) -i=m(l,u),(0,n._hasDestroyableChildren)(i)&&(0,n.associateDestroyableChild)(c,i)}else i=r.UNDEFINED_REFERENCE})),d=(0,r.createComputeRef)((()=>((0,r.valueForRef)(c),(0,r.valueForRef)(i)))) -e.associateDestroyable(c),e.loadValue(s.$v0,d)})),ce.add(16,((e,{op1:t})=>{var r=e.stack,i=e[v].getValue(t)(r.pop().capture(),e.getOwner(),e.dynamicScope());(0,n._hasDestroyableChildren)(i)&&e.associateDestroyable(i),e.loadValue(s.$v0,i)})),ce.add(21,((e,{op1:t})=>{var r=e.referenceForSymbol(t) -e.stack.push(r)})),ce.add(19,((e,{op1:t})=>{var r=e.stack.pop() -e.scope().bindSymbol(t,r)})),ce.add(20,((e,{op1:t})=>{var r=e.stack.pop(),i=e.stack.pop(),n=e.stack.pop() -e.scope().bindBlock(t,[r,i,n])})),ce.add(102,((e,{op1:t})=>{var i=e[v].getValue(t),n=e.scope().getPartialMap()[i] -void 0===n&&(n=(0,r.childRefFor)(e.getSelf(),i)),e.stack.push(n)})),ce.add(37,((e,{op1:t})=>{e.pushRootScope(t,e.getOwner())})),ce.add(22,((e,{op1:t})=>{var i=e[v].getValue(t),n=e.stack.pop() -e.stack.push((0,r.childRefFor)(n,i))})),ce.add(23,((e,{op1:t})=>{var{stack:r}=e,i=e.scope().getBlock(t) -r.push(i)})),ce.add(24,(e=>{var{stack:t}=e,r=t.pop() -if(r&&!ze(r)){var[i,n,s]=r -t.push(s),t.push(n),t.push(i)}else t.push(null),t.push(null),t.push(null)})),ce.add(25,(e=>{var{stack:t}=e,i=t.pop() -i&&!ze(i)?t.push(r.TRUE_REFERENCE):t.push(r.FALSE_REFERENCE)})),ce.add(26,(e=>{e.stack.pop(),e.stack.pop() -var t=e.stack.pop(),i=t&&t.parameters.length -e.stack.push(i?r.TRUE_REFERENCE:r.FALSE_REFERENCE)})),ce.add(27,((e,{op1:t})=>{for(var i,n=new Array(t),s=t;s>0;s--){n[s-1]=e.stack.pop()}e.stack.push((i=n,(0,r.createComputeRef)((()=>{for(var e=new Array,t=0;t0?e.join(""):null}))))})),ce.add(109,(e=>{var t=e.stack.pop(),n=e.stack.pop(),s=e.stack.pop() -e.stack.push((0,r.createComputeRef)((()=>!0===(0,i.toBool)((0,r.valueForRef)(t))?(0,r.valueForRef)(n):(0,r.valueForRef)(s))))})),ce.add(110,(e=>{var t=e.stack.pop() -e.stack.push((0,r.createComputeRef)((()=>!(0,i.toBool)((0,r.valueForRef)(t)))))})),ce.add(111,(e=>{var t=e.dynamicScope(),i=e.stack,n=i.pop() -i.push((0,r.createComputeRef)((()=>{var e=String((0,r.valueForRef)(n)) -return(0,r.valueForRef)(t.get(e))})))})),ce.add(112,(e=>{var{positional:t}=e.stack.pop().capture() -e.loadValue(s.$v0,(0,r.createComputeRef)((()=>{console.log(...xe(t))})))})),ce.add(39,(e=>e.pushChildScope())),ce.add(40,(e=>e.popScope())),ce.add(59,(e=>e.pushDynamicScope())),ce.add(60,(e=>e.popDynamicScope())),ce.add(28,((e,{op1:r})=>{e.stack.push(e[v].getValue((0,t.decodeHandle)(r)))})),ce.add(29,((e,{op1:i})=>{e.stack.push((0,r.createConstRef)(e[v].getValue((0,t.decodeHandle)(i)),!1))})),ce.add(30,((e,{op1:r})=>{var i=e.stack -if((0,t.isHandle)(r)){var n=e[v].getValue((0,t.decodeHandle)(r)) -i.push(n)}else i.push((0,t.decodeImmediate)(r))})),ce.add(31,(e=>{var t,i=e.stack,n=i.pop() -t=void 0===n?r.UNDEFINED_REFERENCE:null===n?r.NULL_REFERENCE:!0===n?r.TRUE_REFERENCE:!1===n?r.FALSE_REFERENCE:(0,r.createPrimitiveRef)(n),i.push(t)})),ce.add(33,((e,{op1:t,op2:r})=>{var i=e.fetchValue(t)-r -e.stack.dup(i)})),ce.add(34,((e,{op1:t})=>{e.stack.pop(t)})),ce.add(35,((e,{op1:t})=>{e.load(t)})),ce.add(36,((e,{op1:t})=>{e.fetch(t)})) -ce.add(58,((e,{op1:t})=>{var r=e[v].getArray(t) -e.bindDynamicScope(r)})),ce.add(69,((e,{op1:t})=>{e.enter(t)})),ce.add(70,(e=>{e.exit()})),ce.add(63,((e,{op1:t})=>{e.stack.push(e[v].getValue(t))})),ce.add(62,(e=>{e.stack.push(e.scope())})),ce.add(61,(e=>{var t=e.stack,r=t.pop() -r?t.push(e.compile(r)):t.push(null)})),ce.add(64,(e=>{var{stack:t}=e,r=t.pop(),i=t.pop(),n=t.pop(),s=t.pop() -if(null===n)return e.pushFrame(),void e.pushScope(null!=i?i:e.scope()) -var a=i,o=n.parameters,l=o.length -if(l>0){a=a.child() -for(var u=0;u{var i=e.stack.pop(),n=Boolean((0,r.valueForRef)(i));(0,r.isConstRef)(i)?!0===n&&e.goto(t):(!0===n&&e.goto(t),e.updateWith(new Ue(i)))})),ce.add(66,((e,{op1:t})=>{var i=e.stack.pop(),n=Boolean((0,r.valueForRef)(i));(0,r.isConstRef)(i)?!1===n&&e.goto(t):(!1===n&&e.goto(t),e.updateWith(new Ue(i)))})),ce.add(67,((e,{op1:t,op2:r})=>{e.stack.peek()===r&&e.goto(t)})),ce.add(68,(e=>{var t=e.stack.peek() -!1===(0,r.isConstRef)(t)&&e.updateWith(new Ue(t))})),ce.add(71,(e=>{var{stack:t}=e,n=t.pop() -t.push((0,r.createComputeRef)((()=>(0,i.toBool)((0,r.valueForRef)(n)))))})) -class Ue{constructor(e){this.ref=e,this.last=(0,r.valueForRef)(e)}evaluate(e){var{last:t,ref:i}=this -t!==(0,r.valueForRef)(i)&&e.throw()}}class $e{constructor(e,t){this.ref=e,this.filter=t,this.last=t((0,r.valueForRef)(e))}evaluate(e){var{last:t,ref:i,filter:n}=this -t!==n((0,r.valueForRef)(i))&&e.throw()}}class He{constructor(){this.tag=a.CONSTANT_TAG,this.lastRevision=a.INITIAL}finalize(e,t){this.target=t,this.didModify(e)}evaluate(e){var{tag:t,target:r,lastRevision:i}=this -!e.alwaysRevalidate&&(0,a.validateTag)(t,i)&&((0,a.consumeTag)(t),e.goto(r))}didModify(e){this.tag=e,this.lastRevision=(0,a.valueForTag)(this.tag),(0,a.consumeTag)(e)}}class qe{constructor(e){this.debugLabel=e}evaluate(){(0,a.beginTrackFrame)(this.debugLabel)}}class Ve{constructor(e){this.target=e}evaluate(){var e=(0,a.endTrackFrame)() -this.target.didModify(e)}}ce.add(41,((e,{op1:t})=>{e.elements().appendText(e[v].getValue(t))})),ce.add(42,((e,{op1:t})=>{e.elements().appendComment(e[v].getValue(t))})),ce.add(48,((e,{op1:t})=>{e.elements().openElement(e[v].getValue(t))})),ce.add(49,(e=>{var t=(0,r.valueForRef)(e.stack.pop()) -e.elements().openElement(t)})),ce.add(50,(e=>{var t=e.stack.pop(),i=e.stack.pop(),n=e.stack.pop(),s=(0,r.valueForRef)(t),a=(0,r.valueForRef)(i),o=(0,r.valueForRef)(n);(0,r.isConstRef)(t)||e.updateWith(new Ue(t)),void 0===a||(0,r.isConstRef)(i)||e.updateWith(new Ue(i)) -var l=e.elements().pushRemoteElement(s,o,a) -l&&e.associateDestroyable(l)})),ce.add(56,(e=>{e.elements().popRemoteElement()})),ce.add(54,(e=>{var t=e.fetchValue(s.$t0),r=null -t&&(r=t.flush(e),e.loadValue(s.$t0,null)),e.elements().flushElement(r)})),ce.add(55,(e=>{var t=e.elements().closeElement() -t&&t.forEach((t=>{e.env.scheduleInstallModifier(t) -var{manager:r,state:i}=t,n=r.getDestroyable(i) -n&&e.associateDestroyable(n)}))})),ce.add(57,((e,{op1:t})=>{if(!1!==e.env.isInteractive){var r=e.getOwner(),i=e.stack.pop(),n=e[v].getValue(t),{manager:o}=n,{constructing:l}=e.elements(),u=o.create(r,l,n.state,i.capture()),c={manager:o,state:u,definition:n} -e.fetchValue(s.$t0).addModifier(c) -var d=o.getTag(u) -return null!==d?((0,a.consumeTag)(d),e.updateWith(new We(d,c))):void 0}})),ce.add(108,(e=>{if(!1!==e.env.isInteractive){var{stack:i,[v]:n}=e,o=i.pop(),l=i.pop().capture(),{constructing:u}=e.elements(),c=e.getOwner(),d=(0,r.createComputeRef)((()=>{var e,i=(0,r.valueForRef)(o) -if((0,t.isObject)(i)){var s -if(ye(i,2)){var{definition:a,owner:d,positional:h,named:p}=Ee(i) -s=a,e=d,void 0!==h&&(l.positional=h.concat(l.positional)),void 0!==p&&(l.named=(0,t.assign)({},...p,l.named))}else s=i,e=c -var f=n.modifier(s,null,!0) -0 -var m=n.getValue(f),{manager:g}=m,b=g.create(e,u,m.state,l) -return{manager:g,state:b,definition:m}}})),h=(0,r.valueForRef)(d),p=null -if(void 0!==h)e.fetchValue(s.$t0).addModifier(h),null!==(p=h.manager.getTag(h.state))&&(0,a.consumeTag)(p) -return!(0,r.isConstRef)(o)||p?e.updateWith(new Ge(p,h,d)):void 0}})) -class We{constructor(e,t){this.tag=e,this.modifier=t,this.lastUpdated=(0,a.valueForTag)(e)}evaluate(e){var{modifier:t,tag:r,lastUpdated:i}=this;(0,a.consumeTag)(r),(0,a.validateTag)(r,i)||(e.env.scheduleUpdateModifier(t),this.lastUpdated=(0,a.valueForTag)(r))}}class Ge{constructor(e,t,r){this.tag=e,this.instance=t,this.instanceRef=r,this.lastUpdated=(0,a.valueForTag)(null!=e?e:a.CURRENT_TAG)}evaluate(e){var{tag:t,lastUpdated:i,instance:s,instanceRef:o}=this,l=(0,r.valueForRef)(o) -if(l!==s){if(void 0!==s){var u=s.manager.getDestroyable(s.state) -null!==u&&(0,n.destroy)(u)}if(void 0!==l){var{manager:c,state:d}=l,h=c.getDestroyable(d) -null!==h&&(0,n.associateDestroyableChild)(this,h),null!==(t=c.getTag(d))&&(this.lastUpdated=(0,a.valueForTag)(t)),this.tag=t,e.env.scheduleInstallModifier(l)}this.instance=l}else null===t||(0,a.validateTag)(t,i)||(e.env.scheduleUpdateModifier(s),this.lastUpdated=(0,a.valueForTag)(t)) -null!==t&&(0,a.consumeTag)(t)}}ce.add(51,((e,{op1:t,op2:r,op3:i})=>{var n=e[v].getValue(t),s=e[v].getValue(r),a=i?e[v].getValue(i):null -e.elements().setStaticAttribute(n,s,a)})),ce.add(52,((e,{op1:t,op2:i,op3:n})=>{var s=e[v].getValue(t),a=e[v].getValue(i),o=e.stack.pop(),l=(0,r.valueForRef)(o),u=n?e[v].getValue(n):null,c=e.elements().setDynamicAttribute(s,l,a,u);(0,r.isConstRef)(o)||e.updateWith(new Ye(o,c,e.env))})) -class Ye{constructor(e,t,i){var n=!1 -this.updateRef=(0,r.createComputeRef)((()=>{var s=(0,r.valueForRef)(e) -!0===n?t.update(s,i):n=!0})),(0,r.valueForRef)(this.updateRef)}evaluate(){(0,r.valueForRef)(this.updateRef)}}ce.add(78,((e,{op1:t})=>{var r=e[v].getValue(t),{manager:i,capabilities:n}=r,s={definition:r,manager:i,capabilities:n,state:null,handle:null,table:null,lookup:null} -e.stack.push(s)})),ce.add(80,((e,{op1:t})=>{var i,n=e.stack,a=(0,r.valueForRef)(n.pop()),o=e[v],l=e.getOwner() -o.getValue(t) -if(e.loadValue(s.$t1,null),"string"==typeof a){0 -var u=function(e,t,r,i){var n=e.lookupComponent(r,i) -return t.resolvedComponent(n,r)}(e.runtime.resolver,o,a,l) -i=u}else i=ve(a)?a:o.component(a,l) -n.push(i)})),ce.add(81,(e=>{var t,i=e.stack,n=i.pop(),s=(0,r.valueForRef)(n),a=e[v] -t=ve(s)?s:a.component(s,e.getOwner(),!0),i.push(t)})),ce.add(79,(e=>{var t,r,{stack:i}=e,n=i.pop() -ve(n)?r=t=null:(r=n.manager,t=n.capabilities),i.push({definition:n,capabilities:t,manager:r,state:null,handle:null,table:null})})),ce.add(82,((e,{op1:r,op2:i,op3:n})=>{var s=e.stack,a=e[v].getArray(r),o=n>>4,l=8&n,u=7&n?e[v].getArray(i):t.EMPTY_STRING_ARRAY -e[y].setup(s,a,u,o,!!l),s.push(e[y])})),ce.add(83,(e=>{var{stack:t}=e -t.push(e[y].empty(t))})),ce.add(86,(e=>{var t=e.stack,r=t.pop().capture() -t.push(r)})),ce.add(85,((e,{op1:r})=>{var i=e.stack,n=e.fetchValue(r),a=i.pop(),{definition:l}=n -if(ye(l,0)){var u=e[v],{definition:c,owner:d,resolved:h,positional:p,named:f}=Ee(l) -if(!0===h)l=c -else if("string"==typeof c){var m=e.runtime.resolver.lookupComponent(c,d) -l=u.resolvedComponent(m,c)}else l=u.component(c,d) -void 0!==f&&a.named.merge((0,t.assign)({},...f)),void 0!==p&&(a.realloc(p.length),a.positional.prepend(p)) -var{manager:g}=l -n.definition=l,n.manager=g,n.capabilities=l.capabilities,e.loadValue(s.$t1,d)}var{manager:b,state:y}=l,_=n.capabilities -if((0,o.managerHasCapability)(b,_,4)){var E=a.blocks.values,R=a.blocks.names,O=b.prepareArgs(y,a) -if(O){a.clear() -for(var w=0;w{var i=e.fetchValue(r),{definition:n,manager:s,capabilities:a}=i -if((0,o.managerHasCapability)(s,a,512)){var l=null;(0,o.managerHasCapability)(s,a,64)&&(l=e.dynamicScope()) -var u=1&t,c=null;(0,o.managerHasCapability)(s,a,8)&&(c=e.stack.peek()) -var d=null;(0,o.managerHasCapability)(s,a,128)&&(d=e.getSelf()) -var h=s.create(e.getOwner(),n.state,c,e.env,l,d,!!u) -i.state=h,(0,o.managerHasCapability)(s,a,256)&&e.updateWith(new Ze(h,s,l))}})),ce.add(88,((e,{op1:t})=>{var{manager:r,state:i,capabilities:n}=e.fetchValue(t),s=r.getDestroyable(i) -s&&e.associateDestroyable(s)})),ce.add(97,((e,{op1:t})=>{var r -e.beginCacheGroup(r),e.elements().pushSimpleBlock()})),ce.add(89,(e=>{e.loadValue(s.$t0,new Qe)})),ce.add(53,((e,{op1:t,op2:r,op3:i})=>{var n=e[v].getValue(t),a=e[v].getValue(r),o=e.stack.pop(),l=i?e[v].getValue(i):null -e.fetchValue(s.$t0).setAttribute(n,o,a,l)})),ce.add(105,((e,{op1:t,op2:r,op3:i})=>{var n=e[v].getValue(t),a=e[v].getValue(r),o=i?e[v].getValue(i):null -e.fetchValue(s.$t0).setStaticAttribute(n,a,o)})) -class Qe{constructor(){this.attributes=(0,t.dict)(),this.classes=[],this.modifiers=[]}setAttribute(e,t,r,i){var n={value:t,namespace:i,trusting:r} -"class"===e&&this.classes.push(t),this.attributes[e]=n}setStaticAttribute(e,t,r){var i={value:t,namespace:r} -"class"===e&&this.classes.push(t),this.attributes[e]=i}addModifier(e){this.modifiers.push(e)}flush(e){var t,r=this.attributes -for(var i in this.attributes)if("type"!==i){var n=this.attributes[i] -"class"===i?Je(e,"class",Ke(this.classes),n.namespace,n.trusting):Je(e,i,n.value,n.namespace,n.trusting)}else t=r[i] -return void 0!==t&&Je(e,"type",t.value,t.namespace,t.trusting),this.modifiers}}function Ke(e){return 0===e.length?"":1===e.length?e[0]:function(e){for(var t=0;t{for(var e=[],i=0;i{var{definition:r,state:i}=e.fetchValue(t),{manager:n}=r,a=e.fetchValue(s.$t0) -n.didCreateElement(i,e.elements().constructing,a)})),ce.add(90,((e,{op1:t,op2:i})=>{var s,a=e.fetchValue(t),{definition:o,state:l}=a,{manager:u}=o,c=u.getSelf(l) -if(void 0!==e.env.debugRenderTree){var d,h,p=e.fetchValue(t),{definition:f,manager:m}=p -if(e.stack.peek()===e[y])d=e[y].capture() -else{var g=e[v].getArray(i) -e[y].setup(e.stack,g,[],0,!0),d=e[y].capture()}var b=f.compilable -if(h=null===b?null!==(b=m.getDynamicLayout(l,e.runtime.resolver))?b.moduleName:"__default__.hbs":b.moduleName,e.associateDestroyable(p),Be(m)){m.getDebugCustomRenderTree(p.definition.state,p.state,d,h).forEach((t=>{var{bucket:r}=t -e.env.debugRenderTree.create(r,t),(0,n.registerDestructor)(p,(()=>{var t -null===(t=e.env.debugRenderTree)||void 0===t||t.willDestroy(r)})),e.updateWith(new tt(r))}))}else{var _=null!==(s=f.resolvedName)&&void 0!==s?s:m.getDebugName(f.state) -e.env.debugRenderTree.create(p,{type:"component",name:_,args:d,template:h,instance:(0,r.valueForRef)(c)}),e.associateDestroyable(p),(0,n.registerDestructor)(p,(()=>{var t -null===(t=e.env.debugRenderTree)||void 0===t||t.willDestroy(p)})),e.updateWith(new tt(p))}}e.stack.push(c)})),ce.add(91,((e,{op1:t})=>{var{definition:r,state:i}=e.fetchValue(t),{manager:n}=r,s=n.getTagName(i) -e.stack.push(s)})),ce.add(92,((e,{op1:r})=>{var i=e.fetchValue(r),{manager:n,definition:s}=i,{stack:a}=e,{compilable:l}=s -if(null===l){var{capabilities:u}=i -null===(l=n.getDynamicLayout(i.state,e.runtime.resolver))&&(l=(0,o.managerHasCapability)(n,u,1024)?(0,t.unwrapTemplate)(e[v].defaultTemplate).asWrappedLayout():(0,t.unwrapTemplate)(e[v].defaultTemplate).asLayout())}var c=l.compile(e.context) -a.push(l.symbolTable),a.push(c)})),ce.add(75,((e,{op1:t})=>{var r=e.stack.pop(),i=e.stack.pop(),{manager:n,capabilities:s}=r,a={definition:r,manager:n,capabilities:s,state:null,handle:i.handle,table:i.symbolTable,lookup:null} -e.loadValue(t,a)})),ce.add(95,((e,{op1:t})=>{var{stack:r}=e,i=r.pop(),n=r.pop(),s=e.fetchValue(t) -s.handle=i,s.table=n})),ce.add(38,((e,{op1:t})=>{var r,{table:i,manager:n,capabilities:a,state:l}=e.fetchValue(t);(0,o.managerHasCapability)(n,a,4096)?(r=n.getOwner(l),e.loadValue(s.$t1,null)):null===(r=e.fetchValue(s.$t1))?r=e.getOwner():e.loadValue(s.$t1,null),e.pushRootScope(i.symbols.length+1,r)})),ce.add(94,((e,{op1:r})=>{var i=e.fetchValue(r) -if(i.table.hasEval){var n=i.lookup=(0,t.dict)() -e.scope().bindEvalScope(n)}})),ce.add(17,((e,{op1:t})=>{for(var r=e.fetchValue(t),i=e.scope(),n=e.stack.peek(),s=n.named.atNames,a=s.length-1;a>=0;a--){var o=s[a],l=r.table.symbols.indexOf(s[a]),u=n.named.get(o,!0);-1!==l&&i.bindSymbol(l+1,u),r.lookup&&(r.lookup[o]=u)}})),ce.add(18,((e,{op1:t})=>{for(var r=e.fetchValue(t),{blocks:i}=e.stack.peek(),n=0;n{var r=e.fetchValue(t) -e.call(r.handle)})),ce.add(100,((e,{op1:t})=>{var r=e.fetchValue(t),{manager:i,state:n,capabilities:s}=r,a=e.elements().popBlock() -void 0!==e.env.debugRenderTree&&(Be(i)?i.getDebugCustomRenderTree(r.definition.state,n,Fe).reverse().forEach((t=>{var{bucket:r}=t -e.env.debugRenderTree.didRender(r,a),e.updateWith(new rt(r,a))})):(e.env.debugRenderTree.didRender(r,a),e.updateWith(new rt(r,a))));(0,o.managerHasCapability)(i,s,512)&&(i.didRenderLayout(n,a),e.env.didCreate(r),e.updateWith(new et(r,a)))})),ce.add(98,(e=>{e.commitCacheGroup()})) -class Ze{constructor(e,t,r){this.component=e,this.manager=t,this.dynamicScope=r}evaluate(e){var{component:t,manager:r,dynamicScope:i}=this -r.update(t,i)}}class et{constructor(e,t){this.component=e,this.bounds=t}evaluate(e){var{component:t,bounds:r}=this,{manager:i,state:n}=t -i.didUpdateLayout(n,r),e.env.didUpdate(t)}}class tt{constructor(e){this.bucket=e}evaluate(e){var t -null===(t=e.env.debugRenderTree)||void 0===t||t.update(this.bucket)}}class rt{constructor(e,t){this.bucket=e,this.bounds=t}evaluate(e){var t -null===(t=e.env.debugRenderTree)||void 0===t||t.didRender(this.bucket,this.bounds)}}class it{constructor(e,t,r){this.node=e,this.reference=t,this.lastValue=r}evaluate(){var e,t=(0,r.valueForRef)(this.reference),{lastValue:i}=this -t!==i&&((e=P(t)?"":C(t)?t:String(t))!==i&&(this.node.nodeValue=this.lastValue=e))}}function nt(e){return function(e){return C(e)||P(e)||"boolean"==typeof e||"number"==typeof e}(e)?2:ye(e,0)||(0,o.hasInternalComponentManager)(e)?0:ye(e,1)||(0,o.hasInternalHelperManager)(e)?1:A(e)?4:function(e){return S(e)&&11===e.nodeType}(e)?5:S(e)?6:2}function st(e){return(0,t.isObject)(e)?ye(e,0)||(0,o.hasInternalComponentManager)(e)?0:1:2}function at(e,t){console.info("Use `context`, and `get()` to debug this template."),t("this")}ce.add(76,(e=>{var t=e.stack.peek() -e.stack.push(nt((0,r.valueForRef)(t))),(0,r.isConstRef)(t)||e.updateWith(new $e(t,nt))})),ce.add(106,(e=>{var t=e.stack.peek() -e.stack.push(st((0,r.valueForRef)(t))),(0,r.isConstRef)(t)||e.updateWith(new $e(t,st))})),ce.add(43,(e=>{var t=e.stack.pop(),i=(0,r.valueForRef)(t),n=P(i)?"":String(i) -e.elements().appendDynamicHTML(n)})),ce.add(44,(e=>{var t=e.stack.pop(),i=(0,r.valueForRef)(t).toHTML(),n=P(i)?"":i -e.elements().appendDynamicHTML(n)})),ce.add(47,(e=>{var t=e.stack.pop(),i=(0,r.valueForRef)(t),n=P(i)?"":String(i),s=e.elements().appendDynamicText(n);(0,r.isConstRef)(t)||e.updateWith(new it(s,t,n))})),ce.add(45,(e=>{var t=e.stack.pop(),i=(0,r.valueForRef)(t) -e.elements().appendDynamicFragment(i)})),ce.add(46,(e=>{var t=e.stack.pop(),i=(0,r.valueForRef)(t) -e.elements().appendDynamicNode(i)})) -var ot=at -class lt{constructor(e,r,i){this.scope=e,this.locals=(0,t.dict)() -for(var n=0;n(0,r.childRefFor)(e,t)),t)}}ce.add(103,((e,{op1:i,op2:n})=>{var s=e[v].getArray(i),a=e[v].getArray((0,t.decodeHandle)(n)),o=new lt(e.scope(),s,a) -ot((0,r.valueForRef)(e.getSelf()),(e=>(0,r.valueForRef)(o.get(e))))})),ce.add(101,((e,{op1:i,op2:n})=>{var{[v]:s,stack:a}=e,o=(0,r.valueForRef)(a.pop()),l=e.scope(),u=l.owner,c=s.getArray(i),d=s.getArray((0,t.decodeHandle)(n)),h=e.runtime.resolver.lookupPartial(o,u),{symbolTable:p,handle:f}=h.getPartial(e.context),m=p.symbols,g=e.pushRootScope(m.length,u),b=l.getEvalScope() -g.bindEvalScope(b),g.bindSelf(l.getSelf()) -for(var y=Object.create(l.getPartialMap()),_=0;_{var n=e.stack,s=n.pop(),a=n.pop(),o=(0,r.valueForRef)(a),l=null===o?"@identity":String(o),u=(0,r.createIteratorRef)(s,l),c=(0,r.valueForRef)(u) -e.updateWith(new $e(u,(e=>e.isEmpty()))),!0===c.isEmpty()?e.goto(i+1):(e.enterList(u,t),e.stack.push(c))})),ce.add(73,(e=>{e.exitList()})),ce.add(74,((e,{op1:t})=>{var r=e.stack.peek().next() -null!==r?e.registerItem(e.enterItem(r)):e.goto(t)})) -var ut={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class ct{getCapabilities(){return ut}getDebugName({name:e}){return e}getSelf(){return r.NULL_REFERENCE}getDestroyable(){return null}}e.TemplateOnlyComponentManager=ct -var dt=e.TEMPLATE_ONLY_COMPONENT_MANAGER=new ct -class ht{constructor(e="@glimmer/component/template-only",t="(unknown template-only component)"){this.moduleName=e,this.name=t}toString(){return this.moduleName}}e.TemplateOnlyComponent=ht,(0,o.setInternalComponentManager)(dt,ht.prototype) -var pt={foreignObject:1,desc:1,title:1},ft=Object.create(null) -class mt{constructor(e){this.document=e,this.setupUselessElement()}setupUselessElement(){this.uselessElement=this.document.createElement("div")}createElement(e,t){var r,i -if(t?(r="http://www.w3.org/2000/svg"===t.namespaceURI||"svg"===e,i=!!pt[t.tagName]):(r="svg"===e,i=!1),r&&!i){if(ft[e])throw new Error(`Cannot create a ${e} inside an SVG context`) -return this.document.createElementNS("http://www.w3.org/2000/svg",e)}return this.document.createElement(e)}insertBefore(e,t,r){e.insertBefore(t,r)}insertHTMLBefore(e,t,r){if(""===r){var i=this.createComment("") -return e.insertBefore(i,t),new E(e,i,i)}var n,s=t?t.previousSibling:e.lastChild -if(null===t)e.insertAdjacentHTML("beforeend",r),n=e.lastChild -else if(t instanceof HTMLElement)t.insertAdjacentHTML("beforebegin",r),n=t.previousSibling -else{var{uselessElement:a}=this -e.insertBefore(a,t),a.insertAdjacentHTML("beforebegin",r),n=a.previousSibling,e.removeChild(a)}var o=s?s.nextSibling:e.firstChild -return new E(e,o,n)}createTextNode(e){return this.document.createTextNode(e)}createComment(e){return this.document.createComment(e)}}var gt="http://www.w3.org/2000/svg" -function bt(e,r,i){if(!e)return r -if(!function(e,t){var r=e.createElementNS(t,"svg") -try{r.insertAdjacentHTML("beforeend","")}catch(i){}finally{return 1!==r.childNodes.length||r.firstChild.namespaceURI!==gt}}(e,i))return r -var n=e.createElement("div") -return class extends r{insertHTMLBefore(e,r,s){return""===s||e.namespaceURI!==i?super.insertHTMLBefore(e,r,s):function(e,r,i,n){var s -if("FOREIGNOBJECT"===e.tagName.toUpperCase()){var a=""+i+"";(0,t.clearElement)(r),r.insertAdjacentHTML("afterbegin",a),s=r.firstChild.firstChild}else{var o=""+i+"";(0,t.clearElement)(r),r.insertAdjacentHTML("afterbegin",o),s=r.firstChild}return function(e,t,r){for(var i=e.firstChild,n=i,s=i;s;){var a=s.nextSibling -t.insertBefore(s,r),n=s,s=a}return new E(t,i,n)}(s,e,n)}(e,n,s,r)}}}function vt(e,t){return e&&function(e){var t=e.createElement("div") -if(t.appendChild(e.createTextNode("first")),t.insertAdjacentHTML("beforeend","second"),2===t.childNodes.length)return!1 -return!0}(e)?class extends t{constructor(e){super(e),this.uselessComment=e.createComment("")}insertHTMLBefore(e,t,r){if(""===r)return super.insertHTMLBefore(e,t,r) -var i=!1,n=t?t.previousSibling:e.lastChild -n&&n instanceof Text&&(i=!0,e.insertBefore(this.uselessComment,t)) -var s=super.insertHTMLBefore(e,t,r) -return i&&e.removeChild(this.uselessComment),s}}:t}["b","big","blockquote","body","br","center","code","dd","div","dl","dt","em","embed","h1","h2","h3","h4","h5","h6","head","hr","i","img","li","listing","main","meta","nobr","ol","p","pre","ruby","s","small","span","strong","strike","sub","sup","table","tt","u","ul","var"].forEach((e=>ft[e]=1)) -var yt,_t=/[\t-\r \xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]/,Et="undefined"==typeof document?null:document;(function(e){class t extends mt{createElementNS(e,t){return this.document.createElementNS(e,t)}setAttribute(e,t,r,i=null){i?e.setAttributeNS(i,t,r):e.setAttribute(t,r)}}e.TreeConstruction=t -var r=t -r=vt(Et,r),r=bt(Et,r,"http://www.w3.org/2000/svg"),e.DOMTreeConstruction=r})(yt||(yt={})) -class Rt extends mt{constructor(e){super(e),this.document=e,this.namespace=null}setAttribute(e,t,r){e.setAttribute(t,r)}removeAttribute(e,t){e.removeAttribute(t)}insertAfter(e,t,r){this.insertBefore(e,t,r.nextSibling)}}e.IDOMChanges=Rt -var Ot=Rt -Ot=vt(Et,Ot),Ot=bt(Et,Ot,"http://www.w3.org/2000/svg") -e.DOMChanges=Ot -var wt,Tt=e.DOMTreeConstruction=yt.DOMTreeConstruction,Pt=0 -class At{constructor(e){this.id=Pt++,this.value=e}get(){return this.value}release(){this.value=null}toString(){var e=`Ref ${this.id}` -if(null===this.value)return`${e} (released)` -try{return`${e}: ${this.value}`}catch(x){return e}}}class St{constructor(){this.stack=new t.Stack,this.refs=new WeakMap,this.roots=new Set,this.nodes=new WeakMap}begin(){this.reset()}create(e,r){var i=(0,t.assign)({},r,{bounds:null,refs:new Set}) -this.nodes.set(e,i),this.appendChild(i,e),this.enter(e)}update(e){this.enter(e)}didRender(e,t){this.nodeFor(e).bounds=t,this.exit()}willDestroy(e){this.refs.get(e).release()}commit(){this.reset()}capture(){return this.captureRefs(this.roots)}reset(){if(0!==this.stack.size){var e=this.stack.toArray()[0],t=this.refs.get(e) -for(void 0!==t&&this.roots.delete(t);!this.stack.isEmpty();)this.stack.pop()}}enter(e){this.stack.push(e)}exit(){this.stack.pop()}nodeFor(e){return this.nodes.get(e)}appendChild(e,t){var r=this.stack.current,i=new At(t) -if(this.refs.set(t,i),r){var n=this.nodeFor(r) -n.refs.add(i),e.parent=n}else this.roots.add(i)}captureRefs(e){var t=[] -return e.forEach((r=>{var i=r.get() -i?t.push(this.captureNode(`render-node:${r.id}`,i)):e.delete(r)})),t}captureNode(e,t){var r=this.nodeFor(t),{type:i,name:n,args:s,instance:a,refs:o}=r,l=this.captureTemplate(r),u=this.captureBounds(r),c=this.captureRefs(o) -return{id:e,type:i,name:n,args:De(s),instance:a,template:l,bounds:u,children:c}}captureTemplate({template:e}){return e||null}captureBounds(e){var t=e.bounds -return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}}var Ct,kt,Mt=(0,t.symbol)("TRANSACTION") -class jt{constructor(){this.scheduledInstallModifiers=[],this.scheduledUpdateModifiers=[],this.createdComponents=[],this.updatedComponents=[]}didCreate(e){this.createdComponents.push(e)}didUpdate(e){this.updatedComponents.push(e)}scheduleInstallModifier(e){this.scheduledInstallModifiers.push(e)}scheduleUpdateModifier(e){this.scheduledUpdateModifiers.push(e)}commit(){for(var{createdComponents:e,updatedComponents:t}=this,r=0;ru.install(c)),!1);(0,a.updateTag)(m,g)}else u.install(c)}for(var b=0;bu.update(c)),!1);(0,a.updateTag)(y,_)}else u.update(c)}}}class xt{constructor(e,t){this.delegate=t,this[wt]=null,this.isInteractive=this.delegate.isInteractive,this.debugRenderTree=this.delegate.enableDebugTooling?new St:void 0,e.appendOperations?(this.appendOperations=e.appendOperations,this.updateOperations=e.updateOperations):e.document&&(this.appendOperations=new Tt(e.document),this.updateOperations=new Rt(e.document))}getAppendOperations(){return this.appendOperations}getDOM(){return this.updateOperations}begin(){var e -null===(e=this.debugRenderTree)||void 0===e||e.begin(),this[Mt]=new jt}get transaction(){return this[Mt]}didCreate(e){this.transaction.didCreate(e)}didUpdate(e){this.transaction.didUpdate(e)}scheduleInstallModifier(e){this.isInteractive&&this.transaction.scheduleInstallModifier(e)}scheduleUpdateModifier(e){this.isInteractive&&this.transaction.scheduleUpdateModifier(e)}commit(){var e,t=this.transaction -this[Mt]=null,t.commit(),null===(e=this.debugRenderTree)||void 0===e||e.commit(),this.delegate.onTransactionCommit()}}function Dt(e,t){if(e[Mt])t() -else{e.begin() -try{t()}finally{e.commit()}}}e.EnvironmentImpl=xt,wt=Mt -class Nt{constructor(e,t,r,i,n){this.stack=e,this.heap=t,this.program=r,this.externs=i,this.registers=n,this.currentOpSize=0}fetchRegister(e){return this.registers[e]}loadRegister(e,t){this.registers[e]=t}setPc(e){this.registers[s.$pc]=e}pushFrame(){this.stack.push(this.registers[s.$ra]),this.stack.push(this.registers[s.$fp]),this.registers[s.$fp]=this.registers[s.$sp]-1}popFrame(){this.registers[s.$sp]=this.registers[s.$fp]-1,this.registers[s.$ra]=this.stack.get(0),this.registers[s.$fp]=this.stack.get(1)}pushSmallFrame(){this.stack.push(this.registers[s.$ra])}popSmallFrame(){this.registers[s.$ra]=this.stack.pop()}goto(e){this.setPc(this.target(e))}target(e){return this.registers[s.$pc]+e-this.currentOpSize}call(e){this.registers[s.$ra]=this.registers[s.$pc],this.setPc(this.heap.getaddr(e))}returnTo(e){this.registers[s.$ra]=this.target(e)}return(){this.setPc(this.registers[s.$ra])}nextStatement(){var{registers:e,program:t}=this,r=e[s.$pc] -if(-1===r)return null -var i=t.opcode(r),n=this.currentOpSize=i.size -return this.registers[s.$pc]+=n,i}evaluateOuter(e,t){this.evaluateInner(e,t)}evaluateInner(e,t){e.isMachine?this.evaluateMachine(e):this.evaluateSyscall(e,t)}evaluateMachine(e){switch(e.type){case 0:return this.pushFrame() -case 1:return this.popFrame() -case 3:return this.call(e.op1) -case 2:return this.call(this.stack.pop()) -case 4:return this.goto(e.op1) -case 5:return this.return() -case 6:return this.returnTo(e.op1)}}evaluateSyscall(e,t){ce.evaluate(t,e,e.type)}}class It{constructor(e,{alwaysRevalidate:r=!1}){this.frameStack=new t.Stack,this.env=e,this.dom=e.getDOM(),this.alwaysRevalidate=r}execute(e,t){this._execute(e,t)}_execute(e,t){var{frameStack:r}=this -for(this.try(e,t);!r.isEmpty();){var i=this.frame.nextStatement() -void 0!==i?i.evaluate(this):r.pop()}}get frame(){return this.frameStack.current}goto(e){this.frame.goto(e)}try(e,t){this.frameStack.push(new $t(e,t))}throw(){this.frame.handleException(),this.frameStack.pop()}}e.UpdatingVM=It -class Ft{constructor(e,t){this.state=e,this.resumeCallback=t}resume(e,t){return this.resumeCallback(e,this.state,t)}}class Lt{constructor(e,t,r,i){this.state=e,this.runtime=t,this.children=i,this.bounds=r}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}evaluate(e){e.try(this.children,null)}}class zt extends Lt{constructor(){super(...arguments),this.type="try"}evaluate(e){e.try(this.children,this)}handleException(){var{state:e,bounds:t,runtime:r}=this;(0,n.destroyChildren)(this) -var i=se.resume(r.env,t),s=e.resume(r,i),a=[],o=this.children=[],l=s.execute((e=>{e.pushUpdating(a),e.updateWith(this),e.pushUpdating(o)}));(0,n.associateDestroyableChild)(this,l.drop)}}class Bt extends zt{constructor(e,t,r,i,n,s){super(e,t,r,[]),this.key=i,this.memo=n,this.value=s,this.retained=!1,this.index=-1}updateReferences(e){this.retained=!0,(0,r.updateRef)(this.value,e.value),(0,r.updateRef)(this.memo,e.memo)}shouldRemove(){return!this.retained}reset(){this.retained=!1}}class Ut extends Lt{constructor(e,t,i,n,s){super(e,t,i,n),this.iterableRef=s,this.type="list-block",this.opcodeMap=new Map,this.marker=null,this.lastIterator=(0,r.valueForRef)(s)}initializeChild(e){e.index=this.children.length-1,this.opcodeMap.set(e.key,e)}evaluate(e){var t=(0,r.valueForRef)(this.iterableRef) -if(this.lastIterator!==t){var{bounds:i}=this,{dom:n}=e,s=this.marker=n.createComment("") -n.insertAfter(i.parentElement(),s,i.lastNode()),this.sync(t),this.parentElement().removeChild(s),this.marker=null,this.lastIterator=t}super.evaluate(e)}sync(e){var{opcodeMap:t,children:r}=this,i=0,n=0 -for(this.children=this.bounds.boundList=[];;){var s=e.next() -if(null===s)break -for(var a=r[i],{key:o}=s;void 0!==a&&!0===a.retained;)a=r[++i] -if(void 0!==a&&a.key===o)this.retainItem(a,s),i++ -else if(t.has(o)){var l=t.get(o) -if(l.index{t.pushUpdating() -var i=t.enterItem(e) -i.index=o.length,o.push(i),r.set(l,i),(0,n.associateDestroyableChild)(this,i)}))}moveItem(e,t,i){var n,{children:s}=this;(0,r.updateRef)(e.memo,t.memo),(0,r.updateRef)(e.value,t.value),e.retained=!0,void 0===i?O(e,this.marker):e.lastNode().nextSibling!==(n=i.firstNode())&&O(e,n),e.index=s.length,s.push(e)}deleteItem(e){(0,n.destroy)(e),w(e),this.opcodeMap.delete(e.key)}}class $t{constructor(e,t){this.ops=e,this.exceptionHandler=t,this.current=0}goto(e){this.current=e}nextStatement(){return this.ops[this.current++]}handleException(){this.exceptionHandler&&this.exceptionHandler.handleException()}}class Ht{constructor(e,t,r,i){this.env=e,this.updating=t,this.bounds=r,this.drop=i,(0,n.associateDestroyableChild)(this,i),(0,n.registerDestructor)(this,(()=>w(this.bounds)))}rerender({alwaysRevalidate:e=!1}={alwaysRevalidate:!1}){var{env:t,updating:r}=this -new It(t,{alwaysRevalidate:e}).execute(r,this)}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}handleException(){throw"this should never happen"}}class qt{constructor(e=[],t){this.stack=e,this[g]=t}static restore(e){return new this(e.slice(),[0,-1,e.length-1,0])}push(e){this.stack[++this[g][s.$sp]]=e}dup(e=this[g][s.$sp]){this.stack[++this[g][s.$sp]]=this.stack[e]}copy(e,t){this.stack[t]=this.stack[e]}pop(e=1){var t=this.stack[this[g][s.$sp]] -return this[g][s.$sp]-=e,t}peek(e=0){return this.stack[this[g][s.$sp]-e]}get(e,t=this[g][s.$fp]){return this.stack[t+e]}set(e,t,r=this[g][s.$fp]){this.stack[r+t]=e}slice(e,t){return this.stack.slice(e,t)}capture(e){var t=this[g][s.$sp]+1,r=t-e -return this.stack.slice(r,t)}reset(){this.stack.length=0}toArray(){return this.stack.slice(this[g][s.$fp],this[g][s.$sp]+1)}}class Vt{constructor(){this.scope=new t.Stack,this.dynamicScope=new t.Stack,this.updating=new t.Stack,this.cache=new t.Stack,this.list=new t.Stack}}class Wt{constructor(e,{pc:r,scope:i,dynamicScope:n,stack:a},o,l){this.runtime=e,this.elementStack=o,this.context=l,this[Ct]=new Vt,this[kt]=new t.Stack,this.s0=null,this.s1=null,this.t0=null,this.t1=null,this.v0=null,this.resume=Yt(this.context) -var u=qt.restore(a) -u[g][s.$pc]=r,u[g][s.$sp]=a.length-1,u[g][s.$fp]=-1,this[b]=this.program.heap,this[v]=this.program.constants,this.elementStack=o,this[m].scope.push(i),this[m].dynamicScope.push(n),this[y]=new Oe,this[p]=new Nt(u,this[b],e.program,{debugBefore:e=>ce.debugBefore(this,e),debugAfter:e=>{ce.debugAfter(this,e)}},u[g]),this.destructor={},this[f].push(this.destructor)}get stack(){return this[p].stack}get pc(){return this[p].fetchRegister(s.$pc)}fetch(e){var t=this.fetchValue(e) -this.stack.push(t)}load(e){var t=this.stack.pop() -this.loadValue(e,t)}fetchValue(e){if((0,s.isLowLevelRegister)(e))return this[p].fetchRegister(e) -switch(e){case s.$s0:return this.s0 -case s.$s1:return this.s1 -case s.$t0:return this.t0 -case s.$t1:return this.t1 -case s.$v0:return this.v0}}loadValue(e,t){switch((0,s.isLowLevelRegister)(e)&&this[p].loadRegister(e,t),e){case s.$s0:this.s0=t -break -case s.$s1:this.s1=t -break -case s.$t0:this.t0=t -break -case s.$t1:this.t1=t -break -case s.$v0:this.v0=t}}pushFrame(){this[p].pushFrame()}popFrame(){this[p].popFrame()}goto(e){this[p].goto(e)}call(e){this[p].call(e)}returnTo(e){this[p].returnTo(e)}return(){this[p].return()}static initial(e,t,{handle:r,self:i,dynamicScope:n,treeBuilder:s,numSymbols:a,owner:o}){var l=h.root(i,a,o),u=Gt(e.program.heap.getaddr(r),l,n),c=Yt(t)(e,u,s) -return c.pushUpdating(),c}static empty(e,{handle:t,treeBuilder:i,dynamicScope:n,owner:s},a){var o=Yt(a)(e,Gt(e.program.heap.getaddr(t),h.root(r.UNDEFINED_REFERENCE,0,s),n),i) -return o.pushUpdating(),o}compile(e){return(0,t.unwrapHandle)(e.compile(this.context))}get program(){return this.runtime.program}get env(){return this.runtime.env}captureState(e,t=this[p].fetchRegister(s.$pc)){return{pc:t,scope:this.scope(),dynamicScope:this.dynamicScope(),stack:this.stack.capture(e)}}capture(e,t=this[p].fetchRegister(s.$pc)){return new Ft(this.captureState(e,t),this.resume)}beginCacheGroup(e){var t=this.updating(),r=new He -t.push(r),t.push(new qe(e)),this[m].cache.push(r),(0,a.beginTrackFrame)(e)}commitCacheGroup(){var e=this.updating(),t=this[m].cache.pop(),r=(0,a.endTrackFrame)() -e.push(new Ve(t)),t.finalize(r,e.length)}enter(e){var t=this.capture(e),r=this.elements().pushUpdatableBlock(),i=new zt(t,this.runtime,r,[]) -this.didEnter(i)}enterItem({key:e,value:t,memo:i}){var{stack:n}=this,s=(0,r.createIteratorItemRef)(t),a=(0,r.createIteratorItemRef)(i) -n.push(s),n.push(a) -var o=this.capture(2),l=this.elements().pushUpdatableBlock(),u=new Bt(o,this.runtime,l,e,a,s) -return this.didEnter(u),u}registerItem(e){this.listBlock().initializeChild(e)}enterList(e,t){var r=[],i=this[p].target(t),n=this.capture(0,i),s=this.elements().pushBlockList(r),a=new Ut(n,this.runtime,s,r,e) -this[m].list.push(a),this.didEnter(a)}didEnter(e){this.associateDestroyable(e),this[f].push(e),this.updateWith(e),this.pushUpdating(e.children)}exit(){this[f].pop(),this.elements().popBlock(),this.popUpdating()}exitList(){this.exit(),this[m].list.pop()}pushUpdating(e=[]){this[m].updating.push(e)}popUpdating(){return this[m].updating.pop()}updateWith(e){this.updating().push(e)}listBlock(){return this[m].list.current}associateDestroyable(e){var t=this[f].current;(0,n.associateDestroyableChild)(t,e)}tryUpdating(){return this[m].updating.current}updating(){return this[m].updating.current}elements(){return this.elementStack}scope(){return this[m].scope.current}dynamicScope(){return this[m].dynamicScope.current}pushChildScope(){this[m].scope.push(this.scope().child())}pushDynamicScope(){var e=this.dynamicScope().child() -return this[m].dynamicScope.push(e),e}pushRootScope(e,t){var r=h.sized(e,t) -return this[m].scope.push(r),r}pushScope(e){this[m].scope.push(e)}popScope(){this[m].scope.pop()}popDynamicScope(){this[m].dynamicScope.pop()}getOwner(){return this.scope().owner}getSelf(){return this.scope().getSelf()}referenceForSymbol(e){return this.scope().getSymbol(e)}execute(e){return this._execute(e)}_execute(e){var t -for(e&&e(this);!(t=this.next()).done;);return t.value}next(){var e,{env:t,elementStack:r}=this,i=this[p].nextStatement() -return null!==i?(this[p].evaluateOuter(i,this),e={done:!1,value:null}):(this.stack.reset(),e={done:!0,value:new Ht(t,this.popUpdating(),r.popBlock(),this.destructor)}),e}bindDynamicScope(e){for(var t=this.dynamicScope(),r=e.length-1;r>=0;r--){var i=e[r] -t.set(i,this.stack.pop())}}}function Gt(e,t,r){return{pc:e,scope:t,dynamicScope:r,stack:[]}}function Yt(e){return(t,r,i)=>new Wt(t,r,i,e)}e.LowLevelVM=Wt,Ct=m,kt=f -class Qt{constructor(e){this.vm=e}next(){return this.vm.next()}sync(){return this.vm.execute()}}var Kt=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" -class Jt extends _{constructor(e,t,r){super(e,t),this.startingBlockDepth=r,this.candidate=null,this.injectedOmittedNode=!1,this.openBlockDepth=r-1}}class Xt extends se{constructor(e,t,r){if(super(e,t,r),this.unmatchedAttributes=null,this.blockDepth=0,r)throw new Error("Rehydration with nextSibling not supported") -for(var i=this.currentCursor.element.firstChild;null!==i&&!Zt(i);)i=i.nextSibling -this.candidate=i -var n=tr(i) -if(0!==n){var s=n-1,a=this.dom.createComment(`%+b:${s}%`) -i.parentNode.insertBefore(a,this.candidate) -for(var o=i.nextSibling;null!==o&&(!er(o)||tr(o)!==n);)o=o.nextSibling -var l=this.dom.createComment(`%-b:${s}%`) -i.parentNode.insertBefore(l,o.nextSibling),this.candidate=a,this.startingBlockOffset=s}else this.startingBlockOffset=0}get currentCursor(){return this[ne].current}get candidate(){return this.currentCursor?this.currentCursor.candidate:null}set candidate(e){this.currentCursor.candidate=e}disableRehydration(e){var t=this.currentCursor -t.candidate=null,t.nextSibling=e}enableRehydration(e){var t=this.currentCursor -t.candidate=e,t.nextSibling=null}pushElement(e,t=null){var r=new Jt(e,t,this.blockDepth||0) -null!==this.candidate&&(r.candidate=e.firstChild,this.candidate=e.nextSibling),this[ne].push(r)}clearMismatch(e){var t=e,r=this.currentCursor -if(null!==r){var i=r.openBlockDepth -if(i>=r.startingBlockDepth)for(;t;){if(er(t))if(i>=rr(t,this.startingBlockOffset))break -t=this.remove(t)}else for(;null!==t;)t=this.remove(t) -this.disableRehydration(t)}}__openBlock(){var{currentCursor:e}=this -if(null!==e){var t=this.blockDepth -this.blockDepth++ -var{candidate:r}=e -if(null!==r){var{tagName:i}=e.element -Zt(r)&&rr(r,this.startingBlockOffset)===t?(this.candidate=this.remove(r),e.openBlockDepth=t):"TITLE"!==i&&"SCRIPT"!==i&&"STYLE"!==i&&this.clearMismatch(r)}}}__closeBlock(){var{currentCursor:e}=this -if(null!==e){var t=e.openBlockDepth -this.blockDepth-- -var{candidate:r}=e,i=!1 -if(null!==r)if(i=!0,er(r)&&rr(r,this.startingBlockOffset)===t){var n=this.remove(r) -this.candidate=n,e.openBlockDepth--}else this.clearMismatch(r),i=!1 -if(!1===i){var s=e.nextSibling -if(null!==s&&er(s)&&rr(s,this.startingBlockOffset)===this.blockDepth){var a=this.remove(s) -this.enableRehydration(a),e.openBlockDepth--}}}}__appendNode(e){var{candidate:t}=this -return t||super.__appendNode(e)}__appendHTML(e){var t=this.markerBounds() -if(t){var r=t.firstNode(),i=t.lastNode(),n=new E(this.element,r.nextSibling,i.previousSibling),s=this.remove(r) -return this.remove(i),null!==s&&sr(s)&&(this.candidate=this.remove(s),null!==this.candidate&&this.clearMismatch(this.candidate)),n}return super.__appendHTML(e)}remove(e){var t=e.parentNode,r=e.nextSibling -return t.removeChild(e),r}markerBounds(){var e=this.candidate -if(e&&nr(e)){for(var t=e,r=t.nextSibling;r&&!nr(r);)r=r.nextSibling -return new E(this.element,t,r)}return null}__appendText(e){var{candidate:t}=this -return t?3===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):function(e){return 8===e.nodeType&&"%|%"===e.nodeValue}(t)||sr(t)&&""===e?(this.candidate=this.remove(t),this.__appendText(e)):(this.clearMismatch(t),super.__appendText(e)):super.__appendText(e)}__appendComment(e){var t=this.candidate -return t&&8===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):(t&&this.clearMismatch(t),super.__appendComment(e))}__openElement(e){var t=this.candidate -if(t&&ir(t)&&function(e,t){if("http://www.w3.org/2000/svg"===e.namespaceURI)return e.tagName===t -return e.tagName===t.toUpperCase()}(t,e))return this.unmatchedAttributes=[].slice.call(t.attributes),t -if(t){if(ir(t)&&"TBODY"===t.tagName)return this.pushElement(t,null),this.currentCursor.injectedOmittedNode=!0,this.__openElement(e) -this.clearMismatch(t)}return super.__openElement(e)}__setAttribute(e,t,r){var i=this.unmatchedAttributes -if(i){var n=ar(i,e) -if(n)return n.value!==t&&(n.value=t),void i.splice(i.indexOf(n),1)}return super.__setAttribute(e,t,r)}__setProperty(e,t){var r=this.unmatchedAttributes -if(r){var i=ar(r,e) -if(i)return i.value!==t&&(i.value=t),void r.splice(r.indexOf(i),1)}return super.__setProperty(e,t)}__flushElement(e,t){var{unmatchedAttributes:r}=this -if(r){for(var i=0;iFe)){var r=(0,a.createCache)((()=>t(e))) -this.argsCache=r}get named(){return or(this).named||Ne}get positional(){return or(this).positional||Ie}}function ur(e){return(0,o.setInternalHelperManager)(e,{})}var cr=(0,t.buildUntouchableThis)("`fn` helper") -e.fn=ur((({positional:e})=>{var t=e[0] -return(0,r.createComputeRef)((()=>(...i)=>{var[n,...s]=(0,c.reifyPositional)(e) -if((0,r.isInvokableRef)(t)){var a=s.length>0?s[0]:i[0] -return(0,r.updateRef)(t,a)}return n.call(cr,...s,...i)}),null,"fn")})) -e.hash=ur((({named:e})=>{var t=(0,r.createComputeRef)((()=>{var t=(0,c.reifyNamed)(e) -return t}),null,"hash"),i=new Map -for(var n in e)i.set(n,e[n]) -return t.children=i,t})),e.array=ur((({positional:e})=>(0,r.createComputeRef)((()=>(0,c.reifyPositional)(e)),null,"array"))),e.get=ur((({positional:e})=>{var n,s,a=null!==(n=e[0])&&void 0!==n?n:r.UNDEFINED_REFERENCE,o=null!==(s=e[1])&&void 0!==s?s:r.UNDEFINED_REFERENCE -return(0,r.createComputeRef)((()=>{var e=(0,r.valueForRef)(a) -if((0,t.isDict)(e))return(0,i.getPath)(e,String((0,r.valueForRef)(o)))}),(e=>{var n=(0,r.valueForRef)(a) -if((0,t.isDict)(n))return(0,i.setPath)(n,String((0,r.valueForRef)(o)),e)}),"get")})) -var dr=e=>(e=>null==e||"function"!=typeof e.toString)(e)?"":String(e),hr=(e.concat=ur((({positional:e})=>(0,r.createComputeRef)((()=>(0,c.reifyPositional)(e).map(dr).join("")),null,"concat"))),(0,t.buildUntouchableThis)("`on` modifier")),pr=(()=>{try{var e,t=document.createElement("div"),r=0 -return t.addEventListener("click",(()=>r++),{once:!0}),"function"==typeof Event?e=new Event("click"):(e=document.createEvent("Event")).initEvent("click",!0,!0),t.dispatchEvent(e),t.dispatchEvent(e),1===r}catch(i){return!1}})() -class fr{constructor(e,t){this.tag=(0,a.createUpdatableTag)(),this.shouldUpdate=!0,this.element=e,this.args=t}updateFromArgs(){var e,{args:t}=this,{once:i,passive:n,capture:s}=(0,c.reifyNamed)(t.named) -i!==this.once&&(this.once=i,this.shouldUpdate=!0),n!==this.passive&&(this.passive=n,this.shouldUpdate=!0),s!==this.capture&&(this.capture=s,this.shouldUpdate=!0),i||n||s?e=this.options={once:i,passive:n,capture:s}:this.options=void 0 -var a=(0,r.valueForRef)(t.positional[0]) -a!==this.eventName&&(this.eventName=a,this.shouldUpdate=!0) -var o=t.positional[1],l=(0,r.valueForRef)(o) -l!==this.userProvidedCallback&&(this.userProvidedCallback=l,this.shouldUpdate=!0) -var u=!1===pr&&i||!1 -if(this.shouldUpdate)if(u)var d=this.callback=function(t){return!pr&&i&&br(this,a,d,e),l.call(hr,t)} -else this.callback=l}}var mr=0,gr=0 -function br(e,t,r,i){gr++,pr?e.removeEventListener(t,r,i):void 0!==i&&i.capture?e.removeEventListener(t,r,!0):e.removeEventListener(t,r)}function vr(e,t,r,i){mr++,pr?e.addEventListener(t,r,i):void 0!==i&&i.capture?e.addEventListener(t,r,!0):e.addEventListener(t,r)}e.on=(0,o.setInternalModifierManager)(new class{constructor(){this.SUPPORTS_EVENT_OPTIONS=pr}getDebugName(){return"on"}get counters(){return{adds:mr,removes:gr}}create(e,t,r,i){return new fr(t,i)}getTag(e){return null===e?null:e.tag}install(e){if(null!==e){e.updateFromArgs() -var{element:t,eventName:r,callback:i,options:s}=e -vr(t,r,i,s),(0,n.registerDestructor)(e,(()=>br(t,r,i,s))),e.shouldUpdate=!1}}update(e){if(null!==e){var{element:t,eventName:r,callback:i,options:n}=e -e.updateFromArgs(),e.shouldUpdate&&(br(t,r,i,n),vr(e.element,e.eventName,e.callback,e.options),e.shouldUpdate=!1)}}getDestroyable(e){return e}},{})})),e("@glimmer/tracking/index",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"tracked",{enumerable:!0,get:function(){return t.tracked}})})),e("@glimmer/tracking/primitives/cache",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return t.createCache}}),Object.defineProperty(e,"getValue",{enumerable:!0,get:function(){return t.getValue}}),Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return t.isConst}})})),e("@glimmer/util",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._WeakSet=e.Stack=e.SERIALIZATION_FIRST_NODE_STRING=e.LOGGER=e.LOCAL_LOGGER=e.HAS_NATIVE_SYMBOL=e.HAS_NATIVE_PROXY=e.EMPTY_STRING_ARRAY=e.EMPTY_NUMBER_ARRAY=e.EMPTY_ARRAY=void 0,e.assert=function(e,t){if(!e)throw new Error(t||"assertion failure")},e.assertNever=function(e,t="unexpected unreachable branch"){throw R.log("unreachable",e),R.log(`${t} :: ${JSON.stringify(e)} (${e})`),new Error("code reached unreachable")},e.assertPresent=function(e,t="unexpected empty list"){if(!_(e))throw new Error(t)},e.beginTestSteps=e.assign=void 0,e.buildUntouchableThis=function(e){var t=null -return t},e.castToBrowser=function(e,t){if(null==e)return null -if(void 0===typeof document)throw new Error("Attempted to cast to a browser node in a non-browser context") -if(b(e))return e -if(e.ownerDocument!==document)throw new Error("Attempted to cast to a browser node with a node that was not created from this document") -return v(e,t)},e.castToSimple=function(e){return b(e)||function(e){e.nodeType}(e),e},e.checkNode=v,e.clearElement=function(e){var t=e.firstChild -for(;t;){var r=t.nextSibling -e.removeChild(t),t=r}},e.constants=function(...e){return[!1,!0,null,void 0,...e]},e.debugToString=void 0,e.decodeHandle=function(e){return e},e.decodeImmediate=m,e.decodeNegative=d,e.decodePositive=p,e.deprecate=function(e){E.warn(`DEPRECATION: ${e}`)},e.dict=function(){return Object.create(null)},e.emptyArray=r,e.encodeHandle=function(e){return e},e.encodeImmediate=f,e.encodeNegative=c,e.encodePositive=h,e.endTestSteps=void 0,e.enumerableSymbol=u,e.exhausted=function(e){throw new Error(`Exhausted ${e}`)},e.expect=function(e,t){if(null==e)throw new Error(t) -return e},e.extractHandle=function(e){return"number"==typeof e?e:e.handle},e.fillNulls=function(e){for(var t=new Array(e),r=0;r=0},e.isNonPrimitiveHandle=function(e){return e>3},e.isObject=function(e){return"function"==typeof e||"object"==typeof e&&null!==e},e.isOkHandle=function(e){return"number"==typeof e},e.isPresent=_,e.isSerializationFirstNode=function(e){return e.nodeValue===n},e.isSmallInt=function(e){return e%1==0&&e<=536870911&&e>=-536870912},e.keys=function(e){return Object.keys(e)},e.logStep=void 0,e.mapPresent=function(e,t){if(null===e)return null -var r=[] -for(var i of e)r.push(t(i)) -return r},e.strip=function(e,...t){for(var r="",i=0;ie -e.symbol=o?Symbol:u -function c(e){return-536870913&e}function d(e){return 536870912|e}function h(e){return~e}function p(e){return~e}function f(e){return(e|=0)<0?c(e):h(e)}function m(e){return(e|=0)>-536870913?p(e):d(e)}[1,-1].forEach((e=>m(f(e)))) -var g -e._WeakSet="function"==typeof WeakSet?WeakSet:class{constructor(){this._map=new WeakMap}add(e){return this._map.set(e,!0),this}delete(e){return this._map.delete(e)}has(e){return this._map.has(e)}} -function b(e){return 9===e.nodeType}function v(e,t){var r=!1 -if(null!==e)if("string"==typeof t)r=y(e,t) -else{if(!Array.isArray(t))throw l() -r=t.some((t=>y(e,t)))}if(r)return e -throw function(e,t){return new Error(`cannot cast a ${e} into ${t}`)}(`SimpleElement(${e})`,t)}function y(e,t){switch(t){case"NODE":return!0 -case"HTML":return e instanceof HTMLElement -case"SVG":return e instanceof SVGElement -case"ELEMENT":return e instanceof Element -default:if(t.toUpperCase()===t)throw new Error("BUG: this code is missing handling for a generic node type") -return e instanceof Element&&e.tagName.toLowerCase()===t}}function _(e){return e.length>0}e.debugToString=g -var E=e.LOCAL_LOGGER=console,R=e.LOGGER=console})),e("@glimmer/validator",["exports","@ember/polyfills","@glimmer/global-context"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.VolatileTag=e.VOLATILE_TAG=e.VOLATILE=e.INITIAL=e.CurrentTag=e.CURRENT_TAG=e.CONSTANT_TAG=e.CONSTANT=e.COMPUTE=e.ALLOW_CYCLES=void 0,e.beginTrackFrame=j,e.beginTrackingTransaction=void 0,e.beginUntrackFrame=D,e.bump=function(){l++},e.combine=void 0,e.consumeTag=I,e.createCache=function(e,t){0 -var r={[F]:e,[L]:void 0,[z]:void 0,[B]:-1} -0 -return r},e.createTag=function(){return new p(0)},e.createUpdatableTag=g,e.dirtyTag=e.deprecateMutationsInTrackingTransaction=void 0,e.dirtyTagFor=P,e.endTrackFrame=x,e.endTrackingTransaction=void 0,e.endUntrackFrame=N,e.getValue=function(e){U(e,"getValue") -var t=e[F],r=e[z],i=e[B] -if(void 0!==r&&d(r,i))I(r) -else{j() -try{e[L]=t()}finally{r=x(),e[z]=r,e[B]=c(r),I(r)}}return e[L]},e.isConst=function(e){U(e,"isConst") -var t=e[z] -return function(e,t){0}(),v(t)},e.isConstTag=v,e.isTracking=function(){return null!==k},e.logTrackingStack=void 0,e.resetTracking=function(){for(;M.length>0;)M.pop() -k=null,!1},e.setTrackingTransactionEnv=e.runInTrackingTransaction=void 0,e.tagFor=S,e.tagMetaFor=A,e.track=function(e,t){var r -j(t) -try{e()}finally{r=x()}return r},e.trackedData=function(e,t){var r=new WeakMap,i="function"==typeof t -return{getter:function(n){var s -return I(S(n,e)),i&&!r.has(n)?(s=t.call(n),r.set(n,s)):s=r.get(n),s},setter:function(t,i){P(t,e),r.set(t,i)}}},e.untrack=function(e){D() -try{return e()}finally{N()}},e.updateTag=void 0,e.validateTag=d -e.valueForTag=c -var i="undefined"!=typeof Symbol?Symbol:e=>`__${e}${Math.floor(Math.random()*Date.now())}__`,n="undefined"!=typeof Symbol?Symbol.for:e=>`__GLIMMER_VALIDATOR_SYMBOL_FOR_${e}` -function s(e){if(null==e)throw new Error("Expected value to be present") -return e}e.CONSTANT=0 -var a=e.INITIAL=1,o=e.VOLATILE=NaN,l=a -var u=e.COMPUTE=i("TAG_COMPUTE") -function c(e){return e[u]()}function d(e,t){return t>=e[u]()}var h=i("TAG_TYPE") -class p{constructor(e){this.revision=a,this.lastChecked=a,this.lastValue=a,this.isUpdating=!1,this.subtag=null,this.subtagBufferCache=null,this[h]=e}static combine(e){switch(e.length){case 0:return b -case 1:return e[0] -default:var t=new p(2) -return t.subtag=e,t}}[u](){var{lastChecked:e}=this -if(!0===this.isUpdating)this.lastChecked=++l -else if(e!==l){this.isUpdating=!0,this.lastChecked=l -try{var{subtag:t,revision:r}=this -if(null!==t)if(Array.isArray(t))for(var i=0;it.push(e))),E(t)}}var k=null,M=[] -function j(e){M.push(k),k=new C}function x(){var e=k -return k=M.pop()||null,s(e).combine()}function D(){M.push(k),k=null}function N(){k=M.pop()||null}function I(e){null!==k&&k.add(e)}var F=i("FN"),L=i("LAST_VALUE"),z=i("TAG"),B=i("SNAPSHOT") -i("DEBUG_LABEL") -function U(e,t){0}var $=n("GLIMMER_VALIDATOR_REGISTRATION"),H=function(){if("undefined"!=typeof globalThis)return globalThis -if("undefined"!=typeof self)return self -if("undefined"!=typeof window)return window -if("undefined"!=typeof global)return global -throw new Error("unable to locate global object")}() -if(!0===H[$])throw new Error("The `@glimmer/validator` library has been included twice in this application. It could be different versions of the package, or the same version included twice by mistake. `@glimmer/validator` depends on having a single copy of the package in use at any time in an application, even if they are the same version. You must dedupe your build to remove the duplicate packages in order to prevent this error.") -H[$]=!0})),e("@glimmer/vm",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.TemporaryRegister=e.SavedRegister=e.$v0=e.$t1=e.$t0=e.$sp=e.$s1=e.$s0=e.$ra=e.$pc=e.$fp=void 0,e.isLowLevelRegister=function(e){return e<=i},e.isMachineOp=function(e){return e>=0&&e<=15},e.isOp=function(e){return e>=16} -e.$pc=0,e.$ra=1,e.$fp=2 -var t,r,i=e.$sp=3 -e.$s0=4,e.$s1=5,e.$t0=6,e.$t1=7,e.$v0=8;(function(e){e[e.s0=4]="s0",e[e.s1=5]="s1"})(t||(e.SavedRegister=t={})),function(e){e[e.t0=6]="t0",e[e.t1=7]="t1"}(r||(e.TemporaryRegister=r={}))})),e("@glimmer/wire-format",["exports"],(function(e){"use strict" -function t(e){return function(t){return Array.isArray(t)&&t[0]===e}}Object.defineProperty(e,"__esModule",{value:!0}),e.getStringFromValue=function(e){return e},e.is=t,e.isArgument=function(e){return 21===e[0]||20===e[0]},e.isAttribute=function(e){return 14===e[0]||15===e[0]||22===e[0]||16===e[0]||24===e[0]||23===e[0]||17===e[0]||4===e[0]},e.isGet=e.isFlushElement=void 0,e.isHelper=function(e){return Array.isArray(e)&&28===e[0]},e.isStringLiteral=function(e){return"string"==typeof e} -e.isFlushElement=t(12) -e.isGet=t(30)})),e("@simple-dom/document",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var t=[] -function r(e,t,r){for(var i=0;i{} -function i(e){if("function"==typeof Promise){var r=Promise.resolve() -return()=>r.then(e)}if("function"==typeof MutationObserver){var i=0,n=new MutationObserver(e),s=document.createTextNode("") -return n.observe(s,{characterData:!0}),()=>(i=++i%2,s.data=""+i,i)}return()=>t(e,0)}function n(e){var t=r -return{setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),now:()=>Date.now(),next:i(e),clearNext:t}}var s=/\d+/ -function a(e){var t=typeof e -return"number"===t&&e==e||"string"===t&&s.test(e)}function o(e){return e.onError||e.onErrorTarget&&e.onErrorTarget[e.onErrorMethod]}function l(e,t,r){for(var i=-1,n=0,s=r.length;n=t[r=n+(i=(s-n)/6)-i%6]?n=r+6:s=r -return e>=t[n]?n+6:n}class h{constructor(e,t={},r={}){this._queueBeingFlushed=[],this.targetQueues=new Map,this.index=0,this._queue=[],this.name=e,this.options=t,this.globalOptions=r}stackFor(e){if(e0){var a=o(this.globalOptions) -r=a?this.invokeWithOnError:this.invoke -for(var l=this.index;l0&&this.flush(!0)}hasWork(){return this._queueBeingFlushed.length>0||this._queue.length>0}cancel({target:e,method:t}){var r=this._queue,i=this.targetQueues.get(e) -void 0!==i&&i.delete(t) -var n=l(e,t,r) -return n>-1?(r.splice(n,4),!0):(n=l(e,t,r=this._queueBeingFlushed))>-1&&(r[n+1]=null,!0)}push(e,t,r,i){return this._queue.push(e,t,r,i),{queue:this,target:e,method:t}}pushUnique(e,t,r,i){var n=this.targetQueues.get(e) -void 0===n&&(n=new Map,this.targetQueues.set(e,n)) -var s=n.get(t) -if(void 0===s){var a=this._queue.push(e,t,r,i)-4 -n.set(t,a)}else{var o=this._queue -o[s+2]=r,o[s+3]=i}return{queue:this,target:e,method:t}}_getDebugInfo(e){if(e)return c(this._queue,4)}invoke(e,t,r){void 0===r?t.call(e):t.apply(e,r)}invokeWithOnError(e,t,r,i,n){try{void 0===r?t.call(e):t.apply(e,r)}catch(s){i(s,n)}}}class p{constructor(e=[],t){this.queues={},this.queueNameIndex=0,this.queueNames=e,e.reduce((function(e,r){return e[r]=new h(r,t[r],t),e}),this.queues)}schedule(e,t,r,i,n,s){var a=this.queues[e] -if(void 0===a)throw new Error(`You attempted to schedule an action in a queue (${e}) that doesn't exist`) -if(null==r)throw new Error(`You attempted to schedule an action in a queue (${e}) for a method that doesn't exist`) -return this.queueNameIndex=0,n?a.pushUnique(t,r,i,s):a.push(t,r,i,s)}flush(e=!1){for(var t,r,i=this.queueNames.length;this.queueNameIndexn){var l=i-n -e=new Array(l) -for(var u=0;u{F++,!1!==this._autorun&&(this._autorun=!1,this._autorunStack=null,this._end(!0))} -var r=this.options._buildPlatform||n -this._platform=r(this._boundAutorunEnd)}get counters(){return{begin:_,end:E,events:{begin:R,end:0},autoruns:{created:I,completed:F},run:O,join:w,defer:T,schedule:P,scheduleIterable:A,deferOnce:S,scheduleOnce:C,setTimeout:k,later:M,throttle:j,debounce:x,cancelTimers:D,cancel:N,loops:{total:L,nested:z}}}get defaultQueue(){return this._defaultQueue}begin(){_++ -var e,t=this.options,r=this.currentInstance -return!1!==this._autorun?(e=r,this._cancelAutorun()):(null!==r&&(z++,this.instanceStack.push(r)),L++,e=this.currentInstance=new p(this.queueNames,t),R++,this._trigger("begin",e,r)),this._onBegin(e,r),e}end(){E++,this._end(!1)}on(e,t){if("function"!=typeof t)throw new TypeError("Callback must be a function") -var r=this._eventCallbacks[e] -if(void 0===r)throw new TypeError(`Cannot on() event ${e} because it does not exist`) -r.push(t)}off(e,t){var r=this._eventCallbacks[e] -if(!e||void 0===r)throw new TypeError(`Cannot off() event ${e} because it does not exist`) -var i=!1 -if(t)for(var n=0;n0&&a(r[n-1])&&(i=parseInt(r.pop(),10)),[e,t,r,i]}(...arguments) -return this._later(e,t,r,i)}throttle(){j++ -var e,[t,r,i,n,s=!0]=v(...arguments),a=u(t,r,this._timers) -if(-1===a)e=this._later(t,r,s?g:i,n),s&&this._join(t,r,i) -else{e=this._timers[a+1] -var o=a+4 -this._timers[o]!==g&&(this._timers[o]=i)}return e}debounce(){x++ -var e,[t,r,i,n,s=!1]=v(...arguments),a=this._timers,o=u(t,r,a) -if(-1===o)e=this._later(t,r,s?g:i,n),s&&this._join(t,r,i) -else{var l=this._platform.now()+n,c=o+4 -a[c]===g&&(i=g),e=a[o+1] -var h=d(l,a) -if(o+6===h)a[o]=l,a[c]=i -else{var p=this._timers[o+5] -this._timers.splice(h,0,l,e,t,r,i,p),this._timers.splice(o,6)}0===o&&this._reinstallTimerTimeout()}return e}cancelTimers(){D++,this._clearTimerTimeout(),this._timers=[],this._cancelAutorun()}hasTimers(){return this._timers.length>0||this._autorun}cancel(e){if(N++,null==e)return!1 -var t=typeof e -return"number"===t?this._cancelLaterTimer(e):!("object"!==t||!e.queue||!e.method)&&e.queue.cancel(e)}ensureInstance(){this._ensureInstance()}getDebugInfo(){if(this.DEBUG)return{autorun:this._autorunStack,counters:this.counters,timers:c(this._timers,6,2),instanceStack:[this.currentInstance,...this.instanceStack].map((e=>e&&e._getDebugInfo(this.DEBUG)))}}_end(e){var t=this.currentInstance,r=null -if(null===t)throw new Error("end called without begin") -var i,n=!1 -try{i=t.flush(e)}finally{if(!n)if(n=!0,1===i){var s=this.queueNames[t.queueNameIndex] -this._scheduleAutorun(s)}else this.currentInstance=null,this.instanceStack.length>0&&(r=this.instanceStack.pop(),this.currentInstance=r),this._trigger("end",t,r),this._onEnd(t,r)}}_join(e,t,r){return null===this.currentInstance?this._run(e,t,r):void 0===e&&void 0===r?t():t.apply(e,r)}_run(e,t,r){var i=o(this.options) -if(this.begin(),i)try{return t.apply(e,r)}catch(n){i(n)}finally{this.end()}else try{return t.apply(e,r)}finally{this.end()}}_cancelAutorun(){this._autorun&&(this._platform.clearNext(),this._autorun=!1,this._autorunStack=null)}_later(e,t,r,i){var n=this.DEBUG?new Error:void 0,s=this._platform.now()+i,a=y++ -if(0===this._timers.length)this._timers.push(s,a,e,t,r,n),this._installTimerTimeout() -else{var o=d(s,this._timers) -this._timers.splice(o,0,s,a,e,t,r,n),this._reinstallTimerTimeout()}return a}_cancelLaterTimer(e){for(var t=1;t0&&(this.begin(),this._scheduleExpiredTimers(),this.end())}_scheduleExpiredTimers(){for(var e=this._timers,t=0,r=e.length,i=this._defaultQueue,n=this._platform.now();tn)break -var s=e[t+4] -if(s!==g){var a=e[t+2],o=e[t+3],l=e[t+5] -this.currentInstance.schedule(i,a,o,s,!1,l)}}e.splice(0,t),this._installTimerTimeout()}_reinstallTimerTimeout(){this._clearTimerTimeout(),this._installTimerTimeout()}_clearTimerTimeout(){null!==this._timerTimeoutId&&(this._platform.clearTimeout(this._timerTimeoutId),this._timerTimeoutId=null)}_installTimerTimeout(){if(0!==this._timers.length){var e=this._timers[0],t=this._platform.now(),r=Math.max(0,e-t) -this._timerTimeoutId=this._platform.setTimeout(this._boundRunExpiredTimers,r)}}_ensureInstance(){var e=this.currentInstance -return null===e&&(this._autorunStack=this.DEBUG?new Error:void 0,e=this.begin(),this._scheduleAutorun(this.queueNames[0])),e}_scheduleAutorun(e){I++ -var t=this._platform.next,r=this.options.flush -r?r(e,t):t(),this._autorun=!0}}B.Queue=h,B.buildPlatform=n,B.buildNext=i -e.default=B})),e("dag-map",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var t=function(){function e(){this._vertices=new r}return e.prototype.add=function(e,t,r,i){if(!e)throw new Error("argument `key` is required") -var n=this._vertices,s=n.add(e) -if(s.val=t,r)if("string"==typeof r)n.addEdge(s,n.add(r)) -else for(var a=0;a0){var i="cycle detected: "+t -throw this.each(this.path,(function(e){i+=" <- "+e})),new Error(i)}}},e.prototype.reset=function(){this.stack.length=0,this.path.length=0,this.result.length=0 -for(var e=0,t=this.length;e=0){var o=this[a] -if(o.flag)continue -if(o.flag=!0,n.push(a),t===o.key)break -i.push(~a),this.pushIncoming(o)}else n.pop(),s.push(~a)}},e.prototype.pushIncoming=function(e){for(var t=this.stack,r=e.length-1;r>=0;r--){var i=e[r] -this[i].flag||t.push(i)}},e.prototype.each=function(e,t){for(var r=0,i=e.length;r=e.length?{done:!0}:{done:!1,value:e[t++]}} -throw new TypeError("Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(t=e[Symbol.iterator]()).next.bind(t)},e.createSuper=function(e){return function(){var t,n=r(e) -if(i){var s=r(this).constructor -t=Reflect.construct(n,arguments,s)}else t=n.apply(this,arguments) -return o(this,t)}},e.inheritsLoose=function(e,r){0 -e.prototype=Object.create(null===r?null:r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),null!==r&&t(e,r)},e.objectDestructuringEmpty=function(e){0},e.possibleConstructorReturn=o,e.taggedTemplateLiteralLoose=function(e,t){t||(t=e.slice(0)) -return e.raw=t,e},e.wrapNativeSuper=function(e){if(n.has(e))return n.get(e) -function r(){}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),n.set(e,r),t(r,e)} -var t=Object.setPrototypeOf,r=Object.getPrototypeOf,i="object"==typeof Reflect&&"function"==typeof Reflect.construct,n=new Map -function s(e,t){for(var r=0;re.length)&&(t=e.length) -for(var r=new Array(t),i=0;ii.ENV.EXTEND_PROTOTYPES}),U.getOwner=S.getOwner,U.setOwner=S.setOwner,U.Application=C.default,U.ApplicationInstance=M.default,Object.defineProperty(U,"Resolver",{get:()=>k.default}),Object.defineProperty(U,"DefaultResolver",{get:()=>U.Resolver}),U.Engine=j.default,U.EngineInstance=x.default,U.assign=D.assign,U.merge=D.merge,U.generateGuid=n.generateGuid,U.GUID_KEY=n.GUID_KEY,U.guidFor=n.guidFor,U.inspect=n.inspect,U.makeArray=n.makeArray,U.canInvoke=n.canInvoke,U.tryInvoke=n.tryInvoke,U.wrap=n.wrap,U.uuid=n.uuid,U.Container=s.Container,U.Registry=s.Registry,U.assert=B.assert,U.warn=B.warn,U.debug=B.debug,U.deprecate=B.deprecate,U.deprecateFunc=B.deprecateFunc,U.runInDebug=B.runInDebug,U.Error=T.default,U.Debug={registerDeprecationHandler:B.registerDeprecationHandler,registerWarnHandler:B.registerWarnHandler,isComputed:l.isComputed},U.instrument=a.instrument,U.subscribe=a.subscribe,U.Instrumentation={instrument:a.instrument,subscribe:a.subscribe,unsubscribe:a.unsubscribe,reset:a.reset},U.run=P.run,U.computed=b.computed,U._descriptor=l.nativeDescDecorator,U._tracked=l.tracked,U.cacheFor=l.getCachedValueFor,U.ComputedProperty=l.ComputedProperty,U._setClassicDecorator=l.setClassicDecorator,U.meta=o.meta,U.get=l.get,U.getWithDefault=l.getWithDefault,U._getPath=l._getPath,U.set=l.set,U.trySet=l.trySet,U.FEATURES=(0,D.assign)({isEnabled:u.isEnabled},u.FEATURES),U._Cache=n.Cache,U.on=l.on,U.addListener=l.addListener,U.removeListener=l.removeListener,U.sendEvent=l.sendEvent,U.hasListeners=l.hasListeners,U.isNone=l.isNone,U.isEmpty=l.isEmpty,U.isBlank=l.isBlank -U.isPresent=l.isPresent,U.notifyPropertyChange=l.notifyPropertyChange,U.beginPropertyChanges=l.beginPropertyChanges,U.endPropertyChanges=l.endPropertyChanges,U.changeProperties=l.changeProperties,U.platform={defineProperty:!0,hasPropertyAccessors:!0},U.defineProperty=l.defineProperty,U.destroy=L.destroy,U.libraries=l.libraries,U.getProperties=l.getProperties,U.setProperties=l.setProperties,U.expandProperties=l.expandProperties,U.addObserver=l.addObserver,U.removeObserver=l.removeObserver,U.aliasMethod=l.aliasMethod,U.observer=l.observer,U.mixin=l.mixin,U.Mixin=l.Mixin,U._createCache=l.createCache,U._cacheGetValue=l.getValue,U._cacheIsConst=l.isConst,U._registerDestructor=L.registerDestructor,U._unregisterDestructor=L.unregisterDestructor,U._associateDestroyableChild=L.associateDestroyableChild,U._assertDestroyablesDestroyed=L.assertDestroyablesDestroyed,U._enableDestroyableTracking=L.enableDestroyableTracking,U._isDestroying=L.isDestroying,U._isDestroyed=L.isDestroyed,Object.defineProperty(U,"onerror",{get:A.getOnerror,set:A.setOnerror,enumerable:!1}),Object.defineProperty(U,"testing",{get:B.isTesting,set:B.setTesting,enumerable:!1}) -U._Backburner=d.default,N.LOGGER&&(U.Logger=h.default),U.A=y.A,U.String={loc:m.loc,w:m.w,dasherize:m.dasherize,decamelize:m.decamelize,camelize:m.camelize,classify:m.classify,underscore:m.underscore,capitalize:m.capitalize},U.Object=y.Object,U._RegistryProxyMixin=y.RegistryProxyMixin,U._ContainerProxyMixin=y.ContainerProxyMixin,U.compare=y.compare,U.copy=y.copy,U.isEqual=y.isEqual,U.inject=function(){},U.inject.service=g.inject,U.inject.controller=p.inject,U.Array=y.Array,U.Comparable=y.Comparable,U.Enumerable=y.Enumerable,U.ArrayProxy=y.ArrayProxy,U.ObjectProxy=y.ObjectProxy,U.ActionHandler=y.ActionHandler,U.CoreObject=y.CoreObject,U.NativeArray=y.NativeArray,U.Copyable=y.Copyable,U.MutableEnumerable=y.MutableEnumerable,U.MutableArray=y.MutableArray,U.Evented=y.Evented,U.PromiseProxyMixin=y.PromiseProxyMixin,U.Observable=y.Observable,U.typeOf=y.typeOf,U.isArray=y.isArray,U.Object=y.Object -U.onLoad=C.onLoad,U.runLoadHooks=C.runLoadHooks,U.Controller=p.default,U.ControllerMixin=f.default,U.Service=g.default,U._ProxyMixin=y._ProxyMixin,U.RSVP=y.RSVP,U.Namespace=y.Namespace,U._action=b.action,U._dependentKeyCompat=v.dependentKeyCompat,Object.defineProperty(U,"STRINGS",{configurable:!1,get:m._getStrings,set:m._setStrings}),Object.defineProperty(U,"BOOTED",{configurable:!1,enumerable:!1,get:l.isNamespaceSearchDisabled,set:l.setNamespaceSearchDisabled}),U.Component=_.Component,_.Helper.helper=_.helper,U.Helper=_.Helper,[["Checkbox","@ember/component/checkbox",_.Checkbox,!0],["TextField","@ember/component/text-field",_.TextField,!0],["TextArea","@ember/component/text-area",_.TextArea,!0],["LinkComponent","@ember/routing/link-component",_.LinkComponent,!0],["TextSupport",null,R.TextSupport,!1],["TargetActionSupport",null,y.TargetActionSupport,!1]].forEach((([e,t,r,i])=>{Object.defineProperty(U,e,{get:()=>(null!==t&&` or importing from '${t}'`,i&&` Install the \`@ember/legacy-built-in-components\` addon and use \`import { ${e} } from '@ember/legacy-built-in-components';\` instead.`,r),configurable:!0,enumerable:!0}),U[`_Legacy${e}`]=r})),U._setComponentManager=_.setComponentManager,U._componentManagerCapabilities=_.componentCapabilities,U._setModifierManager=F.setModifierManager,U._modifierManagerCapabilities=_.modifierCapabilities,U._getComponentTemplate=F.getComponentTemplate,U._setComponentTemplate=F.setComponentTemplate,U._templateOnlyComponent=I.templateOnlyComponent,U._Input=_.Input,U._hash=I.hash,U._array=I.array,U._concat=I.concat,U._get=I.get,U._on=I.on,U._fn=I.fn -U._helperManagerCapabilities=F.helperCapabilities,U._setHelperManager=F.setHelperManager,U._invokeHelper=I.invokeHelper,U._captureRenderTree=c.captureRenderTree,i.ENV.EXTEND_PROTOTYPES.String&&(String.prototype.htmlSafe=function(){return(0,_.htmlSafe)(this)}) -Object.defineProperty(U.String,"htmlSafe",{enumerable:!0,configurable:!0,get:()=>_.htmlSafe}),Object.defineProperty(U.String,"isHTMLSafe",{enumerable:!0,configurable:!0,get:()=>_.isHTMLSafe}),Object.defineProperty(U,"TEMPLATES",{get:_.getTemplates,set:_.setTemplates,configurable:!1,enumerable:!1}),U.VERSION=E.default,N.JQUERY_INTEGRATION&&!R.jQueryDisabled&&Object.defineProperty(U,"$",{get:()=>R.jQuery,configurable:!0,enumerable:!0}),U.ViewUtils={isSimpleClick:R.isSimpleClick,getElementView:R.getElementView,getViewElement:R.getViewElement,getViewBounds:R.getViewBounds,getViewClientRects:R.getViewClientRects,getViewBoundingClientRect:R.getViewBoundingClientRect,getRootViews:R.getRootViews,getChildViews:R.getChildViews,isSerializationFirstNode:_.isSerializationFirstNode},U.ComponentLookup=R.ComponentLookup,U.EventDispatcher=R.EventDispatcher,U.Location=O.Location,U.AutoLocation=O.AutoLocation,U.HashLocation=O.HashLocation,U.HistoryLocation=O.HistoryLocation,U.NoneLocation=O.NoneLocation,U.controllerFor=O.controllerFor,U.generateControllerFactory=O.generateControllerFactory,U.generateController=O.generateController,U.RouterDSL=O.RouterDSL,U.Router=O.Router,U.Route=O.Route,(0,C.runLoadHooks)("Ember.Application",C.default),U.DataAdapter=w.DataAdapter,U.ContainerDebugAdapter=w.ContainerDebugAdapter -var $={template:_.template,Utils:{escapeExpression:_.escapeExpression}},H={template:_.template} -function q(e){Object.defineProperty(U,e,{configurable:!0,enumerable:!0,get(){if((0,r.has)("ember-template-compiler")){var t=(0,r.default)("ember-template-compiler") -H.precompile=$.precompile=t.precompile,H.compile=$.compile=t.compile,H.registerPlugin=t.registerPlugin,Object.defineProperty(U,"HTMLBars",{configurable:!0,writable:!0,enumerable:!0,value:H}),Object.defineProperty(U,"Handlebars",{configurable:!0,writable:!0,enumerable:!0,value:$})}return"Handlebars"===e?$:H}})}function V(e){Object.defineProperty(U,e,{configurable:!0,enumerable:!0,get(){if((0,r.has)("ember-testing")){var t=(0,r.default)("ember-testing"),{Test:i,Adapter:n,QUnitAdapter:s,setupForTesting:a}=t -return i.Adapter=n,i.QUnitAdapter=s,Object.defineProperty(U,"Test",{configurable:!0,writable:!0,enumerable:!0,value:i}),Object.defineProperty(U,"setupForTesting",{configurable:!0,writable:!0,enumerable:!0,value:a}),"Test"===e?i:a}}})}q("HTMLBars"),q("Handlebars"),V("Test"),V("setupForTesting"),(0,C.runLoadHooks)("Ember"),U.__loader={require:r.default,define:e,registry:void 0!==requirejs?requirejs.entries:r.default.entries} -t.default=U})),e("ember/version",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default="3.28.8"})),e("route-recognizer",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var t=Object.create -function r(){var e=t(null) -return e.__=void 0,delete e.__,e}var i=function(e,t,r){this.path=e,this.matcher=t,this.delegate=r} -i.prototype.to=function(e,t){var r=this.delegate -if(r&&r.willAddRoute&&(e=r.willAddRoute(this.matcher.target,e)),this.matcher.add(this.path,e),t){if(0===t.length)throw new Error("You must have an argument in the function passed to `to`") -this.matcher.addChild(this.path,e,t,this.delegate)}} -var n=function(e){this.routes=r(),this.children=r(),this.target=e} -function s(e,t,r){return function(n,a){var o=e+n -if(!a)return new i(o,t,r) -a(s(o,t,r))}}function a(e,t,r){for(var i=0,n=0;n0&&47===t.charCodeAt(0)&&(t=t.substr(1)) -for(var i=t.split("/"),n=void 0,s=void 0,a=0;a2&&"[]"===s.slice(a-2)&&(o=!0,r[s=s.slice(0,a-2)]||(r[s]=[])),l=n[1]?S(n[1]):""),o?r[s].push(l):r[s]=l}return r},C.prototype.recognize=function(e){var t,r=[this.rootState],i={},n=!1,s=e.indexOf("#");-1!==s&&(e=e.substr(0,s)) -var a=e.indexOf("?") -if(-1!==a){var o=e.substr(a+1,e.length) -e=e.substr(0,a),i=this.parseQueryString(o)}"/"!==e.charAt(0)&&(e="/"+e) -var u=e -C.ENCODE_AND_DECODE_PATH_SEGMENTS?e=l(e):(e=decodeURI(e),u=decodeURI(u)) -var c=e.length -c>1&&"/"===e.charAt(c-1)&&(e=e.substr(0,c-1),u=u.substr(0,u.length-1),n=!0) -for(var d=0;d0){var i=e[r-1] -if(function(e){return e&&o.call(e,"queryParams")}(i))return t=i.queryParams,[a.call(e,0,r-1),t]}return[e,null]}function c(e){for(var t in e){var r=e[t] -if("number"==typeof r)e[t]=""+r -else if(Array.isArray(r))for(var i=0,n=r.length;i{throw this.router.transitionDidError(e,this)}),g("Handle Abort"))}else this.promise=r.Promise.resolve(this[b]),this[v]={}}then(e,t,r){return this.promise.then(e,t,r)}catch(e,t){return this.promise.catch(e,t)}finally(e,t){return this.promise.finally(e,t)}abort(){this.rollback() -var e=new _(this.router,void 0,void 0,void 0) -return e.to=this.from,e.from=this.from,e.isAborted=!0,this.router.routeWillChange(e),this.router.routeDidChange(e),this}rollback(){this.isAborted||(d(this.router,this.sequence,this.targetName+": transition was aborted"),void 0!==this.intent&&null!==this.intent&&(this.intent.preTransitionState=this.router.state),this.isAborted=!0,this.isActive=!1,this.router.activeTransition=void 0)}redirect(e){this.rollback(),this.router.routeWillChange(e)}retry(){this.abort() -var e=this.router.transitionByIntent(this.intent,!1) -return null!==this.urlMethod&&e.method(this.urlMethod),e}method(e){return this.urlMethod=e,this}send(e=!1,t,r,i,n){this.trigger(e,t,r,i,n)}trigger(e=!1,t,...r){"string"==typeof e&&(t=e,e=!1),this.router.triggerEvent(this[b].routeInfos.slice(0,this.resolveIndex+1),e,t,r)}followRedirects(){var e=this.router -return this.promise.catch((function(t){return e.activeTransition?e.activeTransition.followRedirects():r.Promise.reject(t)}))}toString(){return"Transition (sequence "+this.sequence+")"}log(e){d(this.router,this.sequence,e)}}function E(e){return d(e.router,e.sequence,"detected abort."),n()}function R(e){return"object"==typeof e&&e instanceof _&&e.isTransition}e.InternalTransition=_ -var O=new WeakMap -function w(e,r={},i=!1){return e.map(((n,s)=>{var{name:a,params:o,paramNames:l,context:u,route:c}=n -if(O.has(n)&&i){var d=O.get(n) -d=function(e,r){var i={get metadata(){return P(e)}} -if(!Object.isExtensible(r)||r.hasOwnProperty("metadata"))return Object.freeze((0,t.assign)({},r,i)) -return(0,t.assign)(r,i)}(c,d) -var h=T(d,u) -return O.set(n,h),h}var p={find(t,r){var i,n=[] -3===t.length&&(n=e.map((e=>O.get(e)))) -for(var s=0;e.length>s;s++)if(i=O.get(e[s]),t.call(r,i,s,n))return i},get name(){return a},get paramNames(){return l},get metadata(){return P(n.route)},get parent(){var t=e[s-1] -return void 0===t?null:O.get(t)},get child(){var t=e[s+1] -return void 0===t?null:O.get(t)},get localName(){var e=this.name.split(".") -return e[e.length-1]},get params(){return o},get queryParams(){return r}} -return i&&(p=T(p,u)),O.set(n,p),p}))}function T(e,r){var i={get attributes(){return r}} -return!Object.isExtensible(e)||e.hasOwnProperty("attributes")?Object.freeze((0,t.assign)({},e,i)):(0,t.assign)(e,i)}function P(e){return null!=e&&void 0!==e.buildRouteInfoMetadata?e.buildRouteInfoMetadata():null}class A{constructor(e,t,r,i){this._routePromise=void 0,this._route=null,this.params={},this.isResolved=!1,this.name=t,this.paramNames=r,this.router=e,i&&this._processRoute(i)}getModel(e){return r.Promise.resolve(this.context)}serialize(e){return this.params||{}}resolve(e){return r.Promise.resolve(this.routePromise).then((t=>(s(e),t))).then((()=>this.runBeforeModelHook(e))).then((()=>s(e))).then((()=>this.getModel(e))).then((t=>(s(e),t))).then((t=>this.runAfterModelHook(e,t))).then((t=>this.becomeResolved(e,t)))}becomeResolved(e,t){var r,i=this.serialize(t) -e&&(this.stashResolvedModel(e,t),e[v]=e[v]||{},e[v][this.name]=i) -var n=t===this.context -!("context"in this)&&n||(r=t) -var s=O.get(this),a=new S(this.router,this.name,this.paramNames,i,this.route,r) -return void 0!==s&&O.set(a,s),a}shouldSupersede(e){if(!e)return!0 -var t=e.context===this.context -return e.name!==this.name||"context"in this&&!t||this.hasOwnProperty("params")&&!function(e,t){if(!e!=!t)return!1 -if(!e)return!0 -for(var r in e)if(e.hasOwnProperty(r)&&e[r]!==t[r])return!1 -return!0}(this.params,e.params)}get route(){return null!==this._route?this._route:this.fetchRoute()}set route(e){this._route=e}get routePromise(){return this._routePromise||this.fetchRoute(),this._routePromise}set routePromise(e){this._routePromise=e}log(e,t){e.log&&e.log(this.name+": "+t)}updateRoute(e){return e._internalName=this.name,this.route=e}runBeforeModelHook(e){var t -return e.trigger&&e.trigger(!0,"willResolveModel",e,this.route),this.route&&void 0!==this.route.beforeModel&&(t=this.route.beforeModel(e)),R(t)&&(t=null),r.Promise.resolve(t)}runAfterModelHook(e,t){var i,n,s=this.name -return this.stashResolvedModel(e,t),void 0!==this.route&&void 0!==this.route.afterModel&&(i=this.route.afterModel(t,e)),i=R(n=i)?null:n,r.Promise.resolve(i).then((()=>e.resolvedModels[s]))}stashResolvedModel(e,t){e.resolvedModels=e.resolvedModels||{},e.resolvedModels[this.name]=t}fetchRoute(){var e=this.router.getRoute(this.name) -return this._processRoute(e)}_processRoute(e){return this.routePromise=r.Promise.resolve(e),null!==(t=e)&&"object"==typeof t&&"function"==typeof t.then?(this.routePromise=this.routePromise.then((e=>this.updateRoute(e))),this.route=void 0):e?this.updateRoute(e):void 0 -var t}}e.InternalRouteInfo=A -class S extends A{constructor(e,t,r,i,n,s){super(e,t,r,n),this.params=i,this.isResolved=!0,this.context=s}resolve(e){return e&&e.resolvedModels&&(e.resolvedModels[this.name]=this.context),r.Promise.resolve(this)}}class C extends A{constructor(e,t,r,i,n){super(e,t,r,n),this.params={},this.params=i}getModel(e){var t=this.params -e&&e[y]&&(l(t={},this.params),t.queryParams=e[y]) -var i,n=this.route -return n.deserialize?i=n.deserialize(t,e):n.model&&(i=n.model(t,e)),i&&R(i)&&(i=void 0),r.Promise.resolve(i)}}class k extends A{constructor(e,t,r,i){super(e,t,r),this.context=i,this.serializer=this.router.getSerializer(t)}getModel(e){return void 0!==this.router.log&&this.router.log(this.name+": resolving provided model"),super.getModel(e)}serialize(e){var{paramNames:t,context:r}=this -e||(e=r) -var i={} -if(h(e))return i[t[0]]=e,i -if(this.serializer)return this.serializer.call(null,e,t) -if(void 0!==this.route&&this.route.serialize)return this.route.serialize(e,t) -if(1===t.length){var n=t[0] -return/_id$/.test(n)?i[n]=e.id:i[n]=e,i}}}class M{constructor(e,t={}){this.router=e,this.data=t}}function j(e,t,r){var i=e.routeInfos,n=t.resolveIndex>=i.length?i.length-1:t.resolveIndex,s=t.isAborted -throw new I(r,e.routeInfos[n].route,s,e)}function x(e,t){if(t.resolveIndex!==e.routeInfos.length)return e.routeInfos[t.resolveIndex].resolve(t).then(D.bind(null,e,t),null,e.promiseLabel("Proceed"))}function D(e,t,r){var i=e.routeInfos[t.resolveIndex].isResolved -if(e.routeInfos[t.resolveIndex++]=r,!i){var{route:n}=r -void 0!==n&&n.redirect&&n.redirect(r.context,t)}return s(t),x(e,t)}class N{constructor(){this.routeInfos=[],this.queryParams={},this.params={}}promiseLabel(e){var t="" -return p(this.routeInfos,(function(e){return""!==t&&(t+="."),t+=e.name,!0})),g("'"+t+"': "+e)}resolve(e){var t=this.params -return p(this.routeInfos,(e=>(t[e.name]=e.params||{},!0))),e.resolveIndex=0,r.Promise.resolve(null,this.promiseLabel("Start transition")).then(x.bind(null,this,e),null,this.promiseLabel("Resolve route")).catch(j.bind(null,this,e),this.promiseLabel("Handle error")).then((()=>this))}}e.TransitionState=N -class I{constructor(e,t,r,i){this.error=e,this.route=t,this.wasAborted=r,this.state=i}}e.TransitionError=I -class F extends M{constructor(e,t,r,i=[],n={},s){super(e,s),this.preTransitionState=void 0,this.name=t,this.pivotHandler=r,this.contexts=i,this.queryParams=n}applyToState(e,t){var r=u([this.name].concat(this.contexts))[0],i=this.router.recognizer.handlersFor(r[0]),n=i[i.length-1].handler -return this.applyToHandlers(e,i,n,t,!1)}applyToHandlers(e,t,r,i,n){var s,a,o=new N,u=this.contexts.slice(0),c=t.length -if(this.pivotHandler)for(s=0,a=t.length;s=0;--s){var d=t[s],h=d.handler,p=e.routeInfos[s],f=null -if(f=d.names.length>0?s>=c?this.createParamHandlerInfo(h,d.names,u,p):this.getHandlerInfoForDynamicSegment(h,d.names,u,p,r,s):this.createParamHandlerInfo(h,d.names,u,p),n){f=f.becomeResolved(null,f.context) -var m=p&&p.context -d.names.length>0&&void 0!==p.context&&f.context===m&&(f.params=p&&p.params),f.context=m}var g=p;(s>=c||f.shouldSupersede(p))&&(c=Math.min(s,c),g=f),i&&!n&&(g=g.becomeResolved(null,g.context)),o.routeInfos.unshift(g)}if(u.length>0)throw new Error("More context objects were passed than there are dynamic segments for the route: "+r) -return i||this.invalidateChildren(o.routeInfos,c),l(o.queryParams,this.queryParams||{}),i&&e.queryParams&&l(o.queryParams,e.queryParams),o}invalidateChildren(e,t){for(var r=t,i=e.length;r0){if(h(a=r[r.length-1]))return this.createParamHandlerInfo(e,t,r,i) -r.pop()}else{if(i&&i.name===e)return i -if(!this.preTransitionState)return i -var o=this.preTransitionState.routeInfos[s] -a=o&&o.context}return new k(this.router,e,t,a)}createParamHandlerInfo(e,t,r,i){for(var n={},s=t.length,a=[];s--;){var o=i&&e===i.name&&i.params||{},l=r[r.length-1],u=t[s] -h(l)?n[u]=""+r.pop():o.hasOwnProperty(u)?n[u]=o[u]:a.push(u)}if(a.length>0)throw new Error(`You didn't provide enough string/numeric parameters to satisfy all of the dynamic segments for route ${e}. Missing params: ${a}`) -return new C(this.router,e,t,n)}}var L=function(){function e(t){var r=Error.call(this,t) -this.name="UnrecognizedURLError",this.message=t||"UnrecognizedURL",Error.captureStackTrace?Error.captureStackTrace(this,e):this.stack=r.stack}return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}() -class z extends M{constructor(e,t,r){super(e,r),this.url=t,this.preTransitionState=void 0}applyToState(e){var t,r,i=new N,n=this.router.recognizer.recognize(this.url) -if(!n)throw new L(this.url) -var s=!1,a=this.url -function o(e){if(e&&e.inaccessibleByURL)throw new L(a) -return e}for(t=0,r=n.length;t=0&&i;--r){var n=t[r],s=n.handler -e.add(t,{as:s}),i="/"===n.path||""===n.path||".index"===s.slice(-6)}}))}hasRoute(e){return this.recognizer.hasRoute(e)}queryParamsTransition(e,t,r,i){if(this.fireQueryParamDidChange(i,e),!t&&this.activeTransition)return this.activeTransition -var n=new _(this,void 0,void 0) -return n.queryParamsOnly=!0,r.queryParams=this.finalizeQueryParamChange(i.routeInfos,i.queryParams,n),n[y]=i.queryParams,this.toReadOnlyInfos(n,i),this.routeWillChange(n),n.promise=n.promise.then((e=>(n.isAborted||(this._updateURL(n,r),this.didTransition(this.currentRouteInfos),this.toInfos(n,i.routeInfos,!0),this.routeDidChange(n)),e)),null,g("Transition complete")),n}transitionByIntent(e,t){try{return this.getTransitionByIntent(e,t)}catch(r){return new _(this,e,void 0,r,void 0)}}recognize(e){var t=new z(this,e),r=this.generateNewState(t) -if(null===r)return r -var i=w(r.routeInfos,r.queryParams) -return i[i.length-1]}recognizeAndLoad(e){var t=new z(this,e),i=this.generateNewState(t) -if(null===i)return r.Promise.reject(`URL ${e} was not recognized`) -var n=new _(this,t,i,void 0) -return n.then((()=>{var e=w(i.routeInfos,n[y],!0) -return e[e.length-1]}))}generateNewState(e){try{return e.applyToState(this.state,!1)}catch(t){return null}}getTransitionByIntent(e,t){var r,i=!!this.activeTransition,n=i?this.activeTransition[b]:this.state,s=e.applyToState(n,t),a=f(n.queryParams,s.queryParams) -if(B(s.routeInfos,n.routeInfos)){if(a){var o=this.queryParamsTransition(a,i,n,s) -return o.queryParamsOnly=!0,o}return this.activeTransition||new _(this,void 0,void 0)}if(t){var l=new _(this,void 0,s) -return l.isIntermediate=!0,this.toReadOnlyInfos(l,s),this.setupContexts(s,l),this.routeWillChange(l),this.activeTransition}return r=new _(this,e,s,void 0,this.activeTransition),function(e,t){if(e.length!==t.length)return!1 -for(var r=0,i=e.length;rthis.finalizeTransition(r,e)),null,g("Settle transition promise when transition is finalized")),i||this.notifyExistingHandlers(s,r),this.fireQueryParamDidChange(s,a),r}doTransition(e,t=[],r=!1){var i,n=t[t.length-1],s={} -if(void 0!==n&&n.hasOwnProperty("queryParams")&&(s=t.pop().queryParams),void 0===e){d(this,"Updating query params") -var{routeInfos:a}=this.state -i=new F(this,a[a.length-1].name,void 0,[],s)}else"/"===e.charAt(0)?(d(this,"Attempting URL transition to "+e),i=new z(this,e)):(d(this,"Attempting transition to "+e),i=new F(this,e,void 0,t,s)) -return this.transitionByIntent(i,r)}finalizeTransition(e,t){try{d(e.router,e.sequence,"Resolved all models on destination route; finalizing transition.") -var i=t.routeInfos -return this.setupContexts(t,e),e.isAborted?(this.state.routeInfos=this.currentRouteInfos,r.Promise.reject(E(e))):(this._updateURL(e,t),e.isActive=!1,this.activeTransition=void 0,this.triggerEvent(this.currentRouteInfos,!0,"didTransition",[]),this.didTransition(this.currentRouteInfos),this.toInfos(e,t.routeInfos,!0),this.routeDidChange(e),d(this,e.sequence,"TRANSITION COMPLETE."),i[i.length-1].route)}catch(a){if("object"!=typeof(s=a)||null===s||"TRANSITION_ABORTED"!==s.code){var n=e[b].routeInfos -e.trigger(!0,"error",a,e,n[n.length-1].route),e.abort()}throw a}var s}setupContexts(e,t){var r,i,n,s=this.partitionRoutes(this.state,e) -for(r=0,i=s.exited.length;r=0;--a){var o=i[a] -l(s,o.params),o.route.inaccessibleByURL&&(r=null)}if(r){s.queryParams=e._visibleQueryParams||t.queryParams -var u=this.recognizer.generate(n,s),c=e.isCausedByInitialTransition,d="replace"===r&&!e.isCausedByAbortingTransition,h=e.queryParamsOnly&&"replace"===r,p="replace"===r&&e.isCausedByAbortingReplaceTransition -c||d||h||p?this.replaceURL(u):this.updateURL(u)}}}finalizeQueryParamChange(e,t,r){for(var i in t)t.hasOwnProperty(i)&&null===t[i]&&delete t[i] -var n=[] -this.triggerEvent(e,!0,"finalizeQueryParamChange",[t,n,r]),r&&(r._visibleQueryParams={}) -for(var s={},a=0,o=n.length;a0){var i=w(r,(0,t.assign)({},this._lastQueryParams),!0) -e.from=i[i.length-1]||null}}toInfos(e,r,i=!1){if(void 0!==e&&r.length>0){var n=w(r,(0,t.assign)({},e[y]),i) -e.to=n[n.length-1]||null}}notifyExistingHandlers(e,t){var r,i,n,s,a=this.state.routeInfos -for(i=a.length,r=0;r{for(var e=0;e{t===r?g(e,r):f(e,r)}),(t=>b(e,t)))}(e,t):"function"==typeof r?function(e,t,r){n.async((e=>{var i=!1,n=function(e,t,r,i){try{e.call(t,r,i)}catch(n){return n}}(r,t,(r=>{i||(i=!0,t===r?g(e,r):f(e,r))}),(t=>{i||(i=!0,b(e,t))}),e._label) -!i&&n&&(i=!0,b(e,n))}),e)}(e,t,r):g(e,t)}function f(e,t){if(e===t)g(e,t) -else if(n=typeof(i=t),null===i||"object"!==n&&"function"!==n)g(e,t) -else{var r -try{r=t.then}catch(s){return void b(e,s)}p(e,t,r)}var i,n}function m(e){e._onError&&e._onError(e._result),y(e)}function g(e,t){e._state===c&&(e._result=t,e._state=d,0===e._subscribers.length?n.instrument&&o("fulfilled",e):n.async(y,e))}function b(e,t){e._state===c&&(e._state=h,e._result=t,n.async(m,e))}function v(e,t,r,i){var s=e._subscribers,a=s.length -e._onError=null,s[a]=t,s[a+d]=r,s[a+h]=i,0===a&&e._state&&n.async(y,e)}function y(e){var t=e._subscribers,r=e._state -if(n.instrument&&o(r===d?"fulfilled":"rejected",e),0!==t.length){for(var i,s,a=e._result,l=0;l_(s,a,p,l)))}return a}class R{constructor(e,t,r,i){this._instanceConstructor=e,this.promise=new e(u,i),this._abortOnReject=r,this._isUsingOwnPromise=e===P,this._isUsingOwnResolve=e.resolve===l,this._init(...arguments)}_init(e,t){var r=t.length||0 -this.length=r,this._remaining=r,this._result=new Array(r),this._enumerate(t)}_enumerate(e){for(var t=this.length,r=this.promise,i=0;r._state===c&&it(e))),t,r)}else this._willSettleAt(i.resolve(e),t,r)}_eachEntry(e,t,r){null!==e&&"object"==typeof e?this._settleMaybeThenable(e,t,r):this._setResultAt(d,t,e,r)}_settledAt(e,t,r,i){var n=this.promise -n._state===c&&(this._abortOnReject&&e===h?b(n,r):(this._setResultAt(e,t,r,i),this._checkFullfillment()))}_setResultAt(e,t,r,i){this._remaining--,this._result[t]=r}_willSettleAt(e,t,r){v(e,void 0,(e=>this._settledAt(d,t,e,r)),(e=>this._settledAt(h,t,e,r)))}}function O(e,t,r){this._remaining--,this._result[t]=e===d?{state:"fulfilled",value:r}:{state:"rejected",reason:r}}var w="rsvp_"+Date.now()+"-",T=0 -class P{constructor(e,t){this._id=T++,this._label=t,this._state=void 0,this._result=void 0,this._subscribers=[],n.instrument&&o("created",this),u!==e&&("function"!=typeof e&&function(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}(),this instanceof P?function(e,t){var r=!1 -try{t((t=>{r||(r=!0,f(e,t))}),(t=>{r||(r=!0,b(e,t))}))}catch(i){b(e,i)}}(this,e):function(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}())}_onError(e){n.after((()=>{this._onError&&n.trigger("error",e,this._label)}))}catch(e,t){return this.then(void 0,e,t)}finally(e,t){var r=this,i=r.constructor -return"function"==typeof e?r.then((t=>i.resolve(e()).then((()=>t))),(t=>i.resolve(e()).then((()=>{throw t})))):r.then(e,e)}}function A(e,t){return{then:(r,i)=>e.call(t,r,i)}}function S(e,t){var r=function(){for(var r=arguments.length,i=new Array(r+1),n=!1,s=0;sC(e,t,r,i)))}(l,i,e,this):C(l,i,e,this)} -return r.__proto__=e,r}function C(e,t,r,i){try{r.apply(i,t)}catch(n){b(e,n)}return e}function k(e,t){return P.all(e,t)}e.Promise=P,P.cast=l,P.all=function(e,t){return Array.isArray(e)?new R(this,e,!0,t).promise:this.reject(new TypeError("Promise.all must be called with an array"),t)},P.race=function(e,t){var r=new this(u,t) -if(!Array.isArray(e))return b(r,new TypeError("Promise.race must be called with an array")),r -for(var i=0;r._state===c&&if(r,e)),(e=>b(r,e))) -return r},P.resolve=l,P.reject=function(e,t){var r=new this(u,t) -return b(r,e),r},P.prototype._guidKey=w,P.prototype.then=E -class M extends R{constructor(e,t,r){super(e,t,!1,r)}}function j(e,t){return Array.isArray(e)?new M(P,e,t).promise:P.reject(new TypeError("Promise.allSettled must be called with an array"),t)}function x(e,t){return P.race(e,t)}M.prototype._setResultAt=O -class D extends R{constructor(e,t,r=!0,i){super(e,t,r,i)}_init(e,t){this._result={},this._enumerate(t)}_enumerate(e){var t,r,i=Object.keys(e),n=i.length,s=this.promise -this._remaining=n -for(var a=0;s._state===c&&a{throw e})),e}function z(e){var t={resolve:void 0,reject:void 0} -return t.promise=new P(((e,r)=>{t.resolve=e,t.reject=r}),e),t}I.prototype._setResultAt=O -class B extends R{constructor(e,t,r,i){super(e,t,!0,i,r)}_init(e,t,r,i,n){var s=t.length||0 -this.length=s,this._remaining=s,this._result=new Array(s),this._mapFn=n,this._enumerate(t)}_setResultAt(e,t,r,i){if(i)try{this._eachEntry(this._mapFn(r,t),t,!1)}catch(n){this._settledAt(h,t,n,!1)}else this._remaining--,this._result[t]=r}}function U(e,t,r){return"function"!=typeof t?P.reject(new TypeError("map expects a function as a second argument"),r):P.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("map must be called with an array") -return new B(P,e,t,r).promise}))}function $(e,t){return P.resolve(e,t)}function H(e,t){return P.reject(e,t)}var q={} -class V extends B{_checkFullfillment(){if(0===this._remaining&&null!==this._result){var e=this._result.filter((e=>e!==q)) -g(this.promise,e),this._result=null}}_setResultAt(e,t,r,i){if(i){this._result[t]=r -var n,s=!0 -try{n=this._mapFn(r,t)}catch(a){s=!1,this._settledAt(h,t,a,!1)}s&&this._eachEntry(n,t,!1)}else this._remaining--,r||(this._result[t]=q)}}function W(e,t,r){return"function"!=typeof t?P.reject(new TypeError("filter expects function as a second argument"),r):P.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("filter must be called with an array") -return new V(P,e,t,r).promise}))}var G,Y=0 -function Q(e,t){ue[Y]=e,ue[Y+1]=t,2===(Y+=2)&&re()}var K="undefined"!=typeof window?window:void 0,J=K||{},X=J.MutationObserver||J.WebKitMutationObserver,Z="undefined"==typeof self&&"undefined"!=typeof process&&"[object process]"==={}.toString.call(process),ee="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel -function te(){return()=>setTimeout(ce,1)}var re,ie,ne,se,ae,oe,le,ue=new Array(1e3) -function ce(){for(var e=0;eoe(ce)):X?(ne=0,se=new X(ce),ae=document.createTextNode(""),se.observe(ae,{characterData:!0}),re=()=>ae.data=ne=++ne%2):ee?((ie=new MessageChannel).port1.onmessage=ce,re=()=>ie.port2.postMessage(0)):re=void 0===K&&"function"==typeof t?function(){try{var e=Function("return this")().require("vertx") -return void 0!==(G=e.runOnLoop||e.runOnContext)?function(){G(ce)}:te()}catch(t){return te()}}():te(),n.async=Q,n.after=e=>setTimeout(e,0) -var de=e.cast=$,he=(e,t)=>n.async(e,t) -function pe(){n.on(...arguments)}function fe(){n.off(...arguments)}if(e.async=he,"undefined"!=typeof window&&"object"==typeof window.__PROMISE_INSTRUMENTATION__){var me=window.__PROMISE_INSTRUMENTATION__ -for(var ge in s("instrument",!0),me)me.hasOwnProperty(ge)&&pe(ge,me[ge])}var be={asap:Q,cast:de,Promise:P,EventTarget:i,all:k,allSettled:j,race:x,hash:N,hashSettled:F,rethrow:L,defer:z,denodeify:S,configure:s,on:pe,off:fe,resolve:$,reject:H,map:U,async:he,filter:W} -e.default=be})),t("@ember/-internals/bootstrap")}(),"undefined"==typeof FastBoot){var preferNative=!1;(function(e){define("fetch",["exports","ember","rsvp"],(function(t,r,i){"use strict" -var n="default"in r?r.default:r,s=("default"in i?i.default:i).Promise,a=["FormData","FileReader","Blob","URLSearchParams","Symbol","ArrayBuffer"],o=a -preferNative&&(o=a.concat(["fetch","Headers","Request","Response","AbortController"])),o.forEach((function(r){e[r]&&Object.defineProperty(t,r,{configurable:!0,get:function(){return e[r]},set:function(t){e[r]=t}})})) -var l=t,u=t;(function(){class e{constructor(){Object.defineProperty(this,"listeners",{value:{},writable:!0,configurable:!0})}addEventListener(e,t,r){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push({callback:t,options:r})}removeEventListener(e,t){if(!(e in this.listeners))return -const r=this.listeners[e] -for(let i=0,n=r.length;i{throw r}))}n.options&&n.options.once&&this.removeEventListener(e.type,n.callback)}return!e.defaultPrevented}}class t extends e{constructor(){super(),this.listeners||e.call(this),Object.defineProperty(this,"aborted",{value:!1,writable:!0,configurable:!0}),Object.defineProperty(this,"onabort",{value:null,writable:!0,configurable:!0}),Object.defineProperty(this,"reason",{value:void 0,writable:!0,configurable:!0})}toString(){return"[object AbortSignal]"}dispatchEvent(e){"abort"===e.type&&(this.aborted=!0,"function"==typeof this.onabort&&this.onabort.call(this,e)),super.dispatchEvent(e)}}class r{constructor(){Object.defineProperty(this,"signal",{value:new t,writable:!0,configurable:!0})}abort(e){let t -try{t=new Event("abort")}catch(i){"undefined"!=typeof document?document.createEvent?(t=document.createEvent("Event"),t.initEvent("abort",!1,!1)):(t=document.createEventObject(),t.type="abort"):t={type:"abort",bubbles:!1,cancelable:!1}}let r=e -if(void 0===r)if("undefined"==typeof document)r=new Error("This operation was aborted"),r.name="AbortError" -else try{r=new DOMException("signal is aborted without reason")}catch(n){r=new Error("This operation was aborted"),r.name="AbortError"}this.signal.reason=r,this.signal.dispatchEvent(t)}toString(){return"[object AbortController]"}}"undefined"!=typeof Symbol&&Symbol.toStringTag&&(r.prototype[Symbol.toStringTag]="AbortController",t.prototype[Symbol.toStringTag]="AbortSignal"),function(e){(function(e){return e.__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL?(console.log("__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL=true is set, will force install polyfill"),!0):"function"==typeof e.Request&&!e.Request.prototype.hasOwnProperty("signal")||!e.AbortController})(e)&&(e.AbortController=r,e.AbortSignal=t)}(void 0!==u?u:global)})();(function(e){var t=void 0!==l&&l||void 0!==u&&u||"undefined"!=typeof global&&global||{},r="URLSearchParams"in t,i="Symbol"in t&&"iterator"in Symbol,n="FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(e){return!1}}(),a="FormData"in t,o="ArrayBuffer"in t -if(o)var c=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],d=ArrayBuffer.isView||function(e){return e&&c.indexOf(Object.prototype.toString.call(e))>-1} -function h(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(e)||""===e)throw new TypeError('Invalid character in header field name: "'+e+'"') -return e.toLowerCase()}function p(e){return"string"!=typeof e&&(e=String(e)),e}function f(e){var t={next:function(){var t=e.shift() -return{done:void 0===t,value:t}}} -return i&&(t[Symbol.iterator]=function(){return t}),t}function m(e){this.map={},e instanceof m?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){if(2!=e.length)throw new TypeError("Headers constructor: expected name/value pair to be length 2, found"+e.length) -this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function g(e){if(!e._noBody)return e.bodyUsed?s.reject(new TypeError("Already read")):void(e.bodyUsed=!0)}function b(e){return new s((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function v(e){var t=new FileReader,r=b(t) -return t.readAsArrayBuffer(e),r}function y(e){if(e.slice)return e.slice(0) -var t=new Uint8Array(e.byteLength) -return t.set(new Uint8Array(e)),t.buffer}function _(){return this.bodyUsed=!1,this._initBody=function(e){var t -this.bodyUsed=this.bodyUsed,this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:n&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:a&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():o&&n&&((t=e)&&DataView.prototype.isPrototypeOf(t))?(this._bodyArrayBuffer=y(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o&&(ArrayBuffer.prototype.isPrototypeOf(e)||d(e))?this._bodyArrayBuffer=y(e):this._bodyText=e=Object.prototype.toString.call(e):(this._noBody=!0,this._bodyText=""),this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},n&&(this.blob=function(){var e=g(this) -if(e)return e -if(this._bodyBlob)return s.resolve(this._bodyBlob) -if(this._bodyArrayBuffer)return s.resolve(new Blob([this._bodyArrayBuffer])) -if(this._bodyFormData)throw new Error("could not read FormData body as blob") -return s.resolve(new Blob([this._bodyText]))}),this.arrayBuffer=function(){if(this._bodyArrayBuffer){var e=g(this) -return e||(ArrayBuffer.isView(this._bodyArrayBuffer)?s.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):s.resolve(this._bodyArrayBuffer))}if(n)return this.blob().then(v) -throw new Error("could not read as ArrayBuffer")},this.text=function(){var e,t,r,i,n,a=g(this) -if(a)return a -if(this._bodyBlob)return e=this._bodyBlob,t=new FileReader,r=b(t),i=/charset=([A-Za-z0-9_-]+)/.exec(e.type),n=i?i[1]:"utf-8",t.readAsText(e,n),r -if(this._bodyArrayBuffer)return s.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),i=0;i-1?n:i),this.mode=r.mode||this.mode||null,this.signal=r.signal||this.signal||function(){if("AbortController"in t)return(new AbortController).signal}(),this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&s)throw new TypeError("Body not allowed for GET or HEAD requests") -if(this._initBody(s),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==r.cache&&"no-cache"!==r.cache)){var a=/([?&])_=[^&]*/ -if(a.test(this.url))this.url=this.url.replace(a,"$1_="+(new Date).getTime()) -else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function O(e){var t=new FormData -return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),i=r.shift().replace(/\+/g," "),n=r.join("=").replace(/\+/g," ") -t.append(decodeURIComponent(i),decodeURIComponent(n))}})),t}function w(e,t){if(!(this instanceof w))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.') -if(t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].") -this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new m(t.headers),this.url=t.url||"",this._initBody(e)}R.prototype.clone=function(){return new R(this,{body:this._bodyInit})},_.call(R.prototype),_.call(w.prototype),w.prototype.clone=function(){return new w(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},w.error=function(){var e=new w(null,{status:200,statusText:""}) -return e.ok=!1,e.status=0,e.type="error",e} -var T=[301,302,303,307,308] -w.redirect=function(e,t){if(-1===T.indexOf(t))throw new RangeError("Invalid status code") -return new w(null,{status:t,headers:{location:e}})},e.DOMException=t.DOMException -try{new e.DOMException}catch(A){e.DOMException=function(e,t){this.message=e,this.name=t -var r=Error(e) -this.stack=r.stack},e.DOMException.prototype=Object.create(Error.prototype),e.DOMException.prototype.constructor=e.DOMException}function P(r,i){return new s((function(s,a){var l=new R(r,i) -if(l.signal&&l.signal.aborted)return a(new e.DOMException("Aborted","AbortError")) -var u=new XMLHttpRequest -function c(){u.abort()}if(u.onload=function(){var e,t,r={statusText:u.statusText,headers:(e=u.getAllResponseHeaders()||"",t=new m,e.replace(/\r?\n[\t ]+/g," ").split("\r").map((function(e){return 0===e.indexOf("\n")?e.substr(1,e.length):e})).forEach((function(e){var r=e.split(":"),i=r.shift().trim() -if(i){var n=r.join(":").trim() -try{t.append(i,n)}catch(s){console.warn("Response "+s.message)}}})),t)} -0===l.url.indexOf("file://")&&(u.status<200||u.status>599)?r.status=200:r.status=u.status,r.url="responseURL"in u?u.responseURL:r.headers.get("X-Request-URL") -var i="response"in u?u.response:u.responseText -setTimeout((function(){s(new w(i,r))}),0)},u.onerror=function(){setTimeout((function(){a(new TypeError("Network request failed"))}),0)},u.ontimeout=function(){setTimeout((function(){a(new TypeError("Network request timed out"))}),0)},u.onabort=function(){setTimeout((function(){a(new e.DOMException("Aborted","AbortError"))}),0)},u.open(l.method,function(e){try{return""===e&&t.location.href?t.location.href:e}catch(r){return e}}(l.url),!0),"include"===l.credentials?u.withCredentials=!0:"omit"===l.credentials&&(u.withCredentials=!1),"responseType"in u&&(n?u.responseType="blob":o&&(u.responseType="arraybuffer")),i&&"object"==typeof i.headers&&!(i.headers instanceof m||t.Headers&&i.headers instanceof t.Headers)){var d=[] -Object.getOwnPropertyNames(i.headers).forEach((function(e){d.push(h(e)),u.setRequestHeader(e,p(i.headers[e]))})),l.headers.forEach((function(e,t){-1===d.indexOf(t)&&u.setRequestHeader(t,e)}))}else l.headers.forEach((function(e,t){u.setRequestHeader(t,e)})) -l.signal&&(l.signal.addEventListener("abort",c),u.onreadystatechange=function(){4===u.readyState&&l.signal.removeEventListener("abort",c)}),u.send(void 0===l._bodyInit?null:l._bodyInit)}))}P.polyfill=!0,t.fetch||(t.fetch=P,t.Headers=m,t.Request=R,t.Response=w),e.Headers=m,e.Request=R,e.Response=w,e.fetch=P})({}) -if(!l.fetch)throw new Error("fetch is not defined - maybe your browser targets are not covering everything you need?") -var c=0 -function d(e){return c--,e}n.Test?(n.Test.registerWaiter((function(){return 0===c})),t.default=function(){return c++,t.fetch.apply(e,arguments).then((function(e){return e.clone().blob().then(d,d),e}),(function(e){throw d(e),e}))}):t.default=t.fetch,a.forEach((function(e){delete t[e]}))}))})("undefined"!=typeof window&&window||"undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||"undefined"!=typeof global&&global)}define("@ember-data/adapter/-private",["exports","@ember/debug","rsvp","require","@ember/object/mixin","@ember/string","ember-inflector"],(function(e,t,r,i,n,s,a){"use strict" -const o=e=>e&&"object"==typeof e&&"default"in e?e:{default:e},l=o(i),u=/\r?\n/ -const c=/\[\]$/ -function d(e,t,r){void 0!==r&&(null===r&&(r=""),r="function"==typeof r?r():r,e[e.length]=`${encodeURIComponent(t)}=${encodeURIComponent(r)}`)}let h=null -const p={buildURL:function(e,t,r,i,n){switch(i){case"findRecord":return this.urlForFindRecord(t,e,r) -case"findAll":return this.urlForFindAll(e,r) -case"query":return this.urlForQuery(n||{},e) -case"queryRecord":return this.urlForQueryRecord(n||{},e) -case"findMany":return this.urlForFindMany(t,e,r) -case"findHasMany":return this.urlForFindHasMany(t,e,r) -case"findBelongsTo":return this.urlForFindBelongsTo(t,e,r) -case"createRecord":return this.urlForCreateRecord(e,r) -case"updateRecord":return this.urlForUpdateRecord(t,e,r) -case"deleteRecord":return this.urlForDeleteRecord(t,e,r) -default:return this._buildURL(e,t)}},_buildURL:function(e,t){let r,i=[],{host:n}=this,s=this.urlPrefix() -e&&(r=this.pathForType(e),r&&i.push(r)),t&&i.push(encodeURIComponent(t)),s&&i.unshift(s) -let a=i.join("/") -return!n&&a&&"/"!==a.charAt(0)&&(a="/"+a),a},urlForFindRecord:function(e,t,r){return this._buildURL(t,e)},urlForFindAll:function(e,t){return this._buildURL(e)},urlForQueryRecord:function(e,t){return this._buildURL(t)},urlForQuery:function(e,t){return this._buildURL(t)},urlForFindMany:function(e,t,r){return this._buildURL(t)},urlForFindHasMany:function(e,t,r){return this._buildURL(t,e)},urlForFindBelongsTo:function(e,t,r){return this._buildURL(t,e)},urlForCreateRecord:function(e,t){return this._buildURL(e)},urlForDeleteRecord:function(e,t,r){return this._buildURL(t,e)},urlForUpdateRecord:function(e,t,r){return this._buildURL(t,e)},urlPrefix:function(e,t){let{host:r,namespace:i}=this -if(r&&"/"!==r||(r=""),e)return/^\/\//.test(e)||/http(s)?:\/\//.test(e)?e:"/"===e.charAt(0)?`${r}${e}`:`${t}/${e}` -let n=[] -return r&&n.push(r),i&&n.push(i),n.join("/")},pathForType:function(e){let t=s.camelize(e) -return a.pluralize(t)}},f=o(n).default.create(p) -e.BuildURLMixin=f,e.determineBodyPromise=function(e,t){return(i=e.text(),r.resolve(i).catch((e=>e))).then((r=>function(e,t,r){let i=r,n=null -if(!e.ok)return r -let s=e.status,a=""===r||null===r,o=204===s||205===s||"HEAD"===t.method -if(!e.ok||!o&&!a){try{i=JSON.parse(r)}catch(l){if(!(l instanceof SyntaxError))return l -l.payload=r,n=l}return n||i}}(e,t,r))) -var i},e.fetch=function(){if(null!==h)return h() -if(i.has("fetch")){let e=l.default("fetch").default -h=()=>e}else{if("function"!=typeof fetch)throw new Error("cannot find the `fetch` module or the `fetch` global. Did you mean to install the `ember-fetch` addon?") -h=()=>fetch}return h()},e.parseResponseHeaders=function(e){const t=Object.create(null) -if(!e)return t -const r=e.split(u) -for(let i=0;i{if(e.source&&e.source.pointer){let r=e.source.pointer.match(s) -r?r=r[2]:-1!==e.source.pointer.search(a)&&(r=o),r&&(t[r]=t[r]||[],t[r].push(e.detail||e.title))}})),t}},e.errorsHashToArray=function(e){{let t=[] -return e&&Object.keys(e).forEach((r=>{let i=(n=e[r],Array.isArray(n)?n:[n]) -var n -for(let e=0;e{let n=i._stripIDFromURL(e,t) -r.has(n)||r.set(n,[]),r.get(n).push(t)})) -let s=[] -return r.forEach(((t,r)=>{let a=function(t,r,n){let s=0,a=i._stripIDFromURL(e,t[0]),o=[[]] -return t.forEach((e=>{let t=encodeURIComponent(e.id).length+n -a.length+s+t>=r&&(s=0,o.push([])),s+=t -let i=o.length-1 -o[i].push(e)})),o}(t,n,11) -a.forEach((e=>s.push(e)))})),s}handleResponse(e,t,r,i){if(this.isSuccess(e,t,r))return r -if(this.isInvalid(e,t,r))return new o.InvalidError("object"==typeof r&&"errors"in r?r.errors:void 0) -let n=this.normalizeErrorResponse(e,t,r),s=this.generatedDetailedMessage(e,t,r,i) -switch(e){case 401:return new o.UnauthorizedError(n,s) -case 403:return new o.ForbiddenError(n,s) -case 404:return new o.NotFoundError(n,s) -case 409:return new o.ConflictError(n,s) -default:if(e>=500)return new o.ServerError(n,s)}return new o.default(n,s)}isSuccess(e,t,r){return e>=200&&e<300||304===e}isInvalid(e,t,r){return 422===e}async ajax(e,t,r={}){let i=this,o={url:e,method:t} -if(this.useFetch){let n=i.ajaxOptions(e,t,r),s=await this._fetchRequest(n),l=await(0,a.determineBodyPromise)(s,o) -if(!s.ok||l instanceof Error)throw function(e,t,r,i,n){let s=_(r) -200===s.status&&t instanceof Error?(s.errorThrown=t,t=s.errorThrown.payload):(s.errorThrown=i,"string"==typeof t&&(t=e.parseErrorResponse(t))) -return y(e,t,n,s)}(i,l,s,null,o) -return function(e,t,r,i){let n=_(r) -return v(e,t,i,n)}(i,l,s,o)}{let a=i.ajaxOptions(e,t,r) -return new s.Promise((function(e,t){a.success=function(t,r,s){let a=function(e,t,r,i){let n=E(r) -return v(e,t,i,n)}(i,t,s,o);(0,n.join)(null,e,a)},a.error=function(e,r,s){let a=function(e,t,r,i){let n=E(t) -n.errorThrown=r -let s=e.parseErrorResponse(t.responseText) -return y(e,s,i,n)}(i,e,s,o);(0,n.join)(null,t,a)},i._ajax(a)}),"DS: RESTAdapter#ajax "+t+" to "+e)}}_ajaxRequest(e){"undefined"!=typeof jQuery&&jQuery.ajax(e)}_fetchRequest(e){let t=(0,a.fetch)() -if(t)return t(e.url,e) -throw new Error("cannot find the `fetch` module or the `fetch` global. Did you mean to install the `ember-fetch` addon?")}_ajax(e){this.useFetch?this._fetchRequest(e):this._ajaxRequest(e)}ajaxOptions(e,t,r){let i=Object.assign({url:e,method:t,type:t},r) -void 0!==this.headers?i.headers={...this.headers,...i.headers}:r.headers||(i.headers={}) -let n=i.contentType||this._defaultContentType -return this.useFetch?(i.data&&"GET"!==i.type&&i.headers&&(i.headers["Content-Type"]||i.headers["content-type"]||(i.headers["content-type"]=n)),i=O(i,this)):(i.data&&"GET"!==i.type&&(i={...i,contentType:n}),i=function(e,t){e.dataType="json",e.context=t,e.data&&"GET"!==e.type&&(e.data=JSON.stringify(e.data)) -return e.beforeSend=function(t){e.headers&&Object.keys(e.headers).forEach((r=>{let i=e.headers&&e.headers[r];(e=>"string"==typeof e)(i)&&t.setRequestHeader(r,i)}))},e}(i,this)),i.url=this._ajaxURL(i.url),i}_ajaxURL(e){if(this.fastboot?.isFastBoot){let r=/^https?:\/\//,i=/^\/\//,n=this.fastboot.request.protocol,s=this.fastboot.request.host -if(i.test(e))return`${n}${e}` -if(!r.test(e))try{return`${n}//${s}${e}`}catch(t){throw new Error("You are using Ember Data with no host defined in your adapter. This will attempt to use the host of the FastBoot request, which is not configured for the current host of this request. Please set the hostWhitelist property for in your environment.js. FastBoot Error: "+t.message)}}return e}parseErrorResponse(e){let t=e -try{t=JSON.parse(e)}catch(p){}return t}normalizeErrorResponse(e,t,r){return r&&"object"==typeof r&&"errors"in r&&Array.isArray(r.errors)?r.errors:[{status:`${e}`,title:"The backend responded with an error",detail:`${r}`}]}generatedDetailedMessage(e,t,r,i){let n,s=t["content-type"]||"Empty Content-Type" -return n="text/html"===s&&"string"==typeof r&&r.length>250?"[Omitted Lengthy HTML]":r,["Ember Data Request "+(i.method+" "+i.url)+" returned a "+e,"Payload ("+s+")",n].join("\n")}buildQuery(e){let t={} -if(e){let{include:r}=e -r&&(t.include=r)}return t}},h=c.prototype,p="fastboot",f=[u],m=Object.getOwnPropertyDescriptor(c.prototype,"fastboot"),g=c.prototype,b={},Object.keys(m).forEach((function(e){b[e]=m[e]})),b.enumerable=!!b.enumerable,b.configurable=!!b.configurable,("value"in b||b.initializer)&&(b.writable=!0),b=f.slice().reverse().reduce((function(e,t){return t(h,p,e)||e}),b),g&&void 0!==b.initializer&&(b.value=b.initializer?b.initializer.call(g):void 0,b.initializer=void 0),void 0===b.initializer&&(Object.defineProperty(h,p,b),b=null),c) -var h,p,f,m,g,b -function v(e,t,r,i){let n -try{n=e.handleResponse(i.status,i.headers,t,r)}catch(a){return s.Promise.reject(a)}return n&&n.isAdapterError?s.Promise.reject(n):n}function y(e,t,r,i){let n -if(i.errorThrown instanceof Error&&""!==t)n=i.errorThrown -else if("timeout"===i.textStatus)n=new o.TimeoutError -else if("abort"===i.textStatus||0===i.status)n=function(e,t){let{method:r,url:i,errorThrown:n}=e,{status:s}=t,a=[{title:"Adapter Error",detail:`Request failed: ${r} ${i} ${n||""}`.trim(),status:s}] -return new o.AbortError(a)}(r,i) -else try{n=e.handleResponse(i.status,i.headers,t||i.errorThrown,r)}catch(p){n=p}return n}function _(e){return{status:e.status,textStatus:e.statusText,headers:R(e.headers)}}function E(e){return{status:e.status,textStatus:e.statusText,headers:(0,a.parseResponseHeaders)(e.getAllResponseHeaders())}}function R(e){let t={} -return e&&e.forEach(((e,r)=>t[r]=e)),t}function O(e,t){if(e.credentials=e.credentials||"same-origin",e.data)if("GET"===e.method||"HEAD"===e.method){if(Object.keys(e.data).length&&e.url){const t=e.url.indexOf("?")>-1?"&":"?" -e.url+=`${t}${(0,a.serializeQueryParams)(e.data)}`}}else"[object Object]"===Object.prototype.toString.call(e.data)?e.body=JSON.stringify(e.data):e.body=e.data -return e}e.default=d})),define("@ember-data/debug/index",["exports","@ember/array","@ember/debug","@ember/debug/data-adapter","@ember/object/observers","@ember/service","@ember/string","@ember/runloop","@ember-data/debug/setup"],(function(e,t,r,i,n,s,a,o,l){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=i.default.extend({store:(0,s.inject)("store"),getFilters:()=>[{name:"isNew",desc:"New"},{name:"isModified",desc:"Modified"},{name:"isClean",desc:"Clean"}],_nameToClass(e){return this.store.modelFor(e)},watchModelTypes(e,t){const{store:r}=this,i=r._instanceCache.getRecordData,n=[],s=(0,l.typesMapFor)(r) -s.forEach(((i,a)=>{this.watchTypeIfUnseen(r,s,a,e,t,n)})),r._instanceCache.getRecordData=a=>((0,o.next)((()=>this.watchTypeIfUnseen(r,s,a.type,e,t,n))),i.call(r._instanceCache,a)) -let a=()=>{n.forEach((e=>e())),r._instanceCache.getRecordData=i,s.forEach(((e,t)=>{s.set(t,!1)})),this.releaseMethods.removeObject(a)} -return this.releaseMethods.pushObject(a),a},watchTypeIfUnseen(e,t,r,i,n,s){if(!0!==t.get(r)){let a=e.modelFor(r),o=this.wrapModelType(a,r) -s.push(this.observeModelType(r,n)),i([o]),t.set(r,!0)}},columnNameToDesc:e=>(0,a.capitalize)((0,a.underscore)(e).replace(/_/g," ").trim()),columnsForType(e){let t=[{name:"id",desc:"Id"}],r=0,i=this -return e.attributes.forEach(((e,n)=>{if(r++>i.attributeLimit)return!1 -let s=this.columnNameToDesc(n) -t.push({name:n,desc:s})})),t},getRecords(e,t){if(arguments.length<2){let r=e._debugContainerKey -if(r){let e=r.match(/model:(.*)/) -null!==e&&(t=e[1])}}return this.store.peekAll(t)},getRecordColumnValues(e){let t=0,r={id:e.id} -return e.eachAttribute((i=>{if(t++>this.attributeLimit)return!1 -r[i]=e[i]})),r},getRecordKeywords(e){let r=[],i=(0,t.A)(["id"]) -return e.eachAttribute((e=>i.push(e))),i.forEach((t=>r.push(e[t]))),r},getRecordFilterValues:e=>({isNew:e.isNew,isModified:e.hasDirtyAttributes&&!e.isNew,isClean:!e.hasDirtyAttributes}),getRecordColor(e){let t="black" -return e.isNew?t="green":e.hasDirtyAttributes&&(t="blue"),t},observeRecord(e,r){let i=(0,t.A)(),s=(0,t.A)(["id","isNew","hasDirtyAttributes"]) -e.eachAttribute((e=>s.push(e))) -let a=this -s.forEach((function(t){let s=function(){r(a.wrapRecord(e))};(0,n.addObserver)(e,t,s),i.push((function(){(0,n.removeObserver)(e,t,s)}))})) -return function(){i.forEach((e=>e()))}}})})),define("@ember-data/debug/setup",["exports","@ember-data/store"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.typesMapFor=i -const r=new WeakMap -function i(e){let t=r.get(e) -return void 0===t&&(t=new Map,r.set(e,t)),t}Object.defineProperty(t.default.prototype,"_instanceCache",{get(){return this.__instanceCache},set(e){const t=e.getRecordData,r=this -e.getRecordData=function(e){const n=i(r) -return n.has(e.type)||n.set(e.type,!1),t.call(this,e)},this.__instanceCache=e}}) -const n=t.default.prototype._createRecordData -t.default.prototype._createRecordData=function(e){const t=i(this) -return t.has(e.type)||t.set(e.type,!1),n.call(this,e)} -e.default={name:"@ember-data/data-adapter",initialize(){}}})),define("@ember-data/model/-private",["exports","@ember/debug","@ember/object","@ember-data/store","@ember-data/store/-private","@ember/string","@ember/object/compat","@ember/runloop","@glimmer/tracking","ember","rsvp","@ember/object/promise-proxy-mixin","@ember/object/proxy","@ember/array","@ember/array/proxy","@ember/object/computed","@embroider/macros/es-compat2","@ember/object/internals","@ember-data/tracking/-private","ember-inflector","@ember/application"],(function(e,t,r,i,n,s,a,o,l,u,c,d,h,p,f,m,g,b,v,y,_){"use strict" -const E=e=>e&&"object"==typeof e&&"default"in e?e:{default:e},R=E(r),O=E(u),w=E(d),T=E(h),P=E(p),A=E(f),S=E(g) -function C(e){return(...t)=>function(e){let[t,r,i]=e -return 3===e.length&&("function"==typeof t||"object"==typeof t&&null!==t)&&"string"==typeof r&&("object"==typeof i&&null!==i&&"enumerable"in i&&"configurable"in i||void 0===i)}(t)?e()(...t):e(...t)}const k=C((function(e,t){"object"==typeof e?(t=e,e=void 0):t=t||{} -let s={type:e,isAttribute:!0,options:t} -return r.computed({get(e){if(!this.isDestroyed&&!this.isDestroying)return n.recordDataFor(this).getAttr(i.recordIdentifierFor(this),e)},set(e,t){const r=i.recordIdentifierFor(this),n=i.storeFor(this)._instanceCache.getRecordData(r) -if(n.getAttr(r,e)!==t&&(n.setAttr(r,e,t),!this.isValid)){const{errors:t}=this -t.get(e)&&(t.remove(e),this.currentState.cleanErrorRequests())}return t}}).meta(s)})),M=T.default.extend(w.default) -function j(e){const t=function(e){return M.create({promise:c.resolve(e)})}(e) -return t}var x,D,N,I,F,L,z -function B(e,t,r,i){r&&Object.defineProperty(e,t,{enumerable:r.enumerable,configurable:r.configurable,writable:r.writable,value:r.initializer?r.initializer.call(i):void 0})}function U(e,t,r,i,n){var s={} -return Object.keys(i).forEach((function(e){s[e]=i[e]})),s.enumerable=!!s.enumerable,s.configurable=!!s.configurable,("value"in s||s.initializer)&&(s.writable=!0),s=r.slice().reverse().reduce((function(r,i){return i(e,t,r)||r}),s),n&&void 0!==s.initializer&&(s.value=s.initializer?s.initializer.call(n):void 0,s.initializer=void 0),void 0===s.initializer&&(Object.defineProperty(e,t,s),s=null),s}const $=A.default -let H=(x=r.computed(),D=m.mapBy("content","message"),N=r.computed(),I=m.not("length"),F=class extends ${constructor(...e){super(...e),B(this,"messages",L,this),B(this,"isEmpty",z,this)}get errorsByAttributeName(){return new Map}errorsFor(e){let t=this.errorsByAttributeName,i=t.get(e) -return void 0===i&&(i=p.A(),t.set(e,i)),r.get(i,"[]"),i}get content(){return p.A()}unknownProperty(e){let t=this.errorsFor(e) -if(0!==t.length)return t}add(e,t){const r=this._findOrCreateMessages(e,t) -this.addObjects(r),this.errorsFor(e).addObjects(r),this.__record.currentState.notify("isValid"),this.notifyPropertyChange(e)}_findOrCreateMessages(e,t){let r=this.errorsFor(e),i=Array.isArray(t)?t:[t],n=new Array(i.length) -for(let s=0;s{this.notifyPropertyChange(e)})),this.__record.currentState.notify("isValid"),super.clear()}has(e){return this.errorsFor(e).length>0}},U(F.prototype,"errorsByAttributeName",[x],Object.getOwnPropertyDescriptor(F.prototype,"errorsByAttributeName"),F.prototype),L=U(F.prototype,"messages",[D],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),U(F.prototype,"content",[N],Object.getOwnPropertyDescriptor(F.prototype,"content"),F.prototype),z=U(F.prototype,"isEmpty",[I],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),F) -function q(e,t,r,i,n,s){return e?e.normalizeResponse(t,r,i,n,s):i}function V(e,t,r,i){let n=t.data?(s=t.data,a=(t,n)=>{const{id:s,type:a}=t -return function(e,t,r,i,n){let{id:s,type:a}=e -e.relationships||(e.relationships={}) -let{relationships:o}=e,l=function(e,t,r,i){let{name:n}=r,{type:s}=t,a=function(e,t,r){const i=e.getSchemaDefinitionService().relationshipsDefinitionFor(t)[r] -if(!i)return null -if("function"==typeof i._inverseKey){const r=e.modelFor(t.type) -return i._inverseKey(e,r)}return i.options.inverse}(e,{type:s},n) -if(a){const t=e.getSchemaDefinitionService().relationshipsDefinitionFor({type:i}) -let{kind:r}=t[a] -return{inverseKey:a,kind:r}}}(r,t,i,a) -if(l){let{inverseKey:e,kind:r}=l,i=o[e]&&o[e].data -"hasMany"===r&&void 0===i||(o[e]=o[e]||{},o[e].data=function(e,t,{id:r,type:i}){let n,s={id:r,type:i} -return"hasMany"===t?(n=e||[],e&&e.find((e=>e.type===s.type&&e.id===s.id))||n.push(s)):(n=e||{},Object.assign(n,s)),n}(i,r,t))}}(t,r,e,i),{id:s,type:a}},Array.isArray(s)?s.map(a):a(s)):null -var s,a -const o={} -"meta"in t&&(o.meta=t.meta),"links"in t&&(o.links=t.links),"data"in t&&(o.data=n) -const l={id:r.id,type:r.type,relationships:{[i.key]:o}} -return Array.isArray(t.included)||(t.included=[]),t.included.push(l),t}function W(e,...t){return function(){return e.apply(void 0,t)}}function G(e,t){let r=e.finally((()=>{t()||(r._subscribers.length=0)})) -return r}function Y(e){return!(e.isDestroyed||e.isDestroying)}function Q(e,t,r){return G(c.resolve(e,r).then((r=>(Y(t),e))),(()=>Y(t)))}class K extends n.RecordArray{constructor(e){super(e),this.isLoaded=e.isLoaded||!1,this.isAsync=e.isAsync||!1,this.isPolymorphic=e.isPolymorphic||!1,this.identifier=e.identifier,this.key=e.key}[n.MUTATE](e,t,r){switch(e){case"length 0":this._manager.updateCache({op:"replaceRelatedRecords",record:this.identifier,field:this.key,value:[]}) -break -case"replace cell":{const[e,r,i]=t -this._manager.updateCache({op:"replaceRelatedRecord",record:this.identifier,field:this.key,value:i,prior:r,index:e}) -break}case"push":this._manager.updateCache({op:"addToRelatedRecords",record:this.identifier,field:this.key,value:J(t)}) -break -case"pop":r&&this._manager.updateCache({op:"removeFromRelatedRecords",record:this.identifier,field:this.key,value:n.recordIdentifierFor(r)}) -break -case"unshift":this._manager.updateCache({op:"addToRelatedRecords",record:this.identifier,field:this.key,value:J(t),index:0}) -break -case"shift":r&&this._manager.updateCache({op:"removeFromRelatedRecords",record:this.identifier,field:this.key,value:n.recordIdentifierFor(r),index:0}) -break -case"sort":this._manager.updateCache({op:"sortRelatedRecords",record:this.identifier,field:this.key,value:r.map(n.recordIdentifierFor)}) -break -case"splice":{const[e,i,...s]=t -if(i>0&&s.length===this[n.SOURCE].length)return void this._manager.updateCache({op:"replaceRelatedRecords",record:this.identifier,field:this.key,value:J(s)}) -i>0&&this._manager.updateCache({op:"removeFromRelatedRecords",record:this.identifier,field:this.key,value:r.map(n.recordIdentifierFor),index:e}),s?.length&&this._manager.updateCache({op:"addToRelatedRecords",record:this.identifier,field:this.key,value:J(s),index:e}) -break}}}notify(){this[n.IDENTIFIER_ARRAY_TAG].shouldReset=!0,n.notifyArray(this)}reload(e){return this._manager.reloadHasMany(this.key,e)}createRecord(e){const{store:t}=this,r=t.createRecord(this.modelName,e) -return this.push(r),r}}function J(e){return e.map(X)}function X(e){if(e.then){let t=e.content -return n.recordIdentifierFor(t)}return n.recordIdentifierFor(e)}var Z,ee -K.prototype.isAsync=!1,K.prototype.isPolymorphic=!1,K.prototype.identifier=null,K.prototype.recordData=null,K.prototype._inverseIsAsync=!1,K.prototype.key="",K.prototype.DEPRECATED_CLASS_NAME="ManyArray" -const te=M -let re=(Z=r.computed(),ie=(ee=class extends te{get meta(){}async reload(e){let{key:t,legacySupport:r}=this._belongsToState -return await r.reloadBelongsTo(t,e),this}}).prototype,ne="meta",se=[Z],ae=Object.getOwnPropertyDescriptor(ee.prototype,"meta"),oe=ee.prototype,le={},Object.keys(ae).forEach((function(e){le[e]=ae[e]})),le.enumerable=!!le.enumerable,le.configurable=!!le.configurable,("value"in le||le.initializer)&&(le.writable=!0),le=se.slice().reverse().reduce((function(e,t){return t(ie,ne,e)||e}),le),oe&&void 0!==le.initializer&&(le.value=le.initializer?le.initializer.call(oe):void 0,le.initializer=void 0),void 0===le.initializer&&(Object.defineProperty(ie,ne,le),le=null),ee) -var ie,ne,se,ae,oe,le,ue,ce,de,he,pe,fe -function me(e,t,r,i){r&&Object.defineProperty(e,t,{enumerable:r.enumerable,configurable:r.configurable,writable:r.writable,value:r.initializer?r.initializer.call(i):void 0})}function ge(e,t,r,i,n){var s={} -return Object.keys(i).forEach((function(e){s[e]=i[e]})),s.enumerable=!!s.enumerable,s.configurable=!!s.configurable,("value"in s||s.initializer)&&(s.writable=!0),s=r.slice().reverse().reduce((function(r,i){return i(e,t,r)||r}),s),n&&void 0!==s.initializer&&(s.value=s.initializer?s.initializer.call(n):void 0,s.initializer=void 0),void 0===s.initializer&&(Object.defineProperty(e,t,s),s=null),s}let be=(ce=ge((ue=class{constructor(e,t){me(this,"content",ce,this),me(this,"isPending",de,this),me(this,"isRejected",he,this),me(this,"isFulfilled",pe,this),me(this,"isSettled",fe,this),this._update(e,t),this.isDestroyed=!1,this.isDestroying=!1 -O.default.meta(this).hasMixin=e=>e===p.NativeArray||e===P.default}get length(){return this["[]"],this.content?this.content.length:0}get"[]"(){return this.content?.length&&this.content}forEach(e){this.content&&this.length&&this.content.forEach(e)}reload(e){return this.content.reload(e),this}then(e,t){return this.promise.then(e,t)}catch(e){return this.promise.catch(e)}finally(e){return this.promise.finally(e)}destroy(){this.isDestroying=!0,this.isDestroyed=!0,this.content=null,this.promise=null}get links(){return this.content?this.content.links:void 0}get meta(){return this.content?this.content.meta:void 0}_update(e,t){void 0!==t&&(this.content=t),this.promise=function(e,t){return e.isPending=!0,e.isSettled=!1,e.isFulfilled=!1,e.isRejected=!1,c.resolve(t).then((t=>(e.isPending=!1,e.isFulfilled=!0,e.isSettled=!0,e.content=t,t)),(t=>{throw e.isPending=!1,e.isFulfilled=!1,e.isRejected=!0,e.isSettled=!0,t}))}(this,e)}static create({promise:e,content:t}){return new this(e,t)}}).prototype,"content",[l.tracked],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),ge(ue.prototype,"length",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(ue.prototype,"length"),ue.prototype),ge(ue.prototype,"[]",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(ue.prototype,"[]"),ue.prototype),de=ge(ue.prototype,"isPending",[l.tracked],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),he=ge(ue.prototype,"isRejected",[l.tracked],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),pe=ge(ue.prototype,"isFulfilled",[l.tracked],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),fe=ge(ue.prototype,"isSettled",[l.tracked],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),ge(ue.prototype,"links",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(ue.prototype,"links"),ue.prototype),ge(ue.prototype,"meta",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(ue.prototype,"meta"),ue.prototype),ue) -be.prototype.createRecord=function(...e){return this.content.createRecord(...e)},Object.defineProperty(be.prototype,"firstObject",{get(){return this.content?this.content.firstObject:void 0}}),Object.defineProperty(be.prototype,"lastObject",{get(){return this.content?this.content.lastObject:void 0}});["addObserver","cacheFor","decrementProperty","get","getProperties","incrementProperty","notifyPropertyChange","removeObserver","set","setProperties","toggleProperty"].forEach((e=>{be.prototype[e]=function(...t){return O.default[e](this,...t)}}));["addArrayObserver","addObject","addObjects","any","arrayContentDidChange","arrayContentWillChange","clear","compact","every","filter","filterBy","find","findBy","getEach","includes","indexOf","insertAt","invoke","isAny","isEvery","lastIndexOf","map","mapBy","objectAt","objectsAt","popObject","pushObject","pushObjects","reduce","reject","rejectBy","removeArrayObserver","removeAt","removeObject","removeObjects","replace","reverseObjects","setEach","setObjects","shiftObject","slice","sortBy","toArray","uniq","uniqBy","unshiftObject","unshiftObjects","without"].forEach((e=>{be.prototype[e]=function(...t){return this.content[e](...t)}})) -var ve,ye -function _e(e,t,r,i,n){var s={} -return Object.keys(i).forEach((function(e){s[e]=i[e]})),s.enumerable=!!s.enumerable,s.configurable=!!s.configurable,("value"in s||s.initializer)&&(s.writable=!0),s=r.slice().reverse().reduce((function(r,i){return i(e,t,r)||r}),s),n&&void 0!==s.initializer&&(s.value=s.initializer?s.initializer.call(n):void 0,s.initializer=void 0),void 0===s.initializer&&(Object.defineProperty(e,t,s),s=null),s}let Ee=S.default(require("ember-cached-decorator-polyfill")).cached -function Re(e){return Boolean(e&&e.links&&e.links.related)}let Oe=(ve=class{constructor(e,t,r,i,n){this.___identifier=void 0,this.___token=void 0,this.___relatedToken=null,function(e,t,r,i){r&&Object.defineProperty(e,t,{enumerable:r.enumerable,configurable:r.configurable,writable:r.writable,value:r.initializer?r.initializer.call(i):void 0})}(this,"_ref",ye,this),this.graph=t,this.key=n,this.belongsToRelationship=i,this.type=i.definition.type,this.store=e,this.___identifier=r,this.___token=e._notificationManager.subscribe(r,((e,t,r)=>{"relationships"===t&&r===n&&this._ref++}))}destroy(){this.store._notificationManager.unsubscribe(this.___token),this.___token=null,this.___relatedToken&&(this.store._notificationManager.unsubscribe(this.___relatedToken),this.___relatedToken=null)}get identifier(){this._ref,this.___relatedToken&&(this.store._notificationManager.unsubscribe(this.___relatedToken),this.___relatedToken=null) -let e=this._resource() -if(e&&e.data){const t=this.store.identifierCache.getOrCreateRecordIdentifier(e.data) -return this.___relatedToken=this.store._notificationManager.subscribe(t,((e,t,r)=>{("identity"===t||"attributes"===t&&"id"===r)&&this._ref++})),t}return null}id(){return this.identifier?.id||null}link(){let e=this._resource() -if(Re(e)&&e.links){let t=e.links.related -return t&&"string"!=typeof t?t.href:t}return null}links(){let e=this._resource() -return e&&e.links?e.links:null}meta(){let e=null,t=this._resource() -return t&&t.meta&&"object"==typeof t.meta&&(e=t.meta),e}_resource(){return this.store._instanceCache.getRecordData(this.___identifier).getRelationship(this.___identifier,this.key)}remoteType(){return Re(this._resource())?"link":"id"}async push(e){let t=e -e.then&&(t=await c.resolve(e)) -let r=this.store.push(t) -const{identifier:i}=this.belongsToRelationship -return this.store._join((()=>{this.graph.push({op:"replaceRelatedRecord",record:i,field:this.key,value:n.recordIdentifierFor(r)})})),r}value(){let e=this._resource() -return e&&e.data?this.store.peekRecord(e.data):null}load(e){return it.get(this.___identifier).getBelongsTo(this.key,e)}reload(e){return it.get(this.___identifier).reloadBelongsTo(this.key,e).then((()=>this.value()))}},ye=_e(ve.prototype,"_ref",[l.tracked],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 0}}),_e(ve.prototype,"identifier",[Ee,a.dependentKeyCompat],Object.getOwnPropertyDescriptor(ve.prototype,"identifier"),ve.prototype),ve) -var we,Te -function Pe(e,t,r,i,n){var s={} -return Object.keys(i).forEach((function(e){s[e]=i[e]})),s.enumerable=!!s.enumerable,s.configurable=!!s.configurable,("value"in s||s.initializer)&&(s.writable=!0),s=r.slice().reverse().reduce((function(r,i){return i(e,t,r)||r}),s),n&&void 0!==s.initializer&&(s.value=s.initializer?s.initializer.call(n):void 0,s.initializer=void 0),void 0===s.initializer&&(Object.defineProperty(e,t,s),s=null),s}let Ae=S.default(require("ember-cached-decorator-polyfill")).cached -let Se=(we=class{constructor(e,t,r,i,n){this.___token=void 0,this.___identifier=void 0,this.___relatedTokenMap=void 0,function(e,t,r,i){r&&Object.defineProperty(e,t,{enumerable:r.enumerable,configurable:r.configurable,writable:r.writable,value:r.initializer?r.initializer.call(i):void 0})}(this,"_ref",Te,this),this.graph=t,this.key=n,this.hasManyRelationship=i,this.type=i.definition.type,this.store=e,this.___identifier=r,this.___token=e._notificationManager.subscribe(r,((e,t,r)=>{"relationships"===t&&r===n&&this._ref++})),this.___relatedTokenMap=new Map}destroy(){this.store._notificationManager.unsubscribe(this.___token),this.___relatedTokenMap.forEach((e=>{this.store._notificationManager.unsubscribe(e)})),this.___relatedTokenMap.clear()}get identifiers(){this._ref -let e=this._resource(),t=this.___relatedTokenMap -return this.___relatedTokenMap=new Map,e&&e.data?e.data.map((e=>{const r=this.store.identifierCache.getOrCreateRecordIdentifier(e) -let i=t.get(r) -return i?t.delete(r):i=this.store._notificationManager.subscribe(r,((e,t,r)=>{("identity"===t||"attributes"===t&&"id"===r)&&this._ref++})),this.___relatedTokenMap.set(r,i),r})):(t.forEach((e=>{this.store._notificationManager.unsubscribe(e)})),t.clear(),[])}_resource(){return this.store._instanceCache.getRecordData(this.___identifier).getRelationship(this.___identifier,this.key)}remoteType(){let e=this._resource() -return e&&e.links&&e.links.related?"link":"ids"}ids(){return this.identifiers.map((e=>e.id))}link(){let e=this._resource() -if(t=e,Boolean(t&&t.links&&t.links.related)&&e.links){let t=e.links.related -return t&&"string"!=typeof t?t.href:t}var t -return null}links(){let e=this._resource() -return e&&e.links?e.links:null}meta(){let e=null,t=this._resource() -return t&&t.meta&&"object"==typeof t.meta&&(e=t.meta),e}async push(e){let t,r=e -e.then&&(r=await c.resolve(e)),t=!Array.isArray(r)&&"object"==typeof r&&Array.isArray(r.data)?r.data:r -const{store:n}=this -let s=t.map((e=>{let t -return t="data"in e?n.push(e):n.push({data:e}),i.recordIdentifierFor(t)})) -const{identifier:a}=this.hasManyRelationship -return n._join((()=>{this.graph.push({op:"replaceRelatedRecords",record:a,field:this.key,value:s})})),this.load()}_isLoaded(){return!!this.hasManyRelationship.state.hasReceivedData&&this.hasManyRelationship.localState.every((e=>!0===this.store._instanceCache.recordIsLoaded(e,!0)))}value(){const e=it.get(this.___identifier) -return this._isLoaded()?e.getManyArray(this.key):(this._ref,null)}async load(e){return it.get(this.___identifier).getHasMany(this.key,e)}reload(e){return it.get(this.___identifier).reloadHasMany(this.key,e)}},Te=Pe(we.prototype,"_ref",[l.tracked],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 0}}),Pe(we.prototype,"identifiers",[Ae,a.dependentKeyCompat],Object.getOwnPropertyDescriptor(we.prototype,"identifiers"),we.prototype),we) -class Ce{constructor(e){this.record=e,this.store=n.storeFor(e),this.identifier=n.recordIdentifierFor(e),this.recordData=this.store._instanceCache.getRecordData(this.identifier),this._manyArrayCache=Object.create(null),this._relationshipPromisesCache=Object.create(null),this._relationshipProxyCache=Object.create(null),this.references=Object.create(null)}_syncArray(e){if(this.isDestroyed||this.isDestroying)return -const t=e[n.SOURCE],r=this.identifier -let[i,s]=this._getCurrentState(r,e.key) -s.meta&&(e.meta=s.meta),s.links&&(e.links=s.links),t.length=0,n.fastPush(t,i)}updateCache(e){this.recordData.update(e)}_findBelongsTo(e,t,r,i){return this._findBelongsToByJsonApiResource(t,this.identifier,r,i).then((t=>ke(this,e,r,t)),(t=>ke(this,e,r,null,t)))}reloadBelongsTo(e,t){let r=this._relationshipPromisesCache[e] -if(r)return r -const i=(0,S.default(require("@ember-data/record-data/-private")).graphFor)(this.store).get(this.identifier,e) -let n=this.recordData.getRelationship(this.identifier,e) -i.state.hasFailedLoadAttempt=!1,i.state.shouldForceReload=!0 -let s=this._findBelongsTo(e,n,i,t) -return this._relationshipProxyCache[e]?this._updatePromiseProxyFor("belongsTo",e,{promise:s}):s}getBelongsTo(e,t){const{identifier:r,recordData:i}=this -let n=i.getRelationship(this.identifier,e),s=n&&n.data?n.data:null -const a=this.store,o=(0,S.default(require("@ember-data/record-data/-private")).graphFor)(a).get(this.identifier,e) -let l=o.definition.isAsync,u={key:e,store:a,legacySupport:this,modelName:o.definition.type} -if(l){if(o.state.hasFailedLoadAttempt)return this._relationshipProxyCache[e] -let r=this._findBelongsTo(e,n,o,t) -const i=s&&a._instanceCache.recordIsLoaded(s) -return this._updatePromiseProxyFor("belongsTo",e,{promise:r,content:i?a._instanceCache.getRecord(s):null,_belongsToState:u})}if(null===s)return null -return a._instanceCache.getRecord(s)}setDirtyBelongsTo(e,t){return this.recordData.update({op:"replaceRelatedRecord",record:this.identifier,field:e,value:Me(t)},!0)}_getCurrentState(e,t){let r=this.recordData.getRelationship(e,t,!0) -const i=this.store._instanceCache -let n=[] -if(r.data)for(let s=0;ske(this,e,t,r)),(i=>ke(this,e,t,r,i))),this._relationshipPromisesCache[e]=n,n):(r.isLoaded=!0,c.resolve(r))}}reloadHasMany(e,t){{let r=this._relationshipPromisesCache[e] -if(r)return r -const i=(0,S.default(require("@ember-data/record-data/-private")).graphFor)(this.store).get(this.identifier,e),{definition:n,state:s}=i -s.hasFailedLoadAttempt=!1,s.shouldForceReload=!0 -let a=this.getManyArray(e,n),o=this.fetchAsyncHasMany(e,i,a,t) -return this._relationshipProxyCache[e]?this._updatePromiseProxyFor("hasMany",e,{promise:o}):o}}getHasMany(e,t){{const r=(0,S.default(require("@ember-data/record-data/-private")).graphFor)(this.store).get(this.identifier,e),{definition:i,state:n}=r -let s=this.getManyArray(e,i) -if(i.isAsync){if(n.hasFailedLoadAttempt)return this._relationshipProxyCache[e] -let i=this.fetchAsyncHasMany(e,r,s,t) -return this._updatePromiseProxyFor("hasMany",e,{promise:i,content:s})}return s}}_updatePromiseProxyFor(e,t,r){let i=this._relationshipProxyCache[t] -if("hasMany"===e){const{promise:e,content:n}=r -return i?i._update(e,n):i=this._relationshipProxyCache[t]=new be(e,n),i}if(i){const{promise:e,content:t}=r -void 0!==t&&i.set("content",t),i.set("promise",e)}else i=re.create(r),this._relationshipProxyCache[t]=i -return i}referenceFor(e,t){let r=this.references[t] -if(!r){const e=(0,S.default(require("@ember-data/record-data/-private")).graphFor)(this.store),i=e.get(this.identifier,t) -let n=i.definition.kind -"belongsTo"===n?r=new Oe(this.store,e,this.identifier,i,t):"hasMany"===n&&(r=new Se(this.store,e,this.identifier,i,t)),this.references[t]=r}return r}_findHasManyByJsonApiResource(e,t,r,i={}){{if(!e)return -const{definition:n,state:s}=r,a=this.store.adapterFor(n.type),{isStale:o,hasDematerializedInverse:l,hasReceivedData:u,isEmpty:d,shouldForceReload:h}=s,p=je(this.store,e) -if(e.links&&e.links.related&&("function"==typeof a.findHasMany||void 0===e.data)&&(h||l||o||!p&&!d)){const r=this.store.getSchemaDefinitionService().relationshipsDefinitionFor({type:n.inverseType})[n.key] -return function(e,t,r,i,n,s){const a=t._instanceCache.getRecord(r),o=t._instanceCache.createSnapshot(r,s) -let l=t.modelFor(n.type),u=i&&"string"!=typeof i?i.href:i,c=e.findHasMany(t,o,u,n),d=`DS: Handle Adapter#findHasMany of '${r.type}' : '${n.type}'` -return c=Q(c,t,d),c=c.then((e=>{Y(a) -let i=q(t.serializerFor(n.type),t,l,e,null,"findHasMany") -return i=V(t,i,r,n),t._push(i)}),null,`DS: Extract payload of '${r.type}' : hasMany '${n.type}'`),c=G(c,W(Y,a)),c}(this.store.adapterFor(t.type),this.store,t,e.links.related,r,i)}const f=u&&!d,m=l||d&&Array.isArray(e.data)&&e.data.length>0 -if(!h&&!o&&(f||m)){if(p)return -if(p)return -let t=new Array(e.data.length),r=this.store._instanceCache -for(let n=0;n{Y(s) -let n=q(e.serializerFor(i.type),e,l,r,null,"findBelongsTo") -return n.data||n.links||n.meta?(n=V(e,n,t,i),e._push(n)):null}),null,`DS: Extract payload of ${t.type} : ${i.type}`),c=G(c,W(Y,s)),c}(this.store,t,e.links.related,n,i)}let p=o&&h&&!l,f=a||l&&e.data -const m=void 0===e.data||null===e.data -if(!u&&!s&&(p||f))return m?c.resolve(null):this.store._instanceCache._fetchDataIfNeededForIdentifier(n,i) -let g=!m&&null===e.data.id -return n&&g?c.resolve(n):n&&!m?this.store._fetchManager.scheduleFetch(n,i):c.resolve(null)}destroy(){this.isDestroying=!0 -let e=this._manyArrayCache -this._manyArrayCache=Object.create(null),Object.keys(e).forEach((t=>{e[t].destroy()})),e=this._relationshipProxyCache,this._relationshipProxyCache=Object.create(null),Object.keys(e).forEach((t=>{const r=e[t] -r.destroy&&r.destroy()})),e=this.references,this.references=Object.create(null),Object.keys(e).forEach((t=>{e[t].destroy()})),this.isDestroyed=!0}}function ke(e,t,r,i,n){delete e._relationshipPromisesCache[t],r.state.shouldForceReload=!1 -const s="hasMany"===r.definition.kind -if(s&&i.notify(),n){r.state.hasFailedLoadAttempt=!0 -let i=e._relationshipProxyCache[t] -throw i&&!s&&i.content&&i.content.isDestroying&&i.set("content",null),n}return s&&(i.isLoaded=!0),r.state.hasFailedLoadAttempt=!1,r.state.isStale=!1,s||!i?i:e.store.peekRecord(i)}function Me(e){if(!e)return null -if(e.then){let t=e.content -return t?n.recordIdentifierFor(t):null}return n.recordIdentifierFor(e)}function je(e,t){const r=e._instanceCache,i=t.data -return Array.isArray(i)?i.every((e=>r.recordIsLoaded(e))):!i||r.recordIsLoaded(i)}function xe(e,t,r,i){if("belongsTo"===i.kind)r.notifyPropertyChange(t) -else if("hasMany"===i.kind){let n=it.get(e),s=n&&n._manyArrayCache[t],a=n&&n._relationshipPromisesCache[t] -if(s&&a)return -s&&(s.notify(),i.options&&!i.options.async&&void 0!==i.options.async||r.notifyPropertyChange(t))}}function De(e,t,r,i){b.cacheFor(i,r)!==e._instanceCache.getRecordData(t).getAttr(t,r)&&i.notifyPropertyChange(r)}var Ne,Ie,Fe,Le -function ze(e,t,r,i){r&&Object.defineProperty(e,t,{enumerable:r.enumerable,configurable:r.configurable,writable:r.writable,value:r.initializer?r.initializer.call(i):void 0})}function Be(e,t,r,i,n){var s={} -return Object.keys(i).forEach((function(e){s[e]=i[e]})),s.enumerable=!!s.enumerable,s.configurable=!!s.configurable,("value"in s||s.initializer)&&(s.writable=!0),s=r.slice().reverse().reduce((function(r,i){return i(e,t,r)||r}),s),n&&void 0!==s.initializer&&(s.value=s.initializer?s.initializer.call(n):void 0,s.initializer=void 0),void 0===s.initializer&&(Object.defineProperty(e,t,s),s=null),s}let Ue=S.default(require("ember-cached-decorator-polyfill")).cached -const $e=/^\/?data\/(attributes|relationships)\/(.*)/,He=/^\/?data/ -function qe(e){return e&&!0===e.isAdapterError&&"InvalidError"===e.code}let Ve=(Ie=Be((Ne=class{constructor(){ze(this,"ref",Ie,this),this.rev=1,this.isDirty=!0,this.value=void 0,this.t=!1}notify(){this.isDirty=!0,v.addToTransaction(this),this.rev++}consume(e){this.isDirty=!1,this.value=e}}).prototype,"ref",[l.tracked],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),Ne) -const We=new WeakMap -function Ge(e,t){let r=We.get(e) -return r||(r=Object.create(null),We.set(e,r)),r[t]=r[t]||new Ve}function Ye(e,t,r){const i=r.get,n=r.set -return r.get=function(){let e=Ge(this,t) -return v.subscribe(e),e.isDirty&&e.consume(i.call(this)),e.value},r.set=function(e){Ge(this,t),n.call(this,e)},a.dependentKeyCompat(r),r}let Qe=(Fe=class{constructor(e){ze(this,"isSaving",Le,this) -const t=i.storeFor(e),r=n.recordIdentifierFor(e) -this.identifier=r,this.record=e,this.recordData=t._instanceCache.getRecordData(r),this.pendingCount=0,this.fulfilledCount=0,this.rejectedCount=0,this._errorRequests=[],this._lastError=null -let s=t.getRequestStateService(),a=t._notificationManager -const o=e=>{if("mutation"===e.type)switch(e.state){case"pending":this.isSaving=!0 -break -case"rejected":this.isSaving=!1,this._lastError=e,e.response&&qe(e.response.data)||this._errorRequests.push(e),Ke(this) -break -case"fulfilled":this._errorRequests=[],this._lastError=null,this.isSaving=!1,Ke(this)}else switch(e.state){case"pending":this.pendingCount++,this.notify("isLoading") -break -case"rejected":this.pendingCount--,this._lastError=e,e.response&&qe(e.response.data)||this._errorRequests.push(e),this.notify("isLoading"),Ke(this) -break -case"fulfilled":this.pendingCount--,this.fulfilledCount++,this.notify("isLoading"),this.notify("isDirty"),Ke(this),this._errorRequests=[],this._lastError=null}} -s.subscribeForRecord(r,o) -{const e=s.getLastRequestForRecord(r) -e&&o(e)}this.handler=a.subscribe(r,((e,t,r)=>{switch(t){case"state":this.notify("isNew"),this.notify("isDeleted"),this.notify("isDirty") -break -case"attributes":this.notify("isEmpty"),this.notify("isDirty") -break -case"errors":this.updateInvalidErrors(this.record.errors),this.notify("isValid")}}))}destroy(){i.storeFor(this.record)._notificationManager.unsubscribe(this.handler)}notify(e){Ge(this,e).notify()}updateInvalidErrors(e){let t=this.recordData.getErrors(this.identifier) -e.clear() -for(let r=0;r0&&0===this.fulfilledCount}get isLoaded(){return!!this.isNew||(this.fulfilledCount>0||!this.isEmpty)}get isSaved(){let e=this.recordData -return this.isDeleted?e.isDeletionCommitted(this.identifier):!(this.isNew||this.isEmpty||!this.isValid||this.isDirty||this.isLoading)}get isEmpty(){let e=this.recordData -return!this.isNew&&e.isEmpty(this.identifier)}get isNew(){return this.recordData.isNew(this.identifier)}get isDeleted(){return this.recordData.isDeleted(this.identifier)}get isValid(){return 0===this.record.errors.length}get isDirty(){let e=this.recordData -return!(e.isDeletionCommitted(this.identifier)||this.isDeleted&&this.isNew)&&(this.isNew||e.hasChangedAttrs(this.identifier))}get isError(){return!!this._errorRequests[this._errorRequests.length-1]}get adapterError(){let e=this._lastError -return e?"rejected"===e.state&&e.response.data:null}get isPreloaded(){return!this.isEmpty&&this.isLoading}get stateName(){return this.isLoading?"root.loading":this.isEmpty?"root.empty":this.isDeleted?this.isSaving?"root.deleted.inFlight":this.isSaved?"root.deleted.saved":this.isValid?"root.deleted.uncommitted":"root.deleted.invalid":this.isNew?this.isSaving?"root.loaded.created.inFlight":this.isValid?"root.loaded.created.uncommitted":"root.loaded.created.invalid":this.isSaving?"root.loaded.updated.inFlight":this.isValid?this.isDirty?"root.loaded.updated.uncommitted":"root.loaded.saved":"root.loaded.updated.invalid"}get dirtyType(){return this.isLoading||this.isEmpty?"":this.isDeleted?"deleted":this.isNew?"created":this.isSaving||!this.isValid||this.isDirty?"updated":""}},Le=Be(Fe.prototype,"isSaving",[l.tracked],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),Be(Fe.prototype,"isLoading",[Ye],Object.getOwnPropertyDescriptor(Fe.prototype,"isLoading"),Fe.prototype),Be(Fe.prototype,"isLoaded",[Ye],Object.getOwnPropertyDescriptor(Fe.prototype,"isLoaded"),Fe.prototype),Be(Fe.prototype,"isSaved",[Ye],Object.getOwnPropertyDescriptor(Fe.prototype,"isSaved"),Fe.prototype),Be(Fe.prototype,"isEmpty",[Ye],Object.getOwnPropertyDescriptor(Fe.prototype,"isEmpty"),Fe.prototype),Be(Fe.prototype,"isNew",[Ye],Object.getOwnPropertyDescriptor(Fe.prototype,"isNew"),Fe.prototype),Be(Fe.prototype,"isDeleted",[Ye],Object.getOwnPropertyDescriptor(Fe.prototype,"isDeleted"),Fe.prototype),Be(Fe.prototype,"isValid",[Ye],Object.getOwnPropertyDescriptor(Fe.prototype,"isValid"),Fe.prototype),Be(Fe.prototype,"isDirty",[Ye],Object.getOwnPropertyDescriptor(Fe.prototype,"isDirty"),Fe.prototype),Be(Fe.prototype,"isError",[Ye],Object.getOwnPropertyDescriptor(Fe.prototype,"isError"),Fe.prototype),Be(Fe.prototype,"adapterError",[Ye],Object.getOwnPropertyDescriptor(Fe.prototype,"adapterError"),Fe.prototype),Be(Fe.prototype,"isPreloaded",[Ue],Object.getOwnPropertyDescriptor(Fe.prototype,"isPreloaded"),Fe.prototype),Be(Fe.prototype,"stateName",[Ue],Object.getOwnPropertyDescriptor(Fe.prototype,"stateName"),Fe.prototype),Be(Fe.prototype,"dirtyType",[Ue],Object.getOwnPropertyDescriptor(Fe.prototype,"dirtyType"),Fe.prototype),Fe) -function Ke(e){e.notify("isValid"),e.notify("isError"),e.notify("adapterError")}class Je{constructor(e){this._type="",this.__inverseKey="",this.__hasCalculatedInverse=!1,this.parentModelName=e.parentModelName,this.meta=e}get key(){return this.meta.key}get kind(){return this.meta.kind}get type(){return this._type||(this._type=function(e){let t=s.dasherize(e.type||e.key) -return"hasMany"===e.kind&&(t=y.singularize(t)),t}(this.meta)),this._type}get options(){return this.meta.options}get name(){return this.meta.name}_inverseKey(e,t){return!1===this.__hasCalculatedInverse&&this._calculateInverse(e,t),this.__inverseKey}_calculateInverse(e,t){let r -this.__hasCalculatedInverse=!0 -let i=null;(function(e){let t=e.options -return!(t&&null===t.inverse)})(this.meta)&&(i=t.inverseFor(this.key,e)),r=i?i.name:null,this.__inverseKey=r}}var Xe,Ze,et -function tt(e,t,r,i,n){var s={} -return Object.keys(i).forEach((function(e){s[e]=i[e]})),s.enumerable=!!s.enumerable,s.configurable=!!s.configurable,("value"in s||s.initializer)&&(s.writable=!0),s=r.slice().reverse().reduce((function(r,i){return i(e,t,r)||r}),s),n&&void 0!==s.initializer&&(s.value=s.initializer?s.initializer.call(n):void 0,s.initializer=void 0),void 0===s.initializer&&(Object.defineProperty(e,t,s),s=null),s}const{changeProperties:rt}=O.default,it=new Map -function nt(e){const t=i.recordIdentifierFor(e) -let r=it.get(t) -return r||(r=new Ce(e),it.set(t,r),it.set(e,r)),r}function st(e,t,r,i){let n=i||[],s=t.relationships -if(!s)return n -let a=s.get(e.modelName),o=Array.isArray(a)?a.filter((e=>{let t=e.options -return!t.inverse&&null!==t.inverse||r===t.inverse})):null -return o&&n.push.apply(n,o),e.superclass&&st(e.superclass,t,r,n),n}function at(e,t,r){const i=new WeakMap -let n=r.get -return r.get=function(){let e=i.get(this) -return e||(e={hasComputed:!1,value:void 0},i.set(this,e)),e.hasComputed||(e.value=n.call(this),e.hasComputed=!0),e.value},r}let ot=(et=class extends R.default{constructor(...e){super(...e),this.___private_notifications=void 0,function(e,t,r,i){r&&Object.defineProperty(e,t,{enumerable:r.enumerable,configurable:r.configurable,writable:r.writable,value:r.initializer?r.initializer.call(i):void 0})}(this,"isReloading",Ze,this)}init(e={}){const t=e._createProps,r=e._secretInit -e._createProps=null,e._secretInit=null -let i=this.store=r.store -super.init(e) -let n=r.identifier -r.cb(this,r.recordData,n,r.store),this.___recordState=null,this.setProperties(t) -let s=i._notificationManager -this.___private_notifications=s.subscribe(n,((e,t,r)=>{(function(e,t,r,i,n){if("attributes"===t)r?De(n,e,r,i):i.eachAttribute((t=>{De(n,e,t,i)})) -else if("relationships"===t)if(r){let t=i.constructor.relationshipsByName.get(r) -xe(e,r,i,t)}else i.eachRelationship(((t,r)=>{xe(e,t,i,r)})) -else"identity"===t&&i.notifyPropertyChange("id")})(e,t,r,this,i)}))}destroy(){const e=i.recordIdentifierFor(this) -this.___recordState?.destroy() -i.storeFor(this)._notificationManager.unsubscribe(this.___private_notifications),this.eachRelationship(((e,t)=>{"belongsTo"===t.kind&&this.notifyPropertyChange(e)})),it.get(this)?.destroy(),it.delete(this),it.delete(e),super.destroy()}get isEmpty(){return this.currentState.isEmpty}get isLoading(){return this.currentState.isLoading}get isLoaded(){return this.currentState.isLoaded}get hasDirtyAttributes(){return this.currentState.isDirty}get isSaving(){return this.currentState.isSaving}get isDeleted(){return this.currentState.isDeleted}get isNew(){return this.currentState.isNew}get isValid(){return this.currentState.isValid}get dirtyType(){return this.currentState.dirtyType}get isError(){return this.currentState.isError}set isError(e){}get id(){return i.recordIdentifierFor(this).id}set id(e){const t=n.coerceId(e),r=i.recordIdentifierFor(this) -let s=t!==r.id -null!==t&&s&&(this.store._instanceCache.setRecordId(r,t),this.store._notificationManager.notify(r,"identity"))}toString(){return``}get currentState(){return this.___recordState||(this.___recordState=new Qe(this)),this.___recordState}set currentState(e){throw new Error("cannot set currentState")}get errors(){let e=H.create({__record:this}) -return this.currentState.updateInvalidErrors(e),e}get adapterError(){return this.currentState.adapterError}set adapterError(e){throw new Error("adapterError is not directly settable")}serialize(e){return i.storeFor(this)._instanceCache.createSnapshot(i.recordIdentifierFor(this)).serialize(e)}notifyPropertyChange(e){let t=function(e,t){let r=We.get(e) -return r&&r[t]}(this,e) -t&&t.notify(),super.notifyPropertyChange(e)}deleteRecord(){this.currentState&&i.storeFor(this).deleteRecord(this)}destroyRecord(e){const{isNew:t}=this.currentState -return this.deleteRecord(),t?c.resolve(this):this.save(e).then((e=>(o.run((()=>{this.unloadRecord()})),this)))}unloadRecord(){this.currentState.isNew&&(this.isDestroyed||this.isDestroying)||i.storeFor(this).unloadRecord(this)}_notifyProperties(e){rt((()=>{let t -for(let r=0,i=e.length;r{n.recordDataFor(this).rollbackAttrs(i.recordIdentifierFor(this)),this.errors.clear(),e.cleanErrorRequests(),t&&this.unloadRecord()}))}_createSnapshot(){return i.storeFor(this)._instanceCache.createSnapshot(i.recordIdentifierFor(this))}save(e){let t -return t=this.currentState.isNew&&this.currentState.isDeleted?c.resolve(this):i.storeFor(this).saveRecord(this,e),j(t)}reload(e){let t={} -"object"==typeof e&&null!==e&&e.adapterOptions&&(t.adapterOptions=e.adapterOptions),t.isReloading=!0 -let r=i.recordIdentifierFor(this) -this.isReloading=!0 -return j(i.storeFor(this)._fetchManager.scheduleFetch(r,t).then((()=>this)).finally((()=>{this.isReloading=!1})))}attr(){}belongsTo(e){return nt(this).referenceFor("belongsTo",e)}hasMany(e){return nt(this).referenceFor("hasMany",e)}eachRelationship(e,t){this.constructor.eachRelationship(e,t)}relationshipFor(e){return this.constructor.relationshipsByName.get(e)}inverseFor(e){return this.constructor.inverseFor(e,i.storeFor(this))}eachAttribute(e,t){this.constructor.eachAttribute(e,t)}static typeForRelationship(e,t){let r=this.relationshipsByName.get(e) -return r&&t.modelFor(r.type)}static get inverseMap(){return Object.create(null)}static inverseFor(e,t){let r=this.inverseMap -if(r[e])return r[e] -{let i=this._findInverseFor(e,t) -return r[e]=i,i}}static _findInverseFor(e,t){const r=this.relationshipsByName.get(e),{options:i}=r,n=i.polymorphic,s=null===i.inverse,a=!s&&n&&!t.getSchemaDefinitionService().doesTypeExist(r.type) -if(s||a)return null -let o,l,u,c,d=this.typeForRelationship(e,t) -if(void 0!==i.inverse)o=i.inverse,u=d&&d.relationshipsByName.get(o),l=u.kind,c=u.options -else{r.type,r.parentModelName -let t=st(this,d,e) -if(0===t.length)return null -let i=t.find((t=>t.options.inverse===e)) -i&&(t=[i]),o=t[0].name,l=t[0].kind,c=t[0].options}return{type:d,name:o,kind:l,options:c}}static get relationships(){let e=new Map -return this.relationshipsByName.forEach((t=>{let{type:r}=t -e.has(r)||e.set(r,[]),e.get(r).push(t)})),e}static get relationshipNames(){let e={hasMany:[],belongsTo:[]} -return this.eachComputedProperty(((t,r)=>{r.isRelationship&&e[r.kind].push(t)})),e}static get relatedTypes(){let e=[],t=this.relationshipsObject,r=Object.keys(t) -for(let i=0;i{i.isRelationship&&(i.key=r,i.name=r,i.parentModelName=t,e[r]=function(e){return new Je(e)}(i))})),e}static get fields(){let e=new Map -return this.eachComputedProperty(((t,r)=>{r.isRelationship?e.set(t,r.kind):r.isAttribute&&e.set(t,"attribute")})),e}static eachRelationship(e,t){this.relationshipsByName.forEach(((r,i)=>{e.call(t,i,r)}))}static eachRelatedType(e,t){let r=this.relatedTypes -for(let i=0;i{r.isAttribute&&(r.name=t,e.set(t,r))})),e}static get transformedAttributes(){let e=new Map -return this.eachAttribute(((t,r)=>{r.type&&e.set(t,r.type)})),e}static eachAttribute(e,t){this.attributes.forEach(((r,i)=>{e.call(t,i,r)}))}static eachTransformedAttribute(e,t){this.transformedAttributes.forEach(((r,i)=>{e.call(t,i,r)}))}static toString(){return`model:${this.modelName}`}},et.isModel=!0,et.modelName=null,tt((Xe=et).prototype,"isEmpty",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(Xe.prototype,"isEmpty"),Xe.prototype),tt(Xe.prototype,"isLoading",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(Xe.prototype,"isLoading"),Xe.prototype),tt(Xe.prototype,"isLoaded",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(Xe.prototype,"isLoaded"),Xe.prototype),tt(Xe.prototype,"hasDirtyAttributes",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(Xe.prototype,"hasDirtyAttributes"),Xe.prototype),tt(Xe.prototype,"isSaving",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(Xe.prototype,"isSaving"),Xe.prototype),tt(Xe.prototype,"isDeleted",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(Xe.prototype,"isDeleted"),Xe.prototype),tt(Xe.prototype,"isNew",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(Xe.prototype,"isNew"),Xe.prototype),tt(Xe.prototype,"isValid",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(Xe.prototype,"isValid"),Xe.prototype),tt(Xe.prototype,"dirtyType",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(Xe.prototype,"dirtyType"),Xe.prototype),tt(Xe.prototype,"isError",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(Xe.prototype,"isError"),Xe.prototype),Ze=tt(Xe.prototype,"isReloading",[l.tracked],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),tt(Xe.prototype,"id",[Ye],Object.getOwnPropertyDescriptor(Xe.prototype,"id"),Xe.prototype),tt(Xe.prototype,"currentState",[Ye],Object.getOwnPropertyDescriptor(Xe.prototype,"currentState"),Xe.prototype),tt(Xe.prototype,"errors",[at],Object.getOwnPropertyDescriptor(Xe.prototype,"errors"),Xe.prototype),tt(Xe.prototype,"adapterError",[a.dependentKeyCompat],Object.getOwnPropertyDescriptor(Xe.prototype,"adapterError"),Xe.prototype),tt(Xe,"inverseMap",[at],Object.getOwnPropertyDescriptor(Xe,"inverseMap"),Xe),tt(Xe,"relationships",[at],Object.getOwnPropertyDescriptor(Xe,"relationships"),Xe),tt(Xe,"relationshipNames",[at],Object.getOwnPropertyDescriptor(Xe,"relationshipNames"),Xe),tt(Xe,"relatedTypes",[at],Object.getOwnPropertyDescriptor(Xe,"relatedTypes"),Xe),tt(Xe,"relationshipsByName",[at],Object.getOwnPropertyDescriptor(Xe,"relationshipsByName"),Xe),tt(Xe,"relationshipsObject",[at],Object.getOwnPropertyDescriptor(Xe,"relationshipsObject"),Xe),tt(Xe,"fields",[at],Object.getOwnPropertyDescriptor(Xe,"fields"),Xe),tt(Xe,"attributes",[at],Object.getOwnPropertyDescriptor(Xe,"attributes"),Xe),tt(Xe,"transformedAttributes",[at],Object.getOwnPropertyDescriptor(Xe,"transformedAttributes"),Xe),Xe) -function lt(e){if(e)return s.dasherize(e)}ot.prototype._createProps=null,ot.prototype._secretInit=null,ot.prototype._debugInfo=function(){let e=["id"],t={},r=[] -this.eachAttribute(((t,r)=>e.push(t))) -let i=[{name:"Attributes",properties:e,expand:!0}] -return this.eachRelationship(((e,n)=>{let s=t[n.kind] -void 0===s&&(s=t[n.kind]=[],i.push({name:n.kind,properties:s,expand:!0})),s.push(e),r.push(e)})),i.push({name:"Flags",properties:["isLoaded","hasDirtyAttributes","isSaving","isDeleted","isError","isNew","isValid"]}),{propertyInfo:{includeOtherProperties:!0,groups:i,expensiveProperties:r}}} -const ut=C((function(e,t){let i=t,n=e -"string"==typeof e&&e.length||("object"==typeof e?(i=e,n=void 0):(i=t,n=e)),i&&"boolean"==typeof i.async||(i=i||{},"async"in i||(i.async=!0)),null!==i.inverse&&("string"!=typeof i.inverse||i.inverse.length) -let s={type:lt(n),isRelationship:!0,options:i,kind:"belongsTo",name:"Belongs To",key:null} -return r.computed({get(e){if(this.isDestroying||this.isDestroyed)return null -return nt(this).getBelongsTo(e)},set(e,t){const r=nt(this) -return this.store._join((()=>{r.setDirtyBelongsTo(e,t)})),r.getBelongsTo(e)}}).meta(s)})) -function ct(e){if(e)return y.singularize(s.dasherize(e))}const dt=C((function(e,t){"string"==typeof e&&e.length||"object"==typeof e&&(t=e,e=void 0),t&&"boolean"==typeof t.async||"async"in(t=t||{})||(t.async=!0),null!==t.inverse&&("string"!=typeof t.inverse||t.inverse.length) -let i={type:ct(e),options:t,isRelationship:!0,kind:"hasMany",name:"Has Many",key:null} -return r.computed({get(e){return this.isDestroying||this.isDestroyed?p.A():nt(this).getHasMany(e)},set(e,t){const r=nt(this),i=r.getManyArray(e) -return this.store._join((()=>{i.splice(0,i.length,...t)})),r.getHasMany(e)}}).meta(i)})) -e.Errors=H,e.LEGACY_SUPPORT=it,e.ManyArray=K,e.Model=ot,e.PromiseBelongsTo=re,e.PromiseManyArray=be,e._modelForMixin=function(e,t){let r=_.getOwner(e),i=r.factoryFor(`mixin:${t}`),n=i&&i.class -if(n){let e=ot.extend(n) -e.__isMixin=!0,e.__mixin=n,r.register("model:"+t,e)}return r.factoryFor(`model:${t}`)},e.attr=k,e.belongsTo=ut,e.diffArray=function(e,t){const r=e.length,i=t.length,n=Math.min(r,i) -let s=null -for(let l=0;l{r.has(e)||(r.add(e),t(e))})),e.remoteMembers.forEach((e=>{r.has(e)||(r.add(e),t(e))}))}}function p(e,t,r,i){if(u(t))t.remoteState===r&&(t.remoteState=null),t.localState===r&&(t.localState=null,i||f(e,t.identifier,t.definition.key)) -else if(d(t)){t.remoteMembers.delete(r),t.localMembers.delete(r) -const n=t.remoteState.indexOf(r);-1!==n&&t.remoteState.splice(n,1) -const s=t.localState.indexOf(r);-1!==s&&(t.localState.splice(s,1),i||f(e,t.identifier,t.definition.key))}else t.remoteMembers.delete(r),t.localMembers.delete(r)}function f(e,t,r){t!==e._removing&&e.store.notifyChange(t,"relationships",r)}class m{constructor(e,t){this.definition=e,this.identifier=t,this._state=null,this.transactionRef=0,this.meta=null,this.links=null,this.localState=null,this.remoteState=null}get state(){let{_state:e}=this -return e||(e=this._state={hasReceivedData:!1,isEmpty:!0,isStale:!1,hasFailedLoadAttempt:!1,shouldForceReload:!1,hasDematerializedInverse:!1}),e}getData(){let e,t={} -return this.localState&&(e=this.localState),null===this.localState&&this.state.hasReceivedData&&(e=null),this.links&&(t.links=this.links),void 0!==e&&(t.data=e),this.meta&&(t.meta=this.meta),t}}class g{constructor(e,t){this.definition=e,this.identifier=t,this._state=null,this.transactionRef=0,this.localMembers=new Set,this.remoteMembers=new Set,this.meta=null,this.links=null,this.remoteState=[],this.localState=[]}get state(){let{_state:e}=this -return e||(e=this._state={hasReceivedData:!1,isEmpty:!0,isStale:!1,hasFailedLoadAttempt:!1,shouldForceReload:!1,hasDematerializedInverse:!1}),e}getData(){let e={} -return this.state.hasReceivedData&&(e.data=this.localState.slice()),this.links&&(e.links=this.links),this.meta&&(e.meta=this.meta),e}}const b=null,v="",y=Date.now() -function _(e,t){e.inverseKind=t.kind,e.inverseKey=t.key,e.inverseType=t.type,e.inverseIsAsync=t.isAsync,e.inverseIsCollection=t.isCollection,e.inverseIsPolymorphic=t.isPolymorphic,e.inverseIsImplicit=t.isImplicit}function E(e){let t={},r=e.options -return t.kind=e.kind,t.key=e.name,t.type=e.type,t.isAsync=r.async,t.isImplicit=!1,t.isCollection="hasMany"===e.kind,t.isPolymorphic=r&&!!r.polymorphic,t.inverseKey=r&&r.inverse||v,t.inverseType=v,t.inverseIsAsync=b,t.inverseIsImplicit=r&&null===r.inverse||b,t.inverseIsCollection=b,t}function R(e,t,r,i=!1){const n=e._definitionCache,l=e.store,u=e._potentialPolymorphicTypes,{type:c}=t -let d=a(n,c,r) -if(void 0!==d)return d -let h=l.getSchemaDefinitionService().relationshipsDefinitionFor(t)[r] -if(!h){if(u[c]){const e=Object.keys(u[c]) -for(let t=0;tu?f:u,g=f===u -for(let b=0,v=0;bu?m:u,b=m===u -for(let f=0,v=0;f{const n=r[i] -n&&function(e,t,r){r.identifier=t.value,h(r,(i=>{const n=e.get(i,r.definition.inverseKey);(function(e,t,r){u(t)?function(e,t,r){t.remoteState===r.record&&(t.remoteState=r.value) -t.localState===r.record&&(t.localState=r.record,f(e,t.identifier,t.definition.key))}(e,t,r):d(t)?function(e,t,r){if(t.remoteMembers.has(r.record)){t.remoteMembers.delete(r.record),t.remoteMembers.add(r.value) -const e=t.remoteState.indexOf(r.record) -t.remoteState.splice(e,1,r.value)}if(t.localMembers.has(r.record)){t.localMembers.delete(r.record),t.localMembers.add(r.value) -const i=t.localState.indexOf(r.record) -t.localState.splice(i,1,r.value),f(e,t.identifier,t.definition.key)}}(e,t,r):function(e,t,r){t.remoteMembers.has(r.record)&&(t.remoteMembers.delete(r.record),t.remoteMembers.add(r.value)) -t.localMembers.has(r.record)&&(t.localMembers.delete(r.record),t.localMembers.add(r.value))}(0,t,r)})(e,n,t)}))}(e,t,n)}))}function C(e,t,r,i,n){const{localMembers:s,localState:a}=t -if(!s.has(i))return -s.delete(i) -let o=a.indexOf(i) -a.splice(o,1),T(e,i,t.definition.inverseKey,r,n)}function k(e,t,r=!1){const i=e.get(t.record,t.field) -r&&e._addToTransaction(i) -const{definition:n,state:s}=i,a=r?"remoteState":"localState",o=i[a] -if(t.value!==o)if(o&&T(e,o,n.inverseKey,t.record,r),i[a]=t.value,s.hasReceivedData=!0,s.isEmpty=null===t.value,s.isStale=!1,s.hasFailedLoadAttempt=!1,t.value&&(n.type!==t.value.type&&e.registerPolymorphicType(n.type,t.value.type),w(e,t.value,n.inverseKey,t.record,r)),r){const{localState:t,remoteState:r}=i -if(t&&l(t)&&!r)return -t!==r&&(i.localState=r,f(e,i.identifier,i.definition.key))}else f(e,i.identifier,i.definition.key) -else if(s.hasReceivedData=!0,r){const{localState:s}=i -if(s&&l(s)&&!o)return -o&&s===o?function(e,t,r,i,n){const s=e.get(t,r) -d(s)&&n&&s.remoteMembers.has(i)&&f(e,s.identifier,s.definition.key)}(e,o,n.inverseKey,t.record,r):(i.localState=o,f(e,i.identifier,i.definition.key))}}function M(e){switch(typeof e){case"object":return e -case"string":return{href:e}}}const j=new Map -class x{constructor(e){this._definitionCache=Object.create(null),this._potentialPolymorphicTypes=Object.create(null),this.identifiers=new Map,this.store=e,this.isDestroyed=!1,this._willSyncRemote=!1,this._willSyncLocal=!1,this._pushedUpdates={belongsTo:[],hasMany:[],deletions:[]},this._updatedRelationships=new Set,this._transaction=null,this._removing=null}has(e,t){let r=this.identifiers.get(e) -return!!r&&void 0!==r[t]}get(e,t){let r=this.identifiers.get(e) -r||(r=Object.create(null),this.identifiers.set(e,r)) -let i=r[t] -if(!i){const n=R(this,e,t),s=function(e,t,r){let i=e.isSelfReferential -return!0==(r===e.lhs_relationshipName)&&(!0===i||t===e.lhs_baseModelName||e.rhs_isPolymorphic&&-1!==e.lhs_modelNames.indexOf(t))}(n,e.type,t)?n.lhs_definition:n.rhs_definition -if("implicit"!==s.kind){const n="hasMany"===s.kind?g:m -i=r[t]=new n(s,e)}else i=r[t]={definition:s,identifier:e,localMembers:new Set,remoteMembers:new Set}}return i}registerPolymorphicType(e,t){const r=this._potentialPolymorphicTypes -let i=r[e] -i||(i=r[e]=Object.create(null)),i[t]=!0 -let n=r[t] -n||(n=r[t]=Object.create(null)),n[e]=!0}isReleasable(e){const t=this.identifiers.get(e) -if(!t)return!0 -const r=Object.keys(t) -for(let i=0;i{let i=r[e] -i&&(function(e,t,r){if(c(t))return void(e.isReleasable(t.identifier)&&N(e,t)) -const{identifier:i}=t,{inverseKey:n}=t.definition -t.definition.inverseIsImplicit||h(t,(t=>function(e,t,r,i,n){if(!e.has(t,r))return -let s=e.get(t,r) -u(s)&&s.localState&&i!==s.localState||function(e,t,r,i){if(u(t)){const r=t.localState -!t.definition.isAsync||r&&l(r)?(t.localState===r&&null!==r&&(t.localState=null),t.remoteState===r&&null!==r&&(t.remoteState=null,t.state.hasReceivedData=!0,t.state.isEmpty=!0,t.localState&&!l(t.localState)&&(t.localState=null))):t.state.hasDematerializedInverse=!0,i||f(e,t.identifier,t.definition.key)}else!t.definition.isAsync||r&&l(r)?p(e,t,r):t.state.hasDematerializedInverse=!0,i||f(e,t.identifier,t.definition.key)}(e,s,i,n)}(e,t,n,i,r))) -t.definition.inverseIsImplicit||t.definition.inverseIsAsync||(t.state.isStale=!0,D(t),t.definition.isAsync||r||f(e,t.identifier,t.definition.key))}(this,i,t),c(i)&&(r[e]=void 0))}))}remove(e){this._removing=e,this.unload(e),this.identifiers.delete(e),this._removing=null}push(e){if("deleteRecord"===e.op)this._pushedUpdates.deletions.push(e) -else if("replaceRelatedRecord"===e.op)this._pushedUpdates.belongsTo.push(e) -else{const t=this.get(e.record,e.field) -this._pushedUpdates[t.definition.kind].push(e)}this._willSyncRemote||(this._willSyncRemote=!0,s(this.store)._schedule("coalesce",(()=>this._flushRemoteQueue())))}update(e,t=!1){switch(e.op){case"mergeIdentifiers":{const t=this.identifiers.get(e.record) -t&&S(this,e,t) -break}case"updateRelationship":(function(e,t){const r=e.get(t.record,t.field),{definition:i,state:n,identifier:s}=r,{isCollection:a}=i,o=t.value -let l=!1,u=!1 -if(o.meta&&(r.meta=o.meta),void 0!==o.data)if(l=!0,a){null===o.data&&(o.data=[]) -const r=e.store.identifierCache -e.update({op:"replaceRelatedRecords",record:s,field:t.field,value:o.data.map((e=>r.getOrCreateRecordIdentifier(e)))},!0)}else e.update({op:"replaceRelatedRecord",record:s,field:t.field,value:o.data?e.store.identifierCache.getOrCreateRecordIdentifier(o.data):null},!0) -else!1!==i.isAsync||n.hasReceivedData||(l=!0,a?e.update({op:"replaceRelatedRecords",record:s,field:t.field,value:[]},!0):e.update({op:"replaceRelatedRecord",record:s,field:t.field,value:null},!0)) -if(o.links){let e=r.links -if(r.links=o.links,o.links.related){let t=M(o.links.related),r=e&&e.related?M(e.related):null,i=r?r.href:null -t&&t.href&&t.href!==i&&(u=!0)}}if(r.state.hasFailedLoadAttempt=!1,l){let e=null===o.data||Array.isArray(o.data)&&0===o.data.length -r.state.hasReceivedData=!0,r.state.isStale=!1,r.state.hasDematerializedInverse=!1,r.state.isEmpty=e}else u&&(a||!r.state.hasReceivedData||0===r.transactionRef?(r.state.isStale=!0,f(e,r.identifier,r.definition.key)):r.state.isStale=!1)})(this,e) -break -case"deleteRecord":{const t=e.record,r=this.identifiers.get(t) -r&&(Object.keys(r).forEach((e=>{const t=r[e] -t&&(r[e]=void 0,N(this,t))})),this.identifiers.delete(t)) -break}case"replaceRelatedRecord":k(this,e,t) -break -case"addToRelatedRecords":(function(e,t,r){const{record:i,value:n,index:s}=t,a=e.get(i,t.field) -if(Array.isArray(n))for(let o=0;othis._flushLocalQueue())))}_flushRemoteQueue(){if(!this._willSyncRemote)return -this._transaction=new Set,this._willSyncRemote=!1 -const{deletions:e,hasMany:t,belongsTo:r}=this._pushedUpdates -this._pushedUpdates.deletions=[],this._pushedUpdates.hasMany=[],this._pushedUpdates.belongsTo=[] -for(let i=0;ie.transactionRef=0)),this._transaction=null)}_flushLocalQueue(){if(!this._willSyncLocal)return -this._willSyncLocal=!1 -let e=this._updatedRelationships -this._updatedRelationships=new Set,e.forEach((e=>function(e,t){let r=t.remoteState,i=t.localState.filter((e=>l(e)&&-1===r.indexOf(e))),n=t.localState -t.localState=r.concat(i) -let s=t.localMembers=new Set -t.remoteMembers.forEach((e=>s.add(e))) -for(let a=0;a{e.has(t,i)&&p(e,e.get(t,i),r)})),u(t)?(t.definition.isAsync||D(t),t.localState=null):d(t)?t.definition.isAsync||(D(t),f(e,t.identifier,t.definition.key)):(t.remoteMembers.clear(),t.localMembers.clear())}function I(e){return void 0!==e._instanceCache?e._instanceCache._storeWrapper:e}function F(e){return j.get(I(e))}function L(e){const t=I(e) -let r=j.get(t) -return r||(r=new x(t),j.set(t,r)),r}const z={iterator:()=>({next:()=>({done:!0,value:void 0})})} -function B(e){return"belongsTo"===e.definition.kind?e.remoteState?[e.remoteState]:[]:e.remoteState}function U(e,t,r){if(r)for(let i=0;i{const t=i[e] -t&&!c(t)&&n.push(t)})) -let s=0,a=0,o=0 -return{iterator:()=>({next:()=>{const e=(()=>{for(;s0){let t=r.localAttrs=r.localAttrs||Object.create(null) -for(let i=0;i0;){let s=i.shift() -r.push(s),n.add(s) -const a=V(e,t).iterator() -for(let e=a.next();!e.done;e=a.next()){const t=e.value -t&&!n.has(t)&&(n.add(t),i.push(t))}}return r}(i,e) -if(function(e,t){for(let r=0;r{setTimeout((()=>{this.__destroyedCache.clear()}),100)}))}getAttr(e,t){const r=this.__peek(e,!0) -if(r.localAttrs&&t in r.localAttrs)return r.localAttrs[t] -if(r.inflightAttrs&&t in r.inflightAttrs)return r.inflightAttrs[t] -if(r.remoteAttrs&&t in r.remoteAttrs)return r.remoteAttrs[t] -{const r=this.__storeWrapper.getSchemaDefinitionService().attributesDefinitionFor(e)[t] -return function(e){if(!e)return -if("function"==typeof e.defaultValue)return e.defaultValue() -return e.defaultValue}(r?.options)}}setAttr(e,t,r){const i=this.__peek(e),n=i.inflightAttrs&&t in i.inflightAttrs?i.inflightAttrs[t]:i.remoteAttrs&&t in i.remoteAttrs?i.remoteAttrs[t]:void 0 -n!==r?(i.localAttrs=i.localAttrs||Object.create(null),i.localAttrs[t]=r,i.changes=i.changes||Object.create(null),i.changes[t]=[n,r]):i.localAttrs&&(delete i.localAttrs[t],delete i.changes[t]),this.__storeWrapper.notifyChange(e,"attributes",t)}changedAttrs(e){return this.__peek(e).changes||Object.create(null)}hasChangedAttrs(e){const t=this.__peek(e,!0) -return null!==t.localAttrs&&Object.keys(t.localAttrs).length>0}rollbackAttrs(e){const t=this.__peek(e) -let r -return t.isDeleted=!1,null!==t.localAttrs&&(r=Object.keys(t.localAttrs),t.localAttrs=null,t.changes=null),t.isNew&&(L(this.__storeWrapper).push({op:"deleteRecord",record:e,isNew:!0}),t.isDeleted=!0,t.isNew=!1),t.inflightAttrs=null,t.errors&&(t.errors=null,this.__storeWrapper.notifyChange(e,"errors")),this.__storeWrapper.notifyChange(e,"state"),r&&r.length&&U(this.__storeWrapper,e,r),r||[]}getRelationship(e,t){return L(this.__storeWrapper).get(e,t).getData()}setIsDeleted(e,t){const r=this.__peek(e) -r.isDeleted=t,r.isNew&&L(this.__storeWrapper).push({op:"deleteRecord",record:e,isNew:!0}),this.__storeWrapper.notifyChange(e,"state")}getErrors(e){return this.__peek(e,!0).errors||[]}isEmpty(e){const t=this.__peek(e,!0) -return null===t.remoteAttrs&&null===t.inflightAttrs&&null===t.localAttrs}isNew(e){return this.__peek(e,!0).isNew}isDeleted(e){return this.__peek(e,!0).isDeleted}isDeletionCommitted(e){return this.__peek(e,!0).isDeletionCommitted}},e.graphFor=L,e.peekGraph=F,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})})),define("@ember-data/serializer/-private",["exports","@ember/array","@ember/debug","@ember/object/mixin","@ember/string","@ember/utils","@ember/object"],(function(e,t,r,i,n,s,a){"use strict" -const o=e=>e&&"object"==typeof e&&"default"in e?e:{default:e},l=o(i),u=o(a),c=l.default.create({normalize(e,t,r){let i=this._super(e,t,r) -return this._extractEmbeddedRecords(this,this.store,e,i)},keyForRelationship(e,t,r){return"serialize"===r&&this.hasSerializeRecordsOption(e)||"deserialize"===r&&this.hasDeserializeRecordsOption(e)?this.keyForAttribute(e,r):this._super(e,t,r)||e},serializeBelongsTo(e,t,r){let i=r.key -if(this.noSerializeOptionSpecified(i))return void this._super(e,t,r) -let n=this.hasSerializeIdsOption(i),s=this.hasSerializeRecordsOption(i),a=e.belongsTo(i) -if(n){let i=this.store.modelFor(e.modelName),n=this._getMappedKey(r.key,i) -n===r.key&&this.keyForRelationship&&(n=this.keyForRelationship(r.key,r.kind,"serialize")),a?(t[n]=a.id,r.options.polymorphic&&this.serializePolymorphicType(e,t,r)):t[n]=null}else s&&this._serializeEmbeddedBelongsTo(e,t,r)},_serializeEmbeddedBelongsTo(e,t,r){let i=e.belongsTo(r.key),n=this.store.modelFor(e.modelName),s=this._getMappedKey(r.key,n) -s===r.key&&this.keyForRelationship&&(s=this.keyForRelationship(r.key,r.kind,"serialize")),i?(t[s]=i.serialize({includeId:!0}),this.removeEmbeddedForeignKey(e,i,r,t[s]),r.options.polymorphic&&this.serializePolymorphicType(e,t,r)):t[s]=null},serializeHasMany(e,t,r){let i=r.key -if(this.noSerializeOptionSpecified(i))this._super(e,t,r) -else if(this.hasSerializeIdsOption(i)){let n=this.store.modelFor(e.modelName),s=this._getMappedKey(r.key,n) -s===r.key&&this.keyForRelationship&&(s=this.keyForRelationship(r.key,r.kind,"serialize")),t[s]=e.hasMany(i,{ids:!0})}else this.hasSerializeRecordsOption(i)?this._serializeEmbeddedHasMany(e,t,r):this.hasSerializeIdsAndTypesOption(i)&&this._serializeHasManyAsIdsAndTypes(e,t,r)},_serializeHasManyAsIdsAndTypes(e,r,i){let n=this.keyForAttribute(i.key,"serialize"),s=e.hasMany(i.key) -r[n]=t.A(s).map((function(e){return{id:e.id,type:e.modelName}}))},_serializeEmbeddedHasMany(e,t,r){let i=this.store.modelFor(e.modelName),n=this._getMappedKey(r.key,i) -n===r.key&&this.keyForRelationship&&(n=this.keyForRelationship(r.key,r.kind,"serialize")),t[n]=this._generateSerializedHasMany(e,r)},_generateSerializedHasMany(e,r){let i=e.hasMany(r.key),n=t.A(i),s=new Array(n.length) -for(let t=0;t{e.hasDeserializeRecordsOption(r)&&("hasMany"===n.kind&&this._extractEmbeddedHasMany(t,r,i,n),"belongsTo"===n.kind&&this._extractEmbeddedBelongsTo(t,r,i,n))})),i},_extractEmbeddedHasMany(e,t,r,i){let n=r.data?.relationships?.[t]?.data -if(!n)return -let s=new Array(n.length) -for(let o=0;o{let i=this.keyForAttribute(e,"deserialize") -void 0!==t.attributes[i]&&(r[e]=t.attributes[i])})),r},extractRelationship(e){if("object"===(0,i.typeOf)(e.data)&&(e.data=this._normalizeRelationshipDataHelper(e.data)),Array.isArray(e.data)){let t=new Array(e.data.length) -for(let r=0;r{let n=this.keyForRelationship(e,i.kind,"deserialize") -if(void 0!==t.relationships[n]){let i=t.relationships[n] -r[e]=this.extractRelationship(i)}})),r},_extractType(e,t){return this.modelNameFromPayloadKey(t.type)},modelNameFromPayloadKey:e=>(0,n.singularize)((0,r.dasherize)(e)),payloadKeyFromModelName:e=>(0,n.pluralize)(e),normalize(e,t){t.attributes&&this.normalizeUsingDeclaredMapping(e,t.attributes),t.relationships&&this.normalizeUsingDeclaredMapping(e,t.relationships) -let r={id:this.extractId(e,t),type:this._extractType(e,t),attributes:this.extractAttributes(e,t),relationships:this.extractRelationships(e,t)} -return this.applyTransforms(e,r.attributes),{data:r}},keyForAttribute:(e,t)=>(0,r.dasherize)(e),keyForRelationship:(e,t,i)=>(0,r.dasherize)(e),serialize(e,t){let r=this._super(...arguments) -return r.type=this.payloadKeyFromModelName(e.modelName),{data:r}},serializeAttribute(e,t,r,i){let n=i.type -if(this._canSerialize(r)){t.attributes=t.attributes||{} -let s=e.attr(r) -if(n){s=this.transformFor(n).serialize(s,i.options)}let a=this.store.modelFor(e.modelName),o=this._getMappedKey(r,a) -o===r&&(o=this.keyForAttribute(r,"serialize")),t.attributes[o]=s}},serializeBelongsTo(e,t,r){let i=r.key -if(this._canSerialize(i)){let r=e.belongsTo(i),n=r&&!r.isNew -if(null===r||n){t.relationships=t.relationships||{} -let n=this.store.modelFor(e.modelName),s=this._getMappedKey(i,n) -s===i&&(s=this.keyForRelationship(i,"belongsTo","serialize")) -let a=null -if(r){a={type:this.payloadKeyFromModelName(r.modelName),id:r.id}}t.relationships[s]={data:a}}}},serializeHasMany(e,t,r){let i=r.key -if(this.shouldSerializeHasMany(e,i,r)){let r=e.hasMany(i) -if(void 0!==r){t.relationships=t.relationships||{} -let n=this.store.modelFor(e.modelName),s=this._getMappedKey(i,n) -s===i&&this.keyForRelationship&&(s=this.keyForRelationship(i,"hasMany","serialize")) -let a=r.filter((e=>e.record&&!e.record.isNew)),o=new Array(a.length) -for(let e=0;e{if(void 0===t[e])return -let n=this.transformFor(i),s=r.get(e) -t[e]=n.deserialize(t[e],s.options)})),t},normalizeResponse(e,t,r,i,n){switch(n){case"findRecord":return this.normalizeFindRecordResponse(...arguments) -case"queryRecord":return this.normalizeQueryRecordResponse(...arguments) -case"findAll":return this.normalizeFindAllResponse(...arguments) -case"findBelongsTo":return this.normalizeFindBelongsToResponse(...arguments) -case"findHasMany":return this.normalizeFindHasManyResponse(...arguments) -case"findMany":return this.normalizeFindManyResponse(...arguments) -case"query":return this.normalizeQueryResponse(...arguments) -case"createRecord":return this.normalizeCreateRecordResponse(...arguments) -case"deleteRecord":return this.normalizeDeleteRecordResponse(...arguments) -case"updateRecord":return this.normalizeUpdateRecordResponse(...arguments)}},normalizeFindRecordResponse(e,t,r,i,n){return this.normalizeSingleResponse(...arguments)},normalizeQueryRecordResponse(e,t,r,i,n){return this.normalizeSingleResponse(...arguments)},normalizeFindAllResponse(e,t,r,i,n){return this.normalizeArrayResponse(...arguments)},normalizeFindBelongsToResponse(e,t,r,i,n){return this.normalizeSingleResponse(...arguments)},normalizeFindHasManyResponse(e,t,r,i,n){return this.normalizeArrayResponse(...arguments)},normalizeFindManyResponse(e,t,r,i,n){return this.normalizeArrayResponse(...arguments)},normalizeQueryResponse(e,t,r,i,n){return this.normalizeArrayResponse(...arguments)},normalizeCreateRecordResponse(e,t,r,i,n){return this.normalizeSaveResponse(...arguments)},normalizeDeleteRecordResponse(e,t,r,i,n){return this.normalizeSaveResponse(...arguments)},normalizeUpdateRecordResponse(e,t,r,i,n){return this.normalizeSaveResponse(...arguments)},normalizeSaveResponse(e,t,r,i,n){return this.normalizeSingleResponse(...arguments)},normalizeSingleResponse(e,t,r,i,n){return this._normalizeResponse(e,t,r,i,n,!0)},normalizeArrayResponse(e,t,r,i,n){return this._normalizeResponse(e,t,r,i,n,!1)},_normalizeResponse(e,t,r,i,n,s){let a={data:null,included:[]},o=this.extractMeta(e,t,r) -if(o&&(a.meta=o),s){let{data:e,included:i}=this.normalize(t,r) -a.data=e,i&&(a.included=i)}else{let e=new Array(r.length) -for(let i=0,n=r.length;i{r=this.keyForAttribute(e,"deserialize"),void 0!==t[r]&&(i[e]=t[r])})),i},extractRelationship(e,t){if((0,n.isNone)(t))return null -if("object"===(0,n.typeOf)(t)){t.id&&(t.id=(0,a.coerceId)(t.id)) -let r=this.store.modelFor(e) -return t.type&&!r.fields.has("type")&&(t.type=this.modelNameFromPayloadKey(t.type)),t}return{id:(0,a.coerceId)(t),type:e}},extractPolymorphicRelationship(e,t,r){return this.extractRelationship(e,t)},extractRelationships(e,t){let r={} -return e.eachRelationship(((e,i)=>{let s=null,a=this.keyForRelationship(e,i.kind,"deserialize") -if(void 0!==t[a]){let r=null,o=t[a] -if("belongsTo"===i.kind)r=i.options.polymorphic?this.extractPolymorphicRelationship(i.type,o,{key:e,resourceHash:t,relationshipMeta:i}):this.extractRelationship(i.type,o) -else if("hasMany"===i.kind&&!(0,n.isNone)(o))if(r=new Array(o.length),i.options.polymorphic)for(let n=0,s=o.length;n(0,i.dasherize)(e),normalizeRelationships(e,t){let r -this.keyForRelationship&&e.eachRelationship(((e,i)=>{r=this.keyForRelationship(e,i.kind,"deserialize"),e!==r&&void 0!==t[r]&&(t[e]=t[r],delete t[r])}))},normalizeUsingDeclaredMapping(e,t){let r,i,n=this.attrs -if(n)for(let s in n)r=i=this._getMappedKey(s,e),void 0!==t[i]&&(e.attributes.has(s)&&(r=this.keyForAttribute(s,"deserialize")),e.relationshipsByName.has(s)&&(r=this.keyForRelationship(s,e,"deserialize")),i!==r&&(t[r]=t[i],delete t[i]))},_getMappedKey(e,t){let r,i=this.attrs -return i&&i[e]&&(r=i[e],r.key&&(r=r.key),"string"==typeof r&&(e=r)),e},_canSerialize(e){let t=this.attrs -return!t||!t[e]||!1!==t[e].serialize},_mustSerialize(e){let t=this.attrs -return t&&t[e]&&!0===t[e].serialize},shouldSerializeHasMany(e,t,r){let i=this.store.modelFor(e.modelName).determineRelationshipType(r,this.store) -return!!this._mustSerialize(t)||this._canSerialize(t)&&("manyToNone"===i||"manyToMany"===i)},serialize(e,t){let r={} -if(t&&t.includeId){const t=e.id -t&&(r[this.primaryKey]=t)}return e.eachAttribute(((t,i)=>{this.serializeAttribute(e,r,t,i)})),e.eachRelationship(((t,i)=>{"belongsTo"===i.kind?this.serializeBelongsTo(e,r,i):"hasMany"===i.kind&&this.serializeHasMany(e,r,i)})),r},serializeIntoHash(e,t,r,i){Object.assign(e,this.serialize(r,i))},serializeAttribute(e,t,r,i){if(this._canSerialize(r)){let n=i.type,s=e.attr(r) -if(n){s=this.transformFor(n).serialize(s,i.options)}let a=this.store.modelFor(e.modelName),o=this._getMappedKey(r,a) -o===r&&this.keyForAttribute&&(o=this.keyForAttribute(r,"serialize")),t[o]=s}},serializeBelongsTo(e,t,r){let i=r.key -if(this._canSerialize(i)){let s=e.belongsTo(i,{id:!0}),a=this.store.modelFor(e.modelName),o=this._getMappedKey(i,a) -o===i&&this.keyForRelationship&&(o=this.keyForRelationship(i,"belongsTo","serialize")),(0,n.isNone)(s)?t[o]=null:t[o]=s,r.options.polymorphic&&this.serializePolymorphicType(e,t,r)}},serializeHasMany(e,t,r){let i=r.key -if(this.shouldSerializeHasMany(e,i,r)){let r=e.hasMany(i,{ids:!0}) -if(void 0!==r){let n=this.store.modelFor(e.modelName),s=this._getMappedKey(i,n) -s===i&&this.keyForRelationship&&(s=this.keyForRelationship(i,"hasMany","serialize")),t[s]=r}}},serializePolymorphicType(){},extractMeta(e,t,r){if(r&&void 0!==r.meta){let e=r.meta -return delete r.meta,e}},extractErrors(e,t,r,i){if(r&&"object"==typeof r&&r.errors){const e={} -return r.errors.forEach((t=>{if(t.source&&t.source.pointer){let r=t.source.pointer.match(o) -r?r=r[2]:-1!==t.source.pointer.search(l)&&(r="base"),r&&(e[r]=e[r]||[],e[r].push(t.detail||t.title))}})),this.normalizeUsingDeclaredMapping(t,e),t.eachAttribute((t=>{let r=this.keyForAttribute(t,"deserialize") -r!==t&&void 0!==e[r]&&(e[t]=e[r],delete e[r])})),t.eachRelationship((t=>{let r=this.keyForRelationship(t,"deserialize") -r!==t&&void 0!==e[r]&&(e[t]=e[r],delete e[r])})),e}return r},keyForAttribute:(e,t)=>e,keyForRelationship:(e,t,r)=>e,keyForLink:(e,t)=>e,transformFor(e,r){let i=(0,t.getOwner)(this).lookup("transform:"+e) -return i}}) -e.default=u})),define("@ember-data/serializer/rest",["exports","@ember/debug","@ember/string","@ember/utils","ember-inflector","@ember-data/serializer/json","@ember-data/store/-private","@ember-data/serializer/-private"],(function(e,t,r,i,n,s,a,o){"use strict" -function l(e){return Array.isArray(e)?e:[e]}Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"EmbeddedRecordsMixin",{enumerable:!0,get:function(){return o.EmbeddedRecordsMixin}}),e.default=void 0 -const u=s.default.extend({keyForPolymorphicType(e,t,r){return`${this.keyForRelationship(e)}Type`},_normalizeArray(e,t,r,i){let n={data:[],included:[]},s=e.modelFor(t),a=e.serializerFor(t) -return l(r).forEach((t=>{let{data:r,included:o}=this._normalizePolymorphicRecord(e,t,i,s,a) -n.data.push(r),o&&(n.included=n.included.concat(o))})),n},_normalizePolymorphicRecord(e,t,r,i,n){let s=n,a=i -if(!i.fields.has("type")&&t.type){let r=this.modelNameFromPayloadKey(t.type) -e.getSchemaDefinitionService().doesTypeExist(r)&&(s=e.serializerFor(r),a=e.modelFor(r))}return s.normalize(a,t,r)},_normalizeResponse(e,t,r,i,n,s){let o={data:null,included:[]},l=this.extractMeta(e,t,r) -l&&(o.meta=l) -let u=Object.keys(r) -for(var c=0,d=u.length;c{let t=g&&(0,a.coerceId)(e.id)===i -g&&!i&&!o.data||t?o.data=e:o.included.push(e)})):g?o.data=n:n&&(o.included=o.included.concat(n))}return o},isPrimaryType:(e,t,i)=>(0,r.dasherize)(t)===i.modelName,pushPayload(e,t){let r={data:[],included:[]} -for(var i in t){var n=this.modelNameFromPayloadKey(i) -if(e.getSchemaDefinitionService().doesTypeExist(n)){var s=e.modelFor(n),a=e.serializerFor(s.modelName) -l(t[i]).forEach((e=>{let{data:t,included:n}=a.normalize(s,e,i) -r.data.push(t),n&&(r.included=r.included.concat(n))}))}}e.push(r)},modelNameFromPayloadKey:e=>(0,n.singularize)((0,r.dasherize)(e)),serialize(e,t){return this._super(...arguments)},serializeIntoHash(e,t,r,i){e[this.payloadKeyFromModelName(t.modelName)]=this.serialize(r,i)},payloadKeyFromModelName:e=>(0,r.camelize)(e),serializePolymorphicType(e,t,n){let s=n.key,a=this.keyForPolymorphicType(s,n.type,"serialize"),o=e.belongsTo(s);(0,i.isNone)(o)?t[a]=null:t[a]=(0,r.camelize)(o.modelName)},extractPolymorphicRelationship(e,t,r){let{key:i,resourceHash:n,relationshipMeta:s}=r,a=s.options.polymorphic,o=this.keyForPolymorphicType(i,e,"deserialize") -if(a&&void 0!==n[o]&&"object"!=typeof t){return{id:t,type:this.modelNameFromPayloadKey(n[o])}}return this._super(...arguments)}}) -e.default=u})),define("@ember-data/serializer/transform",["exports","@ember-data/serializer/-private"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Transform})),define("@ember-data/store/-private",["exports","@ember/debug","@ember/string","@ember/application","@ember/runloop","@ember/service","@ember/test","rsvp","@glimmer/tracking","@embroider/macros/es-compat2","@ember-data/tracking/-private","@ember/-internals/metal","@ember/object","@ember/object/compat","@ember/utils","@glimmer/validator","ember","@ember/object/computed","@ember/array/proxy","@ember/object/promise-proxy-mixin","@ember/object/proxy"],(function(e,t,r,i,n,s,a,o,l,u,c,d,h,p,f,m,g,b,v,y,_){"use strict" -const E=e=>e&&"object"==typeof e&&"default"in e?e:{default:e},R=E(s),O=E(o),w=E(u),T=E(g),P=E(v),A=E(y),S=E(_) -function C(e){return r.dasherize(e)}function k(e){return null==e||""===e?null:"string"==typeof e?e:"symbol"==typeof e?e.toString():""+e}function M(e){let t=null -if("string"==typeof e?t=e.length>0?e:null:"number"!=typeof e||isNaN(e)||(t=""+e),null===t)throw new Error(`Expected id to be a string or number, received ${String(e)}`) -return t}function j(e){return e&&"string"==typeof e}const x=new Set -function D(e){return x.has(e)}const N="undefined"!=typeof FastBoot?FastBoot.require("crypto"):window.crypto -let I,F,L,z -function B(e,t){if(j(e.lid))return e.lid -if(void 0!==e.id){let{type:t,id:r}=e -if(j(k(r)))return`@lid:${C(t)}-${r}`}return N.randomUUID()}function U(...e){}class ${constructor(){this._cache={lids:new Map,types:Object.create(null)},this._generate=F||B,this._update=z||U,this._forget=I||U,this._reset=L||U,this._merge=U,this._isDefaultConfig=!F}__configureMerge(e){this._merge=e||U}_getRecordIdentifier(e,t=!1){if(D(e))return e -let r=k(e.lid),i=null!==r?this._cache.lids.get(r):void 0 -if(void 0!==i)return i -if(!(!1!==t||e.type&&e.id))return -let n=e.type&&C(e.type),s=k(e.id),a=H(this._cache.types,n) -if(null!==r&&(i=a.lid.get(r)),void 0===i&&null!==s&&(i=a.id.get(s)),void 0===i){let o=this._generate(e,"record") -if(null!==r&&o!==r)throw new Error("You should not change the of a RecordIdentifier") -null!==r||this._isDefaultConfig||(i=a.lid.get(o)),!0===t&&(void 0===i&&(i=q(s,n,o,"record",!1),this._cache.lids.set(i.lid,i),a.lid.set(i.lid,i)),null!==i.id&&a.id.set(i.id,i))}return i}peekRecordIdentifier(e){return this._getRecordIdentifier(e,!1)}getOrCreateRecordIdentifier(e){return this._getRecordIdentifier(e,!0)}createIdentifierForNewRecord(e){let t=this._generate(e,"record"),r=q(e.id||null,e.type,t,"record",!0),i=H(this._cache.types,e.type) -return this._cache.lids.set(r.lid,r),i.lid.set(t,r),e.id&&i.id.set(e.id,r),r}updateRecordIdentifier(e,t){let r=this.getOrCreateRecordIdentifier(e),i=void 0!==t.id?k(t.id):null,n=function(e,t,r,i,n){const{id:s,type:a,lid:o}=t -if(null!==s&&s!==i&&null!==i){let r=H(e,t.type).id.get(i) -return void 0!==r&&r}{let t=r.type&&C(r.type) -if(null!==s&&s===i&&t===a&&r.lid&&r.lid!==o){let e=n.get(r.lid) -return void 0!==e&&e}if(null!==s&&s===i&&t&&t!==a&&r.lid&&r.lid===o){let r=H(e,t).id.get(s) -return void 0!==r&&r}}return!1}(this._cache.types,r,t,i,this._cache.lids) -if(!n&&t.type&&r.type!==C(t.type)){let e={...t} -delete e.lid,n=this.getOrCreateRecordIdentifier(e)}if(n){let e=H(this._cache.types,r.type),s=r -r=this._mergeRecordIdentifiers(e,s,n,t,i)}let s=r.id -if(function(e,t,r){r(e,t,"record"),void 0!==t.id&&(e.id=k(t.id))}(r,t,this._update),i=r.id,s!==i&&null!==i){let e=H(this._cache.types,r.type) -e.id.set(i,r),null!==s&&e.id.delete(s)}return r}_mergeRecordIdentifiers(e,t,r,i,n){let s=this._merge(t,r,i),a=s===t?r:t -return this.forgetRecordIdentifier(a),e.id.set(n,s),H(this._cache.types,r.type).id.set(n,s),i.lid=s.lid,s}forgetRecordIdentifier(e){let t=this.getOrCreateRecordIdentifier(e),r=H(this._cache.types,t.type) -null!==t.id&&r.id.delete(t.id),this._cache.lids.delete(t.lid),r.lid.delete(t.lid),x.delete(e),this._forget(t,"record")}destroy(){this._reset()}}function H(e,t){let r=e[t] -return void 0===r&&(r={lid:new Map,id:new Map},e[t]=r),r}function q(e,t,r,i,n=!1){let s={lid:r,id:e,type:t} -return x.add(s),s}const V=new Map,W=new Map -function G(e){let t=W.get(e) -if(t){W.delete(e) -const r=V.get(t) -r?.delete(e)}}class Y{constructor(e){this.store=e,this.isDestroyed=!1}subscribe(e,t){let r=V.get(e) -r||(r=new Map,V.set(e,r)) -let i={} -return r.set(i,t),W.set(i,e),i}unsubscribe(e){this.isDestroyed||G(e)}notify(e,t,r){if(!D(e))return!1 -let i=V.get(e) -return!(!i||!i.size)&&(i.forEach((i=>{i(e,t,r)})),!0)}destroy(){this.isDestroyed=!0,W.clear(),V.clear()}}var Q,K -let J=(Q=class{constructor(e,t){var r,i,n,s -this.___token=void 0,this.___identifier=void 0,r=this,i="_ref",s=this,(n=K)&&Object.defineProperty(r,i,{enumerable:n.enumerable,configurable:n.configurable,writable:n.writable,value:n.initializer?n.initializer.call(s):void 0}),this.store=e,this.___identifier=t,this.___token=e._notificationManager.subscribe(t,((e,t,r)=>{("identity"===t||"attributes"===t&&"id"===r)&&this._ref++}))}destroy(){G(this.___token)}get type(){return this.identifier().type}id(){return this._ref,this.___identifier.id}identifier(){return this.___identifier}remoteType(){return"identity"}push(e){return o.resolve(e).then((e=>this.store.push(e)))}value(){return this.store.peekRecord(this.___identifier)}load(){const e=this.id() -if(null!==e)return this.store.findRecord(this.type,e)}reload(){const e=this.id() -if(null!==e)return this.store.findRecord(this.type,e,{reload:!0})}},X=Q.prototype,Z="_ref",ee=[l.tracked],te={configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 0}},ie={},Object.keys(te).forEach((function(e){ie[e]=te[e]})),ie.enumerable=!!ie.enumerable,ie.configurable=!!ie.configurable,("value"in ie||ie.initializer)&&(ie.writable=!0),ie=ee.slice().reverse().reduce((function(e,t){return t(X,Z,e)||e}),ie),re&&void 0!==ie.initializer&&(ie.value=ie.initializer?ie.initializer.call(re):void 0,ie.initializer=void 0),void 0===ie.initializer&&(Object.defineProperty(X,Z,ie),ie=null),K=ie,Q) -var X,Z,ee,te,re,ie -function ne(e,t){if(!{}.hasOwnProperty.call(e,t))throw new TypeError("attempted to use private field on non-instance") -return e}var se=0 -function ae(e){return"__private_"+se+++"_"+e}var oe=ae("store"),le=ae("recordData"),ue=ae("identifier"),ce=ae("isDeprecated") -class de{get managedVersion(){return ne(this,le)[le].version||"1"}constructor(e,t,r){Object.defineProperty(this,ce,{value:he}),this.version="2",Object.defineProperty(this,oe,{writable:!0,value:void 0}),Object.defineProperty(this,le,{writable:!0,value:void 0}),Object.defineProperty(this,ue,{writable:!0,value:void 0}),ne(this,oe)[oe]=e,ne(this,le)[le]=t,ne(this,ue)[ue]=r,ne(this,ce)[ce](t)}getResourceIdentifier(){return ne(this,ue)[ue]}pushData(e,t,r){const i=ne(this,le)[le] -return D(e)||(r=t=e,e=ne(this,ue)[ue]),ne(this,ce)[ce](i)?i.pushData(t,r):i.pushData(e,t,r)}sync(e){const t=ne(this,le)[le] -ne(this,ce)[ce](t)||t.sync(e)}update(e,t){if(ne(this,ce)[ce](ne(this,le)[le])){const r=ne(this,oe)[oe]._instanceCache -switch(e.op){case"addToRelatedRecords":return void ne(this,le)[le].addToHasMany(e.field,e.value.map((e=>r.getRecordData(e))),e.index) -case"removeFromRelatedRecords":return void ne(this,le)[le].removeFromHasMany(e.field,e.value.map((e=>r.getRecordData(e)))) -case"replaceRelatedRecords":return void ne(this,le)[le].setDirtyHasMany(e.field,e.value.map((e=>r.getRecordData(e)))) -case"replaceRelatedRecord":return t?void ne(this,le)[le].setDirtyBelongsTo(e.field,e.value?r.getRecordData(e.value):null):(ne(this,le)[le].removeFromHasMany(e.field,[r.getRecordData(e.prior)]),void ne(this,le)[le].addToHasMany(e.field,[r.getRecordData(e.value)],e.index)) -default:return}}else ne(this,le)[le].update(e)}clientDidCreate(e,t){D(e)||(t=e,e=ne(this,ue)[ue]) -let r=ne(this,le)[le] -return ne(this,ce)[ce](r)?(r.clientDidCreate(),r._initRecordCreateOptions(t)):r.clientDidCreate(e,t)}_initRecordCreateOptions(e){let t=ne(this,le)[le] -if(ne(this,ce)[ce](t))return t._initRecordCreateOptions(e)}willCommit(e){ne(this,le)[le].willCommit(e||ne(this,ue)[ue])}didCommit(e,t){D(e)||(t=e,e=ne(this,ue)[ue]) -let r=ne(this,le)[le] -ne(this,ce)[ce](r)?r.didCommit(t):r.didCommit(e,t)}commitWasRejected(e,t){ne(this,le)[le].commitWasRejected(e||ne(this,ue)[ue],t)}unloadRecord(e){const t=ne(this,le)[le] -ne(this,ce)[ce](t)?t.unloadRecord():t.unloadRecord(e||ne(this,ue)[ue])}getAttr(e,t){D(e)||(t=e,e=ne(this,ue)[ue]) -let r=ne(this,le)[le] -return ne(this,ce)[ce](r)?r.getAttr(t):r.getAttr(e,t)}setAttr(e,t,r){let i=ne(this,le)[le] -ne(this,ce)[ce](i)?i.setDirtyAttribute(t,r):i.setAttr(e,t,r)}setDirtyAttribute(e,t){let r=ne(this,le)[le] -ne(this,ce)[ce](r)?r.setDirtyAttribute(e,t):r.setAttr(ne(this,ue)[ue],e,t)}changedAttributes(){const e=ne(this,le)[le] -return ne(this,ce)[ce](e)?e.changedAttributes():e.changedAttrs(ne(this,ue)[ue])}changedAttrs(e){const t=ne(this,le)[le] -return ne(this,ce)[ce](t)?t.changedAttributes():t.changedAttrs(e)}hasChangedAttributes(){const e=ne(this,le)[le] -return ne(this,ce)[ce](e)?e.hasChangedAttributes():e.hasChangedAttrs(ne(this,ue)[ue])}hasChangedAttrs(e){const t=ne(this,le)[le] -return ne(this,ce)[ce](t)?t.hasChangedAttributes():t.hasChangedAttrs(e)}rollbackAttributes(){const e=ne(this,le)[le] -return ne(this,ce)[ce](e)?e.rollbackAttributes():e.rollbackAttrs(ne(this,ue)[ue])}rollbackAttrs(e){const t=ne(this,le)[le] -return ne(this,ce)[ce](t)?t.rollbackAttributes():t.rollbackAttrs(e)}getRelationship(e,t,r=!1){let i=ne(this,le)[le] -if(ne(this,ce)[ce](i)){return!r?i.getBelongsTo(t):i.getHasMany(t)}return i.getRelationship(e,t)}getBelongsTo(e){let t=ne(this,le)[le] -if(ne(this,ce)[ce](t))return t.getBelongsTo(e) -{let r=ne(this,ue)[ue] -return t.getRelationship(r,e)}}getHasMany(e){let t=ne(this,le)[le] -if(ne(this,ce)[ce](t))return t.getHasMany(e) -{let r=ne(this,ue)[ue] -return t.getRelationship(r,e)}}setDirtyBelongsTo(e,t){const r=ne(this,le)[le] -ne(this,ce)[ce](r)?r.setDirtyBelongsTo(e,t):r.update({op:"replaceRelatedRecord",record:ne(this,ue)[ue],field:e,value:t?t.getResourceIdentifier():null})}addToHasMany(e,t,r){const i=ne(this,ue)[ue],n=ne(this,le)[le] -ne(this,ce)[ce](n)?n.addToHasMany(e,t,r):n.update({op:"addToRelatedRecords",field:e,record:i,value:t.map((e=>e.getResourceIdentifier()))})}removeFromHasMany(e,t){const r=ne(this,ue)[ue],i=ne(this,le)[le] -ne(this,ce)[ce](i)?i.removeFromHasMany(e,t):i.update({op:"removeFromRelatedRecords",record:r,field:e,value:t.map((e=>e.getResourceIdentifier()))})}setDirtyHasMany(e,t){let r=ne(this,le)[le] -ne(this,ce)[ce](r)?r.setDirtyHasMany(e,t):r.update({op:"replaceRelatedRecords",record:ne(this,ue)[ue],field:e,value:t.map((e=>e.getResourceIdentifier()))})}setIsDeleted(e,t){D(e)||(t=e,e=ne(this,ue)[ue]) -const r=ne(this,le)[le] -ne(this,ce)[ce](r)?r.setIsDeleted(t):r.setIsDeleted(e,t)}getErrors(e){return ne(this,le)[le].getErrors(e||ne(this,ue)[ue])}isEmpty(e){const t=ne(this,le)[le] -return ne(this,ce)[ce](t)?t.isEmpty?.(e||ne(this,ue)[ue])||!1:t.isEmpty(e||ne(this,ue)[ue])}isNew(e){return ne(this,le)[le].isNew(e||ne(this,ue)[ue])}isDeleted(e){return ne(this,le)[le].isDeleted(e||ne(this,ue)[ue])}isDeletionCommitted(e){return ne(this,le)[le].isDeletionCommitted(e||ne(this,ue)[ue])}}function he(e){return(e.version||"1")!==this.version}function pe(e,t,r){if("object"==typeof e&&null!==e){let t=e -return D(t)||"id"in t&&(t.id=k(t.id)),t}{const i=k(t) -if(!j(i)){if(j(r))return{lid:r} -throw new Error("Expected either id or lid to be a valid string")}return j(r)?{type:e,id:i,lid:r}:{type:e,id:i}}}const fe=class{constructor(e){this._store=e,this._willNotify=!1,this._pendingNotifies=new Map}get identifierCache(){return this._store.identifierCache}_scheduleNotification(e,t){let r=this._pendingNotifies.get(e) -r||(r=new Set,this._pendingNotifies.set(e,r)),r.add(t),!0!==this._willNotify&&(this._willNotify=!0,this._store._cbs?this._store._schedule("notify",(()=>this._flushNotifications())):this._flushNotifications())}_flushNotifications(){if(!1===this._willNotify)return -let e=this._pendingNotifies -this._pendingNotifies=new Map,this._willNotify=!1,e.forEach(((e,t)=>{e.forEach((e=>{this._store._notificationManager.notify(t,"relationships",e)}))}))}notifyChange(e,t,r){"relationships"===t&&r?this._scheduleNotification(e,r):(this._store._notificationManager.notify(e,t,r),"state"===t&&this._store.recordArrayManager.identifierChanged(e))}notifyErrorsChange(e,t,r){const i=pe(e,t,r),n=this.identifierCache.getOrCreateRecordIdentifier(i) -this._store._notificationManager.notify(n,"errors")}attributesDefinitionFor(e){return this._store.getSchemaDefinitionService().attributesDefinitionFor({type:e})}relationshipsDefinitionFor(e){return this._store.getSchemaDefinitionService().relationshipsDefinitionFor({type:e})}getSchemaDefinitionService(){return this._store.getSchemaDefinitionService()}notifyPropertyChange(e,t,r,i){const n=pe(e,t,r),s=this.identifierCache.getOrCreateRecordIdentifier(n) -this._store._notificationManager.notify(s,"attributes",i)}notifyHasManyChange(e,t,r,i){const n=pe(e,t,r),s=this.identifierCache.getOrCreateRecordIdentifier(n) -this._scheduleNotification(s,i)}notifyBelongsToChange(e,t,r,i){const n=pe(e,t,r),s=this.identifierCache.getOrCreateRecordIdentifier(n) -this._scheduleNotification(s,i)}notifyStateChange(e,t,r,i){const n=pe(e,t,r),s=this.identifierCache.getOrCreateRecordIdentifier(n) -this._store._notificationManager.notify(s,"state"),this._store.recordArrayManager.identifierChanged(s)}recordDataFor(e,t,r){let i -i=D(e)?e:t||r?this.identifierCache.getOrCreateRecordIdentifier(pe(e,t,r)):this.identifierCache.createIdentifierForNewRecord({type:e}) -const n=this._store._instanceCache.getRecordData(i) -return t||r||(n.clientDidCreate(i),this._store.recordArrayManager.identifierAdded(i)),n}setRecordId(e,t,r){let i -if(D(e))i=e -else{const t=pe(C(e),null,k(r)) -i=this.identifierCache.peekRecordIdentifier(t)}this._store._instanceCache.setRecordId(i,t)}isRecordInUse(e,t,r){const i=pe(e,t,r),n=this.identifierCache.peekRecordIdentifier(i),s=n&&this._store._instanceCache.peek({identifier:n,bucket:"record"}) -return!!s&&!(s.isDestroyed||s.isDestroying)}hasRecord(e){return Boolean(this._store._instanceCache.peek({identifier:e,bucket:"record"}))}disconnectRecord(e,t,r){let i -if("string"==typeof e){let n=pe(e,t,r) -i=this.identifierCache.peekRecordIdentifier(n)}else i=e -this._store._instanceCache.disconnect(i),this._pendingNotifies.delete(i)}} -class me{constructor(e,t,r){this._store=r,this.__attributes=null,this._belongsToRelationships=Object.create(null),this._belongsToIds=Object.create(null),this._hasManyRelationships=Object.create(null),this._hasManyIds=Object.create(null) -const i=!!r._instanceCache.peek({identifier:t,bucket:"record"}) -this.modelName=t.type,this.identifier=t,i&&this._attributes,this.id=t.id,this.adapterOptions=e.adapterOptions,this.include=e.include,this.modelName=t.type,i&&(this._changedAttributes=this._store._instanceCache.getRecordData(t).changedAttrs(t))}get record(){return this._store._instanceCache.getRecord(this.identifier)}get _attributes(){if(null!==this.__attributes)return this.__attributes -let e=this.__attributes=Object.create(null) -const{identifier:t}=this -let r=Object.keys(this._store.getSchemaDefinitionService().attributesDefinitionFor(t)),i=this._store._instanceCache.getRecordData(t) -return r.forEach((r=>{e[r]=i.getAttr(t,r)})),e}get isNew(){const e=this._store._instanceCache.peek({identifier:this.identifier,bucket:"recordData"}) -return e?.isNew(this.identifier)||!1}attr(e){if(e in this._attributes)return this._attributes[e]}attributes(){return{...this._attributes}}changedAttributes(){let e=Object.create(null) -if(!this._changedAttributes)return e -let t=Object.keys(this._changedAttributes) -for(let r=0,i=t.length;r{let t=a.identifierCache.getOrCreateRecordIdentifier(e) -a._instanceCache.getRecordData(t).isDeleted(t)||(i?r.push(t.id):r.push(a._instanceCache.createSnapshot(t)))}))),i?this._hasManyIds[e]=r:this._hasManyRelationships[e]=r,r}eachAttribute(e,t){let r=this._store.getSchemaDefinitionService().attributesDefinitionFor(this.identifier) -Object.keys(r).forEach((i=>{e.call(t,i,r[i])}))}eachRelationship(e,t){let r=this._store.getSchemaDefinitionService().relationshipsDefinitionFor(this.identifier) -Object.keys(r).forEach((i=>{e.call(t,i,r[i])}))}serialize(e){return this._store.serializerFor(this.modelName).serialize(this,e)}}Object.defineProperty(me.prototype,"type",{get(){return this._store.modelFor(this.identifier.type)}}) -const ge=new Map -function be(e,t){ge.set(e,t)}function ve(e){ge.delete(e)}function ye(e){return ge.has(e)?ge.get(e):null}let _e -{let e -_e=t=>{let r=w.default(require("@ember-data/record-data/-private")).peekGraph -return e=e||r,e(t)}}const Ee=new Map -function Re(e){return Ee.get(e)}function Oe(e){return Ee.get(e)}function we(e,t){Ee.set(e,t)}const Te=new Map -class Pe{constructor(e){this.__instances={record:new Map,recordData:new Map,reference:new WeakMap},this.store=e,this._storeWrapper=new fe(this.store),this.__recordDataFor=e=>{const t=this.store.identifierCache.getOrCreateRecordIdentifier(e) -return this.getRecordData(t)},e.identifierCache.__configureMerge(((e,t,r)=>{let i=e -e.id!==t.id?i="id"in r&&e.id===r.id?e:t:e.type!==t.type&&(i="type"in r&&e.type===r.type?e:t) -let n=e===i?t:e,s=this.__instances.record.has(i),a=this.__instances.record.has(n),o=this.__instances.recordData.get(i)||null,l=this.__instances.recordData.get(n)||null -if(s&&a&&"id"in r)throw new Error(`Failed to update the 'id' for the RecordIdentifier '${e.type}:${String(e.id)} (${e.lid})' to '${String(r.id)}', because that id is already in use by '${t.type}:${String(t.id)} (${t.lid})'`) -let u=o||l -return u?u.sync({op:"mergeIdentifiers",record:n,value:i}):this.store.__private_singleton_recordData?.sync({op:"mergeIdentifiers",record:n,value:i}),null===l||this.unloadRecord(n),i}))}peek({identifier:e,bucket:t}){return this.__instances[t]?.get(e)}getRecord(e,t){let r=this.__instances.record.get(e) -if(!r){const i=this.getRecordData(e) -r=this.store.instantiateRecord(e,t||{},this.__recordDataFor,this.store._notificationManager),we(r,e),be(r,i),Te.set(r,this.store),this.__instances.record.set(e,r)}return r}getRecordData(e){let t=this.__instances.recordData.get(e) -if(!t&&this.store.createRecordDataFor.length>2){let r=this.store.createRecordDataFor(e.type,e.id,e.lid,this._storeWrapper) -t=new de(this.store,r,e)}if(!t){let r=this.store.createRecordDataFor(e,this._storeWrapper) -t=new de(this.store,r,e),be(e,t),this.__instances.recordData.set(e,t)}return t}getReference(e){let t=this.__instances.reference,r=t.get(e) -return r||(r=new J(this.store,e),t.set(e,r)),r}recordIsLoaded(e,t=!1){const r=this.__instances.recordData.get(e) -if(!r)return!1 -const i=r.isNew(e),n=r.isEmpty(e) -return i?!r.isDeleted(e):(!t||!r.isDeletionCommitted(e))&&!n}createSnapshot(e,t={}){return new me(t,e,this.store)}disconnect(e){this.__instances.record.get(e) -{let t=_e(this.store) -t&&t.remove(e)}this.store.identifierCache.forgetRecordIdentifier(e)}unloadRecord(e){this.store._join((()=>{const t=this.__instances.record.get(e),r=this.__instances.recordData.get(e) -t&&(this.store.teardownRecord(t),this.__instances.record.delete(e),Te.delete(t),Ee.delete(t),ve(t)),r?(r.unloadRecord(e),this.__instances.recordData.delete(e),ve(e)):this.disconnect(e),this.store._fetchManager.clearEntries(e),this.store.recordArrayManager.identifierRemoved(e)}))}clear(e){const t=this.store.identifierCache._cache.types -if(void 0===e)this.__instances.recordData.forEach(((e,t)=>{this.unloadRecord(t)})) -else{let r=t[e]?.lid -const i=this.__instances.recordData -r&&r.forEach((e=>{i.has(e)&&this.unloadRecord(e)}))}}_fetchDataIfNeededForIdentifier(e,t={}){const r=Se(this,e),i=Ce(this,e) -let n -return t.preload&&this.store._join((()=>{(function(e,t,r){let i={} -const n=e.getSchemaDefinitionService().relationshipsDefinitionFor(t) -Object.keys(r).forEach((e=>{let t=r[e],s=n[e] -s?(i.relationships||(i.relationships={}),i.relationships[e]=function(e,t){const r=e.type -if("hasMany"===e.kind)return{data:t.map((e=>Ae(e,r)))} -return{data:t?Ae(t,r):null}}(s,t)):(i.attributes||(i.attributes={}),i.attributes[e]=t)})),e._instanceCache.getRecordData(t).pushData(t,i)})(this.store,e,t.preload)})),n=r?this.store._fetchManager.scheduleFetch(e,t):i?this.store._fetchManager.getPendingFetch(e,t):o.resolve(e),n}setRecordId(e,t){const{type:r,lid:i}=e -null!==e.id&&null===t||(this.store.identifierCache.peekRecordIdentifier({type:r,id:t}),null===e.id&&this.store.identifierCache.updateRecordIdentifier(e,{type:r,id:t}),this.store._notificationManager.notify(e,"identity"))}loadData(e){e.type -const t=pe(C(e.type),M(e.id),k(e.lid)) -let r=this.store.identifierCache.peekRecordIdentifier(t),i=!1 -if(r){const t=Ce(this,r)||!this.recordIsLoaded(r) -i=!Se(this,r)&&!t,(i||t)&&(r=this.store.identifierCache.updateRecordIdentifier(r,e))}else r=this.store.identifierCache.getOrCreateRecordIdentifier(e) -const n=this.getRecordData(r) -n.isNew(r)&&this.store._notificationManager.notify(r,"identity") -const s=this.__instances.record.has(r) -return n.pushData(r,e,s),i||this.store.recordArrayManager.identifierAdded(r),r}}function Ae(e,t){return"string"==typeof e||"number"==typeof e?{type:t,id:e}:Oe(e)}function Se(e,t){const r=e.__instances.recordData.get(t) -if(!r)return!0 -const i=r.isNew(t),n=r.isDeleted(t),s=r.isEmpty(t) -return(!i||n)&&s}function Ce(e,t){const r=e.store.getRequestStateService() -return!e.recordIsLoaded(t)&&r.getPendingRequestsForRecord(t).some((e=>"query"===e.type))}let ke -{let e -ke=function(){return e||(e=w.default(require("@ember-data/model/-private"))._modelForMixin),e(...arguments)}}class Me{constructor(e){this.store=e,this._relationshipsDefCache=Object.create(null),this._attributesDefCache=Object.create(null)}attributesDefinitionFor(e){let t,r -if(t="string"==typeof e?e:e.type,r=this._attributesDefCache[t],void 0===r){let e=this.store.modelFor(t).attributes -r=Object.create(null),e.forEach(((e,t)=>r[t]=e)),this._attributesDefCache[t]=r}return r}relationshipsDefinitionFor(e){let t,r -if(t="string"==typeof e?e:e.type,r=this._relationshipsDefCache[t],void 0===r){r=this.store.modelFor(t).relationshipsObject||null,this._relationshipsDefCache[t]=r}return r}doesTypeExist(e){let t=C(e) -return null!==je(this.store,this.store._modelFactoryCache,t)}}function je(e,t,r){let n=t[r] -if(!n){if(n=i.getOwner(e).factoryFor(`model:${r}`),n||(n=ke(e,r)),!n)return null -let s=n.class -if(s.isModel){s.modelName&&Object.prototype.hasOwnProperty.call(s,"modelName")||Object.defineProperty(s,"modelName",{value:r})}t[r]=n}return n}const xe=new WeakMap -function De(e){let t=new Map -for(let r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.set(r,e[r]) -return t}class Ne{constructor(e,t){this.__store=e,this.modelName=t}get fields(){let e=this.__store.getSchemaDefinitionService().attributesDefinitionFor({type:this.modelName}),t=this.__store.getSchemaDefinitionService().relationshipsDefinitionFor({type:this.modelName}),r=new Map -return Object.keys(e).forEach((e=>r.set(e,"attribute"))),Object.keys(t).forEach((e=>r.set(e,t[e].kind))),r}get attributes(){return De(this.__store.getSchemaDefinitionService().attributesDefinitionFor({type:this.modelName}))}get relationshipsByName(){return De(this.__store.getSchemaDefinitionService().relationshipsDefinitionFor({type:this.modelName}))}eachAttribute(e,t){let r=this.__store.getSchemaDefinitionService().attributesDefinitionFor({type:this.modelName}) -Object.keys(r).forEach((i=>{e.call(t,i,r[i])}))}eachRelationship(e,t){let r=this.__store.getSchemaDefinitionService().relationshipsDefinitionFor({type:this.modelName}) -Object.keys(r).forEach((i=>{e.call(t,i,r[i])}))}eachTransformedAttribute(e,t){let r=this.__store.getSchemaDefinitionService().relationshipsDefinitionFor({type:this.modelName}) -Object.keys(r).forEach((i=>{r[i].type&&e.call(t,i,r[i])}))}}const Ie=P.default.extend(A.default),Fe=S.default.extend(A.default) -var Le,ze,Be -let Ue=(Le=b.reads("content.meta"),ze=class extends Ie{constructor(...e){super(...e),function(e,t,r,i){r&&Object.defineProperty(e,t,{enumerable:r.enumerable,configurable:r.configurable,writable:r.writable,value:r.initializer?r.initializer.call(i):void 0})}(this,"meta",Be,this)}},Be=function(e,t,r,i,n){var s={} -return Object.keys(i).forEach((function(e){s[e]=i[e]})),s.enumerable=!!s.enumerable,s.configurable=!!s.configurable,("value"in s||s.initializer)&&(s.writable=!0),s=r.slice().reverse().reduce((function(r,i){return i(e,t,r)||r}),s),n&&void 0!==s.initializer&&(s.value=s.initializer?s.initializer.call(n):void 0,s.initializer=void 0),void 0===s.initializer&&(Object.defineProperty(e,t,s),s=null),s}(ze.prototype,"meta",[Le],{configurable:!0,enumerable:!0,writable:!0,initializer:null}),ze) -function $e(e){const t=function(e,t){return Ue.create({promise:o.resolve(e,t)})}(e) -return t}function He(e){const t=function(e,t){return Fe.create({promise:o.resolve(e,t)})}(e) -return t}var qe,Ve,We,Ge -function Ye(e,t,r,i){r&&Object.defineProperty(e,t,{enumerable:r.enumerable,configurable:r.configurable,writable:r.writable,value:r.initializer?r.initializer.call(i):void 0})}function Qe(e,t,r,i,n){var s={} -return Object.keys(i).forEach((function(e){s[e]=i[e]})),s.enumerable=!!s.enumerable,s.configurable=!!s.configurable,("value"in s||s.initializer)&&(s.writable=!0),s=r.slice().reverse().reduce((function(r,i){return i(e,t,r)||r}),s),n&&void 0!==s.initializer&&(s.value=s.initializer?s.initializer.call(n):void 0,s.initializer=void 0),void 0===s.initializer&&(Object.defineProperty(e,t,s),s=null),s}const Ke=new Set([Symbol.iterator,"concat","entries","every","fill","filter","find","findIndex","flat","flatMap","forEach","includes","indexOf","join","keys","lastIndexOf","map","reduce","reduceRight","slice","some","values"]),Je=new Set(["push","pop","unshift","shift","splice","sort"]),Xe=new Set(["[]","length","links","meta"]) -function Ze(e){return Ke.has(e)}const et=Symbol("#tag"),tt=Symbol("#source"),rt=Symbol("#update"),it=Symbol("#notify") -function nt(e){e[et].ref=null,m.dirtyTag(d.tagForProperty(e,"length")),m.dirtyTag(d.tagForProperty(e,"[]"))}function st(e){if("symbol"==typeof e)return null -const t=Number(e) -return isNaN(t)?null:t%1==0?t:null}let at=(Ve=Qe((qe=class{constructor(){Ye(this,"ref",Ve,this),this.shouldReset=!1,this.t=!1}}).prototype,"ref",[l.tracked],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),qe) -let ot=(We=class e{[it](){nt(this)}destroy(){this.isDestroying=!0,this[tt].length=0,this[it](),this.isDestroyed=!0}get length(){return this[tt].length}set length(e){this[tt].length=e}get"[]"(){return this}constructor(t){Ye(this,"isUpdating",Ge,this),this.isLoaded=!0,this.isDestroying=!1,this.isDestroyed=!1,this._updatingPromise=null,this[et]=new at,this[tt]=void 0 -let r=this -this.modelName=t.type,this.store=t.store,this._manager=t.manager,this[tt]=t.identifiers -const i=t.store,n=new Map,s=this[et],a={links:t.links||null,meta:t.meta||null} -let o=!1 -const l=new Proxy(this[tt],{get(e,l,u){let d=st(l) -if(s.shouldReset&&(null!==d||Xe.has(l)||Ze(l))&&(t.manager._syncArray(u),s.t=!1,s.shouldReset=!1),null!==d){const t=e[d] -return o||c.subscribe(s),t&&i._instanceCache.getRecord(t)}if("meta"===l)return c.subscribe(s),a.meta -if("links"===l)return c.subscribe(s),a.links -if("[]"===l)return c.subscribe(s),u -if(Ze(l)){let t=n.get(l) -return void 0===t&&(t=function(){c.subscribe(s),o=!0 -let t=Reflect.apply(e[l],u,arguments) -return o=!1,t},n.set(l,t)),t}if(function(e){return Je.has(e)}(l)){let i=n.get(l) -return void 0===i&&(i=function(){if(!t.allowMutation)return -const i=Array.prototype.slice.call(arguments) -o=!0 -let n=Reflect.apply(e[l],u,i) -return r[rt](l,i,n),c.addToTransaction(s),o=!1,n},n.set(l,i)),i}if(l in r){if("firstObject"===l)return r.DEPRECATED_CLASS_NAME,u[0] -if("lastObject"===l)return r.DEPRECATED_CLASS_NAME,u[u.length-1] -if(l===it||l===et||l===tt)return r[l] -let e=n.get(l) -if(e)return e -let t=r[l] -return"function"==typeof t?(e=function(){return c.subscribe(s),Reflect.apply(t,u,arguments)},n.set(l,e),e):(c.subscribe(s),t)}return e[l]},set(e,i,n){if("length"===i){if(!o&&0===n)return o=!0,c.addToTransaction(s),Reflect.set(e,i,n),r[rt]("length 0",[]),o=!1,!0 -if(o)return Reflect.set(e,i,n)}if("links"===i)return a.links=n||null,!0 -if("meta"===i)return a.meta=n||null,!0 -let l=st(i) -if(null===l||l>e.length)return i in r&&(r[i]=n,!0) -if(!t.allowMutation)return!1 -let u=e[l],d=function(e){if(!e)return null -if(t=e,t.then){return Oe(e.content)}var t -return Oe(e)}(n) -return e[l]=d,o||(r[rt]("replace cell",[l,u,d]),c.addToTransaction(s)),!0},deleteProperty:(e,t)=>!!o&&Reflect.deleteProperty(e,t),getPrototypeOf:()=>e.prototype}) -T.default.meta(this).hasMixin=e=>e===NativeArray||e===ArrayMixin -return this[it]=this[it].bind(l),l}update(){if(this.isUpdating)return this._updatingPromise -this.isUpdating=!0 -let e=this._update() -return e.finally((()=>{this._updatingPromise=null,this.isDestroying||this.isDestroyed||(this.isUpdating=!1)})),this._updatingPromise=e,e}_update(){return this.store.findAll(this.modelName,{reload:!0})}save(){return $e(Promise.all(this.map((e=>this.store.saveRecord(e)))).then((()=>this)))}},Ge=Qe(We.prototype,"isUpdating",[l.tracked],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return!1}}),Qe(We.prototype,"length",[p.dependentKeyCompat],Object.getOwnPropertyDescriptor(We.prototype,"length"),We.prototype),We) -Object.defineProperty(ot.prototype,"type",{get(){return this.modelName?this.store.modelFor(this.modelName):null}}) -class lt extends ot{constructor(e){super(e),this.query=null,this.query=e.query||null,this.isLoaded=e.isLoaded||!1}_update(){const{store:e,query:t}=this -return $e(e.query(this.modelName,t,{_recordArray:this}))}destroy(){super.destroy(),this._manager._managed.delete(this),this._manager._pending.delete(this)}}lt.prototype.query=null -ot.prototype.DEPRECATED_CLASS_NAME="RecordArray",lt.prototype.DEPRECATED_CLASS_NAME="RecordArray";["addObserver","cacheFor","decrementProperty","get","getProperties","incrementProperty","notifyPropertyChange","removeObserver","set","setProperties","toggleProperty"].forEach((e=>{ot.prototype[e]=function(...t){return T.default[e](this,...t)}})),ot.prototype.addObject=function(e){return this.DEPRECATED_CLASS_NAME,-1===this.indexOf(e)&&this.push(e),this},ot.prototype.addObjects=function(e){return this.DEPRECATED_CLASS_NAME,e.forEach((e=>{-1===this.indexOf(e)&&this.push(e)})),this},ot.prototype.popObject=function(){return this.DEPRECATED_CLASS_NAME,this.pop()},ot.prototype.pushObject=function(e){return this.DEPRECATED_CLASS_NAME,this.push(e),e},ot.prototype.pushObjects=function(e){return this.DEPRECATED_CLASS_NAME,this.push(...e),this},ot.prototype.shiftObject=function(){return this.DEPRECATED_CLASS_NAME,this.shift()},ot.prototype.unshiftObject=function(e){return this.DEPRECATED_CLASS_NAME,this.unshift(e),e},ot.prototype.unshiftObjects=function(e){return this.DEPRECATED_CLASS_NAME,this.unshift(...e),this},ot.prototype.objectAt=function(e){return this.DEPRECATED_CLASS_NAME,this[-1===Math.sign(e)?this.length+e:e]},ot.prototype.objectsAt=function(e){return this.DEPRECATED_CLASS_NAME,e.map((e=>this.objectAt(e)))},ot.prototype.removeAt=function(e){return this.DEPRECATED_CLASS_NAME,this.splice(e,1),this},ot.prototype.insertAt=function(e,t){return this.DEPRECATED_CLASS_NAME,this.splice(e,0,t),this},ot.prototype.removeObject=function(e){return this.DEPRECATED_CLASS_NAME,this.splice(this.indexOf(e),1),this},ot.prototype.removeObjects=function(e){return this.DEPRECATED_CLASS_NAME,e.forEach((e=>this.splice(this.indexOf(e),1))),this},ot.prototype.toArray=function(){return this.DEPRECATED_CLASS_NAME,this.slice()},ot.prototype.replace=function(e,t,r){this.DEPRECATED_CLASS_NAME,r?this.splice(e,t,...r):this.splice(e,t)},ot.prototype.clear=function(){return this.DEPRECATED_CLASS_NAME,this.splice(0,this.length),this},ot.prototype.setObjects=function(e){return this.DEPRECATED_CLASS_NAME,this.splice(0,this.length),this.push(...e),this},ot.prototype.reverseObjects=function(){return this.DEPRECATED_CLASS_NAME,this.reverse(),this},ot.prototype.compact=function(){return this.DEPRECATED_CLASS_NAME,this.filter((e=>null!=e))},ot.prototype.any=function(e,t){return this.DEPRECATED_CLASS_NAME,this.some(e,t)},ot.prototype.isAny=function(e,t){this.DEPRECATED_CLASS_NAME -let r=2===arguments.length -return this.some((i=>r?i[e]===t:!0===i[e]))},ot.prototype.isEvery=function(e,t){this.DEPRECATED_CLASS_NAME -let r=2===arguments.length -return this.every((i=>r?i[e]===t:!0===i[e]))},ot.prototype.getEach=function(e){return this.DEPRECATED_CLASS_NAME,this.map((t=>h.get(t,e)))},ot.prototype.mapBy=function(e){return this.DEPRECATED_CLASS_NAME,this.map((t=>h.get(t,e)))},ot.prototype.findBy=function(e,t){return this.DEPRECATED_CLASS_NAME,2===arguments.length?this.find((r=>h.get(r,e)===t)):this.find((t=>Boolean(h.get(t,e))))},ot.prototype.filterBy=function(e,t){return this.DEPRECATED_CLASS_NAME,2===arguments.length?this.filter((r=>h.get(r,e)===t)):this.filter((t=>Boolean(h.get(t,e))))},ot.prototype.sortBy=function(...e){return this.DEPRECATED_CLASS_NAME,this.slice().sort(((t,r)=>{for(let i=0;ir[e](...t)))} -ot.prototype.addArrayObserver=function(){this.DEPRECATED_CLASS_NAME},ot.prototype.removeArrayObserver=function(){this.DEPRECATED_CLASS_NAME},ot.prototype.arrayContentWillChange=function(){this.DEPRECATED_CLASS_NAME},ot.prototype.arrayContentDidChange=function(){this.DEPRECATED_CLASS_NAME},ot.prototype.reject=function(e,t){return this.DEPRECATED_CLASS_NAME,this.filter((t=>!h.get(t,e)))},ot.prototype.rejectBy=function(e,t){return this.DEPRECATED_CLASS_NAME,this.filter((t=>!h.get(t,e)))},ot.prototype.setEach=function(e,t){this.DEPRECATED_CLASS_NAME,this.forEach((r=>h.set(r,e,t)))},ot.prototype.uniq=function(){return this.DEPRECATED_CLASS_NAME,this.slice()},ot.prototype.uniqBy=function(e){this.DEPRECATED_CLASS_NAME -let t=new Set,r=[] -return this.forEach((i=>{let n=h.get(i,e) -t.has(n)||(t.add(n),r.push(i))})),r},ot.prototype.without=function(e){this.DEPRECATED_CLASS_NAME -const t=this.slice(),r=this.indexOf(e) -return-1!==r&&t.splice(r,1),t},ot.prototype.firstObject=null,ot.prototype.lastObject=null -const ut=new Map,ct={},dt=1200 -function ht(e,t){let r=0,i=t.length -for(;i-r>dt;)e.push.apply(e,t.slice(r,r+dt)),r+=dt -e.push.apply(e,t.slice(r))}class pt{constructor(e){this.store=e.store,this.isDestroying=!1,this.isDestroyed=!1,this._live=new Map,this._managed=new Set,this._pending=new Map,this._staged=new Map,this._identifiers=ut}_syncArray(e){const t=this._pending.get(e) -!t||this.isDestroying||this.isDestroyed||(function(e,t){let r=e[tt] -const i=[],n=[] -t.forEach(((e,t)=>{if("add"===e){if(r.includes(t))return -i.push(t)}else n.push(t)})),n.length&&(n.length===r.length?r.length=0:n.forEach((e=>{r.splice(r.indexOf(e),1)}))) -i.length&&ht(r,i)}(e,t),this._pending.delete(e))}liveArrayFor(e){let t=this._live.get(e),r=[],i=this._staged.get(e) -return i&&(i.forEach(((e,t)=>{"add"===e&&r.push(t)})),this._staged.delete(e)),t||(t=new ot({type:e,identifiers:r,store:this.store,allowMutation:!1,manager:this}),this._live.set(e,t)),t}createArray(e){let t={type:e.type,links:e.doc?.links||null,meta:e.doc?.meta||null,query:e.query||null,identifiers:e.identifiers||[],isLoaded:!!e.identifiers?.length,allowMutation:!1,store:this.store,manager:this},r=new lt(t) -return this._managed.add(r),e.identifiers&&ft(r,e.identifiers),r}dirtyArray(e,t){if(e===ct)return -let r=e[et] -r.shouldReset?t>0&&!r.t&&c.addTransactionCB(e[it]):(r.shouldReset=!0,c.addTransactionCB(e[it]))}_getPendingFor(e,t,r){if(this.isDestroying||this.isDestroyed)return -let i=this._live.get(e.type) -const n=this._pending -let s=new Map -if(t){let t=ut.get(e) -t&&t.forEach((e=>{let t=n.get(e) -t||(t=new Map,n.set(e,t)),s.set(e,t)}))}if(i&&0===i[tt].length&&r){const e=n.get(i) -if(!e||0===e.size)return s}if(i){let e=n.get(i) -e||(e=new Map,n.set(i,e)),s.set(i,e)}else{let t=this._staged.get(e.type) -t||(t=new Map,this._staged.set(e.type,t)),s.set(ct,t)}return s}populateManagedArray(e,t,r){this._pending.delete(e) -const i=e[tt],n=i.slice() -i.length=0,ht(i,t),nt(e),e.meta=r.meta||null,e.links=r.links||null,e.isLoaded=!0,function(e,t){for(let r=0;r{"del"===t.get(e)?t.delete(e):(t.set(e,"add"),this.dirtyArray(r,t.size))}))}identifierRemoved(e){let t=this._getPendingFor(e,!0,!0) -t&&t.forEach(((t,r)=>{"add"===t.get(e)?t.delete(e):(t.set(e,"del"),this.dirtyArray(r,t.size))}))}identifierChanged(e){this.store._instanceCache.recordIsLoaded(e,!0)?this.identifierAdded(e):this.identifierRemoved(e)}clear(){this._live.forEach((e=>e.destroy())),this._managed.forEach((e=>e.destroy())),this._managed.clear(),ut.clear()}destroy(){this.isDestroying=!0,this.clear(),this._live.clear(),this.isDestroyed=!0}}function ft(e,t){for(let r=0;r{t()||(r._subscribers.length=0)})) -return r}function bt(e){return!(e.isDestroyed||e.isDestroying)}function vt(e,t,r){return gt(o.resolve(e,r).then((r=>(bt(t),e))),(()=>bt(t)))}function yt(e,t,r,i,n,s){return e?e.normalizeResponse(t,r,i,n,s):i}const _t=Symbol("touching"),Et=Symbol("promise") -class Rt{constructor(){this._pending=Object.create(null),this._done=new Map,this._subscriptions=Object.create(null)}enqueue(e,t){let r=t.data[0] -if("recordIdentifier"in r){let i=r.recordIdentifier.lid,n="saveRecord"===r.op?"mutation":"query" -this._pending[i]||(this._pending[i]=[]) -let s={state:"pending",request:t,type:n} -s[_t]=[r.recordIdentifier],s[Et]=e,this._pending[i].push(s),this._triggerSubscriptions(s),e.then((e=>{this._dequeue(i,s) -let r={state:"fulfilled",request:t,type:n,response:{data:e}} -r[_t]=s[_t],this._addDone(r),this._triggerSubscriptions(r)}),(e=>{this._dequeue(i,s) -let r={state:"rejected",request:t,type:n,response:{data:e}} -r[_t]=s[_t],this._addDone(r),this._triggerSubscriptions(r)}))}}_triggerSubscriptions(e){e[_t].forEach((t=>{this._subscriptions[t.lid]&&this._subscriptions[t.lid].forEach((t=>t(e)))}))}_dequeue(e,t){this._pending[e]=this._pending[e].filter((e=>e!==t))}_addDone(e){e[_t].forEach((t=>{let r=e.request.data[0].op,i=this._done.get(t) -i&&(i=i.filter((e=>{let t -return t=e.request.data instanceof Array?e.request.data[0]:e.request.data,t.op!==r}))),i=i||[],i.push(e),this._done.set(t,i)}))}subscribeForRecord(e,t){this._subscriptions[e.lid]||(this._subscriptions[e.lid]=[]),this._subscriptions[e.lid].push(t)}getPendingRequestsForRecord(e){return this._pending[e.lid]?this._pending[e.lid]:[]}getLastRequestForRecord(e){let t=this._done.get(e) -return t?t[t.length-1]:null}}const Ot=Symbol("SaveOp") -class wt{constructor(e){this._store=e,this._pendingFetch=new Map,this._pendingSave=[],this.requestCache=new Rt,this.isDestroyed=!1}clearEntries(e){this.requestCache._done.delete(e)}scheduleSave(e,t){let r="DS: Model#save "+this,i=O.default.defer(r),s={data:[{op:"saveRecord",recordIdentifier:e,options:t}]},a={snapshot:new me(t,e,this._store),resolver:i,identifier:e,options:t,queryRequest:s} -return this._pendingSave.push(a),n._backburner.scheduleOnce("actions",this,this._flushPendingSaves),this.requestCache.enqueue(i.promise,a.queryRequest),i.promise}_flushPendingSaves(){const e=this._store -let t=this._pendingSave.slice() -this._pendingSave=[] -for(let r=0,i=t.length;r{t.data&&!Array.isArray(t.data)&&(t.data.lid=e.lid) -let r=c._push(t) -return r&&!Array.isArray(r)?r:e}),(t=>{const r=c._instanceCache.peek({identifier:e,bucket:"recordData"}) -if(!r||r.isEmpty(e)||d){let t=!0 -if(!r){const r=(0,w.default(require("@ember-data/record-data/-private")).graphFor)(c) -t=r.isReleasable(e),t||r.unload(e,!0)}(r||t)&&c._instanceCache.unloadRecord(e)}throw t})) -0===this._pendingFetch.size&&n._backburner.schedule("actions",this,this.flushAllPendingFetches) -let p=this._pendingFetch -return p.has(a)||p.set(a,[]),p.get(a).push(l),l.promise=h,this.requestCache.enqueue(u,l.queryRequest),h}getPendingFetch(e,t){let r=this._pendingFetch.get(e.type) -if(r){let i=r.find((r=>r.identifier===e&&function(e={},t={}){let r=!e.include||e.include===t.include,i=e.adapterOptions===t.adapterOptions -return r&&i}(t,r.options))) -if(i)return i.promise}}flushAllPendingFetches(){if(this.isDestroyed)return -const e=this._store -this._pendingFetch.forEach(((t,r)=>function(e,t,r){let i=e.adapterFor(r),n=!!i.findMany&&i.coalesceFindRequests,s=t.length -if(n){let n,a=new Array(s),o=new Map -for(let r=0;r' to be present in the adapter provided payload, but it was not found.`))}}function Pt(e,t){let r=t.identifier,i=r.type,n=e.adapterFor(i),s=new me(t.options,r,e),a=e.modelFor(r.type),l=r.id,u=`DS: Handle Adapter#findRecord of '${i}' with id: '${l}'`,c=vt(o.resolve().then((()=>n.findRecord(e,a,r.id,s))),e,u).then((t=>yt(e.serializerFor(i),e,a,t,l,"findRecord"))) -t.resolver.resolve(c)}function At(e,t,r,i,n){r.length>1?function(e,t,r,i){let n=e.modelFor(r) -const s=i.map((e=>e.id)) -let a=t.findMany(e,n,s,i),o=`DS: Handle Adapter#findMany of '${r}'` -if(void 0===a)throw new Error("adapter.findMany returned undefined, this was very likely a mistake") -return a=vt(a,e,o),a.then((t=>yt(e.serializerFor(r),e,n,t,null,"findMany")))}(e,i,n,r).then((i=>{(function(e,t,r,i){let n=new Map -for(let l=0;l{t.get(r).resolver.resolve({data:e})})):s.push(e)}if(s.length>0&&e._push({data:null,included:s}),0===n.size)return -let o=[] -n.forEach((e=>{o.push(...e)})),Tt(t,o)})(e,t,r,i)})).catch((e=>{Tt(t,r,e)})):1===r.length&&Pt(e,t.get(r[0]))}function St(e,t){const{snapshot:r,resolver:i,identifier:n,options:s}=t,a=e.adapterFor(n.type),l=s[Ot] -let u=r.modelName,c=e.modelFor(u) -const d=e._instanceCache.getRecord(n) -let h=o.resolve().then((()=>a[l](e,c,r))),p=e.serializerFor(u) -h=gt(vt(h,e,`DS: Extract and notify about ${l} completion of ${n}`),function(e,...t){return function(){return e.apply(void 0,t)}}(bt,d)).then((t=>{if(bt(d),t)return yt(p,e,c,t,r.id,l)})),i.resolve(h)}class Ct{constructor(e,t,r={}){this.__store=e,this._snapshots=null,this._recordArray=t,this.length=t.length,this.adapterOptions=r.adapterOptions,this.include=r.include}get modelName(){return this._recordArray.modelName}snapshots(){if(null!==this._snapshots)return this._snapshots -const{_instanceCache:e}=this.__store -return this._snapshots=this._recordArray[tt].map((t=>e.createSnapshot(t))),this._snapshots}}function kt(e,t,r,i,n){let s=t.modelFor(r),a=t.peekAll(r) -n=n||new Ct(t,a,i) -let l=o.Promise.resolve().then((()=>e.findAll(t,s,null,n))) -return l=vt(l,t,"DS: Handle Adapter#findAll of "+s),l.then((e=>{let i=yt(t.serializerFor(r),t,s,e,null,"findAll") -return t._push(i),a.isUpdating=!1,a}),null,"DS: Extract payload of findAll ${modelName}")}let Mt -Object.defineProperty(Ct.prototype,"type",{get(){return this._recordArray.type}}) -class jt extends R.default{constructor(){super(...arguments),this.__private_singleton_recordData=void 0,this.identifierCache=new $,this.recordArrayManager=new pt({store:this}),this._notificationManager=new Y(this),this._fetchManager=new wt(this),this._instanceCache=new Pe(this),this._adapterCache=Object.create(null),this._serializerCache=Object.create(null),this._modelFactoryCache=Object.create(null)}_run(e){const t=this._cbs={} -e(),t.coalesce&&t.coalesce(),t.sync&&t.sync(),t.notify&&t.notify(),this._cbs=null}_join(e){this._cbs?e():this._run(e)}_schedule(e,t){this._cbs[e]=t}getRequestStateService(){return this._fetchManager.requestCache}instantiateRecord(e,t,r,n){{let r=e.type,n={_createProps:t,_secretInit:{identifier:e,recordData:this._instanceCache.getRecordData(e),store:this,cb:Ft}} -return i.setOwner(n,i.getOwner(this)),je(this,this._modelFactoryCache,r).class.create(n)}}teardownRecord(e){e.destroy()}getSchemaDefinitionService(){return this._schemaDefinitionService||(this._schemaDefinitionService=new Me(this)),this._schemaDefinitionService}registerSchemaDefinitionService(e){this._schemaDefinitionService=e}modelFor(e){{let t=C(e),r=je(this,this._modelFactoryCache,t),i=r&&r.class?r.class:r -return i&&i.isModel?i:function(e,t){let r=xe.get(e) -r||(r=Object.create(null),xe.set(e,r)) -let i=r[t] -return void 0===i&&(i=r[t]=new Ne(e,t)),i}(this,e)}}createRecord(e,t){let r -return n._backburner.join((()=>{this._join((()=>{let i=C(e),n={...t} -if(null===n.id||void 0===n.id){let t=this.adapterFor(e) -t&&t.generateIdForRecord?n.id=t.generateIdForRecord(this,e,n):n.id=null}n.id=k(n.id) -const s={type:i,id:n.id} -s.id&&this.identifierCache.peekRecordIdentifier(s) -const a=this.identifierCache.createIdentifierForNewRecord(s),o=this._instanceCache.getRecordData(a),l=function(e,t,r,i=!1){if(void 0!==r){const{type:n}=t -let s=e.getSchemaDefinitionService().relationshipsDefinitionFor({type:n}) -if(null!==s){let e,t=Object.keys(r) -for(let n=0;n{r.setIsDeleted(t,!0),r.isNew(t)&&n._backburner.join((()=>{this._instanceCache.unloadRecord(t)}))}))}unloadRecord(e){const t=Re(e) -t&&this._instanceCache.unloadRecord(t)}find(e,t,r){return this.findRecord(e,t)}findRecord(e,t,r){if(xt(e))r=t -else{e=pe(C(e),M(t))}const i=this.identifierCache.getOrCreateRecordIdentifier(e) -let n -if(r=r||{},this._instanceCache.recordIsLoaded(i))if(r.reload)n=this._fetchManager.scheduleFetch(i,r) -else{let e=null,t=this.adapterFor(i.type) -void 0===r.reload&&t.shouldReloadRecord&&t.shouldReloadRecord(this,e=this._instanceCache.createSnapshot(i,r))?n=this._fetchManager.scheduleFetch(i,r):(!1===r.backgroundReload||!r.backgroundReload&&t.shouldBackgroundReloadRecord&&!t.shouldBackgroundReloadRecord(this,e=e||this._instanceCache.createSnapshot(i,r))||this._fetchManager.scheduleFetch(i,r),n=o.resolve(i))}else n=this._instanceCache._fetchDataIfNeededForIdentifier(i,r) -return function(e,t){return He(t.then((t=>e.peekRecord(t))))}(this,n)}getReference(e,t){let r -if(1===arguments.length&&xt(e))r=e -else{r=pe(C(e),M(t))}let i=this.identifierCache.getOrCreateRecordIdentifier(r) -return this._instanceCache.getReference(i)}peekRecord(e,t){if(1===arguments.length&&xt(e)){const t=this.identifierCache.peekRecordIdentifier(e) -return t&&this._instanceCache.recordIsLoaded(t)?this._instanceCache.getRecord(t):null}const r={type:C(e),id:M(t)},i=this.identifierCache.peekRecordIdentifier(r) -return i&&this._instanceCache.recordIsLoaded(i)?this._instanceCache.getRecord(i):null}hasRecordForId(e,t){{const r={type:C(e),id:M(t)},i=this.identifierCache.peekRecordIdentifier(r) -return Boolean(i&&this._instanceCache.recordIsLoaded(i))}}query(e,t,r){let i={} -r&&r.adapterOptions&&(i.adapterOptions=r.adapterOptions) -let n=r?._recordArray||null,s=C(e),a=function(e,t,r,i,n,s){let a=t.modelFor(r) -n=n||t.recordArrayManager.createArray({type:r,query:i}) -let l=o.Promise.resolve().then((()=>e.query(t,a,i,n,s))) -return l=vt(l,t,`DS: Handle Adapter#query of ${r}`),l.then((e=>{let i=yt(t.serializerFor(r),t,a,e,null,"query"),s=t._push(i) -return t.recordArrayManager.populateManagedArray(n,s,i),n}),null,`DS: Extract payload of query ${r}`)}(this.adapterFor(s),this,s,t,n,i) -return $e(a)}queryRecord(e,t,r){let i=C(e),n=this.adapterFor(i),s={} -r&&r.adapterOptions&&(s.adapterOptions=r.adapterOptions) -const a=function(e,t,r,i,n){let s=t.modelFor(r),a=o.Promise.resolve().then((()=>e.queryRecord(t,s,i,n))) -return a=vt(a,t,`DS: Handle Adapter#queryRecord of ${r}`),a.then((e=>{let i=yt(t.serializerFor(r),t,s,e,null,"queryRecord") -return t._push(i)}),null,`DS: Extract payload of queryRecord ${r}`)}(n,this,i,t,s) -return He(a.then((e=>e&&this.peekRecord(e))))}findAll(e,t={}){let r,i=C(e),n=this.peekAll(i),s=this.adapterFor(i) -if(t.reload)n.isUpdating=!0,r=kt(s,this,i,t) -else{let i=new Ct(this,n,t) -!1!==t.reload&&(s.shouldReloadAll&&s.shouldReloadAll(this,i)||!s.shouldReloadAll&&0===i.length)&&(n.isUpdating=!0,r=kt(s,this,e,t,i)),r||(!1===t.backgroundReload?r=o.resolve(n):(t.backgroundReload||!s.shouldBackgroundReloadAll||s.shouldBackgroundReloadAll(this,i))&&(n.isUpdating=!0,kt(s,this,e,t,i)),r=o.resolve(n))}return $e(r)}peekAll(e){let t=C(e) -return this.recordArrayManager.liveArrayFor(t)}unloadAll(e){this._join((()=>{if(void 0===e){{let e=(0,w.default(require("@ember-data/record-data/-private")).peekGraph)(this) -e&&e.identifiers.clear()}this._notificationManager.destroy(),this.recordArrayManager.clear(),this._instanceCache.clear()}else{let t=C(e) -this._instanceCache.clear(t)}}))}push(e){let t=this._push(e) -if(Array.isArray(t)){return t.map((e=>this._instanceCache.getRecord(e)))}return null===t?null:this._instanceCache.getRecord(t)}_push(e){let t -return this._join((()=>{let r,i,n=e.included -if(n)for(r=0,i=n.length;r(this._join((()=>{let e=t&&t.data -const i=this.identifierCache -let s=r -"deleteRecord"!==n&&e&&(s=i.updateRecordIdentifier(r,e)) -this._instanceCache.getRecordData(s).didCommit(r,e),"deleteRecord"===n&&this.recordArrayManager.identifierRemoved(s),t&&t.included&&this._push({data:null,included:t.included})})),e)),(e=>{let t=e -throw e?"string"==typeof e&&(t=new Error(e)):t=new Error("Unknown Error Occurred During Request"),function(e,t,r){if(r&&!0===r.isAdapterError&&"InvalidError"===r.code){let i=e.serializerFor(t.type) -if(i&&"function"==typeof i.extractErrors){let n=i.extractErrors(e,e.modelFor(t.type),r,t.id) -r.errors=function(e){const t=[] -e&&Object.keys(e).forEach((r=>{let i=(n=e[r],Array.isArray(n)?n:[n]) -var n -for(let e=0;eIt(e,t)))}function It(e,t=!1){if(!e)return null -const r=t?ye:Oe -if(e.then){let t=e.content -return t?r(t):null}return r(e)}function Ft(e,t,r,i){we(e,r),Te.set(e,i),be(e,t)}e.AdapterPopulatedRecordArray=lt,e.IDENTIFIER_ARRAY_TAG=et,e.IdentifierArray=ot,e.MUTATE=rt,e.RecordArray=ot,e.RecordArrayManager=pt,e.SOURCE=tt,e.Snapshot=me,e.SnapshotRecordArray=Ct,e.Store=jt,e._clearCaches=function(){Ee.clear(),Te.clear(),ge.clear()},e.coerceId=k,e.fastPush=ht,e.isStableIdentifier=D,e.normalizeModelName=function(e){return C(e)},e.notifyArray=nt,e.recordDataFor=ye,e.recordIdentifierFor=Oe,e.removeRecordDataFor=ve,e.setIdentifierForgetMethod=function(e){I=e},e.setIdentifierGenerationMethod=function(e){F=e},e.setIdentifierResetMethod=function(e){L=e},e.setIdentifierUpdateMethod=function(e){z=e},e.storeFor=function(e){return Te.get(e)},Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})})),define("@ember-data/store/index",["exports","@ember-data/store/-private"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Store}}),Object.defineProperty(e,"normalizeModelName",{enumerable:!0,get:function(){return t.normalizeModelName}}),Object.defineProperty(e,"recordIdentifierFor",{enumerable:!0,get:function(){return t.recordIdentifierFor}}),Object.defineProperty(e,"setIdentifierForgetMethod",{enumerable:!0,get:function(){return t.setIdentifierForgetMethod}}),Object.defineProperty(e,"setIdentifierGenerationMethod",{enumerable:!0,get:function(){return t.setIdentifierGenerationMethod}}),Object.defineProperty(e,"setIdentifierResetMethod",{enumerable:!0,get:function(){return t.setIdentifierResetMethod}}),Object.defineProperty(e,"setIdentifierUpdateMethod",{enumerable:!0,get:function(){return t.setIdentifierUpdateMethod}}),Object.defineProperty(e,"storeFor",{enumerable:!0,get:function(){return t.storeFor}})})),define("@ember-data/tracking/-private",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.addToTransaction=function(e){t?t.props.add(e):e.ref=null},e.addTransactionCB=function(e){t?t.cbs.add(e):e()},e.memoTransact=function(e){return function(...t){r() -const n=e(...t) -return i(),n}},e.subscribe=function(e){t?t.sub.add(e):e.ref},e.transact=function(e){r() -const t=e() -return i(),t},e.untracked=function(e){r() -const i=e() -return async function(){let e=t -t=e.parent,await Promise.resolve(),e.cbs.forEach((e=>{e()})),e.props.forEach((e=>{e.t=!0,e.ref=null}))}(),i} -let t=null -function r(){let e={cbs:new Set,props:new Set,sub:new Set,parent:null} -t&&(e.parent=t),t=e}function i(){let e=t -t=e.parent,e.cbs.forEach((e=>{e()})),e.props.forEach((e=>{e.t=!0,e.ref=null})),e.sub.forEach((e=>{e.ref}))}})),define("@ember-data/tracking/index",["exports","@ember-data/tracking/-private"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"memoTransact",{enumerable:!0,get:function(){return t.memoTransact}}),Object.defineProperty(e,"transact",{enumerable:!0,get:function(){return t.transact}}),Object.defineProperty(e,"untracked",{enumerable:!0,get:function(){return t.untracked}})})),define("@ember/string/cache",["exports"],(function(e){"use strict" -function t(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e -var r=e[Symbol.toPrimitive] -if(void 0!==r){var i=r.call(e,t||"default") -if("object"!=typeof i)return i -throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{constructor(e,r,i){t(this,"size",0),t(this,"misses",0),t(this,"hits",0),this.limit=e,this.func=r,this.store=i,this.store=i||new Map}get(e){let t=this.store.get(e) -return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,t=this.set(e,this.func(e)),t)}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}}})),define("@ember/string/index",["exports","@ember/string/cache"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.camelize=function(e){return o.get(e)},e.capitalize=function(e){return g.get(e)},e.classify=function(e){return d.get(e)},e.dasherize=function(e){return n.get(e)},e.decamelize=y,e.getString=function(e){return r[e]},e.getStrings=function(){return r},e.htmlSafe=function(e){throw new Error("htmlSafe is not implemented in the `@ember/string` package. Please import from `@ember/template` instead.")},e.isHTMLSafe=function(e){throw new Error("isHTMLSafe is not implemented in the `@ember/string` package. Please import from `@ember/template` instead.")},e.setStrings=function(e){r=e},e.underscore=function(e){return f.get(e)},e.w=function(e){return e.split(/\s+/)} -let r={} -const i=/[ _]/g,n=new t.default(1e3,(e=>y(e).replace(i,"-"))),s=/(\-|\_|\.|\s)+(.)?/g,a=/(^|\/)([A-Z])/g,o=new t.default(1e3,(e=>e.replace(s,((e,t,r)=>r?r.toUpperCase():"")).replace(a,(e=>e.toLowerCase())))),l=/^(\-|_)+(.)?/,u=/(.)(\-|\_|\.|\s)+(.)?/g,c=/(^|\/|\.)([a-z])/g,d=new t.default(1e3,(e=>{const t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,i)=>t+(i?i.toUpperCase():""),i=e.split("/") -for(let n=0;ne.toUpperCase()))})),h=/([a-z\d])([A-Z]+)/g,p=/\-|\s+/g,f=new t.default(1e3,(e=>e.replace(h,"$1_$2").replace(p,"_").toLowerCase())),m=/(^|\/)([a-z\u00C0-\u024F])/g,g=new t.default(1e3,(e=>e.replace(m,(e=>e.toUpperCase())))),b=/([a-z\d])([A-Z])/g,v=new t.default(1e3,(e=>e.replace(b,"$1_$2").toLowerCase())) -function y(e){return v.get(e)}})),define("@ember/test-waiters/build-waiter",["exports","@ember/debug","@ember/test-waiters/token","@ember/test-waiters/waiter-manager"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._resetWaiterNames=function(){n=new Set},e.default=function(e){0 -return new s(e)} -let n -class s{constructor(e){this.name=e}beginAsync(){return this}endAsync(){}waitUntil(){return!0}debugInfo(){return[]}reset(){}}})),define("@ember/test-waiters/index",["exports","@ember/test-waiters/waiter-manager","@ember/test-waiters/build-waiter","@ember/test-waiters/wait-for-promise","@ember/test-waiters/wait-for"],(function(e,t,r,i,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"_reset",{enumerable:!0,get:function(){return t._reset}}),Object.defineProperty(e,"_resetWaiterNames",{enumerable:!0,get:function(){return r._resetWaiterNames}}),Object.defineProperty(e,"buildWaiter",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"getPendingWaiterState",{enumerable:!0,get:function(){return t.getPendingWaiterState}}),Object.defineProperty(e,"getWaiters",{enumerable:!0,get:function(){return t.getWaiters}}),Object.defineProperty(e,"hasPendingWaiters",{enumerable:!0,get:function(){return t.hasPendingWaiters}}),Object.defineProperty(e,"register",{enumerable:!0,get:function(){return t.register}}),Object.defineProperty(e,"unregister",{enumerable:!0,get:function(){return t.unregister}}),Object.defineProperty(e,"waitFor",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"waitForPromise",{enumerable:!0,get:function(){return i.default}})})),define("@ember/test-waiters/token",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{}})),define("@ember/test-waiters/types/index",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0})})),define("@ember/test-waiters/wait-for-promise",["exports","@ember/test-waiters/build-waiter"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){let r=e -0 -return r};(0,t.default)("@ember/test-waiters:promise-waiter")})),define("@ember/test-waiters/wait-for",["exports","@ember/test-waiters/wait-for-promise","@ember/test-waiters/build-waiter"],(function(e,t,r){"use strict" -function i(e,t){return e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(...e){if(e.length<3){let[t,r]=e -return i(t,r)}{let[,,t,r]=e -return t}};(0,r.default)("@ember/test-waiters:generator-waiter")})),define("@ember/test-waiters/waiter-manager",["exports","ember","@ember/test"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._reset=function(){for(let e of s())e.isRegistered=!1 -i.clear()},e.getPendingWaiterState=a,e.getWaiters=s,e.hasPendingWaiters=o,e.register=function(e){i.set(e.name,e)},e.unregister=function(e){i.delete(e.name)} -const i=function(){let e="TEST_WAITERS",t="undefined"!=typeof Symbol?Symbol.for(e):e,r=n(),i=r[t] -return void 0===i&&(i=r[t]=new Map),i}() -function n(){if("undefined"!=typeof globalThis)return globalThis -if("undefined"!=typeof self)return self -if("undefined"!=typeof window)return window -if("undefined"!=typeof global)return global -throw new Error("unable to locate global object")}function s(){let e=[] -return i.forEach((t=>{e.push(t)})),e}function a(){let e={pending:0,waiters:{}} -return i.forEach((t=>{if(!t.waitUntil()){e.pending++ -let r=t.debugInfo() -e.waiters[t.name]=r||!0}})),e}function o(){return a().pending>0}t.default.Test&&(0,r.registerWaiter)((()=>!o()))})),define("@embroider/macros/es-compat2",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return e?.__esModule?e:{default:e,...e}}})) -define("@embroider/macros/runtime",["exports"],(function(e){"use strict" -function t(e){return i.packages[e]}function r(){return i.global}Object.defineProperty(e,"__esModule",{value:!0}),e.config=t,e.each=function(e){if(!Array.isArray(e))throw new Error("the argument to the each() macro must be an array") -return e},e.getGlobalConfig=r,e.isTesting=function(){let e=i.global,t=e&&e["@embroider/macros"] -return Boolean(t&&t.isTesting)},e.macroCondition=function(e){return e} -const i={packages:{},global:{}} -let n="undefined"!=typeof window?window._embroider_macros_runtime_config:void 0 -if(n){let e={config:t,getGlobalConfig:r,setConfig(e,t){i.packages[e]=t},setGlobalConfig(e,t){i.global[e]=t}} -for(let t of n)t(e)}})),define("@embroider/util/ember-private-api",["exports","@embroider/macros/es-compat2"],(function(e,t){"use strict" -let r -Object.defineProperty(e,"__esModule",{value:!0}),e.isCurriedComponentDefinition=void 0,e.lookupCurriedComponentDefinition=function(e,t){let r=function(e){let t=e.lookup("renderer:-dom")._runtimeResolver -if(t)return t -let r=Object.entries(e.__container__.cache).find((e=>e[0].startsWith("template-compiler:main-"))) -if(r)return r[1].resolver.resolver -throw new Error("@embroider/util couldn't locate the runtime resolver on this ember version")}(t) -if("function"==typeof r.lookupComponentHandle){let i=r.lookupComponentHandle(e,t) -if(null!=i)return new n(r.resolve(i),null)}if(!r.lookupComponent(e,t))throw new Error(`Attempted to resolve \`${e}\` via ensureSafeComponent, but nothing was found.`) -return s(0,e,t,{named:{},positional:[]})},r=(0,t.default)(require("@glimmer/runtime")) -let{isCurriedComponentDefinition:i,CurriedComponentDefinition:n,curry:s,CurriedValue:a}=r -e.isCurriedComponentDefinition=i,i||(e.isCurriedComponentDefinition=i=function(e){return e instanceof a})})),define("@embroider/util/index",["exports","@ember/debug","@ember/application","@embroider/util/ember-private-api","@ember/component/helper"],(function(e,t,r,i,n){"use strict" -function s(e,t){return"string"==typeof e?function(e,t){let n=(0,r.getOwner)(t) -return(0,i.lookupCurriedComponentDefinition)(e,n)}(e,t):(0,i.isCurriedComponentDefinition)(e)||null==e?e:e}Object.defineProperty(e,"__esModule",{value:!0}),e.EnsureSafeComponentHelper=void 0,e.ensureSafeComponent=s -class a extends n.default{compute([e]){return s(e,this)}}e.EnsureSafeComponentHelper=a})),define("@embroider/util/services/ensure-registered",["exports","@ember/service","@ember/application"],(function(e,t,r){"use strict" -function i(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e -var r=e[Symbol.toPrimitive] -if(void 0!==r){var i=r.call(e,t||"default") -if("object"!=typeof i)return i -throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class n extends t.default{constructor(...e){super(...e),i(this,"classNonces",new WeakMap),i(this,"nonceCounter",0)}register(e,t=(0,r.getOwner)(this)){let i=this.classNonces.get(e) -return null==i&&(i="-ensure"+this.nonceCounter++,this.classNonces.set(e,i),t.register(`component:${i}`,e)),i}}e.default=n})),define("@glimmer/component/-private/base-component-manager",["exports","@glimmer/component/-private/component"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return class{static create(e){return new this(t(e))}constructor(t){var i,n,s -i=this,s=r,(n=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e -var r=e[Symbol.toPrimitive] -if(void 0!==r){var i=r.call(e,t||"default") -if("object"!=typeof i)return i -throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(n="capabilities"))in i?Object.defineProperty(i,n,{value:s,enumerable:!0,configurable:!0,writable:!0}):i[n]=s,e(this,t)}createComponent(e,r){return new e(t(this),r.named)}getContext(e){return e}}}})),define("@glimmer/component/-private/component",["exports","@glimmer/component/-private/owner","@glimmer/component/-private/destroyables"],(function(e,t,r){"use strict" -function i(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e -var r=e[Symbol.toPrimitive] -if(void 0!==r){var i=r.call(e,t||"default") -if("object"!=typeof i)return i -throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ARGS_SET=void 0 -e.ARGS_SET=void 0 -e.default=class{constructor(e,r){i(this,"args",void 0),this.args=r,(0,t.setOwner)(this,e)}get isDestroying(){return(0,r.isDestroying)(this)}get isDestroyed(){return(0,r.isDestroyed)(this)}willDestroy(){}}})),define("@glimmer/component/-private/destroyables",["exports","ember"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.isDestroying=e.isDestroyed=void 0 -e.isDestroying=t.default._isDestroying,e.isDestroyed=t.default._isDestroyed})),define("@glimmer/component/-private/ember-component-manager",["exports","ember","@ember/object","@ember/application","@ember/component","@ember/runloop","@glimmer/component/-private/base-component-manager","@glimmer/component/-private/destroyables"],(function(e,t,r,i,n,s,a,o){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -const{setDestroyed:l,setDestroying:u}=o,c=(0,n.capabilities)("3.13",{destructor:!0,asyncLifecycleCallbacks:!1,updateHook:!1}),d=t.default.destroy,h=t.default._registerDestructor -class p extends((0,a.default)(i.setOwner,i.getOwner,c)){createComponent(e,t){const r=super.createComponent(e,t) -return h(r,(()=>{r.willDestroy()})),r}destroyComponent(e){d(e)}}e.default=p})),define("@glimmer/component/-private/owner",["exports","@ember/application"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"setOwner",{enumerable:!0,get:function(){return t.setOwner}})})),define("@glimmer/component/index",["exports","@ember/component","@glimmer/component/-private/ember-component-manager","@glimmer/component/-private/component"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -let n=i.default;(0,t.setComponentManager)((e=>new r.default(e)),n) -e.default=n})),define("ember-cached-decorator-polyfill/index",["exports","@glimmer/tracking/primitives/cache","@ember/debug"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.cached=function(...e){const[r,i,n]=e -const s=new WeakMap,a=n.get -n.get=function(){return s.has(this)||s.set(this,(0,t.createCache)(a.bind(this))),(0,t.getValue)(s.get(this))}}})),define("ember-cli-app-version/initializer-factory",["exports","ember"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){let i=!1 -return function(){!i&&e&&t&&(r.register(e,t),i=!0)}} -const{libraries:r}=t.default})),define("ember-cli-app-version/utils/regexp",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.versionRegExp=e.versionExtendedRegExp=e.shaRegExp=void 0 -e.versionRegExp=/\d+[.]\d+[.]\d+/,e.versionExtendedRegExp=/\d+[.]\d+[.]\d+-[a-z]*([.]\d+)?/,e.shaRegExp=/[a-z\d]{8}$/})),define("ember-data/-private",["exports","@ember/array/proxy","@ember/object/promise-proxy-mixin","@ember/object/proxy","@ember-data/store","@ember/application/namespace","ember","ember-data/version","@ember-data/model/-private","@ember-data/store/-private","@ember-data/record-data/-private"],(function(e,t,r,i,n,s,a,o,l,u,c){"use strict" -const d=e=>e&&"object"==typeof e&&"default"in e?e:{default:e},h=d(t),p=d(r),f=d(i),m=d(n),g=d(s),b=d(a),v=d(o),y=g.default.create({VERSION:v.default,name:"DS"}) -b.default.libraries&&b.default.libraries.registerCoreLibrary("Ember Data",v.default) -const _=h.default.extend(p.default),E=f.default.extend(p.default) -Object.defineProperty(e,"Store",{enumerable:!0,get:()=>m.default}),Object.defineProperty(e,"Errors",{enumerable:!0,get:()=>l.Errors}),Object.defineProperty(e,"ManyArray",{enumerable:!0,get:()=>l.ManyArray}),Object.defineProperty(e,"PromiseManyArray",{enumerable:!0,get:()=>l.PromiseManyArray}),Object.defineProperty(e,"RecordArrayManager",{enumerable:!0,get:()=>u.RecordArrayManager}),Object.defineProperty(e,"Snapshot",{enumerable:!0,get:()=>u.Snapshot}),Object.defineProperty(e,"SnapshotRecordArray",{enumerable:!0,get:()=>u.SnapshotRecordArray}),Object.defineProperty(e,"coerceId",{enumerable:!0,get:()=>u.coerceId}),Object.defineProperty(e,"normalizeModelName",{enumerable:!0,get:()=>u.normalizeModelName}),Object.defineProperty(e,"RecordData",{enumerable:!0,get:()=>c.RecordData}),e.DS=y,e.PromiseArray=_,e.PromiseObject=E,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})})),define("ember-data/adapter",["exports","@ember-data/adapter"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ember-data/adapters/errors",["exports","@ember-data/adapter/error"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"AbortError",{enumerable:!0,get:function(){return t.AbortError}}),Object.defineProperty(e,"AdapterError",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"ConflictError",{enumerable:!0,get:function(){return t.ConflictError}}),Object.defineProperty(e,"ForbiddenError",{enumerable:!0,get:function(){return t.ForbiddenError}}),Object.defineProperty(e,"InvalidError",{enumerable:!0,get:function(){return t.InvalidError}}),Object.defineProperty(e,"NotFoundError",{enumerable:!0,get:function(){return t.NotFoundError}}),Object.defineProperty(e,"ServerError",{enumerable:!0,get:function(){return t.ServerError}}),Object.defineProperty(e,"TimeoutError",{enumerable:!0,get:function(){return t.TimeoutError}}),Object.defineProperty(e,"UnauthorizedError",{enumerable:!0,get:function(){return t.UnauthorizedError}}),Object.defineProperty(e,"errorsArrayToHash",{enumerable:!0,get:function(){return t.errorsArrayToHash}}),Object.defineProperty(e,"errorsHashToArray",{enumerable:!0,get:function(){return t.errorsHashToArray}})})),define("ember-data/adapters/json-api",["exports","@ember-data/adapter/json-api"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ember-data/adapters/rest",["exports","@ember-data/adapter/rest"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ember-data/attr",["exports","@ember-data/model"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.attr}})})),define("ember-data/index",["exports","@ember-data/adapter","@ember-data/adapter/error","@ember-data/adapter/json-api","@ember-data/adapter/rest","@ember-data/model","@ember-data/serializer","@ember-data/serializer/-private","@ember-data/serializer/json","@ember-data/serializer/json-api","@ember-data/serializer/rest","@ember-data/serializer/transform","@ember-data/store","ember-data/-private","ember-data/setup-container","@embroider/macros/es-compat2"],(function(e,t,r,i,n,s,a,o,l,u,c,d,h,p,f,m){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,p.DS.Store=h.default,p.DS.PromiseArray=p.PromiseArray,p.DS.PromiseObject=p.PromiseObject,p.DS.PromiseManyArray=p.PromiseManyArray,p.DS.Model=s.default,p.DS.attr=s.attr,p.DS.Errors=p.Errors,p.DS.Snapshot=p.Snapshot,p.DS.Adapter=t.default,p.DS.AdapterError=r.default,p.DS.InvalidError=r.InvalidError,p.DS.TimeoutError=r.TimeoutError,p.DS.AbortError=r.AbortError,p.DS.UnauthorizedError=r.UnauthorizedError,p.DS.ForbiddenError=r.ForbiddenError,p.DS.NotFoundError=r.NotFoundError,p.DS.ConflictError=r.ConflictError,p.DS.ServerError=r.ServerError,p.DS.errorsHashToArray=r.errorsHashToArray,p.DS.errorsArrayToHash=r.errorsArrayToHash,p.DS.Serializer=a.default,p.DS.DebugAdapter=(0,m.default)(require("@ember-data/debug")).default,p.DS.ManyArray=p.ManyArray,p.DS.RecordArrayManager=p.RecordArrayManager,p.DS.RESTAdapter=n.default,p.DS.BuildURLMixin=t.BuildURLMixin,p.DS.RESTSerializer=c.default,p.DS.JSONSerializer=l.default -p.DS.JSONAPIAdapter=i.default,p.DS.JSONAPISerializer=u.default,p.DS.Transform=d.default,p.DS.DateTransform=o.DateTransform,p.DS.StringTransform=o.StringTransform,p.DS.NumberTransform=o.NumberTransform,p.DS.BooleanTransform=o.BooleanTransform,p.DS.EmbeddedRecordsMixin=c.EmbeddedRecordsMixin,p.DS.belongsTo=s.belongsTo,p.DS.hasMany=s.hasMany,p.DS._setupContainer=f.default,Object.defineProperty(p.DS,"normalizeModelName",{enumerable:!0,writable:!1,configurable:!1,value:h.normalizeModelName}) -e.default=p.DS})),define("ember-data/model",["exports","@ember-data/model"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ember-data/relationships",["exports","@ember-data/model"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"belongsTo",{enumerable:!0,get:function(){return t.belongsTo}}),Object.defineProperty(e,"hasMany",{enumerable:!0,get:function(){return t.hasMany}})})),define("ember-data/serializer",["exports","@ember-data/serializer"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ember-data/serializers/embedded-records-mixin",["exports","@ember-data/serializer/rest"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.EmbeddedRecordsMixin}})})),define("ember-data/serializers/json-api",["exports","@ember-data/serializer/json-api"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ember-data/serializers/json",["exports","@ember-data/serializer/json"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ember-data/serializers/rest",["exports","@ember-data/serializer/rest"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ember-data/setup-container",["exports","@ember-data/store"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){(function(e){e.registerOptionsForType("serializer",{singleton:!1}),e.registerOptionsForType("adapter",{singleton:!1}),e.hasRegistration("service:store")||e.register("service:store",t.default)})(e)}})),define("ember-data/store",["exports","@ember-data/store"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})),define("ember-data/transform",["exports","@ember-data/serializer/transform"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.default}})})) -define("ember-data/version",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default="4.11.3"})),define("ember-fetch/errors",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.isAbortError=function(e){return"AbortError"==e.name},e.isBadRequestResponse=function(e){return 400===e.status},e.isConflictResponse=function(e){return 409===e.status},e.isForbiddenResponse=function(e){return 403===e.status},e.isGoneResponse=function(e){return 410===e.status},e.isInvalidResponse=function(e){return 422===e.status},e.isNotFoundResponse=function(e){return 404===e.status},e.isServerErrorResponse=function(e){return e.status>=500&&e.status<600},e.isUnauthorizedResponse=function(e){return 401===e.status}})),define("ember-fetch/types",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.isPlainObject=function(e){return"[object Object]"===Object.prototype.toString.call(e)}})),define("ember-fetch/utils/determine-body-promise",["exports","@ember/debug"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,r){return e.text().then((function(i){let n=i -try{n=JSON.parse(i)}catch(s){if(!(s instanceof SyntaxError))throw s -const a=e.status -!e.ok||204!==a&&205!==a&&"HEAD"!==r.method?(0,t.debug)(`This response was unable to be parsed as json: ${i}`):n=void 0}return n}))}})),define("ember-fetch/utils/mung-options-for-fetch",["exports","@ember/polyfills","ember-fetch/utils/serialize-query-params","ember-fetch/types"],(function(e,t,r,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){const n=(0,t.assign)({credentials:"same-origin"},e) -if(n.method=(n.method||n.type||"GET").toUpperCase(),n.data)if("GET"===n.method||"HEAD"===n.method){if(Object.keys(n.data).length){const e=n.url.indexOf("?")>-1?"&":"?" -n.url+=`${e}${(0,r.serializeQueryParams)(n.data)}`}}else(0,i.isPlainObject)(n.data)?n.body=JSON.stringify(n.data):n.body=n.data -return n}})),define("ember-fetch/utils/serialize-query-params",["exports","ember-fetch/types"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.serializeQueryParams=i -const r=/\[\]$/ -function i(e){var i=[] -return function e(s,a){var o,l,u -if(s)if(Array.isArray(a))for(o=0,l=a.length;o0&&(l=r[v-1],g=l[0],!g.test(e));v--);return l=l||[],g=l[0],u=l[1],c=e.replace(g,u),c}},u.defaultRules=r.default,u.inflector=new u(r.default) -e.default=u})),define("ember-inflector/lib/system/string",["exports","ember-inflector/lib/system/inflector"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.pluralize=function(){return t.default.inflector.pluralize(...arguments)},e.singularize=function(e){return t.default.inflector.singularize(e)}})),define("ember-inflector/lib/utils/make-helper",["exports","ember","@ember/component/helper"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){if(r.default)return r.default.helper(e) -if(t.default.HTMLBars)return t.default.HTMLBars.makeBoundHelper(e) -return t.default.Handlebars.makeBoundHelper(e)}})),define("ember-load-initializers/index",["exports","require"],(function(e,t){"use strict" -function r(e){var r=(0,t.default)(e,null,null,!0) -if(!r)throw new Error(e+" must export an initializer.") -var i=r.default -if(!i)throw new Error(e+" must have a default export") -return i.name||(i.name=e.slice(e.lastIndexOf("/")+1)),i}function i(e,t){return-1!==e.indexOf(t,e.length-t.length)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){for(var n=t+"/initializers/",s=t+"/instance-initializers/",a=[],o=[],l=Object.keys(requirejs._eak_seen),u=0;u{(0,r.scheduleOnce)("afterRender",this,this._updateTitle)})),this._validateExistingTitleElement() -let e=(0,t.getOwner)(this).resolveRegistration("config:environment") -e.pageTitle&&["separator","prepend","replace"].forEach((t=>{(0,n.isEmpty)(e.pageTitle[t])||(this._defaultConfig[t]=e.pageTitle[t])})),this.router.on(b,this.scheduleTitleUpdate)}applyTokenDefaults(e){let t=this._defaultConfig.separator,r=this._defaultConfig.prepend,i=this._defaultConfig.replace -null==e.separator&&(e.separator=t),null==e.prepend&&null!=r&&(e.prepend=r),null==e.replace&&null!=i&&(e.replace=i)}inheritFromPrevious(e){let t=e.previous -t&&(null==e.separator&&(e.separator=t.separator),null==e.prepend&&(e.prepend=t.prepend))}push(e){let t=this._findTokenById(e.id) -if(t){let r=this.tokens.indexOf(t),i=[...this.tokens],n=t.previous -return e.previous=n,e.next=t.next,this.inheritFromPrevious(e),this.applyTokenDefaults(e),i.splice(r,1,e),void(this.tokens=i)}let r=this.tokens.slice(-1)[0] -r&&(e.previous=r,r.next=e,this.inheritFromPrevious(e)),this.applyTokenDefaults(e),this.tokens=[...this.tokens,e]}remove(e){let t=this._findTokenById(e),{next:r,previous:i}=t -r&&(r.previous=i),i&&(i.next=r),t.previous=t.next=null -let n=[...this.tokens] -n.splice(n.indexOf(t),1),this.tokens=n}get visibleTokens(){let e=this.tokens,t=e?e.length:0,r=[] -for(;t--;){let i=e[t] -if(i.replace){r.unshift(i) -break}r.unshift(i)}return r}get sortedTokens(){let e=this.visibleTokens,t=!0,r=[],i=[r],n=[] -return e.forEach((e=>{if(e.front)n.unshift(e) -else if(e.prepend){t&&(t=!1,r=[],i.push(r)) -let n=r[0] -n&&((e={...e}).separator=n.separator),r.unshift(e)}else t||(t=!0,r=[],i.push(r)),r.push(e)})),n.concat(i.reduce(((e,t)=>e.concat(t)),[]))}toString(){let e=this.sortedTokens,t=[] -for(let r=0,i=e.length;rt.id===e))[0]}updateFastbootTitle(e){if(!g)return -const t=this.document.head,r=t.childNodes -for(let s=0;s1){let e=t[0] -return"component"===e||"helper"===e||"modifier"===e||"template"===e&&0===t[1].indexOf("components/")?e+":"+t[1].replace(/_/g,"-"):e+":"+(0,n.dasherize)(t[1].replace(/\./g,"/"))}return e}pluralize(e){return this.pluralizedTypes[e]||(this.pluralizedTypes[e]=e+"s")}podBasedLookupWithPrefix(e,t){let r=t.fullNameWithoutType -return"template"===t.type&&(r=r.replace(/^components\//,"")),e+"/"+r+"/"+t.type}podBasedModuleName(e){let t=this.namespace.podModulePrefix||this.namespace.modulePrefix -return this.podBasedLookupWithPrefix(t,e)}podBasedComponentsInSubdir(e){let t=this.namespace.podModulePrefix||this.namespace.modulePrefix -if(t+="/components","component"===e.type||/^components/.test(e.fullNameWithoutType))return this.podBasedLookupWithPrefix(t,e)}resolveEngine(e){let t=e.fullNameWithoutType+"/engine" -if(this._moduleRegistry.has(t))return this._extractDefaultExport(t)}resolveRouteMap(e){let t=e.fullNameWithoutType,r=t+"/routes" -if(this._moduleRegistry.has(r)){let e=this._extractDefaultExport(r) -return e}}resolveTemplate(e){let r=this.resolveOther(e) -return null==r&&(r=t.default.TEMPLATES[e.fullNameWithoutType]),r}mainModuleName(e){if("main"===e.fullNameWithoutType)return e.prefix+"/"+e.type}defaultModuleName(e){return e.prefix+"/"+this.pluralize(e.type)+"/"+e.fullNameWithoutType}nestedColocationComponentModuleName(e){if("component"===e.type)return e.prefix+"/"+this.pluralize(e.type)+"/"+e.fullNameWithoutType+"/index"}prefix(e){let t=this.namespace.modulePrefix -return this.namespace[e.type+"Prefix"]&&(t=this.namespace[e.type+"Prefix"]),t}findModuleName(e,t){let r,i=this.moduleNameLookupPatterns -for(let n=0,s=i.length;n60?".":new Array(60-r.fullName.length).join("."),i||(i=this.lookupDescription(r)),console&&console.info&&console.info(s,r.fullName,n,i)}knownForType(e){let t=this._moduleRegistry.moduleNames(),r=Object.create(null) -for(let i=0,n=t.length;ii.length+n.length)return e+":"+t.slice(s+i.length,a) -let o=r+"/"+this.pluralize(e)+"/" -return 0===t.indexOf(o)&&t.length>o.length?e+":"+t.slice(o.length):void 0}_extractDefaultExport(e){let t=this._moduleRegistry.get(e,null,null,!0) -return t&&t.default&&(t=t.default),t}}a(l,"moduleBasedResolver",!0) -e.default=l})),define("ember-resolver/utils/class-factory",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return{create:t=>"function"==typeof e.extend?e.extend(t):e}}})),define("ember-test-waiters/index",["exports","@ember/debug","@ember/test-waiters"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.keys(r).forEach((function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===r[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return r[t]}}))}))})),define("ember-tracked-storage-polyfill/index",["exports","@glimmer/tracking","@ember/debug"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.createStorage=function(e,t=s){return new n(e,t)},e.getValue=function(e){return e._value},e.setValue=function(e,t){const{_isEqual:r,_lastValue:i}=e -r(t,i)||(e._value=e._lastValue=t)} -var i=function(e,t,r,i){var n,s=arguments.length,a=s<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,r,i) -else for(var o=e.length-1;o>=0;o--)(n=e[o])&&(a=(s<3?n(a):s>3?n(t,r,a):n(t,r))||a) -return s>3&&a&&Object.defineProperty(t,r,a),a} -class n{constructor(e,t){this._value=this._lastValue=e,this._isEqual=t}}function s(e,t){return e===t}i([t.tracked],n.prototype,"_value",void 0)})) diff --git a/ember/ember-3.28.8.template-compiler.js b/ember/ember-3.28.8.template-compiler.js deleted file mode 100644 index 20a645e..0000000 --- a/ember/ember-3.28.8.template-compiler.js +++ /dev/null @@ -1,23704 +0,0 @@ -(function() { -/*! - * @overview Ember - JavaScript Application Framework - * @copyright Copyright 2011-2021 Tilde Inc. and contributors - * Portions Copyright 2006-2011 Strobe Inc. - * Portions Copyright 2008-2011 Apple Inc. All rights reserved. - * @license Licensed under MIT license - * See https://raw.github.com/emberjs/ember.js/master/LICENSE - * @version 3.28.8 - */ - -/* eslint-disable no-var */ -/* globals global globalThis self */ -var define, require; - -(function () { - var globalObj = - typeof globalThis !== 'undefined' - ? globalThis - : typeof self !== 'undefined' - ? self - : typeof window !== 'undefined' - ? window - : typeof global !== 'undefined' - ? global - : null; - - if (globalObj === null) { - throw new Error('unable to locate global object'); - } - - if (typeof globalObj.define === 'function' && typeof globalObj.require === 'function') { - define = globalObj.define; - require = globalObj.require; - - return; - } - - var registry = Object.create(null); - var seen = Object.create(null); - - function missingModule(name, referrerName) { - if (referrerName) { - throw new Error('Could not find module ' + name + ' required by: ' + referrerName); - } else { - throw new Error('Could not find module ' + name); - } - } - - function internalRequire(_name, referrerName) { - var name = _name; - var mod = registry[name]; - - if (!mod) { - name = name + '/index'; - mod = registry[name]; - } - - var exports = seen[name]; - - if (exports !== undefined) { - return exports; - } - - exports = seen[name] = {}; - - if (!mod) { - missingModule(_name, referrerName); - } - - var deps = mod.deps; - var callback = mod.callback; - var reified = new Array(deps.length); - - for (var i = 0; i < deps.length; i++) { - if (deps[i] === 'exports') { - reified[i] = exports; - } else if (deps[i] === 'require') { - reified[i] = require; - } else { - reified[i] = require(deps[i], name); - } - } - - callback.apply(this, reified); - - return exports; - } - - require = function (name) { - return internalRequire(name, null); - }; - - // eslint-disable-next-line no-unused-vars - define = function (name, deps, callback) { - registry[name] = { deps: deps, callback: callback }; - }; - - // setup `require` module - require['default'] = require; - - require.has = function registryHas(moduleName) { - return Boolean(registry[moduleName]) || Boolean(registry[moduleName + '/index']); - }; - - require._eak_seen = require.entries = registry; -})(); - -define("@ember/-internals/browser-environment/index", ["exports"], function (_exports) { - "use strict"; - - Object.defineProperty(_exports, "__esModule", { - value: true - }); - _exports.hasDOM = _exports.isIE = _exports.isFirefox = _exports.isChrome = _exports.userAgent = _exports.history = _exports.location = _exports.window = void 0; - // check if window exists and actually is the global - var hasDom = typeof self === 'object' && self !== null && self.Object === Object && typeof Window !== 'undefined' && self.constructor === Window && typeof document === 'object' && document !== null && self.document === document && typeof location === 'object' && location !== null && self.location === location && typeof history === 'object' && history !== null && self.history === history && typeof navigator === 'object' && navigator !== null && self.navigator === navigator && typeof navigator.userAgent === 'string'; - _exports.hasDOM = hasDom; - var window = hasDom ? self : null; - _exports.window = window; - var location$1 = hasDom ? self.location : null; - _exports.location = location$1; - var history$1 = hasDom ? self.history : null; - _exports.history = history$1; - var userAgent = hasDom ? self.navigator.userAgent : 'Lynx (textmode)'; - _exports.userAgent = userAgent; - var isChrome = hasDom ? typeof chrome === 'object' && !(typeof opera === 'object') : false; - _exports.isChrome = isChrome; - var isFirefox = hasDom ? typeof InstallTrigger !== 'undefined' : false; - _exports.isFirefox = isFirefox; - var isIE = hasDom ? typeof MSInputMethodContext !== 'undefined' && typeof documentMode !== 'undefined' : false; - _exports.isIE = isIE; -}); -define("@ember/-internals/environment/index", ["exports", "@ember/deprecated-features"], function (_exports, _deprecatedFeatures) { - "use strict"; - - Object.defineProperty(_exports, "__esModule", { - value: true - }); - _exports.getLookup = getLookup; - _exports.setLookup = setLookup; - _exports.getENV = getENV; - _exports.ENV = _exports.context = _exports.global = void 0; - - // from lodash to catch fake globals - function checkGlobal(value) { - return value && value.Object === Object ? value : undefined; - } // element ids can ruin global miss checks - - - function checkElementIdShadowing(value) { - return value && value.nodeType === undefined ? value : undefined; - } // export real global - - - var global$1 = checkGlobal(checkElementIdShadowing(typeof global === 'object' && global)) || checkGlobal(typeof self === 'object' && self) || checkGlobal(typeof window === 'object' && window) || typeof mainContext !== 'undefined' && mainContext || // set before strict mode in Ember loader/wrapper - new Function('return this')(); // eval outside of strict mode - - _exports.global = global$1; - - var context = function (global, Ember) { - return Ember === undefined ? { - imports: global, - exports: global, - lookup: global - } : { - // import jQuery - imports: Ember.imports || global, - // export Ember - exports: Ember.exports || global, - // search for Namespaces - lookup: Ember.lookup || global - }; - }(global$1, global$1.Ember); - - _exports.context = context; - - function getLookup() { - return context.lookup; - } - - function setLookup(value) { - context.lookup = value; - } - /** - The hash of environment variables used to control various configuration - settings. To specify your own or override default settings, add the - desired properties to a global hash named `EmberENV` (or `ENV` for - backwards compatibility with earlier versions of Ember). The `EmberENV` - hash must be created before loading Ember. - - @class EmberENV - @type Object - @public - */ - - - var ENV = { - ENABLE_OPTIONAL_FEATURES: false, - - /** - Determines whether Ember should add to `Array`, `Function`, and `String` - native object prototypes, a few extra methods in order to provide a more - friendly API. - We generally recommend leaving this option set to true however, if you need - to turn it off, you can add the configuration property - `EXTEND_PROTOTYPES` to `EmberENV` and set it to `false`. - Note, when disabled (the default configuration for Ember Addons), you will - instead have to access all methods and functions from the Ember - namespace. - @property EXTEND_PROTOTYPES - @type Boolean - @default true - @for EmberENV - @public - */ - EXTEND_PROTOTYPES: { - Array: true, - Function: true, - String: true - }, - - /** - The `LOG_STACKTRACE_ON_DEPRECATION` property, when true, tells Ember to log - a full stack trace during deprecation warnings. - @property LOG_STACKTRACE_ON_DEPRECATION - @type Boolean - @default true - @for EmberENV - @public - */ - LOG_STACKTRACE_ON_DEPRECATION: true, - - /** - The `LOG_VERSION` property, when true, tells Ember to log versions of all - dependent libraries in use. - @property LOG_VERSION - @type Boolean - @default true - @for EmberENV - @public - */ - LOG_VERSION: true, - RAISE_ON_DEPRECATION: false, - STRUCTURED_PROFILE: false, - - /** - Whether to insert a `
` wrapper around the - application template. See RFC #280. - This is not intended to be set directly, as the implementation may change in - the future. Use `@ember/optional-features` instead. - @property _APPLICATION_TEMPLATE_WRAPPER - @for EmberENV - @type Boolean - @default true - @private - */ - _APPLICATION_TEMPLATE_WRAPPER: true, - - /** - Whether to use Glimmer Component semantics (as opposed to the classic "Curly" - components semantics) for template-only components. See RFC #278. - This is not intended to be set directly, as the implementation may change in - the future. Use `@ember/optional-features` instead. - @property _TEMPLATE_ONLY_GLIMMER_COMPONENTS - @for EmberENV - @type Boolean - @default false - @private - */ - _TEMPLATE_ONLY_GLIMMER_COMPONENTS: false, - - /** - Whether to perform extra bookkeeping needed to make the `captureRenderTree` - API work. - This has to be set before the ember JavaScript code is evaluated. This is - usually done by setting `window.EmberENV = { _DEBUG_RENDER_TREE: true };` - before the "vendor" `'; - }; - - return EventedTokenizer; - }(); - - _exports.EventedTokenizer = EventedTokenizer; - - var Tokenizer = - /** @class */ - function () { - function Tokenizer(entityParser, options) { - if (options === void 0) { - options = {}; - } - - this.options = options; - this.token = null; - this.startLine = 1; - this.startColumn = 0; - this.tokens = []; - this.tokenizer = new EventedTokenizer(this, entityParser, options.mode); - this._currentAttribute = undefined; - } - - Tokenizer.prototype.tokenize = function (input) { - this.tokens = []; - this.tokenizer.tokenize(input); - return this.tokens; - }; - - Tokenizer.prototype.tokenizePart = function (input) { - this.tokens = []; - this.tokenizer.tokenizePart(input); - return this.tokens; - }; - - Tokenizer.prototype.tokenizeEOF = function () { - this.tokens = []; - this.tokenizer.tokenizeEOF(); - return this.tokens[0]; - }; - - Tokenizer.prototype.reset = function () { - this.token = null; - this.startLine = 1; - this.startColumn = 0; - }; - - Tokenizer.prototype.current = function () { - var token = this.token; - - if (token === null) { - throw new Error('token was unexpectedly null'); - } - - if (arguments.length === 0) { - return token; - } - - for (var i = 0; i < arguments.length; i++) { - if (token.type === arguments[i]) { - return token; - } - } - - throw new Error("token type was unexpectedly " + token.type); - }; - - Tokenizer.prototype.push = function (token) { - this.token = token; - this.tokens.push(token); - }; - - Tokenizer.prototype.currentAttribute = function () { - return this._currentAttribute; - }; - - Tokenizer.prototype.addLocInfo = function () { - if (this.options.loc) { - this.current().loc = { - start: { - line: this.startLine, - column: this.startColumn - }, - end: { - line: this.tokenizer.line, - column: this.tokenizer.column - } - }; - } - - this.startLine = this.tokenizer.line; - this.startColumn = this.tokenizer.column; - }; // Data - - - Tokenizer.prototype.beginData = function () { - this.push({ - type: "Chars" - /* Chars */ - , - chars: '' - }); - }; - - Tokenizer.prototype.appendToData = function (char) { - this.current("Chars" - /* Chars */ - ).chars += char; - }; - - Tokenizer.prototype.finishData = function () { - this.addLocInfo(); - }; // Comment - - - Tokenizer.prototype.beginComment = function () { - this.push({ - type: "Comment" - /* Comment */ - , - chars: '' - }); - }; - - Tokenizer.prototype.appendToCommentData = function (char) { - this.current("Comment" - /* Comment */ - ).chars += char; - }; - - Tokenizer.prototype.finishComment = function () { - this.addLocInfo(); - }; // Tags - basic - - - Tokenizer.prototype.tagOpen = function () {}; - - Tokenizer.prototype.beginStartTag = function () { - this.push({ - type: "StartTag" - /* StartTag */ - , - tagName: '', - attributes: [], - selfClosing: false - }); - }; - - Tokenizer.prototype.beginEndTag = function () { - this.push({ - type: "EndTag" - /* EndTag */ - , - tagName: '' - }); - }; - - Tokenizer.prototype.finishTag = function () { - this.addLocInfo(); - }; - - Tokenizer.prototype.markTagAsSelfClosing = function () { - this.current("StartTag" - /* StartTag */ - ).selfClosing = true; - }; // Tags - name - - - Tokenizer.prototype.appendToTagName = function (char) { - this.current("StartTag" - /* StartTag */ - , "EndTag" - /* EndTag */ - ).tagName += char; - }; // Tags - attributes - - - Tokenizer.prototype.beginAttribute = function () { - this._currentAttribute = ['', '', false]; - }; - - Tokenizer.prototype.appendToAttributeName = function (char) { - this.currentAttribute()[0] += char; - }; - - Tokenizer.prototype.beginAttributeValue = function (isQuoted) { - this.currentAttribute()[2] = isQuoted; - }; - - Tokenizer.prototype.appendToAttributeValue = function (char) { - this.currentAttribute()[1] += char; - }; - - Tokenizer.prototype.finishAttributeValue = function () { - this.current("StartTag" - /* StartTag */ - ).attributes.push(this._currentAttribute); - }; - - Tokenizer.prototype.reportSyntaxError = function (message) { - this.current().syntaxError = message; - }; - - return Tokenizer; - }(); - - _exports.Tokenizer = Tokenizer; - - function tokenize(input, options) { - var tokenizer = new Tokenizer(new EntityParser(namedCharRefs), options); - return tokenizer.tokenize(input); - } -}); -(function (m) { if (typeof module === "object" && module.exports) { module.exports = m } }(require("ember-template-compiler"))); -}()); -//# sourceMappingURL=ember-template-compiler.map diff --git a/ember/ember-4.0.1.prod.js b/ember/ember-4.0.1.prod.js deleted file mode 100644 index d2b9fa3..0000000 --- a/ember/ember-4.0.1.prod.js +++ /dev/null @@ -1,3381 +0,0 @@ -window.EmberENV=function(e,t){for(var r in t)e[r]=t[r] -return e}(window.EmberENV||{},{EXTEND_PROTOTYPES:!1,FEATURES:{},_APPLICATION_TEMPLATE_WRAPPER:!1,_DEFAULT_ASYNC_OBSERVERS:!0,_JQUERY_INTEGRATION:!1,_TEMPLATE_ONLY_GLIMMER_COMPONENTS:!0}) -var loader,define,requireModule,require,requirejs,runningTests=!1 -if(function(e){"use strict" -function t(){var e=Object.create(null) -return e.__=void 0,delete e.__,e}var r={loader:loader,define:define,requireModule:requireModule,require:require,requirejs:requirejs} -requirejs=require=requireModule=function(e){for(var t=[],r=l(e,"(require)",t),n=t.length-1;n>=0;n--)t[n].exports() -return r.module.exports},loader={noConflict:function(t){var n,i -for(n in t)t.hasOwnProperty(n)&&r.hasOwnProperty(n)&&(i=t[n],e[i]=e[n],e[n]=r[n])},makeDefaultExport:!0} -var n=t(),i=(t(),0) -var a=["require","exports","module"] -function s(e,t,r,n){this.uuid=i++,this.id=e,this.deps=!t.length&&r.length?a:t,this.module={exports:{}},this.callback=r,this.hasExportsAsDep=!1,this.isAlias=n,this.reified=new Array(t.length),this.state="new"}function o(){}function u(e){this.id=e}function l(e,t,r){for(var i=n[e]||n[e+"/index"];i&&i.isAlias;)i=n[i.id]||n[i.id+"/index"] -return i||function(e,t){throw new Error("Could not find module `"+e+"` imported from `"+t+"`")}(e,t),r&&"pending"!==i.state&&"finalized"!==i.state&&(i.findDeps(r),r.push(i)),i}function c(e,t){if("."!==e.charAt(0))return e -for(var r=e.split("/"),n=t.split("/").slice(0,-1),i=0,a=r.length;i{if("object"==typeof e&&null!==e){for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&"EXTEND_PROTOTYPES"!==t&&"EMBER_LOAD_HOOKS"!==t){var r=a[t] -!0===r?a[t]=!1!==e[t]:!1===r&&(a[t]=!0===e[t])}var{EXTEND_PROTOTYPES:n}=e -void 0!==n&&(a.EXTEND_PROTOTYPES.Array="object"==typeof n&&null!==n?!1!==n.Array:!1!==n) -var{EMBER_LOAD_HOOKS:i}=e -if("object"==typeof i&&null!==i)for(var s in i)if(Object.prototype.hasOwnProperty.call(i,s)){var o=i[s] -Array.isArray(o)&&(a.EMBER_LOAD_HOOKS[s]=o.filter((e=>"function"==typeof e)))}var{FEATURES:u}=e -if("object"==typeof u&&null!==u)for(var l in u)Object.prototype.hasOwnProperty.call(u,l)&&(a.FEATURES[l]=!0===u[l]) -0}})(n.EmberENV)})),e("@ember/-internals/error-handling/index",["exports"],(function(e){"use strict" -var t -Object.defineProperty(e,"__esModule",{value:!0}),e.getDispatchOverride=function(){return r},e.getOnerror=function(){return t},e.onErrorTarget=void 0,e.setDispatchOverride=function(e){r=e},e.setOnerror=function(e){t=e} -var r -e.onErrorTarget={get onerror(){return t}}})),e("@ember/-internals/extension-support/index",["exports","@ember/-internals/extension-support/lib/data_adapter","@ember/-internals/extension-support/lib/container_debug_adapter"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ContainerDebugAdapter",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"DataAdapter",{enumerable:!0,get:function(){return t.default}})})),e("@ember/-internals/extension-support/lib/container_debug_adapter",["exports","@ember/string","@ember/-internals/runtime","@ember/-internals/owner"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=r.Object.extend({init(){this._super(...arguments),this.resolver=(0,n.getOwner)(this).lookup("resolver-for-debugging:main")},resolver:null,canCatalogEntriesByType:e=>"model"!==e&&"template"!==e,catalogEntriesByType(e){var n=(0,r.A)(r.Namespace.NAMESPACES),i=(0,r.A)(),a=new RegExp(`${(0,t.classify)(e)}$`) -return n.forEach((e=>{for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&a.test(n)){var s=e[n] -"class"===(0,r.typeOf)(s)&&i.push((0,t.dasherize)(n.replace(a,"")))}})),i}})})),e("@ember/-internals/extension-support/lib/data_adapter",["exports","@ember/-internals/owner","@ember/runloop","@ember/-internals/metal","@ember/string","@ember/-internals/runtime","@glimmer/validator"],(function(e,t,r,n,i,a,s){"use strict" -function o(e,t){if(Symbol.iterator in e)for(var r of e)t(r) -else e.forEach(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class u{getCacheForItem(e){var t=this.recordCaches.get(e) -if(!t){var r=!1 -t=(0,s.createCache)((()=>{r?this.updated.push(this.wrapRecord(e)):(this.added.push(this.wrapRecord(e)),r=!0)})),this.recordCaches.set(e,t)}return t}constructor(e,t,r,n,i,a){this.recordCaches=new Map,this.added=[],this.updated=[],this.removed=[],this.release=a,this.wrapRecord=i,this.recordArrayCache=(0,s.createCache)((()=>{var a=new Set;(0,s.consumeTag)((0,s.tagFor)(e,"[]")),o(e,(e=>{(0,s.getValue)(this.getCacheForItem(e)),a.add(e)})),(0,s.untrack)((()=>{this.recordCaches.forEach(((e,t)=>{a.has(t)||(this.removed.push(i(t)),this.recordCaches.delete(t))}))})),this.added.length>0&&(t(this.added),this.added=[]),this.updated.length>0&&(r(this.updated),this.updated=[]),this.removed.length>0&&(n(this.removed),this.removed=[])}))}revalidate(){(0,s.getValue)(this.recordArrayCache)}}class l{constructor(e,t,r){var n=!1 -this.cache=(0,s.createCache)((()=>{o(e,(()=>{})),(0,s.consumeTag)((0,s.tagFor)(e,"[]")),!0===n?t():n=!0})),this.release=r}revalidate(){(0,s.getValue)(this.cache)}}e.default=a.Object.extend({init(){this._super(...arguments),this.containerDebugAdapter=(0,t.getOwner)(this).lookup("container-debug-adapter:main"),this.releaseMethods=(0,a.A)(),this.recordsWatchers=new Map,this.typeWatchers=new Map,this.flushWatchers=null},attributeLimit:3,acceptsModelName:!0,getFilters:()=>(0,a.A)(),watchModelTypes(e,t){var r=this.getModelTypes(),n=(0,a.A)() -e(r.map((e=>{var r=e.klass,i=this.wrapModelType(r,e.name) -return n.push(this.observeModelType(e.name,t)),i}))) -var i=()=>{n.forEach((e=>e())),this.releaseMethods.removeObject(i)} -return this.releaseMethods.pushObject(i),i},_nameToClass(e){if("string"==typeof e){var r=(0,t.getOwner)(this).factoryFor(`model:${e}`) -e=r&&r.class}return e},watchRecords(e,t,r,n){var i=this._nameToClass(e),a=this.getRecords(i,e),{recordsWatchers:s}=this,o=s.get(a) -return o||(o=new u(a,t,r,n,(e=>this.wrapRecord(e)),(()=>{s.delete(a),this.updateFlushWatchers()})),s.set(a,o),this.updateFlushWatchers(),o.revalidate()),o.release},updateFlushWatchers(){null===this.flushWatchers?(this.typeWatchers.size>0||this.recordsWatchers.size>0)&&(this.flushWatchers=()=>{this.typeWatchers.forEach((e=>e.revalidate())),this.recordsWatchers.forEach((e=>e.revalidate()))},r._backburner.on("end",this.flushWatchers)):0===this.typeWatchers.size&&0===this.recordsWatchers.size&&(r._backburner.off("end",this.flushWatchers),this.flushWatchers=null)},willDestroy(){this._super(...arguments),this.typeWatchers.forEach((e=>e.release())),this.recordsWatchers.forEach((e=>e.release())),this.releaseMethods.forEach((e=>e())),this.flushWatchers&&r._backburner.off("end",this.flushWatchers)},detect:()=>!1,columnsForType:()=>(0,a.A)(),observeModelType(e,t){var r=this._nameToClass(e),n=this.getRecords(r,e),{typeWatchers:i}=this,a=i.get(n) -return a||(a=new l(n,(()=>{t([this.wrapModelType(r,e)])}),(()=>{i.delete(n),this.updateFlushWatchers()})),i.set(n,a),this.updateFlushWatchers(),a.revalidate()),a.release},wrapModelType(e,t){var r=this.getRecords(e,t) -return{name:t,count:(0,n.get)(r,"length"),columns:this.columnsForType(e),object:e}},getModelTypes(){var e,t=this.get("containerDebugAdapter") -return e=t.canCatalogEntriesByType("model")?t.catalogEntriesByType("model"):this._getObjectsOnNamespaces(),e=(0,a.A)(e).map((e=>({klass:this._nameToClass(e),name:e}))),e=(0,a.A)(e).filter((e=>this.detect(e.klass))),(0,a.A)(e)},_getObjectsOnNamespaces(){var e=(0,a.A)(a.Namespace.NAMESPACES),t=(0,a.A)() -return e.forEach((e=>{for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&this.detect(e[r])){var n=(0,i.dasherize)(r) -t.push(n)}})),t},getRecords:()=>(0,a.A)(),wrapRecord(e){var t={object:e} -return t.columnValues=this.getRecordColumnValues(e),t.searchKeywords=this.getRecordKeywords(e),t.filterValues=this.getRecordFilterValues(e),t.color=this.getRecordColor(e),t},getRecordColumnValues:()=>({}),getRecordKeywords:()=>(0,a.A)(),getRecordFilterValues:()=>({}),getRecordColor:()=>null})})),e("@ember/-internals/glimmer/index",["exports","@glimmer/opcode-compiler","@ember/-internals/owner","@ember/-internals/utils","@ember/debug","@glimmer/manager","@glimmer/reference","@glimmer/validator","@ember/-internals/metal","@ember/object","@ember/-internals/browser-environment","@ember/-internals/views","@ember/engine","@ember/instrumentation","@ember/service","@ember/string","@glimmer/destroyable","@ember/runloop","@glimmer/util","@glimmer/runtime","@ember/-internals/runtime","@ember/-internals/environment","@ember/-internals/container","@glimmer/node","@ember/-internals/glimmer","@glimmer/global-context","@ember/-internals/routing","@glimmer/program","rsvp"],(function(e,t,r,n,i,a,s,o,u,l,c,d,h,p,f,m,g,v,b,y,_,w,O,E,R,T,P,C,x){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.Component=void 0,Object.defineProperty(e,"DOMChanges",{enumerable:!0,get:function(){return y.DOMChanges}}),Object.defineProperty(e,"DOMTreeConstruction",{enumerable:!0,get:function(){return y.DOMTreeConstruction}}),e.LinkTo=e.Input=e.Helper=void 0,Object.defineProperty(e,"NodeDOMTreeConstruction",{enumerable:!0,get:function(){return E.NodeDOMTreeConstruction}}),e.Textarea=e.SafeString=e.RootTemplate=e.Renderer=e.OutletView=void 0,e._resetRenderers=function(){rr.length=0},e.componentCapabilities=void 0,e.escapeExpression=function(e){if("string"!=typeof e){if(e&&e.toHTML)return e.toHTML() -if(null==e)return"" -if(!e)return String(e) -e=String(e)}if(!at.test(e))return e -return e.replace(st,ot)},e.getTemplate=function(e){if(Object.prototype.hasOwnProperty.call(ur,e))return ur[e]},e.getTemplates=function(){return ur},e.hasTemplate=function(e){return Object.prototype.hasOwnProperty.call(ur,e)},e.helper=function(e){return new tt(e)},e.htmlSafe=function(e){null==e?e="":"string"!=typeof e&&(e=String(e)) -return new nt(e)},e.isHTMLSafe=ut,Object.defineProperty(e,"isSerializationFirstNode",{enumerable:!0,get:function(){return y.isSerializationFirstNode}}),e.modifierCapabilities=void 0,e.renderSettled=function(){null===ar&&(ar=x.default.defer(),(0,v._getCurrentRunLoop)()||v._backburner.schedule("actions",null,ir)) -return ar.promise},e.setComponentManager=function(e,t){return(0,a.setComponentManager)(e,t)},e.setTemplate=function(e,t){return ur[e]=t},e.setTemplates=function(e){ur=e},e.setupApplicationRegistry=function(e){e.register("service:-dom-builder",{create(e){switch((0,r.getOwner)(e).lookup("-environment:main")._renderMode){case"serialize":return E.serializeBuilder.bind(null) -case"rehydrate":return y.rehydrationBuilder.bind(null) -default:return y.clientBuilder.bind(null)}}}),e.register(O.privatize`template:-root`,A),e.register("renderer:-dom",or)},e.setupEngineRegistry=function(e){e.optionsForType("template",{instantiate:!1}),e.register("view:-outlet",hr),e.register("template:-outlet",lr),e.optionsForType("helper",{instantiate:!1}),e.register("component:input",K),e.register("component:link-to",pe),e.register("component:textarea",ve),w.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS||e.register(O.privatize`component:-default`,Qe)},Object.defineProperty(e,"template",{enumerable:!0,get:function(){return t.templateFactory}}),Object.defineProperty(e,"templateCacheCounters",{enumerable:!0,get:function(){return t.templateCacheCounters}}) -var A=e.RootTemplate=(0,t.templateFactory)({id:"9BtKrod8",block:'[[[46,[30,0],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/root.hbs",isStrictMode:!1}),k=(0,t.templateFactory)({id:"OGSIkgXP",block:'[[[11,"input"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,4,[30,0,["type"]]],[16,"checked",[30,0,["checked"]]],[16,2,[30,0,["value"]]],[4,[38,0],["change",[30,0,["change"]]],null],[4,[38,0],["input",[30,0,["input"]]],null],[4,[38,0],["keyup",[30,0,["keyUp"]]],null],[4,[38,0],["paste",[30,0,["valueDidChange"]]],null],[4,[38,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,["on"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/input.hbs",isStrictMode:!1}) -function S(){}class M{constructor(e,t,n){this.owner=e,this.args=t,this.caller=n,(0,r.setOwner)(this,e)}static toString(){return"internal component"}get id(){return(0,n.guidFor)(this)}get class(){return"ember-view"}validateArguments(){for(var e of Object.keys(this.args.named))this.isSupportedArgument(e)||this.onUnsupportedArgument(e)}named(e){var t=this.args.named[e] -return t?(0,s.valueForRef)(t):void 0}positional(e){var t=this.args.positional[e] -return t?(0,s.valueForRef)(t):void 0}listenerFor(e){var t=this.named(e) -return t||S}isSupportedArgument(e){return!1}onUnsupportedArgument(e){}toString(){return`<${this.constructor}:${(0,n.guidFor)(this)}>`}}var j=new WeakMap -function N(e,t){var r={create(){throw(0,i.assert)("Use constructor instead of create")},toString:()=>e.toString()} -return j.set(r,e),(0,a.setInternalComponentManager)(D,r),(0,a.setComponentTemplate)(t,r),r}var I={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!1,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -var D=new class{getCapabilities(){return I}create(e,t,r,n,i,a){var u,l=new(u=t,j.get(u))(e,r.capture(),(0,s.valueForRef)(a)) -return(0,o.untrack)(l.validateArguments.bind(l)),l}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}getDebugName(e){return e.toString()}getSelf(e){return(0,s.createConstRef)(e,"this")}getDestroyable(e){return e}},F=function(e,t,r,n){var i,a=arguments.length,s=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) -else for(var o=e.length-1;o>=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,r,s):i(t,r))||s) -return a>3&&s&&Object.defineProperty(t,r,s),s},L=Object.freeze({}) -function B(e){return function(e){return e.target}(e).value}function U(e){return void 0===e?new $(void 0):(0,s.isConstRef)(e)?new $((0,s.valueForRef)(e)):(0,s.isUpdatableRef)(e)?new V(e):new z(e)}class ${constructor(e){this.value=e}get(){return this.value}set(e){this.value=e}}F([u.tracked],$.prototype,"value",void 0) -class V{constructor(e){this.reference=e}get(){return(0,s.valueForRef)(this.reference)}set(e){(0,s.updateRef)(this.reference,e)}}class z{constructor(e){this.lastUpstreamValue=L,this.upstream=new V(e)}get(){var e=this.upstream.get() -return e!==this.lastUpstreamValue&&(this.lastUpstreamValue=e,this.local=new $(e)),this.local.get()}set(e){this.local.set(e)}}class H extends M{constructor(){super(...arguments),this._value=U(this.args.named.value)}validateArguments(){super.validateArguments()}get value(){return this._value.get()}set value(e){this._value.set(e)}valueDidChange(e){this.value=B(e)}change(e){this.valueDidChange(e)}input(e){this.valueDidChange(e)}keyUp(e){switch(e.key){case"Enter":this.listenerFor("enter")(e),this.listenerFor("insert-newline")(e) -break -case"Escape":this.listenerFor("escape-press")(e)}}listenerFor(e){var t,r=super.listenerFor(e) -return this.isVirtualEventListener(e,r)?(t=r,e=>t(B(e),e)):r}isVirtualEventListener(e,t){return-1!==["enter","insert-newline","escape-press"].indexOf(e)}}F([l.action],H.prototype,"valueDidChange",null),F([l.action],H.prototype,"keyUp",null) -var q,W=function(e,t,r,n){var i,a=arguments.length,s=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) -else for(var o=e.length-1;o>=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,r,s):i(t,r))||s) -return a>3&&s&&Object.defineProperty(t,r,s),s} -if(c.hasDOM){var G=Object.create(null),Y=document.createElement("input") -G[""]=!1,G.text=!0,G.checkbox=!0,q=e=>{var t=G[e] -if(void 0===t){try{Y.type=e,t=Y.type===e}catch(r){t=!1}finally{Y.type="text"}G[e]=t}return t}}else q=e=>""!==e -class Q extends H{constructor(){super(...arguments),this._checked=U(this.args.named.checked)}static toString(){return"Input"}get class(){return this.isCheckbox?"ember-checkbox ember-view":"ember-text-field ember-view"}get type(){var e=this.named("type") -return null==e?"text":q(e)?e:"text"}get isCheckbox(){return"checkbox"===this.named("type")}get checked(){return this.isCheckbox?this._checked.get():void 0}set checked(e){this._checked.set(e)}change(e){this.isCheckbox?this.checkedDidChange(e):super.change(e)}input(e){this.isCheckbox||super.input(e)}checkedDidChange(e){var t=e.target -this.checked=t.checked}isSupportedArgument(e){return-1!==["type","value","checked","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}W([l.action],Q.prototype,"change",null),W([l.action],Q.prototype,"input",null),W([l.action],Q.prototype,"checkedDidChange",null) -var K=e.Input=N(Q,k),J=(0,t.templateFactory)({id:"CVwkBtGh",block:'[[[11,3],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[16,"role",[30,0,["role"]]],[16,"title",[30,0,["title"]]],[16,"rel",[30,0,["rel"]]],[16,"tabindex",[30,0,["tabindex"]]],[16,"target",[30,0,["target"]]],[17,1],[16,6,[30,0,["href"]]],[4,[38,0],["click",[30,0,["click"]]],null],[12],[18,2,null],[13]],["&attrs","&default"],false,["on","yield"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/link-to.hbs",isStrictMode:!1}),X=function(e,t,r,n){var i,a=arguments.length,s=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) -else for(var o=e.length-1;o>=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,r,s):i(t,r))||s) -return a>3&&s&&Object.defineProperty(t,r,s),s},Z=[],ee={} -function te(e){return null==e}function re(e){return!te(e)}function ne(e){return"object"==typeof e&&null!==e&&!0===e.isQueryParams}(0,i.debugFreeze)(Z),(0,i.debugFreeze)(ee) -class ie extends M{constructor(){super(...arguments),this.currentRouteCache=(0,o.createCache)((()=>((0,o.consumeTag)((0,o.tagFor)(this.routing,"currentState")),(0,o.untrack)((()=>this.routing.currentRouteName)))))}static toString(){return"LinkTo"}validateArguments(){super.validateArguments()}get class(){var e="ember-view" -return this.isActive?(e+=this.classFor("active"),!1===this.willBeActive&&(e+=" ember-transitioning-out")):this.willBeActive&&(e+=" ember-transitioning-in"),this.isLoading&&(e+=this.classFor("loading")),this.isDisabled&&(e+=this.classFor("disabled")),e}get href(){if(this.isLoading)return"#" -var{routing:e,route:t,models:r,query:n}=this -return(0,o.consumeTag)((0,o.tagFor)(e,"currentState")),e.generateURL(t,r,n)}click(e){if((0,d.isSimpleClick)(e)){var t=e.currentTarget -if((""===t.target||"_self"===t.target)&&(this.preventDefault(e),!this.isDisabled&&!this.isLoading)){var{routing:r,route:n,models:i,query:a,replace:s}=this,o={routeName:n,queryParams:a,transition:void 0};(0,p.flaggedInstrument)("interaction.link-to",o,(()=>{o.transition=r.transitionTo(n,i,a,s)}))}}}get route(){if("route"in this.args.named){var e=this.named("route") -return e&&this.namespaceRoute(e)}return this.currentRoute}get currentRoute(){return(0,o.getValue)(this.currentRouteCache)}get models(){if("models"in this.args.named){var e=this.named("models") -return e}return"model"in this.args.named?[this.named("model")]:Z}get query(){if("query"in this.args.named){var e=this.named("query") -return Object.assign({},e)}return ee}get replace(){return!0===this.named("replace")}get isActive(){return this.isActiveForState(this.routing.currentState)}get willBeActive(){var e=this.routing.currentState,t=this.routing.targetState -return e===t?null:this.isActiveForState(t)}get isLoading(){return te(this.route)||this.models.some((e=>te(e)))}get isDisabled(){return Boolean(this.named("disabled"))}get isEngine(){return void 0!==(0,h.getEngineParent)(this.owner)}get engineMountPoint(){return this.owner.mountPoint}classFor(e){var t=this.named(`${e}Class`) -return!0===t||te(t)?` ${e}`:t?` ${t}`:""}namespaceRoute(e){var{engineMountPoint:t}=this -return void 0===t?e:"application"===e?t:`${t}.${e}`}isActiveForState(e){if(!re(e))return!1 -if(this.isLoading)return!1 -var t=this.named("current-when") -if("boolean"==typeof t)return t -if("string"==typeof t){var{models:r,routing:n}=this -return t.split(" ").some((t=>n.isActiveForRoute(r,void 0,this.namespaceRoute(t),e)))}var{route:i,models:a,query:s,routing:o}=this -return o.isActiveForRoute(a,s,i,e)}preventDefault(e){e.preventDefault()}isSupportedArgument(e){return-1!==["route","model","models","query","replace","disabled","current-when","activeClass","loadingClass","disabledClass"].indexOf(e)||super.isSupportedArgument(e)}}X([(0,f.inject)("-routing")],ie.prototype,"routing",void 0),X([l.action],ie.prototype,"click",null) -var{prototype:ae}=ie,se=(e,t)=>e?Object.getOwnPropertyDescriptor(e,t)||se(Object.getPrototypeOf(e),t):null,oe=ae.onUnsupportedArgument -Object.defineProperty(ae,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(e){"href"===e||oe.call(this,e)}}) -var ue=se(ae,"models"),le=ue.get -Object.defineProperty(ae,"models",{configurable:!0,enumerable:!1,get:function(){var e=le.call(this) -return e.length>0&&!("query"in this.args.named)&&ne(e[e.length-1])&&(e=e.slice(0,-1)),e}}) -var ce=se(ae,"query"),de=ce.get -Object.defineProperty(ae,"query",{configurable:!0,enumerable:!1,get:function(){var e -if("query"in this.args.named){var t=de.call(this) -return ne(t)?null!==(e=t.values)&&void 0!==e?e:ee:t}var r=le.call(this) -if(r.length>0){var n=r[r.length-1] -if(ne(n)&&null!==n.values)return n.values}return ee}}) -var he=ae.onUnsupportedArgument -Object.defineProperty(ae,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(e){"params"!==e&&he.call(this,e)}}) -var pe=e.LinkTo=N(ie,J),fe=(0,t.templateFactory)({id:"OpzctQXz",block:'[[[11,"textarea"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,2,[30,0,["value"]]],[4,[38,0],["change",[30,0,["change"]]],null],[4,[38,0],["input",[30,0,["input"]]],null],[4,[38,0],["keyup",[30,0,["keyUp"]]],null],[4,[38,0],["paste",[30,0,["valueDidChange"]]],null],[4,[38,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,["on"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/textarea.hbs",isStrictMode:!1}),me=function(e,t,r,n){var i,a=arguments.length,s=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) -else for(var o=e.length-1;o>=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,r,s):i(t,r))||s) -return a>3&&s&&Object.defineProperty(t,r,s),s} -class ge extends H{static toString(){return"Textarea"}get class(){return"ember-text-area ember-view"}change(e){super.change(e)}input(e){super.input(e)}isSupportedArgument(e){return-1!==["type","value","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}me([l.action],ge.prototype,"change",null),me([l.action],ge.prototype,"input",null) -var ve=e.Textarea=N(ge,fe) -function be(e){return"function"==typeof e}function ye(e,t){return"attrs"===t[0]&&(t.shift(),1===t.length)?(0,s.childRefFor)(e,t[0]):(0,s.childRefFromParts)(e,t)}function _e(e){var t=e.indexOf(":") -if(-1===t)return[e,e,!0] -var r=e.substring(0,t),n=e.substring(t+1) -return[r,n,!1]}function we(e,t,r,n){var[i,a,o]=r -if("id"===a){var l=(0,u.get)(e,i) -return null==l&&(l=e.elementId),l=(0,s.createPrimitiveRef)(l),void n.setAttribute("id",l,!0,null)}var c=i.indexOf(".")>-1,d=c?ye(t,i.split(".")):(0,s.childRefFor)(t,i) -n.setAttribute(a,d,!1,null)}function Oe(e,t,r){var[n,i,a]=t.split(":") -if(""===n)r.setAttribute("class",(0,s.createPrimitiveRef)(i),!0,null) -else{var o,u=n.indexOf(".")>-1,l=u?n.split("."):[],c=u?ye(e,l):(0,s.childRefFor)(e,n) -o=void 0===i?Ee(c,u?l[l.length-1]:n):function(e,t,r){return(0,s.createComputeRef)((()=>(0,s.valueForRef)(e)?t:r))}(c,i,a),r.setAttribute("class",o,!1,null)}}function Ee(e,t){var r -return(0,s.createComputeRef)((()=>{var n=(0,s.valueForRef)(e) -return!0===n?r||(r=(0,m.dasherize)(t)):n||0===n?String(n):null}))}function Re(){}class Te{constructor(e,t,r,n,i,a){this.component=e,this.args=t,this.argsTag=r,this.finalizer=n,this.hasWrappedElement=i,this.isInteractive=a,this.classRef=null,this.classRef=null,this.argsRevision=null===t?0:(0,o.valueForTag)(r),this.rootRef=(0,s.createConstRef)(e,"this"),(0,g.registerDestructor)(this,(()=>this.willDestroy()),!0),(0,g.registerDestructor)(this,(()=>this.component.destroy()))}willDestroy(){var{component:e,isInteractive:t}=this -if(t){(0,o.beginUntrackFrame)(),e.trigger("willDestroyElement"),e.trigger("willClearRender"),(0,o.endUntrackFrame)() -var r=(0,d.getViewElement)(e) -r&&((0,d.clearElementView)(r),(0,d.clearViewElement)(e))}e.renderer.unregister(e)}finalize(){var{finalizer:e}=this -e(),this.finalizer=Re}}function Pe(e){return(0,a.setInternalHelperManager)(e,{})}var Ce=new b._WeakSet,xe=Pe((e=>{var t,{named:r,positional:n}=e,[i,a,...o]=n,l=a.debugLabel,c="target"in r?r.target:i,d=function(e,t){var r,n -t.length>0&&(r=e=>t.map(s.valueForRef).concat(e)) -e&&(n=t=>{var r=(0,s.valueForRef)(e) -return r&&t.length>0&&(t[0]=(0,u.get)(t[0],r)),t}) -return r&&n?e=>n(r(e)):r||n||Ae}("value"in r&&r.value,o) -return t=(0,s.isInvokableRef)(a)?ke(a,a,Se,d,l):function(e,t,r,n,i){0 -return(...a)=>ke(e,(0,s.valueForRef)(t),(0,s.valueForRef)(r),n,i)(...a)}((0,s.valueForRef)(i),c,a,d,l),Ce.add(t),(0,s.createUnboundRef)(t,"(result of an `action` helper)")})) -function Ae(e){return e}function ke(e,t,r,n,i){var a,s,o=typeof r -return"string"===o?(a=t,s=t.actions&&t.actions[r]):"function"===o&&(a=e,s=r),(...e)=>{var t={target:a,args:e,label:"@glimmer/closure-action"} -return(0,p.flaggedInstrument)("interaction.ember-action",t,(()=>(0,v.join)(a,s,...n(e))))}}function Se(e){(0,s.updateRef)(this,e)}function Me(e){var t=Object.create(null),r=Object.create(null) -for(var n in r[De]=e,e){var i=e[n],a=(0,s.valueForRef)(i),o="function"==typeof a&&Ce.has(a);(0,s.isUpdatableRef)(i)&&!o?t[n]=new Ne(i,a):t[n]=a,r[n]=a}return r.attrs=t,r}var je=(0,n.symbol)("REF") -class Ne{constructor(e,t){this[d.MUTABLE_CELL]=!0,this[je]=e,this.value=t}update(e){(0,s.updateRef)(this[je],e)}}var Ie=function(e,t){var r={} -for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]) -if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0 -for(n=Object.getOwnPropertySymbols(e);i(0,y.reifyPositional)(c)))},Object.assign(u,t.named.capture())}else{if(!(Array.isArray(l)&&l.length>0))return null -var d=Math.min(l.length,t.positional.length) -u={},Object.assign(u,t.named.capture()) -for(var h=0;h{u.setAttribute("class",(0,s.createPrimitiveRef)(e),!1,null)})),h&&h.length&&h.forEach((e=>{Oe(i,e,u)})),u.setAttribute("class",$e,!1,null),"ariaRole"in e&&u.setAttribute("role",(0,s.childRefFor)(i,"ariaRole"),!1,null),e._transitionTo("hasElement"),r&&((0,o.beginUntrackFrame)(),e.trigger("willInsertElement"),(0,o.endUntrackFrame)())}didRenderLayout(e,t){e.component[Ue]=t,e.finalize()}didCreate({component:e,isInteractive:t}){t&&(e._transitionTo("inDOM"),e.trigger("didInsertElement"),e.trigger("didRender"))}update(e){var{component:t,args:r,argsTag:n,argsRevision:i,isInteractive:a}=e -if(e.finalizer=(0,p._instrumentStart)("render.component",He,t),(0,o.beginUntrackFrame)(),null!==r&&!(0,o.validateTag)(n,i)){(0,o.beginTrackFrame)() -var s=Me(r) -n=e.argsTag=(0,o.endTrackFrame)(),e.argsRevision=(0,o.valueForTag)(n),t[Be]=!0,t.setProperties(s),t[Be]=!1,t.trigger("didUpdateAttrs"),t.trigger("didReceiveAttrs")}a&&(t.trigger("willUpdate"),t.trigger("willRender")),(0,o.endUntrackFrame)(),(0,o.consumeTag)(n),(0,o.consumeTag)(t[Le])}didUpdateLayout(e){e.finalize()}didUpdate({component:e,isInteractive:t}){t&&(e.trigger("didUpdate"),e.trigger("didRender"))}getDestroyable(e){return e}}function ze(e){return e.instrumentDetails({initialRender:!0})}function He(e){return e.instrumentDetails({initialRender:!1})}var qe={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!0,hasSubOwner:!1},We=new Ve -function Ge(e){return e===We}var Ye=new WeakMap,Qe=e.Component=d.CoreView.extend(d.ChildViewsSupport,d.ViewStateSupport,d.ClassNamesSupport,_.TargetActionSupport,d.ActionSupport,d.ViewMixin,{isComponent:!0,init(){this._super(...arguments),this[Be]=!1,this[Le]=(0,o.createTag)(),this[Ue]=null -var e=this._dispatcher -if(e){var t=Ye.get(e) -t||(t=new WeakSet,Ye.set(e,t)) -var r=Object.getPrototypeOf(this) -if(!t.has(r))e.lazyEvents.forEach(((t,r)=>{null!==t&&"function"==typeof this[t]&&e.setupHandlerForBrowserEvent(r)})),t.add(r)}},get _dispatcher(){if(void 0===this.__dispatcher){var e=(0,r.getOwner)(this) -e.lookup("-environment:main").isInteractive?this.__dispatcher=e.lookup("event_dispatcher:main"):this.__dispatcher=null}return this.__dispatcher},on(e){var t -return null===(t=this._dispatcher)||void 0===t||t.setupHandlerForEmberEvent(e),this._super(...arguments)},rerender(){(0,o.dirtyTag)(this[Le]),this._super()},[u.PROPERTY_DID_CHANGE](e,t){if(!this[Be]){var r=this[De],n=void 0!==r?r[e]:void 0 -void 0!==n&&(0,s.isUpdatableRef)(n)&&(0,s.updateRef)(n,2===arguments.length?t:(0,u.get)(this,e))}},getAttr(e){return this.get(e)},readDOMAttr(e){var t=(0,d.getViewElement)(this),r=t,n="http://www.w3.org/2000/svg"===r.namespaceURI,{type:i,normalized:a}=(0,y.normalizeProperty)(r,e) -return n||"attr"===i?r.getAttribute(a):r[a]},didReceiveAttrs(){},didRender(){},willRender(){},didUpdateAttrs(){},willUpdate(){},didUpdate(){}}) -Qe.toString=()=>"@ember/component",Qe.reopenClass({isComponentFactory:!0,positionalParams:[]}),(0,a.setInternalComponentManager)(We,Qe) -var Ke=(0,n.symbol)("RECOMPUTE_TAG"),Je=e.Helper=_.FrameworkObject.extend({init(){this._super(...arguments),this[Ke]=(0,o.createTag)()},recompute(){(0,v.join)((()=>(0,o.dirtyTag)(this[Ke])))}}),Xe=(0,n.symbol)("IS_CLASSIC_HELPER") -Je.isHelperFactory=!0,Je[Xe]=!0 -class Ze{constructor(e){this.capabilities=(0,a.helperCapabilities)("3.23",{hasValue:!0,hasDestroyable:!0}) -var t={};(0,r.setOwner)(t,e),this.ownerInjection=t}createHelper(e,t){return{instance:void 0===e.class?e.create(this.ownerInjection):e.create(),args:t}}getDestroyable({instance:e}){return e}getValue({instance:e,args:t}){var{positional:r,named:n}=t,i=e.compute(r,n) -return(0,o.consumeTag)(e[Ke]),i}getDebugName(e){return(0,n.getDebugName)(e.class.prototype)}}(0,a.setHelperManager)((e=>new Ze(e)),Je) -var et=(0,a.getInternalHelperManager)(Je) -class tt{constructor(e){this.compute=e,this.isHelperFactory=!0}create(){return{compute:this.compute}}}var rt=new class{constructor(){this.capabilities=(0,a.helperCapabilities)("3.23",{hasValue:!0})}createHelper(e,t){var{compute:r}=e -return()=>r.call(null,t.positional,t.named)}getValue(e){return e()}getDebugName(e){return(0,n.getDebugName)(e.compute)}};(0,a.setHelperManager)((()=>rt),tt.prototype) -class nt{constructor(e){this.string=e}toString(){return`${this.string}`}toHTML(){return this.toString()}}e.SafeString=nt -var it={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},at=/[&<>"'`=]/,st=/[&<>"'`=]/g -function ot(e){return it[e]}function ut(e){return null!==e&&"object"==typeof e&&"function"==typeof e.toHTML}function lt(e){return{object:`${e.name}:${e.outlet}`}}var ct={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class dt{create(e,t,r,n,i){var a=i.get("outletState"),o=t.ref -i.set("outletState",o) -var u={self:(0,s.createConstRef)(t.controller,"this"),finalize:(0,p._instrumentStart)("render.outlet",lt,t)} -if(void 0!==n.debugRenderTree){u.outlet={name:t.outlet} -var l=(0,s.valueForRef)(a),c=l&&l.render&&l.render.owner,d=(0,s.valueForRef)(o).render.owner -if(c&&c!==d){var h=d,f=h.mountPoint -u.engine=h,u.engineBucket={mountPoint:f}}}return u}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r){var n=[] -return t.outlet&&n.push({bucket:t.outlet,type:"outlet",name:t.outlet.name,args:y.EMPTY_ARGS,instance:void 0,template:void 0}),t.engineBucket&&n.push({bucket:t.engineBucket,type:"engine",name:t.engineBucket.mountPoint,args:y.EMPTY_ARGS,instance:t.engine,template:void 0}),n.push({bucket:t,type:"route-template",name:e.name,args:r,instance:e.controller,template:(0,b.unwrapTemplate)(e.template).moduleName}),n}getCapabilities(){return ct}getSelf({self:e}){return e}didCreate(){}didUpdate(){}didRenderLayout(e){e.finalize()}didUpdateLayout(){}getDestroyable(){return null}}var ht=new dt -class pt{constructor(e,t=ht){this.state=e,this.manager=t,this.handle=-1 -var r=t.getCapabilities() -this.capabilities=(0,a.capabilityFlagsFrom)(r),this.compilable=r.wrapped?(0,b.unwrapTemplate)(e.template).asWrappedLayout():(0,b.unwrapTemplate)(e.template).asLayout(),this.resolvedName=e.name}}class ft extends Ve{constructor(e){super(),this.component=e}create(e,t,r,{isInteractive:n},i){var a=this.component,s=(0,p._instrumentStart)("render.component",ze,a) -i.view=a -var u=""!==a.tagName -u||(n&&a.trigger("willRender"),a._transitionTo("hasElement"),n&&a.trigger("willInsertElement")) -var l=new Te(a,null,o.CONSTANT_TAG,s,u,n) -return(0,o.consumeTag)(a[Le]),l}}var mt={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!1,createArgs:!1,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!1,hasSubOwner:!1} -class gt{constructor(e){this.handle=-1,this.resolvedName="-top-level",this.capabilities=(0,a.capabilityFlagsFrom)(mt),this.compilable=null,this.manager=new ft(e),this.state=(0,O.getFactoryFor)(e)}}class vt{constructor(e){this.inner=e}}var bt=Pe((({positional:e})=>{var t=e[0] -return(0,s.createComputeRef)((()=>{var e=(0,s.valueForRef)(t) -return(0,o.consumeTag)((0,u.tagForObject)(e)),(0,n.isProxy)(e)&&(e=(0,_._contentFor)(e)),new vt(e)}))})) -class yt{constructor(e){this.length=e,this.position=0}isEmpty(){return!1}memoFor(e){return e}next(){var{length:e,position:t}=this -if(t>=e)return null -var r=this.valueFor(t),n=this.memoFor(t) -return this.position++,{value:r,memo:n}}}class _t extends yt{constructor(e){super(e.length),this.array=e}static from(e){return e.length>0?new this(e):null}static fromForEachable(e){var t=[] -return e.forEach((e=>t.push(e))),this.from(t)}valueFor(e){return this.array[e]}}class wt extends yt{constructor(e){super(e.length),this.array=e}static from(e){return e.length>0?new this(e):null}valueFor(e){return(0,u.objectAt)(this.array,e)}}class Ot extends yt{constructor(e,t){super(t.length),this.keys=e,this.values=t}static fromIndexable(e){var t=Object.keys(e),{length:r}=t -if(0===r)return null -for(var n=[],i=0;i=2)&&t.push(a),r.push(e),n++})),0===n?null:i?new this(t,r):new _t(r)}valueFor(e){return this.values[e]}memoFor(e){return this.keys[e]}}class Et{constructor(e,t){this.iterable=e,this.result=t,this.position=0}static from(e){var t=e[Symbol.iterator](),r=t.next(),{done:n}=r -return n?null:new this(t,r)}isEmpty(){return!1}next(){var{iterable:e,result:t,position:r}=this -if(t.done)return null -var n=this.valueFor(t,r),i=this.memoFor(t,r) -return this.position++,this.result=e.next(),{value:n,memo:i}}}class Rt extends Et{valueFor(e){return e.value}memoFor(e,t){return t}}class Tt extends Et{valueFor(e){return e.value[1]}memoFor(e){return e.value[0]}}function Pt(e){return"function"==typeof e.forEach}function Ct(e){return"function"==typeof e[Symbol.iterator]}(0,T.default)({scheduleRevalidate(){v._backburner.ensureInstance()},toBool:function(e){return(0,n.isProxy)(e)?((0,o.consumeTag)((0,u.tagForProperty)(e,"content")),Boolean((0,u.get)(e,"isTruthy"))):(0,_.isArray)(e)?((0,o.consumeTag)((0,u.tagForProperty)(e,"[]")),0!==e.length):(0,R.isHTMLSafe)(e)?Boolean(e.toString()):Boolean(e)},toIterator:function(e){return e instanceof vt?function(e){if(t=e,null===t||"object"!=typeof t&&"function"!=typeof t)return null -var t -return Array.isArray(e)||(0,n.isEmberArray)(e)?Ot.fromIndexable(e):Ct(e)?Tt.from(e):Pt(e)?Ot.fromForEachable(e):Ot.fromIndexable(e)}(e.inner):function(e){if(!(0,n.isObject)(e))return null -return Array.isArray(e)?_t.from(e):(0,n.isEmberArray)(e)?wt.from(e):Ct(e)?Rt.from(e):Pt(e)?_t.fromForEachable(e):null}(e)},getProp:u._getProp,setProp:u._setProp,getPath:u.get,setPath:u.set,scheduleDestroy(e,t){(0,v.schedule)("actions",null,t,e)},scheduleDestroyed(e){(0,v.schedule)("destroy",null,e)},warnIfStyleNotTrusted(e){},assert(e,t,r){},deprecate(e,t,r){}}) -class xt{constructor(e,t){this.owner=e,this.isInteractive=t,this.enableDebugTooling=w.ENV._DEBUG_RENDER_TREE}onTransactionCommit(){}}var At=Pe((({positional:e,named:t})=>{var r=e[0],n=t.type,i=t.loc,a=t.original;(0,s.valueForRef)(n),(0,s.valueForRef)(i),(0,s.valueForRef)(a) -return(0,s.createComputeRef)((()=>{var e=(0,s.valueForRef)(r) -return e}))})),kt=Pe((e=>e.positional[0])),St=Pe((({positional:e})=>(0,s.createComputeRef)((()=>{var t=(0,s.valueForRef)(e[0]).split("."),r=t[t.length-1],n=(0,s.valueForRef)(e[1]) -return!0===n?(0,m.dasherize)(r):n||0===n?String(n):""})))),Mt=Pe((({positional:e},t)=>{var r,n=e[0],i=(0,s.valueForRef)(n) -return(0,s.createConstRef)(null===(r=t.factoryFor(i))||void 0===r?void 0:r.class,`(-resolve "${i}")`)})),jt=Pe((({positional:e})=>{var t=e[0] -return(0,s.createComputeRef)((()=>{var e=(0,s.valueForRef)(t) -return(0,n.isObject)(e)&&(0,o.consumeTag)((0,u.tagForProperty)(e,"[]")),e}))})),Nt=Pe((({positional:e})=>{var t=e[0] -return(0,s.createInvokableRef)(t)})),It=Pe((({positional:e})=>(0,s.createReadOnlyRef)(e[0]))),Dt=Pe((({positional:e,named:t})=>(0,s.createUnboundRef)((0,s.valueForRef)(e[0]),"(resurt of an `unbound` helper)"))),Ft=["alt","shift","meta","ctrl"],Lt=/^click|mouse|touch/ -var Bt={registeredActions:d.ActionManager.registeredActions,registerAction(e){var{actionId:t}=e -return d.ActionManager.registeredActions[t]=e,t},unregisterAction(e){var{actionId:t}=e -delete d.ActionManager.registeredActions[t]}} -class Ut{constructor(e,t,r,n,i,a){this.tag=(0,o.createUpdatableTag)(),this.element=e,this.owner=t,this.actionId=r,this.actionArgs=n,this.namedArgs=i,this.positional=a,this.eventName=this.getEventName(),(0,g.registerDestructor)(this,(()=>Bt.unregisterAction(this)))}getEventName(){var{on:e}=this.namedArgs -return void 0!==e?(0,s.valueForRef)(e):"click"}getActionArgs(){for(var e=new Array(this.actionArgs.length),t=0;t=0)return!0 -for(var r=0;r{var e=this.getActionArgs(),r={args:e,target:c,name:null};(0,s.isInvokableRef)(t)?(0,p.flaggedInstrument)("interaction.ember-action",r,(()=>{(0,s.updateRef)(t,e[0])})):"function"!=typeof t?(r.name=t,c.send?(0,p.flaggedInstrument)("interaction.ember-action",r,(()=>{c.send.apply(c,[t,...e])})):(0,p.flaggedInstrument)("interaction.ember-action",r,(()=>{c[t].apply(c,e)}))):(0,p.flaggedInstrument)("interaction.ember-action",r,(()=>{t.apply(c,e)}))})),h)}}var $t=new class{create(e,t,r,{named:i,positional:a}){for(var s=[],o=2;o1&&(n=o[0],r=o[1],t=(0,s.isInvokableRef)(r)?r:(0,s.valueForRef)(r)) -e.actionName=t,e.implicitTarget=n,this.ensureEventSetup(e),Bt.registerAction(e),i.setAttribute("data-ember-action",""),i.setAttribute(`data-ember-action-${a}`,String(a))}update(e){var{positional:t}=e,r=t[1];(0,s.isInvokableRef)(r)||(e.actionName=(0,s.valueForRef)(r)),e.getEventName()!==e.eventName&&(this.ensureEventSetup(e),e.eventName=e.getEventName())}ensureEventSetup(e){var t=e.owner.lookup("event_dispatcher:main") -null==t||t.setupHandlerForEmberEvent(e.eventName)}getTag(e){return e.tag}getDestroyable(e){return e}},Vt=(0,a.setInternalModifierManager)($t,{}),zt={dynamicLayout:!0,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!0} -var Ht=new class{getDynamicLayout(e){var t=e.engine.lookup("template:application") -return(0,b.unwrapTemplate)(t(e.engine)).asLayout()}getCapabilities(){return zt}getOwner(e){return e.engine}create(e,{name:t},r,n){var i=e.buildChildEngineInstance(t) -i.boot() -var a,o,u,l=i.factoryFor("controller:application")||(0,P.generateControllerFactory)(i,"application") -if(r.named.has("model")&&(u=r.named.get("model")),void 0===u)o={engine:i,controller:a=l.create(),self:(0,s.createConstRef)(a,"this"),modelRef:u} -else{var c=(0,s.valueForRef)(u) -o={engine:i,controller:a=l.create({model:c}),self:(0,s.createConstRef)(a,"this"),modelRef:u}}return n.debugRenderTree&&(0,g.associateDestroyableChild)(i,a),o}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r,n){return[{bucket:t.engine,instance:t.engine,type:"engine",name:e.name,args:r},{bucket:t.controller,instance:t.controller,type:"route-template",name:"application",args:r,template:n}]}getSelf({self:e}){return e}getDestroyable(e){return e.engine}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}update(e){var{controller:t,modelRef:r}=e -void 0!==r&&t.set("model",(0,s.valueForRef)(r))}} -class qt{constructor(e){this.resolvedName=e,this.handle=-1,this.manager=Ht,this.compilable=null,this.capabilities=(0,a.capabilityFlagsFrom)(zt),this.state={name:e}}}var Wt=Pe(((e,t)=>{var r,n,i,a=e.positional[0] -return r=(0,y.createCapturedArgs)(e.named,y.EMPTY_POSITIONAL),(0,s.createComputeRef)((()=>{var e=(0,s.valueForRef)(a) -return"string"==typeof e?n===e?i:(n=e,i=(0,y.curry)(0,new qt(e),t,r,!0)):(i=null,n=null,null)}))})),Gt=Pe(((e,t,r)=>{var n -n=0===e.positional.length?(0,s.createPrimitiveRef)("main"):e.positional[0] -var i=(0,s.createComputeRef)((()=>{var e=(0,s.valueForRef)(r.get("outletState")),t=void 0!==e?e.outlets:void 0 -return void 0!==t?t[(0,s.valueForRef)(n)]:void 0})),a=null,o=null -return(0,s.createComputeRef)((()=>{var e,r,n=(0,s.valueForRef)(i),u=function(e,t){if(void 0===t)return null -var r=t.render -if(void 0===r)return null -var n=r.template -if(void 0===n)return null -be(n)&&(n=n(r.owner)) -return{ref:e,name:r.name,outlet:r.outlet,template:n,controller:r.controller,model:r.model}}(i,n) -if(!function(e,t){if(null===e)return null===t -if(null===t)return!1 -return e.template===t.template&&e.controller===t.controller}(u,a))if(a=u,null!==u){var l=(0,b.dict)(),c=(0,s.childRefFromParts)(i,["render","model"]),d=(0,s.valueForRef)(c) -l.model=(0,s.createComputeRef)((()=>(a===u&&(d=(0,s.valueForRef)(c)),d))) -var h=(0,y.createCapturedArgs)(l,y.EMPTY_POSITIONAL) -o=(0,y.curry)(0,new pt(u),null!==(r=null===(e=null==n?void 0:n.render)||void 0===e?void 0:e.owner)&&void 0!==r?r:t,h,!0)}else o=null -return o}))})) -function Yt(e){return{object:`component:${e}`}}var Qt={action:xe,mut:Nt,readonly:It,unbound:Dt,"-hash":y.hash,"-each-in":bt,"-normalize-class":St,"-resolve":Mt,"-track-array":jt,"-mount":Wt,"-outlet":Gt,"-in-el-null":kt} -Qt["-disallow-dynamic-resolution"]=At -var Kt=Object.assign(Object.assign({},Qt),{array:y.array,concat:y.concat,fn:y.fn,get:y.get,hash:y.hash}),Jt={action:Vt},Xt=Object.assign(Object.assign({},Jt),{on:y.on}) -new b._WeakSet -class Zt{constructor(){this.componentDefinitionCache=new Map}lookupPartial(){return null}lookupHelper(e,t){var r=Kt[e] -if(void 0!==r)return r -var n=t.factoryFor(`helper:${e}`) -if(void 0===n)return null -var i=n.class -return void 0===i?null:"function"==typeof i&&!0===i[Xe]?((0,a.setInternalHelperManager)(et,n),n):i}lookupBuiltInHelper(e){var t -return null!==(t=Qt[e])&&void 0!==t?t:null}lookupModifier(e,t){var r=Xt[e] -if(void 0!==r)return r -var n=t.factoryFor(`modifier:${e}`) -return void 0===n?null:n.class||null}lookupBuiltInModifier(e){var t -return null!==(t=Jt[e])&&void 0!==t?t:null}lookupComponent(e,t){var r=function(e,t,r){var n=function(e,t,r){var n=`component:${e}` -return t.factoryFor(n,r)||null}(t,e,r) -if(null!==n&&void 0!==n.class){var i=(0,a.getComponentTemplate)(n.class) -if(void 0!==i)return{component:n,layout:i}}var s=function(e,t,r){var n=`template:components/${e}` -return t.lookup(n,r)||null}(t,e,r) -return null===n&&null===s?null:{component:n,layout:s}}(t,e) -if(null===r)return null -var n,i=null -n=null===r.component?i=r.layout(t):r.component -var s=this.componentDefinitionCache.get(n) -if(void 0!==s)return s -null===i&&null!==r.layout&&(i=r.layout(t)) -var o=(0,p._instrumentStart)("render.getComponentDefinition",Yt,e),u=null -if(null===r.component)if(w.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS)u={state:(0,y.templateOnlyComponent)(void 0,e),manager:y.TEMPLATE_ONLY_COMPONENT_MANAGER,template:i} -else{var l=t.factoryFor(O.privatize`component:-default`) -u={state:l,manager:(0,a.getInternalComponentManager)(l.class),template:i}}else{var c=r.component,d=c.class,h=(0,a.getInternalComponentManager)(d) -u={state:Ge(h)?c:d,manager:h,template:i}}return o(),this.componentDefinitionCache.set(n,u),u}}class er{constructor(e,t){this.view=e,this.outletState=t}child(){return new er(this.view,this.outletState)}get(e){return this.outletState}set(e,t){return this.outletState=t,t}}class tr{constructor(e,t,r,n,i,a,s,o,u){this.root=e,this.runtime=t,this.id=(0,d.getViewId)(e),this.result=void 0,this.destroyed=!1,this.render=()=>{var e=(0,b.unwrapTemplate)(i).asLayout(),l=(0,y.renderMain)(t,r,n,a,u(t.env,{element:s,nextSibling:null}),e,o),c=this.result=l.sync() -this.render=()=>c.rerender({alwaysRevalidate:!1})}}isFor(e){return this.root===e}destroy(){var{result:e,runtime:{env:t}}=this -this.destroyed=!0,this.runtime=void 0,this.root=null,this.result=void 0,this.render=void 0,void 0!==e&&(0,y.inTransaction)(t,(()=>(0,g.destroy)(e)))}}var rr=[] -function nr(e){var t=rr.indexOf(e) -rr.splice(t,1)}function ir(){}var ar=null -var sr=0 -v._backburner.on("begin",(function(){for(var e=0;ew.ENV._RERENDER_LOOP_LIMIT)throw sr=0,rr[e].destroy(),new Error("infinite rendering invalidation detected") -return sr++,v._backburner.join(null,ir)}sr=0,function(){if(null!==ar){var e=ar.resolve -ar=null,v._backburner.join(null,e)}}()})) -class or{constructor(e,r,n,i,a,s=y.clientBuilder){this._inRenderTransaction=!1,this._lastRevision=-1,this._destroyed=!1,this._owner=e,this._rootTemplate=i(e),this._viewRegistry=a||e.lookup("-view-registry:main"),this._roots=[],this._removedRoots=[],this._builder=s,this._isInteractive=n.isInteractive -var o=this._runtimeResolver=new Zt,u=(0,C.artifacts)() -this._context=(0,t.programCompilationContext)(u,o) -var l=new xt(e,n.isInteractive) -this._runtime=(0,y.runtimeContext)({appendOperations:n.hasDOM?new y.DOMTreeConstruction(r):new E.NodeDOMTreeConstruction(r),updateOperations:new y.DOMChanges(r)},l,u,o)}static create(e){var{_viewRegistry:t}=e,n=(0,r.getOwner)(e).lookup("service:-document"),i=(0,r.getOwner)(e).lookup("-environment:main"),a=(0,r.getOwner)(e),s=a.lookup(O.privatize`template:-root`),o=a.lookup("service:-dom-builder") -return new this((0,r.getOwner)(e),n,i,s,t,o)}get debugRenderTree(){var{debugRenderTree:e}=this._runtime.env -return e}appendOutletView(e,t){var r=function(e){if(w.ENV._APPLICATION_TEMPLATE_WRAPPER){var t=Object.assign({},ct,{dynamicTag:!0,elementHook:!0,wrapped:!0}),r=new class extends dt{getTagName(){return"div"}getCapabilities(){return t}didCreateElement(e,t){t.setAttribute("class","ember-view"),t.setAttribute("id",(0,n.guidFor)(e))}} -return new pt(e.state,r)}return new pt(e.state)}(e) -this._appendDefinition(e,(0,y.curry)(0,r,e.owner,null,!0),t)}appendTo(e,t){var r=new gt(e) -this._appendDefinition(e,(0,y.curry)(0,r,this._owner,null,!0),t)}_appendDefinition(e,t,r){var n=(0,s.createConstRef)(t,"this"),i=new er(null,s.UNDEFINED_REFERENCE),a=new tr(e,this._runtime,this._context,this._owner,this._rootTemplate,n,r,i,this._builder) -this._renderRoot(a)}rerender(){this._scheduleRevalidate()}register(e){var t=(0,d.getViewId)(e) -this._viewRegistry[t]=e}unregister(e){delete this._viewRegistry[(0,d.getViewId)(e)]}remove(e){e._transitionTo("destroying"),this.cleanupRootFor(e),this._isInteractive&&e.trigger("didDestroyElement")}cleanupRootFor(e){if(!this._destroyed)for(var t=this._roots,r=this._roots.length;r--;){var n=t[r] -n.isFor(e)&&(n.destroy(),t.splice(r,1))}}destroy(){this._destroyed||(this._destroyed=!0,this._clearAllRoots())}getElement(e){if(this._isInteractive)return(0,d.getViewElement)(e) -throw new Error("Accessing `this.element` is not allowed in non-interactive environments (such as FastBoot).")}getBounds(e){var t=e[Ue] -return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}createElement(e){return this._runtime.env.getAppendOperations().createElement(e)}_renderRoot(e){var t,{_roots:r}=this -r.push(e),1===r.length&&(t=this,rr.push(t)),this._renderRootsTransaction()}_renderRoots(){var e,{_roots:t,_runtime:r,_removedRoots:n}=this -do{e=t.length,(0,y.inTransaction)(r.env,(()=>{for(var r=0;r=e||i.render()}this._lastRevision=(0,o.valueForTag)(o.CURRENT_TAG)}))}while(t.length>e) -for(;n.length;){var i=n.pop(),a=t.indexOf(i) -t.splice(a,1)}0===this._roots.length&&nr(this)}_renderRootsTransaction(){if(!this._inRenderTransaction){this._inRenderTransaction=!0 -var e=!1 -try{this._renderRoots(),e=!0}finally{e||(this._lastRevision=(0,o.valueForTag)(o.CURRENT_TAG)),this._inRenderTransaction=!1}}}_clearAllRoots(){for(var e=this._roots,t=0;t((0,o.consumeTag)(i),a)),(e=>{(0,o.dirtyTag)(i),a.outlets.main=e})) -this.state={ref:u,name:cr,outlet:dr,template:r,controller:void 0,model:void 0}}static extend(e){return class extends hr{static create(t){return t?super.create(Object.assign({},e,t)):super.create(e)}}}static reopenClass(e){Object.assign(this,e)}static create(e){var{environment:t,application:n,template:i}=e,a=(0,r.getOwner)(e),s=i(a) -return new hr(t,a,s,n)}appendTo(e){var t -t=this._environment.hasDOM&&"string"==typeof e?document.querySelector(e):e -var r=this.owner.lookup("renderer:-dom");(0,v.schedule)("render",r,"appendOutletView",this,t)}rerender(){}setOutletState(e){(0,s.updateRef)(this.ref,e)}destroy(){}}e.OutletView=hr -e.componentCapabilities=a.componentCapabilities,e.modifierCapabilities=a.modifierCapabilities})),e("@ember/-internals/meta/index",["exports","@ember/-internals/meta/lib/meta"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Meta",{enumerable:!0,get:function(){return t.Meta}}),Object.defineProperty(e,"UNDEFINED",{enumerable:!0,get:function(){return t.UNDEFINED}}),Object.defineProperty(e,"counters",{enumerable:!0,get:function(){return t.counters}}),Object.defineProperty(e,"meta",{enumerable:!0,get:function(){return t.meta}}),Object.defineProperty(e,"peekMeta",{enumerable:!0,get:function(){return t.peekMeta}}),Object.defineProperty(e,"setMeta",{enumerable:!0,get:function(){return t.setMeta}})})),e("@ember/-internals/meta/lib/meta",["exports","@ember/-internals/utils","@ember/debug","@glimmer/destroyable"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.meta=e.counters=e.UNDEFINED=e.Meta=void 0,e.peekMeta=d,e.setMeta=c -var i=Object.prototype -var a=e.UNDEFINED=(0,t.symbol)("undefined"),s=1 -class o{constructor(e){this._listenersVersion=1,this._inheritedEnd=-1,this._flattenedVersion=0,this._parent=void 0,this._descriptors=void 0,this._mixins=void 0,this._lazyChains=void 0,this._values=void 0,this._revisions=void 0,this._isInit=!1,this.source=e,this.proto=void 0===e.constructor?void 0:e.constructor.prototype,this._listeners=void 0}get parent(){var e=this._parent -if(void 0===e){var t=u(this.source) -this._parent=e=null===t||t===i?null:h(t)}return e}setInitializing(){this._isInit=!0}unsetInitializing(){this._isInit=!1}isInitializing(){return this._isInit}isPrototypeMeta(e){return this.proto===this.source&&this.source===e}_getOrCreateOwnMap(e){return this[e]||(this[e]=Object.create(null))}_getOrCreateOwnSet(e){return this[e]||(this[e]=new Set)}_findInheritedMap(e,t){for(var r=this;null!==r;){var n=r[e] -if(void 0!==n){var i=n.get(t) -if(void 0!==i)return i}r=r.parent}}_hasInInheritedSet(e,t){for(var r=this;null!==r;){var n=r[e] -if(void 0!==n&&n.has(t))return!0 -r=r.parent}return!1}valueFor(e){var t=this._values -return void 0!==t?t[e]:void 0}setValueFor(e,t){this._getOrCreateOwnMap("_values")[e]=t}revisionFor(e){var t=this._revisions -return void 0!==t?t[e]:void 0}setRevisionFor(e,t){this._getOrCreateOwnMap("_revisions")[e]=t}writableLazyChainsFor(e){var t=this._getOrCreateOwnMap("_lazyChains"),r=t[e] -return void 0===r&&(r=t[e]=[]),r}readableLazyChainsFor(e){var t=this._lazyChains -if(void 0!==t)return t[e]}addMixin(e){this._getOrCreateOwnSet("_mixins").add(e)}hasMixin(e){return this._hasInInheritedSet("_mixins",e)}forEachMixins(e){for(var t,r=this;null!==r;){var n=r._mixins -void 0!==n&&(t=void 0===t?new Set:t,n.forEach((r=>{t.has(r)||(t.add(r),e(r))}))),r=r.parent}}writeDescriptors(e,t){(this._descriptors||(this._descriptors=new Map)).set(e,t)}peekDescriptors(e){var t=this._findInheritedMap("_descriptors",e) -return t===a?void 0:t}removeDescriptors(e){this.writeDescriptors(e,a)}forEachDescriptors(e){for(var t,r=this;null!==r;){var n=r._descriptors -void 0!==n&&(t=void 0===t?new Set:t,n.forEach(((r,n)=>{t.has(n)||(t.add(n),r!==a&&e(n,r))}))),r=r.parent}}addToListeners(e,t,r,n,i){this.pushListener(e,t,r,n?1:0,i)}removeFromListeners(e,t,r){this.pushListener(e,t,r,2)}pushListener(e,t,r,n,i=!1){var a=this.writableListeners(),s=p(a,e,t,r) -if(-1!==s&&s0&&(r.splice(0,this._inheritedEnd),this._inheritedEnd=0) -for(var n=0;n=0;i--){var a=e[i] -if(a.event===t&&a.target===r&&a.method===n)return i}return-1}})),e("@ember/-internals/metal/index",["exports","@ember/-internals/meta","@ember/-internals/utils","@ember/debug","@ember/-internals/environment","@ember/runloop","@glimmer/destroyable","@glimmer/validator","@glimmer/manager","@glimmer/util","@ember/error","ember/version","@ember/-internals/container","@ember/-internals/owner"],(function(e,t,r,n,i,a,s,o,u,l,c,d,h,p){"use strict" -function f(e,r,n,i,a,s=!0){i||"function"!=typeof n||(i=n,n=null),(0,t.meta)(e).addToListeners(r,n,i,!0===a,s)}function m(e,r,n,i){var a,s -"object"==typeof n?(a=n,s=i):(a=null,s=n),(0,t.meta)(e).removeFromListeners(r,a,s)}function g(e,r,n,i,a){if(void 0===i){var s=void 0===a?(0,t.peekMeta)(e):a -i=null!==s?s.matchingListeners(r):void 0}if(void 0===i||0===i.length)return!1 -for(var o=i.length-3;o>=0;o-=3){var u=i[o],l=i[o+1],c=i[o+2] -if(l){c&&m(e,r,u,l),u||(u=e) -var d=typeof l -"string"!==d&&"symbol"!==d||(l=u[l]),l.apply(u,n)}}return!0}Object.defineProperty(e,"__esModule",{value:!0}),e.TrackedDescriptor=e.SYNC_OBSERVERS=e.PROXY_CONTENT=e.PROPERTY_DID_CHANGE=e.NAMESPACES_BY_ID=e.NAMESPACES=e.Mixin=e.Libraries=e.DEBUG_INJECTION_FUNCTIONS=e.ComputedProperty=e.ASYNC_OBSERVERS=void 0,e._getPath=Ce,e._getProp=Pe,e._setProp=ke,e.activateObserver=T,e.addArrayObserver=function(e,t,r){return Y(e,t,r,f)},e.addListener=f,e.addNamespace=function(e){$e.unprocessedNamespaces=!0,ze.push(e)},e.addObserver=O,e.alias=function(e){return se(new Me(e),Se)},e.applyMixin=st,e.arrayContentDidChange=z,e.arrayContentWillChange=V,e.autoComputed=function(...e){return se(new ve(e),be)},e.beginPropertyChanges=B,e.changeProperties=$,e.computed=ye,Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return o.createCache}}),e.defineProperty=_e,e.deprecateProperty=function(e,t,r,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,set(e){Ae(this,r,e)},get(){return Te(this,r)}})},e.descriptorForDecorator=le,e.descriptorForProperty=ue,e.eachProxyArrayDidChange=function(e,t,r,n){var i=Ie.get(e) -void 0!==i&&i.arrayDidChange(e,t,r,n)},e.eachProxyArrayWillChange=function(e,t,r,n){var i=Ie.get(e) -void 0!==i&&i.arrayWillChange(e,t,r,n)},e.endPropertyChanges=U,e.expandProperties=pe,e.findNamespace=function(e){Ue||Ge() -return He[e]},e.findNamespaces=qe,e.flushAsyncObservers=function(e=!0){var r=(0,o.valueForTag)(o.CURRENT_TAG) -if(k===r)return -k=r,w.forEach(((r,n)=>{var i=(0,t.peekMeta)(n) -r.forEach(((r,s)=>{if(!(0,o.validateTag)(r.tag,r.lastRevision)){var u=()=>{try{g(n,s,[n,r.path],void 0,i)}finally{r.tag=X(n,r.path,(0,o.tagMetaFor)(n),(0,t.peekMeta)(n)),r.lastRevision=(0,o.valueForTag)(r.tag)}} -e?(0,a.schedule)("actions",u):u()}}))}))} -e.get=Te,e.getCachedValueFor=function(e,r){var n=(0,t.peekMeta)(e) -if(n)return n.valueFor(r)},e.getProperties=function(e,t){var r={},n=arguments,i=1 -2===arguments.length&&Array.isArray(t)&&(i=0,n=arguments[1]) -for(;i0},e.inject=function(e,...t){var r=ee(t),n=r?void 0:t[0],i=function(t){var r=(0,p.getOwner)(this)||this.container -return r.lookup(`${e}:${n||t}`)} -0 -var a=ye({get:i,set(e,t){_e(this,e,null,t)}}) -return r?a(t[0],t[1],t[2]):a},e.isBlank=Fe,e.isClassicDecorator=ce,e.isComputed=function(e,t){return Boolean(ue(e,t))},Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return o.isConst}}),e.isElementDescriptor=ee,e.isEmpty=De,e.isNamespaceSearchDisabled=function(){return Ue},e.isNone=function(e){return null==e},e.isPresent=function(e){return!Fe(e)},e.libraries=void 0,e.markObjectAsDirty=I,e.mixin=function(e,...t){return st(e,t),e},e.nativeDescDecorator=te,e.notifyPropertyChange=L,e.objectAt=q,e.observer=function(...e){var t,n,a,s=e.pop() -"function"==typeof s?(t=s,n=e,a=!i.ENV._DEFAULT_ASYNC_OBSERVERS):(t=s.fn,n=s.dependentKeys,a=s.sync) -for(var o=[],u=0;uo.push(e))) -return(0,r.setObservers)(t,{paths:o,sync:a}),t},e.on=function(...e){var t=e.pop(),n=e -return(0,r.setListeners)(t,n),t},e.processAllNamespaces=Ge,e.processNamespace=We,e.removeArrayObserver=function(e,t,r){return Y(e,t,r,m)},e.removeListener=m,e.removeNamespace=function(e){var t=(0,r.getName)(e) -delete He[t],ze.splice(ze.indexOf(e),1),t in i.context.lookup&&e===i.context.lookup[t]&&(i.context.lookup[t]=void 0)},e.removeObserver=E,e.replace=function(e,t,r,n=H){Array.isArray(e)?G(e,t,r,n):e.replace(t,r,n)} -e.replaceInNativeArray=G,e.sendEvent=g,e.set=Ae,e.setClassicDecorator=de,e.setNamespaceSearchDisabled=function(e){Ue=Boolean(e)},e.setProperties=function(e,t){if(null===t||"object"!=typeof t)return t -return $((()=>{for(var r,n=Object.keys(t),i=0;ifunction(e){_.size>0&&_.delete(e) -w.size>0&&w.delete(e)}(e)),!0)),r.get(e)}function T(e,r,n=!1){var i=R(e,n) -if(i.has(r))i.get(r).count++ -else{var a=r.substring(0,r.lastIndexOf(":")),s=X(e,a,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)) -i.set(r,{count:1,path:a,tag:s,lastRevision:(0,o.valueForTag)(s),suspended:!1})}}var P=!1,C=[] -function x(e,t,r=!1){if(!0!==P){var n=!0===r?_:w,i=n.get(e) -if(void 0!==i){var a=i.get(t) -a.count--,0===a.count&&(i.delete(t),0===i.size&&n.delete(e))}}else C.push([e,t,r])}function A(e){w.has(e)&&w.get(e).forEach((r=>{r.tag=X(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)})),_.has(e)&&_.get(e).forEach((r=>{r.tag=X(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)}))}var k=0 -function S(){_.forEach(((e,r)=>{var n=(0,t.peekMeta)(r) -e.forEach(((e,i)=>{if(!e.suspended&&!(0,o.validateTag)(e.tag,e.lastRevision))try{e.suspended=!0,g(r,i,[r,e.path],void 0,n)}finally{e.tag=X(r,e.path,(0,o.tagMetaFor)(r),(0,t.peekMeta)(r)),e.lastRevision=(0,o.valueForTag)(e.tag),e.suspended=!1}}))}))}function M(e,t,r){var n=_.get(e) -if(n){var i=n.get(b(t)) -i&&(i.suspended=r)}}var j=(0,r.symbol)("SELF_TAG") -function N(e,t,r=!1,n){var i=(0,u.getCustomTagFor)(e) -if(void 0!==i)return i(e,t,r) -var a=(0,o.tagFor)(e,t,n) -return a}function I(e,t){(0,o.dirtyTagFor)(e,t),(0,o.dirtyTagFor)(e,j)}var D=e.PROPERTY_DID_CHANGE=(0,r.enumerableSymbol)("PROPERTY_DID_CHANGE"),F=0 -function L(e,r,n,i){var a=void 0===n?(0,t.peekMeta)(e):n -null!==a&&(a.isInitializing()||a.isPrototypeMeta(e))||(I(e,r),F<=0&&S(),D in e&&(4===arguments.length?e[D](r,i):e[D](r)))}function B(){F++,P=!0}function U(){--F<=0&&(S(),function(){for(var[e,t,r]of(P=!1,C))x(e,t,r) -C=[]}())}function $(e){B() -try{e()}finally{U()}}function V(e,t,r,n){return void 0===t?(t=0,r=n=-1):(void 0===r&&(r=-1),void 0===n&&(n=-1)),g(e,"@array:before",[e,t,r,n]),e}function z(e,r,n,i,a=!0){void 0===r?(r=0,n=i=-1):(void 0===n&&(n=-1),void 0===i&&(i=-1)) -var s=(0,t.peekMeta)(e) -if(a&&((i<0||n<0||i-n!=0)&&L(e,"length",s),L(e,"[]",s)),g(e,"@array:change",[e,r,n,i]),null!==s){var o=-1===n?0:n,u=e.length-((-1===i?0:i)-o),l=r<0?u+r:r -if(void 0!==s.revisionFor("firstObject")&&0===l&&L(e,"firstObject",s),void 0!==s.revisionFor("lastObject"))u-10&&this._property(...e)}setup(e,t,r,n){if(super.setup(e,t,r,n),!1===this._hasConfig){var{get:i,set:a}=r -void 0!==i&&(this._getter=i),void 0!==a&&(this._setter=function(e,t){var r=a.call(this,t) -return void 0!==i&&void 0===r?i.call(this):r})}}_property(...e){var t=[] -function r(e){t.push(e)}for(var n=0;n{n=l.call(e,r)})),void 0!==c&&(0,o.updateTag)(s,J(e,c,a,i)),i.setValueFor(r,n),i.setRevisionFor(r,(0,o.valueForTag)(s)),K(i,r,n)}return(0,o.consumeTag)(s),Array.isArray(n)&&(0,o.consumeTag)((0,o.tagFor)(n,"[]")),n}set(e,r,n){this._readOnly&&this._throwReadOnlyError(e,r) -var i,a=(0,t.meta)(e) -a.isInitializing()&&void 0!==this._dependentKeys&&this._dependentKeys.length>0&&"function"==typeof e[D]&&e.isComponent&&O(e,r,(()=>{e[D](r)}),void 0,!0) -try{B(),i=this._set(e,r,n,a),K(a,r,i) -var s=(0,o.tagMetaFor)(e),u=(0,o.tagFor)(e,r,s),{_dependentKeys:l}=this -void 0!==l&&(0,o.updateTag)(u,J(e,l,s,a)),a.setRevisionFor(r,(0,o.valueForTag)(u))}finally{U()}return i}_throwReadOnlyError(e,t){throw new c.default(`Cannot set read-only property "${t}" on object: ${(0,r.inspect)(e)}`)}_set(e,t,r,n){var i,a=void 0!==n.revisionFor(t),s=n.valueFor(t),{_setter:o}=this -M(e,t,!0) -try{i=o.call(e,t,r,s)}finally{M(e,t,!1)}return a&&s===i||(n.setValueFor(t,i),L(e,t,n,r)),i}teardown(e,t,r){void 0!==r.revisionFor(t)&&(r.setRevisionFor(t,void 0),r.setValueFor(t,void 0)),super.teardown(e,t,r)}}e.ComputedProperty=ge -class ve extends ge{get(e,r){var n,i=(0,t.meta)(e),a=(0,o.tagMetaFor)(e),s=(0,o.tagFor)(e,r,a),u=i.revisionFor(r) -if(void 0!==u&&(0,o.validateTag)(s,u))n=i.valueFor(r) -else{var{_getter:l}=this,c=(0,o.track)((()=>{n=l.call(e,r)}));(0,o.updateTag)(s,c),i.setValueFor(r,n),i.setRevisionFor(r,(0,o.valueForTag)(s)),K(i,r,n)}return(0,o.consumeTag)(s),Array.isArray(n)&&(0,o.consumeTag)((0,o.tagFor)(n,"[]",a)),n}}class be extends Function{readOnly(){var e=le(this) -return e._readOnly=!0,this}meta(e){var t=le(this) -return 0===arguments.length?t._meta||{}:(t._meta=e,this)}get _getter(){return le(this)._getter}set enumerable(e){le(this).enumerable=e}}function ye(...e){return ee(e)?se(new ge([]),be)(e[0],e[1],e[2]):se(new ge(e),be)}function _e(e,r,n,i,a){var s=void 0===a?(0,t.meta)(e):a,o=ue(e,r,s),u=void 0!==o -u&&o.teardown(e,r,s),ce(n)?we(e,r,n,s):null==n?Oe(e,r,i,u,!0):Object.defineProperty(e,r,n),s.isPrototypeMeta(e)||A(e)}function we(e,t,r,n){var i -return i=r(e,t,void 0,n),Object.defineProperty(e,t,i),r}function Oe(e,t,r,n,i=!0){return!0===n||!1===i?Object.defineProperty(e,t,{configurable:!0,enumerable:i,writable:!0,value:r}):e[t]=r,r}var Ee=new r.Cache(1e3,(e=>e.indexOf("."))) -function Re(e){return"string"==typeof e&&-1!==Ee.get(e)}e.PROXY_CONTENT=(0,r.symbol)("PROXY_CONTENT") -function Te(e,t){return Re(t)?Ce(e,t):Pe(e,t)}function Pe(e,t){var n,i=typeof e,a="object"===i -return a||"function"===i?(void 0===(n=e[t])&&a&&!(t in e)&&"function"==typeof e.unknownProperty&&(n=e.unknownProperty(t)),(0,o.isTracking)()&&((0,o.consumeTag)((0,o.tagFor)(e,t)),(Array.isArray(n)||(0,r.isEmberArray)(n))&&(0,o.consumeTag)((0,o.tagFor)(n,"[]")))):n=e[t],n}function Ce(e,t){for(var r=e,n="string"==typeof t?t.split("."):t,i=0;iPe({},"a"))),(0,o.track)((()=>Pe({},1))),(0,o.track)((()=>Pe({a:[]},"a"))),(0,o.track)((()=>Pe({a:xe},"a"))) -class Se extends Function{readOnly(){return le(this).readOnly(),this}oneWay(){return le(this).oneWay(),this}meta(e){var t=le(this) -if(0===arguments.length)return t._meta||{} -t._meta=e}}class Me extends re{constructor(e){super(),this.altKey=e}setup(e,t,r,n){super.setup(e,t,r,n),Q.add(this)}get(e,r){var n,i=(0,t.meta)(e),a=(0,o.tagMetaFor)(e),s=(0,o.tagFor)(e,r,a);(0,o.untrack)((()=>{n=Te(e,this.altKey)})) -var u=i.revisionFor(r) -return void 0!==u&&(0,o.validateTag)(s,u)||((0,o.updateTag)(s,X(e,this.altKey,a,i)),i.setRevisionFor(r,(0,o.valueForTag)(s)),K(i,r,n)),(0,o.consumeTag)(s),n}set(e,t,r){return Ae(e,this.altKey,r)}readOnly(){this.set=je}oneWay(){this.set=Ne}}function je(e,t){throw new c.default(`Cannot set read-only property '${t}' on object: ${(0,r.inspect)(e)}`)}function Ne(e,t,r){return _e(e,t,null),Ae(e,t,r)}var Ie=new WeakMap -function De(e){var t=null==e -if(t)return t -if("number"==typeof e.size)return!e.size -var r=typeof e -if("object"===r){var n=Te(e,"size") -if("number"==typeof n)return!n}if("number"==typeof e.length&&"function"!==r)return!e.length -if("object"===r){var i=Te(e,"length") -if("number"==typeof i)return!i}return!1}function Fe(e){return De(e)||"string"==typeof e&&!1===/\S/.test(e)}class Le{constructor(){this._registry=[],this._coreLibIndex=0}_getLibraryByName(e){for(var t=this._registry,r=t.length,n=0;n=65&&e<=90){var o=Qe(t,s) -o&&(0,r.setName)(o,s)}}}function We(e){Ye([e.toString()],e,new Set)}function Ge(){var e=$e.unprocessedNamespaces -if(e&&(qe(),$e.unprocessedNamespaces=!1),e||Ve){for(var t=ze,r=0;r{var t=a.indexOf(e);-1!==t&&a.splice(t,1)})))}else it(t,o,r,n,i,a,s)}function it(e,t,r,n,i,a,s){for(var o=Xe("concatenatedProperties",t,n,i),u=Xe("mergedProperties",t,n,i),l=Object.keys(t),c=0;c=0||"concatenatedProperties"===d||"mergedProperties"===d?h=tt(d,h,n):u&&u.indexOf(d)>-1?h=rt(d,h,n):m&&(h=et(d,h,n,r)),n[d]=h,r[d]=void 0}}}function at(e,t,n,i){var a=(0,r.observerListenerMetaFor)(n) -if(void 0!==a){var{observers:s,listeners:o}=a -if(void 0!==s)for(var u=i?O:E,l=0;l{e.properties||n.push(e)})),n}reopen(...e){if(0!==e.length){if(this.properties){var t=new ut(void 0,this.properties) -this.properties=void 0,this.mixins=[t]}else this.mixins||(this.mixins=[]) -return this.mixins=this.mixins.concat(lt(e)),this}}apply(e,t=!1){return st(e,[this],t)}applyPartial(e){return st(e,[this])}detect(e){if("object"!=typeof e||null===e)return!1 -if(ot.has(e))return ct(e,this) -var r=(0,t.peekMeta)(e) -return null!==r&&r.hasMixin(this)}without(...e){var t=new ut([this]) -return t._without=e,t}keys(){return dt(this)}toString(){return"(unknown mixin)"}}function lt(e){var t=e&&e.length||0,r=void 0 -if(t>0){r=new Array(t) -for(var n=0;nct(e,t,r)))}function dt(e,t=new Set,r=new Set){if(!r.has(e)){if(r.add(e),e.properties)for(var n=Object.keys(e.properties),i=0;idt(e,t,r))) -return t}}function ht(...e){if(!ee(e)){var t=e[0],r=t?t.initializer:void 0,n=t?t.value:void 0,i=function(e,t,i,a,s){return pt([e,t,{initializer:r||(()=>n)}])} -return de(i),i}return pt(e)}function pt([e,n,i]){var{getter:a,setter:s}=(0,o.trackedData)(n,i?i.initializer:void 0) -function u(){var e=a(this) -return(Array.isArray(e)||(0,r.isEmberArray)(e))&&(0,o.consumeTag)((0,o.tagFor)(e,"[]")),e}function l(e){s(this,e),(0,o.dirtyTagFor)(this,j)}var c={enumerable:!0,configurable:!0,isTracked:!0,get:u,set:l} -return ae.add(l),(0,t.meta)(e).writeDescriptors(n,new ft(u,l)),c}e.Mixin=ut -class ft{constructor(e,t){this._get=e,this._set=t,Q.add(this)}get(e){return this._get.call(e)}set(e,t,r){this._set.call(e,r)}}e.TrackedDescriptor=ft})),e("@ember/-internals/overrides/index",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.onEmberGlobalAccess=void 0})),e("@ember/-internals/owner/index",["exports","@glimmer/owner"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.getOwner=function(e){return(0,t.getOwner)(e)},e.setOwner=function(e,r){(0,t.setOwner)(e,r)}})),e("@ember/-internals/routing/index",["exports","@ember/-internals/routing/lib/ext/controller","@ember/-internals/routing/lib/location/api","@ember/-internals/routing/lib/location/none_location","@ember/-internals/routing/lib/location/hash_location","@ember/-internals/routing/lib/location/history_location","@ember/-internals/routing/lib/location/auto_location","@ember/-internals/routing/lib/system/generate_controller","@ember/-internals/routing/lib/system/controller_for","@ember/-internals/routing/lib/system/dsl","@ember/-internals/routing/lib/system/router","@ember/-internals/routing/lib/system/route","@ember/-internals/routing/lib/system/query_params","@ember/-internals/routing/lib/services/routing","@ember/-internals/routing/lib/services/router","@ember/-internals/routing/lib/system/router_state","@ember/-internals/routing/lib/system/cache"],(function(e,t,r,n,i,a,s,o,u,l,c,d,h,p,f,m,g){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"AutoLocation",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"BucketCache",{enumerable:!0,get:function(){return g.default}}),Object.defineProperty(e,"HashLocation",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"HistoryLocation",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"Location",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"NoneLocation",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"QueryParams",{enumerable:!0,get:function(){return h.default}}),Object.defineProperty(e,"Route",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(e,"Router",{enumerable:!0,get:function(){return c.default}}),Object.defineProperty(e,"RouterDSL",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"RouterService",{enumerable:!0,get:function(){return f.default}}),Object.defineProperty(e,"RouterState",{enumerable:!0,get:function(){return m.default}}),Object.defineProperty(e,"RoutingService",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(e,"controllerFor",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(e,"generateController",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"generateControllerFactory",{enumerable:!0,get:function(){return o.generateControllerFactory}})})),e("@ember/-internals/routing/lib/ext/controller",["exports","@ember/-internals/metal","@ember/-internals/owner","@ember/controller/lib/controller_mixin","@ember/-internals/routing/lib/utils"],(function(e,t,r,n,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,n.default.reopen({concatenatedProperties:["queryParams"],init(){this._super(...arguments) -var e=(0,r.getOwner)(this) -e&&(this.namespace=e.lookup("application:main"),this.target=e.lookup("router:main"))},queryParams:null,_qpDelegate:null,_qpChanged(e,r){var n=r.indexOf(".[]"),i=-1===n?r:r.slice(0,n);(0,e._qpDelegate)(i,(0,t.get)(e,i))},transitionToRoute(...e){(0,i.deprecateTransitionMethods)("controller","transitionToRoute") -var r=(0,t.get)(this,"target") -return(r.transitionToRoute||r.transitionTo).apply(r,(0,i.prefixRouteNameArg)(this,e))},replaceRoute(...e){(0,i.deprecateTransitionMethods)("controller","replaceRoute") -var r=(0,t.get)(this,"target") -return(r.replaceRoute||r.replaceWith).apply(r,(0,i.prefixRouteNameArg)(this,e))}}) -e.default=n.default})),e("@ember/-internals/routing/lib/location/api",["exports","@ember/debug"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default={create(e){var t=e&&e.implementation,r=this.implementations[t] -return r.create(...arguments)},implementations:{}}})),e("@ember/-internals/routing/lib/location/auto_location",["exports","@ember/-internals/browser-environment","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/runtime","@ember/debug","@ember/-internals/routing/lib/location/util"],(function(e,t,r,n,i,a,s){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.getHashPath=c,e.getHistoryPath=l -class o extends i.Object{constructor(){super(...arguments),this.implementation="auto"}detect(){var e=this.rootURL,t=function(e){var{location:t,userAgent:r,history:n,documentMode:i,global:a,rootURL:o}=e,u="none",d=!1,h=(0,s.getFullPath)(t) -if((0,s.supportsHistory)(r,n)){var p=l(o,t) -h===p?u="history":"/#"===h.substr(0,2)?(n.replaceState({path:p},"",p),u="history"):(d=!0,(0,s.replacePath)(t,p))}else if((0,s.supportsHashChange)(i,a)){var f=c(o,t) -h===f||"/"===h&&"/#/"===f?u="hash":(d=!0,(0,s.replacePath)(t,f))}if(d)return!1 -return u}({location:this.location,history:this.history,userAgent:this.userAgent,rootURL:e,documentMode:this.documentMode,global:this.global}) -!1===t&&((0,r.set)(this,"cancelRouterSetup",!0),t="none") -var i=(0,n.getOwner)(this).lookup(`location:${t}`);(0,r.set)(i,"rootURL",e),(0,r.set)(this,"concreteImplementation",i)}willDestroy(){var{concreteImplementation:e}=this -e&&e.destroy()}}function u(e){return function(...t){var r,{concreteImplementation:n}=this -return null===(r=n[e])||void 0===r?void 0:r.call(n,...t)}}function l(e,t){var r,n,i=(0,s.getPath)(t),a=(0,s.getHash)(t),o=(0,s.getQuery)(t) -i.indexOf(e) -return"#/"===a.substr(0,2)?(r=(n=a.substr(1).split("#")).shift(),"/"===i.charAt(i.length-1)&&(r=r.substr(1)),i+=r+o,n.length&&(i+=`#${n.join("#")}`)):i+=o+a,i}function c(e,t){var r=e,n=l(e,t).substr(e.length) -return""!==n&&("/"!==n[0]&&(n=`/${n}`),r+=`#${n}`),r}e.default=o,o.reopen({rootURL:"/",initState:u("initState"),getURL:u("getURL"),setURL:u("setURL"),replaceURL:u("replaceURL"),onUpdateURL:u("onUpdateURL"),formatURL:u("formatURL"),location:t.location,history:t.history,global:t.window,userAgent:t.userAgent,cancelRouterSetup:!1})})),e("@ember/-internals/routing/lib/location/hash_location",["exports","@ember/-internals/metal","@ember/-internals/runtime","@ember/runloop","@ember/-internals/routing/lib/location/util"],(function(e,t,r,n,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class a extends r.Object{constructor(){super(...arguments),this.implementation="hash",this.lastSetURL=null}init(){(0,t.set)(this,"location",this._location||window.location),this._hashchangeHandler=void 0}getHash(){return(0,i.getHash)(this.location)}getURL(){var e=this.getHash().substr(1),t=e -return"/"!==t[0]&&(t="/",e&&(t+=`#${e}`)),t}setURL(e){this.location.hash=e,(0,t.set)(this,"lastSetURL",e)}replaceURL(e){this.location.replace(`#${e}`),(0,t.set)(this,"lastSetURL",e)}onUpdateURL(e){this._removeEventListener(),this._hashchangeHandler=(0,n.bind)(this,(function(){var r=this.getURL() -this.lastSetURL!==r&&((0,t.set)(this,"lastSetURL",null),e(r))})),window.addEventListener("hashchange",this._hashchangeHandler)}formatURL(e){return`#${e}`}willDestroy(){this._removeEventListener()}_removeEventListener(){this._hashchangeHandler&&window.removeEventListener("hashchange",this._hashchangeHandler)}}e.default=a})),e("@ember/-internals/routing/lib/location/history_location",["exports","@ember/-internals/metal","@ember/-internals/runtime","@ember/-internals/routing/lib/location/util"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=!1 -function a(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t -return t=16*Math.random()|0,("x"===e?t:3&t|8).toString(16)}))}class s extends r.Object{constructor(){super(...arguments),this.implementation="history",this.rootURL="/"}getHash(){return(0,n.getHash)(this.location)}init(){var e -this._super(...arguments) -var r=document.querySelector("base"),n="" -null!==r&&r.hasAttribute("href")&&(n=null!==(e=r.getAttribute("href"))&&void 0!==e?e:""),(0,t.set)(this,"baseURL",n),(0,t.set)(this,"location",this.location||window.location),this._popstateHandler=void 0}initState(){var e=this.history||window.history;(0,t.set)(this,"history",e) -var{state:r}=e,n=this.formatURL(this.getURL()) -r&&r.path===n?this._previousURL=this.getURL():this.replaceState(n)}getURL(){var{location:e,rootURL:t,baseURL:r}=this,n=e.pathname -t=t.replace(/\/$/,""),r=r.replace(/\/$/,"") -var i=n.replace(new RegExp(`^${r}(?=/|$)`),"").replace(new RegExp(`^${t}(?=/|$)`),"").replace(/\/\//g,"/") -return i+=(e.search||"")+this.getHash()}setURL(e){var{state:t}=this.history -e=this.formatURL(e),t&&t.path===e||this.pushState(e)}replaceURL(e){var{state:t}=this.history -e=this.formatURL(e),t&&t.path===e||this.replaceState(e)}pushState(e){var t={path:e,uuid:a()} -this.history.pushState(t,null,e),this._previousURL=this.getURL()}replaceState(e){var t={path:e,uuid:a()} -this.history.replaceState(t,null,e),this._previousURL=this.getURL()}onUpdateURL(e){this._removeEventListener(),this._popstateHandler=()=>{(i||(i=!0,this.getURL()!==this._previousURL))&&e(this.getURL())},window.addEventListener("popstate",this._popstateHandler)}formatURL(e){var{rootURL:t,baseURL:r}=this -return""!==e?(t=t.replace(/\/$/,""),r=r.replace(/\/$/,"")):"/"===r[0]&&"/"===t[0]&&(r=r.replace(/\/$/,"")),r+t+e}willDestroy(){this._removeEventListener()}_removeEventListener(){this._popstateHandler&&window.removeEventListener("popstate",this._popstateHandler)}}e.default=s})),e("@ember/-internals/routing/lib/location/none_location",["exports","@ember/-internals/metal","@ember/-internals/runtime","@ember/debug"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class i extends r.Object{constructor(){super(...arguments),this.implementation="none"}detect(){var{rootURL:e}=this}getURL(){var{path:e,rootURL:t}=this -return t=t.replace(/\/$/,""),e.replace(new RegExp(`^${t}(?=/|$)`),"")}setURL(e){(0,t.set)(this,"path",e)}onUpdateURL(e){this.updateCallback=e}handleURL(e){(0,t.set)(this,"path",e),this.updateCallback(e)}formatURL(e){var{rootURL:t}=this -return""!==e&&(t=t.replace(/\/$/,"")),t+e}}e.default=i,i.reopen({path:"",rootURL:"/"})})),e("@ember/-internals/routing/lib/location/util",["exports"],(function(e){"use strict" -function t(e){var t=e.pathname -return"/"!==t[0]&&(t=`/${t}`),t}function r(e){return e.search}function n(e){return void 0!==e.hash?e.hash.substr(0):""}function i(e){var t=e.origin -return t||(t=`${e.protocol}//${e.hostname}`,e.port&&(t+=`:${e.port}`)),t}Object.defineProperty(e,"__esModule",{value:!0}),e.getFullPath=function(e){return t(e)+r(e)+n(e)},e.getHash=n,e.getOrigin=i,e.getPath=t,e.getQuery=r,e.replacePath=function(e,t){e.replace(i(e)+t)},e.supportsHashChange=function(e,t){return Boolean(t&&"onhashchange"in t&&(void 0===e||e>7))},e.supportsHistory=function(e,t){if((-1!==e.indexOf("Android 2.")||-1!==e.indexOf("Android 4.0"))&&-1!==e.indexOf("Mobile Safari")&&-1===e.indexOf("Chrome")&&-1===e.indexOf("Windows Phone"))return!1 -return Boolean(t&&"pushState"in t)}})),e("@ember/-internals/routing/lib/services/router",["exports","@ember/-internals/owner","@ember/-internals/runtime","@ember/-internals/utils","@ember/debug","@ember/object/computed","@ember/service","@glimmer/validator","@ember/-internals/routing/lib/utils"],(function(e,t,r,n,i,a,s,o,u){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var l=(0,n.symbol)("ROUTER") -function c(e,t){return"/"===t?e:e.substr(t.length,e.length)}class d extends s.default{get _router(){var e=this[l] -return void 0!==e?e:(e=(0,t.getOwner)(this).lookup("router:main"),this[l]=e)}willDestroy(){super.willDestroy(...arguments),this[l]=null}transitionTo(...e){if((0,u.resemblesURL)(e[0]))return this._router._doURLTransition("transitionTo",e[0]) -var{routeName:t,models:r,queryParams:n}=(0,u.extractRouteArgs)(e),i=this._router._doTransition(t,r,n,!0) -return i._keepDefaultQueryParamValues=!0,i}replaceWith(){return this.transitionTo(...arguments).method("replace")}urlFor(e,...t){return this._router.setupRouter(),this._router.generate(e,...t)}isActive(...e){var{routeName:t,models:r,queryParams:n}=(0,u.extractRouteArgs)(e),i=this._router._routerMicrolib -return(0,o.consumeTag)((0,o.tagFor)(this._router,"currentURL")),!!i.isActiveIntent(t,r)&&(!(Object.keys(n).length>0)||(n=Object.assign({},n),this._router._prepareQueryParams(t,r,n,!0),(0,u.shallowEqual)(n,i.state.queryParams)))}recognize(e){this._router.setupRouter() -var t=c(e,this.rootURL) -return this._router._routerMicrolib.recognize(t)}recognizeAndLoad(e){this._router.setupRouter() -var t=c(e,this.rootURL) -return this._router._routerMicrolib.recognizeAndLoad(t)}}e.default=d,d.reopen(r.Evented,{currentRouteName:(0,a.readOnly)("_router.currentRouteName"),currentURL:(0,a.readOnly)("_router.currentURL"),location:(0,a.readOnly)("_router.location"),rootURL:(0,a.readOnly)("_router.rootURL"),currentRoute:(0,a.readOnly)("_router.currentRoute")})})),e("@ember/-internals/routing/lib/services/routing",["exports","@ember/-internals/owner","@ember/-internals/utils","@ember/object/computed","@ember/service"],(function(e,t,r,n,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var a=(0,r.symbol)("ROUTER") -class s extends i.default{get router(){var e=this[a] -return void 0!==e?e:((e=(0,t.getOwner)(this).lookup("router:main")).setupRouter(),this[a]=e)}hasRoute(e){return this.router.hasRoute(e)}transitionTo(e,t,r,n){var i=this.router._doTransition(e,t,r) -return n&&i.method("replace"),i}normalizeQueryParams(e,t,r){this.router._prepareQueryParams(e,t,r)}_generateURL(e,t,r){var n={} -return r&&(Object.assign(n,r),this.normalizeQueryParams(e,t,n)),this.router.generate(e,...t,{queryParams:n})}generateURL(e,t,r){if(this.router._initialTransitionStarted)return this._generateURL(e,t,r) -try{return this._generateURL(e,t,r)}catch(n){return}}isActiveForRoute(e,t,r,n){var i=this.router._routerMicrolib.recognizer.handlersFor(r),a=i[i.length-1].handler,s=function(e,t){for(var r=0,n=0;ns&&(r=a),n.isActiveIntent(r,e,t)}}e.default=s,s.reopen({targetState:(0,n.readOnly)("router.targetState"),currentState:(0,n.readOnly)("router.currentState"),currentRouteName:(0,n.readOnly)("router.currentRouteName"),currentPath:(0,n.readOnly)("router.currentPath")})})),e("@ember/-internals/routing/lib/system/cache",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{constructor(){this.cache=new Map}has(e){return this.cache.has(e)}stash(e,t,r){var n=this.cache.get(e) -void 0===n&&(n=new Map,this.cache.set(e,n)),n.set(t,r)}lookup(e,t,r){if(!this.has(e))return r -var n=this.cache.get(e) -return n.has(t)?n.get(t):r}}})),e("@ember/-internals/routing/lib/system/controller_for",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return e.lookup(`controller:${t}`,r)}})),e("@ember/-internals/routing/lib/system/dsl",["exports","@ember/debug"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var r=0 -function n(e){return"function"==typeof e}class i{constructor(e=null,t){this.explicitIndex=!1,this.parent=e,this.enableLoadingSubstates=Boolean(t&&t.enableLoadingSubstates),this.matches=[],this.options=t}route(e,t,r){var o,u=null,l=`/_unused_dummy_error_path_route_${e}/:error` -if(n(t)?(o={},u=t):n(r)?(o=t,u=r):o=t||{},this.enableLoadingSubstates&&(s(this,`${e}_loading`,{resetNamespace:o.resetNamespace}),s(this,`${e}_error`,{resetNamespace:o.resetNamespace,path:l})),u){var c=a(this,e,o.resetNamespace),d=new i(c,this.options) -s(d,"loading"),s(d,"error",{path:l}),u.call(d),s(this,e,o,d.generate())}else s(this,e,o)}push(e,t,r,n){var i=t.split(".") -if(this.options.engineInfo){var a=t.slice(this.options.engineInfo.fullName.length+1),s=Object.assign({localFullName:a},this.options.engineInfo) -n&&(s.serializeMethod=n),this.options.addRouteForEngine(t,s)}else if(n)throw new Error(`Defining a route serializer on route '${t}' outside an Engine is not allowed.`) -""!==e&&"/"!==e&&"index"!==i[i.length-1]||(this.explicitIndex=!0),this.matches.push(e,t,r)}generate(){var e=this.matches -return this.explicitIndex||this.route("index",{path:"/"}),t=>{for(var r=0;r`(generated ${t} controller)`}) -var n=`controller:${t}` -return e.register(n,r),e.factoryFor(n)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){n(e,t) -var r=`controller:${t}`,i=e.lookup(r) -0 -return i},e.generateControllerFactory=n})) -e("@ember/-internals/routing/lib/system/query_params",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{constructor(e=null){this.isQueryParams=!0,this.values=e}}})),e("@ember/-internals/routing/lib/system/route-info",[],(function(){})),e("@ember/-internals/routing/lib/system/route",["exports","@ember/-internals/container","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/runtime","@ember/-internals/utils","@ember/debug","@ember/object/compat","@ember/runloop","router_js","@ember/-internals/routing/lib/utils","@ember/-internals/routing/lib/system/generate_controller"],(function(e,t,r,n,i,a,s,o,u,l,c,d){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ROUTE_CONNECTIONS=void 0,e.defaultSerialize=m,e.getFullQueryParams=v,e.hasDefaultSerialize=function(e){return e.serialize===m} -var h=function(e,t,r,n){var i,a=arguments.length,s=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) -else for(var o=e.length-1;o>=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,r,s):i(t,r))||s) -return a>3&&s&&Object.defineProperty(t,r,s),s},p=e.ROUTE_CONNECTIONS=new WeakMap,f=(0,a.symbol)("render") -function m(e,t){if(!(t.length<1)&&e){var n={} -if(1===t.length){var[i]=t -i in e?n[i]=(0,r.get)(e,i):/_id$/.test(i)?n[i]=(0,r.get)(e,"id"):(0,a.isProxy)(e)&&(n[i]=(0,r.get)(e,i))}else n=(0,r.getProperties)(e,t) -return n}}class g extends(i.Object.extend(i.ActionHandler,i.Evented)){constructor(e){if(super(...arguments),this.context={},e){var r=e.lookup("router:main"),n=e.lookup(t.privatize`-bucket-cache:main`) -this._router=r,this._bucketCache=n,this._topLevelViewTemplate=e.lookup("template:-outlet"),this._environment=e.lookup("-environment:main")}}_setRouteName(e){this.routeName=e,this.fullRouteName=_((0,n.getOwner)(this),e)}_stashNames(e,t){if(!this._names){var n=this._names=e._names -n.length||(n=(e=t)&&e._names||[]) -for(var i=(0,r.get)(this,"_qp.qps"),a=new Array(n.length),s=0;s(e[t]=o[t],e)),s)}serializeQueryParamKey(e){return e}serializeQueryParam(e,t,r){return this._router._serializeQueryParam(e,r)}deserializeQueryParam(e,t,r){return this._router._deserializeQueryParam(e,r)}_optionsForQueryParam(e){return(0,r.get)(this,`queryParams.${e.urlKey}`)||(0,r.get)(this,`queryParams.${e.prop}`)||{}}resetController(e,t,r){return this}exit(e){this.deactivate(e),this.trigger("deactivate",e),this.teardownViews()}_internalReset(e,t){var n=this.controller -n._qpDelegate=(0,r.get)(this,"_qp.states.inactive"),this.resetController(n,e,t)}enter(e){p.set(this,[]),this.activate(e),this.trigger("activate",e)}deactivate(e){}activate(e){}transitionTo(...e){return(0,c.deprecateTransitionMethods)("route","transitionTo"),this._router.transitionTo(...(0,c.prefixRouteNameArg)(this,e))}intermediateTransitionTo(...e){var[t,...r]=(0,c.prefixRouteNameArg)(this,e) -this._router.intermediateTransitionTo(t,...r)}refresh(){return this._router._routerMicrolib.refresh(this)}replaceWith(...e){return(0,c.deprecateTransitionMethods)("route","replaceWith"),this._router.replaceWith(...(0,c.prefixRouteNameArg)(this,e))}setup(e,t){var n,i=this.controllerName||this.routeName,s=this.controllerFor(i,!0) -if(n=s||this.generateController(i),!this.controller){var u=(0,r.get)(this,"_qp"),d=void 0!==u?(0,r.get)(u,"propertyNames"):[];(function(e,t){t.forEach((t=>{if(void 0===(0,r.descriptorForProperty)(e,t)){var n=(0,a.lookupDescriptor)(e,t) -null===n||"function"!=typeof n.get&&"function"!=typeof n.set||(0,r.defineProperty)(e,t,(0,o.dependentKeyCompat)({get:n.get,set:n.set}))}(0,r.addObserver)(e,`${t}.[]`,e,e._qpChanged,!1)}))})(n,d),this.controller=n}var h=(0,r.get)(this,"_qp"),p=h.states -if(n._qpDelegate=p.allowOverrides,t){(0,c.stashParamNames)(this._router,t[l.STATE_SYMBOL].routeInfos) -var m=this._bucketCache,g=t[l.PARAMS_SYMBOL] -h.propertyNames.forEach((e=>{var t=h.map[e] -t.values=g -var i=(0,c.calculateCacheKey)(t.route.fullRouteName,t.parts,t.values),a=m.lookup(i,e,t.undecoratedDefaultValue);(0,r.set)(n,e,a)})) -var v=b(this,t[l.STATE_SYMBOL]);(0,r.setProperties)(n,v)}this.setupController(n,e,t),this._environment.options.shouldRender&&this[f](),(0,r.flushAsyncObservers)(!1)}_qpChanged(e,t,r){if(r){var n=this._bucketCache,i=(0,c.calculateCacheKey)(r.route.fullRouteName,r.parts,r.values) -n.stash(i,e,t)}}beforeModel(){}afterModel(){}redirect(){}contextDidChange(){this.currentModel=this.context}model(e,t){var n,i,a,s=(0,r.get)(this,"_qp.map") -for(var o in e)if(!("queryParams"===o||s&&o in s)){var u=o.match(/^(.*)_id$/) -null!==u&&(n=u[1],a=e[o]),i=!0}if(!n){if(i)return Object.assign({},e) -if(t.resolveIndex<1)return -return t[l.STATE_SYMBOL].routeInfos[t.resolveIndex-1].context}return this.findModel(n,a)}deserialize(e,t){return this.model(this._paramsFor(this.routeName,e),t)}findModel(...e){return(0,r.get)(this,"store").find(...e)}setupController(e,t,n){e&&void 0!==t&&(0,r.set)(e,"model",t)}controllerFor(e,t){var r=(0,n.getOwner)(this),i=r.lookup(`route:${e}`) -i&&i.controllerName&&(e=i.controllerName) -var a=r.lookup(`controller:${e}`) -return a}generateController(e){var t=(0,n.getOwner)(this) -return(0,d.default)(t,e)}modelFor(e){var t,r=(0,n.getOwner)(this),i=this._router&&this._router._routerMicrolib?this._router._routerMicrolib.activeTransition:void 0 -t=r.routable&&void 0!==i?_(r,e):e -var a=r.lookup(`route:${t}`) -if(null!=i){var s=a&&a.routeName||t -if(Object.prototype.hasOwnProperty.call(i.resolvedModels,s))return i.resolvedModels[s]}return a&&a.currentModel}[f](e,t){var r=function(e,t,r){var i,a=!t&&!r -a||("object"!=typeof t||r?i=t:(i=e.templateName||e.routeName,r=t)) -var s,o,u,l,c,d=(0,n.getOwner)(e),h=void 0 -r&&(u=r.into&&r.into.replace(/\//g,"."),l=r.outlet,h=r.controller,c=r.model) -l=l||"main",a?(s=e.routeName,o=e.templateName||s):o=s=i.replace(/\//g,".") -void 0===h&&(h=a?e.controllerName||d.lookup(`controller:${s}`):d.lookup(`controller:${s}`)||e.controllerName||e.routeName) -if("string"==typeof h){var p=h -h=d.lookup(`controller:${p}`)}void 0===c?c=e.currentModel:h.set("model",c) -var f,m=d.lookup(`template:${o}`) -u&&(f=function(e){var t=function(e,t,r=0){if(!t)return -for(var n=0;n0&&(p.set(this,[]),(0,u.once)(this._router,"_setOutlets"))}buildRouteInfoMetadata(){}_paramsFor(e,t){return void 0!==this._router._routerMicrolib.activeTransition?this.paramsFor(e):t}get store(){var e=(0,n.getOwner)(this) -this.routeName -return{find(t,r){var n=e.factoryFor(`model:${t}`) -if(n)return(n=n.class).find(r)}}}set store(e){(0,r.defineProperty)(this,"store",null,e)}get _qp(){var e,t=this.controllerName||this.routeName,a=(0,n.getOwner)(this),s=a.lookup(`controller:${t}`),o=(0,r.get)(this,"queryParams"),u=Object.keys(o).length>0 -if(s){var l=(0,r.get)(s,"queryParams")||{} -e=function(e,t){var r={},n={defaultValue:!0,type:!0,scope:!0,as:!0} -for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){var a={} -Object.assign(a,e[i],t[i]),r[i]=a,n[i]=!0}for(var s in t)if(Object.prototype.hasOwnProperty.call(t,s)&&!n[s]){var o={} -Object.assign(o,t[s],e[s]),r[s]=o}return r}((0,c.normalizeControllerQueryParams)(l),o)}else u&&(s=(0,d.default)(a,t),e=o) -var h=[],p={},f=[] -for(var m in e)if(Object.prototype.hasOwnProperty.call(e,m)&&"unknownProperty"!==m&&"_super"!==m){var g=e[m],v=g.scope||"model",b=void 0 -"controller"===v&&(b=[]) -var _=g.as||this.serializeQueryParamKey(m),w=(0,r.get)(s,m) -w=y(w) -var O=g.type||(0,i.typeOf)(w),E=this.serializeQueryParam(w,_,O),R=`${t}:${m}`,T={undecoratedDefaultValue:(0,r.get)(s,m),defaultValue:w,serializedDefaultValue:E,serializedValue:E,type:O,urlKey:_,prop:m,scopedPropertyName:R,controllerName:t,route:this,parts:b,values:null,scope:v} -p[m]=p[_]=p[R]=T,h.push(T),f.push(m)}return{qps:h,map:p,propertyNames:f,states:{inactive:(e,t)=>{var r=p[e] -this._qpChanged(e,t,r)},active:(e,t)=>{var r=p[e] -return this._qpChanged(e,t,r),this._activeQPChanged(r,t)},allowOverrides:(e,t)=>{var r=p[e] -return this._qpChanged(e,t,r),this._updatingQPChanged(r)}}}}}function v(e,t){if(t.fullQueryParams)return t.fullQueryParams -var r={},n=t.routeInfos.every((e=>e.route)) -return Object.assign(r,t.queryParams),e._deserializeQueryParams(t.routeInfos,r),n&&(t.fullQueryParams=r),r}function b(e,t){t.queryParamsFor=t.queryParamsFor||{} -var n=e.fullRouteName -if(t.queryParamsFor[n])return t.queryParamsFor[n] -for(var i=v(e._router,t),a=t.queryParamsFor[n]={},s=(0,r.get)(e,"_qp.qps"),o=0;o{var t=(0,r.get)(e.route,"_qp") -e.route.controller._qpDelegate=(0,r.get)(t,"states.active")})),s._qpUpdates.clear()}}}}) -e.default=g})),e("@ember/-internals/routing/lib/system/router",["exports","@ember/-internals/container","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/runtime","@ember/debug","@ember/error","@ember/runloop","@ember/-internals/routing/lib/location/api","@ember/-internals/routing/lib/utils","@ember/-internals/routing/lib/system/dsl","@ember/-internals/routing/lib/system/route","@ember/-internals/routing/lib/system/router_state","router_js"],(function(e,t,r,n,i,a,s,o,u,l,c,d,h,p){"use strict" -function f(e){P(this),this._cancelSlowTransitionTimer(),this.notifyPropertyChange("url"),this.set("currentState",this.targetState)}function m(e,t){0}function g(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.triggerEvent=R -var{slice:v}=Array.prototype -class b extends(i.Object.extend(i.Evented)){constructor(e){super(...arguments),this._didSetupRouter=!1,this._initialTransitionStarted=!1,this.currentURL=null,this.currentRouteName=null,this.currentPath=null,this.currentRoute=null,this._qpCache=Object.create(null),this._qpUpdates=new Set,this._queuedQPChanges={},this._toplevelView=null,this._handledErrors=new Set,this._engineInstances=Object.create(null),this._engineInfoByRoute=Object.create(null),this.currentState=null,this.targetState=null,this._resetQueuedQueryParameterChanges(),this.namespace=e.lookup("application:main") -var r=e.lookup(t.privatize`-bucket-cache:main`) -this._bucketCache=r -var n=e.lookup("service:router") -this._routerService=n}static map(e){return this.dslCallbacks||(this.dslCallbacks=[],this.reopenClass({dslCallbacks:this.dslCallbacks})),this.dslCallbacks.push(e),this}static _routePath(e){var t,r,n=[] -function i(e,t){for(var r=0;r{e.setURL(n),(0,r.set)(t,"currentURL",n)}))}didTransition(e){t.didTransition(e)}willTransition(e,r){t.willTransition(e,r)}triggerEvent(e,r,n,i){return R.bind(t)(e,r,n,i)}routeWillChange(e){t.trigger("routeWillChange",e),t._routerService.trigger("routeWillChange",e),e.isIntermediate&&t.set("currentRoute",e.to)}routeDidChange(e){t.set("currentRoute",e.to),(0,o.once)((()=>{t.trigger("routeDidChange",e),t._routerService.trigger("routeDidChange",e)}))}transitionDidError(e,r){return e.wasAborted||r.isAborted?(0,p.logAbort)(r):(r.trigger(!1,"error",e.error,r,e.route),t._isErrorHandled(e.error)?(r.rollback(),this.routeDidChange(r),e.error):(r.abort(),e.error))}replaceURL(n){if(e.replaceURL){(0,o.once)((()=>{e.replaceURL(n),(0,r.set)(t,"currentURL",n)}))}else this.updateURL(n)}}var u=this._routerMicrolib=new s,l=this.constructor.dslCallbacks||[g],c=this._buildDSL() -c.route("application",{path:"/",resetNamespace:!0,overrideNameAssertion:!0},(function(){for(var e=0;er.factoryFor(`route-map:${e}`),addRouteForEngine(e,r){t._engineInfoByRoute[e]||(t._engineInfoByRoute[e]=r)}} -return new c.default(null,i)}_resetQueuedQueryParameterChanges(){this._queuedQPChanges={}}_hasModuleBasedResolver(){var e=(0,n.getOwner)(this),t=(0,r.get)(e,"application.__registry__.resolver.moduleBasedResolver") -return Boolean(t)}startRouting(){if(this.setupRouter()){var e=(0,r.get)(this,"initialURL") -void 0===e&&(e=(0,r.get)(this,"location").getURL()) -var t=this.handleURL(e) -if(t&&t.error)throw t.error}}setupRouter(){if(this._didSetupRouter)return!1 -this._didSetupRouter=!0,this._setupLocation() -var e=(0,r.get)(this,"location") -return!(0,r.get)(e,"cancelRouterSetup")&&(this._initRouterJs(),e.onUpdateURL((e=>{this.handleURL(e)})),!0)}_setOutlets(){if(!this.isDestroying&&!this.isDestroyed){var e=this._routerMicrolib.currentRouteInfos -if(e){for(var t,r=null,i=0;i{if(n)delete t[e],t[n.urlKey]=n.route.serializeQueryParam(r,n.urlKey,n.type) -else{if(void 0===r)return -t[e]=this._serializeQueryParam(r,(0,i.typeOf)(r))}}))}_serializeQueryParam(e,t){return null==e?e:"array"===t?JSON.stringify(e):`${e}`}_deserializeQueryParams(e,t){x(this,e,t,((e,r,n)=>{n&&(delete t[e],t[n.prop]=n.route.deserializeQueryParam(r,n.urlKey,n.type))}))}_deserializeQueryParam(e,t){return null==e?e:"boolean"===t?"true"===e:"number"===t?Number(e).valueOf():"array"===t?(0,i.A)(JSON.parse(e)):e}_pruneDefaultQueryParamValues(e,t){var r=this._queryParamsFor(e) -for(var n in t){var i=r.map[n] -i&&i.serializedDefaultValue===t[n]&&delete t[n]}}_doTransition(e,t,r,n){var i=e||(0,l.getActiveTargetName)(this._routerMicrolib) -this._initialTransitionStarted=!0 -var a={} -this._processActiveTransitionQueryParams(i,t,a,r),Object.assign(a,r),this._prepareQueryParams(i,t,a,Boolean(n)) -var s=this._routerMicrolib.transitionTo(i,...t,{queryParams:a}) -return C(s,this),s}_processActiveTransitionQueryParams(e,t,r,n){if(this._routerMicrolib.activeTransition){var i={},a=this._qpUpdates,s=(0,d.getFullQueryParams)(this,this._routerMicrolib.activeTransition[p.STATE_SYMBOL]) -for(var o in s)a.has(o)||(i[o]=s[o]) -this._fullyScopeQueryParams(e,t,n),this._fullyScopeQueryParams(e,t,i),Object.assign(r,i)}}_prepareQueryParams(e,t,r,n){var i=T(this,e,t) -this._hydrateUnsuppliedQueryParams(i,r,Boolean(n)),this._serializeQueryParams(i.routeInfos,r),n||this._pruneDefaultQueryParamValues(i.routeInfos,r)}_getQPMeta(e){var t=e.route -return t&&(0,r.get)(t,"_qp")}_queryParamsFor(e){var t=e.length,r=e[t-1].name,n=this._qpCache[r] -if(void 0!==n)return n -for(var i,a,s=!0,o={},u=[],l=0;l=0;--r){var n=e[r],i=n.route -if(void 0!==i&&!0!==t(i,n))return}}var _={willResolveModel(e,t,r){this._scheduleLoadingEvent(t,r)},error(e,t,r){var n=this,i=e[e.length-1] -y(e,((e,r)=>{if(r!==i){var a=O(e,"error") -if(a)return n._markErrorAsHandled(t),n.intermediateTransitionTo(a,t),!1}var s=w(e,"error") -return!s||(n._markErrorAsHandled(t),n.intermediateTransitionTo(s,t),!1)})),function(e,t){var r,n=[] -r=e&&"object"==typeof e&&"object"==typeof e.errorThrown?e.errorThrown:e -t&&n.push(t) -r&&(r.message&&n.push(r.message),r.stack&&n.push(r.stack),"string"==typeof r&&n.push(r)) -console.error(...n)}(t,`Error while processing route: ${r.targetName}`)},loading(e,t){var r=this,n=e[e.length-1] -y(e,((e,i)=>{if(i!==n){var a=O(e,"loading") -if(a)return r.intermediateTransitionTo(a),!1}var s=w(e,"loading") -return s?(r.intermediateTransitionTo(s),!1):t.pivotHandler!==e}))}} -function w(e,t){var r=(0,n.getOwner)(e),{routeName:i,fullRouteName:a,_router:s}=e,o=`${a}_${t}` -return E(r,s,`${i}_${t}`,o)?o:""}function O(e,t){var r=(0,n.getOwner)(e),{routeName:i,fullRouteName:a,_router:s}=e,o="application"===a?t:`${a}.${t}` -return E(r,s,"application"===i?t:`${i}.${t}`,o)?o:""}function E(e,t,r,n){var i=t.hasRoute(n),a=e.hasRegistration(`template:${r}`)||e.hasRegistration(`route:${r}`) -return i&&a}function R(e,t,r,n){if(!e){if(t)return -throw new s.default(`Can't trigger action '${r}' because your app hasn't finished transitioning into its first route. To trigger an action on destination routes during a transition, you can call \`.send()\` on the \`Transition\` object passed to the \`model/beforeModel/afterModel\` hooks.`)}for(var i,a,o=!1,u=e.length-1;u>=0;u--)if(a=(i=e[u].route)&&i.actions&&i.actions[r]){if(!0!==a.apply(i,n))return void("error"===r&&i._router._markErrorAsHandled(n[0])) -o=!0}var l=_[r] -if(l)l.apply(this,[e,...n]) -else if(!o&&!t)throw new s.default(`Nothing handled the action '${r}'. If you did handle the action, this error can be caused by returning true from an action handler in a controller, causing the action to bubble.`)}function T(e,t,r){for(var n=e._routerMicrolib.applyIntent(t,r),{routeInfos:i,params:a}=n,s=0;s{if(!t._isErrorHandled(e))throw e -t._clearHandledError(e)}),"Transition Error")}function x(e,t,r,n){var i=e._queryParamsFor(t) -for(var a in r){if(Object.prototype.hasOwnProperty.call(r,a))n(a,r[a],i.map[a])}}function A(e,t){if(e)for(var r=[e];r.length>0;){var n=r.shift() -if(n.render.name===t)return n -var i=n.outlets -for(var a in i)r.push(i[a])}}function k(e,t,n){var i,a={render:n,outlets:Object.create(null),wasUsed:!1} -return(i=n.into?A(e,n.into):t)?(0,r.set)(i.outlets,n.outlet,a):e=a,{liveRoutes:e,ownState:a}}function S(e,t,{routeName:r}){var n=A(e,r) -return n||(t.outlets.main={render:{name:r,outlet:"main"},outlets:{}},t)}b.reopen({didTransition:f,willTransition:m,rootURL:"/",location:"hash",url:(0,r.computed)((function(){var e=(0,r.get)(this,"location") -if("string"!=typeof e)return e.getURL()}))}) -e.default=b})),e("@ember/-internals/routing/lib/system/router_state",["exports","@ember/-internals/routing/lib/utils"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{constructor(e,t,r){this.emberRouter=e,this.router=t,this.routerJsState=r}isActiveIntent(e,r,n){var i=this.routerJsState -if(!this.router.isActiveIntent(e,r,void 0,i))return!1 -if(void 0!==n&&Object.keys(n).length>0){var a=Object.assign({},n) -return this.emberRouter._prepareQueryParams(e,r,a),(0,t.shallowEqual)(a,i.queryParams)}return!0}}})),e("@ember/-internals/routing/lib/system/transition",[],(function(){})),e("@ember/-internals/routing/lib/utils",["exports","@ember/-internals/metal","@ember/-internals/owner","@ember/debug","@ember/error","router_js"],(function(e,t,r,n,i,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.calculateCacheKey=function(e,r=[],n){for(var i="",a=0;a0)-(r<0)}})),e("@ember/-internals/runtime/lib/ext/rsvp",["exports","rsvp","@ember/runloop","@ember/-internals/error-handling","@ember/debug"],(function(e,t,r,n,i){"use strict" -function a(e){var t=function(e){if(!e)return -if(e.errorThrown)return function(e){var t=e.errorThrown -"string"==typeof t&&(t=new Error(t)) -return Object.defineProperty(t,"__reason_with_error_thrown__",{value:e,enumerable:!1}),t}(e) -if("UnrecognizedURLError"===e.name)return -if("TransitionAborted"===e.name)return -return e}(e) -if(t){var r=(0,n.getDispatchOverride)() -if(!r)throw t -r(t)}}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.onerrorDefault=a,t.configure("async",((e,t)=>{r._backburner.schedule("actions",null,e,t)})),t.configure("after",(e=>{r._backburner.schedule(r._rsvpErrorQueue,null,e)})),t.on("error",a) -e.default=t})),e("@ember/-internals/runtime/lib/is-equal",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){if(e&&"function"==typeof e.isEqual)return e.isEqual(t) -if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime() -return e===t}})),e("@ember/-internals/runtime/lib/mixins/-proxy",["exports","@ember/-internals/meta","@ember/-internals/metal","@ember/-internals/utils","@ember/debug","@glimmer/manager","@glimmer/validator"],(function(e,t,r,n,i,a,s){"use strict" -function o(e){var t=(0,r.get)(e,"content") -return(0,s.updateTag)((0,r.tagForObject)(e),(0,r.tagForObject)(t)),t}function u(e,t,i){var a=(0,s.tagMetaFor)(e),u=(0,s.tagFor)(e,t,a) -if(t in e)return u -var l=[u,(0,s.tagFor)(e,"content",a)],c=o(e) -return(0,n.isObject)(c)&&l.push((0,r.tagForProperty)(c,t,i)),(0,s.combine)(l)}Object.defineProperty(e,"__esModule",{value:!0}),e.contentFor=o,e.default=void 0 -e.default=r.Mixin.create({content:null,init(){this._super(...arguments),(0,n.setProxy)(this),(0,r.tagForObject)(this),(0,a.setCustomTagFor)(this,u)},willDestroy(){this.set("content",null),this._super(...arguments)},isTruthy:(0,r.computed)("content",(function(){return Boolean((0,r.get)(this,"content"))})),unknownProperty(e){var t=o(this) -if(t)return(0,r.get)(t,e)},setUnknownProperty(e,n){var i=(0,t.meta)(this) -if(i.isInitializing()||i.isPrototypeMeta(this))return(0,r.defineProperty)(this,e,null,n),n -var a=o(this) -return(0,r.set)(a,e,n)}})})),e("@ember/-internals/runtime/lib/mixins/action_handler",["exports","@ember/-internals/metal","@ember/debug"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var n=t.Mixin.create({mergedProperties:["actions"],send(e,...r){if(this.actions&&this.actions[e]&&!(!0===this.actions[e].apply(this,r)))return -var n=(0,t.get)(this,"target") -n&&n.send(...arguments)}}) -e.default=n})),e("@ember/-internals/runtime/lib/mixins/array",["exports","@ember/-internals/metal","@ember/-internals/utils","@ember/debug","@ember/-internals/runtime/lib/mixins/enumerable","@ember/-internals/runtime/lib/compare","@ember/-internals/environment","@ember/-internals/runtime/lib/mixins/observable","@ember/-internals/runtime/lib/mixins/mutable_enumerable","@ember/-internals/runtime/lib/type-of"],(function(e,t,r,n,i,a,s,o,u,l){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.NativeArray=e.MutableArray=e.A=void 0,e.isArray=w,e.removeAt=y,e.uniqBy=h -var c=Object.freeze([]),d=e=>e -function h(e,r=d){var n=R(),i=new Set,a="function"==typeof r?r:e=>(0,t.get)(e,r) -return e.forEach((e=>{var t=a(e) -i.has(t)||(i.add(t),n.push(e))})),n}function p(e,r){return 2===arguments.length?n=>r===(0,t.get)(n,e):r=>Boolean((0,t.get)(r,e))}function f(e,r,n){for(var i=e.length,a=n;a!n(e,t,r)),0)}function b(e,t,r=0,n){var i=e.length -return r<0&&(r+=i),f(e,n&&t!=t?e=>e!=e:e=>e===t,r)}function y(e,r,n=1){return(0,t.replace)(e,r,n,c),e}function _(e,r,n){return(0,t.replace)(e,r,0,[n]),n}function w(e){var t=e -if(!t||t.setInterval)return!1 -if(Array.isArray(t)||T.detect(t))return!0 -var r=(0,l.typeOf)(t) -if("array"===r)return!0 -var n=t.length -return"number"==typeof n&&n==n&&"object"===r}function O(){var e=(0,t.computed)(...arguments) -return e.enumerable=!1,e}function E(e){return this.map((r=>(0,t.get)(r,e)))}var R,T=t.Mixin.create(i.default,{init(){this._super(...arguments),(0,r.setEmberArray)(this)},objectsAt(e){return e.map((e=>(0,t.objectAt)(this,e)))},"[]":O({get(){return this},set(e,t){return this.replace(0,this.length,t),this}}),firstObject:O((function(){return(0,t.objectAt)(this,0)})).readOnly(),lastObject:O((function(){return(0,t.objectAt)(this,this.length-1)})).readOnly(),slice(e=0,r){var n=R(),i=this.length -for(e<0&&(e=i+e),void 0===r||r>i?r=i:r<0&&(r=i+r);e=n)&&(r=n-1),r<0&&(r+=n) -for(var i=r;i>=0;i--)if((0,t.objectAt)(this,i)===e)return i -return-1},forEach(e,t=null){for(var r=this.length,n=0;n(0,t.set)(n,e,r)))},map(e,t=null){var r=R() -return this.forEach(((n,i,a)=>r[i]=e.call(t,n,i,a))),r},mapBy:E,filter(e,t=null){var r=R() -return this.forEach(((n,i,a)=>{e.call(t,n,i,a)&&r.push(n)})),r},reject(e,t=null){return this.filter((function(){return!e.apply(t,arguments)}))},filterBy(){return this.filter(p(...arguments))},rejectBy(){return this.reject(p(...arguments))},find(e,t=null){return m(this,e,t)},findBy(){return m(this,p(...arguments))},every(e,t=null){return v(this,e,t)},isEvery(){return v(this,p(...arguments))},any(e,t=null){return g(this,e,t)},isAny(){return g(this,p(...arguments))},reduce(e,t){var r=t -return this.forEach((function(t,n){r=e(r,t,n,this)}),this),r},invoke(e,...t){var r=R() -return this.forEach((n=>r.push(n[e]?.(...t)))),r},toArray(){return this.map((e=>e))},compact(){return this.filter((e=>null!=e))},includes(e,t){return-1!==b(this,e,t,!0)},sortBy(){var e=arguments -return this.toArray().sort(((r,n)=>{for(var i=0;it!==e:e=>e==e -return this.filter(t)}}),P=e.MutableArray=t.Mixin.create(T,u.default,{clear(){var e=this.length -return 0===e||this.replace(0,e,c),this},insertAt(e,t){return _(this,e,t),this},removeAt(e,t){return y(this,e,t)},pushObject(e){return _(this,this.length,e)},pushObjects(e){return this.replace(this.length,0,e),this},popObject(){var e=this.length -if(0===e)return null -var r=(0,t.objectAt)(this,e-1) -return this.removeAt(e-1,1),r},shiftObject(){if(0===this.length)return null -var e=(0,t.objectAt)(this,0) -return this.removeAt(0),e},unshiftObject(e){return _(this,0,e)},unshiftObjects(e){return this.replace(0,0,e),this},reverseObjects(){var e=this.length -if(0===e)return this -var t=this.toArray().reverse() -return this.replace(0,e,t),this},setObjects(e){if(0===e.length)return this.clear() -var t=this.length -return this.replace(0,t,e),this},removeObject(e){for(var r=this.length||0;--r>=0;){(0,t.objectAt)(this,r)===e&&this.removeAt(r)}return this},removeObjects(e){(0,t.beginPropertyChanges)() -for(var r=e.length-1;r>=0;r--)this.removeObject(e[r]) -return(0,t.endPropertyChanges)(),this},addObject(e){return this.includes(e)||this.pushObject(e),this},addObjects(e){return(0,t.beginPropertyChanges)(),e.forEach((e=>this.addObject(e))),(0,t.endPropertyChanges)(),this}}),C=e.NativeArray=t.Mixin.create(P,o.default,{objectAt(e){return this[e]},replace(e,r,n=c){return(0,t.replaceInNativeArray)(this,e,r,n),this}}),x=["length"] -C.keys().forEach((e=>{Array.prototype[e]&&x.push(e)})),e.NativeArray=C=C.without(...x),s.ENV.EXTEND_PROTOTYPES.Array?(C.apply(Array.prototype,!0),e.A=R=function(e){return e||[]}):e.A=R=function(e){return e||(e=[]),T.detect(e)?e:C.apply(e)} -e.default=T})),e("@ember/-internals/runtime/lib/mixins/comparable",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Mixin.create({compare:null})})),e("@ember/-internals/runtime/lib/mixins/container_proxy",["exports","@ember/runloop","@ember/-internals/metal"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var n={__container__:null,ownerInjection(){return this.__container__.ownerInjection()},lookup(e,t){return this.__container__.lookup(e,t)},destroy(){var e=this.__container__ -e&&(0,t.join)((()=>{e.destroy(),(0,t.schedule)("destroy",e,"finalizeDestroy")})),this._super()},factoryFor(e,t={}){return this.__container__.factoryFor(e,t)}} -e.default=r.Mixin.create(n)})),e("@ember/-internals/runtime/lib/mixins/enumerable",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Mixin.create()})),e("@ember/-internals/runtime/lib/mixins/evented",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Mixin.create({on(e,r,n){return(0,t.addListener)(this,e,r,n),this},one(e,r,n){return(0,t.addListener)(this,e,r,n,!0),this},trigger(e,...r){(0,t.sendEvent)(this,e,r)},off(e,r,n){return(0,t.removeListener)(this,e,r,n),this},has(e){return(0,t.hasListeners)(this,e)}})})),e("@ember/-internals/runtime/lib/mixins/mutable_enumerable",["exports","@ember/-internals/runtime/lib/mixins/enumerable","@ember/-internals/metal"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=r.Mixin.create(t.default)})),e("@ember/-internals/runtime/lib/mixins/observable",["exports","@ember/-internals/meta","@ember/-internals/metal","@ember/debug"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=r.Mixin.create({get(e){return(0,r.get)(this,e)},getProperties(...e){return(0,r.getProperties)(...[this].concat(e))},set(e,t){return(0,r.set)(this,e,t)},setProperties(e){return(0,r.setProperties)(this,e)},beginPropertyChanges(){return(0,r.beginPropertyChanges)(),this},endPropertyChanges(){return(0,r.endPropertyChanges)(),this},notifyPropertyChange(e){return(0,r.notifyPropertyChange)(this,e),this},addObserver(e,t,n,i){return(0,r.addObserver)(this,e,t,n,i),this},removeObserver(e,t,n,i){return(0,r.removeObserver)(this,e,t,n,i),this},hasObserverFor(e){return(0,r.hasListeners)(this,`${e}:change`)},incrementProperty(e,t=1){return(0,r.set)(this,e,(parseFloat((0,r.get)(this,e))||0)+t)},decrementProperty(e,t=1){return(0,r.set)(this,e,((0,r.get)(this,e)||0)-t)},toggleProperty(e){return(0,r.set)(this,e,!(0,r.get)(this,e))},cacheFor(e){var r=(0,t.peekMeta)(this) -if(null!==r)return r.valueFor(e)}})})),e("@ember/-internals/runtime/lib/mixins/promise_proxy",["exports","@ember/-internals/metal","@ember/error"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Mixin.create({reason:null,isPending:(0,t.computed)("isSettled",(function(){return!(0,t.get)(this,"isSettled")})).readOnly(),isSettled:(0,t.computed)("isRejected","isFulfilled",(function(){return(0,t.get)(this,"isRejected")||(0,t.get)(this,"isFulfilled")})).readOnly(),isRejected:!1,isFulfilled:!1,promise:(0,t.computed)({get(){throw new r.default("PromiseProxy's promise must be set")},set(e,r){return function(e,r){return(0,t.setProperties)(e,{isFulfilled:!1,isRejected:!1}),r.then((r=>(e.isDestroyed||e.isDestroying||(0,t.setProperties)(e,{content:r,isFulfilled:!0}),r)),(r=>{throw e.isDestroyed||e.isDestroying||(0,t.setProperties)(e,{reason:r,isRejected:!0}),r}),"Ember: PromiseProxy")}(this,r)}}),then:n("then"),catch:n("catch"),finally:n("finally")}) -function n(e){return function(){return(0,t.get)(this,"promise")[e](...arguments)}}})),e("@ember/-internals/runtime/lib/mixins/registry_proxy",["exports","@ember/debug","@ember/-internals/metal"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=r.Mixin.create({__registry__:null,resolveRegistration(e,t){return this.__registry__.resolve(e,t)},register:n("register"),unregister:n("unregister"),hasRegistration:n("has"),registeredOption:n("getOption"),registerOptions:n("options"),registeredOptions:n("getOptions"),registerOptionsForType:n("optionsForType"),registeredOptionsForType:n("getOptionsForType"),inject:n("injection")}) -function n(e){return function(){return this.__registry__[e](...arguments)}}})),e("@ember/-internals/runtime/lib/mixins/target_action_support",["exports","@ember/-internals/environment","@ember/-internals/metal","@ember/debug"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=r.Mixin.create({target:null,action:null,actionContext:null,actionContextObject:(0,r.computed)("actionContext",(function(){var e=(0,r.get)(this,"actionContext") -if("string"==typeof e){var n=(0,r.get)(this,e) -return void 0===n&&(n=(0,r.get)(t.context.lookup,e)),n}return e})),triggerAction(e={}){var{action:n,target:i,actionContext:a}=e -if((n=n||(0,r.get)(this,"action"),i=i||function(e){var n=(0,r.get)(e,"target") -if(n){if("string"==typeof n){var i=(0,r.get)(e,n) -return void 0===i&&(i=(0,r.get)(t.context.lookup,n)),i}return n}if(e._target)return e._target -return null}(this),void 0===a&&(a=(0,r.get)(this,"actionContextObject")||this),i&&n)&&!1!==(i.send?i.send(...[n].concat(a)):i[n](...[].concat(a))))return!0 -return!1}}) -e.default=i})),e("@ember/-internals/runtime/lib/system/array_proxy",["exports","@ember/-internals/metal","@ember/-internals/utils","@ember/-internals/runtime/lib/system/object","@ember/-internals/runtime/lib/mixins/array","@ember/debug","@glimmer/manager","@glimmer/validator"],(function(e,t,r,n,i,a,s,o){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var u={willChange:"_arrangedContentArrayWillChange",didChange:"_arrangedContentArrayDidChange"} -function l(e,t){return"[]"===t?(e._revalidate(),e._arrTag):"length"===t?(e._revalidate(),e._lengthTag):(0,o.tagFor)(e,t)}class c extends n.default{init(){super.init(...arguments),this._objectsDirtyIndex=0,this._objects=null,this._lengthDirty=!0,this._length=0,this._arrangedContent=null,this._arrangedContentIsUpdating=!1,this._arrangedContentTag=null,this._arrangedContentRevision=null,this._lengthTag=null,this._arrTag=null,(0,s.setCustomTagFor)(this,l)}[t.PROPERTY_DID_CHANGE](){this._revalidate()}willDestroy(){this._removeArrangedContentArrayObserver()}objectAtContent(e){return(0,t.objectAt)((0,t.get)(this,"arrangedContent"),e)}replace(e,t,r){this.replaceContent(e,t,r)}replaceContent(e,r,n){(0,t.get)(this,"content").replace(e,r,n)}objectAt(e){if(this._revalidate(),null===this._objects&&(this._objects=[]),-1!==this._objectsDirtyIndex&&e>=this._objectsDirtyIndex){var r=(0,t.get)(this,"arrangedContent") -if(r)for(var n=this._objects.length=(0,t.get)(r,"length"),i=this._objectsDirtyIndex;ia)&&(this._objectsDirtyIndex=a),this._lengthDirty=!0,(0,t.arrayContentDidChange)(this,r,n,i,!1)}_invalidate(){this._objectsDirtyIndex=0,this._lengthDirty=!0}_revalidate(){if(!0!==this._arrangedContentIsUpdating&&(null===this._arrangedContentTag||!(0,o.validateTag)(this._arrangedContentTag,this._arrangedContentRevision))){var e=this.get("arrangedContent") -null===this._arrangedContentTag?this._addArrangedContentArrayObserver(e):(this._arrangedContentIsUpdating=!0,this._updateArrangedContentArray(e),this._arrangedContentIsUpdating=!1) -var n=this._arrangedContentTag=(0,o.tagFor)(this,"arrangedContent") -this._arrangedContentRevision=(0,o.valueForTag)(this._arrangedContentTag),(0,r.isObject)(e)?(this._lengthTag=(0,o.combine)([n,(0,t.tagForProperty)(e,"length")]),this._arrTag=(0,o.combine)([n,(0,t.tagForProperty)(e,"[]")])):this._lengthTag=this._arrTag=n}}}e.default=c,c.reopen(i.MutableArray,{arrangedContent:(0,t.alias)("content")})})),e("@ember/-internals/runtime/lib/system/core_object",["exports","@ember/-internals/container","@ember/-internals/owner","@ember/-internals/utils","@ember/-internals/meta","@ember/-internals/metal","@ember/-internals/runtime/lib/mixins/action_handler","@ember/debug","@glimmer/util","@glimmer/destroyable","@glimmer/owner"],(function(e,t,r,n,i,a,s,o,u,l,c){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var d=a.Mixin.prototype.reopen,h=new u._WeakSet,p=new WeakMap,f=new Set -function m(e){f.has(e)||e.destroy()}function g(e,t){var r=(0,i.meta)(e) -if(void 0!==t)for(var s=e.concatenatedProperties,o=e.mergedProperties,u=void 0!==s&&s.length>0,l=void 0!==o&&o.length>0,c=Object.keys(t),d=0;d-1){var g=e[h] -p=g?(0,n.makeArray)(g).concat(p):(0,n.makeArray)(p)}if(l&&o.indexOf(h)>-1){var v=e[h] -p=Object.assign({},v,p)}}m?f.set(e,h,p):"function"!=typeof e.setUnknownProperty||h in e?e[h]=p:e.setUnknownProperty(h,p)}e.init(t),r.unsetInitializing() -var b=r.observerEvents() -if(void 0!==b)for(var y=0;yt.willDestroy())),(0,i.meta)(t).setInitializing()}reopen(...e){return(0,a.applyMixin)(this,e),this}init(){}get isDestroyed(){return(0,l.isDestroyed)(this)}set isDestroyed(e){}get isDestroying(){return(0,l.isDestroying)(this)}set isDestroying(e){}destroy(){f.add(this) -try{(0,l.destroy)(this)}finally{f.delete(this)}return this}willDestroy(){}toString(){var e="function"==typeof this.toStringExtension?`:${this.toStringExtension()}`:"" -return`<${(0,t.getFactoryFor)(this)||"(unknown)"}:${(0,n.guidFor)(this)}${e}>`}static extend(){var e=class extends(this){} -return d.apply(e.PrototypeMixin,arguments),e}static create(e,n){var i -return void 0!==e?(i=new this((0,r.getOwner)(e)),(0,t.setFactoryFor)(i,(0,t.getFactoryFor)(e))):i=new this,g(i,void 0===n?e:b.apply(this,arguments)),i}static reopen(){return this.willReopen(),d.apply(this.PrototypeMixin,arguments),this}static willReopen(){var e=this.prototype -h.has(e)&&(h.delete(e),p.has(this)&&p.set(this,a.Mixin.create(this.PrototypeMixin)))}static reopenClass(){return(0,a.applyMixin)(this,arguments),this}static detect(e){if("function"!=typeof e)return!1 -for(;e;){if(e===this)return!0 -e=e.superclass}return!1}static detectInstance(e){return e instanceof this}static metaForProperty(e){var t=this.proto(),r=(0,a.descriptorForProperty)(t,e) -return r._meta||{}}static eachComputedProperty(e,t=this){this.proto() -var r={};(0,i.meta)(this.prototype).forEachDescriptors(((n,i)=>{if(i.enumerable){var a=i._meta||r -e.call(t,n,a)}}))}static get PrototypeMixin(){var e=p.get(this) -return void 0===e&&((e=a.Mixin.create()).ownerConstructor=this,p.set(this,e)),e}static get superclass(){var e=Object.getPrototypeOf(this) -return e!==Function.prototype?e:void 0}static proto(){var e=this.prototype -if(!h.has(e)){h.add(e) -var t=this.superclass -t&&t.proto(),p.has(this)&&this.PrototypeMixin.apply(e)}return e}static toString(){return`<${(0,t.getFactoryFor)(this)||"(unknown)"}:constructor>`}}function b(...e){for(var{concatenatedProperties:t,mergedProperties:r}=this,i=void 0!==t&&t.length>0,a=void 0!==r&&r.length>0,s={},o=0;o-1){var f=s[h] -p=f?(0,n.makeArray)(f).concat(p):(0,n.makeArray)(p)}if(a&&r.indexOf(h)>-1){var m=s[h] -p=Object.assign({},m,p)}s[h]=p}return s}v.isClass=!0,v.isMethod=!1 -e.default=v})),e("@ember/-internals/runtime/lib/system/namespace",["exports","@ember/-internals/metal","@ember/-internals/utils","@ember/-internals/runtime/lib/system/object"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class i extends n.default{init(){(0,t.addNamespace)(this)}toString(){var e=(0,t.get)(this,"name")||(0,t.get)(this,"modulePrefix") -return e||((0,t.findNamespaces)(),void 0===(e=(0,r.getName)(this))&&(e=(0,r.guidFor)(this),(0,r.setName)(this,e)),e)}nameClasses(){(0,t.processNamespace)(this)}destroy(){(0,t.removeNamespace)(this),super.destroy()}}e.default=i,i.prototype.isNamespace=!0,i.NAMESPACES=t.NAMESPACES,i.NAMESPACES_BY_ID=t.NAMESPACES_BY_ID,i.processAll=t.processAllNamespaces,i.byName=t.findNamespace})),e("@ember/-internals/runtime/lib/system/object",["exports","@ember/-internals/container","@ember/-internals/utils","@ember/-internals/metal","@ember/-internals/runtime/lib/system/core_object","@ember/-internals/runtime/lib/mixins/observable","@ember/debug"],(function(e,t,r,n,i,a,s){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.FrameworkObject=void 0 -class o extends i.default{get _debugContainerKey(){var e=(0,t.getFactoryFor)(this) -return void 0!==e&&e.fullName}}var u -e.default=o,a.default.apply(o.prototype),e.FrameworkObject=u=class extends i.default{get _debugContainerKey(){var e=(0,t.getFactoryFor)(this) -return void 0!==e&&e.fullName}},a.default.apply(u.prototype)})),e("@ember/-internals/runtime/lib/system/object_proxy",["exports","@ember/-internals/runtime/lib/system/object","@ember/-internals/runtime/lib/mixins/-proxy"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class n extends t.default{}e.default=n,n.PrototypeMixin.reopen(r.default)})),e("@ember/-internals/runtime/lib/type-of",["exports","@ember/-internals/runtime/lib/system/core_object"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.typeOf=function(e){if(null===e)return"null" -if(void 0===e)return"undefined" -var i=r[n.call(e)]||"object" -"function"===i?t.default.detect(e)&&(i="class"):"object"===i&&(e instanceof Error?i="error":e instanceof t.default?i="instance":e instanceof Date&&(i="date")) -return i} -var r={"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object AsyncFunction]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regexp","[object Object]":"object","[object FileList]":"filelist"},{toString:n}=Object.prototype})),e("@ember/-internals/utils/index",["exports","@glimmer/util","@ember/debug"],(function(e,t,r){"use strict" -function n(e){var t={} -for(var r in t[e]=1,t)if(r===e)return r -return e}function i(e){return null!==e&&("object"==typeof e||"function"==typeof e)}Object.defineProperty(e,"__esModule",{value:!0}),e.ROOT=e.GUID_KEY=e.Cache=void 0,e.canInvoke=function(e,t){return null!=e&&"function"==typeof e[t]},e.checkHasSuper=void 0,e.dictionary=function(e){var t=Object.create(e) -return t._dict=null,delete t._dict,t},e.enumerableSymbol=function(e){var t=c+Math.floor(Math.random()*Date.now()),r=n(`__${e}${t}__`) -0 -return r},e.generateGuid=function(e,t=o){var r=t+s() -i(e)&&u.set(e,r) -return r},e.getDebugName=void 0,e.getName=function(e){return D.get(e)},e.guidFor=function(e){var t -if(i(e))void 0===(t=u.get(e))&&(t=o+s(),u.set(e,t)) -else if(void 0===(t=l.get(e))){var r=typeof e -t="string"===r?"st"+s():"number"===r?"nu"+s():"symbol"===r?"sy"+s():"("+e+")",l.set(e,t)}return t},e.inspect=function(e){if("number"==typeof e&&2===arguments.length)return this -return M(e,0)},e.intern=n,e.isEmberArray=function(e){return U.has(e)},e.isInternalSymbol=function(e){return-1!==d.indexOf(e)},e.isObject=i,e.isProxy=function(e){if(i(e))return B.has(e) -return!1},e.lookupDescriptor=N,e.makeArray=function(e){if(null==e)return[] -return I(e)?e:[e]},e.observerListenerMetaFor=function(e){return _.get(e)},e.setEmberArray=function(e){U.add(e)},e.setListeners=function(e,t){w(e).listeners=t},e.setName=function(e,t){i(e)&&D.set(e,t)},e.setObservers=function(e,t){w(e).observers=t},e.setProxy=function(e){i(e)&&B.add(e)},e.teardownMandatorySetter=e.symbol=e.setupMandatorySetter=e.setWithMandatorySetter=void 0,e.toString=function e(t){if("string"==typeof t)return t -if(null===t)return"null" -if(void 0===t)return"undefined" -if(Array.isArray(t)){for(var r="",n=0;n0&&(r+=","),L(t[n])||(r+=e(t[n])) -return r}if("function"==typeof t.toString)return t.toString() -return F.call(t)},e.uuid=s,e.wrap=function(e,t){if(!b(e))return e -if(!O.has(t)&&b(t))return E(e,E(t,v)) -return E(e,t)} -var a=0 -function s(){return++a}var o="ember",u=new WeakMap,l=new Map,c=e.GUID_KEY=n(`__ember${Date.now()}`) -var d=[] -var h -e.symbol=Symbol -e.getDebugName=h -var p=/\.(_super|call\(this|apply\(this)/,f=Function.prototype.toString,m=e.checkHasSuper=f.call((function(){return this})).indexOf("return this")>-1?function(e){return p.test(f.call(e))}:function(){return!0},g=new WeakMap,v=e.ROOT=Object.freeze((function(){})) -function b(e){var t=g.get(e) -return void 0===t&&(t=m(e),g.set(e,t)),t}g.set(v,!1) -class y{constructor(){this.listeners=void 0,this.observers=void 0}}var _=new WeakMap -function w(e){var t=_.get(e) -return void 0===t&&(t=new y,_.set(e,t)),t}var O=new t._WeakSet -function E(e,t){function r(){var r=this._super -this._super=t -var n=e.apply(this,arguments) -return this._super=r,n}O.add(r) -var n=_.get(e) -return void 0!==n&&_.set(r,n),r}var{toString:R}=Object.prototype,{toString:T}=Function.prototype,{isArray:P}=Array,{keys:C}=Object,{stringify:x}=JSON,A=100,k=4,S=/^[\w$]+$/ -function M(e,r,n){var i=!1 -switch(typeof e){case"undefined":return"undefined" -case"object":if(null===e)return"null" -if(P(e)){i=!0 -break}if(e.toString===R||void 0===e.toString)break -return e.toString() -case"function":return e.toString===T?e.name?`[Function:${e.name}]`:"[Function]":e.toString() -case"string":return x(e) -default:return e.toString()}if(void 0===n)n=new t._WeakSet -else if(n.has(e))return"[Circular]" -return n.add(e),i?function(e,t,r){if(t>k)return"[Array]" -for(var n="[",i=0;i=A){n+=`... ${e.length-A} more items` -break}n+=M(e[i],t,r)}return n+=" ]"}(e,r+1,n):function(e,t,r){if(t>k)return"[Object]" -for(var n="{",i=C(e),a=0;a=A){n+=`... ${i.length-A} more keys` -break}var s=i[a] -n+=j(s)+": "+M(e[s],t,r)}return n+=" }"}(e,r+1,n)}function j(e){return S.test(e)?e:x(e)}function N(e,t){var r=e -do{var n=Object.getOwnPropertyDescriptor(r,t) -if(void 0!==n)return n -r=Object.getPrototypeOf(r)}while(null!==r) -return null}var{isArray:I}=Array -var D=new WeakMap -var F=Object.prototype.toString -function L(e){return null==e}var B=new t._WeakSet -e.Cache=class{constructor(e,t,r){this.limit=e,this.func=t,this.store=r,this.size=0,this.misses=0,this.hits=0,this.store=r||new Map}get(e){return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,this.set(e,this.func(e)))}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}} -var U=new t._WeakSet})) -e("@ember/-internals/views/index",["exports","@ember/-internals/views/lib/system/utils","@ember/-internals/views/lib/system/event_dispatcher","@ember/-internals/views/lib/component_lookup","@ember/-internals/views/lib/views/core_view","@ember/-internals/views/lib/mixins/class_names_support","@ember/-internals/views/lib/mixins/child_views_support","@ember/-internals/views/lib/mixins/view_state_support","@ember/-internals/views/lib/mixins/view_support","@ember/-internals/views/lib/mixins/action_support","@ember/-internals/views/lib/compat/attrs","@ember/-internals/views/lib/system/action_manager"],(function(e,t,r,n,i,a,s,o,u,l,c,d){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ActionManager",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(e,"ActionSupport",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"ChildViewsSupport",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"ClassNamesSupport",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"ComponentLookup",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"CoreView",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"EventDispatcher",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"MUTABLE_CELL",{enumerable:!0,get:function(){return c.MUTABLE_CELL}}),Object.defineProperty(e,"ViewMixin",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(e,"ViewStateSupport",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"addChildView",{enumerable:!0,get:function(){return t.addChildView}}),Object.defineProperty(e,"clearElementView",{enumerable:!0,get:function(){return t.clearElementView}}),Object.defineProperty(e,"clearViewElement",{enumerable:!0,get:function(){return t.clearViewElement}}),Object.defineProperty(e,"constructStyleDeprecationMessage",{enumerable:!0,get:function(){return t.constructStyleDeprecationMessage}}),Object.defineProperty(e,"getChildViews",{enumerable:!0,get:function(){return t.getChildViews}}),Object.defineProperty(e,"getElementView",{enumerable:!0,get:function(){return t.getElementView}}),Object.defineProperty(e,"getRootViews",{enumerable:!0,get:function(){return t.getRootViews}}),Object.defineProperty(e,"getViewBoundingClientRect",{enumerable:!0,get:function(){return t.getViewBoundingClientRect}}),Object.defineProperty(e,"getViewBounds",{enumerable:!0,get:function(){return t.getViewBounds}}),Object.defineProperty(e,"getViewClientRects",{enumerable:!0,get:function(){return t.getViewClientRects}}),Object.defineProperty(e,"getViewElement",{enumerable:!0,get:function(){return t.getViewElement}}),Object.defineProperty(e,"getViewId",{enumerable:!0,get:function(){return t.getViewId}}),Object.defineProperty(e,"isSimpleClick",{enumerable:!0,get:function(){return t.isSimpleClick}}),Object.defineProperty(e,"setElementView",{enumerable:!0,get:function(){return t.setElementView}}),Object.defineProperty(e,"setViewElement",{enumerable:!0,get:function(){return t.setViewElement}})})),e("@ember/-internals/views/lib/compat/attrs",["exports","@ember/-internals/utils"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.MUTABLE_CELL=void 0 -e.MUTABLE_CELL=(0,t.symbol)("MUTABLE_CELL")})),e("@ember/-internals/views/lib/compat/fallback-view-registry",["exports","@ember/-internals/utils"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=(0,t.dictionary)(null)})),e("@ember/-internals/views/lib/component_lookup",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Object.extend({componentFor(e,t,r){var n=`component:${e}` -return t.factoryFor(n,r)},layoutFor(e,t,r){var n=`template:components/${e}` -return t.lookup(n,r)}})})),e("@ember/-internals/views/lib/mixins/action_support",["exports","@ember/-internals/utils","@ember/-internals/metal","@ember/debug"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i={send(e,...t){var n=this.actions&&this.actions[e] -if(n&&!(!0===n.apply(this,t)))return -var i=(0,r.get)(this,"target") -i&&i.send(...arguments)}} -e.default=r.Mixin.create(i)})),e("@ember/-internals/views/lib/mixins/child_views_support",["exports","@ember/-internals/metal","@ember/-internals/views/lib/system/utils"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Mixin.create({childViews:(0,t.nativeDescDecorator)({configurable:!1,enumerable:!1,get(){return(0,r.getChildViews)(this)}}),appendChild(e){(0,r.addChildView)(this,e)}})})),e("@ember/-internals/views/lib/mixins/class_names_support",["exports","@ember/-internals/metal","@ember/debug"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var n=Object.freeze([]) -e.default=t.Mixin.create({concatenatedProperties:["classNames","classNameBindings"],init(){this._super(...arguments)},classNames:n,classNameBindings:n})})),e("@ember/-internals/views/lib/mixins/view_state_support",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Mixin.create({_transitionTo(e){var t=this._currentState,r=this._currentState=this._states[e] -this._state=e,t&&t.exit&&t.exit(this),r.enter&&r.enter(this)}})})),e("@ember/-internals/views/lib/mixins/view_support",["exports","@ember/-internals/utils","@ember/-internals/metal","@ember/debug","@ember/-internals/browser-environment","@ember/-internals/views/lib/system/utils"],(function(e,t,r,n,i,a){"use strict" -function s(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var o={concatenatedProperties:["attributeBindings"],nearestOfType(e){for(var t=this.parentView,n=e instanceof r.Mixin?t=>e.detect(t):t=>e.detect(t.constructor);t;){if(n(t))return t -t=t.parentView}},nearestWithProperty(e){for(var t=this.parentView;t;){if(e in t)return t -t=t.parentView}},rerender(){return this._currentState.rerender(this)},element:(0,r.nativeDescDecorator)({configurable:!1,enumerable:!1,get(){return this.renderer.getElement(this)}}),appendTo(e){var t -return t=i.hasDOM&&"string"==typeof e?document.querySelector(e):e,this.renderer.appendTo(this,t),this},append(){return this.appendTo(document.body)},elementId:null,willInsertElement:s,didInsertElement:s,willClearRender:s,destroy(){this._super(...arguments),this._currentState.destroy(this)},willDestroyElement:s,didDestroyElement:s,parentViewDidChange:s,tagName:null,init(){this._super(...arguments),this.elementId||""===this.tagName||(this.elementId=(0,t.guidFor)(this))},handleEvent(e,t){return this._currentState.handleEvent(this,e,t)}} -e.default=r.Mixin.create(o)})),e("@ember/-internals/views/lib/system/action_manager",["exports"],(function(e){"use strict" -function t(){}Object.defineProperty(e,"__esModule",{value:!0}),e.default=t,t.registeredActions={}})),e("@ember/-internals/views/lib/system/event_dispatcher",["exports","@ember/-internals/owner","@ember/debug","@ember/-internals/metal","@ember/-internals/runtime","@ember/-internals/views","@ember/-internals/views/lib/system/action_manager"],(function(e,t,r,n,i,a,s){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var o="ember-application" -e.default=i.Object.extend({events:{touchstart:"touchStart",touchmove:"touchMove",touchend:"touchEnd",touchcancel:"touchCancel",keydown:"keyDown",keyup:"keyUp",keypress:"keyPress",mousedown:"mouseDown",mouseup:"mouseUp",contextmenu:"contextMenu",click:"click",dblclick:"doubleClick",focusin:"focusIn",focusout:"focusOut",submit:"submit",input:"input",change:"change",dragstart:"dragStart",drag:"drag",dragenter:"dragEnter",dragleave:"dragLeave",dragover:"dragOver",drop:"drop",dragend:"dragEnd"},rootElement:"body",init(){this._super(),this._eventHandlers=Object.create(null),this._didSetup=!1,this.finalEventNameMapping=null,this._sanitizedRootElement=null,this.lazyEvents=new Map},setup(e,t){var r=this.finalEventNameMapping=Object.assign({},(0,n.get)(this,"events"),e) -this._reverseEventNameMapping=Object.keys(r).reduce(((e,t)=>Object.assign(e,{[r[t]]:t})),{}) -var i=this.lazyEvents -null!=t&&(0,n.set)(this,"rootElement",t) -var a,s=(0,n.get)(this,"rootElement") -for(var u in(a="string"!=typeof s?s:document.querySelector(s)).classList.add(o),this._sanitizedRootElement=a,r)Object.prototype.hasOwnProperty.call(r,u)&&i.set(u,r[u]) -this._didSetup=!0},setupHandlerForBrowserEvent(e){this.setupHandler(this._sanitizedRootElement,e,this.finalEventNameMapping[e])},setupHandlerForEmberEvent(e){this.setupHandler(this._sanitizedRootElement,this._reverseEventNameMapping[e],e)},setupHandler(e,t,r){if(null!==r&&this.lazyEvents.has(t)){var n=(e,t)=>{var n=(0,a.getElementView)(e),i=!0 -return n&&(i=n.handleEvent(r,t)),i},i=(e,t)=>{var n=e.getAttribute("data-ember-action"),i=s.default.registeredActions[n] -if(""===n){var a=e.attributes,o=a.length -i=[] -for(var u=0;u{var t=e.target -do{if((0,a.getElementView)(t)){if(!1===n(t,e)){e.preventDefault(),e.stopPropagation() -break}if(!0===e.cancelBubble)break}else if("function"==typeof t.hasAttribute&&t.hasAttribute("data-ember-action")&&!1===i(t,e))break -t=t.parentNode}while(t&&1===t.nodeType)} -e.addEventListener(t,o),this.lazyEvents.delete(t)}},destroy(){if(!1!==this._didSetup){var e,t=(0,n.get)(this,"rootElement") -if(e=t.nodeType?t:document.querySelector(t)){for(var r in this._eventHandlers)e.removeEventListener(r,this._eventHandlers[r]) -return e.classList.remove(o),this._super(...arguments)}}},toString:()=>"(EventDispatcher)"})})),e("@ember/-internals/views/lib/system/utils",["exports","@ember/-internals/owner","@ember/-internals/utils","@ember/debug"],(function(e,t,r,n){"use strict" -function i(e){return""!==e.tagName&&e.elementId?e.elementId:(0,r.guidFor)(e)}Object.defineProperty(e,"__esModule",{value:!0}),e.addChildView=function(e,t){var r=o.get(e) -void 0===r&&(r=u(e)) -r.add(i(t))},e.clearElementView=function(e){a.delete(e)},e.clearViewElement=function(e){s.delete(e)},e.collectChildViews=l,e.constructStyleDeprecationMessage=function(e){return'Binding style attributes may introduce cross-site scripting vulnerabilities; please ensure that values being bound are properly escaped. For more information, including how to disable this warning, see https://deprecations.emberjs.com/v1.x/#toc_binding-style-attributes. Style affected: "'+e+'"'},e.contains=function(e,t){if(void 0!==e.contains)return e.contains(t) -var r=t.parentNode -for(;r&&(r=r.parentNode);)if(r===e)return!0 -return!1},e.elMatches=void 0,e.getChildViews=function(e){var r=(0,t.getOwner)(e).lookup("-view-registry:main") -return l(e,r)},e.getElementView=function(e){return a.get(e)||null},e.getRootViews=function(e){var t=e.lookup("-view-registry:main"),r=[] -return Object.keys(t).forEach((e=>{var n=t[e] -null===n.parentView&&r.push(n)})),r},e.getViewBoundingClientRect=function(e){return d(e).getBoundingClientRect()},e.getViewBounds=c,e.getViewClientRects=function(e){return d(e).getClientRects()},e.getViewElement=function(e){return s.get(e)||null},e.getViewId=i,e.getViewRange=d,e.initChildViews=u,e.isSimpleClick=function(e){var t=e.shiftKey||e.metaKey||e.altKey||e.ctrlKey,r=e.which>1 -return!t&&!r},e.matches=function(e,t){return h.call(e,t)},e.setElementView=function(e,t){a.set(e,t)},e.setViewElement=function(e,t){s.set(e,t)} -var a=new WeakMap,s=new WeakMap -var o=new WeakMap -function u(e){var t=new Set -return o.set(e,t),t}function l(e,t){var r=[],n=o.get(e) -return void 0!==n&&n.forEach((e=>{var n=t[e] -!n||n.isDestroying||n.isDestroyed||r.push(n)})),r}function c(e){return e.renderer.getBounds(e)}function d(e){var t=c(e),r=document.createRange() -return r.setStartBefore(t.firstNode),r.setEndAfter(t.lastNode),r}var h=e.elMatches="undefined"!=typeof Element?Element.prototype.matches||Element.prototype.matchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector||Element.prototype.oMatchesSelector||Element.prototype.webkitMatchesSelector:void 0})),e("@ember/-internals/views/lib/views/core_view",["exports","@ember/-internals/metal","@ember/-internals/runtime","@ember/-internals/views/lib/views/states"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=r.FrameworkObject.extend(r.Evented,r.ActionHandler,{isView:!0,_states:n.default,init(){this._super(...arguments),this._state="preRender",this._currentState=this._states.preRender},renderer:(0,t.inject)("renderer","-dom"),parentView:null,instrumentDetails(e){return e.object=this.toString(),e.containerKey=this._debugContainerKey,e.view=this,e},trigger(e,...t){this._super(...arguments) -var r=this[e] -if("function"==typeof r)return r.apply(this,t)},has(e){return"function"==typeof this[e]||this._super(e)}}) -i.reopenClass({isViewFactory:!0}) -e.default=i})),e("@ember/-internals/views/lib/views/states",["exports","@ember/-internals/views/lib/views/states/pre_render","@ember/-internals/views/lib/views/states/has_element","@ember/-internals/views/lib/views/states/in_dom","@ember/-internals/views/lib/views/states/destroying"],(function(e,t,r,n,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var a=Object.freeze({preRender:t.default,inDOM:n.default,hasElement:r.default,destroying:i.default}) -e.default=a})),e("@ember/-internals/views/lib/views/states/default",["exports","@ember/error"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var r={appendChild(){throw new t.default("You can't use appendChild outside of the rendering process")},handleEvent:()=>!0,rerender(){},destroy(){}} -e.default=Object.freeze(r)})),e("@ember/-internals/views/lib/views/states/destroying",["exports","@ember/error","@ember/-internals/views/lib/views/states/default"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var n=Object.assign({},r.default,{appendChild(){throw new t.default("You can't call appendChild on a view being destroyed")},rerender(){throw new t.default("You can't call rerender on a view being destroyed")}}) -e.default=Object.freeze(n)})),e("@ember/-internals/views/lib/views/states/has_element",["exports","@ember/-internals/views/lib/views/states/default","@ember/runloop","@ember/instrumentation"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=Object.assign({},t.default,{rerender(e){e.renderer.rerender(e)},destroy(e){e.renderer.remove(e)},handleEvent:(e,t,i)=>!e.has(t)||(0,n.flaggedInstrument)(`interaction.${t}`,{event:i,view:e},(()=>(0,r.join)(e,e.trigger,t,i)))}) -e.default=Object.freeze(i)})),e("@ember/-internals/views/lib/views/states/in_dom",["exports","@ember/-internals/utils","@ember/error","@ember/-internals/views/lib/views/states/has_element"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=Object.assign({},n.default,{enter(e){e.renderer.register(e)}}) -e.default=Object.freeze(i)})),e("@ember/-internals/views/lib/views/states/pre_render",["exports","@ember/-internals/views/lib/views/states/default"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var r=Object.assign({},t.default) -e.default=Object.freeze(r)})),e("@ember/application/index",["exports","@ember/-internals/owner","@ember/application/lib/lazy_load","@ember/application/lib/application"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"_loaded",{enumerable:!0,get:function(){return r._loaded}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"getOwner",{enumerable:!0,get:function(){return t.getOwner}}),Object.defineProperty(e,"onLoad",{enumerable:!0,get:function(){return r.onLoad}}),Object.defineProperty(e,"runLoadHooks",{enumerable:!0,get:function(){return r.runLoadHooks}}),Object.defineProperty(e,"setOwner",{enumerable:!0,get:function(){return t.setOwner}})})),e("@ember/application/instance",["exports","@ember/-internals/metal","@ember/-internals/browser-environment","@ember/engine/instance","@ember/-internals/glimmer"],(function(e,t,r,n,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var a=n.default.extend({application:null,customEvents:null,rootElement:null,init(){this._super(...arguments),this.application._watchInstance(this),this.register("-application-instance:main",this,{instantiate:!1})},_bootSync(e){return this._booted||(e=new s(e),this.setupRegistry(e),e.rootElement?this.rootElement=e.rootElement:this.rootElement=this.application.rootElement,e.location&&(0,t.set)(this.router,"location",e.location),this.application.runInstanceInitializers(this),e.isInteractive&&this.setupEventDispatcher(),this._booted=!0),this},setupRegistry(e){this.constructor.setupRegistry(this.__registry__,e)},router:(0,t.computed)((function(){return this.lookup("router:main")})).readOnly(),didCreateRootView(e){e.appendTo(this.rootElement)},startRouting(){this.router.startRouting()},setupRouter(){this.router.setupRouter()},handleURL(e){return this.setupRouter(),this.router.handleURL(e)},setupEventDispatcher(){var e=this.lookup("event_dispatcher:main"),r=(0,t.get)(this.application,"customEvents"),n=(0,t.get)(this,"customEvents"),i=Object.assign({},r,n) -return e.setup(i,this.rootElement),e},getURL(){return this.router.url},visit(e){this.setupRouter() -var r=this.__container__.lookup("-environment:main"),n=this.router,a=()=>r.options.shouldRender?(0,i.renderSettled)().then((()=>this)):this,s=e=>{if(e.error)throw e.error -if("TransitionAborted"===e.name&&n._routerMicrolib.activeTransition)return n._routerMicrolib.activeTransition.then(a,s) -throw"TransitionAborted"===e.name?new Error(e.message):e},o=(0,t.get)(n,"location") -return o.setURL(e),n.handleURL(o.getURL()).then(a,s)},willDestroy(){this._super(...arguments),this.application._unwatchInstance(this)}}) -a.reopenClass({setupRegistry(e,t={}){t.toEnvironment||(t=new s(t)),e.register("-environment:main",t.toEnvironment(),{instantiate:!1}),e.register("service:-document",t.document,{instantiate:!1}),this._super(e,t)}}) -class s{constructor(e={}){this.isInteractive=r.hasDOM,this._renderMode=e._renderMode,void 0!==e.isBrowser?this.isBrowser=Boolean(e.isBrowser):this.isBrowser=r.hasDOM,this.isBrowser||(this.isInteractive=!1,this.location="none"),void 0!==e.shouldRender?this.shouldRender=Boolean(e.shouldRender):this.shouldRender=!0,this.shouldRender||(this.isInteractive=!1),e.document?this.document=e.document:this.document="undefined"!=typeof document?document:null,e.rootElement&&(this.rootElement=e.rootElement),void 0!==e.location&&(this.location=e.location),void 0!==e.isInteractive&&(this.isInteractive=Boolean(e.isInteractive))}toEnvironment(){var e=Object.assign({},r) -return e.hasDOM=this.isBrowser,e.isInteractive=this.isInteractive,e._renderMode=this._renderMode,e.options=this,e}}e.default=a})),e("@ember/application/lib/application",["exports","@ember/-internals/utils","@ember/-internals/environment","@ember/-internals/browser-environment","@ember/debug","@ember/runloop","@ember/-internals/metal","@ember/application/lib/lazy_load","@ember/-internals/runtime","@ember/-internals/views","@ember/-internals/routing","@ember/application/instance","@ember/engine","@ember/-internals/container","@ember/-internals/glimmer"],(function(e,t,r,n,i,a,s,o,u,l,c,d,h,p,f){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var m=h.default.extend({rootElement:"body",_document:n.hasDOM?window.document:null,eventDispatcher:null,customEvents:null,autoboot:!0,_globalsMode:!0,_applicationInstances:null,init(){this._super(...arguments),this._readinessDeferrals=1,this._booted=!1,this._applicationInstances=new Set,this.autoboot=this._globalsMode=Boolean(this.autoboot),this._globalsMode&&this._prepareForGlobalsMode(),this.autoboot&&this.waitForDOMReady()},buildInstance(e={}){return e.base=this,e.application=this,d.default.create(e)},_watchInstance(e){this._applicationInstances.add(e)},_unwatchInstance(e){return this._applicationInstances.delete(e)},_prepareForGlobalsMode(){this.Router=(this.Router||c.Router).extend(),this._buildDeprecatedInstance()},_buildDeprecatedInstance(){var e=this.buildInstance() -this.__deprecatedInstance__=e,this.__container__=e.__container__},waitForDOMReady(){if(null===this._document||"loading"!==this._document.readyState)(0,a.schedule)("actions",this,"domReady") -else{var e=()=>{this._document.removeEventListener("DOMContentLoaded",e),(0,a.run)(this,"domReady")} -this._document.addEventListener("DOMContentLoaded",e)}},domReady(){this.isDestroying||this.isDestroyed||this._bootSync()},deferReadiness(){this._readinessDeferrals++},advanceReadiness(){this._readinessDeferrals--,0===this._readinessDeferrals&&(0,a.once)(this,this.didBecomeReady)},boot(){if(this._bootPromise)return this._bootPromise -try{this._bootSync()}catch(e){}return this._bootPromise},_bootSync(){if(!(this._booted||this.isDestroying||this.isDestroyed)){var e=this._bootResolver=u.RSVP.defer() -this._bootPromise=e.promise -try{this.runInitializers(),(0,o.runLoadHooks)("application",this),this.advanceReadiness()}catch(t){throw e.reject(t),t}}},reset(){var e=this.__deprecatedInstance__ -this._readinessDeferrals=1,this._bootPromise=null,this._bootResolver=null,this._booted=!1,(0,a.join)(this,(function(){(0,a.run)(e,"destroy"),this._buildDeprecatedInstance(),(0,a.schedule)("actions",this,"_bootSync")}))},didBecomeReady(){if(!this.isDestroying&&!this.isDestroyed)try{var e -if(this.autoboot)(e=this._globalsMode?this.__deprecatedInstance__:this.buildInstance())._bootSync(),this.ready(),e.startRouting() -this._bootResolver.resolve(this),this._booted=!0}catch(t){throw this._bootResolver.reject(t),t}},ready(){return this},willDestroy(){this._super(...arguments),o._loaded.application===this&&(o._loaded.application=void 0),this._applicationInstances.size&&(this._applicationInstances.forEach((e=>e.destroy())),this._applicationInstances.clear())},visit(e,t){return this.boot().then((()=>{var r=this.buildInstance() -return r.boot(t).then((()=>r.visit(e))).catch((e=>{throw(0,a.run)(r,"destroy"),e}))}))}}) -m.reopenClass({buildRegistry(){var e=this._super(...arguments) -return function(e){e.register("router:main",c.Router),e.register("-view-registry:main",{create:()=>(0,t.dictionary)(null)}),e.register("route:basic",c.Route),e.register("event_dispatcher:main",l.EventDispatcher),e.register("location:auto",c.AutoLocation),e.register("location:hash",c.HashLocation),e.register("location:history",c.HistoryLocation),e.register("location:none",c.NoneLocation),e.register(p.privatize`-bucket-cache:main`,{create:()=>new c.BucketCache}),e.register("service:router",c.RouterService)}(e),(0,f.setupApplicationRegistry)(e),e}}) -e.default=m})),e("@ember/application/lib/lazy_load",["exports","@ember/-internals/environment","@ember/-internals/browser-environment"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._loaded=void 0,e.onLoad=function(e,t){var r=i[e] -n[e]=n[e]||[],n[e].push(t),r&&t(r)},e.runLoadHooks=function(e,t){if(i[e]=t,r.window&&"function"==typeof CustomEvent){var a=new CustomEvent(e,{detail:t,name:e}) -r.window.dispatchEvent(a)}n[e]&&n[e].forEach((e=>e(t)))} -var n=t.ENV.EMBER_LOAD_HOOKS||{},i={} -e._loaded=i})),e("@ember/application/namespace",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Namespace}})})),e("@ember/array/index",["exports","@ember/-internals/runtime","@ember/-internals/utils"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"A",{enumerable:!0,get:function(){return t.A}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Array}}),Object.defineProperty(e,"isArray",{enumerable:!0,get:function(){return t.isArray}}),Object.defineProperty(e,"makeArray",{enumerable:!0,get:function(){return r.makeArray}})})),e("@ember/array/mutable",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.MutableArray}})})),e("@ember/array/proxy",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.ArrayProxy}})})),e("@ember/canary-features/index",["exports","@ember/-internals/environment"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.FEATURES=e.EMBER_STRICT_MODE=e.EMBER_ROUTING_ROUTER_SERVICE_REFRESH=e.EMBER_NAMED_BLOCKS=e.EMBER_LIBRARIES_ISREGISTERED=e.EMBER_IMPROVED_INSTRUMENTATION=e.EMBER_GLIMMER_INVOKE_HELPER=e.EMBER_GLIMMER_HELPER_MANAGER=e.EMBER_DYNAMIC_HELPERS_AND_MODIFIERS=e.DEFAULT_FEATURES=void 0,e.isEnabled=function(e){var r=n[e] -return!0===r||!1===r?r:!!t.ENV.ENABLE_OPTIONAL_FEATURES} -var r=e.DEFAULT_FEATURES={EMBER_LIBRARIES_ISREGISTERED:!1,EMBER_IMPROVED_INSTRUMENTATION:!1,EMBER_NAMED_BLOCKS:!0,EMBER_GLIMMER_HELPER_MANAGER:!0,EMBER_GLIMMER_INVOKE_HELPER:!0,EMBER_STRICT_MODE:!0,EMBER_DYNAMIC_HELPERS_AND_MODIFIERS:!0,EMBER_ROUTING_ROUTER_SERVICE_REFRESH:!1},n=e.FEATURES=Object.assign(r,t.ENV.FEATURES) -function i(e){return!(!t.ENV.ENABLE_OPTIONAL_FEATURES||null!==e)||e}e.EMBER_LIBRARIES_ISREGISTERED=i(n.EMBER_LIBRARIES_ISREGISTERED),e.EMBER_IMPROVED_INSTRUMENTATION=i(n.EMBER_IMPROVED_INSTRUMENTATION),e.EMBER_NAMED_BLOCKS=i(n.EMBER_NAMED_BLOCKS),e.EMBER_GLIMMER_HELPER_MANAGER=i(n.EMBER_GLIMMER_HELPER_MANAGER),e.EMBER_GLIMMER_INVOKE_HELPER=i(n.EMBER_GLIMMER_INVOKE_HELPER),e.EMBER_STRICT_MODE=i(n.EMBER_STRICT_MODE),e.EMBER_DYNAMIC_HELPERS_AND_MODIFIERS=i(n.EMBER_DYNAMIC_HELPERS_AND_MODIFIERS),e.EMBER_ROUTING_ROUTER_SERVICE_REFRESH=i(n.EMBER_ROUTING_ROUTER_SERVICE_REFRESH)})),e("@ember/component/helper",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Helper}}),Object.defineProperty(e,"helper",{enumerable:!0,get:function(){return t.helper}})})),e("@ember/component/index",["exports","@glimmer/manager","@ember/-internals/glimmer"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Input",{enumerable:!0,get:function(){return r.Input}}),Object.defineProperty(e,"Textarea",{enumerable:!0,get:function(){return r.Textarea}}),Object.defineProperty(e,"capabilities",{enumerable:!0,get:function(){return r.componentCapabilities}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return r.Component}}),Object.defineProperty(e,"getComponentTemplate",{enumerable:!0,get:function(){return t.getComponentTemplate}}),Object.defineProperty(e,"setComponentManager",{enumerable:!0,get:function(){return r.setComponentManager}}),Object.defineProperty(e,"setComponentTemplate",{enumerable:!0,get:function(){return t.setComponentTemplate}})})) -e("@ember/component/template-only",["exports","@glimmer/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.templateOnlyComponent}})})),e("@ember/controller/index",["exports","@ember/-internals/runtime","@ember/-internals/metal","@ember/controller/lib/controller_mixin"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.inject=function(){return(0,r.inject)("controller",...arguments)} -var i=t.FrameworkObject.extend(n.default) -e.default=i})),e("@ember/controller/lib/controller_mixin",["exports","@ember/-internals/metal","@ember/-internals/runtime","@ember/-internals/utils"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=(0,n.symbol)("MODEL") -e.default=t.Mixin.create(r.ActionHandler,{isController:!0,target:null,store:null,model:(0,t.computed)({get(){return this[i]},set(e,t){return this[i]=t}})})})),e("@ember/debug/container-debug-adapter",["exports","@ember/-internals/extension-support"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.ContainerDebugAdapter}})})),e("@ember/debug/data-adapter",["exports","@ember/-internals/extension-support"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.DataAdapter}})})),e("@ember/debug/index",["exports","@ember/-internals/browser-environment","@ember/error","@ember/debug/lib/deprecate","@ember/debug/lib/testing","@ember/debug/lib/warn","@ember/-internals/utils","@ember/debug/lib/capture-render-tree"],(function(e,t,r,n,i,a,s,o){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.assert=e._warnIfUsingStrippedFeatureFlags=void 0,Object.defineProperty(e,"captureRenderTree",{enumerable:!0,get:function(){return o.default}}),e.info=e.getDebugFunction=e.deprecateFunc=e.deprecate=e.debugSeal=e.debugFreeze=e.debug=void 0,Object.defineProperty(e,"inspect",{enumerable:!0,get:function(){return s.inspect}}),Object.defineProperty(e,"isTesting",{enumerable:!0,get:function(){return i.isTesting}}),Object.defineProperty(e,"registerDeprecationHandler",{enumerable:!0,get:function(){return n.registerHandler}}),Object.defineProperty(e,"registerWarnHandler",{enumerable:!0,get:function(){return a.registerHandler}}),e.setDebugFunction=e.runInDebug=void 0,Object.defineProperty(e,"setTesting",{enumerable:!0,get:function(){return i.setTesting}}),e.warn=void 0 -var u=()=>{},l=(e.assert=u,e.info=u,e.warn=u,e.debug=u,e.deprecate=u,e.debugSeal=u,e.debugFreeze=u,e.runInDebug=u,e.setDebugFunction=u,e.getDebugFunction=u,function(){return arguments[arguments.length-1]}) -e.deprecateFunc=l})),e("@ember/debug/lib/capture-render-tree",["exports","@glimmer/util"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return(0,t.expect)(e.lookup("renderer:-dom"),"BUG: owner is missing renderer").debugRenderTree.capture()}})),e("@ember/debug/lib/deprecate",["exports","@ember/-internals/environment","@ember/debug/index","@ember/debug/lib/handlers"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.missingOptionsIdDeprecation=e.missingOptionsDeprecation=e.missingOptionDeprecation=e.default=void 0 -var i=()=>{} -e.registerHandler=i -var a=()=>"" -e.missingOptionDeprecation=a -var s=()=>{} -e.default=s})),e("@ember/debug/lib/handlers",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.invoke=e.HANDLERS=void 0 -e.HANDLERS={} -var t=()=>{} -e.registerHandler=t -var r=()=>{} -e.invoke=r})),e("@ember/debug/lib/testing",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.isTesting=function(){return t},e.setTesting=function(e){t=Boolean(e)} -var t=!1})),e("@ember/debug/lib/warn",["exports","@ember/debug/index","@ember/debug/lib/handlers"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.missingOptionsIdDeprecation=e.missingOptionsDeprecation=e.default=void 0 -var n=()=>{} -e.registerHandler=n -var i=()=>{} -e.default=i})),e("@ember/deprecated-features/index",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.ASSIGN=void 0 -e.ASSIGN=!0})),e("@ember/destroyable/index",["exports","@glimmer/destroyable"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"assertDestroyablesDestroyed",{enumerable:!0,get:function(){return t.assertDestroyablesDestroyed}}),Object.defineProperty(e,"associateDestroyableChild",{enumerable:!0,get:function(){return t.associateDestroyableChild}}),Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return t.destroy}}),Object.defineProperty(e,"enableDestroyableTracking",{enumerable:!0,get:function(){return t.enableDestroyableTracking}}),Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return t.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return t.isDestroying}}),e.registerDestructor=function(e,r){return(0,t.registerDestructor)(e,r)},e.unregisterDestructor=function(e,r){return(0,t.unregisterDestructor)(e,r)}})),e("@ember/engine/index",["exports","@ember/engine/lib/engine-parent","@ember/-internals/utils","@ember/controller","@ember/-internals/runtime","@ember/-internals/container","dag-map","@ember/debug","@ember/-internals/metal","@ember/engine/instance","@ember/-internals/routing","@ember/-internals/extension-support","@ember/-internals/views","@ember/-internals/glimmer"],(function(e,t,r,n,i,a,s,o,u,l,c,d,h,p){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,Object.defineProperty(e,"getEngineParent",{enumerable:!0,get:function(){return t.getEngineParent}}),Object.defineProperty(e,"setEngineParent",{enumerable:!0,get:function(){return t.setEngineParent}}) -var f=i.Namespace.extend(i.RegistryProxyMixin,{init(){this._super(...arguments),this.buildRegistry()},_initializersRan:!1,ensureInitializers(){this._initializersRan||(this.runInitializers(),this._initializersRan=!0)},buildInstance(e={}){return this.ensureInitializers(),e.base=this,l.default.create(e)},buildRegistry(){return this.__registry__=this.constructor.buildRegistry(this)},initializer(e){this.constructor.initializer(e)},instanceInitializer(e){this.constructor.instanceInitializer(e)},runInitializers(){this._runInitializer("initializers",((e,t)=>{t.initialize(this)}))},runInstanceInitializers(e){this._runInitializer("instanceInitializers",((t,r)=>{r.initialize(e)}))},_runInitializer(e,t){for(var r,n=(0,u.get)(this.constructor,e),i=function(e){var t=[] -for(var r in e)t.push(r) -return t}(n),a=new s.default,o=0;ot(this._bootSync(e))))),this._bootPromise},_bootSync(e){return this._booted||(this.cloneParentDependencies(),this.setupRegistry(e),this.base.runInstanceInitializers(this),this._booted=!0),this},setupRegistry(e=this.__container__.lookup("-environment:main")){this.constructor.setupRegistry(this.__registry__,e)},unregister(e){this.__container__.reset(e),this._super(...arguments)},buildChildEngineInstance(e,t={}){var r=this.lookup(`engine:${e}`) -if(!r)throw new n.default(`You attempted to mount the engine '${e}', but it is not registered with its parent.`) -var i=r.buildInstance(t) -return(0,s.setEngineParent)(i,this),i},cloneParentDependencies(){var e=(0,s.getEngineParent)(this);["route:basic","service:-routing"].forEach((t=>this.register(t,e.resolveRegistration(t)))) -var t=e.lookup("-environment:main") -this.register("-environment:main",t,{instantiate:!1}) -var r=["router:main",i.privatize`-bucket-cache:main`,"-view-registry:main","renderer:-dom","service:-document"] -t.isInteractive&&r.push("event_dispatcher:main"),r.forEach((t=>this.register(t,e.lookup(t),{instantiate:!1})))}}) -o.reopenClass({setupRegistry(e,t){}}) -e.default=o})),e("@ember/engine/lib/engine-parent",["exports","@ember/-internals/utils"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.getEngineParent=function(e){return e[r]},e.setEngineParent=function(e,t){e[r]=t} -var r=(0,t.symbol)("ENGINE_PARENT")})),e("@ember/enumerable/index",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Enumerable}})})),e("@ember/error/index",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=Error})),e("@ember/helper/index",["exports","@glimmer/manager","@glimmer/runtime"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"array",{enumerable:!0,get:function(){return r.array}}),Object.defineProperty(e,"capabilities",{enumerable:!0,get:function(){return t.helperCapabilities}}),Object.defineProperty(e,"concat",{enumerable:!0,get:function(){return r.concat}}),Object.defineProperty(e,"fn",{enumerable:!0,get:function(){return r.fn}}),Object.defineProperty(e,"get",{enumerable:!0,get:function(){return r.get}}),Object.defineProperty(e,"hash",{enumerable:!0,get:function(){return r.hash}}),Object.defineProperty(e,"invokeHelper",{enumerable:!0,get:function(){return r.invokeHelper}}),Object.defineProperty(e,"setHelperManager",{enumerable:!0,get:function(){return t.setHelperManager}})})),e("@ember/instrumentation/index",["exports","@ember/-internals/environment"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._instrumentStart=l,e.flaggedInstrument=void 0,e.instrument=o,e.reset=function(){r.length=0,n={}},e.subscribe=function(e,t){for(var i,a=e.split("."),s=[],o=0;oc)) -return d===u?s.call(o):function(e,t,r,n){try{return e.call(n)}catch(i){throw r.exception=i,i}finally{t()}}(s,d,c,o)}function u(){}function l(e,i,a){if(0===r.length)return u -var o=n[e] -if(o||(o=function(e){for(var t,i=[],a=0;a{e=i.call(this)})) -return(0,n.updateTag)(r,a),(0,n.consumeTag)(a),e}),r} -function a(e,r,n){if(!(0,t.isElementDescriptor)([e,r,n])){n=e -var a=function(e,t,r,a,s){return i(e,t,n)} -return(0,t.setClassicDecorator)(a),a}return i(e,r,n)}(0,t.setClassicDecorator)(a)})),e("@ember/object/computed",["exports","@ember/-internals/metal","@ember/object/lib/computed/computed_macros","@ember/object/lib/computed/reduce_computed_macros"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"alias",{enumerable:!0,get:function(){return t.alias}}),Object.defineProperty(e,"and",{enumerable:!0,get:function(){return r.and}}),Object.defineProperty(e,"bool",{enumerable:!0,get:function(){return r.bool}}),Object.defineProperty(e,"collect",{enumerable:!0,get:function(){return n.collect}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.ComputedProperty}}),Object.defineProperty(e,"deprecatingAlias",{enumerable:!0,get:function(){return r.deprecatingAlias}}),Object.defineProperty(e,"empty",{enumerable:!0,get:function(){return r.empty}}),Object.defineProperty(e,"equal",{enumerable:!0,get:function(){return r.equal}}),Object.defineProperty(e,"expandProperties",{enumerable:!0,get:function(){return t.expandProperties}}),Object.defineProperty(e,"filter",{enumerable:!0,get:function(){return n.filter}}),Object.defineProperty(e,"filterBy",{enumerable:!0,get:function(){return n.filterBy}}),Object.defineProperty(e,"gt",{enumerable:!0,get:function(){return r.gt}}),Object.defineProperty(e,"gte",{enumerable:!0,get:function(){return r.gte}}),Object.defineProperty(e,"intersect",{enumerable:!0,get:function(){return n.intersect}}),Object.defineProperty(e,"lt",{enumerable:!0,get:function(){return r.lt}}),Object.defineProperty(e,"lte",{enumerable:!0,get:function(){return r.lte}}),Object.defineProperty(e,"map",{enumerable:!0,get:function(){return n.map}}),Object.defineProperty(e,"mapBy",{enumerable:!0,get:function(){return n.mapBy}}),Object.defineProperty(e,"match",{enumerable:!0,get:function(){return r.match}}),Object.defineProperty(e,"max",{enumerable:!0,get:function(){return n.max}}),Object.defineProperty(e,"min",{enumerable:!0,get:function(){return n.min}}),Object.defineProperty(e,"none",{enumerable:!0,get:function(){return r.none}}),Object.defineProperty(e,"not",{enumerable:!0,get:function(){return r.not}}),Object.defineProperty(e,"notEmpty",{enumerable:!0,get:function(){return r.notEmpty}}),Object.defineProperty(e,"oneWay",{enumerable:!0,get:function(){return r.oneWay}}),Object.defineProperty(e,"or",{enumerable:!0,get:function(){return r.or}}),Object.defineProperty(e,"readOnly",{enumerable:!0,get:function(){return r.readOnly}}),Object.defineProperty(e,"reads",{enumerable:!0,get:function(){return r.oneWay}}),Object.defineProperty(e,"setDiff",{enumerable:!0,get:function(){return n.setDiff}}) -Object.defineProperty(e,"sort",{enumerable:!0,get:function(){return n.sort}}),Object.defineProperty(e,"sum",{enumerable:!0,get:function(){return n.sum}}),Object.defineProperty(e,"union",{enumerable:!0,get:function(){return n.union}}),Object.defineProperty(e,"uniq",{enumerable:!0,get:function(){return n.uniq}}),Object.defineProperty(e,"uniqBy",{enumerable:!0,get:function(){return n.uniqBy}})})),e("@ember/object/core",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.CoreObject}})})),e("@ember/object/evented",["exports","@ember/-internals/runtime","@ember/-internals/metal"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Evented}}),Object.defineProperty(e,"on",{enumerable:!0,get:function(){return r.on}})})),e("@ember/object/events",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"addListener",{enumerable:!0,get:function(){return t.addListener}}),Object.defineProperty(e,"removeListener",{enumerable:!0,get:function(){return t.removeListener}}),Object.defineProperty(e,"sendEvent",{enumerable:!0,get:function(){return t.sendEvent}})})),e("@ember/object/index",["exports","@ember/debug","@ember/-internals/metal","@ember/-internals/runtime"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.action=s,Object.defineProperty(e,"computed",{enumerable:!0,get:function(){return r.computed}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return n.Object}}),Object.defineProperty(e,"defineProperty",{enumerable:!0,get:function(){return r.defineProperty}}),Object.defineProperty(e,"get",{enumerable:!0,get:function(){return r.get}}),Object.defineProperty(e,"getProperties",{enumerable:!0,get:function(){return r.getProperties}}),Object.defineProperty(e,"notifyPropertyChange",{enumerable:!0,get:function(){return r.notifyPropertyChange}}),Object.defineProperty(e,"observer",{enumerable:!0,get:function(){return r.observer}}),Object.defineProperty(e,"set",{enumerable:!0,get:function(){return r.set}}),Object.defineProperty(e,"setProperties",{enumerable:!0,get:function(){return r.setProperties}}),Object.defineProperty(e,"trySet",{enumerable:!0,get:function(){return r.trySet}}) -var i=new WeakMap -function a(e,t,r){if(void 0!==e.constructor&&"function"==typeof e.constructor.proto&&e.constructor.proto(),!Object.prototype.hasOwnProperty.call(e,"actions")){var n=e.actions -e.actions=n?Object.assign({},n):{}}return e.actions[t]=r,{get(){var e=i.get(this) -void 0===e&&(e=new Map,i.set(this,e)) -var t=e.get(r) -return void 0===t&&(t=r.bind(this),e.set(r,t)),t}}}function s(e,t,n){var i -if(!(0,r.isElementDescriptor)([e,t,n])){i=e -var s=function(e,t,r,n,s){return a(e,t,i)} -return(0,r.setClassicDecorator)(s),s}return a(e,t,i=n.value)}(0,r.setClassicDecorator)(s)})),e("@ember/object/internals",["exports","@ember/-internals/metal","@ember/-internals/utils"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"cacheFor",{enumerable:!0,get:function(){return t.getCachedValueFor}}),Object.defineProperty(e,"guidFor",{enumerable:!0,get:function(){return r.guidFor}})})),e("@ember/object/lib/computed/computed_macros",["exports","@ember/-internals/metal","@ember/debug"],(function(e,t,r){"use strict" -function n(e,r){return(...e)=>{var n=function(e,r){var n=[] -function i(e){n.push(e)}for(var a=0;ar}))},e.gte=function(e,r){return(0,t.computed)(e,(function(){return(0,t.get)(this,e)>=r}))},e.lt=function(e,r){return(0,t.computed)(e,(function(){return(0,t.get)(this,e)e)),e.or=n(0,(e=>!e))})),e("@ember/object/lib/computed/reduce_computed_macros",["exports","@ember/debug","@ember/-internals/metal","@ember/-internals/runtime"],(function(e,t,r,n){"use strict" -function i(e,t,n,i){return(0,r.computed)(`${e}.[]`,(function(){var i=(0,r.get)(this,e) -return null===i||"object"!=typeof i?n:i.reduce(t,n,this)})).readOnly()}function a(e,t,i){var a -return/@each/.test(e)?a=e.replace(/\.@each.*$/,""):(a=e,e+=".[]"),(0,r.computed)(e,...t,(function(){var e=(0,r.get)(this,a) -return(0,n.isArray)(e)?(0,n.A)(i.call(this,e)):(0,n.A)()})).readOnly()}function s(e,t,i){var a=e.map((e=>`${e}.[]`)) -return(0,r.computed)(...a,(function(){return(0,n.A)(t.call(this,e))})).readOnly()}function o(e,t,r){return void 0===r&&"function"==typeof t&&(r=t,t=[]),a(e,t,(function(e){return e.map(r,this)}))}function u(e,t,r){return void 0===r&&"function"==typeof t&&(r=t,t=[]),a(e,t,(function(e){return e.filter(r,this)}))}function l(...e){return s(e,(function(e){var t=(0,n.A)(),i=new Set -return e.forEach((e=>{var a=(0,r.get)(this,e);(0,n.isArray)(a)&&a.forEach((e=>{i.has(e)||(i.add(e),t.push(e))}))})),t}))}Object.defineProperty(e,"__esModule",{value:!0}),e.collect=function(...e){return s(e,(function(){var t=e.map((e=>{var t=(0,r.get)(this,e) -return void 0===t?null:t})) -return(0,n.A)(t)}),"collect")},e.filter=u,e.filterBy=function(e,t,n){var i -i=2===arguments.length?e=>(0,r.get)(e,t):e=>(0,r.get)(e,t)===n -return u(`${e}.@each.${t}`,i)},e.intersect=function(...e){return s(e,(function(e){var t=e.map((e=>{var t=(0,r.get)(this,e) -return(0,n.isArray)(t)?t:[]})),i=t.pop().filter((e=>{for(var r=0;r(0,r.get)(e,t)))},e.max=function(e){return i(e,((e,t)=>Math.max(e,t)),-1/0,"max")},e.min=function(e){return i(e,((e,t)=>Math.min(e,t)),1/0,"min")},e.setDiff=function(e,t){return(0,r.computed)(`${e}.[]`,`${t}.[]`,(function(){var i=(0,r.get)(this,e),a=(0,r.get)(this,t) -return(0,n.isArray)(i)?(0,n.isArray)(a)?i.filter((e=>-1===a.indexOf(e))):(0,n.A)(i):(0,n.A)()})).readOnly()},e.sort=function(e,t,i){void 0!==i||Array.isArray(t)||(i=t,t=[]) -return"function"==typeof i?function(e,t,r){return a(e,t,(function(e){return e.slice().sort(((e,t)=>r.call(this,e,t)))}))}(e,t,i):function(e,t){var i=(0,r.autoComputed)((function(i){var a=(0,r.get)(this,t),s="@this"===e,o=function(e){return e.map((e=>{var[t,r]=e.split(":") -return[t,r=r||"asc"]}))}(a),u=s?this:(0,r.get)(this,e) -return(0,n.isArray)(u)?0===o.length?(0,n.A)(u.slice()):function(e,t){return(0,n.A)(e.slice().sort(((e,i)=>{for(var a=0;ae+t),0,"sum")},e.union=void 0,e.uniq=l,e.uniqBy=function(e,t){return(0,r.computed)(`${e}.[]`,(function(){var i=(0,r.get)(this,e) -return(0,n.isArray)(i)?(0,n.uniqBy)(i,t):(0,n.A)()})).readOnly()} -e.union=l})) -e("@ember/object/mixin",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Mixin}})})),e("@ember/object/observable",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Observable}})})),e("@ember/object/observers",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"addObserver",{enumerable:!0,get:function(){return t.addObserver}}),Object.defineProperty(e,"removeObserver",{enumerable:!0,get:function(){return t.removeObserver}})})),e("@ember/object/promise-proxy-mixin",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.PromiseProxyMixin}})})),e("@ember/object/proxy",["exports","@ember/-internals/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.ObjectProxy}})})),e("@ember/polyfills/index",["exports","@ember/polyfills/lib/assign"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"assign",{enumerable:!0,get:function(){return t.assign}}),e.hasPropertyAccessors=void 0 -e.hasPropertyAccessors=!0})),e("@ember/polyfills/lib/assign",["exports","@ember/debug"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.assign=function(e,...t){return Object.assign(e,...t)}})),e("@ember/routing/auto-location",["exports","@ember/-internals/routing"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.AutoLocation}})})),e("@ember/routing/hash-location",["exports","@ember/-internals/routing"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.HashLocation}})})),e("@ember/routing/history-location",["exports","@ember/-internals/routing"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.HistoryLocation}})})),e("@ember/routing/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"LinkTo",{enumerable:!0,get:function(){return t.LinkTo}})})),e("@ember/routing/location",["exports","@ember/-internals/routing"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Location}})})),e("@ember/routing/none-location",["exports","@ember/-internals/routing"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.NoneLocation}})})),e("@ember/routing/route",["exports","@ember/-internals/routing"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Route}})})),e("@ember/routing/router",["exports","@ember/-internals/routing"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Router}})})),e("@ember/runloop/index",["exports","@ember/debug","@ember/-internals/error-handling","@ember/-internals/metal","backburner"],(function(e,t,r,n,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._backburner=void 0,e._cancelTimers=function(){u.cancelTimers()},e._getCurrentRunLoop=function(){return a},e._hasScheduledTimers=function(){return u.hasTimers()},e._rsvpErrorQueue=e._queues=void 0,e.begin=function(){u.begin()},e.bind=void 0,e.cancel=function(e){return u.cancel(e)},e.debounce=function(){return u.debounce(...arguments)},e.end=function(){u.end()},e.join=l,e.later=function(){return u.later(...arguments)},e.next=function(...e){return e.push(1),u.later(...e)},e.once=function(...e){return e.unshift("actions"),u.scheduleOnce(...e)},e.run=function(){return u.run(...arguments)},e.schedule=function(){return u.schedule(...arguments)},e.scheduleOnce=function(){return u.scheduleOnce(...arguments)},e.throttle=function(){return u.throttle(...arguments)} -var a=null -var s=e._rsvpErrorQueue=`${Math.random()}${Date.now()}`.replace(".",""),o=e._queues=["actions","routerTransitions","render","afterRender","destroy",s],u=e._backburner=new i.default(o,{defaultQueue:"actions",onBegin:function(e){a=e},onEnd:function(e,t){a=t,(0,n.flushAsyncObservers)()},onErrorTarget:r.onErrorTarget,onErrorMethod:"onerror",flush:function(e,t){"render"!==e&&e!==s||(0,n.flushAsyncObservers)(),t()}}) -function l(){return u.join(...arguments)}e.bind=(...e)=>(...t)=>l(...e.concat(t))})),e("@ember/service/index",["exports","@ember/-internals/runtime","@ember/-internals/metal"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.inject=function(){return(0,r.inject)("service",...arguments)} -var n=t.FrameworkObject.extend() -n.reopenClass({isServiceFactory:!0}) -e.default=n})),e("@ember/string/index",["exports","@ember/string/lib/string_registry","@ember/-internals/utils","@ember/debug","@ember/-internals/glimmer"],(function(e,t,r,n,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"_getStrings",{enumerable:!0,get:function(){return t.getStrings}}),Object.defineProperty(e,"_setStrings",{enumerable:!0,get:function(){return t.setStrings}}),e.camelize=function(e){return l.get(e)},e.capitalize=function(e){return b.get(e)},e.classify=function(e){return p.get(e)},e.dasherize=function(e){return s.get(e)},e.decamelize=w,e.htmlSafe=function(e){return O("htmlSafe"),(0,i.htmlSafe)(e)},e.isHTMLSafe=function(e){return O("isHTMLSafe"),(0,i.isHTMLSafe)(e)},e.underscore=function(e){return g.get(e)},e.w=function(e){return e.split(/\s+/)} -var a=/[ _]/g,s=new r.Cache(1e3,(e=>w(e).replace(a,"-"))),o=/(-|_|\.|\s)+(.)?/g,u=/(^|\/)([A-Z])/g,l=new r.Cache(1e3,(e=>e.replace(o,((e,t,r)=>r?r.toUpperCase():"")).replace(u,(e=>e.toLowerCase())))),c=/^(-|_)+(.)?/,d=/(.)(-|_|\.|\s)+(.)?/g,h=/(^|\/|\.)([a-z])/g,p=new r.Cache(1e3,(e=>{for(var t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/"),i=0;ie.toUpperCase()))})),f=/([a-z\d])([A-Z]+)/g,m=/-|\s+/g,g=new r.Cache(1e3,(e=>e.replace(f,"$1_$2").replace(m,"_").toLowerCase())),v=/(^|\/)([a-z\u00C0-\u024F])/g,b=new r.Cache(1e3,(e=>e.replace(v,(e=>e.toUpperCase())))),y=/([a-z\d])([A-Z])/g,_=new r.Cache(1e3,(e=>e.replace(y,"$1_$2").toLowerCase())) -function w(e){return _.get(e)}function O(e,t=`Importing ${e} from '@ember/string' is deprecated. Please import ${e} from '@ember/template' instead.`){}})),e("@ember/string/lib/string_registry",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.getString=function(e){return t[e]},e.getStrings=function(){return t},e.setStrings=function(e){t=e} -var t={}})),e("@ember/template-compilation/index",["exports","ember-template-compiler"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"compileTemplate",{enumerable:!0,get:function(){return t.compile}}),e.precompileTemplate=void 0})),e("@ember/template-factory/index",["exports","@glimmer/opcode-compiler"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"createTemplateFactory",{enumerable:!0,get:function(){return t.templateFactory}})})),e("@ember/template/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"htmlSafe",{enumerable:!0,get:function(){return t.htmlSafe}}),Object.defineProperty(e,"isHTMLSafe",{enumerable:!0,get:function(){return t.isHTMLSafe}})})),e("@ember/test/adapter",["exports","ember-testing"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Test.Adapter})),e("@ember/test/index",["exports","require"],(function(e,t){"use strict" -if(Object.defineProperty(e,"__esModule",{value:!0}),e.unregisterWaiter=e.unregisterHelper=e.registerWaiter=e.registerHelper=e.registerAsyncHelper=void 0,(0,t.has)("ember-testing")){var{Test:r}=(0,t.default)("ember-testing") -e.registerAsyncHelper=r.registerAsyncHelper,e.registerHelper=r.registerHelper,e.registerWaiter=r.registerWaiter,e.unregisterHelper=r.unregisterHelper,e.unregisterWaiter=r.unregisterWaiter}else{var n=()=>{throw new Error("Attempted to use test utilities, but `ember-testing` was not included")} -e.registerAsyncHelper=n,e.registerHelper=n,e.registerWaiter=n,e.unregisterHelper=n,e.unregisterWaiter=n}})),e("@ember/utils/index",["exports","@ember/-internals/metal","@ember/-internals/runtime"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"compare",{enumerable:!0,get:function(){return r.compare}}),Object.defineProperty(e,"isBlank",{enumerable:!0,get:function(){return t.isBlank}}),Object.defineProperty(e,"isEmpty",{enumerable:!0,get:function(){return t.isEmpty}}),Object.defineProperty(e,"isEqual",{enumerable:!0,get:function(){return r.isEqual}}),Object.defineProperty(e,"isNone",{enumerable:!0,get:function(){return t.isNone}}),Object.defineProperty(e,"isPresent",{enumerable:!0,get:function(){return t.isPresent}}),Object.defineProperty(e,"typeOf",{enumerable:!0,get:function(){return r.typeOf}})})),e("@ember/version/index",["exports","ember/version"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"VERSION",{enumerable:!0,get:function(){return t.default}})})),e("@glimmer/destroyable",["exports","@glimmer/util","@glimmer/global-context"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._hasDestroyableChildren=function(e){var t=n.get(e) -return void 0!==t&&null!==t.children},e.assertDestroyablesDestroyed=void 0,e.associateDestroyableChild=function(e,t){0 -var r=o(e),n=o(t) -return r.children=i(r.children,t),n.parents=i(n.parents,e),t},e.destroy=u,e.destroyChildren=function(e){var{children:t}=o(e) -a(t,u)},e.enableDestroyableTracking=void 0,e.isDestroyed=function(e){var t=n.get(e) -return void 0!==t&&t.state>=2},e.isDestroying=l,e.registerDestructor=function(e,t,r=!1){0 -var n=o(e),a=!0===r?"eagerDestructors":"destructors" -return n[a]=i(n[a],t),t},e.unregisterDestructor=function(e,t,r=!1){0 -var n=o(e),i=!0===r?"eagerDestructors":"destructors" -n[i]=s(n[i],t,!1)} -var n=new WeakMap -function i(e,t){return null===e?t:Array.isArray(e)?(e.push(t),e):[e,t]}function a(e,t){if(Array.isArray(e))for(var r=0;r1){var n=e.indexOf(t) -return e.splice(n,1),e}return null}function o(e){var t=n.get(e) -return void 0===t&&(t={parents:null,children:null,eagerDestructors:null,destructors:null,state:0},n.set(e,t)),t}function u(e){var t=o(e) -if(!(t.state>=1)){var{parents:n,children:i,eagerDestructors:l,destructors:c}=t -t.state=1,a(i,u),a(l,(t=>t(e))),a(c,(t=>(0,r.scheduleDestroy)(e,t))),(0,r.scheduleDestroyed)((()=>{a(n,(t=>function(e,t){var r=o(t) -0===r.state&&(r.children=s(r.children,e))}(e,t))),t.state=2}))}}function l(e){var t=n.get(e) -return void 0!==t&&t.state>=1}})),e("@glimmer/encoder",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.InstructionEncoderImpl=void 0 -e.InstructionEncoderImpl=class{constructor(e){this.buffer=e,this.size=0}encode(e,t){if(e>255)throw new Error(`Opcode type over 8-bits. Got ${e}.`) -var r=e|t|arguments.length-2<<8 -this.buffer.push(r) -for(var n=2;n{} -e.scheduleRevalidate=t -e.default=function(r){e.scheduleRevalidate=t=r.scheduleRevalidate,e.scheduleDestroy=r.scheduleDestroy,e.scheduleDestroyed=r.scheduleDestroyed,e.toIterator=r.toIterator,e.toBool=r.toBool,e.getProp=r.getProp,e.setProp=r.setProp,e.getPath=r.getPath,e.setPath=r.setPath,e.warnIfStyleNotTrusted=r.warnIfStyleNotTrusted,e.assert=r.assert,e.deprecate=r.deprecate}})) -e("@glimmer/low-level",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.Storage=e.Stack=void 0 -e.Storage=class{constructor(){this.array=[],this.next=0}add(e){var{next:t,array:r}=this -if(t===r.length)this.next++ -else{var n=r[t] -this.next=n}return this.array[t]=e,t}deref(e){return this.array[e]}drop(e){this.array[e]=this.next,this.next=e}} -class t{constructor(e=[]){this.vec=e}clone(){return new t(this.vec.slice())}sliceFrom(e){return new t(this.vec.slice(e))}slice(e,r){return new t(this.vec.slice(e,r))}copy(e,t){this.vec[t]=this.vec[e]}writeRaw(e,t){this.vec[e]=t}getRaw(e){return this.vec[e]}reset(){this.vec.length=0}len(){return this.vec.length}}e.Stack=t})),e("@glimmer/manager",["exports","@glimmer/util","@glimmer/reference","@glimmer/validator","@glimmer/destroyable"],(function(e,t,r,n,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.CustomModifierManager=e.CustomHelperManager=e.CustomComponentManager=void 0,e.capabilityFlagsFrom=function(e){return(e.dynamicLayout?1:0)|(e.dynamicTag?2:0)|(e.prepareArgs?4:0)|(e.createArgs?8:0)|(e.attributeHook?16:0)|(e.elementHook?32:0)|(e.dynamicScope?64:0)|(e.createCaller?128:0)|(e.updateHook?256:0)|(e.createInstance?512:0)|(e.wrapped?1024:0)|(e.willDestroy?2048:0)|(e.hasSubOwner?4096:0)},e.componentCapabilities=function(e,t={}){0 -var r=Boolean(t.updateHook) -return f({asyncLifeCycleCallbacks:Boolean(t.asyncLifecycleCallbacks),destructor:Boolean(t.destructor),updateHook:r})},e.getComponentTemplate=function(e){var t=e -for(;null!==t;){var r=M.get(t) -if(void 0!==r)return r -t=j(t)}return},e.getCustomTagFor=function(e){return g.get(e)},e.getInternalComponentManager=function(e,t){0 -var r=c(a,e) -if(void 0===r&&!0===t)return null -return r},e.getInternalHelperManager=function(e,t){0 -var r=c(o,e) -if(void 0===r&&!0===t)return null -return r},e.getInternalModifierManager=function(e,t){0 -var r=c(s,e) -if(void 0===r&&!0===t)return null -return r},e.hasCapability=function(e,t){return!!(e&t)},e.hasDestroyable=k,e.hasInternalComponentManager=function(e){return void 0!==c(a,e)},e.hasInternalHelperManager=function(e){return void 0!==c(o,e)},e.hasInternalModifierManager=function(e){return void 0!==c(s,e)},e.hasValue=A,e.helperCapabilities=function(e,t={}){0 -0 -0 -return f({hasValue:Boolean(t.hasValue),hasDestroyable:Boolean(t.hasDestroyable),hasScheduledEffect:Boolean(t.hasScheduledEffect)})},e.managerHasCapability=function(e,t,r){return!!(t&r)},e.modifierCapabilities=function(e,t={}){0 -return f({disableAutoTracking:Boolean(t.disableAutoTracking)})},e.setComponentManager=function(e,t){return p(new P(e),t)},e.setComponentTemplate=function(e,t){0 -0 -return M.set(t,e),t},e.setCustomTagFor=v,e.setHelperManager=function(e,t){return h(new S(e),t)},e.setInternalComponentManager=p,e.setInternalHelperManager=h,e.setInternalModifierManager=d,e.setModifierManager=function(e,t){return d(new x(e),t)} -var a=new WeakMap,s=new WeakMap,o=new WeakMap,u=Object.getPrototypeOf -function l(e,t,r){return e.set(r,t),r}function c(e,t){for(var r=t;null!=r;){var n=e.get(r) -if(void 0!==n)return n -r=u(r)}}function d(e,t){return l(s,e,t)}function h(e,t){return l(o,e,t)}function p(e,t){return l(a,e,t)}function f(e){return e}var m,g=new WeakMap -function v(e,t){g.set(e,t)}function b(e){if("symbol"==typeof e)return null -var t=Number(e) -return isNaN(t)?null:t%1==0?t:null}function y(e,t){return(0,n.track)((()=>{t in e&&(0,r.valueForRef)(e[t])}))}function _(e,t){return(0,n.track)((()=>{"[]"===t&&e.forEach(r.valueForRef) -var n=b(t) -null!==n&&n{var{named:r,positional:n}=e,i=new w(r),a=new O(n),s=Object.create(null),o=new Proxy(s,i),u=new Proxy([],a) -return v(o,((e,t)=>y(r,t))),v(u,((e,t)=>_(n,t))),{named:o,positional:u}}:(e,t)=>{var{named:n,positional:i}=e,a={},s=[] -return v(a,((e,t)=>y(n,t))),v(s,((e,t)=>_(i,t))),Object.keys(n).forEach((e=>{Object.defineProperty(a,e,{enumerable:!0,configurable:!0,get:()=>(0,r.valueForRef)(n[e])})})),i.forEach(((e,t)=>{Object.defineProperty(s,t,{enumerable:!0,configurable:!0,get:()=>(0,r.valueForRef)(e)})})),{named:a,positional:s}} -var E={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -function R(e){return e.capabilities.asyncLifeCycleCallbacks}function T(e){return e.capabilities.updateHook}class P{constructor(e){this.factory=e,this.componentManagerDelegates=new WeakMap}getDelegateFor(e){var{componentManagerDelegates:t}=this,r=t.get(e) -if(void 0===r){var{factory:n}=this -r=n(e),t.set(e,r)}return r}create(e,t,r){var n=this.getDelegateFor(e),i=m(r.capture(),"component"),a=n.createComponent(t,i) -return new C(a,n,i)}getDebugName(e){return"function"==typeof e?e.name:e.toString()}update(e){var{delegate:t}=e -if(T(t)){var{component:r,args:n}=e -t.updateComponent(r,n)}}didCreate({component:e,delegate:t}){R(t)&&t.didCreateComponent(e)}didUpdate({component:e,delegate:t}){(function(e){return R(e)&&T(e)})(t)&&t.didUpdateComponent(e)}didRenderLayout(){}didUpdateLayout(){}getSelf({component:e,delegate:t}){return(0,r.createConstRef)(t.getContext(e),"this")}getDestroyable(e){var{delegate:t}=e -if(function(e){return e.capabilities.destructor}(t)){var{component:r}=e -return(0,i.registerDestructor)(e,(()=>t.destroyComponent(r))),e}return null}getCapabilities(){return E}}e.CustomComponentManager=P -class C{constructor(e,t,r){this.component=e,this.delegate=t,this.args=r}}class x{constructor(e){this.factory=e,this.componentManagerDelegates=new WeakMap}getDelegateFor(e){var{componentManagerDelegates:t}=this,r=t.get(e) -if(void 0===r){var{factory:n}=this -r=n(e),t.set(e,r)}return r}create(e,t,r,a){var s,o=this.getDelegateFor(e),u=m(a,"modifier"),l=o.createModifier(r,u) -return s={tag:(0,n.createUpdatableTag)(),element:t,delegate:o,args:u,modifier:l},(0,i.registerDestructor)(s,(()=>o.destroyModifier(l,u))),s}getDebugName({debugName:e}){return e}getTag({tag:e}){return e}install({element:e,args:t,modifier:r,delegate:i}){var{capabilities:a}=i -!0===a.disableAutoTracking?(0,n.untrack)((()=>i.installModifier(r,e,t))):i.installModifier(r,e,t)}update({args:e,modifier:t,delegate:r}){var{capabilities:i}=r -!0===i.disableAutoTracking?(0,n.untrack)((()=>r.updateModifier(t,e))):r.updateModifier(t,e)}getDestroyable(e){return e}}function A(e){return e.capabilities.hasValue}function k(e){return e.capabilities.hasDestroyable}e.CustomModifierManager=x -class S{constructor(e){this.factory=e,this.helperManagerDelegates=new WeakMap,this.undefinedDelegate=null}getDelegateForOwner(e){var t=this.helperManagerDelegates.get(e) -if(void 0===t){var{factory:r}=this -t=r(e),this.helperManagerDelegates.set(e,t)}return t}getDelegateFor(e){if(void 0===e){var{undefinedDelegate:t}=this -if(null===t){var{factory:r}=this -this.undefinedDelegate=t=r(void 0)}return t}return this.getDelegateForOwner(e)}getHelper(e){return(t,n)=>{var a=this.getDelegateFor(n),s=m(t,"helper"),o=a.createHelper(e,s) -if(A(a)){var u=(0,r.createComputeRef)((()=>a.getValue(o)),null,!1) -return k(a)&&(0,i.associateDestroyableChild)(u,a.getDestroyable(o)),u}if(k(a)){var l=(0,r.createConstRef)(void 0,!1) -return(0,i.associateDestroyableChild)(l,a.getDestroyable(o)),l}return r.UNDEFINED_REFERENCE}}}e.CustomHelperManager=S -var M=new WeakMap,j=Object.getPrototypeOf})),e("@glimmer/node",["exports","@glimmer/runtime","@simple-dom/document"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.NodeDOMTreeConstruction=void 0,e.serializeBuilder=function(e,t){return a.forInitialRender(e,t)} -class n extends t.DOMTreeConstruction{constructor(e){super(e||(0,r.default)())}setupUselessElement(){}insertHTMLBefore(e,r,n){var i=this.document.createRawHTMLSection(n) -return e.insertBefore(i,r),new t.ConcreteBounds(e,i,i)}createElement(e){return this.document.createElement(e)}setAttribute(e,t,r){e.setAttribute(t,r)}}e.NodeDOMTreeConstruction=n -var i=new WeakMap -class a extends t.NewElementBuilder{constructor(){super(...arguments),this.serializeBlockDepth=0}__openBlock(){var{tagName:e}=this.element -if("TITLE"!==e&&"SCRIPT"!==e&&"STYLE"!==e){var t=this.serializeBlockDepth++ -this.__appendComment(`%+b:${t}%`)}super.__openBlock()}__closeBlock(){var{tagName:e}=this.element -if(super.__closeBlock(),"TITLE"!==e&&"SCRIPT"!==e&&"STYLE"!==e){var t=--this.serializeBlockDepth -this.__appendComment(`%-b:${t}%`)}}__appendHTML(e){var{tagName:r}=this.element -if("TITLE"===r||"SCRIPT"===r||"STYLE"===r)return super.__appendHTML(e) -var n=this.__appendComment("%glmr%") -if("TABLE"===r){var i=e.indexOf("<") -if(i>-1)"tr"===e.slice(i+1,i+3)&&(e=`${e}`)}""===e?this.__appendComment("% %"):super.__appendHTML(e) -var a=this.__appendComment("%glmr%") -return new t.ConcreteBounds(this.element,n,a)}__appendText(e){var{tagName:t}=this.element,r=function(e){var{element:t,nextSibling:r}=e -return null===r?t.lastChild:r.previousSibling}(this) -return"TITLE"===t||"SCRIPT"===t||"STYLE"===t?super.__appendText(e):""===e?this.__appendComment("% %"):(r&&3===r.nodeType&&this.__appendComment("%|%"),super.__appendText(e))}closeElement(){return i.has(this.element)&&(i.delete(this.element),super.closeElement()),super.closeElement()}openElement(e){return"tr"===e&&"TBODY"!==this.element.tagName&&"THEAD"!==this.element.tagName&&"TFOOT"!==this.element.tagName&&(this.openElement("tbody"),i.set(this.constructing,!0),this.flushElement(null)),super.openElement(e)}pushRemoteElement(e,t,r=null){var{dom:n}=this,i=n.createElement("script") -return i.setAttribute("glmr",t),n.insertBefore(e,i,r),super.pushRemoteElement(e,t,r)}}})),e("@glimmer/opcode-compiler",["exports","@glimmer/util","@glimmer/vm","@glimmer/global-context","@glimmer/manager","@glimmer/encoder"],(function(e,t,r,n,i,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.WrappedBuilder=e.StdLib=e.MINIMAL_CAPABILITIES=e.EMPTY_BLOCKS=e.DEFAULT_CAPABILITIES=e.CompileTimeCompilationContextImpl=void 0,e.compilable=ee,e.compileStatements=te,e.compileStd=se,e.debugCompiler=void 0,e.invokeStaticBlock=N,e.invokeStaticBlockWithStack=I,e.meta=P,e.programCompilationContext=function(e,t){return new le(e,t)},e.templateCacheCounters=void 0,e.templateCompilationContext=W,e.templateFactory=function({id:e,moduleName:t,block:r,scope:n,isStrictMode:i}){var a,s=e||"client-"+de++,o=null,u=new WeakMap,l=e=>{if(void 0===a&&(a=JSON.parse(r)),void 0===e)return null===o?(he.cacheMiss++,o=new pe({id:s,block:a,moduleName:t,owner:null,scope:n,isStrictMode:i})):he.cacheHit++,o -var l=u.get(e) -return void 0===l?(he.cacheMiss++,l=new pe({id:s,block:a,moduleName:t,owner:e,scope:n,isStrictMode:i}),u.set(e,l)):he.cacheHit++,l} -return l.__id=s,l.__meta={moduleName:t},l} -class s{constructor(e){this.blocks=e,this.names=e?Object.keys(e):[]}get(e){return this.blocks&&this.blocks[e]||null}has(e){var{blocks:t}=this -return null!==t&&e in t}with(e,r){var{blocks:n}=this -return new s(n?(0,t.assign)({},n,{[e]:r}):{[e]:r})}get hasAny(){return null!==this.blocks}}var o=e.EMPTY_BLOCKS=new s(null) -function u(e){if(null===e)return o -for(var r=(0,t.dict)(),[n,i]=e,a=0;a{if(!function(e){return Array.isArray(e)&&2===e.length}(t))return!1 -var r=t[0] -return 31===r||32===r||r===e}}var f=p(39),m=p(38),g=p(37),v=p(35),b=p(34) -function y(e,t,r,n,i){var{upvars:a}=r,s=a[e[1]],o=t.lookupBuiltInHelper(s) -return n.helper(o,s)}class _{constructor(){this.names={},this.funcs=[]}add(e,t){this.names[e]=this.funcs.push(t)-1}compile(e,t){var r=t[0],n=this.names[r];(0,this.funcs[n])(e,t)}}var w=new _ -function O(e,t){if(void 0!==t&&0!==t.length)for(var r=0;r=0;s--){var o=n[s] -e(1e3,o.label),e(34,1),o.callback(),0!==s&&e(4,l("END"))}e(1e3,"END"),e(1002),e(70)}function L(e,t,r){e(1001),e(0),e(6,l("ENDINITIAL")),e(69,t()),r(),e(1e3,"FINALLY"),e(70),e(5),e(1e3,"ENDINITIAL"),e(1),e(1002)}function B(e,t,r,n){return L(e,t,(()=>{e(66,l("ELSE")),r(),e(4,l("FINALLY")),e(1e3,"ELSE"),void 0!==n&&n()}))}w.add(29,((e,[,t])=>{for(var r of t)E(e,r) -e(27,t.length)})),w.add(28,((e,[,t,r,n])=>{g(t)?e(1005,t,(t=>{k(e,t,r,n)})):(E(e,t),S(e,r,n))})),w.add(50,((e,[,t,n,i,a])=>{(function(e,t,n,i,a){e(0),R(e,i,a,!1),e(86),E(e,n),e(77,t,{type:2,value:void 0}),e(1),e(36,r.$v0)})(e,n,t,i,a)})),w.add(30,((e,[,t,r])=>{e(21,t),O(e,r)})),w.add(32,((e,[,t,r])=>{e(1011,t,(t=>{e(29,t),O(e,r)}))})),w.add(31,((e,[,t,r])=>{e(1009,t,(e=>{}))})),w.add(34,(()=>{throw new Error("unimplemented opcode")})),w.add(36,((e,t)=>{e(1010,t[1],(r=>{e(1006,t,{ifHelper:t=>{k(e,t,null,null)}})}))})),w.add(99,((e,t)=>{e(1010,t[1],(r=>{e(1006,t,{ifHelper:(r,n,i)=>{t[2][0] -k(e,r,null,null)}})}))})),w.add(27,(e=>x(e,void 0))),w.add(48,((e,[,t])=>{E(e,t),e(25)})),w.add(49,((e,[,t])=>{E(e,t),e(24),e(61),e(26)})),w.add(52,((e,[,t,r,n])=>{E(e,n),E(e,r),E(e,t),e(109)})),w.add(51,((e,[,t])=>{E(e,t),e(110)})),w.add(53,((e,[,t])=>{E(e,t),e(111)})),w.add(54,((e,[,t])=>{e(0),R(e,t,null,!1),e(112),e(1),e(36,r.$v0)})) -var U="&attrs" -function $(e,n,a,s,o,l){var{compilable:c,capabilities:d,handle:p}=n,f=a?[a,[]]:null,m=Array.isArray(l)||null===l?u(l):l -c?(e(78,p),function(e,{capabilities:n,layout:a,elementBlock:s,positional:o,named:u,blocks:l}){var{symbolTable:c}=a,d=c.hasEval||(0,i.hasCapability)(n,4) -if(d)return void z(e,{capabilities:n,elementBlock:s,positional:o,named:u,atNames:!0,blocks:l,layout:a}) -e(36,r.$s0),e(33,r.$sp,1),e(35,r.$s0),e(0) -var{symbols:p}=c,f=[],m=[],g=[],v=l.names -if(null!==s){var b=p.indexOf(U);-1!==b&&(j(e,s),f.push(b))}for(var y=0;y0?1:0),e(19,0) -for(var I=m.length-1;I>=0;I--){var D=m[I];-1===D?e(34,1):e(19,D+1)}null!==o&&e(34,o.length) -for(var F=f.length-1;F>=0;F--){e(20,f[F]+1)}e(28,h(a)),e(61),e(2),e(100,r.$s0),e(1),e(40),(0,i.hasCapability)(n,64)&&e(60) -e(98),e(35,r.$s0)}(e,{capabilities:d,layout:c,elementBlock:f,positional:s,named:o,blocks:m})):(e(78,p),z(e,{capabilities:d,elementBlock:f,positional:s,named:o,atNames:!0,blocks:m}))}function V(e,t,n,i,a,s,o,c){var d=n?[n,[]]:null,h=Array.isArray(s)||null===s?u(s):s -L(e,(()=>(E(e,t),e(33,r.$sp,0),2)),(()=>{e(66,l("ELSE")),c?e(81):e(80,{type:2,value:void 0}),e(79),z(e,{capabilities:!0,elementBlock:d,positional:i,named:a,atNames:o,blocks:h}),e(1e3,"ELSE")}))}function z(e,{capabilities:n,elementBlock:a,positional:s,named:o,atNames:u,blocks:l,layout:c}){var p=!!l,f=!0===n||(0,i.hasCapability)(n,4)||!(!o||0===o[0].length),m=l.with("attrs",a) -e(36,r.$s0),e(33,r.$sp,1),e(35,r.$s0),e(0),function(e,r,n,i,a){for(var s=i.names,o=0;o{c?(e(63,d(c.symbolTable)),e(28,h(c)),e(61)):e(92,r.$s0),e(95,r.$s0)})),e(35,r.$s0)}function H(e,t,n,i,a=null){e(97,r.$s0),e(59),e(87,0|t,r.$s0),a&&a(),e(88,r.$s0),e(90,r.$s0),e(38,r.$s0),e(19,0),e(94,r.$s0),i&&e(17,r.$s0),n&&e(18,r.$s0),e(34,1),e(96,r.$s0),e(100,r.$s0),e(1),e(40),e(60),e(98)}class q{constructor(e,t,r,n,i){this.main=e,this.trustingGuardedAppend=t,this.cautiousGuardedAppend=r,this.trustingNonDynamicAppend=n,this.cautiousNonDynamicAppend=i}get"trusting-append"(){return this.trustingGuardedAppend}get"cautious-append"(){return this.cautiousGuardedAppend}get"trusting-non-dynamic-append"(){return this.trustingNonDynamicAppend}get"cautious-non-dynamic-append"(){return this.cautiousNonDynamicAppend}getAppend(e){return e?this.trustingGuardedAppend:this.cautiousGuardedAppend}}function W(e,t){return{program:e,encoder:new ie(e.heap,t,e.stdlib),meta:t}}e.StdLib=q -var G=new _,Y=["class","id","value","name","type","style","href"],Q=["div","span","p","a"] -function K(e){return"string"==typeof e?e:Q[e]}function J(e){return"string"==typeof e?e:Y[e]}function X(e){return null===e?null:[e[0].map((e=>`@${e}`)),e[1]]}G.add(3,((e,t)=>e(42,t[1]))),G.add(13,(e=>e(55))),G.add(12,(e=>e(54))),G.add(4,((e,[,t,n,i])=>{m(t)?e(1003,t,(t=>{e(0),R(e,n,i,!1),e(57,t),e(1)})):(E(e,t),e(0),R(e,n,i,!1),e(33,r.$fp,1),e(108),e(1))})),G.add(14,((e,[,t,r,n])=>{e(51,J(t),r,null!=n?n:null)})),G.add(24,((e,[,t,r,n])=>{e(105,J(t),r,null!=n?n:null)})),G.add(15,((e,[,t,r,n])=>{E(e,r),e(52,J(t),!1,null!=n?n:null)})),G.add(22,((e,[,t,r,n])=>{E(e,r),e(52,J(t),!0,null!=n?n:null)})),G.add(16,((e,[,t,r,n])=>{E(e,r),e(53,J(t),!1,null!=n?n:null)})),G.add(23,((e,[,t,r,n])=>{E(e,r),e(53,J(t),!0,null!=n?n:null)})),G.add(10,((e,[,t])=>{e(48,K(t))})),G.add(11,((e,[,t])=>{e(89),e(48,K(t))})),G.add(8,((e,[,t,r,n,i])=>{f(t)?e(1004,t,(t=>{$(e,t,r,null,n,i)})):V(e,t,r,null,n,i,!0,!0)})),G.add(18,((e,[,t,r])=>M(e,t,r))),G.add(17,((e,[,t])=>M(e,t,null))),G.add(26,((e,[,t])=>e(103,{type:3,value:void 0},t))),G.add(1,((e,[,t])=>{if(Array.isArray(t))if(b(t))e(1008,t,{ifComponent(t){$(e,t,null,null,null,null)},ifHelper(t){e(0),k(e,t,null,null),e(3,c("cautious-non-dynamic-append")),e(1)},ifValue(t){e(0),e(29,t),e(3,c("cautious-non-dynamic-append")),e(1)}}) -else if(28===t[0]){var[,r,n,i]=t -v(r)?e(1007,r,{ifComponent(t){$(e,t,null,n,X(i),null)},ifHelper(t){e(0),k(e,t,n,i),e(3,c("cautious-non-dynamic-append")),e(1)}}):F(e,(()=>{E(e,r),e(106)}),(t=>{t(0,(()=>{e(81),e(79),z(e,{capabilities:!0,elementBlock:null,positional:n,named:i,atNames:!1,blocks:u(null)})})),t(1,(()=>{S(e,n,i,(()=>{e(3,c("cautious-non-dynamic-append"))}))}))}))}else e(0),E(e,t),e(3,c("cautious-append")),e(1) -else e(41,null==t?"":String(t))})),G.add(2,((e,[,t])=>{Array.isArray(t)?(e(0),E(e,t),e(3,c("trusting-append")),e(1)):e(41,null==t?"":String(t))})),G.add(6,((e,[,t,r,n,i])=>{f(t)?e(1004,t,(t=>{$(e,t,null,r,X(n),i)})):V(e,t,null,r,n,i,!1,!1)})),G.add(40,((e,[,t,n,i,a])=>{B(e,(()=>(E(e,n),void 0===a?x(e,void 0):E(e,a),E(e,i),e(33,r.$sp,0),4)),(()=>{e(50),N(e,t),e(56)}))})),G.add(41,((e,[,t,r,n])=>B(e,(()=>(E(e,t),e(71),1)),(()=>{N(e,r)}),n?()=>{N(e,n)}:void 0))),G.add(42,((e,[,t,n,i,a])=>L(e,(()=>(n?E(e,n):x(e,null),E(e,t),2)),(()=>{e(72,l("BODY"),l("ELSE")),e(0),e(33,r.$fp,1),e(6,l("ITER")),e(1e3,"ITER"),e(74,l("BREAK")),e(1e3,"BODY"),I(e,i,2),e(34,2),e(4,l("FINALLY")),e(1e3,"BREAK"),e(1),e(73),e(4,l("FINALLY")),e(1e3,"ELSE"),a&&N(e,a)})))),G.add(43,((e,[,t,n,i])=>{B(e,(()=>(E(e,t),e(33,r.$sp,0),e(71),2)),(()=>{I(e,n,1)}),(()=>{i&&N(e,i)}))})),G.add(44,((e,[,t,r])=>{I(e,r,T(e,t))})),G.add(45,((e,[,t,r])=>{if(t){var[n,i]=t -T(e,i),function(e,t,r){e(59),e(58,t),r(),e(60)}(e,n,(()=>{N(e,r)}))}else N(e,r)})),G.add(46,((e,[,t,r,n,i])=>{f(t)?e(1004,t,(t=>{$(e,t,null,r,X(n),i)})):V(e,t,null,r,n,i,!1,!1)})) -class Z{constructor(e,t,r,n="plain block"){this.statements=e,this.meta=t,this.symbolTable=r,this.moduleName=n,this.compiled=null}compile(e){return function(e,t){if(null!==e.compiled)return e.compiled -e.compiled=-1 -var{statements:r,meta:n}=e,i=te(r,n,t) -return e.compiled=i,i}(this,e)}}function ee(e,t){var[r,n,i]=e.block -return new Z(r,P(e),{symbols:n,hasEval:i},t)}function te(e,t,r){var n=G,i=W(r,t),{encoder:a,program:{constants:s,resolver:o}}=i -function u(...e){ne(a,s,o,t,e)}for(var l=0;le(76)),(i=>{i(2,(()=>{t?(e(68),e(43)):e(47)})),"number"==typeof n?(i(0,(()=>{e(81),e(79),function(e){e(36,r.$s0),e(33,r.$sp,1),e(35,r.$s0),e(0),e(83),e(85,r.$s0),H(e,!1,!1,!0,(()=>{e(92,r.$s0),e(95,r.$s0)})),e(35,r.$s0)}(e)})),i(1,(()=>{S(e,null,null,(()=>{e(3,n)}))}))):(i(0,(()=>{e(47)})),i(1,(()=>{e(47)}))),i(4,(()=>{e(68),e(44)})),i(5,(()=>{e(68),e(45)})),i(6,(()=>{e(68),e(46)}))}))}function se(e){var t=ue(e,(e=>function(e){e(75,r.$s0),H(e,!1,!1,!0)}(e))),n=ue(e,(e=>ae(e,!0,null))),i=ue(e,(e=>ae(e,!1,null))),a=ue(e,(e=>ae(e,!0,n))),s=ue(e,(e=>ae(e,!1,i))) -return new q(t,a,s,n,i)}var oe={evalSymbols:null,upvars:null,moduleName:"stdlib",scopeValues:null,isStrictMode:!0,owner:null,size:0} -function ue(e,t){var{constants:r,heap:n,resolver:i}=e,a=new ie(n,oe) -t((function(...e){ne(a,r,i,oe,e)})) -var s=a.commit(0) -if("number"!=typeof s)throw new Error("Unexpected errors compiling std") -return s}class le{constructor({constants:e,heap:t},r){this.resolver=r,this.constants=e,this.heap=t,this.stdlib=se(this)}}e.CompileTimeCompilationContextImpl=le -e.DEFAULT_CAPABILITIES={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!1,elementHook:!1,dynamicScope:!0,createCaller:!1,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1},e.MINIMAL_CAPABILITIES={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,dynamicScope:!1,createCaller:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class ce{constructor(e,t){this.layout=e,this.moduleName=t,this.compiled=null -var{block:r}=e,[,n,i]=r,a=(n=n.slice()).indexOf(U) -this.attrsBlockNumber=-1===a?n.push(U):a+1,this.symbolTable={hasEval:i,symbols:n}}compile(e){if(null!==this.compiled)return this.compiled -var t,n,i,a=P(this.layout),s=W(e,a),{encoder:o,program:{constants:u,resolver:c}}=s -t=function(...e){ne(o,u,c,a,e)},n=this.layout,i=this.attrsBlockNumber,t(1001),function(e,t,r){e(36,t),r(),e(35,t)}(t,r.$s1,(()=>{t(91,r.$s0),t(31),t(33,r.$sp,0)})),t(66,l("BODY")),t(36,r.$s1),t(89),t(49),t(99,r.$s0),M(t,i,null),t(54),t(1e3,"BODY"),N(t,[n.block[0],[]]),t(36,r.$s1),t(66,l("END")),t(55),t(1e3,"END"),t(35,r.$s1),t(1002) -var d=s.encoder.commit(a.size) -return"number"!=typeof d||(this.compiled=d),d}}e.WrappedBuilder=ce -var de=0,he=e.templateCacheCounters={cacheHit:0,cacheMiss:0} -class pe{constructor(e){this.parsedLayout=e,this.result="ok",this.layout=null,this.wrappedLayout=null}get moduleName(){return this.parsedLayout.moduleName}get id(){return this.parsedLayout.id}get referrer(){return{moduleName:this.parsedLayout.moduleName,owner:this.parsedLayout.owner}}asLayout(){return this.layout?this.layout:this.layout=ee((0,t.assign)({},this.parsedLayout),this.moduleName)}asWrappedLayout(){return this.wrappedLayout?this.wrappedLayout:this.wrappedLayout=new ce((0,t.assign)({},this.parsedLayout),this.moduleName)}}})),e("@glimmer/owner",["exports","@glimmer/util"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.OWNER=void 0,e.getOwner=function(e){return e[r]},e.setOwner=function(e,t){e[r]=t} -var r=e.OWNER=(0,t.symbol)("OWNER")})),e("@glimmer/program",["exports","@glimmer/util","@glimmer/manager","@glimmer/opcode-compiler"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.RuntimeProgramImpl=e.RuntimeOpImpl=e.RuntimeHeapImpl=e.RuntimeConstantsImpl=e.HeapImpl=e.ConstantsImpl=e.CompileTimeConstantImpl=void 0,e.artifacts=function(){return{constants:new l,heap:new p}},e.hydrateHeap=function(e){return new h(e)} -var i={id:"1b32f5c2-7623-43d6-a0ad-9672898920a1",moduleName:"__default__.hbs",block:JSON.stringify([[[18,1,null]],["&default"],!1,[]]),scope:null,isStrictMode:!0},a=Object.freeze([]),s=(0,t.constants)(a),o=s.indexOf(a) -class u{constructor(){this.values=s.slice(),this.indexMap=new Map(this.values.map(((e,t)=>[e,t])))}value(e){var t=this.indexMap,r=t.get(e) -return void 0===r&&(r=this.values.push(e)-1,t.set(e,r)),r}array(e){if(0===e.length)return o -for(var t=new Array(e.length),r=0;r>8)}get isMachine(){return 1024&this.heap.getbyaddr(this.offset)?1:0}get type(){return 255&this.heap.getbyaddr(this.offset)}get op1(){return this.heap.getbyaddr(this.offset+1)}get op2(){return this.heap.getbyaddr(this.offset+2)}get op3(){return this.heap.getbyaddr(this.offset+3)}}e.RuntimeOpImpl=c -var d=1048576 -class h{constructor(e){var{buffer:t,table:r}=e -this.heap=new Int32Array(t),this.table=r}getaddr(e){return this.table[e]}getbyaddr(e){return this.heap[e]}sizeof(e){return f(this.table,e)}}e.RuntimeHeapImpl=h -class p{constructor(){this.offset=0,this.handle=0,this.heap=new Int32Array(d),this.handleTable=[],this.handleState=[]}push(e){this.sizeCheck(),this.heap[this.offset++]=e}sizeCheck(){var{heap:e}=this -if(this.offset===this.heap.length){var t=new Int32Array(e.length+d) -t.set(e,0),this.heap=t}}getbyaddr(e){return this.heap[e]}setbyaddr(e,t){this.heap[e]=t}malloc(){return this.handleTable.push(this.offset),this.handleTable.length-1}finishMalloc(e){}size(){return this.offset}getaddr(e){return this.handleTable[e]}sizeof(e){return f(this.handleTable,e)}free(e){this.handleState[e]=1}compact(){for(var e=0,{handleTable:t,handleState:r,heap:n}=this,i=0;id(e)),(t=>h(e,t))) -return t.debugLabel=e.debugLabel,t[i]=3,t},e.createIteratorItemRef=function(e){var t=e,r=(0,n.createTag)() -return l((()=>((0,n.consumeTag)(r),t)),(e=>{t!==e&&(t=e,(0,n.dirtyTag)(r))}))},e.createIteratorRef=function(e,n){return l((()=>{var i=d(e),a=function(e){switch(e){case"@key":return _(m) -case"@index":return _(g) -case"@identity":return _(v) -default:return function(e){0 -return _((r=>(0,t.getPath)(r,e)))}(e)}}(n) -if(Array.isArray(i))return new O(i,a) -var s=(0,t.toIterator)(i) -return null===s?new O(r.EMPTY_ARRAY,(()=>null)):new w(s,a)}))},e.createPrimitiveRef=s,e.createReadOnlyRef=function(e){return c(e)?l((()=>d(e)),null,e.debugLabel):e},e.createUnboundRef=u,e.isConstRef=function(e){return e.tag===n.CONSTANT_TAG},e.isInvokableRef=function(e){return 3===e[i]},e.isUpdatableRef=c,e.updateRef=h,e.valueForRef=d -var i=e.REFERENCE=(0,r.symbol)("REFERENCE") -class a{constructor(e){this.tag=null,this.lastRevision=n.INITIAL,this.children=null,this.compute=null,this.update=null,this[i]=e}}function s(e){var t=new a(2) -return t.tag=n.CONSTANT_TAG,t.lastValue=e,t}var o=e.UNDEFINED_REFERENCE=s(void 0) -e.NULL_REFERENCE=s(null),e.TRUE_REFERENCE=s(!0),e.FALSE_REFERENCE=s(!1) -function u(e,t){var r=new a(2) -return r.lastValue=e,r.tag=n.CONSTANT_TAG,r}function l(e,t=null,r="unknown"){var n=new a(1) -return n.compute=e,n.update=t,n}function c(e){return null!==e.update}function d(e){var t=e,{tag:r}=t -if(r===n.CONSTANT_TAG)return t.lastValue -var i,{lastRevision:a}=t -if(null!==r&&(0,n.validateTag)(r,a))i=t.lastValue -else{var{compute:s}=t -r=t.tag=(0,n.track)((()=>{i=t.lastValue=s()}),!1),t.lastRevision=(0,n.valueForTag)(r)}return(0,n.consumeTag)(r),i}function h(e,t){(0,e.update)(t)}function p(e,n){var a,s=e,c=s[i],h=s.children -if(null===h)h=s.children=new Map -else if(void 0!==(a=h.get(n)))return a -if(2===c){var p=d(s) -a=(0,r.isDict)(p)?u(p[n]):o}else a=l((()=>{var e=d(s) -if((0,r.isDict)(e))return(0,t.getProp)(e,n)}),(e=>{var i=d(s) -if((0,r.isDict)(i))return(0,t.setProp)(i,n,e)})) -return h.set(n,a),a}var f={},m=(e,t)=>t,g=(e,t)=>String(t),v=e=>null===e?f:e -class b{get weakMap(){return void 0===this._weakMap&&(this._weakMap=new WeakMap),this._weakMap}get primitiveMap(){return void 0===this._primitiveMap&&(this._primitiveMap=new Map),this._primitiveMap}set(e,t){(0,r.isObject)(e)?this.weakMap.set(e,t):this.primitiveMap.set(e,t)}get(e){return(0,r.isObject)(e)?this.weakMap.get(e):this.primitiveMap.get(e)}}var y=new b -function _(e){var t=new b -return(r,n)=>{var i=e(r,n),a=t.get(i)||0 -return t.set(i,a+1),0===a?i:function(e,t){var r=y.get(e) -void 0===r&&(r=[],y.set(e,r)) -var n=r[t] -return void 0===n&&(n={value:e,count:t},r[t]=n),n}(i,a)}}class w{constructor(e,t){this.inner=e,this.keyFor=t}isEmpty(){return this.inner.isEmpty()}next(){var e=this.inner.next() -return null!==e&&(e.key=this.keyFor(e.value,e.memo)),e}}class O{constructor(e,t){this.iterator=e,this.keyFor=t,this.pos=0,0===e.length?this.current={kind:"empty"}:this.current={kind:"first",value:e[this.pos]}}isEmpty(){return"empty"===this.current.kind}next(){var e,t=this.current -if("first"===t.kind)this.current={kind:"progress"},e=t.value -else{if(this.pos>=this.iterator.length-1)return null -e=this.iterator[++this.pos]}var{keyFor:r}=this -return{key:r(e,this.pos),value:e,memo:this.pos}}}})),e("@glimmer/runtime",["exports","@glimmer/util","@glimmer/reference","@glimmer/global-context","@glimmer/destroyable","@glimmer/vm","@glimmer/validator","@glimmer/manager","@glimmer/program","@glimmer/owner","@glimmer/runtime"],(function(e,t,r,n,i,a,s,o,u,l,c){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.array=e.UpdatingVM=e.UpdatableBlockImpl=e.TemplateOnlyComponentManager=e.TemplateOnlyComponent=e.TEMPLATE_ONLY_COMPONENT_MANAGER=e.SimpleDynamicAttribute=e.SERIALIZATION_FIRST_NODE_STRING=e.RemoteLiveBlock=e.RehydrateBuilder=e.PartialScopeImpl=e.NewElementBuilder=e.LowLevelVM=e.IDOMChanges=e.EnvironmentImpl=e.EMPTY_POSITIONAL=e.EMPTY_NAMED=e.EMPTY_ARGS=e.DynamicScopeImpl=e.DynamicAttribute=e.DOMTreeConstruction=e.DOMChanges=e.CursorImpl=e.CurriedValue=e.ConcreteBounds=void 0,e.clear=R,e.clientBuilder=function(e,t){return ae.forInitialRender(e,t)},e.concat=void 0,e.createCapturedArgs=Se,e.curry=Oe,Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return i.destroy}}),e.dynamicAttribute=W,e.hash=e.get=e.fn=void 0,e.inTransaction=Nt,e.invokeHelper=function(e,t,r){0 -var n=(0,l.getOwner)(e),a=(0,o.getInternalHelperManager)(t) -0 -0 -var u,c=a.getDelegateFor(n),d=new ur(e,r),h=c.createHelper(t,d) -if(!(0,o.hasValue)(c))throw new Error("TODO: unreachable, to be implemented with hasScheduledEffect") -u=(0,s.createCache)((()=>c.getValue(h))),(0,i.associateDestroyableChild)(e,u) -if((0,o.hasDestroyable)(c)){var p=c.getDestroyable(h);(0,i.associateDestroyableChild)(u,p)}return u},Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return i.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return i.isDestroying}}),e.isSerializationFirstNode=function(e){return e.nodeValue===Kt},e.isWhitespace=function(e){return _t.test(e)},e.normalizeProperty=k,e.on=void 0,Object.defineProperty(e,"registerDestructor",{enumerable:!0,get:function(){return i.registerDestructor}}),e.rehydrationBuilder=function(e,t){return Xt.forInitialRender(e,t)},e.reifyArgs=Ne,e.reifyNamed=Me,e.reifyPositional=je,e.renderComponent=function(e,n,i,a,s,o={},u=new d){var l=Wt.empty(e,{treeBuilder:n,handle:i.stdlib.main,dynamicScope:u,owner:a},i) -return function(e,r,n,i,a){var s=Object.keys(a).map((e=>[e,a[e]])),o=["main","else","attrs"],u=s.map((([e])=>`@${e}`)),l=e[b].component(i,n) -e.pushFrame() -for(var c=0;c<3*o.length;c++)e.stack.push(null) -e.stack.push(null),s.forEach((([,t])=>{e.stack.push(t)})),e[y].setup(e.stack,u,o,0,!0) -var d=l.compilable,h=(0,t.unwrapHandle)(d.compile(r)),p={handle:h,symbolTable:d.symbolTable} -return e.stack.push(e[y]),e.stack.push(p),e.stack.push(l),new Qt(e)}(l,i,a,s,(c=o,h=(0,r.createConstRef)(c,"args"),Object.keys(c).reduce(((e,t)=>(e[t]=(0,r.childRefFor)(h,t),e)),{}))) -var c,h},e.renderMain=function(e,r,n,i,a,s,o=new d){var u=(0,t.unwrapHandle)(s.compile(r)),l=s.symbolTable.symbols.length,c=Wt.initial(e,r,{self:i,dynamicScope:o,treeBuilder:a,handle:u,numSymbols:l,owner:n}) -return new Qt(c)},e.renderSync=function(e,t){var r -return Nt(e,(()=>r=t.sync())),r},e.resetDebuggerCallback=function(){ot=st},e.runtimeContext=function(e,t,r,n){return{env:new jt(e,t),program:new u.RuntimeProgramImpl(r.constants,r.heap),resolver:n}},e.setDebuggerCallback=function(e){ot=e},e.templateOnlyComponent=function(e,t){return new ht(e,t)} -class d{constructor(e){this.bucket=e?(0,t.assign)({},e):{}}get(e){return this.bucket[e]}set(e,t){return this.bucket[e]=t}child(){return new d(this.bucket)}}e.DynamicScopeImpl=d -class h{constructor(e,t,r,n,i){this.slots=e,this.owner=t,this.callerScope=r,this.evalScope=n,this.partialMap=i}static root(e,t=0,n){for(var i=new Array(t+1),a=0;a<=t;a++)i[a]=r.UNDEFINED_REFERENCE -return new h(i,n,null,null,null).init({self:e})}static sized(e=0,t){for(var n=new Array(e+1),i=0;i<=e;i++)n[i]=r.UNDEFINED_REFERENCE -return new h(n,t,null,null,null)}init({self:e}){return this.slots[0]=e,this}getSelf(){return this.get(0)}getSymbol(e){return this.get(e)}getBlock(e){var t=this.get(e) -return t===r.UNDEFINED_REFERENCE?null:t}getEvalScope(){return this.evalScope}getPartialMap(){return this.partialMap}bind(e,t){this.set(e,t)}bindSelf(e){this.set(0,e)}bindSymbol(e,t){this.set(e,t)}bindBlock(e,t){this.set(e,t)}bindEvalScope(e){this.evalScope=e}bindPartialMap(e){this.partialMap=e}bindCallerScope(e){this.callerScope=e}getCallerScope(){return this.callerScope}child(){return new h(this.slots.slice(),this.owner,this.callerScope,this.evalScope,this.partialMap)}get(e){if(e>=this.slots.length)throw new RangeError(`BUG: cannot get $${e} from scope; length=${this.slots.length}`) -return this.slots[e]}set(e,t){if(e>=this.slots.length)throw new RangeError(`BUG: cannot get $${e} from scope; length=${this.slots.length}`) -this.slots[e]=t}}e.PartialScopeImpl=h -var p=(0,t.symbol)("INNER_VM"),f=(0,t.symbol)("DESTROYABLE_STACK"),m=(0,t.symbol)("STACKS"),g=(0,t.symbol)("REGISTERS"),v=(0,t.symbol)("HEAP"),b=(0,t.symbol)("CONSTANTS"),y=(0,t.symbol)("ARGS");(0,t.symbol)("PC") -class _{constructor(e,t){this.element=e,this.nextSibling=t}}e.CursorImpl=_ -class w{constructor(e,t,r){this.parentNode=e,this.first=t,this.last=r}parentElement(){return this.parentNode}firstNode(){return this.first}lastNode(){return this.last}}e.ConcreteBounds=w -class O{constructor(e,t){this.parentNode=e,this.node=t}parentElement(){return this.parentNode}firstNode(){return this.node}lastNode(){return this.node}}function E(e,t){for(var r=e.parentElement(),n=e.firstNode(),i=e.lastNode(),a=n;;){var s=a.nextSibling -if(r.insertBefore(a,t),a===i)return s -a=s}}function R(e){for(var t=e.parentElement(),r=e.firstNode(),n=e.lastNode(),i=r;;){var a=i.nextSibling -if(t.removeChild(i),i===n)return a -i=a}}function T(e){return P(e)?"":String(e)}function P(e){return null==e||"function"!=typeof e.toString}function C(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}function x(e){return"object"==typeof e&&null!==e&&"number"==typeof e.nodeType}function A(e){return"string"==typeof e}function k(e,t){var r,n,i,a,s -if(t in e)n=t,r="prop" -else{var o=t.toLowerCase() -o in e?(r="prop",n=o):(r="attr",n=t)}return"prop"===r&&("style"===n.toLowerCase()||(i=e.tagName,a=n,(s=S[i.toUpperCase()])&&s[a.toLowerCase()]))&&(r="attr"),{normalized:n,type:r}}var S={INPUT:{form:!0,autocorrect:!0,list:!0},SELECT:{form:!0},OPTION:{form:!0},TEXTAREA:{form:!0},LABEL:{form:!0},FIELDSET:{form:!0},LEGEND:{form:!0},OBJECT:{form:!0},OUTPUT:{form:!0},BUTTON:{form:!0}} -var M,j,N=["javascript:","vbscript:"],I=["A","BODY","LINK","IMG","IFRAME","BASE","FORM"],D=["EMBED"],F=["href","src","background","action"],L=["src"] -function B(e,t){return-1!==e.indexOf(t)}function U(e,t){return(null===e||B(I,e))&&B(F,t)}function $(e,t){return null!==e&&(B(D,e)&&B(L,t))}function V(e,t){return U(e,t)||$(e,t)}if("object"==typeof URL&&null!==URL&&"function"==typeof URL.parse){var z=URL -M=e=>{var t=null -return"string"==typeof e&&(t=z.parse(e).protocol),null===t?":":t}}else if("function"==typeof URL)M=e=>{try{return new URL(e).protocol}catch(t){return":"}} -else{var H=document.createElement("a") -M=e=>(H.href=e,H.protocol)}function q(e,t,r){var n=null -if(null==r)return r -if(C(r))return r.toHTML() -n=e?e.tagName.toUpperCase():null -var i=T(r) -if(U(n,t)){var a=M(i) -if(B(N,a))return`unsafe:${i}`}return $(n,t)?`unsafe:${i}`:i}function W(e,t,r,n=!1){var{tagName:i,namespaceURI:a}=e,s={element:e,name:t,namespace:r} -if("http://www.w3.org/2000/svg"===a)return G(i,t,s) -var{type:o,normalized:u}=k(e,t) -return"attr"===o?G(i,u,s):function(e,t,r){if(V(e,t))return new J(t,r) -if(function(e,t){return("INPUT"===e||"TEXTAREA"===e)&&"value"===t}(e,t))return new Z(t,r) -if(function(e,t){return"OPTION"===e&&"selected"===t}(e,t))return new ee(t,r) -return new K(t,r)}(i,u,s)}function G(e,t,r){return V(e,t)?new X(r):new Q(r)}class Y{constructor(e){this.attribute=e}}e.DynamicAttribute=Y -class Q extends Y{set(e,t,r){var n=te(t) -if(null!==n){var{name:i,namespace:a}=this.attribute -e.__setAttribute(i,n,a)}}update(e,t){var r=te(e),{element:n,name:i}=this.attribute -null===r?n.removeAttribute(i):n.setAttribute(i,r)}}e.SimpleDynamicAttribute=Q -class K extends Y{constructor(e,t){super(t),this.normalizedName=e}set(e,t,r){null!=t&&(this.value=t,e.__setProperty(this.normalizedName,t))}update(e,t){var{element:r}=this.attribute -this.value!==e&&(r[this.normalizedName]=this.value=e,null==e&&this.removeAttribute())}removeAttribute(){var{element:e,namespace:t}=this.attribute -t?e.removeAttributeNS(t,this.normalizedName):e.removeAttribute(this.normalizedName)}}class J extends K{set(e,t,r){var{element:n,name:i}=this.attribute,a=q(n,i,t) -super.set(e,a,r)}update(e,t){var{element:r,name:n}=this.attribute,i=q(r,n,e) -super.update(i,t)}}class X extends Q{set(e,t,r){var{element:n,name:i}=this.attribute,a=q(n,i,t) -super.set(e,a,r)}update(e,t){var{element:r,name:n}=this.attribute,i=q(r,n,e) -super.update(i,t)}}class Z extends K{set(e,t){e.__setProperty("value",T(t))}update(e){var t=this.attribute.element,r=t.value,n=T(e) -r!==n&&(t.value=n)}}class ee extends K{set(e,t){null!=t&&!1!==t&&e.__setProperty("selected",!0)}update(e){var t=this.attribute.element -t.selected=!!e}}function te(e){return!1===e||null==e||void 0===e.toString?null:!0===e?"":"function"==typeof e?null:String(e)}class re{constructor(e){this.node=e}firstNode(){return this.node}}class ne{constructor(e){this.node=e}lastNode(){return this.node}}var ie=(0,t.symbol)("CURSOR_STACK") -class ae{constructor(e,r,n){this.constructing=null,this.operations=null,this[j]=new t.Stack,this.modifierStack=new t.Stack,this.blockStack=new t.Stack,this.pushElement(r,n),this.env=e,this.dom=e.getAppendOperations(),this.updateOperations=e.getDOM()}static forInitialRender(e,t){return new this(e,t.element,t.nextSibling).initialize()}static resume(e,t){var r=new this(e,t.parentElement(),t.reset(e)).initialize() -return r.pushLiveBlock(t),r}initialize(){return this.pushSimpleBlock(),this}debugBlocks(){return this.blockStack.toArray()}get element(){return this[ie].current.element}get nextSibling(){return this[ie].current.nextSibling}get hasBlocks(){return this.blockStack.size>0}block(){return this.blockStack.current}popElement(){this[ie].pop(),this[ie].current}pushSimpleBlock(){return this.pushLiveBlock(new se(this.element))}pushUpdatableBlock(){return this.pushLiveBlock(new ue(this.element))}pushBlockList(e){return this.pushLiveBlock(new le(this.element,e))}pushLiveBlock(e,t=!1){var r=this.blockStack.current -return null!==r&&(t||r.didAppendBounds(e)),this.__openBlock(),this.blockStack.push(e),e}popBlock(){return this.block().finalize(this),this.__closeBlock(),this.blockStack.pop()}__openBlock(){}__closeBlock(){}openElement(e){var t=this.__openElement(e) -return this.constructing=t,t}__openElement(e){return this.dom.createElement(e,this.element)}flushElement(e){var t=this.element,r=this.constructing -this.__flushElement(t,r),this.constructing=null,this.operations=null,this.pushModifiers(e),this.pushElement(r,null),this.didOpenElement(r)}__flushElement(e,t){this.dom.insertBefore(e,t,this.nextSibling)}closeElement(){return this.willCloseElement(),this.popElement(),this.popModifiers()}pushRemoteElement(e,t,r){return this.__pushRemoteElement(e,t,r)}__pushRemoteElement(e,t,r){if(this.pushElement(e,r),void 0===r)for(;e.lastChild;)e.removeChild(e.lastChild) -var n=new oe(e) -return this.pushLiveBlock(n,!0)}popRemoteElement(){this.popBlock(),this.popElement()}pushElement(e,t=null){this[ie].push(new _(e,t))}pushModifiers(e){this.modifierStack.push(e)}popModifiers(){return this.modifierStack.pop()}didAppendBounds(e){return this.block().didAppendBounds(e),e}didAppendNode(e){return this.block().didAppendNode(e),e}didOpenElement(e){return this.block().openElement(e),e}willCloseElement(){this.block().closeElement()}appendText(e){return this.didAppendNode(this.__appendText(e))}__appendText(e){var{dom:t,element:r,nextSibling:n}=this,i=t.createTextNode(e) -return t.insertBefore(r,i,n),i}__appendNode(e){return this.dom.insertBefore(this.element,e,this.nextSibling),e}__appendFragment(e){var t=e.firstChild -if(t){var r=new w(this.element,t,e.lastChild) -return this.dom.insertBefore(this.element,e,this.nextSibling),r}return new O(this.element,this.__appendComment(""))}__appendHTML(e){return this.dom.insertHTMLBefore(this.element,this.nextSibling,e)}appendDynamicHTML(e){var t=this.trustedContent(e) -this.didAppendBounds(t)}appendDynamicText(e){var t=this.untrustedContent(e) -return this.didAppendNode(t),t}appendDynamicFragment(e){var t=this.__appendFragment(e) -this.didAppendBounds(t)}appendDynamicNode(e){var t=this.__appendNode(e),r=new O(this.element,t) -this.didAppendBounds(r)}trustedContent(e){return this.__appendHTML(e)}untrustedContent(e){return this.__appendText(e)}appendComment(e){return this.didAppendNode(this.__appendComment(e))}__appendComment(e){var{dom:t,element:r,nextSibling:n}=this,i=t.createComment(e) -return t.insertBefore(r,i,n),i}__setAttribute(e,t,r){this.dom.setAttribute(this.constructing,e,t,r)}__setProperty(e,t){this.constructing[e]=t}setStaticAttribute(e,t,r){this.__setAttribute(e,t,r)}setDynamicAttribute(e,t,r,n){var i=W(this.constructing,e,n,r) -return i.set(this,t,this.env),i}}e.NewElementBuilder=ae,j=ie -class se{constructor(e){this.parent=e,this.first=null,this.last=null,this.nesting=0}parentElement(){return this.parent}firstNode(){return this.first.firstNode()}lastNode(){return this.last.lastNode()}openElement(e){this.didAppendNode(e),this.nesting++}closeElement(){this.nesting--}didAppendNode(e){0===this.nesting&&(this.first||(this.first=new re(e)),this.last=new ne(e))}didAppendBounds(e){0===this.nesting&&(this.first||(this.first=e),this.last=e)}finalize(e){null===this.first&&e.appendComment("")}}class oe extends se{constructor(e){super(e),(0,i.registerDestructor)(this,(()=>{this.parentElement()===this.firstNode().parentNode&&R(this)}))}}e.RemoteLiveBlock=oe -class ue extends se{reset(){(0,i.destroy)(this) -var e=R(this) -return this.first=null,this.last=null,this.nesting=0,e}}e.UpdatableBlockImpl=ue -class le{constructor(e,t){this.parent=e,this.boundList=t,this.parent=e,this.boundList=t}parentElement(){return this.parent}firstNode(){return this.boundList[0].firstNode()}lastNode(){var e=this.boundList -return e[e.length-1].lastNode()}openElement(e){}closeElement(){}didAppendNode(e){}didAppendBounds(e){}finalize(e){}}var ce=new class{constructor(){this.evaluateOpcode=(0,t.fillNulls)(104).slice()}add(e,t,r="syscall"){this.evaluateOpcode[e]={syscall:"machine"!==r,evaluate:t}}debugBefore(e,t){return{sp:undefined,pc:e.fetchValue(a.$pc),name:undefined,params:undefined,type:t.type,isMachine:t.isMachine,size:t.size,state:void 0}}debugAfter(e,t){}evaluate(e,t,r){var n=this.evaluateOpcode[r] -n.syscall?n.evaluate(e,t):n.evaluate(e[p],t)}} -function de(e){return"function"!=typeof e.toString?"":String(e)}var he=(0,t.symbol)("TYPE"),pe=(0,t.symbol)("INNER"),fe=(0,t.symbol)("OWNER"),me=(0,t.symbol)("ARGS"),ge=(0,t.symbol)("RESOLVED"),ve=new t._WeakSet -function be(e){return ve.has(e)}function ye(e,t){return be(e)&&e[he]===t}class _e{constructor(e,t,r,n,i=!1){ve.add(this),this[he]=e,this[pe]=t,this[fe]=r,this[me]=n,this[ge]=i}}function we(e){for(var t,r,n,i,a,s=e;;){var{[me]:o,[pe]:u}=s -if(null!==o){var{named:l,positional:c}=o -c.length>0&&(t=void 0===t?c:c.concat(t)),void 0===r&&(r=[]),r.unshift(l)}if(!be(u)){n=u,i=s[fe],a=s[ge] -break}s=u}return{definition:n,owner:i,resolved:a,positional:t,named:r}}function Oe(e,t,r,n,i=!1){return new _e(e,t,r,n,i)}e.CurriedValue=_e -class Ee{constructor(){this.stack=null,this.positional=new Te,this.named=new Pe,this.blocks=new Ae}empty(e){var t=e[g][a.$sp]+1 -return this.named.empty(e,t),this.positional.empty(e,t),this.blocks.empty(e,t),this}setup(e,t,r,n,i){this.stack=e -var s=this.named,o=t.length,u=e[g][a.$sp]-o+1 -s.setup(e,u,o,t,i) -var l=u-n -this.positional.setup(e,l,n) -var c=this.blocks,d=r.length,h=l-3*d -c.setup(e,h,d,r)}get base(){return this.blocks.base}get length(){return this.positional.length+this.named.length+3*this.blocks.length}at(e){return this.positional.at(e)}realloc(e){var{stack:t}=this -if(e>0&&null!==t){for(var{positional:r,named:n}=this,i=r.base+e,s=r.length+n.length-1;s>=0;s--)t.copy(s+r.base,s+i) -r.base+=e,n.base+=e,t[g][a.$sp]+=e}}capture(){var e=0===this.positional.length?De:this.positional.capture() -return{named:0===this.named.length?Ie:this.named.capture(),positional:e}}clear(){var{stack:e,length:t}=this -t>0&&null!==e&&e.pop(t)}}var Re=(0,t.emptyArray)() -class Te{constructor(){this.base=0,this.length=0,this.stack=null,this._references=null}empty(e,t){this.stack=e,this.base=t,this.length=0,this._references=Re}setup(e,t,r){this.stack=e,this.base=t,this.length=r,this._references=0===r?Re:null}at(e){var{base:t,length:n,stack:i}=this -return e<0||e>=n?r.UNDEFINED_REFERENCE:i.get(e,t)}capture(){return this.references}prepend(e){var t=e.length -if(t>0){var{base:r,length:n,stack:i}=this -this.base=r-=t,this.length=n+t -for(var a=0;a0){for(var{names:r,length:n,stack:i}=this,a=r.slice(),s=0;s{var s=e.stack,o=s.pop(),u=s.pop(),l=e.getOwner() -e.runtime.resolver -e.loadValue(a.$v0,function(e,n,i,a,s,o){var u,l -return(0,r.createComputeRef)((()=>{var s=(0,r.valueForRef)(n) -return s===u||(l=ye(s,e)?a?Oe(e,s,i,a):a:0===e&&"string"==typeof s&&s||(0,t.isObject)(s)?Oe(e,s,i,a):null,u=s),l}))}(n,o,l,u))})),ce.add(107,(e=>{var n,s=e.stack,o=s.pop(),u=s.pop().capture(),l=e.getOwner(),c=(0,r.createComputeRef)((()=>{void 0!==n&&(0,i.destroy)(n) -var a=(0,r.valueForRef)(o) -if(ye(a,1)){var{definition:s,owner:d,positional:h,named:p}=we(a),f=Le(e[b],s,o) -void 0!==p&&(u.named=(0,t.assign)({},...p,u.named)),void 0!==h&&(u.positional=h.concat(u.positional)),n=f(u,d),(0,i.associateDestroyableChild)(c,n)}else if((0,t.isObject)(a)){var m=Le(e[b],a,o) -n=m(u,l),(0,i._hasDestroyableChildren)(n)&&(0,i.associateDestroyableChild)(c,n)}else n=r.UNDEFINED_REFERENCE})),d=(0,r.createComputeRef)((()=>((0,r.valueForRef)(c),(0,r.valueForRef)(n)))) -e.associateDestroyable(c),e.loadValue(a.$v0,d)})),ce.add(16,((e,{op1:t})=>{var r=e.stack,n=e[b].getValue(t)(r.pop().capture(),e.getOwner(),e.dynamicScope());(0,i._hasDestroyableChildren)(n)&&e.associateDestroyable(n),e.loadValue(a.$v0,n)})),ce.add(21,((e,{op1:t})=>{var r=e.referenceForSymbol(t) -e.stack.push(r)})),ce.add(19,((e,{op1:t})=>{var r=e.stack.pop() -e.scope().bindSymbol(t,r)})),ce.add(20,((e,{op1:t})=>{var r=e.stack.pop(),n=e.stack.pop(),i=e.stack.pop() -e.scope().bindBlock(t,[r,n,i])})),ce.add(102,((e,{op1:t})=>{var n=e[b].getValue(t),i=e.scope().getPartialMap()[n] -void 0===i&&(i=(0,r.childRefFor)(e.getSelf(),n)),e.stack.push(i)})),ce.add(37,((e,{op1:t})=>{e.pushRootScope(t,e.getOwner())})),ce.add(22,((e,{op1:t})=>{var n=e[b].getValue(t),i=e.stack.pop() -e.stack.push((0,r.childRefFor)(i,n))})),ce.add(23,((e,{op1:t})=>{var{stack:r}=e,n=e.scope().getBlock(t) -r.push(n)})),ce.add(24,(e=>{var{stack:t}=e,r=t.pop() -if(r&&!Be(r)){var[n,i,a]=r -t.push(a),t.push(i),t.push(n)}else t.push(null),t.push(null),t.push(null)})),ce.add(25,(e=>{var{stack:t}=e,n=t.pop() -n&&!Be(n)?t.push(r.TRUE_REFERENCE):t.push(r.FALSE_REFERENCE)})),ce.add(26,(e=>{e.stack.pop(),e.stack.pop() -var t=e.stack.pop(),n=t&&t.parameters.length -e.stack.push(n?r.TRUE_REFERENCE:r.FALSE_REFERENCE)})),ce.add(27,((e,{op1:t})=>{for(var n,i=new Array(t),a=t;a>0;a--){i[a-1]=e.stack.pop()}e.stack.push((n=i,(0,r.createComputeRef)((()=>{for(var e=new Array,t=0;t0?e.join(""):null}))))})),ce.add(109,(e=>{var t=e.stack.pop(),i=e.stack.pop(),a=e.stack.pop() -e.stack.push((0,r.createComputeRef)((()=>!0===(0,n.toBool)((0,r.valueForRef)(t))?(0,r.valueForRef)(i):(0,r.valueForRef)(a))))})),ce.add(110,(e=>{var t=e.stack.pop() -e.stack.push((0,r.createComputeRef)((()=>!(0,n.toBool)((0,r.valueForRef)(t)))))})),ce.add(111,(e=>{var t=e.dynamicScope(),n=e.stack,i=n.pop() -n.push((0,r.createComputeRef)((()=>{var e=String((0,r.valueForRef)(i)) -return(0,r.valueForRef)(t.get(e))})))})),ce.add(112,(e=>{var{positional:t}=e.stack.pop().capture() -e.loadValue(a.$v0,(0,r.createComputeRef)((()=>{console.log(...je(t))})))})),ce.add(39,(e=>e.pushChildScope())),ce.add(40,(e=>e.popScope())),ce.add(59,(e=>e.pushDynamicScope())),ce.add(60,(e=>e.popDynamicScope())),ce.add(28,((e,{op1:r})=>{e.stack.push(e[b].getValue((0,t.decodeHandle)(r)))})),ce.add(29,((e,{op1:n})=>{e.stack.push((0,r.createConstRef)(e[b].getValue((0,t.decodeHandle)(n)),!1))})),ce.add(30,((e,{op1:r})=>{var n=e.stack -if((0,t.isHandle)(r)){var i=e[b].getValue((0,t.decodeHandle)(r)) -n.push(i)}else n.push((0,t.decodeImmediate)(r))})),ce.add(31,(e=>{var t,n=e.stack,i=n.pop() -t=void 0===i?r.UNDEFINED_REFERENCE:null===i?r.NULL_REFERENCE:!0===i?r.TRUE_REFERENCE:!1===i?r.FALSE_REFERENCE:(0,r.createPrimitiveRef)(i),n.push(t)})),ce.add(33,((e,{op1:t,op2:r})=>{var n=e.fetchValue(t)-r -e.stack.dup(n)})),ce.add(34,((e,{op1:t})=>{e.stack.pop(t)})),ce.add(35,((e,{op1:t})=>{e.load(t)})),ce.add(36,((e,{op1:t})=>{e.fetch(t)})) -ce.add(58,((e,{op1:t})=>{var r=e[b].getArray(t) -e.bindDynamicScope(r)})),ce.add(69,((e,{op1:t})=>{e.enter(t)})),ce.add(70,(e=>{e.exit()})),ce.add(63,((e,{op1:t})=>{e.stack.push(e[b].getValue(t))})),ce.add(62,(e=>{e.stack.push(e.scope())})),ce.add(61,(e=>{var t=e.stack,r=t.pop() -r?t.push(e.compile(r)):t.push(null)})),ce.add(64,(e=>{var{stack:t}=e,r=t.pop(),n=t.pop(),i=t.pop(),a=t.pop() -if(null===i)return e.pushFrame(),void e.pushScope(null!=n?n:e.scope()) -var s=n,o=i.parameters,u=o.length -if(u>0){s=s.child() -for(var l=0;l{var n=e.stack.pop(),i=Boolean((0,r.valueForRef)(n));(0,r.isConstRef)(n)?!0===i&&e.goto(t):(!0===i&&e.goto(t),e.updateWith(new $e(n)))})),ce.add(66,((e,{op1:t})=>{var n=e.stack.pop(),i=Boolean((0,r.valueForRef)(n));(0,r.isConstRef)(n)?!1===i&&e.goto(t):(!1===i&&e.goto(t),e.updateWith(new $e(n)))})),ce.add(67,((e,{op1:t,op2:r})=>{e.stack.peek()===r&&e.goto(t)})),ce.add(68,(e=>{var t=e.stack.peek() -!1===(0,r.isConstRef)(t)&&e.updateWith(new $e(t))})),ce.add(71,(e=>{var{stack:t}=e,i=t.pop() -t.push((0,r.createComputeRef)((()=>(0,n.toBool)((0,r.valueForRef)(i)))))})) -class $e{constructor(e){this.ref=e,this.last=(0,r.valueForRef)(e)}evaluate(e){var{last:t,ref:n}=this -t!==(0,r.valueForRef)(n)&&e.throw()}}class Ve{constructor(e,t){this.ref=e,this.filter=t,this.last=t((0,r.valueForRef)(e))}evaluate(e){var{last:t,ref:n,filter:i}=this -t!==i((0,r.valueForRef)(n))&&e.throw()}}class ze{constructor(){this.tag=s.CONSTANT_TAG,this.lastRevision=s.INITIAL}finalize(e,t){this.target=t,this.didModify(e)}evaluate(e){var{tag:t,target:r,lastRevision:n}=this -!e.alwaysRevalidate&&(0,s.validateTag)(t,n)&&((0,s.consumeTag)(t),e.goto(r))}didModify(e){this.tag=e,this.lastRevision=(0,s.valueForTag)(this.tag),(0,s.consumeTag)(e)}}class He{constructor(e){this.debugLabel=e}evaluate(){(0,s.beginTrackFrame)(this.debugLabel)}}class qe{constructor(e){this.target=e}evaluate(){var e=(0,s.endTrackFrame)() -this.target.didModify(e)}}ce.add(41,((e,{op1:t})=>{e.elements().appendText(e[b].getValue(t))})),ce.add(42,((e,{op1:t})=>{e.elements().appendComment(e[b].getValue(t))})),ce.add(48,((e,{op1:t})=>{e.elements().openElement(e[b].getValue(t))})),ce.add(49,(e=>{var t=(0,r.valueForRef)(e.stack.pop()) -e.elements().openElement(t)})),ce.add(50,(e=>{var t=e.stack.pop(),n=e.stack.pop(),i=e.stack.pop(),a=(0,r.valueForRef)(t),s=(0,r.valueForRef)(n),o=(0,r.valueForRef)(i);(0,r.isConstRef)(t)||e.updateWith(new $e(t)),void 0===s||(0,r.isConstRef)(n)||e.updateWith(new $e(n)) -var u=e.elements().pushRemoteElement(a,o,s) -u&&e.associateDestroyable(u)})),ce.add(56,(e=>{e.elements().popRemoteElement()})),ce.add(54,(e=>{var t=e.fetchValue(a.$t0),r=null -t&&(r=t.flush(e),e.loadValue(a.$t0,null)),e.elements().flushElement(r)})),ce.add(55,(e=>{var t=e.elements().closeElement() -t&&t.forEach((t=>{e.env.scheduleInstallModifier(t) -var{manager:r,state:n}=t,i=r.getDestroyable(n) -i&&e.associateDestroyable(i)}))})),ce.add(57,((e,{op1:t})=>{if(!1!==e.env.isInteractive){var r=e.getOwner(),n=e.stack.pop(),i=e[b].getValue(t),{manager:o}=i,{constructing:u}=e.elements(),l=o.create(r,u,i.state,n.capture()),c={manager:o,state:l,definition:i} -e.fetchValue(a.$t0).addModifier(c) -var d=o.getTag(l) -return null!==d?((0,s.consumeTag)(d),e.updateWith(new We(d,c))):void 0}})),ce.add(108,(e=>{if(!1!==e.env.isInteractive){var{stack:n,[b]:i}=e,o=n.pop(),u=n.pop().capture(),{constructing:l}=e.elements(),c=e.getOwner(),d=(0,r.createComputeRef)((()=>{var e,n=(0,r.valueForRef)(o) -if((0,t.isObject)(n)){var a -if(ye(n,2)){var{definition:s,owner:d,positional:h,named:p}=we(n) -a=s,e=d,void 0!==h&&(u.positional=h.concat(u.positional)),void 0!==p&&(u.named=(0,t.assign)({},...p,u.named))}else a=n,e=c -var f=i.modifier(a,null,!0) -0 -var m=i.getValue(f),{manager:g}=m,v=g.create(e,l,m.state,u) -return{manager:g,state:v,definition:m}}})),h=(0,r.valueForRef)(d),p=null -if(void 0!==h)e.fetchValue(a.$t0).addModifier(h),null!==(p=h.manager.getTag(h.state))&&(0,s.consumeTag)(p) -return!(0,r.isConstRef)(o)||p?e.updateWith(new Ge(p,h,d)):void 0}})) -class We{constructor(e,t){this.tag=e,this.modifier=t,this.lastUpdated=(0,s.valueForTag)(e)}evaluate(e){var{modifier:t,tag:r,lastUpdated:n}=this;(0,s.consumeTag)(r),(0,s.validateTag)(r,n)||(e.env.scheduleUpdateModifier(t),this.lastUpdated=(0,s.valueForTag)(r))}}class Ge{constructor(e,t,r){this.tag=e,this.instance=t,this.instanceRef=r,this.lastUpdated=(0,s.valueForTag)(null!=e?e:s.CURRENT_TAG)}evaluate(e){var{tag:t,lastUpdated:n,instance:a,instanceRef:o}=this,u=(0,r.valueForRef)(o) -if(u!==a){if(void 0!==a){var l=a.manager.getDestroyable(a.state) -null!==l&&(0,i.destroy)(l)}if(void 0!==u){var{manager:c,state:d}=u,h=c.getDestroyable(d) -null!==h&&(0,i.associateDestroyableChild)(this,h),null!==(t=c.getTag(d))&&(this.lastUpdated=(0,s.valueForTag)(t)),this.tag=t,e.env.scheduleInstallModifier(u)}this.instance=u}else null===t||(0,s.validateTag)(t,n)||(e.env.scheduleUpdateModifier(a),this.lastUpdated=(0,s.valueForTag)(t)) -null!==t&&(0,s.consumeTag)(t)}}ce.add(51,((e,{op1:t,op2:r,op3:n})=>{var i=e[b].getValue(t),a=e[b].getValue(r),s=n?e[b].getValue(n):null -e.elements().setStaticAttribute(i,a,s)})),ce.add(52,((e,{op1:t,op2:n,op3:i})=>{var a=e[b].getValue(t),s=e[b].getValue(n),o=e.stack.pop(),u=(0,r.valueForRef)(o),l=i?e[b].getValue(i):null,c=e.elements().setDynamicAttribute(a,u,s,l);(0,r.isConstRef)(o)||e.updateWith(new Ye(o,c,e.env))})) -class Ye{constructor(e,t,n){var i=!1 -this.updateRef=(0,r.createComputeRef)((()=>{var a=(0,r.valueForRef)(e) -!0===i?t.update(a,n):i=!0})),(0,r.valueForRef)(this.updateRef)}evaluate(){(0,r.valueForRef)(this.updateRef)}}ce.add(78,((e,{op1:t})=>{var r=e[b].getValue(t),{manager:n,capabilities:i}=r,a={definition:r,manager:n,capabilities:i,state:null,handle:null,table:null,lookup:null} -e.stack.push(a)})),ce.add(80,((e,{op1:t})=>{var n,i=e.stack,s=(0,r.valueForRef)(i.pop()),o=e[b],u=e.getOwner() -o.getValue(t) -if(e.loadValue(a.$t1,null),"string"==typeof s){0 -var l=function(e,t,r,n){var i=e.lookupComponent(r,n) -return t.resolvedComponent(i,r)}(e.runtime.resolver,o,s,u) -n=l}else n=be(s)?s:o.component(s,u) -i.push(n)})),ce.add(81,(e=>{var t,n=e.stack,i=n.pop(),a=(0,r.valueForRef)(i),s=e[b] -t=be(a)?a:s.component(a,e.getOwner(),!0),n.push(t)})),ce.add(79,(e=>{var t,r,{stack:n}=e,i=n.pop() -be(i)?r=t=null:(r=i.manager,t=i.capabilities),n.push({definition:i,capabilities:t,manager:r,state:null,handle:null,table:null})})),ce.add(82,((e,{op1:r,op2:n,op3:i})=>{var a=e.stack,s=e[b].getArray(r),o=i>>4,u=8&i,l=7&i?e[b].getArray(n):t.EMPTY_STRING_ARRAY -e[y].setup(a,s,l,o,!!u),a.push(e[y])})),ce.add(83,(e=>{var{stack:t}=e -t.push(e[y].empty(t))})),ce.add(86,(e=>{var t=e.stack,r=t.pop().capture() -t.push(r)})),ce.add(85,((e,{op1:r})=>{var n=e.stack,i=e.fetchValue(r),s=n.pop(),{definition:u}=i -if(ye(u,0)){var l=e[b],{definition:c,owner:d,resolved:h,positional:p,named:f}=we(u) -if(!0===h)u=c -else if("string"==typeof c){var m=e.runtime.resolver.lookupComponent(c,d) -u=l.resolvedComponent(m,c)}else u=l.component(c,d) -void 0!==f&&s.named.merge((0,t.assign)({},...f)),void 0!==p&&(s.realloc(p.length),s.positional.prepend(p)) -var{manager:g}=u -i.definition=u,i.manager=g,i.capabilities=u.capabilities,e.loadValue(a.$t1,d)}var{manager:v,state:y}=u,_=i.capabilities -if((0,o.managerHasCapability)(v,_,4)){var w=s.blocks.values,O=s.blocks.names,E=v.prepareArgs(y,s) -if(E){s.clear() -for(var R=0;R{var n=e.fetchValue(r),{definition:i,manager:a,capabilities:s}=n -if((0,o.managerHasCapability)(a,s,512)){var u=null;(0,o.managerHasCapability)(a,s,64)&&(u=e.dynamicScope()) -var l=1&t,c=null;(0,o.managerHasCapability)(a,s,8)&&(c=e.stack.peek()) -var d=null;(0,o.managerHasCapability)(a,s,128)&&(d=e.getSelf()) -var h=a.create(e.getOwner(),i.state,c,e.env,u,d,!!l) -n.state=h,(0,o.managerHasCapability)(a,s,256)&&e.updateWith(new Ze(h,a,u))}})),ce.add(88,((e,{op1:t})=>{var{manager:r,state:n,capabilities:i}=e.fetchValue(t),a=r.getDestroyable(n) -a&&e.associateDestroyable(a)})),ce.add(97,((e,{op1:t})=>{var r -e.beginCacheGroup(r),e.elements().pushSimpleBlock()})),ce.add(89,(e=>{e.loadValue(a.$t0,new Qe)})),ce.add(53,((e,{op1:t,op2:r,op3:n})=>{var i=e[b].getValue(t),s=e[b].getValue(r),o=e.stack.pop(),u=n?e[b].getValue(n):null -e.fetchValue(a.$t0).setAttribute(i,o,s,u)})),ce.add(105,((e,{op1:t,op2:r,op3:n})=>{var i=e[b].getValue(t),s=e[b].getValue(r),o=n?e[b].getValue(n):null -e.fetchValue(a.$t0).setStaticAttribute(i,s,o)})) -class Qe{constructor(){this.attributes=(0,t.dict)(),this.classes=[],this.modifiers=[]}setAttribute(e,t,r,n){var i={value:t,namespace:n,trusting:r} -"class"===e&&this.classes.push(t),this.attributes[e]=i}setStaticAttribute(e,t,r){var n={value:t,namespace:r} -"class"===e&&this.classes.push(t),this.attributes[e]=n}addModifier(e){this.modifiers.push(e)}flush(e){var t,r=this.attributes -for(var n in this.attributes)if("type"!==n){var i=this.attributes[n] -"class"===n?Je(e,"class",Ke(this.classes),i.namespace,i.trusting):Je(e,n,i.value,i.namespace,i.trusting)}else t=r[n] -return void 0!==t&&Je(e,"type",t.value,t.namespace,t.trusting),this.modifiers}}function Ke(e){return 0===e.length?"":1===e.length?e[0]:function(e){for(var t=0;t{for(var e=[],n=0;n{var{definition:r,state:n}=e.fetchValue(t),{manager:i}=r,s=e.fetchValue(a.$t0) -i.didCreateElement(n,e.elements().constructing,s)})),ce.add(90,((e,{op1:t,op2:n})=>{var a,s=e.fetchValue(t),{definition:o,state:u}=s,{manager:l}=o,c=l.getSelf(u) -if(void 0!==e.env.debugRenderTree){var d,h,p=e.fetchValue(t),{definition:f,manager:m}=p -if(e.stack.peek()===e[y])d=e[y].capture() -else{var g=e[b].getArray(n) -e[y].setup(e.stack,g,[],0,!0),d=e[y].capture()}var v=f.compilable -if(h=null===v?null!==(v=m.getDynamicLayout(u,e.runtime.resolver))?v.moduleName:"__default__.hbs":v.moduleName,e.associateDestroyable(p),Ue(m)){m.getDebugCustomRenderTree(p.definition.state,p.state,d,h).forEach((t=>{var{bucket:r}=t -e.env.debugRenderTree.create(r,t),(0,i.registerDestructor)(p,(()=>{var t -null===(t=e.env.debugRenderTree)||void 0===t||t.willDestroy(r)})),e.updateWith(new tt(r))}))}else{var _=null!==(a=f.resolvedName)&&void 0!==a?a:m.getDebugName(f.state) -e.env.debugRenderTree.create(p,{type:"component",name:_,args:d,template:h,instance:(0,r.valueForRef)(c)}),e.associateDestroyable(p),(0,i.registerDestructor)(p,(()=>{var t -null===(t=e.env.debugRenderTree)||void 0===t||t.willDestroy(p)})),e.updateWith(new tt(p))}}e.stack.push(c)})),ce.add(91,((e,{op1:t})=>{var{definition:r,state:n}=e.fetchValue(t),{manager:i}=r,a=i.getTagName(n) -e.stack.push(a)})),ce.add(92,((e,{op1:r})=>{var n=e.fetchValue(r),{manager:i,definition:a}=n,{stack:s}=e,{compilable:u}=a -if(null===u){var{capabilities:l}=n -null===(u=i.getDynamicLayout(n.state,e.runtime.resolver))&&(u=(0,o.managerHasCapability)(i,l,1024)?(0,t.unwrapTemplate)(e[b].defaultTemplate).asWrappedLayout():(0,t.unwrapTemplate)(e[b].defaultTemplate).asLayout())}var c=u.compile(e.context) -s.push(u.symbolTable),s.push(c)})),ce.add(75,((e,{op1:t})=>{var r=e.stack.pop(),n=e.stack.pop(),{manager:i,capabilities:a}=r,s={definition:r,manager:i,capabilities:a,state:null,handle:n.handle,table:n.symbolTable,lookup:null} -e.loadValue(t,s)})),ce.add(95,((e,{op1:t})=>{var{stack:r}=e,n=r.pop(),i=r.pop(),a=e.fetchValue(t) -a.handle=n,a.table=i})),ce.add(38,((e,{op1:t})=>{var r,{table:n,manager:i,capabilities:s,state:u}=e.fetchValue(t);(0,o.managerHasCapability)(i,s,4096)?(r=i.getOwner(u),e.loadValue(a.$t1,null)):null===(r=e.fetchValue(a.$t1))?r=e.getOwner():e.loadValue(a.$t1,null),e.pushRootScope(n.symbols.length+1,r)})),ce.add(94,((e,{op1:r})=>{var n=e.fetchValue(r) -if(n.table.hasEval){var i=n.lookup=(0,t.dict)() -e.scope().bindEvalScope(i)}})),ce.add(17,((e,{op1:t})=>{for(var r=e.fetchValue(t),n=e.scope(),i=e.stack.peek(),a=i.named.atNames,s=a.length-1;s>=0;s--){var o=a[s],u=r.table.symbols.indexOf(a[s]),l=i.named.get(o,!0);-1!==u&&n.bindSymbol(u+1,l),r.lookup&&(r.lookup[o]=l)}})),ce.add(18,((e,{op1:t})=>{for(var r=e.fetchValue(t),{blocks:n}=e.stack.peek(),i=0;i{var r=e.fetchValue(t) -e.call(r.handle)})),ce.add(100,((e,{op1:t})=>{var r=e.fetchValue(t),{manager:n,state:i,capabilities:a}=r,s=e.elements().popBlock() -void 0!==e.env.debugRenderTree&&(Ue(n)?n.getDebugCustomRenderTree(r.definition.state,i,Fe).reverse().forEach((t=>{var{bucket:r}=t -e.env.debugRenderTree.didRender(r,s),e.updateWith(new rt(r,s))})):(e.env.debugRenderTree.didRender(r,s),e.updateWith(new rt(r,s))));(0,o.managerHasCapability)(n,a,512)&&(n.didRenderLayout(i,s),e.env.didCreate(r),e.updateWith(new et(r,s)))})),ce.add(98,(e=>{e.commitCacheGroup()})) -class Ze{constructor(e,t,r){this.component=e,this.manager=t,this.dynamicScope=r}evaluate(e){var{component:t,manager:r,dynamicScope:n}=this -r.update(t,n)}}class et{constructor(e,t){this.component=e,this.bounds=t}evaluate(e){var{component:t,bounds:r}=this,{manager:n,state:i}=t -n.didUpdateLayout(i,r),e.env.didUpdate(t)}}class tt{constructor(e){this.bucket=e}evaluate(e){var t -null===(t=e.env.debugRenderTree)||void 0===t||t.update(this.bucket)}}class rt{constructor(e,t){this.bucket=e,this.bounds=t}evaluate(e){var t -null===(t=e.env.debugRenderTree)||void 0===t||t.didRender(this.bucket,this.bounds)}}class nt{constructor(e,t,r){this.node=e,this.reference=t,this.lastValue=r}evaluate(){var e,t=(0,r.valueForRef)(this.reference),{lastValue:n}=this -t!==n&&((e=P(t)?"":A(t)?t:String(t))!==n&&(this.node.nodeValue=this.lastValue=e))}}function it(e){return function(e){return A(e)||P(e)||"boolean"==typeof e||"number"==typeof e}(e)?2:ye(e,0)||(0,o.hasInternalComponentManager)(e)?0:ye(e,1)||(0,o.hasInternalHelperManager)(e)?1:C(e)?4:function(e){return x(e)&&11===e.nodeType}(e)?5:x(e)?6:2}function at(e){return(0,t.isObject)(e)?ye(e,0)||(0,o.hasInternalComponentManager)(e)?0:1:2}function st(e,t){console.info("Use `context`, and `get()` to debug this template."),t("this")}ce.add(76,(e=>{var t=e.stack.peek() -e.stack.push(it((0,r.valueForRef)(t))),(0,r.isConstRef)(t)||e.updateWith(new Ve(t,it))})),ce.add(106,(e=>{var t=e.stack.peek() -e.stack.push(at((0,r.valueForRef)(t))),(0,r.isConstRef)(t)||e.updateWith(new Ve(t,at))})),ce.add(43,(e=>{var t=e.stack.pop(),n=(0,r.valueForRef)(t),i=P(n)?"":String(n) -e.elements().appendDynamicHTML(i)})),ce.add(44,(e=>{var t=e.stack.pop(),n=(0,r.valueForRef)(t).toHTML(),i=P(n)?"":n -e.elements().appendDynamicHTML(i)})),ce.add(47,(e=>{var t=e.stack.pop(),n=(0,r.valueForRef)(t),i=P(n)?"":String(n),a=e.elements().appendDynamicText(i);(0,r.isConstRef)(t)||e.updateWith(new nt(a,t,i))})),ce.add(45,(e=>{var t=e.stack.pop(),n=(0,r.valueForRef)(t) -e.elements().appendDynamicFragment(n)})),ce.add(46,(e=>{var t=e.stack.pop(),n=(0,r.valueForRef)(t) -e.elements().appendDynamicNode(n)})) -var ot=st -class ut{constructor(e,r,n){this.scope=e,this.locals=(0,t.dict)() -for(var i=0;i(0,r.childRefFor)(e,t)),t)}}ce.add(103,((e,{op1:n,op2:i})=>{var a=e[b].getArray(n),s=e[b].getArray((0,t.decodeHandle)(i)),o=new ut(e.scope(),a,s) -ot((0,r.valueForRef)(e.getSelf()),(e=>(0,r.valueForRef)(o.get(e))))})),ce.add(72,((e,{op1:t,op2:n})=>{var i=e.stack,a=i.pop(),s=i.pop(),o=(0,r.valueForRef)(s),u=null===o?"@identity":String(o),l=(0,r.createIteratorRef)(a,u),c=(0,r.valueForRef)(l) -e.updateWith(new Ve(l,(e=>e.isEmpty()))),!0===c.isEmpty()?e.goto(n+1):(e.enterList(l,t),e.stack.push(c))})),ce.add(73,(e=>{e.exitList()})),ce.add(74,((e,{op1:t})=>{var r=e.stack.peek().next() -null!==r?e.registerItem(e.enterItem(r)):e.goto(t)})) -var lt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class ct{getCapabilities(){return lt}getDebugName({name:e}){return e}getSelf(){return r.NULL_REFERENCE}getDestroyable(){return null}}e.TemplateOnlyComponentManager=ct -var dt=e.TEMPLATE_ONLY_COMPONENT_MANAGER=new ct -class ht{constructor(e="@glimmer/component/template-only",t="(unknown template-only component)"){this.moduleName=e,this.name=t}toString(){return this.moduleName}}e.TemplateOnlyComponent=ht,(0,o.setInternalComponentManager)(dt,ht.prototype) -var pt={foreignObject:1,desc:1,title:1},ft=Object.create(null) -class mt{constructor(e){this.document=e,this.setupUselessElement()}setupUselessElement(){this.uselessElement=this.document.createElement("div")}createElement(e,t){var r,n -if(t?(r="http://www.w3.org/2000/svg"===t.namespaceURI||"svg"===e,n=!!pt[t.tagName]):(r="svg"===e,n=!1),r&&!n){if(ft[e])throw new Error(`Cannot create a ${e} inside an SVG context`) -return this.document.createElementNS("http://www.w3.org/2000/svg",e)}return this.document.createElement(e)}insertBefore(e,t,r){e.insertBefore(t,r)}insertHTMLBefore(e,t,r){if(""===r){var n=this.createComment("") -return e.insertBefore(n,t),new w(e,n,n)}var i,a=t?t.previousSibling:e.lastChild -if(null===t)e.insertAdjacentHTML("beforeend",r),i=e.lastChild -else if(t instanceof HTMLElement)t.insertAdjacentHTML("beforebegin",r),i=t.previousSibling -else{var{uselessElement:s}=this -e.insertBefore(s,t),s.insertAdjacentHTML("beforebegin",r),i=s.previousSibling,e.removeChild(s)}var o=a?a.nextSibling:e.firstChild -return new w(e,o,i)}createTextNode(e){return this.document.createTextNode(e)}createComment(e){return this.document.createComment(e)}}var gt="http://www.w3.org/2000/svg" -function vt(e,r,n){if(!e)return r -if(!function(e,t){var r=e.createElementNS(t,"svg") -try{r.insertAdjacentHTML("beforeend","")}catch(n){}finally{return 1!==r.childNodes.length||r.firstChild.namespaceURI!==gt}}(e,n))return r -var i=e.createElement("div") -return class extends r{insertHTMLBefore(e,r,a){return""===a||e.namespaceURI!==n?super.insertHTMLBefore(e,r,a):function(e,r,n,i){var a -if("FOREIGNOBJECT"===e.tagName.toUpperCase()){var s=""+n+"";(0,t.clearElement)(r),r.insertAdjacentHTML("afterbegin",s),a=r.firstChild.firstChild}else{var o=""+n+"";(0,t.clearElement)(r),r.insertAdjacentHTML("afterbegin",o),a=r.firstChild}return function(e,t,r){for(var n=e.firstChild,i=n,a=n;a;){var s=a.nextSibling -t.insertBefore(a,r),i=a,a=s}return new w(t,n,i)}(a,e,i)}(e,i,a,r)}}}function bt(e,t){return e&&function(e){var t=e.createElement("div") -if(t.appendChild(e.createTextNode("first")),t.insertAdjacentHTML("beforeend","second"),2===t.childNodes.length)return!1 -return!0}(e)?class extends t{constructor(e){super(e),this.uselessComment=e.createComment("")}insertHTMLBefore(e,t,r){if(""===r)return super.insertHTMLBefore(e,t,r) -var n=!1,i=t?t.previousSibling:e.lastChild -i&&i instanceof Text&&(n=!0,e.insertBefore(this.uselessComment,t)) -var a=super.insertHTMLBefore(e,t,r) -return n&&e.removeChild(this.uselessComment),a}}:t}["b","big","blockquote","body","br","center","code","dd","div","dl","dt","em","embed","h1","h2","h3","h4","h5","h6","head","hr","i","img","li","listing","main","meta","nobr","ol","p","pre","ruby","s","small","span","strong","strike","sub","sup","table","tt","u","ul","var"].forEach((e=>ft[e]=1)) -var yt,_t=/[\t-\r \xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]/,wt="undefined"==typeof document?null:document;(function(e){class t extends mt{createElementNS(e,t){return this.document.createElementNS(e,t)}setAttribute(e,t,r,n=null){n?e.setAttributeNS(n,t,r):e.setAttribute(t,r)}}e.TreeConstruction=t -var r=t -r=bt(wt,r),r=vt(wt,r,"http://www.w3.org/2000/svg"),e.DOMTreeConstruction=r})(yt||(yt={})) -class Ot extends mt{constructor(e){super(e),this.document=e,this.namespace=null}setAttribute(e,t,r){e.setAttribute(t,r)}removeAttribute(e,t){e.removeAttribute(t)}insertAfter(e,t,r){this.insertBefore(e,t,r.nextSibling)}}e.IDOMChanges=Ot -var Et=Ot -Et=bt(wt,Et),Et=vt(wt,Et,"http://www.w3.org/2000/svg") -e.DOMChanges=Et -var Rt,Tt=e.DOMTreeConstruction=yt.DOMTreeConstruction,Pt=0 -class Ct{constructor(e){this.id=Pt++,this.value=e}get(){return this.value}release(){this.value=null}toString(){var e=`Ref ${this.id}` -if(null===this.value)return`${e} (released)` -try{return`${e}: ${this.value}`}catch(j){return e}}}class xt{constructor(){this.stack=new t.Stack,this.refs=new WeakMap,this.roots=new Set,this.nodes=new WeakMap}begin(){this.reset()}create(e,r){var n=(0,t.assign)({},r,{bounds:null,refs:new Set}) -this.nodes.set(e,n),this.appendChild(n,e),this.enter(e)}update(e){this.enter(e)}didRender(e,t){this.nodeFor(e).bounds=t,this.exit()}willDestroy(e){this.refs.get(e).release()}commit(){this.reset()}capture(){return this.captureRefs(this.roots)}reset(){if(0!==this.stack.size){var e=this.stack.toArray()[0],t=this.refs.get(e) -for(void 0!==t&&this.roots.delete(t);!this.stack.isEmpty();)this.stack.pop()}}enter(e){this.stack.push(e)}exit(){this.stack.pop()}nodeFor(e){return this.nodes.get(e)}appendChild(e,t){var r=this.stack.current,n=new Ct(t) -if(this.refs.set(t,n),r){var i=this.nodeFor(r) -i.refs.add(n),e.parent=i}else this.roots.add(n)}captureRefs(e){var t=[] -return e.forEach((r=>{var n=r.get() -n?t.push(this.captureNode(`render-node:${r.id}`,n)):e.delete(r)})),t}captureNode(e,t){var r=this.nodeFor(t),{type:n,name:i,args:a,instance:s,refs:o}=r,u=this.captureTemplate(r),l=this.captureBounds(r),c=this.captureRefs(o) -return{id:e,type:n,name:i,args:Ne(a),instance:s,template:u,bounds:l,children:c}}captureTemplate({template:e}){return e||null}captureBounds(e){var t=e.bounds -return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}}var At,kt,St=(0,t.symbol)("TRANSACTION") -class Mt{constructor(){this.scheduledInstallModifiers=[],this.scheduledUpdateModifiers=[],this.createdComponents=[],this.updatedComponents=[]}didCreate(e){this.createdComponents.push(e)}didUpdate(e){this.updatedComponents.push(e)}scheduleInstallModifier(e){this.scheduledInstallModifiers.push(e)}scheduleUpdateModifier(e){this.scheduledUpdateModifiers.push(e)}commit(){for(var{createdComponents:e,updatedComponents:t}=this,r=0;rl.install(c)),!1);(0,s.updateTag)(m,g)}else l.install(c)}for(var v=0;vl.update(c)),!1);(0,s.updateTag)(y,_)}else l.update(c)}}}class jt{constructor(e,t){this.delegate=t,this[Rt]=null,this.isInteractive=this.delegate.isInteractive,this.debugRenderTree=this.delegate.enableDebugTooling?new xt:void 0,e.appendOperations?(this.appendOperations=e.appendOperations,this.updateOperations=e.updateOperations):e.document&&(this.appendOperations=new Tt(e.document),this.updateOperations=new Ot(e.document))}getAppendOperations(){return this.appendOperations}getDOM(){return this.updateOperations}begin(){var e -null===(e=this.debugRenderTree)||void 0===e||e.begin(),this[St]=new Mt}get transaction(){return this[St]}didCreate(e){this.transaction.didCreate(e)}didUpdate(e){this.transaction.didUpdate(e)}scheduleInstallModifier(e){this.isInteractive&&this.transaction.scheduleInstallModifier(e)}scheduleUpdateModifier(e){this.isInteractive&&this.transaction.scheduleUpdateModifier(e)}commit(){var e,t=this.transaction -this[St]=null,t.commit(),null===(e=this.debugRenderTree)||void 0===e||e.commit(),this.delegate.onTransactionCommit()}}function Nt(e,t){if(e[St])t() -else{e.begin() -try{t()}finally{e.commit()}}}e.EnvironmentImpl=jt,Rt=St -class It{constructor(e,t,r,n,i){this.stack=e,this.heap=t,this.program=r,this.externs=n,this.registers=i,this.currentOpSize=0}fetchRegister(e){return this.registers[e]}loadRegister(e,t){this.registers[e]=t}setPc(e){this.registers[a.$pc]=e}pushFrame(){this.stack.push(this.registers[a.$ra]),this.stack.push(this.registers[a.$fp]),this.registers[a.$fp]=this.registers[a.$sp]-1}popFrame(){this.registers[a.$sp]=this.registers[a.$fp]-1,this.registers[a.$ra]=this.stack.get(0),this.registers[a.$fp]=this.stack.get(1)}pushSmallFrame(){this.stack.push(this.registers[a.$ra])}popSmallFrame(){this.registers[a.$ra]=this.stack.pop()}goto(e){this.setPc(this.target(e))}target(e){return this.registers[a.$pc]+e-this.currentOpSize}call(e){this.registers[a.$ra]=this.registers[a.$pc],this.setPc(this.heap.getaddr(e))}returnTo(e){this.registers[a.$ra]=this.target(e)}return(){this.setPc(this.registers[a.$ra])}nextStatement(){var{registers:e,program:t}=this,r=e[a.$pc] -if(-1===r)return null -var n=t.opcode(r),i=this.currentOpSize=n.size -return this.registers[a.$pc]+=i,n}evaluateOuter(e,t){this.evaluateInner(e,t)}evaluateInner(e,t){e.isMachine?this.evaluateMachine(e):this.evaluateSyscall(e,t)}evaluateMachine(e){switch(e.type){case 0:return this.pushFrame() -case 1:return this.popFrame() -case 3:return this.call(e.op1) -case 2:return this.call(this.stack.pop()) -case 4:return this.goto(e.op1) -case 5:return this.return() -case 6:return this.returnTo(e.op1)}}evaluateSyscall(e,t){ce.evaluate(t,e,e.type)}}class Dt{constructor(e,{alwaysRevalidate:r=!1}){this.frameStack=new t.Stack,this.env=e,this.dom=e.getDOM(),this.alwaysRevalidate=r}execute(e,t){this._execute(e,t)}_execute(e,t){var{frameStack:r}=this -for(this.try(e,t);!r.isEmpty();){var n=this.frame.nextStatement() -void 0!==n?n.evaluate(this):r.pop()}}get frame(){return this.frameStack.current}goto(e){this.frame.goto(e)}try(e,t){this.frameStack.push(new Vt(e,t))}throw(){this.frame.handleException(),this.frameStack.pop()}}e.UpdatingVM=Dt -class Ft{constructor(e,t){this.state=e,this.resumeCallback=t}resume(e,t){return this.resumeCallback(e,this.state,t)}}class Lt{constructor(e,t,r,n){this.state=e,this.runtime=t,this.children=n,this.bounds=r}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}evaluate(e){e.try(this.children,null)}}class Bt extends Lt{constructor(){super(...arguments),this.type="try"}evaluate(e){e.try(this.children,this)}handleException(){var{state:e,bounds:t,runtime:r}=this;(0,i.destroyChildren)(this) -var n=ae.resume(r.env,t),a=e.resume(r,n),s=[],o=this.children=[],u=a.execute((e=>{e.pushUpdating(s),e.updateWith(this),e.pushUpdating(o)}));(0,i.associateDestroyableChild)(this,u.drop)}}class Ut extends Bt{constructor(e,t,r,n,i,a){super(e,t,r,[]),this.key=n,this.memo=i,this.value=a,this.retained=!1,this.index=-1}updateReferences(e){this.retained=!0,(0,r.updateRef)(this.value,e.value),(0,r.updateRef)(this.memo,e.memo)}shouldRemove(){return!this.retained}reset(){this.retained=!1}}class $t extends Lt{constructor(e,t,n,i,a){super(e,t,n,i),this.iterableRef=a,this.type="list-block",this.opcodeMap=new Map,this.marker=null,this.lastIterator=(0,r.valueForRef)(a)}initializeChild(e){e.index=this.children.length-1,this.opcodeMap.set(e.key,e)}evaluate(e){var t=(0,r.valueForRef)(this.iterableRef) -if(this.lastIterator!==t){var{bounds:n}=this,{dom:i}=e,a=this.marker=i.createComment("") -i.insertAfter(n.parentElement(),a,n.lastNode()),this.sync(t),this.parentElement().removeChild(a),this.marker=null,this.lastIterator=t}super.evaluate(e)}sync(e){var{opcodeMap:t,children:r}=this,n=0,i=0 -for(this.children=this.bounds.boundList=[];;){var a=e.next() -if(null===a)break -for(var s=r[n],{key:o}=a;void 0!==s&&!0===s.retained;)s=r[++n] -if(void 0!==s&&s.key===o)this.retainItem(s,a),n++ -else if(t.has(o)){var u=t.get(o) -if(u.index{t.pushUpdating() -var n=t.enterItem(e) -n.index=o.length,o.push(n),r.set(u,n),(0,i.associateDestroyableChild)(this,n)}))}moveItem(e,t,n){var i,{children:a}=this;(0,r.updateRef)(e.memo,t.memo),(0,r.updateRef)(e.value,t.value),e.retained=!0,void 0===n?E(e,this.marker):e.lastNode().nextSibling!==(i=n.firstNode())&&E(e,i),e.index=a.length,a.push(e)}deleteItem(e){(0,i.destroy)(e),R(e),this.opcodeMap.delete(e.key)}}class Vt{constructor(e,t){this.ops=e,this.exceptionHandler=t,this.current=0}goto(e){this.current=e}nextStatement(){return this.ops[this.current++]}handleException(){this.exceptionHandler&&this.exceptionHandler.handleException()}}class zt{constructor(e,t,r,n){this.env=e,this.updating=t,this.bounds=r,this.drop=n,(0,i.associateDestroyableChild)(this,n),(0,i.registerDestructor)(this,(()=>R(this.bounds)))}rerender({alwaysRevalidate:e=!1}={alwaysRevalidate:!1}){var{env:t,updating:r}=this -new Dt(t,{alwaysRevalidate:e}).execute(r,this)}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}handleException(){throw"this should never happen"}}class Ht{constructor(e=[],t){this.stack=e,this[g]=t}static restore(e){return new this(e.slice(),[0,-1,e.length-1,0])}push(e){this.stack[++this[g][a.$sp]]=e}dup(e=this[g][a.$sp]){this.stack[++this[g][a.$sp]]=this.stack[e]}copy(e,t){this.stack[t]=this.stack[e]}pop(e=1){var t=this.stack[this[g][a.$sp]] -return this[g][a.$sp]-=e,t}peek(e=0){return this.stack[this[g][a.$sp]-e]}get(e,t=this[g][a.$fp]){return this.stack[t+e]}set(e,t,r=this[g][a.$fp]){this.stack[r+t]=e}slice(e,t){return this.stack.slice(e,t)}capture(e){var t=this[g][a.$sp]+1,r=t-e -return this.stack.slice(r,t)}reset(){this.stack.length=0}toArray(){return this.stack.slice(this[g][a.$fp],this[g][a.$sp]+1)}}class qt{constructor(){this.scope=new t.Stack,this.dynamicScope=new t.Stack,this.updating=new t.Stack,this.cache=new t.Stack,this.list=new t.Stack}}class Wt{constructor(e,{pc:r,scope:n,dynamicScope:i,stack:s},o,u){this.runtime=e,this.elementStack=o,this.context=u,this[At]=new qt,this[kt]=new t.Stack,this.s0=null,this.s1=null,this.t0=null,this.t1=null,this.v0=null,this.resume=Yt(this.context) -var l=Ht.restore(s) -l[g][a.$pc]=r,l[g][a.$sp]=s.length-1,l[g][a.$fp]=-1,this[v]=this.program.heap,this[b]=this.program.constants,this.elementStack=o,this[m].scope.push(n),this[m].dynamicScope.push(i),this[y]=new Ee,this[p]=new It(l,this[v],e.program,{debugBefore:e=>ce.debugBefore(this,e),debugAfter:e=>{ce.debugAfter(this,e)}},l[g]),this.destructor={},this[f].push(this.destructor)}get stack(){return this[p].stack}get pc(){return this[p].fetchRegister(a.$pc)}fetch(e){var t=this.fetchValue(e) -this.stack.push(t)}load(e){var t=this.stack.pop() -this.loadValue(e,t)}fetchValue(e){if((0,a.isLowLevelRegister)(e))return this[p].fetchRegister(e) -switch(e){case a.$s0:return this.s0 -case a.$s1:return this.s1 -case a.$t0:return this.t0 -case a.$t1:return this.t1 -case a.$v0:return this.v0}}loadValue(e,t){switch((0,a.isLowLevelRegister)(e)&&this[p].loadRegister(e,t),e){case a.$s0:this.s0=t -break -case a.$s1:this.s1=t -break -case a.$t0:this.t0=t -break -case a.$t1:this.t1=t -break -case a.$v0:this.v0=t}}pushFrame(){this[p].pushFrame()}popFrame(){this[p].popFrame()}goto(e){this[p].goto(e)}call(e){this[p].call(e)}returnTo(e){this[p].returnTo(e)}return(){this[p].return()}static initial(e,t,{handle:r,self:n,dynamicScope:i,treeBuilder:a,numSymbols:s,owner:o}){var u=h.root(n,s,o),l=Gt(e.program.heap.getaddr(r),u,i),c=Yt(t)(e,l,a) -return c.pushUpdating(),c}static empty(e,{handle:t,treeBuilder:n,dynamicScope:i,owner:a},s){var o=Yt(s)(e,Gt(e.program.heap.getaddr(t),h.root(r.UNDEFINED_REFERENCE,0,a),i),n) -return o.pushUpdating(),o}compile(e){return(0,t.unwrapHandle)(e.compile(this.context))}get program(){return this.runtime.program}get env(){return this.runtime.env}captureState(e,t=this[p].fetchRegister(a.$pc)){return{pc:t,scope:this.scope(),dynamicScope:this.dynamicScope(),stack:this.stack.capture(e)}}capture(e,t=this[p].fetchRegister(a.$pc)){return new Ft(this.captureState(e,t),this.resume)}beginCacheGroup(e){var t=this.updating(),r=new ze -t.push(r),t.push(new He(e)),this[m].cache.push(r),(0,s.beginTrackFrame)(e)}commitCacheGroup(){var e=this.updating(),t=this[m].cache.pop(),r=(0,s.endTrackFrame)() -e.push(new qe(t)),t.finalize(r,e.length)}enter(e){var t=this.capture(e),r=this.elements().pushUpdatableBlock(),n=new Bt(t,this.runtime,r,[]) -this.didEnter(n)}enterItem({key:e,value:t,memo:n}){var{stack:i}=this,a=(0,r.createIteratorItemRef)(t),s=(0,r.createIteratorItemRef)(n) -i.push(a),i.push(s) -var o=this.capture(2),u=this.elements().pushUpdatableBlock(),l=new Ut(o,this.runtime,u,e,s,a) -return this.didEnter(l),l}registerItem(e){this.listBlock().initializeChild(e)}enterList(e,t){var r=[],n=this[p].target(t),i=this.capture(0,n),a=this.elements().pushBlockList(r),s=new $t(i,this.runtime,a,r,e) -this[m].list.push(s),this.didEnter(s)}didEnter(e){this.associateDestroyable(e),this[f].push(e),this.updateWith(e),this.pushUpdating(e.children)}exit(){this[f].pop(),this.elements().popBlock(),this.popUpdating()}exitList(){this.exit(),this[m].list.pop()}pushUpdating(e=[]){this[m].updating.push(e)}popUpdating(){return this[m].updating.pop()}updateWith(e){this.updating().push(e)}listBlock(){return this[m].list.current}associateDestroyable(e){var t=this[f].current;(0,i.associateDestroyableChild)(t,e)}tryUpdating(){return this[m].updating.current}updating(){return this[m].updating.current}elements(){return this.elementStack}scope(){return this[m].scope.current}dynamicScope(){return this[m].dynamicScope.current}pushChildScope(){this[m].scope.push(this.scope().child())}pushDynamicScope(){var e=this.dynamicScope().child() -return this[m].dynamicScope.push(e),e}pushRootScope(e,t){var r=h.sized(e,t) -return this[m].scope.push(r),r}pushScope(e){this[m].scope.push(e)}popScope(){this[m].scope.pop()}popDynamicScope(){this[m].dynamicScope.pop()}getOwner(){return this.scope().owner}getSelf(){return this.scope().getSelf()}referenceForSymbol(e){return this.scope().getSymbol(e)}execute(e){return this._execute(e)}_execute(e){var t -for(e&&e(this);!(t=this.next()).done;);return t.value}next(){var e,{env:t,elementStack:r}=this,n=this[p].nextStatement() -return null!==n?(this[p].evaluateOuter(n,this),e={done:!1,value:null}):(this.stack.reset(),e={done:!0,value:new zt(t,this.popUpdating(),r.popBlock(),this.destructor)}),e}bindDynamicScope(e){for(var t=this.dynamicScope(),r=e.length-1;r>=0;r--){var n=e[r] -t.set(n,this.stack.pop())}}}function Gt(e,t,r){return{pc:e,scope:t,dynamicScope:r,stack:[]}}function Yt(e){return(t,r,n)=>new Wt(t,r,n,e)}e.LowLevelVM=Wt,At=m,kt=f -class Qt{constructor(e){this.vm=e}next(){return this.vm.next()}sync(){return this.vm.execute()}}var Kt=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" -class Jt extends _{constructor(e,t,r){super(e,t),this.startingBlockDepth=r,this.candidate=null,this.injectedOmittedNode=!1,this.openBlockDepth=r-1}}class Xt extends ae{constructor(e,t,r){if(super(e,t,r),this.unmatchedAttributes=null,this.blockDepth=0,r)throw new Error("Rehydration with nextSibling not supported") -for(var n=this.currentCursor.element.firstChild;null!==n&&!Zt(n);)n=n.nextSibling -this.candidate=n -var i=tr(n) -if(0!==i){var a=i-1,s=this.dom.createComment(`%+b:${a}%`) -n.parentNode.insertBefore(s,this.candidate) -for(var o=n.nextSibling;null!==o&&(!er(o)||tr(o)!==i);)o=o.nextSibling -var u=this.dom.createComment(`%-b:${a}%`) -n.parentNode.insertBefore(u,o.nextSibling),this.candidate=s,this.startingBlockOffset=a}else this.startingBlockOffset=0}get currentCursor(){return this[ie].current}get candidate(){return this.currentCursor?this.currentCursor.candidate:null}set candidate(e){this.currentCursor.candidate=e}disableRehydration(e){var t=this.currentCursor -t.candidate=null,t.nextSibling=e}enableRehydration(e){var t=this.currentCursor -t.candidate=e,t.nextSibling=null}pushElement(e,t=null){var r=new Jt(e,t,this.blockDepth||0) -null!==this.candidate&&(r.candidate=e.firstChild,this.candidate=e.nextSibling),this[ie].push(r)}clearMismatch(e){var t=e,r=this.currentCursor -if(null!==r){var n=r.openBlockDepth -if(n>=r.startingBlockDepth)for(;t;){if(er(t))if(n>=rr(t,this.startingBlockOffset))break -t=this.remove(t)}else for(;null!==t;)t=this.remove(t) -this.disableRehydration(t)}}__openBlock(){var{currentCursor:e}=this -if(null!==e){var t=this.blockDepth -this.blockDepth++ -var{candidate:r}=e -if(null!==r){var{tagName:n}=e.element -Zt(r)&&rr(r,this.startingBlockOffset)===t?(this.candidate=this.remove(r),e.openBlockDepth=t):"TITLE"!==n&&"SCRIPT"!==n&&"STYLE"!==n&&this.clearMismatch(r)}}}__closeBlock(){var{currentCursor:e}=this -if(null!==e){var t=e.openBlockDepth -this.blockDepth-- -var{candidate:r}=e,n=!1 -if(null!==r)if(n=!0,er(r)&&rr(r,this.startingBlockOffset)===t){var i=this.remove(r) -this.candidate=i,e.openBlockDepth--}else this.clearMismatch(r),n=!1 -if(!1===n){var a=e.nextSibling -if(null!==a&&er(a)&&rr(a,this.startingBlockOffset)===this.blockDepth){var s=this.remove(a) -this.enableRehydration(s),e.openBlockDepth--}}}}__appendNode(e){var{candidate:t}=this -return t||super.__appendNode(e)}__appendHTML(e){var t=this.markerBounds() -if(t){var r=t.firstNode(),n=t.lastNode(),i=new w(this.element,r.nextSibling,n.previousSibling),a=this.remove(r) -return this.remove(n),null!==a&&ar(a)&&(this.candidate=this.remove(a),null!==this.candidate&&this.clearMismatch(this.candidate)),i}return super.__appendHTML(e)}remove(e){var t=e.parentNode,r=e.nextSibling -return t.removeChild(e),r}markerBounds(){var e=this.candidate -if(e&&ir(e)){for(var t=e,r=t.nextSibling;r&&!ir(r);)r=r.nextSibling -return new w(this.element,t,r)}return null}__appendText(e){var{candidate:t}=this -return t?3===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):function(e){return 8===e.nodeType&&"%|%"===e.nodeValue}(t)||ar(t)&&""===e?(this.candidate=this.remove(t),this.__appendText(e)):(this.clearMismatch(t),super.__appendText(e)):super.__appendText(e)}__appendComment(e){var t=this.candidate -return t&&8===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):(t&&this.clearMismatch(t),super.__appendComment(e))}__openElement(e){var t=this.candidate -if(t&&nr(t)&&function(e,t){if("http://www.w3.org/2000/svg"===e.namespaceURI)return e.tagName===t -return e.tagName===t.toUpperCase()}(t,e))return this.unmatchedAttributes=[].slice.call(t.attributes),t -if(t){if(nr(t)&&"TBODY"===t.tagName)return this.pushElement(t,null),this.currentCursor.injectedOmittedNode=!0,this.__openElement(e) -this.clearMismatch(t)}return super.__openElement(e)}__setAttribute(e,t,r){var n=this.unmatchedAttributes -if(n){var i=sr(n,e) -if(i)return i.value!==t&&(i.value=t),void n.splice(n.indexOf(i),1)}return super.__setAttribute(e,t,r)}__setProperty(e,t){var r=this.unmatchedAttributes -if(r){var n=sr(r,e) -if(n)return n.value!==t&&(n.value=t),void r.splice(r.indexOf(n),1)}return super.__setProperty(e,t)}__flushElement(e,t){var{unmatchedAttributes:r}=this -if(r){for(var n=0;nFe)){var r=(0,s.createCache)((()=>t(e))) -this.argsCache=r}get named(){return or(this).named||Ie}get positional(){return or(this).positional||De}}function lr(e){return(0,o.setInternalHelperManager)(e,{})}var cr=(0,t.buildUntouchableThis)("`fn` helper") -e.fn=lr((({positional:e})=>{var t=e[0] -return(0,r.createComputeRef)((()=>(...n)=>{var[i,...a]=(0,c.reifyPositional)(e) -if((0,r.isInvokableRef)(t)){var s=a.length>0?a[0]:n[0] -return(0,r.updateRef)(t,s)}return i.call(cr,...a,...n)}),null,"fn")})) -e.hash=lr((({named:e})=>{var t=(0,r.createComputeRef)((()=>{var t=(0,c.reifyNamed)(e) -return t}),null,"hash"),n=new Map -for(var i in e)n.set(i,e[i]) -return t.children=n,t})),e.array=lr((({positional:e})=>(0,r.createComputeRef)((()=>(0,c.reifyPositional)(e)),null,"array"))),e.get=lr((({positional:e})=>{var i,a,s=null!==(i=e[0])&&void 0!==i?i:r.UNDEFINED_REFERENCE,o=null!==(a=e[1])&&void 0!==a?a:r.UNDEFINED_REFERENCE -return(0,r.createComputeRef)((()=>{var e=(0,r.valueForRef)(s) -if((0,t.isDict)(e))return(0,n.getPath)(e,String((0,r.valueForRef)(o)))}),(e=>{var i=(0,r.valueForRef)(s) -if((0,t.isDict)(i))return(0,n.setPath)(i,String((0,r.valueForRef)(o)),e)}),"get")})) -var dr=e=>(e=>null==e||"function"!=typeof e.toString)(e)?"":String(e),hr=(e.concat=lr((({positional:e})=>(0,r.createComputeRef)((()=>(0,c.reifyPositional)(e).map(dr).join("")),null,"concat"))),(0,t.buildUntouchableThis)("`on` modifier")),pr=(()=>{try{var e,t=document.createElement("div"),r=0 -return t.addEventListener("click",(()=>r++),{once:!0}),"function"==typeof Event?e=new Event("click"):(e=document.createEvent("Event")).initEvent("click",!0,!0),t.dispatchEvent(e),t.dispatchEvent(e),1===r}catch(n){return!1}})() -class fr{constructor(e,t){this.tag=(0,s.createUpdatableTag)(),this.shouldUpdate=!0,this.element=e,this.args=t}updateFromArgs(){var e,{args:t}=this,{once:n,passive:i,capture:a}=(0,c.reifyNamed)(t.named) -n!==this.once&&(this.once=n,this.shouldUpdate=!0),i!==this.passive&&(this.passive=i,this.shouldUpdate=!0),a!==this.capture&&(this.capture=a,this.shouldUpdate=!0),n||i||a?e=this.options={once:n,passive:i,capture:a}:this.options=void 0 -var s=(0,r.valueForRef)(t.positional[0]) -s!==this.eventName&&(this.eventName=s,this.shouldUpdate=!0) -var o=t.positional[1],u=(0,r.valueForRef)(o) -u!==this.userProvidedCallback&&(this.userProvidedCallback=u,this.shouldUpdate=!0) -var l=!1===pr&&n||!1 -if(this.shouldUpdate)if(l)var d=this.callback=function(t){return!pr&&n&&vr(this,s,d,e),u.call(hr,t)} -else this.callback=u}}var mr=0,gr=0 -function vr(e,t,r,n){gr++,pr?e.removeEventListener(t,r,n):void 0!==n&&n.capture?e.removeEventListener(t,r,!0):e.removeEventListener(t,r)}function br(e,t,r,n){mr++,pr?e.addEventListener(t,r,n):void 0!==n&&n.capture?e.addEventListener(t,r,!0):e.addEventListener(t,r)}e.on=(0,o.setInternalModifierManager)(new class{constructor(){this.SUPPORTS_EVENT_OPTIONS=pr}getDebugName(){return"on"}get counters(){return{adds:mr,removes:gr}}create(e,t,r,n){return new fr(t,n)}getTag(e){return null===e?null:e.tag}install(e){if(null!==e){e.updateFromArgs() -var{element:t,eventName:r,callback:n,options:a}=e -br(t,r,n,a),(0,i.registerDestructor)(e,(()=>vr(t,r,n,a))),e.shouldUpdate=!1}}update(e){if(null!==e){var{element:t,eventName:r,callback:n,options:i}=e -e.updateFromArgs(),e.shouldUpdate&&(vr(t,r,n,i),br(e.element,e.eventName,e.callback,e.options),e.shouldUpdate=!1)}}getDestroyable(e){return e}},{})})),e("@glimmer/tracking/index",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"tracked",{enumerable:!0,get:function(){return t.tracked}})})),e("@glimmer/tracking/primitives/cache",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return t.createCache}}),Object.defineProperty(e,"getValue",{enumerable:!0,get:function(){return t.getValue}}),Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return t.isConst}})})),e("@glimmer/util",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._WeakSet=e.Stack=e.SERIALIZATION_FIRST_NODE_STRING=e.LOGGER=e.LOCAL_LOGGER=e.HAS_NATIVE_SYMBOL=e.HAS_NATIVE_PROXY=e.EMPTY_STRING_ARRAY=e.EMPTY_NUMBER_ARRAY=e.EMPTY_ARRAY=void 0,e.assert=function(e,t){if(!e)throw new Error(t||"assertion failure")},e.assertNever=function(e,t="unexpected unreachable branch"){throw O.log("unreachable",e),O.log(`${t} :: ${JSON.stringify(e)} (${e})`),new Error("code reached unreachable")},e.assertPresent=function(e,t="unexpected empty list"){if(!_(e))throw new Error(t)},e.beginTestSteps=e.assign=void 0,e.buildUntouchableThis=function(e){var t=null -return t},e.castToBrowser=function(e,t){if(null==e)return null -if(void 0===typeof document)throw new Error("Attempted to cast to a browser node in a non-browser context") -if(v(e))return e -if(e.ownerDocument!==document)throw new Error("Attempted to cast to a browser node with a node that was not created from this document") -return b(e,t)},e.castToSimple=function(e){return v(e)||function(e){e.nodeType}(e),e},e.checkNode=b,e.clearElement=function(e){var t=e.firstChild -for(;t;){var r=t.nextSibling -e.removeChild(t),t=r}},e.constants=function(...e){return[!1,!0,null,void 0,...e]},e.debugToString=void 0,e.decodeHandle=function(e){return e},e.decodeImmediate=m,e.decodeNegative=d,e.decodePositive=p,e.deprecate=function(e){w.warn(`DEPRECATION: ${e}`)},e.dict=function(){return Object.create(null)},e.emptyArray=r,e.encodeHandle=function(e){return e},e.encodeImmediate=f,e.encodeNegative=c,e.encodePositive=h,e.endTestSteps=void 0,e.enumerableSymbol=l,e.exhausted=function(e){throw new Error(`Exhausted ${e}`)},e.expect=function(e,t){if(null==e)throw new Error(t) -return e},e.extractHandle=function(e){return"number"==typeof e?e:e.handle},e.fillNulls=function(e){for(var t=new Array(e),r=0;r=0},e.isNonPrimitiveHandle=function(e){return e>3},e.isObject=function(e){return"function"==typeof e||"object"==typeof e&&null!==e},e.isOkHandle=function(e){return"number"==typeof e},e.isPresent=_,e.isSerializationFirstNode=function(e){return e.nodeValue===i},e.isSmallInt=function(e){return e%1==0&&e<=536870911&&e>=-536870912},e.keys=function(e){return Object.keys(e)},e.logStep=void 0,e.mapPresent=function(e,t){if(null===e)return null -var r=[] -for(var n of e)r.push(t(n)) -return r},e.strip=function(e,...t){for(var r="",n=0;ne -e.symbol=o?Symbol:l -function c(e){return-536870913&e}function d(e){return 536870912|e}function h(e){return~e}function p(e){return~e}function f(e){return(e|=0)<0?c(e):h(e)}function m(e){return(e|=0)>-536870913?p(e):d(e)}[1,-1].forEach((e=>m(f(e)))) -var g -e._WeakSet="function"==typeof WeakSet?WeakSet:class{constructor(){this._map=new WeakMap}add(e){return this._map.set(e,!0),this}delete(e){return this._map.delete(e)}has(e){return this._map.has(e)}} -function v(e){return 9===e.nodeType}function b(e,t){var r=!1 -if(null!==e)if("string"==typeof t)r=y(e,t) -else{if(!Array.isArray(t))throw u() -r=t.some((t=>y(e,t)))}if(r)return e -throw function(e,t){return new Error(`cannot cast a ${e} into ${t}`)}(`SimpleElement(${e})`,t)}function y(e,t){switch(t){case"NODE":return!0 -case"HTML":return e instanceof HTMLElement -case"SVG":return e instanceof SVGElement -case"ELEMENT":return e instanceof Element -default:if(t.toUpperCase()===t)throw new Error("BUG: this code is missing handling for a generic node type") -return e instanceof Element&&e.tagName.toLowerCase()===t}}function _(e){return e.length>0}e.debugToString=g -var w=e.LOCAL_LOGGER=console,O=e.LOGGER=console})),e("@glimmer/validator",["exports","@glimmer/global-context"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.VolatileTag=e.VOLATILE_TAG=e.VOLATILE=e.INITIAL=e.CurrentTag=e.CURRENT_TAG=e.CONSTANT_TAG=e.CONSTANT=e.COMPUTE=e.ALLOW_CYCLES=void 0,e.beginTrackFrame=S,e.beginTrackingTransaction=void 0,e.beginUntrackFrame=j,e.bump=function(){o++},e.combine=void 0,e.consumeTag=I,e.createCache=function(e,t){0 -var r={[D]:e,[F]:void 0,[L]:void 0,[B]:-1} -0 -return r},e.createTag=function(){return new h(0)},e.createUpdatableTag=m,e.dirtyTag=void 0,e.dirtyTagFor=T,e.endTrackFrame=M,e.endTrackingTransaction=void 0,e.endUntrackFrame=N,e.getValue=function(e){U(e,"getValue") -var t=e[D],r=e[L],n=e[B] -if(void 0!==r&&c(r,n))I(r) -else{S() -try{e[F]=t()}finally{r=M(),e[L]=r,e[B]=l(r),I(r)}}return e[F]},e.isConst=function(e){U(e,"isConst") -var t=e[L] -return function(e,t){0}(),v(t)},e.isConstTag=v,e.isTracking=function(){return null!==A},e.logTrackingStack=void 0,e.resetTracking=function(){for(;k.length>0;)k.pop() -A=null,!1},e.setTrackingTransactionEnv=e.runInTrackingTransaction=void 0,e.tagFor=C,e.tagMetaFor=P,e.track=function(e,t){var r -S(t) -try{e()}finally{r=M()}return r},e.trackedData=function(e,t){var r=new WeakMap,n="function"==typeof t -return{getter:function(i){var a -return I(C(i,e)),n&&!r.has(i)?(a=t.call(i),r.set(i,a)):a=r.get(i),a},setter:function(t,n){T(t,e),r.set(t,n)}}},e.untrack=function(e){j() -try{return e()}finally{N()}},e.updateTag=void 0,e.validateTag=c -e.valueForTag=l -var r="undefined"!=typeof Symbol?Symbol:e=>`__${e}${Math.floor(Math.random()*Date.now())}__`,n="undefined"!=typeof Symbol?Symbol.for:e=>`__GLIMMER_VALIDATOR_SYMBOL_FOR_${e}` -function i(e){if(null==e)throw new Error("Expected value to be present") -return e}e.CONSTANT=0 -var a=e.INITIAL=1,s=e.VOLATILE=NaN,o=a -var u=e.COMPUTE=r("TAG_COMPUTE") -function l(e){return e[u]()}function c(e,t){return t>=e[u]()}var d=r("TAG_TYPE") -class h{constructor(e){this.revision=a,this.lastChecked=a,this.lastValue=a,this.isUpdating=!1,this.subtag=null,this.subtagBufferCache=null,this[d]=e}static combine(e){switch(e.length){case 0:return g -case 1:return e[0] -default:var t=new h(2) -return t.subtag=e,t}}[u](){var{lastChecked:e}=this -if(!0===this.isUpdating)this.lastChecked=++o -else if(e!==o){this.isUpdating=!0,this.lastChecked=o -try{var{subtag:t,revision:r}=this -if(null!==t)if(Array.isArray(t))for(var n=0;nt.push(e))),_(t)}}var A=null,k=[] -function S(e){k.push(A),A=new x}function M(){var e=A -return A=k.pop()||null,i(e).combine()}function j(){k.push(A),A=null}function N(){A=k.pop()||null}function I(e){null!==A&&A.add(e)}var D=r("FN"),F=r("LAST_VALUE"),L=r("TAG"),B=r("SNAPSHOT") -r("DEBUG_LABEL") -function U(e,t){0}var $=n("GLIMMER_VALIDATOR_REGISTRATION"),V=function(){if("undefined"!=typeof globalThis)return globalThis -if("undefined"!=typeof self)return self -if("undefined"!=typeof window)return window -if("undefined"!=typeof global)return global -throw new Error("unable to locate global object")}() -if(!0===V[$])throw new Error("The `@glimmer/validator` library has been included twice in this application. It could be different versions of the package, or the same version included twice by mistake. `@glimmer/validator` depends on having a single copy of the package in use at any time in an application, even if they are the same version. You must dedupe your build to remove the duplicate packages in order to prevent this error.") -V[$]=!0})),e("@glimmer/vm",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.TemporaryRegister=e.SavedRegister=e.$v0=e.$t1=e.$t0=e.$sp=e.$s1=e.$s0=e.$ra=e.$pc=e.$fp=void 0,e.isLowLevelRegister=function(e){return e<=n},e.isMachineOp=function(e){return e>=0&&e<=15},e.isOp=function(e){return e>=16} -e.$pc=0,e.$ra=1,e.$fp=2 -var t,r,n=e.$sp=3 -e.$s0=4,e.$s1=5,e.$t0=6,e.$t1=7,e.$v0=8;(function(e){e[e.s0=4]="s0",e[e.s1=5]="s1"})(t||(e.SavedRegister=t={})),function(e){e[e.t0=6]="t0",e[e.t1=7]="t1"}(r||(e.TemporaryRegister=r={}))})),e("@glimmer/wire-format",["exports"],(function(e){"use strict" -function t(e){return function(t){return Array.isArray(t)&&t[0]===e}}Object.defineProperty(e,"__esModule",{value:!0}),e.getStringFromValue=function(e){return e},e.is=t,e.isArgument=function(e){return 21===e[0]||20===e[0]},e.isAttribute=function(e){return 14===e[0]||15===e[0]||22===e[0]||16===e[0]||24===e[0]||23===e[0]||17===e[0]||4===e[0]},e.isGet=e.isFlushElement=void 0,e.isHelper=function(e){return Array.isArray(e)&&28===e[0]},e.isStringLiteral=function(e){return"string"==typeof e} -e.isFlushElement=t(12) -e.isGet=t(30)})),e("@simple-dom/document",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var t=[] -function r(e,t,r){for(var n=0;n{} -function n(e){if("function"==typeof Promise){var r=Promise.resolve() -return()=>r.then(e)}if("function"==typeof MutationObserver){var n=0,i=new MutationObserver(e),a=document.createTextNode("") -return i.observe(a,{characterData:!0}),()=>(n=++n%2,a.data=""+n,n)}return()=>t(e,0)}function i(e){var t=r -return{setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),now:()=>Date.now(),next:n(e),clearNext:t}}var a=/\d+/ -function s(e){var t=typeof e -return"number"===t&&e==e||"string"===t&&a.test(e)}function o(e){return e.onError||e.onErrorTarget&&e.onErrorTarget[e.onErrorMethod]}function u(e,t,r){for(var n=-1,i=0,a=r.length;i=t[r=i+(n=(a-i)/6)-n%6]?i=r+6:a=r -return e>=t[i]?i+6:i}class h{constructor(e,t={},r={}){this._queueBeingFlushed=[],this.targetQueues=new Map,this.index=0,this._queue=[],this.name=e,this.options=t,this.globalOptions=r}stackFor(e){if(e0){var s=o(this.globalOptions) -r=s?this.invokeWithOnError:this.invoke -for(var u=this.index;u0&&this.flush(!0)}hasWork(){return this._queueBeingFlushed.length>0||this._queue.length>0}cancel({target:e,method:t}){var r=this._queue,n=this.targetQueues.get(e) -void 0!==n&&n.delete(t) -var i=u(e,t,r) -return i>-1?(r.splice(i,4),!0):(i=u(e,t,r=this._queueBeingFlushed))>-1&&(r[i+1]=null,!0)}push(e,t,r,n){return this._queue.push(e,t,r,n),{queue:this,target:e,method:t}}pushUnique(e,t,r,n){var i=this.targetQueues.get(e) -void 0===i&&(i=new Map,this.targetQueues.set(e,i)) -var a=i.get(t) -if(void 0===a){var s=this._queue.push(e,t,r,n)-4 -i.set(t,s)}else{var o=this._queue -o[a+2]=r,o[a+3]=n}return{queue:this,target:e,method:t}}_getDebugInfo(e){if(e)return c(this._queue,4)}invoke(e,t,r){void 0===r?t.call(e):t.apply(e,r)}invokeWithOnError(e,t,r,n,i){try{void 0===r?t.call(e):t.apply(e,r)}catch(a){n(a,i)}}}class p{constructor(e=[],t){this.queues={},this.queueNameIndex=0,this.queueNames=e,e.reduce((function(e,r){return e[r]=new h(r,t[r],t),e}),this.queues)}schedule(e,t,r,n,i,a){var s=this.queues[e] -if(void 0===s)throw new Error(`You attempted to schedule an action in a queue (${e}) that doesn't exist`) -if(null==r)throw new Error(`You attempted to schedule an action in a queue (${e}) for a method that doesn't exist`) -return this.queueNameIndex=0,i?s.pushUnique(t,r,n,a):s.push(t,r,n,a)}flush(e=!1){for(var t,r,n=this.queueNames.length;this.queueNameIndexi){var u=n-i -e=new Array(u) -for(var l=0;l{F++,!1!==this._autorun&&(this._autorun=!1,this._autorunStack=null,this._end(!0))} -var r=this.options._buildPlatform||i -this._platform=r(this._boundAutorunEnd)}get counters(){return{begin:_,end:w,events:{begin:O,end:0},autoruns:{created:D,completed:F},run:E,join:R,defer:T,schedule:P,scheduleIterable:C,deferOnce:x,scheduleOnce:A,setTimeout:k,later:S,throttle:M,debounce:j,cancelTimers:N,cancel:I,loops:{total:L,nested:B}}}get defaultQueue(){return this._defaultQueue}begin(){_++ -var e,t=this.options,r=this.currentInstance -return!1!==this._autorun?(e=r,this._cancelAutorun()):(null!==r&&(B++,this.instanceStack.push(r)),L++,e=this.currentInstance=new p(this.queueNames,t),O++,this._trigger("begin",e,r)),this._onBegin(e,r),e}end(){w++,this._end(!1)}on(e,t){if("function"!=typeof t)throw new TypeError("Callback must be a function") -var r=this._eventCallbacks[e] -if(void 0===r)throw new TypeError(`Cannot on() event ${e} because it does not exist`) -r.push(t)}off(e,t){var r=this._eventCallbacks[e] -if(!e||void 0===r)throw new TypeError(`Cannot off() event ${e} because it does not exist`) -var n=!1 -if(t)for(var i=0;i0&&s(r[i-1])&&(n=parseInt(r.pop(),10)),[e,t,r,n]}(...arguments) -return this._later(e,t,r,n)}throttle(){M++ -var e,[t,r,n,i,a=!0]=b(...arguments),s=l(t,r,this._timers) -if(-1===s)e=this._later(t,r,a?g:n,i),a&&this._join(t,r,n) -else{e=this._timers[s+1] -var o=s+4 -this._timers[o]!==g&&(this._timers[o]=n)}return e}debounce(){j++ -var e,[t,r,n,i,a=!1]=b(...arguments),s=this._timers,o=l(t,r,s) -if(-1===o)e=this._later(t,r,a?g:n,i),a&&this._join(t,r,n) -else{var u=this._platform.now()+i,c=o+4 -s[c]===g&&(n=g),e=s[o+1] -var h=d(u,s) -if(o+6===h)s[o]=u,s[c]=n -else{var p=this._timers[o+5] -this._timers.splice(h,0,u,e,t,r,n,p),this._timers.splice(o,6)}0===o&&this._reinstallTimerTimeout()}return e}cancelTimers(){N++,this._clearTimerTimeout(),this._timers=[],this._cancelAutorun()}hasTimers(){return this._timers.length>0||this._autorun}cancel(e){if(I++,null==e)return!1 -var t=typeof e -return"number"===t?this._cancelLaterTimer(e):!("object"!==t||!e.queue||!e.method)&&e.queue.cancel(e)}ensureInstance(){this._ensureInstance()}getDebugInfo(){if(this.DEBUG)return{autorun:this._autorunStack,counters:this.counters,timers:c(this._timers,6,2),instanceStack:[this.currentInstance,...this.instanceStack].map((e=>e&&e._getDebugInfo(this.DEBUG)))}}_end(e){var t=this.currentInstance,r=null -if(null===t)throw new Error("end called without begin") -var n,i=!1 -try{n=t.flush(e)}finally{if(!i)if(i=!0,1===n){var a=this.queueNames[t.queueNameIndex] -this._scheduleAutorun(a)}else this.currentInstance=null,this.instanceStack.length>0&&(r=this.instanceStack.pop(),this.currentInstance=r),this._trigger("end",t,r),this._onEnd(t,r)}}_join(e,t,r){return null===this.currentInstance?this._run(e,t,r):void 0===e&&void 0===r?t():t.apply(e,r)}_run(e,t,r){var n=o(this.options) -if(this.begin(),n)try{return t.apply(e,r)}catch(i){n(i)}finally{this.end()}else try{return t.apply(e,r)}finally{this.end()}}_cancelAutorun(){this._autorun&&(this._platform.clearNext(),this._autorun=!1,this._autorunStack=null)}_later(e,t,r,n){var i=this.DEBUG?new Error:void 0,a=this._platform.now()+n,s=y++ -if(0===this._timers.length)this._timers.push(a,s,e,t,r,i),this._installTimerTimeout() -else{var o=d(a,this._timers) -this._timers.splice(o,0,a,s,e,t,r,i),this._reinstallTimerTimeout()}return s}_cancelLaterTimer(e){for(var t=1;t0&&(this.begin(),this._scheduleExpiredTimers(),this.end())}_scheduleExpiredTimers(){for(var e=this._timers,t=0,r=e.length,n=this._defaultQueue,i=this._platform.now();ti)break -var a=e[t+4] -if(a!==g){var s=e[t+2],o=e[t+3],u=e[t+5] -this.currentInstance.schedule(n,s,o,a,!1,u)}}e.splice(0,t),this._installTimerTimeout()}_reinstallTimerTimeout(){this._clearTimerTimeout(),this._installTimerTimeout()}_clearTimerTimeout(){null!==this._timerTimeoutId&&(this._platform.clearTimeout(this._timerTimeoutId),this._timerTimeoutId=null)}_installTimerTimeout(){if(0!==this._timers.length){var e=this._timers[0],t=this._platform.now(),r=Math.max(0,e-t) -this._timerTimeoutId=this._platform.setTimeout(this._boundRunExpiredTimers,r)}}_ensureInstance(){var e=this.currentInstance -return null===e&&(this._autorunStack=this.DEBUG?new Error:void 0,e=this.begin(),this._scheduleAutorun(this.queueNames[0])),e}_scheduleAutorun(e){D++ -var t=this._platform.next,r=this.options.flush -r?r(e,t):t(),this._autorun=!0}}U.Queue=h,U.buildPlatform=i,U.buildNext=n -e.default=U})),e("dag-map",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var t=function(){function e(){this._vertices=new r}return e.prototype.add=function(e,t,r,n){if(!e)throw new Error("argument `key` is required") -var i=this._vertices,a=i.add(e) -if(a.val=t,r)if("string"==typeof r)i.addEdge(a,i.add(r)) -else for(var s=0;s0){var n="cycle detected: "+t -throw this.each(this.path,(function(e){n+=" <- "+e})),new Error(n)}}},e.prototype.reset=function(){this.stack.length=0,this.path.length=0,this.result.length=0 -for(var e=0,t=this.length;e=0){var o=this[s] -if(o.flag)continue -if(o.flag=!0,i.push(s),t===o.key)break -n.push(~s),this.pushIncoming(o)}else i.pop(),a.push(~s)}},e.prototype.pushIncoming=function(e){for(var t=this.stack,r=e.length-1;r>=0;r--){var n=e[r] -this[n].flag||t.push(n)}},e.prototype.each=function(e,t){for(var r=0,n=e.length;r=e.length?{done:!0}:{done:!1,value:e[t++]}} -throw new TypeError("Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(t=e[Symbol.iterator]()).next.bind(t)},e.createSuper=function(e){return function(){var t,i=r(e) -if(n){var a=r(this).constructor -t=Reflect.construct(i,arguments,a)}else t=i.apply(this,arguments) -return o(this,t)}},e.inheritsLoose=function(e,r){0 -e.prototype=Object.create(null===r?null:r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),null!==r&&t(e,r)},e.objectDestructuringEmpty=function(e){0},e.possibleConstructorReturn=o,e.taggedTemplateLiteralLoose=function(e,t){t||(t=e.slice(0)) -return e.raw=t,e},e.wrapNativeSuper=function(e){if(i.has(e))return i.get(e) -function r(){}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),i.set(e,r),t(r,e)} -var t=Object.setPrototypeOf,r=Object.getPrototypeOf,n="object"==typeof Reflect&&"function"==typeof Reflect.construct,i=new Map -function a(e,t){for(var r=0;re.length)&&(t=e.length) -for(var r=new Array(t),n=0;ny.htmlSafe}),Object.defineProperty(F.String,"isHTMLSafe",{enumerable:!0,configurable:!0,get:()=>y.isHTMLSafe}),Object.defineProperty(F,"TEMPLATES",{get:y.getTemplates,set:y.setTemplates,configurable:!1,enumerable:!1}),F.VERSION=_.default,F.ViewUtils={isSimpleClick:w.isSimpleClick,getElementView:w.getElementView,getViewElement:w.getViewElement,getViewBounds:w.getViewBounds,getViewClientRects:w.getViewClientRects,getViewBoundingClientRect:w.getViewBoundingClientRect,getRootViews:w.getRootViews,getChildViews:w.getChildViews,isSerializationFirstNode:y.isSerializationFirstNode},F.ComponentLookup=w.ComponentLookup,F.EventDispatcher=w.EventDispatcher,F.Location=O.Location,F.AutoLocation=O.AutoLocation,F.HashLocation=O.HashLocation,F.HistoryLocation=O.HistoryLocation,F.NoneLocation=O.NoneLocation,F.controllerFor=O.controllerFor,F.generateControllerFactory=O.generateControllerFactory,F.generateController=O.generateController,F.RouterDSL=O.RouterDSL,F.Router=O.Router,F.Route=O.Route,(0,x.runLoadHooks)("Ember.Application",x.default),F.DataAdapter=E.DataAdapter,F.ContainerDebugAdapter=E.ContainerDebugAdapter -var L={template:y.template,Utils:{escapeExpression:y.escapeExpression}},B={template:y.template} -function U(e){Object.defineProperty(F,e,{configurable:!0,enumerable:!0,get(){if((0,r.has)("ember-template-compiler")){var t=(0,r.default)("ember-template-compiler") -B.precompile=L.precompile=t.precompile,B.compile=L.compile=t.compile,Object.defineProperty(F,"HTMLBars",{configurable:!0,writable:!0,enumerable:!0,value:B}),Object.defineProperty(F,"Handlebars",{configurable:!0,writable:!0,enumerable:!0,value:L})}return"Handlebars"===e?L:B}})}function $(e){Object.defineProperty(F,e,{configurable:!0,enumerable:!0,get(){if((0,r.has)("ember-testing")){var t=(0,r.default)("ember-testing"),{Test:n,Adapter:i,QUnitAdapter:a,setupForTesting:s}=t -return n.Adapter=i,n.QUnitAdapter=a,Object.defineProperty(F,"Test",{configurable:!0,writable:!0,enumerable:!0,value:n}),Object.defineProperty(F,"setupForTesting",{configurable:!0,writable:!0,enumerable:!0,value:s}),"Test"===e?n:s}}})}U("HTMLBars"),U("Handlebars"),$("Test"),$("setupForTesting"),(0,x.runLoadHooks)("Ember"),F.__loader={require:r.default,define:e,registry:void 0!==requirejs?requirejs.entries:r.default.entries} -t.default=F})),e("ember/version",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default="4.0.1"})),e("route-recognizer",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var t=Object.create -function r(){var e=t(null) -return e.__=void 0,delete e.__,e}var n=function(e,t,r){this.path=e,this.matcher=t,this.delegate=r} -n.prototype.to=function(e,t){var r=this.delegate -if(r&&r.willAddRoute&&(e=r.willAddRoute(this.matcher.target,e)),this.matcher.add(this.path,e),t){if(0===t.length)throw new Error("You must have an argument in the function passed to `to`") -this.matcher.addChild(this.path,e,t,this.delegate)}} -var i=function(e){this.routes=r(),this.children=r(),this.target=e} -function a(e,t,r){return function(i,s){var o=e+i -if(!s)return new n(o,t,r) -s(a(o,t,r))}}function s(e,t,r){for(var n=0,i=0;i0&&47===t.charCodeAt(0)&&(t=t.substr(1)) -for(var n=t.split("/"),i=void 0,a=void 0,s=0;s2&&"[]"===a.slice(s-2)&&(o=!0,r[a=a.slice(0,s-2)]||(r[a]=[])),u=i[1]?x(i[1]):""),o?r[a].push(u):r[a]=u}return r},A.prototype.recognize=function(e){var t,r=[this.rootState],n={},i=!1,a=e.indexOf("#");-1!==a&&(e=e.substr(0,a)) -var s=e.indexOf("?") -if(-1!==s){var o=e.substr(s+1,e.length) -e=e.substr(0,s),n=this.parseQueryString(o)}"/"!==e.charAt(0)&&(e="/"+e) -var l=e -A.ENCODE_AND_DECODE_PATH_SEGMENTS?e=u(e):(e=decodeURI(e),l=decodeURI(l)) -var c=e.length -c>1&&"/"===e.charAt(c-1)&&(e=e.substr(0,c-1),l=l.substr(0,l.length-1),i=!0) -for(var d=0;d0){var n=e[r-1] -if(function(e){return e&&s.call(e,"queryParams")}(n))return t=n.queryParams,[a.call(e,0,r-1),t]}return[e,null]}function l(e){for(var t in e){var r=e[t] -if("number"==typeof r)e[t]=""+r -else if(Array.isArray(r))for(var n=0,i=r.length;n{throw this.router.transitionDidError(e,this)}),m("Handle Abort"))}else this.promise=t.Promise.resolve(this[g]),this[v]={}}then(e,t,r){return this.promise.then(e,t,r)}catch(e,t){return this.promise.catch(e,t)}finally(e,t){return this.promise.finally(e,t)}abort(){this.rollback() -var e=new y(this.router,void 0,void 0,void 0) -return e.to=this.from,e.from=this.from,e.isAborted=!0,this.router.routeWillChange(e),this.router.routeDidChange(e),this}rollback(){this.isAborted||(c(this.router,this.sequence,this.targetName+": transition was aborted"),void 0!==this.intent&&null!==this.intent&&(this.intent.preTransitionState=this.router.state),this.isAborted=!0,this.isActive=!1,this.router.activeTransition=void 0)}redirect(e){this.rollback(),this.router.routeWillChange(e)}retry(){this.abort() -var e=this.router.transitionByIntent(this.intent,!1) -return null!==this.urlMethod&&e.method(this.urlMethod),e}method(e){return this.urlMethod=e,this}send(e=!1,t,r,n,i){this.trigger(e,t,r,n,i)}trigger(e=!1,t,...r){"string"==typeof e&&(t=e,e=!1),this.router.triggerEvent(this[g].routeInfos.slice(0,this.resolveIndex+1),e,t,r)}followRedirects(){var e=this.router -return this.promise.catch((function(r){return e.activeTransition?e.activeTransition.followRedirects():t.Promise.reject(r)}))}toString(){return"Transition (sequence "+this.sequence+")"}log(e){c(this.router,this.sequence,e)}}function _(e){return c(e.router,e.sequence,"detected abort."),n()}function w(e){return"object"==typeof e&&e instanceof y&&e.isTransition}e.InternalTransition=y -var O=new WeakMap -function E(e,t={},r=!1){return e.map(((n,i)=>{var{name:a,params:s,paramNames:o,context:u,route:l}=n -if(O.has(n)&&r){var c=O.get(n) -c=function(e,t){var r={get metadata(){return T(e)}} -if(!Object.isExtensible(t)||t.hasOwnProperty("metadata"))return Object.freeze(Object.assign({},t,r)) -return Object.assign(t,r)}(l,c) -var d=R(c,u) -return O.set(n,d),d}var h={find(t,r){var n,i=[] -3===t.length&&(i=e.map((e=>O.get(e)))) -for(var a=0;e.length>a;a++)if(n=O.get(e[a]),t.call(r,n,a,i))return n},get name(){return a},get paramNames(){return o},get metadata(){return T(n.route)},get parent(){var t=e[i-1] -return void 0===t?null:O.get(t)},get child(){var t=e[i+1] -return void 0===t?null:O.get(t)},get localName(){var e=this.name.split(".") -return e[e.length-1]},get params(){return s},get queryParams(){return t}} -return r&&(h=R(h,u)),O.set(n,h),h}))}function R(e,t){var r={get attributes(){return t}} -return!Object.isExtensible(e)||e.hasOwnProperty("attributes")?Object.freeze(Object.assign({},e,r)):Object.assign(e,r)}function T(e){return null!=e&&void 0!==e.buildRouteInfoMetadata?e.buildRouteInfoMetadata():null}class P{constructor(e,t,r,n){this._routePromise=void 0,this._route=null,this.params={},this.isResolved=!1,this.name=t,this.paramNames=r,this.router=e,n&&this._processRoute(n)}getModel(e){return t.Promise.resolve(this.context)}serialize(e){return this.params||{}}resolve(e){return t.Promise.resolve(this.routePromise).then((t=>(i(e),t))).then((()=>this.runBeforeModelHook(e))).then((()=>i(e))).then((()=>this.getModel(e))).then((t=>(i(e),t))).then((t=>this.runAfterModelHook(e,t))).then((t=>this.becomeResolved(e,t)))}becomeResolved(e,t){var r,n=this.serialize(t) -e&&(this.stashResolvedModel(e,t),e[v]=e[v]||{},e[v][this.name]=n) -var i=t===this.context -!("context"in this)&&i||(r=t) -var a=O.get(this),s=new C(this.router,this.name,this.paramNames,n,this.route,r) -return void 0!==a&&O.set(s,a),s}shouldSupersede(e){if(!e)return!0 -var t=e.context===this.context -return e.name!==this.name||"context"in this&&!t||this.hasOwnProperty("params")&&!function(e,t){if(!e!=!t)return!1 -if(!e)return!0 -for(var r in e)if(e.hasOwnProperty(r)&&e[r]!==t[r])return!1 -return!0}(this.params,e.params)}get route(){return null!==this._route?this._route:this.fetchRoute()}set route(e){this._route=e}get routePromise(){return this._routePromise||this.fetchRoute(),this._routePromise}set routePromise(e){this._routePromise=e}log(e,t){e.log&&e.log(this.name+": "+t)}updateRoute(e){return e._internalName=this.name,this.route=e}runBeforeModelHook(e){var r -return e.trigger&&e.trigger(!0,"willResolveModel",e,this.route),this.route&&void 0!==this.route.beforeModel&&(r=this.route.beforeModel(e)),w(r)&&(r=null),t.Promise.resolve(r)}runAfterModelHook(e,r){var n,i,a=this.name -return this.stashResolvedModel(e,r),void 0!==this.route&&void 0!==this.route.afterModel&&(n=this.route.afterModel(r,e)),n=w(i=n)?null:i,t.Promise.resolve(n).then((()=>e.resolvedModels[a]))}stashResolvedModel(e,t){e.resolvedModels=e.resolvedModels||{},e.resolvedModels[this.name]=t}fetchRoute(){var e=this.router.getRoute(this.name) -return this._processRoute(e)}_processRoute(e){return this.routePromise=t.Promise.resolve(e),null!==(r=e)&&"object"==typeof r&&"function"==typeof r.then?(this.routePromise=this.routePromise.then((e=>this.updateRoute(e))),this.route=void 0):e?this.updateRoute(e):void 0 -var r}}e.InternalRouteInfo=P -class C extends P{constructor(e,t,r,n,i,a){super(e,t,r,i),this.params=n,this.isResolved=!0,this.context=a}resolve(e){return e&&e.resolvedModels&&(e.resolvedModels[this.name]=this.context),t.Promise.resolve(this)}}class x extends P{constructor(e,t,r,n,i){super(e,t,r,i),this.params={},this.params=n}getModel(e){var r=this.params -e&&e[b]&&(o(r={},this.params),r.queryParams=e[b]) -var n,i=this.route -return i.deserialize?n=i.deserialize(r,e):i.model&&(n=i.model(r,e)),n&&w(n)&&(n=void 0),t.Promise.resolve(n)}}class A extends P{constructor(e,t,r,n){super(e,t,r),this.context=n,this.serializer=this.router.getSerializer(t)}getModel(e){return void 0!==this.router.log&&this.router.log(this.name+": resolving provided model"),super.getModel(e)}serialize(e){var{paramNames:t,context:r}=this -e||(e=r) -var n={} -if(d(e))return n[t[0]]=e,n -if(this.serializer)return this.serializer.call(null,e,t) -if(void 0!==this.route&&this.route.serialize)return this.route.serialize(e,t) -if(1===t.length){var i=t[0] -return/_id$/.test(i)?n[i]=e.id:n[i]=e,n}}}class k{constructor(e,t={}){this.router=e,this.data=t}}function S(e,t,r){var n=e.routeInfos,i=t.resolveIndex>=n.length?n.length-1:t.resolveIndex,a=t.isAborted -throw new I(r,e.routeInfos[i].route,a,e)}function M(e,t){if(t.resolveIndex!==e.routeInfos.length)return e.routeInfos[t.resolveIndex].resolve(t).then(j.bind(null,e,t),null,e.promiseLabel("Proceed"))}function j(e,t,r){var n=e.routeInfos[t.resolveIndex].isResolved -if(e.routeInfos[t.resolveIndex++]=r,!n){var{route:a}=r -void 0!==a&&a.redirect&&a.redirect(r.context,t)}return i(t),M(e,t)}class N{constructor(){this.routeInfos=[],this.queryParams={},this.params={}}promiseLabel(e){var t="" -return h(this.routeInfos,(function(e){return""!==t&&(t+="."),t+=e.name,!0})),m("'"+t+"': "+e)}resolve(e){var r=this.params -return h(this.routeInfos,(e=>(r[e.name]=e.params||{},!0))),e.resolveIndex=0,t.Promise.resolve(null,this.promiseLabel("Start transition")).then(M.bind(null,this,e),null,this.promiseLabel("Resolve route")).catch(S.bind(null,this,e),this.promiseLabel("Handle error")).then((()=>this))}}e.TransitionState=N -class I{constructor(e,t,r,n){this.error=e,this.route=t,this.wasAborted=r,this.state=n}}e.TransitionError=I -class D extends k{constructor(e,t,r,n=[],i={},a){super(e,a),this.preTransitionState=void 0,this.name=t,this.pivotHandler=r,this.contexts=n,this.queryParams=i}applyToState(e,t){var r=u([this.name].concat(this.contexts))[0],n=this.router.recognizer.handlersFor(r[0]),i=n[n.length-1].handler -return this.applyToHandlers(e,n,i,t,!1)}applyToHandlers(e,t,r,n,i){var a,s,u=new N,l=this.contexts.slice(0),c=t.length -if(this.pivotHandler)for(a=0,s=t.length;a=0;--a){var d=t[a],h=d.handler,p=e.routeInfos[a],f=null -if(f=d.names.length>0?a>=c?this.createParamHandlerInfo(h,d.names,l,p):this.getHandlerInfoForDynamicSegment(h,d.names,l,p,r,a):this.createParamHandlerInfo(h,d.names,l,p),i){f=f.becomeResolved(null,f.context) -var m=p&&p.context -d.names.length>0&&void 0!==p.context&&f.context===m&&(f.params=p&&p.params),f.context=m}var g=p;(a>=c||f.shouldSupersede(p))&&(c=Math.min(a,c),g=f),n&&!i&&(g=g.becomeResolved(null,g.context)),u.routeInfos.unshift(g)}if(l.length>0)throw new Error("More context objects were passed than there are dynamic segments for the route: "+r) -return n||this.invalidateChildren(u.routeInfos,c),o(u.queryParams,this.queryParams||{}),n&&e.queryParams&&o(u.queryParams,e.queryParams),u}invalidateChildren(e,t){for(var r=t,n=e.length;r0){if(d(s=r[r.length-1]))return this.createParamHandlerInfo(e,t,r,n) -r.pop()}else{if(n&&n.name===e)return n -if(!this.preTransitionState)return n -var o=this.preTransitionState.routeInfos[a] -s=o&&o.context}return new A(this.router,e,t,s)}createParamHandlerInfo(e,t,r,n){for(var i={},a=t.length,s=[];a--;){var o=n&&e===n.name&&n.params||{},u=r[r.length-1],l=t[a] -d(u)?i[l]=""+r.pop():o.hasOwnProperty(l)?i[l]=o[l]:s.push(l)}if(s.length>0)throw new Error(`You didn't provide enough string/numeric parameters to satisfy all of the dynamic segments for route ${e}. Missing params: ${s}`) -return new x(this.router,e,t,i)}}var F=function(){function e(t){var r=Error.call(this,t) -this.name="UnrecognizedURLError",this.message=t||"UnrecognizedURL",Error.captureStackTrace?Error.captureStackTrace(this,e):this.stack=r.stack}return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}() -class L extends k{constructor(e,t,r){super(e,r),this.url=t,this.preTransitionState=void 0}applyToState(e){var t,r,n=new N,i=this.router.recognizer.recognize(this.url) -if(!i)throw new F(this.url) -var a=!1,s=this.url -function u(e){if(e&&e.inaccessibleByURL)throw new F(s) -return e}for(t=0,r=i.length;t=0&&n;--r){var i=t[r],a=i.handler -e.add(t,{as:a}),n="/"===i.path||""===i.path||".index"===a.slice(-6)}}))}hasRoute(e){return this.recognizer.hasRoute(e)}queryParamsTransition(e,t,r,n){if(this.fireQueryParamDidChange(n,e),!t&&this.activeTransition)return this.activeTransition -var i=new y(this,void 0,void 0) -return i.queryParamsOnly=!0,r.queryParams=this.finalizeQueryParamChange(n.routeInfos,n.queryParams,i),i[b]=n.queryParams,this.toReadOnlyInfos(i,n),this.routeWillChange(i),i.promise=i.promise.then((e=>(i.isAborted||(this._updateURL(i,r),this.didTransition(this.currentRouteInfos),this.toInfos(i,n.routeInfos,!0),this.routeDidChange(i)),e)),null,m("Transition complete")),i}transitionByIntent(e,t){try{return this.getTransitionByIntent(e,t)}catch(r){return new y(this,e,void 0,r,void 0)}}recognize(e){var t=new L(this,e),r=this.generateNewState(t) -if(null===r)return r -var n=E(r.routeInfos,r.queryParams) -return n[n.length-1]}recognizeAndLoad(e){var r=new L(this,e),n=this.generateNewState(r) -if(null===n)return t.Promise.reject(`URL ${e} was not recognized`) -var i=new y(this,r,n,void 0) -return i.then((()=>{var e=E(n.routeInfos,i[b],!0) -return e[e.length-1]}))}generateNewState(e){try{return e.applyToState(this.state,!1)}catch(t){return null}}getTransitionByIntent(e,t){var r,n=!!this.activeTransition,i=n?this.activeTransition[g]:this.state,a=e.applyToState(i,t),s=p(i.queryParams,a.queryParams) -if(B(a.routeInfos,i.routeInfos)){if(s){var o=this.queryParamsTransition(s,n,i,a) -return o.queryParamsOnly=!0,o}return this.activeTransition||new y(this,void 0,void 0)}if(t){var u=new y(this,void 0,a) -return u.isIntermediate=!0,this.toReadOnlyInfos(u,a),this.setupContexts(a,u),this.routeWillChange(u),this.activeTransition}return r=new y(this,e,a,void 0,this.activeTransition),function(e,t){if(e.length!==t.length)return!1 -for(var r=0,n=e.length;rthis.finalizeTransition(r,e)),null,m("Settle transition promise when transition is finalized")),n||this.notifyExistingHandlers(a,r),this.fireQueryParamDidChange(a,s),r}doTransition(e,t=[],r=!1){var n,i=t[t.length-1],a={} -if(void 0!==i&&i.hasOwnProperty("queryParams")&&(a=t.pop().queryParams),void 0===e){c(this,"Updating query params") -var{routeInfos:s}=this.state -n=new D(this,s[s.length-1].name,void 0,[],a)}else"/"===e.charAt(0)?(c(this,"Attempting URL transition to "+e),n=new L(this,e)):(c(this,"Attempting transition to "+e),n=new D(this,e,void 0,t,a)) -return this.transitionByIntent(n,r)}finalizeTransition(e,r){try{c(e.router,e.sequence,"Resolved all models on destination route; finalizing transition.") -var n=r.routeInfos -return this.setupContexts(r,e),e.isAborted?(this.state.routeInfos=this.currentRouteInfos,t.Promise.reject(_(e))):(this._updateURL(e,r),e.isActive=!1,this.activeTransition=void 0,this.triggerEvent(this.currentRouteInfos,!0,"didTransition",[]),this.didTransition(this.currentRouteInfos),this.toInfos(e,r.routeInfos,!0),this.routeDidChange(e),c(this,e.sequence,"TRANSITION COMPLETE."),n[n.length-1].route)}catch(s){if("object"!=typeof(a=s)||null===a||"TRANSITION_ABORTED"!==a.code){var i=e[g].routeInfos -e.trigger(!0,"error",s,e,i[i.length-1].route),e.abort()}throw s}var a}setupContexts(e,t){var r,n,i,a=this.partitionRoutes(this.state,e) -for(r=0,n=a.exited.length;r=0;--s){var u=n[s] -o(a,u.params),u.route.inaccessibleByURL&&(r=null)}if(r){a.queryParams=e._visibleQueryParams||t.queryParams -var l=this.recognizer.generate(i,a),c=e.isCausedByInitialTransition,d="replace"===r&&!e.isCausedByAbortingTransition,h=e.queryParamsOnly&&"replace"===r,p="replace"===r&&e.isCausedByAbortingReplaceTransition -c||d||h||p?this.replaceURL(l):this.updateURL(l)}}}finalizeQueryParamChange(e,t,r){for(var n in t)t.hasOwnProperty(n)&&null===t[n]&&delete t[n] -var i=[] -this.triggerEvent(e,!0,"finalizeQueryParamChange",[t,i,r]),r&&(r._visibleQueryParams={}) -for(var a={},s=0,o=i.length;s0){var r=E(t,Object.assign({},this._lastQueryParams),!0) -e.from=r[r.length-1]||null}}toInfos(e,t,r=!1){if(void 0!==e&&t.length>0){var n=E(t,Object.assign({},e[b]),r) -e.to=n[n.length-1]||null}}notifyExistingHandlers(e,t){var r,n,i,a,s=this.state.routeInfos -for(n=s.length,r=0;r{for(var e=0;e{t===r?g(e,r):f(e,r)}),(t=>v(e,t)))}(e,t):"function"==typeof r?function(e,t,r){i.async((e=>{var n=!1,i=function(e,t,r,n){try{e.call(t,r,n)}catch(i){return i}}(r,t,(r=>{n||(n=!0,t===r?g(e,r):f(e,r))}),(t=>{n||(n=!0,v(e,t))}),e._label) -!n&&i&&(n=!0,v(e,i))}),e)}(e,t,r):g(e,t)}function f(e,t){if(e===t)g(e,t) -else if(i=typeof(n=t),null===n||"object"!==i&&"function"!==i)g(e,t) -else{var r -try{r=t.then}catch(a){return void v(e,a)}p(e,t,r)}var n,i}function m(e){e._onError&&e._onError(e._result),y(e)}function g(e,t){e._state===c&&(e._result=t,e._state=d,0===e._subscribers.length?i.instrument&&o("fulfilled",e):i.async(y,e))}function v(e,t){e._state===c&&(e._state=h,e._result=t,i.async(m,e))}function b(e,t,r,n){var a=e._subscribers,s=a.length -e._onError=null,a[s]=t,a[s+d]=r,a[s+h]=n,0===s&&e._state&&i.async(y,e)}function y(e){var t=e._subscribers,r=e._state -if(i.instrument&&o(r===d?"fulfilled":"rejected",e),0!==t.length){for(var n,a,s=e._result,u=0;u_(a,s,p,u)))}return s}class O{constructor(e,t,r,n){this._instanceConstructor=e,this.promise=new e(l,n),this._abortOnReject=r,this._isUsingOwnPromise=e===P,this._isUsingOwnResolve=e.resolve===u,this._init(...arguments)}_init(e,t){var r=t.length||0 -this.length=r,this._remaining=r,this._result=new Array(r),this._enumerate(t)}_enumerate(e){for(var t=this.length,r=this.promise,n=0;r._state===c&&nt(e))),t,r)}else this._willSettleAt(n.resolve(e),t,r)}_eachEntry(e,t,r){null!==e&&"object"==typeof e?this._settleMaybeThenable(e,t,r):this._setResultAt(d,t,e,r)}_settledAt(e,t,r,n){var i=this.promise -i._state===c&&(this._abortOnReject&&e===h?v(i,r):(this._setResultAt(e,t,r,n),this._checkFullfillment()))}_setResultAt(e,t,r,n){this._remaining--,this._result[t]=r}_willSettleAt(e,t,r){b(e,void 0,(e=>this._settledAt(d,t,e,r)),(e=>this._settledAt(h,t,e,r)))}}function E(e,t,r){this._remaining--,this._result[t]=e===d?{state:"fulfilled",value:r}:{state:"rejected",reason:r}}var R="rsvp_"+Date.now()+"-",T=0 -class P{constructor(e,t){this._id=T++,this._label=t,this._state=void 0,this._result=void 0,this._subscribers=[],i.instrument&&o("created",this),l!==e&&("function"!=typeof e&&function(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}(),this instanceof P?function(e,t){var r=!1 -try{t((t=>{r||(r=!0,f(e,t))}),(t=>{r||(r=!0,v(e,t))}))}catch(n){v(e,n)}}(this,e):function(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}())}_onError(e){i.after((()=>{this._onError&&i.trigger("error",e,this._label)}))}catch(e,t){return this.then(void 0,e,t)}finally(e,t){var r=this,n=r.constructor -return"function"==typeof e?r.then((t=>n.resolve(e()).then((()=>t))),(t=>n.resolve(e()).then((()=>{throw t})))):r.then(e,e)}}function C(e,t){return{then:(r,n)=>e.call(t,r,n)}}function x(e,t){var r=function(){for(var r=arguments.length,n=new Array(r+1),i=!1,a=0;aA(e,t,r,n)))}(u,n,e,this):A(u,n,e,this)} -return r.__proto__=e,r}function A(e,t,r,n){try{r.apply(n,t)}catch(i){v(e,i)}return e}function k(e,t){return P.all(e,t)}e.Promise=P,P.cast=u,P.all=function(e,t){return Array.isArray(e)?new O(this,e,!0,t).promise:this.reject(new TypeError("Promise.all must be called with an array"),t)},P.race=function(e,t){var r=new this(l,t) -if(!Array.isArray(e))return v(r,new TypeError("Promise.race must be called with an array")),r -for(var n=0;r._state===c&&nf(r,e)),(e=>v(r,e))) -return r},P.resolve=u,P.reject=function(e,t){var r=new this(l,t) -return v(r,e),r},P.prototype._guidKey=R,P.prototype.then=w -class S extends O{constructor(e,t,r){super(e,t,!1,r)}}function M(e,t){return Array.isArray(e)?new S(P,e,t).promise:P.reject(new TypeError("Promise.allSettled must be called with an array"),t)}function j(e,t){return P.race(e,t)}S.prototype._setResultAt=E -class N extends O{constructor(e,t,r=!0,n){super(e,t,r,n)}_init(e,t){this._result={},this._enumerate(t)}_enumerate(e){var t,r,n=Object.keys(e),i=n.length,a=this.promise -this._remaining=i -for(var s=0;a._state===c&&s{throw e})),e}function B(e){var t={resolve:void 0,reject:void 0} -return t.promise=new P(((e,r)=>{t.resolve=e,t.reject=r}),e),t}D.prototype._setResultAt=E -class U extends O{constructor(e,t,r,n){super(e,t,!0,n,r)}_init(e,t,r,n,i){var a=t.length||0 -this.length=a,this._remaining=a,this._result=new Array(a),this._mapFn=i,this._enumerate(t)}_setResultAt(e,t,r,n){if(n)try{this._eachEntry(this._mapFn(r,t),t,!1)}catch(i){this._settledAt(h,t,i,!1)}else this._remaining--,this._result[t]=r}}function $(e,t,r){return"function"!=typeof t?P.reject(new TypeError("map expects a function as a second argument"),r):P.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("map must be called with an array") -return new U(P,e,t,r).promise}))}function V(e,t){return P.resolve(e,t)}function z(e,t){return P.reject(e,t)}var H={} -class q extends U{_checkFullfillment(){if(0===this._remaining&&null!==this._result){var e=this._result.filter((e=>e!==H)) -g(this.promise,e),this._result=null}}_setResultAt(e,t,r,n){if(n){this._result[t]=r -var i,a=!0 -try{i=this._mapFn(r,t)}catch(s){a=!1,this._settledAt(h,t,s,!1)}a&&this._eachEntry(i,t,!1)}else this._remaining--,r||(this._result[t]=H)}}function W(e,t,r){return"function"!=typeof t?P.reject(new TypeError("filter expects function as a second argument"),r):P.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("filter must be called with an array") -return new q(P,e,t,r).promise}))}var G,Y=0 -function Q(e,t){le[Y]=e,le[Y+1]=t,2===(Y+=2)&&re()}var K="undefined"!=typeof window?window:void 0,J=K||{},X=J.MutationObserver||J.WebKitMutationObserver,Z="undefined"==typeof self&&"undefined"!=typeof process&&"[object process]"==={}.toString.call(process),ee="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel -function te(){return()=>setTimeout(ce,1)}var re,ne,ie,ae,se,oe,ue,le=new Array(1e3) -function ce(){for(var e=0;eoe(ce)):X?(ie=0,ae=new X(ce),se=document.createTextNode(""),ae.observe(se,{characterData:!0}),re=()=>se.data=ie=++ie%2):ee?((ne=new MessageChannel).port1.onmessage=ce,re=()=>ne.port2.postMessage(0)):re=void 0===K&&"function"==typeof t?function(){try{var e=Function("return this")().require("vertx") -return void 0!==(G=e.runOnLoop||e.runOnContext)?function(){G(ce)}:te()}catch(t){return te()}}():te(),i.async=Q,i.after=e=>setTimeout(e,0) -var de=e.cast=V,he=(e,t)=>i.async(e,t) -function pe(){i.on(...arguments)}function fe(){i.off(...arguments)}if(e.async=he,"undefined"!=typeof window&&"object"==typeof window.__PROMISE_INSTRUMENTATION__){var me=window.__PROMISE_INSTRUMENTATION__ -for(var ge in a("instrument",!0),me)me.hasOwnProperty(ge)&&pe(ge,me[ge])}var ve={asap:Q,cast:de,Promise:P,EventTarget:n,all:k,allSettled:M,race:j,hash:I,hashSettled:F,rethrow:L,defer:B,denodeify:x,configure:a,on:pe,off:fe,resolve:V,reject:z,map:$,async:he,filter:W} -e.default=ve})),t("@ember/-internals/bootstrap")}(),"undefined"==typeof FastBoot){var preferNative=!1;(function(e){define("fetch",["exports","ember","rsvp"],(function(t,r,n){"use strict" -var i="default"in r?r.default:r,a=("default"in n?n.default:n).Promise,s=["FormData","FileReader","Blob","URLSearchParams","Symbol","ArrayBuffer"],o=s -preferNative&&(o=s.concat(["fetch","Headers","Request","Response","AbortController"])),o.forEach((function(r){e[r]&&Object.defineProperty(t,r,{configurable:!0,get:function(){return e[r]},set:function(t){e[r]=t}})})) -var u=t,l=t;(function(){class e{constructor(){Object.defineProperty(this,"listeners",{value:{},writable:!0,configurable:!0})}addEventListener(e,t,r){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push({callback:t,options:r})}removeEventListener(e,t){if(!(e in this.listeners))return -const r=this.listeners[e] -for(let n=0,i=r.length;n{throw r}))}i.options&&i.options.once&&this.removeEventListener(e.type,i.callback)}return!e.defaultPrevented}}class t extends e{constructor(){super(),this.listeners||e.call(this),Object.defineProperty(this,"aborted",{value:!1,writable:!0,configurable:!0}),Object.defineProperty(this,"onabort",{value:null,writable:!0,configurable:!0}),Object.defineProperty(this,"reason",{value:void 0,writable:!0,configurable:!0})}toString(){return"[object AbortSignal]"}dispatchEvent(e){"abort"===e.type&&(this.aborted=!0,"function"==typeof this.onabort&&this.onabort.call(this,e)),super.dispatchEvent(e)}}class r{constructor(){Object.defineProperty(this,"signal",{value:new t,writable:!0,configurable:!0})}abort(e){let t -try{t=new Event("abort")}catch(n){"undefined"!=typeof document?document.createEvent?(t=document.createEvent("Event"),t.initEvent("abort",!1,!1)):(t=document.createEventObject(),t.type="abort"):t={type:"abort",bubbles:!1,cancelable:!1}}let r=e -if(void 0===r)if("undefined"==typeof document)r=new Error("This operation was aborted"),r.name="AbortError" -else try{r=new DOMException("signal is aborted without reason")}catch(i){r=new Error("This operation was aborted"),r.name="AbortError"}this.signal.reason=r,this.signal.dispatchEvent(t)}toString(){return"[object AbortController]"}}"undefined"!=typeof Symbol&&Symbol.toStringTag&&(r.prototype[Symbol.toStringTag]="AbortController",t.prototype[Symbol.toStringTag]="AbortSignal"),function(e){(function(e){return e.__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL?(console.log("__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL=true is set, will force install polyfill"),!0):"function"==typeof e.Request&&!e.Request.prototype.hasOwnProperty("signal")||!e.AbortController})(e)&&(e.AbortController=r,e.AbortSignal=t)}(void 0!==l?l:global)})();(function(e){var t=void 0!==u&&u||void 0!==l&&l||"undefined"!=typeof global&&global||{},r="URLSearchParams"in t,n="Symbol"in t&&"iterator"in Symbol,i="FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(e){return!1}}(),s="FormData"in t,o="ArrayBuffer"in t -if(o)var c=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],d=ArrayBuffer.isView||function(e){return e&&c.indexOf(Object.prototype.toString.call(e))>-1} -function h(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(e)||""===e)throw new TypeError('Invalid character in header field name: "'+e+'"') -return e.toLowerCase()}function p(e){return"string"!=typeof e&&(e=String(e)),e}function f(e){var t={next:function(){var t=e.shift() -return{done:void 0===t,value:t}}} -return n&&(t[Symbol.iterator]=function(){return t}),t}function m(e){this.map={},e instanceof m?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){if(2!=e.length)throw new TypeError("Headers constructor: expected name/value pair to be length 2, found"+e.length) -this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function g(e){if(!e._noBody)return e.bodyUsed?a.reject(new TypeError("Already read")):void(e.bodyUsed=!0)}function v(e){return new a((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function b(e){var t=new FileReader,r=v(t) -return t.readAsArrayBuffer(e),r}function y(e){if(e.slice)return e.slice(0) -var t=new Uint8Array(e.byteLength) -return t.set(new Uint8Array(e)),t.buffer}function _(){return this.bodyUsed=!1,this._initBody=function(e){var t -this.bodyUsed=this.bodyUsed,this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:i&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:s&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():o&&i&&((t=e)&&DataView.prototype.isPrototypeOf(t))?(this._bodyArrayBuffer=y(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o&&(ArrayBuffer.prototype.isPrototypeOf(e)||d(e))?this._bodyArrayBuffer=y(e):this._bodyText=e=Object.prototype.toString.call(e):(this._noBody=!0,this._bodyText=""),this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var e=g(this) -if(e)return e -if(this._bodyBlob)return a.resolve(this._bodyBlob) -if(this._bodyArrayBuffer)return a.resolve(new Blob([this._bodyArrayBuffer])) -if(this._bodyFormData)throw new Error("could not read FormData body as blob") -return a.resolve(new Blob([this._bodyText]))}),this.arrayBuffer=function(){if(this._bodyArrayBuffer){var e=g(this) -return e||(ArrayBuffer.isView(this._bodyArrayBuffer)?a.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):a.resolve(this._bodyArrayBuffer))}if(i)return this.blob().then(b) -throw new Error("could not read as ArrayBuffer")},this.text=function(){var e,t,r,n,i,s=g(this) -if(s)return s -if(this._bodyBlob)return e=this._bodyBlob,t=new FileReader,r=v(t),n=/charset=([A-Za-z0-9_-]+)/.exec(e.type),i=n?n[1]:"utf-8",t.readAsText(e,i),r -if(this._bodyArrayBuffer)return a.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?i:n),this.mode=r.mode||this.mode||null,this.signal=r.signal||this.signal||function(){if("AbortController"in t)return(new AbortController).signal}(),this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&a)throw new TypeError("Body not allowed for GET or HEAD requests") -if(this._initBody(a),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==r.cache&&"no-cache"!==r.cache)){var s=/([?&])_=[^&]*/ -if(s.test(this.url))this.url=this.url.replace(s,"$1_="+(new Date).getTime()) -else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function E(e){var t=new FormData -return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ") -t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function R(e,t){if(!(this instanceof R))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.') -if(t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].") -this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new m(t.headers),this.url=t.url||"",this._initBody(e)}O.prototype.clone=function(){return new O(this,{body:this._bodyInit})},_.call(O.prototype),_.call(R.prototype),R.prototype.clone=function(){return new R(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},R.error=function(){var e=new R(null,{status:200,statusText:""}) -return e.ok=!1,e.status=0,e.type="error",e} -var T=[301,302,303,307,308] -R.redirect=function(e,t){if(-1===T.indexOf(t))throw new RangeError("Invalid status code") -return new R(null,{status:t,headers:{location:e}})},e.DOMException=t.DOMException -try{new e.DOMException}catch(C){e.DOMException=function(e,t){this.message=e,this.name=t -var r=Error(e) -this.stack=r.stack},e.DOMException.prototype=Object.create(Error.prototype),e.DOMException.prototype.constructor=e.DOMException}function P(r,n){return new a((function(a,s){var u=new O(r,n) -if(u.signal&&u.signal.aborted)return s(new e.DOMException("Aborted","AbortError")) -var l=new XMLHttpRequest -function c(){l.abort()}if(l.onload=function(){var e,t,r={statusText:l.statusText,headers:(e=l.getAllResponseHeaders()||"",t=new m,e.replace(/\r?\n[\t ]+/g," ").split("\r").map((function(e){return 0===e.indexOf("\n")?e.substr(1,e.length):e})).forEach((function(e){var r=e.split(":"),n=r.shift().trim() -if(n){var i=r.join(":").trim() -try{t.append(n,i)}catch(a){console.warn("Response "+a.message)}}})),t)} -0===u.url.indexOf("file://")&&(l.status<200||l.status>599)?r.status=200:r.status=l.status,r.url="responseURL"in l?l.responseURL:r.headers.get("X-Request-URL") -var n="response"in l?l.response:l.responseText -setTimeout((function(){a(new R(n,r))}),0)},l.onerror=function(){setTimeout((function(){s(new TypeError("Network request failed"))}),0)},l.ontimeout=function(){setTimeout((function(){s(new TypeError("Network request timed out"))}),0)},l.onabort=function(){setTimeout((function(){s(new e.DOMException("Aborted","AbortError"))}),0)},l.open(u.method,function(e){try{return""===e&&t.location.href?t.location.href:e}catch(r){return e}}(u.url),!0),"include"===u.credentials?l.withCredentials=!0:"omit"===u.credentials&&(l.withCredentials=!1),"responseType"in l&&(i?l.responseType="blob":o&&(l.responseType="arraybuffer")),n&&"object"==typeof n.headers&&!(n.headers instanceof m||t.Headers&&n.headers instanceof t.Headers)){var d=[] -Object.getOwnPropertyNames(n.headers).forEach((function(e){d.push(h(e)),l.setRequestHeader(e,p(n.headers[e]))})),u.headers.forEach((function(e,t){-1===d.indexOf(t)&&l.setRequestHeader(t,e)}))}else u.headers.forEach((function(e,t){l.setRequestHeader(t,e)})) -u.signal&&(u.signal.addEventListener("abort",c),l.onreadystatechange=function(){4===l.readyState&&u.signal.removeEventListener("abort",c)}),l.send(void 0===u._bodyInit?null:u._bodyInit)}))}P.polyfill=!0,t.fetch||(t.fetch=P,t.Headers=m,t.Request=O,t.Response=R),e.Headers=m,e.Request=O,e.Response=R,e.fetch=P})({}) -if(!u.fetch)throw new Error("fetch is not defined - maybe your browser targets are not covering everything you need?") -var c=0 -function d(e){return c--,e}i.Test?(i.Test.registerWaiter((function(){return 0===c})),t.default=function(){return c++,t.fetch.apply(e,arguments).then((function(e){return e.clone().blob().then(d,d),e}),(function(e){throw d(e),e}))}):t.default=t.fetch,s.forEach((function(e){delete t[e]}))}))})("undefined"!=typeof window&&window||"undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||"undefined"!=typeof global&&global)}define("@ember/string/cache",["exports"],(function(e){"use strict" -function t(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e -var r=e[Symbol.toPrimitive] -if(void 0!==r){var n=r.call(e,t||"default") -if("object"!=typeof n)return n -throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{constructor(e,r,n){t(this,"size",0),t(this,"misses",0),t(this,"hits",0),this.limit=e,this.func=r,this.store=n,this.store=n||new Map}get(e){let t=this.store.get(e) -return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,t=this.set(e,this.func(e)),t)}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}}})),define("@ember/string/index",["exports","@ember/string/cache"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.camelize=function(e){return o.get(e)},e.capitalize=function(e){return g.get(e)},e.classify=function(e){return d.get(e)},e.dasherize=function(e){return i.get(e)},e.decamelize=y,e.getString=function(e){return r[e]},e.getStrings=function(){return r},e.htmlSafe=function(e){throw new Error("htmlSafe is not implemented in the `@ember/string` package. Please import from `@ember/template` instead.")},e.isHTMLSafe=function(e){throw new Error("isHTMLSafe is not implemented in the `@ember/string` package. Please import from `@ember/template` instead.")},e.setStrings=function(e){r=e},e.underscore=function(e){return f.get(e)},e.w=function(e){return e.split(/\s+/)} -let r={} -const n=/[ _]/g,i=new t.default(1e3,(e=>y(e).replace(n,"-"))),a=/(\-|\_|\.|\s)+(.)?/g,s=/(^|\/)([A-Z])/g,o=new t.default(1e3,(e=>e.replace(a,((e,t,r)=>r?r.toUpperCase():"")).replace(s,(e=>e.toLowerCase())))),u=/^(\-|_)+(.)?/,l=/(.)(\-|\_|\.|\s)+(.)?/g,c=/(^|\/|\.)([a-z])/g,d=new t.default(1e3,(e=>{const t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/") -for(let i=0;ie.toUpperCase()))})),h=/([a-z\d])([A-Z]+)/g,p=/\-|\s+/g,f=new t.default(1e3,(e=>e.replace(h,"$1_$2").replace(p,"_").toLowerCase())),m=/(^|\/)([a-z\u00C0-\u024F])/g,g=new t.default(1e3,(e=>e.replace(m,(e=>e.toUpperCase())))),v=/([a-z\d])([A-Z])/g,b=new t.default(1e3,(e=>e.replace(v,"$1_$2").toLowerCase())) -function y(e){return b.get(e)}})),define("@ember/test-waiters/build-waiter",["exports","@ember/debug","@ember/test-waiters/token","@ember/test-waiters/waiter-manager"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._resetWaiterNames=function(){i=new Set},e.default=function(e){0 -return new a(e)} -let i -class a{constructor(e){this.name=e}beginAsync(){return this}endAsync(){}waitUntil(){return!0}debugInfo(){return[]}reset(){}}})),define("@ember/test-waiters/index",["exports","@ember/test-waiters/waiter-manager","@ember/test-waiters/build-waiter","@ember/test-waiters/wait-for-promise","@ember/test-waiters/wait-for"],(function(e,t,r,n,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"_reset",{enumerable:!0,get:function(){return t._reset}}),Object.defineProperty(e,"_resetWaiterNames",{enumerable:!0,get:function(){return r._resetWaiterNames}}),Object.defineProperty(e,"buildWaiter",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"getPendingWaiterState",{enumerable:!0,get:function(){return t.getPendingWaiterState}}),Object.defineProperty(e,"getWaiters",{enumerable:!0,get:function(){return t.getWaiters}}),Object.defineProperty(e,"hasPendingWaiters",{enumerable:!0,get:function(){return t.hasPendingWaiters}}),Object.defineProperty(e,"register",{enumerable:!0,get:function(){return t.register}}),Object.defineProperty(e,"unregister",{enumerable:!0,get:function(){return t.unregister}}),Object.defineProperty(e,"waitFor",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"waitForPromise",{enumerable:!0,get:function(){return n.default}})})),define("@ember/test-waiters/token",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{}})),define("@ember/test-waiters/types/index",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0})})),define("@ember/test-waiters/wait-for-promise",["exports","@ember/test-waiters/build-waiter"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){let r=e -0 -return r};(0,t.default)("@ember/test-waiters:promise-waiter")})),define("@ember/test-waiters/wait-for",["exports","@ember/test-waiters/wait-for-promise","@ember/test-waiters/build-waiter"],(function(e,t,r){"use strict" -function n(e,t){return e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(...e){if(e.length<3){let[t,r]=e -return n(t,r)}{let[,,t,r]=e -return t}};(0,r.default)("@ember/test-waiters:generator-waiter")})),define("@ember/test-waiters/waiter-manager",["exports","ember","@ember/test"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._reset=function(){for(let e of a())e.isRegistered=!1 -n.clear()},e.getPendingWaiterState=s,e.getWaiters=a,e.hasPendingWaiters=o,e.register=function(e){n.set(e.name,e)},e.unregister=function(e){n.delete(e.name)} -const n=function(){let e="TEST_WAITERS",t="undefined"!=typeof Symbol?Symbol.for(e):e,r=i(),n=r[t] -return void 0===n&&(n=r[t]=new Map),n}() -function i(){if("undefined"!=typeof globalThis)return globalThis -if("undefined"!=typeof self)return self -if("undefined"!=typeof window)return window -if("undefined"!=typeof global)return global -throw new Error("unable to locate global object")}function a(){let e=[] -return n.forEach((t=>{e.push(t)})),e}function s(){let e={pending:0,waiters:{}} -return n.forEach((t=>{if(!t.waitUntil()){e.pending++ -let r=t.debugInfo() -e.waiters[t.name]=r||!0}})),e}function o(){return s().pending>0}t.default.Test&&(0,r.registerWaiter)((()=>!o()))})),define("@embroider/macros/es-compat2",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return e?.__esModule?e:{default:e,...e}}})),define("@embroider/macros/runtime",["exports"],(function(e){"use strict" -function t(e){return n.packages[e]}function r(){return n.global}Object.defineProperty(e,"__esModule",{value:!0}),e.config=t,e.each=function(e){if(!Array.isArray(e))throw new Error("the argument to the each() macro must be an array") -return e},e.getGlobalConfig=r,e.isTesting=function(){let e=n.global,t=e&&e["@embroider/macros"] -return Boolean(t&&t.isTesting)},e.macroCondition=function(e){return e} -const n={packages:{},global:{}} -let i="undefined"!=typeof window?window._embroider_macros_runtime_config:void 0 -if(i){let e={config:t,getGlobalConfig:r,setConfig(e,t){n.packages[e]=t},setGlobalConfig(e,t){n.global[e]=t}} -for(let t of i)t(e)}})),define("@glimmer/component/-private/base-component-manager",["exports","@glimmer/component/-private/component"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return class{static create(e){return new this(t(e))}constructor(t){var n,i,a -n=this,a=r,(i=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e -var r=e[Symbol.toPrimitive] -if(void 0!==r){var n=r.call(e,t||"default") -if("object"!=typeof n)return n -throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(i="capabilities"))in n?Object.defineProperty(n,i,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[i]=a,e(this,t)}createComponent(e,r){return new e(t(this),r.named)}getContext(e){return e}}}})),define("@glimmer/component/-private/component",["exports","@glimmer/component/-private/owner","@glimmer/component/-private/destroyables"],(function(e,t,r){"use strict" -function n(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e -var r=e[Symbol.toPrimitive] -if(void 0!==r){var n=r.call(e,t||"default") -if("object"!=typeof n)return n -throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ARGS_SET=void 0 -e.ARGS_SET=void 0 -e.default=class{constructor(e,r){n(this,"args",void 0),this.args=r,(0,t.setOwner)(this,e)}get isDestroying(){return(0,r.isDestroying)(this)}get isDestroyed(){return(0,r.isDestroyed)(this)}willDestroy(){}}})),define("@glimmer/component/-private/destroyables",["exports","ember"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.isDestroying=e.isDestroyed=void 0 -e.isDestroying=t.default._isDestroying,e.isDestroyed=t.default._isDestroyed})),define("@glimmer/component/-private/ember-component-manager",["exports","ember","@ember/object","@ember/application","@ember/component","@ember/runloop","@glimmer/component/-private/base-component-manager","@glimmer/component/-private/destroyables"],(function(e,t,r,n,i,a,s,o){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -const{setDestroyed:u,setDestroying:l}=o,c=(0,i.capabilities)("3.13",{destructor:!0,asyncLifecycleCallbacks:!1,updateHook:!1}),d=t.default.destroy,h=t.default._registerDestructor -class p extends((0,s.default)(n.setOwner,n.getOwner,c)){createComponent(e,t){const r=super.createComponent(e,t) -return h(r,(()=>{r.willDestroy()})),r}destroyComponent(e){d(e)}}e.default=p})),define("@glimmer/component/-private/owner",["exports","@ember/application"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"setOwner",{enumerable:!0,get:function(){return t.setOwner}})})),define("@glimmer/component/index",["exports","@ember/component","@glimmer/component/-private/ember-component-manager","@glimmer/component/-private/component"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -let i=n.default;(0,t.setComponentManager)((e=>new r.default(e)),i) -e.default=i})),define("ember-cli-app-version/initializer-factory",["exports","ember"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){let n=!1 -return function(){!n&&e&&t&&(r.register(e,t),n=!0)}} -const{libraries:r}=t.default})),define("ember-cli-app-version/utils/regexp",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.versionRegExp=e.versionExtendedRegExp=e.shaRegExp=void 0 -e.versionRegExp=/\d+[.]\d+[.]\d+/,e.versionExtendedRegExp=/\d+[.]\d+[.]\d+-[a-z]*([.]\d+)?/,e.shaRegExp=/[a-z\d]{8}$/})),define("ember-fetch/errors",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.isAbortError=function(e){return"AbortError"==e.name},e.isBadRequestResponse=function(e){return 400===e.status},e.isConflictResponse=function(e){return 409===e.status},e.isForbiddenResponse=function(e){return 403===e.status},e.isGoneResponse=function(e){return 410===e.status},e.isInvalidResponse=function(e){return 422===e.status},e.isNotFoundResponse=function(e){return 404===e.status},e.isServerErrorResponse=function(e){return e.status>=500&&e.status<600},e.isUnauthorizedResponse=function(e){return 401===e.status}})),define("ember-fetch/types",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.isPlainObject=function(e){return"[object Object]"===Object.prototype.toString.call(e)}})),define("ember-fetch/utils/determine-body-promise",["exports","@ember/debug"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,r){return e.text().then((function(n){let i=n -try{i=JSON.parse(n)}catch(a){if(!(a instanceof SyntaxError))throw a -const s=e.status -!e.ok||204!==s&&205!==s&&"HEAD"!==r.method?(0,t.debug)(`This response was unable to be parsed as json: ${n}`):i=void 0}return i}))}})),define("ember-fetch/utils/mung-options-for-fetch",["exports","@ember/polyfills","ember-fetch/utils/serialize-query-params","ember-fetch/types"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){const i=(0,t.assign)({credentials:"same-origin"},e) -if(i.method=(i.method||i.type||"GET").toUpperCase(),i.data)if("GET"===i.method||"HEAD"===i.method){if(Object.keys(i.data).length){const e=i.url.indexOf("?")>-1?"&":"?" -i.url+=`${e}${(0,r.serializeQueryParams)(i.data)}`}}else(0,n.isPlainObject)(i.data)?i.body=JSON.stringify(i.data):i.body=i.data -return i}})),define("ember-fetch/utils/serialize-query-params",["exports","ember-fetch/types"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.serializeQueryParams=n -const r=/\[\]$/ -function n(e){var n=[] -return function e(a,s){var o,u,l -if(a)if(Array.isArray(s))for(o=0,u=s.length;o1){let e=t[0] -return"component"===e||"helper"===e||"modifier"===e||"template"===e&&0===t[1].indexOf("components/")?e+":"+t[1].replace(/_/g,"-"):e+":"+(0,i.dasherize)(t[1].replace(/\./g,"/"))}return e}pluralize(e){return this.pluralizedTypes[e]||(this.pluralizedTypes[e]=e+"s")}podBasedLookupWithPrefix(e,t){let r=t.fullNameWithoutType -return"template"===t.type&&(r=r.replace(/^components\//,"")),e+"/"+r+"/"+t.type}podBasedModuleName(e){let t=this.namespace.podModulePrefix||this.namespace.modulePrefix -return this.podBasedLookupWithPrefix(t,e)}podBasedComponentsInSubdir(e){let t=this.namespace.podModulePrefix||this.namespace.modulePrefix -if(t+="/components","component"===e.type||/^components/.test(e.fullNameWithoutType))return this.podBasedLookupWithPrefix(t,e)}resolveEngine(e){let t=e.fullNameWithoutType+"/engine" -if(this._moduleRegistry.has(t))return this._extractDefaultExport(t)}resolveRouteMap(e){let t=e.fullNameWithoutType,r=t+"/routes" -if(this._moduleRegistry.has(r)){let e=this._extractDefaultExport(r) -return e}}resolveTemplate(e){let r=this.resolveOther(e) -return null==r&&(r=t.default.TEMPLATES[e.fullNameWithoutType]),r}mainModuleName(e){if("main"===e.fullNameWithoutType)return e.prefix+"/"+e.type}defaultModuleName(e){return e.prefix+"/"+this.pluralize(e.type)+"/"+e.fullNameWithoutType}nestedColocationComponentModuleName(e){if("component"===e.type)return e.prefix+"/"+this.pluralize(e.type)+"/"+e.fullNameWithoutType+"/index"}prefix(e){let t=this.namespace.modulePrefix -return this.namespace[e.type+"Prefix"]&&(t=this.namespace[e.type+"Prefix"]),t}findModuleName(e,t){let r,n=this.moduleNameLookupPatterns -for(let i=0,a=n.length;i60?".":new Array(60-r.fullName.length).join("."),n||(n=this.lookupDescription(r)),console&&console.info&&console.info(a,r.fullName,i,n)}knownForType(e){let t=this._moduleRegistry.moduleNames(),r=Object.create(null) -for(let n=0,i=t.length;nn.length+i.length)return e+":"+t.slice(a+n.length,s) -let o=r+"/"+this.pluralize(e)+"/" -return 0===t.indexOf(o)&&t.length>o.length?e+":"+t.slice(o.length):void 0}_extractDefaultExport(e){let t=this._moduleRegistry.get(e,null,null,!0) -return t&&t.default&&(t=t.default),t}}s(u,"moduleBasedResolver",!0) -e.default=u})),define("ember-resolver/string/cache",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{constructor(e,t,r){this.limit=e,this.func=t,this.store=r,this.size=0,this.misses=0,this.hits=0,this.store=r||new Map}get(e){let t=this.store.get(e) -return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,t=this.set(e,this.func(e)),t)}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}}})),define("ember-resolver/string/index",["exports","ember-resolver/string/cache"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.classify=function(e){return u.get(e)},e.dasherize=function(e){return i.get(e)},e.decamelize=f,e.getString=function(e){return r[e]},e.getStrings=function(){return r},e.setStrings=function(e){r=e},e.underscore=function(e){return d.get(e)} -let r={} -const n=/[ _]/g,i=new t.default(1e3,(e=>f(e).replace(n,"-"))),a=/^(\-|_)+(.)?/,s=/(.)(\-|\_|\.|\s)+(.)?/g,o=/(^|\/|\.)([a-z])/g,u=new t.default(1e3,(e=>{const t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/") -for(let i=0;ie.toUpperCase()))})),l=/([a-z\d])([A-Z]+)/g,c=/\-|\s+/g,d=new t.default(1e3,(e=>e.replace(l,"$1_$2").replace(c,"_").toLowerCase())),h=/([a-z\d])([A-Z])/g,p=new t.default(1e3,(e=>e.replace(h,"$1_$2").toLowerCase())) -function f(e){return p.get(e)}})) -define("ember-resolver/utils/class-factory",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return{create:t=>"function"==typeof e.extend?e.extend(t):e}}})),define("ember-test-waiters/index",["exports","@ember/debug","@ember/test-waiters"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.keys(r).forEach((function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===r[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return r[t]}}))}))})),define("ember-tracked-storage-polyfill/index",["exports","@glimmer/tracking","@ember/debug"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.createStorage=function(e,t=a){return new i(e,t)},e.getValue=function(e){return e._value},e.setValue=function(e,t){const{_isEqual:r,_lastValue:n}=e -r(t,n)||(e._value=e._lastValue=t)} -var n=function(e,t,r,n){var i,a=arguments.length,s=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) -else for(var o=e.length-1;o>=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,r,s):i(t,r))||s) -return a>3&&s&&Object.defineProperty(t,r,s),s} -class i{constructor(e,t){this._value=this._lastValue=e,this._isEqual=t}}function a(e,t){return e===t}n([t.tracked],i.prototype,"_value",void 0)})) diff --git a/ember/ember-4.0.1.template-compiler.js b/ember/ember-4.0.1.template-compiler.js deleted file mode 100644 index f3d9d51..0000000 --- a/ember/ember-4.0.1.template-compiler.js +++ /dev/null @@ -1,21729 +0,0 @@ -(function() { -/*! - * @overview Ember - JavaScript Application Framework - * @copyright Copyright 2011-2021 Tilde Inc. and contributors - * Portions Copyright 2006-2011 Strobe Inc. - * Portions Copyright 2008-2011 Apple Inc. All rights reserved. - * @license Licensed under MIT license - * See https://raw.github.com/emberjs/ember.js/master/LICENSE - * @version 4.0.1 - */ - -/* eslint-disable no-var */ -/* globals global globalThis self */ -var define, require; - -(function () { - var globalObj = - typeof globalThis !== 'undefined' - ? globalThis - : typeof self !== 'undefined' - ? self - : typeof window !== 'undefined' - ? window - : typeof global !== 'undefined' - ? global - : null; - - if (globalObj === null) { - throw new Error('unable to locate global object'); - } - - if (typeof globalObj.define === 'function' && typeof globalObj.require === 'function') { - define = globalObj.define; - require = globalObj.require; - - return; - } - - var registry = Object.create(null); - var seen = Object.create(null); - - function missingModule(name, referrerName) { - if (referrerName) { - throw new Error('Could not find module ' + name + ' required by: ' + referrerName); - } else { - throw new Error('Could not find module ' + name); - } - } - - function internalRequire(_name, referrerName) { - var name = _name; - var mod = registry[name]; - - if (!mod) { - name = name + '/index'; - mod = registry[name]; - } - - var exports = seen[name]; - - if (exports !== undefined) { - return exports; - } - - exports = seen[name] = {}; - - if (!mod) { - missingModule(_name, referrerName); - } - - var deps = mod.deps; - var callback = mod.callback; - var reified = new Array(deps.length); - - for (var i = 0; i < deps.length; i++) { - if (deps[i] === 'exports') { - reified[i] = exports; - } else if (deps[i] === 'require') { - reified[i] = require; - } else { - reified[i] = require(deps[i], name); - } - } - - callback.apply(this, reified); - - return exports; - } - - require = function (name) { - return internalRequire(name, null); - }; - - // eslint-disable-next-line no-unused-vars - define = function (name, deps, callback) { - registry[name] = { deps: deps, callback: callback }; - }; - - // setup `require` module - require['default'] = require; - - require.has = function registryHas(moduleName) { - return Boolean(registry[moduleName]) || Boolean(registry[moduleName + '/index']); - }; - - require._eak_seen = require.entries = registry; -})(); - -define("@ember/-internals/browser-environment/index", ["exports"], function (_exports) { - "use strict"; - - Object.defineProperty(_exports, "__esModule", { - value: true - }); - _exports.hasDOM = _exports.isIE = _exports.isFirefox = _exports.isChrome = _exports.userAgent = _exports.history = _exports.location = _exports.window = void 0; - // check if window exists and actually is the global - var hasDom = typeof self === 'object' && self !== null && self.Object === Object && typeof Window !== 'undefined' && self.constructor === Window && typeof document === 'object' && document !== null && self.document === document && typeof location === 'object' && location !== null && self.location === location && typeof history === 'object' && history !== null && self.history === history && typeof navigator === 'object' && navigator !== null && self.navigator === navigator && typeof navigator.userAgent === 'string'; - _exports.hasDOM = hasDom; - var window = hasDom ? self : null; - _exports.window = window; - var location$1 = hasDom ? self.location : null; - _exports.location = location$1; - var history$1 = hasDom ? self.history : null; - _exports.history = history$1; - var userAgent = hasDom ? self.navigator.userAgent : 'Lynx (textmode)'; - _exports.userAgent = userAgent; - var isChrome = hasDom ? typeof chrome === 'object' && !(typeof opera === 'object') : false; - _exports.isChrome = isChrome; - var isFirefox = hasDom ? typeof InstallTrigger !== 'undefined' : false; - _exports.isFirefox = isFirefox; - var isIE = hasDom ? typeof MSInputMethodContext !== 'undefined' && typeof documentMode !== 'undefined' : false; - _exports.isIE = isIE; -}); -define("@ember/-internals/environment/index", ["exports"], function (_exports) { - "use strict"; - - Object.defineProperty(_exports, "__esModule", { - value: true - }); - _exports.getLookup = getLookup; - _exports.setLookup = setLookup; - _exports.getENV = getENV; - _exports.ENV = _exports.context = _exports.global = void 0; - - // from lodash to catch fake globals - function checkGlobal(value) { - return value && value.Object === Object ? value : undefined; - } // element ids can ruin global miss checks - - - function checkElementIdShadowing(value) { - return value && value.nodeType === undefined ? value : undefined; - } // export real global - - - var global$1 = checkGlobal(checkElementIdShadowing(typeof global === 'object' && global)) || checkGlobal(typeof self === 'object' && self) || checkGlobal(typeof window === 'object' && window) || typeof mainContext !== 'undefined' && mainContext || // set before strict mode in Ember loader/wrapper - new Function('return this')(); // eval outside of strict mode - - _exports.global = global$1; - - var context = function (global, Ember) { - return Ember === undefined ? { - imports: global, - exports: global, - lookup: global - } : { - // import jQuery - imports: Ember.imports || global, - // export Ember - exports: Ember.exports || global, - // search for Namespaces - lookup: Ember.lookup || global - }; - }(global$1, global$1.Ember); - - _exports.context = context; - - function getLookup() { - return context.lookup; - } - - function setLookup(value) { - context.lookup = value; - } - /** - The hash of environment variables used to control various configuration - settings. To specify your own or override default settings, add the - desired properties to a global hash named `EmberENV` (or `ENV` for - backwards compatibility with earlier versions of Ember). The `EmberENV` - hash must be created before loading Ember. - - @class EmberENV - @type Object - @public - */ - - - var ENV = { - ENABLE_OPTIONAL_FEATURES: false, - - /** - Determines whether Ember should add to `Array` - native object prototypes, a few extra methods in order to provide a more - friendly API. - We generally recommend leaving this option set to true however, if you need - to turn it off, you can add the configuration property - `EXTEND_PROTOTYPES` to `EmberENV` and set it to `false`. - Note, when disabled (the default configuration for Ember Addons), you will - instead have to access all methods and functions from the Ember - namespace. - @property EXTEND_PROTOTYPES - @type Boolean - @default true - @for EmberENV - @public - */ - EXTEND_PROTOTYPES: { - Array: true - }, - - /** - The `LOG_STACKTRACE_ON_DEPRECATION` property, when true, tells Ember to log - a full stack trace during deprecation warnings. - @property LOG_STACKTRACE_ON_DEPRECATION - @type Boolean - @default true - @for EmberENV - @public - */ - LOG_STACKTRACE_ON_DEPRECATION: true, - - /** - The `LOG_VERSION` property, when true, tells Ember to log versions of all - dependent libraries in use. - @property LOG_VERSION - @type Boolean - @default true - @for EmberENV - @public - */ - LOG_VERSION: true, - RAISE_ON_DEPRECATION: false, - STRUCTURED_PROFILE: false, - - /** - Whether to insert a `
` wrapper around the - application template. See RFC #280. - This is not intended to be set directly, as the implementation may change in - the future. Use `@ember/optional-features` instead. - @property _APPLICATION_TEMPLATE_WRAPPER - @for EmberENV - @type Boolean - @default true - @private - */ - _APPLICATION_TEMPLATE_WRAPPER: true, - - /** - Whether to use Glimmer Component semantics (as opposed to the classic "Curly" - components semantics) for template-only components. See RFC #278. - This is not intended to be set directly, as the implementation may change in - the future. Use `@ember/optional-features` instead. - @property _TEMPLATE_ONLY_GLIMMER_COMPONENTS - @for EmberENV - @type Boolean - @default false - @private - */ - _TEMPLATE_ONLY_GLIMMER_COMPONENTS: false, - - /** - Whether to perform extra bookkeeping needed to make the `captureRenderTree` - API work. - This has to be set before the ember JavaScript code is evaluated. This is - usually done by setting `window.EmberENV = { _DEBUG_RENDER_TREE: true };` - before the "vendor" `'; - }; - - return EventedTokenizer; - }(); - - _exports.EventedTokenizer = EventedTokenizer; - - var Tokenizer = - /** @class */ - function () { - function Tokenizer(entityParser, options) { - if (options === void 0) { - options = {}; - } - - this.options = options; - this.token = null; - this.startLine = 1; - this.startColumn = 0; - this.tokens = []; - this.tokenizer = new EventedTokenizer(this, entityParser, options.mode); - this._currentAttribute = undefined; - } - - Tokenizer.prototype.tokenize = function (input) { - this.tokens = []; - this.tokenizer.tokenize(input); - return this.tokens; - }; - - Tokenizer.prototype.tokenizePart = function (input) { - this.tokens = []; - this.tokenizer.tokenizePart(input); - return this.tokens; - }; - - Tokenizer.prototype.tokenizeEOF = function () { - this.tokens = []; - this.tokenizer.tokenizeEOF(); - return this.tokens[0]; - }; - - Tokenizer.prototype.reset = function () { - this.token = null; - this.startLine = 1; - this.startColumn = 0; - }; - - Tokenizer.prototype.current = function () { - var token = this.token; - - if (token === null) { - throw new Error('token was unexpectedly null'); - } - - if (arguments.length === 0) { - return token; - } - - for (var i = 0; i < arguments.length; i++) { - if (token.type === arguments[i]) { - return token; - } - } - - throw new Error("token type was unexpectedly " + token.type); - }; - - Tokenizer.prototype.push = function (token) { - this.token = token; - this.tokens.push(token); - }; - - Tokenizer.prototype.currentAttribute = function () { - return this._currentAttribute; - }; - - Tokenizer.prototype.addLocInfo = function () { - if (this.options.loc) { - this.current().loc = { - start: { - line: this.startLine, - column: this.startColumn - }, - end: { - line: this.tokenizer.line, - column: this.tokenizer.column - } - }; - } - - this.startLine = this.tokenizer.line; - this.startColumn = this.tokenizer.column; - }; // Data - - - Tokenizer.prototype.beginDoctype = function () { - this.push({ - type: "Doctype" - /* Doctype */ - , - name: '' - }); - }; - - Tokenizer.prototype.appendToDoctypeName = function (char) { - this.current("Doctype" - /* Doctype */ - ).name += char; - }; - - Tokenizer.prototype.appendToDoctypePublicIdentifier = function (char) { - var doctype = this.current("Doctype" - /* Doctype */ - ); - - if (doctype.publicIdentifier === undefined) { - doctype.publicIdentifier = char; - } else { - doctype.publicIdentifier += char; - } - }; - - Tokenizer.prototype.appendToDoctypeSystemIdentifier = function (char) { - var doctype = this.current("Doctype" - /* Doctype */ - ); - - if (doctype.systemIdentifier === undefined) { - doctype.systemIdentifier = char; - } else { - doctype.systemIdentifier += char; - } - }; - - Tokenizer.prototype.endDoctype = function () { - this.addLocInfo(); - }; - - Tokenizer.prototype.beginData = function () { - this.push({ - type: "Chars" - /* Chars */ - , - chars: '' - }); - }; - - Tokenizer.prototype.appendToData = function (char) { - this.current("Chars" - /* Chars */ - ).chars += char; - }; - - Tokenizer.prototype.finishData = function () { - this.addLocInfo(); - }; // Comment - - - Tokenizer.prototype.beginComment = function () { - this.push({ - type: "Comment" - /* Comment */ - , - chars: '' - }); - }; - - Tokenizer.prototype.appendToCommentData = function (char) { - this.current("Comment" - /* Comment */ - ).chars += char; - }; - - Tokenizer.prototype.finishComment = function () { - this.addLocInfo(); - }; // Tags - basic - - - Tokenizer.prototype.tagOpen = function () {}; - - Tokenizer.prototype.beginStartTag = function () { - this.push({ - type: "StartTag" - /* StartTag */ - , - tagName: '', - attributes: [], - selfClosing: false - }); - }; - - Tokenizer.prototype.beginEndTag = function () { - this.push({ - type: "EndTag" - /* EndTag */ - , - tagName: '' - }); - }; - - Tokenizer.prototype.finishTag = function () { - this.addLocInfo(); - }; - - Tokenizer.prototype.markTagAsSelfClosing = function () { - this.current("StartTag" - /* StartTag */ - ).selfClosing = true; - }; // Tags - name - - - Tokenizer.prototype.appendToTagName = function (char) { - this.current("StartTag" - /* StartTag */ - , "EndTag" - /* EndTag */ - ).tagName += char; - }; // Tags - attributes - - - Tokenizer.prototype.beginAttribute = function () { - this._currentAttribute = ['', '', false]; - }; - - Tokenizer.prototype.appendToAttributeName = function (char) { - this.currentAttribute()[0] += char; - }; - - Tokenizer.prototype.beginAttributeValue = function (isQuoted) { - this.currentAttribute()[2] = isQuoted; - }; - - Tokenizer.prototype.appendToAttributeValue = function (char) { - this.currentAttribute()[1] += char; - }; - - Tokenizer.prototype.finishAttributeValue = function () { - this.current("StartTag" - /* StartTag */ - ).attributes.push(this._currentAttribute); - }; - - Tokenizer.prototype.reportSyntaxError = function (message) { - this.current().syntaxError = message; - }; - - return Tokenizer; - }(); - - _exports.Tokenizer = Tokenizer; - - function tokenize(input, options) { - var tokenizer = new Tokenizer(new EntityParser(namedCharRefs), options); - return tokenizer.tokenize(input); - } -}); -(function (m) { if (typeof module === "object" && module.exports) { module.exports = m } }(require("ember-template-compiler"))); -}()); -//# sourceMappingURL=ember-template-compiler.map diff --git a/ember/ember-5.5.0.prod.js b/ember/ember-5.5.0.prod.js deleted file mode 100644 index 4e46fe3..0000000 --- a/ember/ember-5.5.0.prod.js +++ /dev/null @@ -1,3440 +0,0 @@ -window.EmberENV=function(e,t){for(var r in t)e[r]=t[r] -return e}(window.EmberENV||{},{EXTEND_PROTOTYPES:!1,FEATURES:{},_APPLICATION_TEMPLATE_WRAPPER:!1,_DEFAULT_ASYNC_OBSERVERS:!0,_JQUERY_INTEGRATION:!1,_TEMPLATE_ONLY_GLIMMER_COMPONENTS:!0}) -var loader,define,requireModule,require,requirejs,runningTests=!1 -if(function(e){"use strict" -function t(){var e=Object.create(null) -return e.__=void 0,delete e.__,e}var r={loader:loader,define:define,requireModule:requireModule,require:require,requirejs:requirejs} -requirejs=require=requireModule=function(e){for(var t=[],r=l(e,"(require)",t),n=t.length-1;n>=0;n--)t[n].exports() -return r.module.exports},loader={noConflict:function(t){var n,i -for(n in t)t.hasOwnProperty(n)&&r.hasOwnProperty(n)&&(i=t[n],e[i]=e[n],e[n]=r[n])},makeDefaultExport:!0} -var n=t(),i=(t(),0) -var a=["require","exports","module"] -function s(e,t,r,n){this.uuid=i++,this.id=e,this.deps=!t.length&&r.length?a:t,this.module={exports:{}},this.callback=r,this.hasExportsAsDep=!1,this.isAlias=n,this.reified=new Array(t.length),this.state="new"}function o(){}function u(e){this.id=e}function l(e,t,r){for(var i=n[e]||n[e+"/index"];i&&i.isAlias;)i=n[i.id]||n[i.id+"/index"] -return i||function(e,t){throw new Error("Could not find module `"+e+"` imported from `"+t+"`")}(e,t),r&&"pending"!==i.state&&"finalized"!==i.state&&(i.findDeps(r),r.push(i)),i}function c(e,t){if("."!==e.charAt(0))return e -for(var r=e.split("/"),n=t.split("/").slice(0,-1),i=0,a=r.length;i{if("object"==typeof e&&null!==e){for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&"EXTEND_PROTOTYPES"!==t&&"EMBER_LOAD_HOOKS"!==t){var r=a[t] -!0===r?a[t]=!1!==e[t]:!1===r&&(a[t]=!0===e[t])}var{EXTEND_PROTOTYPES:n}=e -void 0!==n&&(a.EXTEND_PROTOTYPES.Array="object"==typeof n&&null!==n?!1!==n.Array:!1!==n) -var{EMBER_LOAD_HOOKS:i}=e -if("object"==typeof i&&null!==i)for(var s in i)if(Object.prototype.hasOwnProperty.call(i,s)){var o=i[s] -Array.isArray(o)&&(a.EMBER_LOAD_HOOKS[s]=o.filter((e=>"function"==typeof e)))}var{FEATURES:u}=e -if("object"==typeof u&&null!==u)for(var l in u)Object.prototype.hasOwnProperty.call(u,l)&&(a.FEATURES[l]=!0===u[l]) -0}})(n.EmberENV)})),e("@ember/-internals/error-handling/index",["exports"],(function(e){"use strict" -var t -Object.defineProperty(e,"__esModule",{value:!0}),e.getDispatchOverride=function(){return r},e.getOnerror=function(){return t},e.onErrorTarget=void 0,e.setDispatchOverride=function(e){r=e},e.setOnerror=function(e){t=e} -e.onErrorTarget={get onerror(){return t}} -var r=null})),e("@ember/-internals/glimmer/index",["exports","@glimmer/opcode-compiler","@ember/-internals/browser-environment","@ember/debug","@ember/object","@glimmer/reference","@glimmer/validator","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/utils","@glimmer/manager","@ember/-internals/views","@ember/engine","@ember/engine/instance","@ember/instrumentation","@ember/service","@ember/-internals/runtime","@glimmer/runtime","@glimmer/util","@ember/-internals/string","@glimmer/destroyable","@ember/runloop","@ember/object/-internals","@ember/-internals/container","@ember/-internals/environment","@glimmer/program","rsvp","@glimmer/node","@glimmer/global-context","@ember/array/-internals","@ember/-internals/glimmer","@ember/array","@ember/routing/-internals"],(function(e,t,r,n,i,a,s,o,u,l,c,d,h,p,f,m,v,g,b,y,_,w,E,O,R,T,C,P,k,x,A,S,j){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.Component=void 0,Object.defineProperty(e,"DOMChanges",{enumerable:!0,get:function(){return g.DOMChanges}}),Object.defineProperty(e,"DOMTreeConstruction",{enumerable:!0,get:function(){return g.DOMTreeConstruction}}),e.LinkTo=e.Input=e.Helper=void 0,Object.defineProperty(e,"NodeDOMTreeConstruction",{enumerable:!0,get:function(){return P.NodeDOMTreeConstruction}}),e.Textarea=e.SafeString=e.RootTemplate=e.Renderer=e.OutletView=void 0,e._resetRenderers=function(){pr.length=0},e.componentCapabilities=void 0,e.escapeExpression=function(e){var t -if("string"!=typeof e){if(pt(e))return e.toHTML() -if(null==e)return"" -if(!e)return String(e) -t=String(e)}else t=e -if(!ct.test(t))return t -return t.replace(dt,ht)},e.getTemplate=function(e){if(Object.prototype.hasOwnProperty.call(br,e))return br[e]},e.getTemplates=function(){return br},e.hasTemplate=function(e){return Object.prototype.hasOwnProperty.call(br,e)},e.helper=ot,e.htmlSafe=function(e){null==e?e="":"string"!=typeof e&&(e=String(e)) -return new ut(e)},e.isHTMLSafe=pt,Object.defineProperty(e,"isSerializationFirstNode",{enumerable:!0,get:function(){return g.isSerializationFirstNode}}),e.modifierCapabilities=void 0,e.renderSettled=function(){null===mr&&(mr=C.default.defer(),(0,w._getCurrentRunLoop)()||w._backburner.schedule("actions",null,dr)) -return mr.promise},e.setComponentManager=function(e,t){return(0,c.setComponentManager)(e,t)},e.setTemplate=function(e,t){return br[e]=t},e.setTemplates=function(e){br=e},e.setupApplicationRegistry=function(e){e.register("service:-dom-builder",{create(e){var t=(0,u.getOwner)(e) -switch(t.lookup("-environment:main")._renderMode){case"serialize":return P.serializeBuilder.bind(null) -case"rehydrate":return g.rehydrationBuilder.bind(null) -default:return g.clientBuilder.bind(null)}}}),e.register(O.privatize`template:-root`,M),e.register("renderer:-dom",gr)},e.setupEngineRegistry=function(e){e.optionsForType("template",{instantiate:!1}),e.register("view:-outlet",lr),e.register("template:-outlet",yr),e.optionsForType("helper",{instantiate:!1}),e.register("component:input",ee),e.register("component:link-to",ge),e.register("component:textarea",we),R.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS||e.register(O.privatize`component:-default`,Ze)},Object.defineProperty(e,"template",{enumerable:!0,get:function(){return t.templateFactory}}),Object.defineProperty(e,"templateCacheCounters",{enumerable:!0,get:function(){return t.templateCacheCounters}}),e.uniqueId=Vt -var M=e.RootTemplate=(0,t.templateFactory)({id:"9BtKrod8",block:'[[[46,[30,0],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/root.hbs",isStrictMode:!1}),N=(0,t.templateFactory)({id:"OGSIkgXP",block:'[[[11,"input"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,4,[30,0,["type"]]],[16,"checked",[30,0,["checked"]]],[16,2,[30,0,["value"]]],[4,[38,0],["change",[30,0,["change"]]],null],[4,[38,0],["input",[30,0,["input"]]],null],[4,[38,0],["keyup",[30,0,["keyUp"]]],null],[4,[38,0],["paste",[30,0,["valueDidChange"]]],null],[4,[38,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,["on"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/input.hbs",isStrictMode:!1}) -function I(){}class D{static toString(){return"internal component"}constructor(e,t,r){this.owner=e,this.args=t,this.caller=r,(0,u.setOwner)(this,e)}get id(){return(0,l.guidFor)(this)}get class(){return"ember-view"}validateArguments(){for(var e of Object.keys(this.args.named))this.isSupportedArgument(e)||this.onUnsupportedArgument(e)}named(e){var t=this.args.named[e] -return t?(0,a.valueForRef)(t):void 0}positional(e){var t=this.args.positional[e] -return t?(0,a.valueForRef)(t):void 0}listenerFor(e){var t=this.named(e) -return t||I}isSupportedArgument(e){return!1}onUnsupportedArgument(e){}toString(){return`<${this.constructor}:${(0,l.guidFor)(this)}>`}}var F=new WeakMap -function L(e,t){var r={create(){throw(0,n.assert)("Use constructor instead of create")},toString:()=>e.toString()} -return F.set(r,e),(0,c.setInternalComponentManager)(B,r),(0,c.setComponentTemplate)(t,r),r}var U={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!1,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -var B=new class{getCapabilities(){return U}create(e,t,r,n,i,o){var u,l=new(u=t,F.get(u))(e,r.capture(),(0,a.valueForRef)(o)) -return(0,s.untrack)(l.validateArguments.bind(l)),l}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}getDebugName(e){return e.toString()}getSelf(e){return(0,a.createConstRef)(e,"this")}getDestroyable(e){return e}},$=function(e,t,r,n){var i,a=arguments.length,s=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) -else for(var o=e.length-1;o>=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,r,s):i(t,r))||s) -return a>3&&s&&Object.defineProperty(t,r,s),s},z=Object.freeze({}) -function V(e){return function(e){return e.target}(e).value}function H(e){return void 0===e?new q(void 0):(0,a.isConstRef)(e)?new q((0,a.valueForRef)(e)):(0,a.isUpdatableRef)(e)?new W(e):new G(e)}class q{constructor(e){this.value=e}get(){return this.value}set(e){this.value=e}}$([o.tracked],q.prototype,"value",void 0) -class W{constructor(e){this.reference=e}get(){return(0,a.valueForRef)(this.reference)}set(e){(0,a.updateRef)(this.reference,e)}}class G{constructor(e){this.lastUpstreamValue=z,this.upstream=new W(e)}get(){var e=this.upstream.get() -return e!==this.lastUpstreamValue&&(this.lastUpstreamValue=e,this.local=new q(e)),this.local.get()}set(e){this.local.set(e)}}class Y extends D{constructor(){super(...arguments),this._value=H(this.args.named.value)}validateArguments(){super.validateArguments()}get value(){return this._value.get()}set value(e){this._value.set(e)}valueDidChange(e){this.value=V(e)}change(e){this.valueDidChange(e)}input(e){this.valueDidChange(e)}keyUp(e){switch(e.key){case"Enter":this.listenerFor("enter")(e),this.listenerFor("insert-newline")(e) -break -case"Escape":this.listenerFor("escape-press")(e)}}listenerFor(e){var t,r=super.listenerFor(e) -return this.isVirtualEventListener(e,r)?(t=r,e=>t(V(e),e)):r}isVirtualEventListener(e,t){return-1!==["enter","insert-newline","escape-press"].indexOf(e)}}$([i.action],Y.prototype,"valueDidChange",null),$([i.action],Y.prototype,"keyUp",null) -var Q,K=function(e,t,r,n){var i,a=arguments.length,s=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) -else for(var o=e.length-1;o>=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,r,s):i(t,r))||s) -return a>3&&s&&Object.defineProperty(t,r,s),s} -if(r.hasDOM){var J=Object.create(null),X=document.createElement("input") -J[""]=!1,J.text=!0,J.checkbox=!0,Q=e=>{var t=J[e] -if(void 0===t){try{X.type=e,t=X.type===e}catch(r){t=!1}finally{X.type="text"}J[e]=t}return t}}else Q=e=>""!==e -class Z extends Y{constructor(){super(...arguments),this._checked=H(this.args.named.checked)}static toString(){return"Input"}get class(){return this.isCheckbox?"ember-checkbox ember-view":"ember-text-field ember-view"}get type(){var e=this.named("type") -return null==e?"text":Q(e)?e:"text"}get isCheckbox(){return"checkbox"===this.named("type")}get checked(){return this.isCheckbox?this._checked.get():void 0}set checked(e){this._checked.set(e)}change(e){this.isCheckbox?this.checkedDidChange(e):super.change(e)}input(e){this.isCheckbox||super.input(e)}checkedDidChange(e){var t=e.target -this.checked=t.checked}isSupportedArgument(e){return-1!==["type","value","checked","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}K([i.action],Z.prototype,"change",null),K([i.action],Z.prototype,"input",null),K([i.action],Z.prototype,"checkedDidChange",null) -var ee=e.Input=L(Z,N),te=(0,t.templateFactory)({id:"CVwkBtGh",block:'[[[11,3],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[16,"role",[30,0,["role"]]],[16,"title",[30,0,["title"]]],[16,"rel",[30,0,["rel"]]],[16,"tabindex",[30,0,["tabindex"]]],[16,"target",[30,0,["target"]]],[17,1],[16,6,[30,0,["href"]]],[4,[38,0],["click",[30,0,["click"]]],null],[12],[18,2,null],[13]],["&attrs","&default"],false,["on","yield"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/link-to.hbs",isStrictMode:!1}),re=function(e,t,r,n){var i,a=arguments.length,s=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) -else for(var o=e.length-1;o>=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,r,s):i(t,r))||s) -return a>3&&s&&Object.defineProperty(t,r,s),s},ne=[],ie={} -function ae(e){return null==e}function se(e){return!ae(e)}function oe(e){return"object"==typeof e&&null!==e&&!0===e.isQueryParams}(0,n.debugFreeze)(ne),(0,n.debugFreeze)(ie) -class ue extends D{constructor(){super(...arguments),this.currentRouteCache=(0,s.createCache)((()=>((0,s.consumeTag)((0,s.tagFor)(this.routing,"currentState")),(0,s.untrack)((()=>this.routing.currentRouteName)))))}static toString(){return"LinkTo"}validateArguments(){super.validateArguments()}get class(){var e="ember-view" -return this.isActive?(e+=this.classFor("active"),!1===this.willBeActive&&(e+=" ember-transitioning-out")):this.willBeActive&&(e+=" ember-transitioning-in"),this.isLoading&&(e+=this.classFor("loading")),this.isDisabled&&(e+=this.classFor("disabled")),e}get href(){if(this.isLoading)return"#" -var{routing:e,route:t,models:r,query:n}=this -return(0,s.consumeTag)((0,s.tagFor)(e,"currentState")),e.generateURL(t,r,n)}click(e){if((0,d.isSimpleClick)(e)){var t=e.currentTarget -if((""===t.target||"_self"===t.target)&&(this.preventDefault(e),!this.isDisabled&&!this.isLoading)){var{routing:r,route:n,models:i,query:a,replace:s}=this,o={routeName:n,queryParams:a,transition:void 0};(0,f.flaggedInstrument)("interaction.link-to",o,(()=>{o.transition=r.transitionTo(n,i,a,s)}))}}}get route(){if("route"in this.args.named){var e=this.named("route") -return e&&this.namespaceRoute(e)}return this.currentRoute}get currentRoute(){return(0,s.getValue)(this.currentRouteCache)}get models(){if("models"in this.args.named){var e=this.named("models") -return e}return"model"in this.args.named?[this.named("model")]:ne}get query(){if("query"in this.args.named){var e=this.named("query") -return{...e}}return ie}get replace(){return!0===this.named("replace")}get isActive(){return this.isActiveForState(this.routing.currentState)}get willBeActive(){var e=this.routing.currentState,t=this.routing.targetState -return e===t?null:this.isActiveForState(t)}get isLoading(){return ae(this.route)||this.models.some((e=>ae(e)))}get isDisabled(){return Boolean(this.named("disabled"))}get isEngine(){var e=this.owner -return e instanceof p.default&&void 0!==(0,h.getEngineParent)(e)}get engineMountPoint(){var e=this.owner -return e instanceof p.default?e.mountPoint:void 0}classFor(e){var t=this.named(`${e}Class`) -return!0===t||ae(t)?` ${e}`:t?` ${t}`:""}namespaceRoute(e){var{engineMountPoint:t}=this -return void 0===t?e:"application"===e?t:`${t}.${e}`}isActiveForState(e){if(!se(e))return!1 -if(this.isLoading)return!1 -var t=this.named("current-when") -if("boolean"==typeof t)return t -if("string"==typeof t){var{models:r,routing:n}=this -return t.split(" ").some((t=>n.isActiveForRoute(r,void 0,this.namespaceRoute(t),e)))}var{route:i,models:a,query:s,routing:o}=this -return o.isActiveForRoute(a,s,i,e)}preventDefault(e){e.preventDefault()}isSupportedArgument(e){return-1!==["route","model","models","query","replace","disabled","current-when","activeClass","loadingClass","disabledClass"].indexOf(e)||super.isSupportedArgument(e)}}re([(0,m.service)("-routing")],ue.prototype,"routing",void 0),re([i.action],ue.prototype,"click",null) -var{prototype:le}=ue,ce=(e,t)=>e?Object.getOwnPropertyDescriptor(e,t)||ce(Object.getPrototypeOf(e),t):null,de=le.onUnsupportedArgument -Object.defineProperty(le,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(e){"href"===e||de.call(this,e)}}) -var he=ce(le,"models"),pe=he.get -Object.defineProperty(le,"models",{configurable:!0,enumerable:!1,get:function(){var e=pe.call(this) -return e.length>0&&!("query"in this.args.named)&&oe(e[e.length-1])&&(e=e.slice(0,-1)),e}}) -var fe=ce(le,"query"),me=fe.get -Object.defineProperty(le,"query",{configurable:!0,enumerable:!1,get:function(){if("query"in this.args.named){var e=me.call(this) -return oe(e)?e.values??ie:e}var t=pe.call(this) -if(t.length>0){var r=t[t.length-1] -if(oe(r)&&null!==r.values)return r.values}return ie}}) -var ve=le.onUnsupportedArgument -Object.defineProperty(le,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(e){"params"!==e&&ve.call(this,e)}}) -var ge=e.LinkTo=L(ue,te),be=(0,t.templateFactory)({id:"OpzctQXz",block:'[[[11,"textarea"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,2,[30,0,["value"]]],[4,[38,0],["change",[30,0,["change"]]],null],[4,[38,0],["input",[30,0,["input"]]],null],[4,[38,0],["keyup",[30,0,["keyUp"]]],null],[4,[38,0],["paste",[30,0,["valueDidChange"]]],null],[4,[38,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,["on"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/textarea.hbs",isStrictMode:!1}),ye=function(e,t,r,n){var i,a=arguments.length,s=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) -else for(var o=e.length-1;o>=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,r,s):i(t,r))||s) -return a>3&&s&&Object.defineProperty(t,r,s),s} -class _e extends Y{static toString(){return"Textarea"}get class(){return"ember-text-area ember-view"}change(e){super.change(e)}input(e){super.input(e)}isSupportedArgument(e){return-1!==["type","value","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}ye([i.action],_e.prototype,"change",null),ye([i.action],_e.prototype,"input",null) -var we=e.Textarea=L(_e,be) -function Ee(e){return"function"==typeof e}function Oe(e,t){return"attrs"===t[0]&&(t.shift(),1===t.length)?(0,a.childRefFor)(e,t[0]):(0,a.childRefFromParts)(e,t)}function Re(e){var t=e.indexOf(":") -if(-1===t)return[e,e,!0] -var r=e.substring(0,t),n=e.substring(t+1) -return[r,n,!1]}function Te(e,t,r,n){var[i,s,u]=r -if("id"!==s){var l=i.indexOf(".")>-1,c=l?Oe(t,i.split(".")):(0,a.childRefFor)(t,i) -n.setAttribute(s,c,!1,null)}else{var d=(0,o.get)(e,i) -null==d&&(d=e.elementId) -var h=(0,a.createPrimitiveRef)(d) -n.setAttribute("id",h,!0,null)}}function Ce(e,t,r){var n=t.split(":"),[i,s,o]=n -if(""===i)r.setAttribute("class",(0,a.createPrimitiveRef)(s),!0,null) -else{var u,l=i.indexOf(".")>-1,c=l?i.split("."):[],d=l?Oe(e,c):(0,a.childRefFor)(e,i) -u=void 0===s?Pe(d,l?c[c.length-1]:i):function(e,t,r){return(0,a.createComputeRef)((()=>(0,a.valueForRef)(e)?t:r))}(d,s,o),r.setAttribute("class",u,!1,null)}}function Pe(e,t){var r -return(0,a.createComputeRef)((()=>{var n=(0,a.valueForRef)(e) -return!0===n?r||(r=(0,y.dasherize)(t)):n||0===n?String(n):null}))}function ke(){}class xe{constructor(e,t,r,n,i,o){this.component=e,this.args=t,this.argsTag=r,this.finalizer=n,this.hasWrappedElement=i,this.isInteractive=o,this.classRef=null,this.classRef=null,this.argsRevision=null===t?0:(0,s.valueForTag)(r),this.rootRef=(0,a.createConstRef)(e,"this"),(0,_.registerDestructor)(this,(()=>this.willDestroy()),!0),(0,_.registerDestructor)(this,(()=>this.component.destroy()))}willDestroy(){var{component:e,isInteractive:t}=this -if(t){(0,s.beginUntrackFrame)(),e.trigger("willDestroyElement"),e.trigger("willClearRender"),(0,s.endUntrackFrame)() -var r=(0,d.getViewElement)(e) -r&&((0,d.clearElementView)(r),(0,d.clearViewElement)(e))}e.renderer.unregister(e)}finalize(){var{finalizer:e}=this -e(),this.finalizer=ke}}function Ae(e){return(0,c.setInternalHelperManager)(e,{})}var Se=new b._WeakSet,je=Ae((e=>{var t,{named:r,positional:n}=e,[i,s,...u]=n,l=s.debugLabel,c="target"in r?r.target:i,d=function(e,t){var r,n -t.length>0&&(r=e=>t.map(a.valueForRef).concat(e)) -e&&(n=t=>{var r=(0,a.valueForRef)(e) -return r&&t.length>0&&(t[0]=(0,o.get)(t[0],r)),t}) -return r&&n?e=>n(r(e)):r||n||Me}("value"in r&&r.value||!1,u) -return t=(0,a.isInvokableRef)(s)?Ne(s,s,Ie,d,l):function(e,t,r,n,i){0 -return(...s)=>Ne(e,(0,a.valueForRef)(t),(0,a.valueForRef)(r),n,i)(...s)}((0,a.valueForRef)(i),c,s,d,l),Se.add(t),(0,a.createUnboundRef)(t,"(result of an `action` helper)")})) -function Me(e){return e}function Ne(e,t,r,n,i){var a,s -return"string"==typeof r?(a=t,s=t.actions&&t.actions[r]):"function"==typeof r&&(a=e,s=r),(...e)=>{var t={target:a,args:e,label:"@glimmer/closure-action"} -return(0,f.flaggedInstrument)("interaction.ember-action",t,(()=>(0,w.join)(a,s,...n(e))))}}function Ie(e){(0,a.updateRef)(this,e)}function De(e){var t=Object.create(null),r=Object.create(null) -for(var n in r[Ue]=e,e){var i=e[n],s=(0,a.valueForRef)(i),o="function"==typeof s&&Se.has(s);(0,a.isUpdatableRef)(i)&&!o?t[n]=new Le(i,s):t[n]=s,r[n]=s}return r.attrs=t,r}var Fe=Symbol("REF") -class Le{constructor(e,t){this[d.MUTABLE_CELL]=!0,this[Fe]=e,this.value=t}update(e){(0,a.updateRef)(this[Fe],e)}}var Ue=(0,l.enumerableSymbol)("ARGS"),Be=(0,l.enumerableSymbol)("HAS_BLOCK"),$e=Symbol("DIRTY_TAG"),ze=Symbol("IS_DISPATCHING_ATTRS"),Ve=Symbol("BOUNDS"),He=(0,a.createPrimitiveRef)("ember-view");(0,n.debugFreeze)([]) -class qe{templateFor(e){var t,{layout:r,layoutName:n}=e,i=(0,u.getOwner)(e) -if(void 0===r){if(void 0===n)return null -var a=i.lookup(`template:${n}`) -t=a}else{if(!Ee(r))return null -t=r}return(0,b.unwrapTemplate)(t(i)).asWrappedLayout()}getDynamicLayout(e){return this.templateFor(e.component)}getTagName(e){var{component:t,hasWrappedElement:r}=e -return r?t&&t.tagName||"div":null}getCapabilities(){return Ye}prepareArgs(e,t){if(t.named.has("__ARGS__")){var{__ARGS__:r,...n}=t.named.capture(),i=(0,a.valueForRef)(r) -return{positional:i.positional,named:{...n,...i.named}}}var s,{positionalParams:o}=e.class??e -if(null==o||0===t.positional.length)return null -if("string"==typeof o){var u=t.positional.capture() -s={[o]:(0,a.createComputeRef)((()=>(0,g.reifyPositional)(u)))},Object.assign(s,t.named.capture())}else{if(!(Array.isArray(o)&&o.length>0))return null -var l=Math.min(o.length,t.positional.length) -s={},Object.assign(s,t.named.capture()) -for(var c=0;c{o.setAttribute("class",(0,a.createPrimitiveRef)(e),!1,null)})),h&&h.length&&h.forEach((e=>{Ce(n,e,o)})),o.setAttribute("class",He,!1,null),"ariaRole"in e&&o.setAttribute("role",(0,a.childRefFor)(n,"ariaRole"),!1,null),e._transitionTo("hasElement"),r&&((0,s.beginUntrackFrame)(),e.trigger("willInsertElement"),(0,s.endUntrackFrame)())}didRenderLayout(e,t){e.component[Ve]=t,e.finalize()}didCreate({component:e,isInteractive:t}){t&&(e._transitionTo("inDOM"),e.trigger("didInsertElement"),e.trigger("didRender"))}update(e){var{component:t,args:r,argsTag:n,argsRevision:i,isInteractive:a}=e -if(e.finalizer=(0,f._instrumentStart)("render.component",Ge,t),(0,s.beginUntrackFrame)(),null!==r&&!(0,s.validateTag)(n,i)){(0,s.beginTrackFrame)() -var o=De(r) -n=e.argsTag=(0,s.endTrackFrame)(),e.argsRevision=(0,s.valueForTag)(n),t[ze]=!0,t.setProperties(o),t[ze]=!1,t.trigger("didUpdateAttrs"),t.trigger("didReceiveAttrs")}a&&(t.trigger("willUpdate"),t.trigger("willRender")),(0,s.endUntrackFrame)(),(0,s.consumeTag)(n),(0,s.consumeTag)(t[$e])}didUpdateLayout(e){e.finalize()}didUpdate({component:e,isInteractive:t}){t&&(e.trigger("didUpdate"),e.trigger("didRender"))}getDestroyable(e){return e}}function We(e){return e.instrumentDetails({initialRender:!0})}function Ge(e){return e.instrumentDetails({initialRender:!1})}var Ye={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!0,hasSubOwner:!1},Qe=new qe -function Ke(e){return e===Qe}var Je,Xe=new WeakMap -class Ze extends(d.CoreView.extend(d.ChildViewsSupport,d.ViewStateSupport,d.ClassNamesSupport,v.TargetActionSupport,d.ActionSupport,d.ViewMixin,{didReceiveAttrs(){},didRender(){},didUpdate(){},didUpdateAttrs(){},willRender(){},willUpdate(){}})){constructor(){super(...arguments),this.isComponent=!0}init(e){super.init(e),this._superRerender=this.rerender,this.rerender=this._rerender,this[ze]=!1,this[$e]=(0,s.createTag)(),this[Ve]=null -var t=this._dispatcher -if(t){var r=Xe.get(t) -r||(r=new WeakSet,Xe.set(t,r)) -var n=Object.getPrototypeOf(this) -if(!r.has(n))t.lazyEvents.forEach(((e,r)=>{null!==e&&"function"==typeof this[e]&&t.setupHandlerForBrowserEvent(r)})),r.add(n)}}get _dispatcher(){if(void 0===this.__dispatcher){var e=(0,u.getOwner)(this) -if(e.lookup("-environment:main").isInteractive){var t=e.lookup("event_dispatcher:main") -this.__dispatcher=t}else this.__dispatcher=null}return this.__dispatcher}on(e,t,r){return this._dispatcher?.setupHandlerForEmberEvent(e),super.on(e,t,r)}_rerender(){(0,s.dirtyTag)(this[$e]),this._superRerender()}[o.PROPERTY_DID_CHANGE](e,t){if(!this[ze]){var r=this[Ue],n=void 0!==r?r[e]:void 0 -void 0!==n&&(0,a.isUpdatableRef)(n)&&(0,a.updateRef)(n,2===arguments.length?t:(0,o.get)(this,e))}}getAttr(e){return this.get(e)}readDOMAttr(e){var t=(0,d.getViewElement)(this),r=t,n="http://www.w3.org/2000/svg"===r.namespaceURI,{type:i,normalized:a}=(0,g.normalizeProperty)(r,e) -return n||"attr"===i?r.getAttribute(a):r[a]}static toString(){return"@ember/component"}}e.Component=Ze,Ze.isComponentFactory=!0,Ze.reopenClass({positionalParams:[]}),(0,c.setInternalComponentManager)(Qe,Ze) -var et=Symbol("RECOMPUTE_TAG"),tt=Symbol("IS_CLASSIC_HELPER") -class rt extends E.FrameworkObject{init(e){super.init(e),this[et]=(0,s.createTag)()}recompute(){(0,w.join)((()=>(0,s.dirtyTag)(this[et])))}}e.Helper=rt,Je=tt,rt.isHelperFactory=!0,rt[Je]=!0,rt.helper=ot -class nt{constructor(e){this.capabilities=(0,c.helperCapabilities)("3.23",{hasValue:!0,hasDestroyable:!0}) -var t={};(0,u.setOwner)(t,e),this.ownerInjection=t}createHelper(e,t){var r,n=null!=(r=e)&&"class"in r?e.create():e.create(this.ownerInjection) -return{instance:n,args:t}}getDestroyable({instance:e}){return e}getValue({instance:e,args:t}){var{positional:r,named:n}=t,i=e.compute(r,n) -return(0,s.consumeTag)(e[et]),i}getDebugName(e){return(0,l.getDebugName)((e.class||e).prototype)}}(0,c.setHelperManager)((e=>new nt(e)),rt) -var it=(0,c.getInternalHelperManager)(rt) -class at{constructor(e){this.compute=e,this.isHelperFactory=!0}create(){return{compute:this.compute}}}var st=new class{constructor(){this.capabilities=(0,c.helperCapabilities)("3.23",{hasValue:!0})}createHelper(e,t){return()=>e.compute.call(null,t.positional,t.named)}getValue(e){return e()}getDebugName(e){return(0,l.getDebugName)(e.compute)}} -function ot(e){return new at(e)}(0,c.setHelperManager)((()=>st),at.prototype) -class ut{constructor(e){this.__string=e}toString(){return`${this.__string}`}toHTML(){return this.toString()}}e.SafeString=ut -var lt={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},ct=/[&<>"'`=]/,dt=/[&<>"'`=]/g -function ht(e){return lt[e]}function pt(e){return null!==e&&"object"==typeof e&&"toHTML"in e&&"function"==typeof e.toHTML}function ft(e){return{object:`${e.name}:${e.outlet}`}}var mt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class vt{create(e,t,r,n,i){var s=i.get("outletState"),o=t.ref -i.set("outletState",o) -var u={self:(0,a.createConstRef)(t.controller,"this"),finalize:(0,f._instrumentStart)("render.outlet",ft,t)} -if(void 0!==n.debugRenderTree){u.outlet={name:t.outlet} -var l=(0,a.valueForRef)(s),c=l&&l.render&&l.render.owner,d=(0,a.valueForRef)(o).render.owner -if(c&&c!==d){var h=d.mountPoint -u.engine=d,h&&(u.engineBucket={mountPoint:h})}}return u}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r){var n=[] -return t.outlet&&n.push({bucket:t.outlet,type:"outlet",name:t.outlet.name,args:g.EMPTY_ARGS,instance:void 0,template:void 0}),t.engineBucket&&n.push({bucket:t.engineBucket,type:"engine",name:t.engineBucket.mountPoint,args:g.EMPTY_ARGS,instance:t.engine,template:void 0}),n.push({bucket:t,type:"route-template",name:e.name,args:r,instance:e.controller,template:(0,b.unwrapTemplate)(e.template).moduleName}),n}getCapabilities(){return mt}getSelf({self:e}){return e}didCreate(){}didUpdate(){}didRenderLayout(e){e.finalize()}didUpdateLayout(){}getDestroyable(){return null}}var gt=new vt -class bt{constructor(e,t=gt){this.state=e,this.manager=t,this.handle=-1 -var r=t.getCapabilities() -this.capabilities=(0,c.capabilityFlagsFrom)(r),this.compilable=r.wrapped?(0,b.unwrapTemplate)(e.template).asWrappedLayout():(0,b.unwrapTemplate)(e.template).asLayout(),this.resolvedName=e.name}}class yt extends qe{constructor(e){super(),this.component=e}create(e,t,r,{isInteractive:n},i){var a=this.component,o=(0,f._instrumentStart)("render.component",We,a) -i.view=a -var u=""!==a.tagName -u||(n&&a.trigger("willRender"),a._transitionTo("hasElement"),n&&a.trigger("willInsertElement")) -var l=new xe(a,null,s.CONSTANT_TAG,o,u,n) -return(0,s.consumeTag)(a[$e]),l}}var _t={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!1,createArgs:!1,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!1,hasSubOwner:!1} -class wt{constructor(e){this.handle=-1,this.resolvedName="-top-level",this.capabilities=(0,c.capabilityFlagsFrom)(_t),this.compilable=null,this.manager=new yt(e) -var t=(0,O.getFactoryFor)(e) -this.state=t}}class Et{constructor(e){this.inner=e}}var Ot=Ae((({positional:e})=>{var t=e[0] -return(0,a.createComputeRef)((()=>{var e=(0,a.valueForRef)(t) -return(0,s.consumeTag)((0,o.tagForObject)(e)),(0,l.isProxy)(e)&&(e=(0,v._contentFor)(e)),new Et(e)}))})) -class Rt{constructor(e){this.length=e,this.position=0}isEmpty(){return!1}memoFor(e){return e}next(){var{length:e,position:t}=this -if(t>=e)return null -var r=this.valueFor(t),n=this.memoFor(t) -return this.position++,{value:r,memo:n}}}class Tt extends Rt{static from(e){return e.length>0?new this(e):null}static fromForEachable(e){var t=[] -return e.forEach((e=>t.push(e))),this.from(t)}constructor(e){super(e.length),this.array=e}valueFor(e){return this.array[e]}}class Ct extends Rt{static from(e){return e.length>0?new this(e):null}constructor(e){super(e.length),this.array=e}valueFor(e){return(0,o.objectAt)(this.array,e)}}class Pt extends Rt{static fromIndexable(e){var t=Object.keys(e) -if(0===t.length)return null -var r=[] -for(var n of t){var i -i=e[n],(0,s.isTracking)()&&((0,s.consumeTag)((0,s.tagFor)(e,n)),Array.isArray(i)&&(0,s.consumeTag)((0,s.tagFor)(i,"[]"))),r.push(i)}return new this(t,r)}static fromForEachable(e){var t=[],r=[],n=0,i=!1 -return e.forEach((function(e,a){(i=i||arguments.length>=2)&&t.push(a),r.push(e),n++})),0===n?null:i?new this(t,r):new Tt(r)}constructor(e,t){super(t.length),this.keys=e,this.values=t}valueFor(e){return this.values[e]}memoFor(e){return this.keys[e]}}class kt{static from(e){var t=e[Symbol.iterator](),r=t.next(),{done:n}=r -return n?null:new this(t,r)}constructor(e,t){this.iterable=e,this.result=t,this.position=0}isEmpty(){return!1}next(){var{iterable:e,result:t,position:r}=this -if(t.done)return null -var n=this.valueFor(t,r),i=this.memoFor(t,r) -return this.position++,this.result=e.next(),{value:n,memo:i}}}class xt extends kt{valueFor(e){return e.value}memoFor(e,t){return t}}class At extends kt{valueFor(e){return e.value[1]}memoFor(e){return e.value[0]}}function St(e){return null!=e&&"function"==typeof e.forEach}function jt(e){return null!=e&&"function"==typeof e[Symbol.iterator]}(0,k.default)({FEATURES:{DEFAULT_HELPER_MANAGER:!0},scheduleRevalidate(){w._backburner.ensureInstance()},toBool:function(e){return(0,l.isProxy)(e)?((0,s.consumeTag)((0,o.tagForProperty)(e,"content")),Boolean((0,o.get)(e,"isTruthy"))):(0,S.isArray)(e)?((0,s.consumeTag)((0,o.tagForProperty)(e,"[]")),0!==e.length):(0,A.isHTMLSafe)(e)?Boolean(e.toString()):Boolean(e)},toIterator:function(e){return e instanceof Et?function(e){if(t=e,null===t||"object"!=typeof t&&"function"!=typeof t)return null -var t -return Array.isArray(e)||(0,x.isEmberArray)(e)?Pt.fromIndexable(e):jt(e)?At.from(e):St(e)?Pt.fromForEachable(e):Pt.fromIndexable(e)}(e.inner):function(e){if(!(0,l.isObject)(e))return null -return Array.isArray(e)?Tt.from(e):(0,x.isEmberArray)(e)?Ct.from(e):jt(e)?xt.from(e):St(e)?Tt.fromForEachable(e):null}(e)},getProp:o._getProp,setProp:o._setProp,getPath:o.get,setPath:o.set,scheduleDestroy(e,t){(0,w.schedule)("actions",null,t,e)},scheduleDestroyed(e){(0,w.schedule)("destroy",null,e)},warnIfStyleNotTrusted(e){},assert(e,t,r){},deprecate(e,t,r){}}) -class Mt{constructor(e,t){this.owner=e,this.isInteractive=t,this.enableDebugTooling=R.ENV._DEBUG_RENDER_TREE}onTransactionCommit(){}}var Nt=Ae((({positional:e,named:t})=>{var r=e[0],n=t.type,i=t.loc,s=t.original;(0,a.valueForRef)(n),(0,a.valueForRef)(i),(0,a.valueForRef)(s) -return(0,a.createComputeRef)((()=>{var e=(0,a.valueForRef)(r) -return e}))})),It=Ae((e=>{var t=e.positional[0] -return t})),Dt=Ae((({positional:e})=>(0,a.createComputeRef)((()=>{var t=e[0],r=e[1],n=(0,a.valueForRef)(t).split("."),i=n[n.length-1],s=(0,a.valueForRef)(r) -return!0===s?(0,y.dasherize)(i):s||0===s?String(s):""})))),Ft=Ae((({positional:e},t)=>{var r=e[0],n=(0,a.valueForRef)(r) -return(0,a.createConstRef)(t.factoryFor(n)?.class,`(-resolve "${n}")`)})),Lt=Ae((({positional:e})=>{var t=e[0] -return(0,a.createComputeRef)((()=>{var e=(0,a.valueForRef)(t) -return(0,l.isObject)(e)&&(0,s.consumeTag)((0,o.tagForProperty)(e,"[]")),e}))})),Ut=Ae((({positional:e})=>{var t=e[0] -return(0,a.createInvokableRef)(t)})),Bt=Ae((({positional:e})=>{var t=e[0] -return(0,a.createReadOnlyRef)(t)})),$t=Ae((({positional:e,named:t})=>(0,a.createUnboundRef)((0,a.valueForRef)(e[0]),"(result of an `unbound` helper)"))),zt=Ae((()=>(0,a.createConstRef)(Vt(),"unique-id"))) -function Vt(){return([3e7]+-1e3+-4e3+-2e3+-1e11).replace(/[0-3]/g,(e=>(4*e^16*Math.random()>>(2&e)).toString(16)))}var Ht=["alt","shift","meta","ctrl"],qt=/^click|mouse|touch/ -var Wt={registeredActions:d.ActionManager.registeredActions,registerAction(e){var{actionId:t}=e -return d.ActionManager.registeredActions[t]=e,t},unregisterAction(e){var{actionId:t}=e -delete d.ActionManager.registeredActions[t]}} -class Gt{constructor(e,t,r,n,i,a){this.tag=(0,s.createUpdatableTag)(),this.element=e,this.owner=t,this.actionId=r,this.actionArgs=n,this.namedArgs=i,this.positional=a,this.eventName=this.getEventName(),(0,_.registerDestructor)(this,(()=>Wt.unregisterAction(this)))}getEventName(){var{on:e}=this.namedArgs -return void 0!==e?(0,a.valueForRef)(e):"click"}getActionArgs(){for(var e=new Array(this.actionArgs.length),t=0;t=0)return!0 -for(var r=0;r{var e=this.getActionArgs(),r={args:e,target:c,name:null};(0,a.isInvokableRef)(t)?(0,f.flaggedInstrument)("interaction.ember-action",r,(()=>{(0,a.updateRef)(t,e[0])})):"function"!=typeof t?(r.name=t,c.send?(0,f.flaggedInstrument)("interaction.ember-action",r,(()=>{c.send.apply(c,[t,...e])})):(0,f.flaggedInstrument)("interaction.ember-action",r,(()=>{c[t].apply(c,e)}))):(0,f.flaggedInstrument)("interaction.ember-action",r,(()=>{t.apply(c,e)}))})),h)}}var Yt=new class{create(e,t,r,{named:n,positional:i}){for(var a=[],s=2;s1&&(n=o[0],r=o[1],t=(0,a.isInvokableRef)(r)?r:(0,a.valueForRef)(r)) -e.actionName=t,e.implicitTarget=n,this.ensureEventSetup(e),Wt.registerAction(e),i.setAttribute("data-ember-action",""),i.setAttribute(`data-ember-action-${s}`,String(s))}update(e){var{positional:t}=e,r=t[1];(0,a.isInvokableRef)(r)||(e.actionName=(0,a.valueForRef)(r)),e.getEventName()!==e.eventName&&(this.ensureEventSetup(e),e.eventName=e.getEventName())}ensureEventSetup(e){var t=e.owner.lookup("event_dispatcher:main") -t?.setupHandlerForEmberEvent(e.eventName)}getTag(e){return e.tag}getDestroyable(e){return e}},Qt=(0,c.setInternalModifierManager)(Yt,{}),Kt={dynamicLayout:!0,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!0} -var Jt=new class{getDynamicLayout(e){var t=e.engine.lookup("template:application") -return(0,b.unwrapTemplate)(t(e.engine)).asLayout()}getCapabilities(){return Kt}getOwner(e){return e.engine}create(e,{name:t},r,n){var i=e.buildChildEngineInstance(t) -i.boot() -var s,o,u,l=i.factoryFor("controller:application")||(0,j.generateControllerFactory)(i,"application") -if(r.named.has("model")&&(u=r.named.get("model")),void 0===u)o={engine:i,controller:s=l.create(),self:(0,a.createConstRef)(s,"this"),modelRef:u} -else{var c=(0,a.valueForRef)(u) -o={engine:i,controller:s=l.create({model:c}),self:(0,a.createConstRef)(s,"this"),modelRef:u}}return n.debugRenderTree&&(0,_.associateDestroyableChild)(i,s),o}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r,n){return[{bucket:t.engine,instance:t.engine,type:"engine",name:e.name,args:r},{bucket:t.controller,instance:t.controller,type:"route-template",name:"application",args:r,template:n}]}getSelf({self:e}){return e}getDestroyable(e){return e.engine}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}update(e){var{controller:t,modelRef:r}=e -void 0!==r&&t.set("model",(0,a.valueForRef)(r))}} -class Xt{constructor(e){this.resolvedName=e,this.handle=-1,this.manager=Jt,this.compilable=null,this.capabilities=(0,c.capabilityFlagsFrom)(Kt),this.state={name:e}}}var Zt=Ae(((e,t)=>{var r,n,i,s=e.positional[0] -return r=(0,g.createCapturedArgs)(e.named,g.EMPTY_POSITIONAL),(0,a.createComputeRef)((()=>{var e=(0,a.valueForRef)(s) -return"string"==typeof e?n===e?i:(n=e,i=(0,g.curry)(0,new Xt(e),t,r,!0)):(i=null,n=null,null)}))})),er=Ae(((e,t,r)=>{var n=(0,a.createComputeRef)((()=>{var e=(0,a.valueForRef)(r.get("outletState")),t=void 0!==e?e.outlets:void 0 -return void 0!==t?t.main:void 0})),i=null,s=null -return(0,a.createComputeRef)((()=>{var e=(0,a.valueForRef)(n),r=function(e,t){if(void 0===t)return null -var r=t.render -if(void 0===r)return null -var n=r.template -if(void 0===n)return null -if(Ee(n)){n=n(r.owner)}return{ref:e,name:r.name,outlet:r.outlet,template:n,controller:r.controller,model:r.model}}(n,e) -if(!function(e,t){if(null===e)return null===t -if(null===t)return!1 -return e.template===t.template&&e.controller===t.controller}(r,i))if(i=r,null!==r){var o=(0,b.dict)(),u=(0,a.childRefFromParts)(n,["render","model"]),l=(0,a.valueForRef)(u) -o.model=(0,a.createComputeRef)((()=>(i===r&&(l=(0,a.valueForRef)(u)),l))) -var c=(0,g.createCapturedArgs)(o,g.EMPTY_POSITIONAL) -s=(0,g.curry)(0,new bt(r),e?.render?.owner??t,c,!0)}else s=null -return s}))})) -function tr(e){return{object:`component:${e}`}}var rr={action:je,mut:Ut,readonly:Bt,unbound:$t,"-hash":g.hash,"-each-in":Ot,"-normalize-class":Dt,"-resolve":Ft,"-track-array":Lt,"-mount":Zt,"-outlet":er,"-in-el-null":It},nr={...rr,array:g.array,concat:g.concat,fn:g.fn,get:g.get,hash:g.hash,"unique-id":zt} -nr["-disallow-dynamic-resolution"]=Nt -var ir={action:Qt},ar={...ir,on:g.on} -new b._WeakSet -class sr{constructor(){this.componentDefinitionCache=new Map}lookupPartial(){return null}lookupHelper(e,t){var r=nr[e] -if(void 0!==r)return r -var n=t.factoryFor(`helper:${e}`) -if(void 0===n)return null -var i=n.class -return void 0===i?null:"function"==typeof i&&!0===i[tt]?((0,c.setInternalHelperManager)(it,n),n):i}lookupBuiltInHelper(e){return rr[e]??null}lookupModifier(e,t){var r=ar[e] -if(void 0!==r)return r -var n=t.factoryFor(`modifier:${e}`) -return void 0===n?null:n.class||null}lookupBuiltInModifier(e){return ir[e]??null}lookupComponent(e,t){var r=function(e,t,r){var n=function(e,t){var r=`component:${e}` -return t.factoryFor(r)||null}(t,e) -if((0,u.isFactory)(n)&&n.class){var i=(0,c.getComponentTemplate)(n.class) -if(void 0!==i)return{component:n,layout:i}}var a=function(e,t,r){var n=`template:components/${e}` -return t.lookup(n,r)||null}(t,e,r) -return null===n&&null===a?null:{component:n,layout:a}}(t,e) -if(null===r)return null -var n,i=null -n=null===r.component?i=r.layout(t):r.component -var a=this.componentDefinitionCache.get(n) -if(void 0!==a)return a -null===i&&null!==r.layout&&(i=r.layout(t)) -var s=(0,f._instrumentStart)("render.getComponentDefinition",tr,e),o=null -if(null===r.component)if(R.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS)o={state:(0,g.templateOnlyComponent)(void 0,e),manager:g.TEMPLATE_ONLY_COMPONENT_MANAGER,template:i} -else{var l=t.factoryFor(O.privatize`component:-default`) -o={state:l,manager:(0,c.getInternalComponentManager)(l.class),template:i}}else{var d=r.component,h=d.class,p=(0,c.getInternalComponentManager)(h) -o={state:Ke(p)?d:h,manager:p,template:i}}return s(),this.componentDefinitionCache.set(n,o),o}}var or="-top-level",ur="main" -class lr{static extend(e){return class extends lr{static create(t){return t?super.create(Object.assign({},e,t)):super.create(e)}}}static reopenClass(e){Object.assign(this,e)}static create(e){var{environment:t,application:r,template:n}=e,i=(0,u.getOwner)(e),a=n(i) -return new lr(t,i,a,r)}constructor(e,t,r,n){this._environment=e,this.owner=t,this.template=r,this.namespace=n -var i=(0,s.createTag)(),o={outlets:{main:void 0},render:{owner:t,into:void 0,outlet:ur,name:or,controller:void 0,model:void 0,template:r}},u=this.ref=(0,a.createComputeRef)((()=>((0,s.consumeTag)(i),o)),(e=>{(0,s.dirtyTag)(i),o.outlets.main=e})) -this.state={ref:u,name:or,outlet:ur,template:r,controller:void 0,model:void 0}}appendTo(e){var t -t=this._environment.hasDOM&&"string"==typeof e?document.querySelector(e):e -var r=this.owner.lookup("renderer:-dom");(0,w.schedule)("render",r,"appendOutletView",this,t)}rerender(){}setOutletState(e){(0,a.updateRef)(this.ref,e)}destroy(){}}e.OutletView=lr -class cr{constructor(e,t){this.view=e,this.outletState=t}child(){return new cr(this.view,this.outletState)}get(e){return this.outletState}set(e,t){return this.outletState=t,t}}var dr=()=>{} -class hr{constructor(e,t,r,n,i,a,s,o,u){this.root=e,this.runtime=t,this.id=e instanceof lr?(0,l.guidFor)(e):(0,d.getViewId)(e),this.result=void 0,this.destroyed=!1,this.render=()=>{var e=(0,b.unwrapTemplate)(i).asLayout(),l=(0,g.renderMain)(t,r,n,a,u(t.env,{element:s,nextSibling:null}),e,o),c=this.result=l.sync() -this.render=()=>c.rerender({alwaysRevalidate:!1})}}isFor(e){return this.root===e}destroy(){var{result:e,runtime:{env:t}}=this -this.destroyed=!0,this.runtime=void 0,this.root=null,this.result=void 0,this.render=void 0,void 0!==e&&(0,g.inTransaction)(t,(()=>(0,_.destroy)(e)))}}var pr=[] -function fr(e){var t=pr.indexOf(e) -pr.splice(t,1)}var mr=null -var vr=0 -w._backburner.on("begin",(function(){for(var e of pr)e._scheduleRevalidate()})),w._backburner.on("end",(function(){for(var e of pr)if(!e._isValid()){if(vr>R.ENV._RERENDER_LOOP_LIMIT)throw vr=0,e.destroy(),new Error("infinite rendering invalidation detected") -return vr++,w._backburner.join(null,dr)}vr=0,function(){if(null!==mr){var e=mr.resolve -mr=null,w._backburner.join(null,e)}}()})) -class gr{static create(e){var{_viewRegistry:t}=e,r=(0,u.getOwner)(e),n=r.lookup("service:-document"),i=r.lookup("-environment:main"),a=r.lookup(O.privatize`template:-root`),s=r.lookup("service:-dom-builder") -return new this(r,n,i,a,t,s)}constructor(e,r,n,i,a,s=g.clientBuilder){this._inRenderTransaction=!1,this._lastRevision=-1,this._destroyed=!1,this._owner=e,this._rootTemplate=i(e),this._viewRegistry=a||e.lookup("-view-registry:main"),this._roots=[],this._removedRoots=[],this._builder=s,this._isInteractive=n.isInteractive -var o=this._runtimeResolver=new sr,u=(0,T.artifacts)() -this._context=(0,t.programCompilationContext)(u,o) -var l=new Mt(e,n.isInteractive) -this._runtime=(0,g.runtimeContext)({appendOperations:n.hasDOM?new g.DOMTreeConstruction(r):new P.NodeDOMTreeConstruction(r),updateOperations:new g.DOMChanges(r)},l,u,o)}get debugRenderTree(){var{debugRenderTree:e}=this._runtime.env -return e}appendOutletView(e,t){var r=function(e){if(R.ENV._APPLICATION_TEMPLATE_WRAPPER){var t=Object.assign({},mt,{dynamicTag:!0,elementHook:!0,wrapped:!0}),r=new class extends vt{getTagName(){return"div"}getCapabilities(){return t}didCreateElement(e,t){t.setAttribute("class","ember-view"),t.setAttribute("id",(0,l.guidFor)(e))}} -return new bt(e.state,r)}return new bt(e.state)}(e) -this._appendDefinition(e,(0,g.curry)(0,r,e.owner,null,!0),t)}appendTo(e,t){var r=new wt(e) -this._appendDefinition(e,(0,g.curry)(0,r,this._owner,null,!0),t)}_appendDefinition(e,t,r){var n=(0,a.createConstRef)(t,"this"),i=new cr(null,a.UNDEFINED_REFERENCE),s=new hr(e,this._runtime,this._context,this._owner,this._rootTemplate,n,r,i,this._builder) -this._renderRoot(s)}rerender(){this._scheduleRevalidate()}register(e){var t=(0,d.getViewId)(e) -this._viewRegistry[t]=e}unregister(e){delete this._viewRegistry[(0,d.getViewId)(e)]}remove(e){e._transitionTo("destroying"),this.cleanupRootFor(e),this._isInteractive&&e.trigger("didDestroyElement")}cleanupRootFor(e){if(!this._destroyed)for(var t=this._roots,r=this._roots.length;r--;){var n=t[r] -n.isFor(e)&&(n.destroy(),t.splice(r,1))}}destroy(){this._destroyed||(this._destroyed=!0,this._clearAllRoots())}getElement(e){if(this._isInteractive)return(0,d.getViewElement)(e) -throw new Error("Accessing `this.element` is not allowed in non-interactive environments (such as FastBoot).")}getBounds(e){var t=e[Ve] -return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}createElement(e){return this._runtime.env.getAppendOperations().createElement(e)}_renderRoot(e){var t,{_roots:r}=this -r.push(e),1===r.length&&(t=this,pr.push(t)),this._renderRootsTransaction()}_renderRoots(){var e,{_roots:t,_runtime:r,_removedRoots:n}=this -do{e=t.length,(0,g.inTransaction)(r.env,(()=>{for(var r=0;r=e||i.render()}this._lastRevision=(0,s.valueForTag)(s.CURRENT_TAG)}))}while(t.length>e) -for(;n.length;){var i=n.pop(),a=t.indexOf(i) -t.splice(a,1)}0===this._roots.length&&fr(this)}_renderRootsTransaction(){if(!this._inRenderTransaction){this._inRenderTransaction=!0 -var e=!1 -try{this._renderRoots(),e=!0}finally{e||(this._lastRevision=(0,s.valueForTag)(s.CURRENT_TAG)),this._inRenderTransaction=!1}}}_clearAllRoots(){var e=this._roots -for(var t of e)t.destroy() -this._removedRoots.length=0,this._roots=[],e.length&&fr(this)}_scheduleRevalidate(){w._backburner.scheduleOnce("render",this,this._revalidate)}_isValid(){return this._destroyed||0===this._roots.length||(0,s.validateTag)(s.CURRENT_TAG,this._lastRevision)}_revalidate(){this._isValid()||this._renderRootsTransaction()}}e.Renderer=gr -var br={} -var yr=(0,t.templateFactory)({id:"3jT+eJpe",block:'[[[46,[28,[37,1],null,null],null,null,null]],[],false,["component","-outlet"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/outlet.hbs",isStrictMode:!1}) -e.componentCapabilities=c.componentCapabilities,e.modifierCapabilities=c.modifierCapabilities})),e("@ember/-internals/meta/index",["exports","@ember/-internals/meta/lib/meta"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Meta",{enumerable:!0,get:function(){return t.Meta}}),Object.defineProperty(e,"UNDEFINED",{enumerable:!0,get:function(){return t.UNDEFINED}}),Object.defineProperty(e,"counters",{enumerable:!0,get:function(){return t.counters}}),Object.defineProperty(e,"meta",{enumerable:!0,get:function(){return t.meta}}),Object.defineProperty(e,"peekMeta",{enumerable:!0,get:function(){return t.peekMeta}}),Object.defineProperty(e,"setMeta",{enumerable:!0,get:function(){return t.setMeta}})})),e("@ember/-internals/meta/lib/meta",["exports","@ember/-internals/utils","@ember/debug","@glimmer/destroyable"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.meta=e.counters=e.UNDEFINED=e.Meta=void 0,e.peekMeta=d,e.setMeta=c -var i=Object.prototype -var a=e.UNDEFINED=(0,t.symbol)("undefined"),s=1 -class o{constructor(e){this._listenersVersion=1,this._inheritedEnd=-1,this._flattenedVersion=0,this._parent=void 0,this._descriptors=void 0,this._mixins=void 0,this._lazyChains=void 0,this._values=void 0,this._revisions=void 0,this._isInit=!1,this.source=e,this.proto=void 0===e.constructor?void 0:e.constructor.prototype,this._listeners=void 0}get parent(){var e=this._parent -if(void 0===e){var t=u(this.source) -this._parent=e=null===t||t===i?null:h(t)}return e}setInitializing(){this._isInit=!0}unsetInitializing(){this._isInit=!1}isInitializing(){return this._isInit}isPrototypeMeta(e){return this.proto===this.source&&this.source===e}_getOrCreateOwnMap(e){return this[e]||(this[e]=Object.create(null))}_getOrCreateOwnSet(e){return this[e]||(this[e]=new Set)}_findInheritedMap(e,t){for(var r=this;null!==r;){var n=r[e] -if(void 0!==n){var i=n.get(t) -if(void 0!==i)return i}r=r.parent}}_hasInInheritedSet(e,t){for(var r=this;null!==r;){var n=r[e] -if(void 0!==n&&n.has(t))return!0 -r=r.parent}return!1}valueFor(e){var t=this._values -return void 0!==t?t[e]:void 0}setValueFor(e,t){this._getOrCreateOwnMap("_values")[e]=t}revisionFor(e){var t=this._revisions -return void 0!==t?t[e]:void 0}setRevisionFor(e,t){this._getOrCreateOwnMap("_revisions")[e]=t}writableLazyChainsFor(e){var t=this._getOrCreateOwnMap("_lazyChains"),r=t[e] -return void 0===r&&(r=t[e]=[]),r}readableLazyChainsFor(e){var t=this._lazyChains -if(void 0!==t)return t[e]}addMixin(e){this._getOrCreateOwnSet("_mixins").add(e)}hasMixin(e){return this._hasInInheritedSet("_mixins",e)}forEachMixins(e){for(var t,r=this;null!==r;){var n=r._mixins -void 0!==n&&(t=void 0===t?new Set:t,n.forEach((r=>{t.has(r)||(t.add(r),e(r))}))),r=r.parent}}writeDescriptors(e,t){(this._descriptors||(this._descriptors=new Map)).set(e,t)}peekDescriptors(e){var t=this._findInheritedMap("_descriptors",e) -return t===a?void 0:t}removeDescriptors(e){this.writeDescriptors(e,a)}forEachDescriptors(e){for(var t,r=this;null!==r;){var n=r._descriptors -void 0!==n&&(t=void 0===t?new Set:t,n.forEach(((r,n)=>{t.has(n)||(t.add(n),r!==a&&e(n,r))}))),r=r.parent}}addToListeners(e,t,r,n,i){this.pushListener(e,t,r,n?1:0,i)}removeFromListeners(e,t,r){this.pushListener(e,t,r,2)}pushListener(e,t,r,n,i=!1){var a=this.writableListeners(),s=p(a,e,t,r) -if(-1!==s&&s0&&(r.splice(0,this._inheritedEnd),this._inheritedEnd=0),t)){-1===p(r,n.event,n.target,n.method)&&(r.unshift(n),this._inheritedEnd++)}}}this._flattenedVersion=s}return this._listeners}matchingListeners(e){var t,r=this.flattenedListeners() -if(void 0!==r)for(var n of r)n.event!==e||0!==n.kind&&1!==n.kind||(void 0===t&&(t=[]),t.push(n.target,n.method,1===n.kind)) -return t}observerEvents(){var e,t=this.flattenedListeners() -if(void 0!==t)for(var r of t)0!==r.kind&&1!==r.kind||-1===r.event.indexOf(":change")||(void 0===e&&(e=[]),e.push(r)) -return e}}e.Meta=o -var u=Object.getPrototypeOf,l=new WeakMap -function c(e,t){l.set(e,t)}function d(e){var t=l.get(e) -if(void 0!==t)return t -for(var r=u(e);null!==r;){if(void 0!==(t=l.get(r)))return t.proto!==r&&(t.proto=r),t -r=u(r)}return null}var h=e.meta=function(e){var t=d(e) -if(null!==t&&t.source===e)return t -var r=new o(e) -return c(e,r),r} -function p(e,t,r,n){for(var i=e.length-1;i>=0;i--){var a=e[i] -if(a.event===t&&a.target===r&&a.method===n)return i}return-1}})),e("@ember/-internals/metal/index",["exports","@ember/-internals/meta","@ember/-internals/utils","@ember/debug","@glimmer/destroyable","@glimmer/validator","@glimmer/util","@ember/-internals/environment","@ember/runloop","@glimmer/manager","@ember/array/-internals","ember/version","@ember/-internals/owner"],(function(e,t,r,n,i,a,s,o,u,l,c,d,h){"use strict" -function p(e,r,n,i,a,s=!0){i||"function"!=typeof n||(i=n,n=null),(0,t.meta)(e).addToListeners(r,n,i,!0===a,s)}function f(e,r,n,i){var a,s -"object"==typeof n?(a=n,s=i):(a=null,s=n),(0,t.meta)(e).removeFromListeners(r,a,s)}function m(e,r,n,i,a){if(void 0===i){var s=void 0===a?(0,t.peekMeta)(e):a -i=null!==s?s.matchingListeners(r):void 0}if(void 0===i||0===i.length)return!1 -for(var o=i.length-3;o>=0;o-=3){var u=i[o],l=i[o+1],c=i[o+2] -if(l){c&&f(e,r,u,l),u||(u=e) -var d=typeof l -"string"!==d&&"symbol"!==d||(l=u[l]),l.apply(u,n)}}return!0}Object.defineProperty(e,"__esModule",{value:!0}),e.TrackedDescriptor=e.SYNC_OBSERVERS=e.PROXY_CONTENT=e.PROPERTY_DID_CHANGE=e.NAMESPACES_BY_ID=e.NAMESPACES=e.Libraries=e.DEBUG_INJECTION_FUNCTIONS=e.ComputedProperty=e.ComputedDescriptor=e.ASYNC_OBSERVERS=void 0,e._getPath=Te,e._getProp=Re,e._setProp=ke,e.activateObserver=O,e.addArrayObserver=function(e,t,r){return W(e,t,r,p)},e.addListener=p,e.addNamespace=function(e){Be.unprocessedNamespaces=!0,ze.push(e)},e.addObserver=w,e.alias=function(e){return ne(new Ae(e),xe)},e.arrayContentDidChange=$,e.arrayContentWillChange=B,e.autoComputed=function(...e){return ne(new fe(e),me)},e.beginPropertyChanges=F,e.cached=void 0,e.changeProperties=U,e.computed=ve,Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return a.createCache}}),e.defineDecorator=be,e.defineProperty=ge,e.defineValue=ye,e.deprecateProperty=function(e,t,r,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,set(e){Pe(this,r,e)},get(){return Oe(this,r)}})},e.descriptorForDecorator=se,e.descriptorForProperty=ae,e.eachProxyArrayDidChange=function(e,t,r,n){var i=Me.get(e) -void 0!==i&&i.arrayDidChange(e,t,r,n)},e.eachProxyArrayWillChange=function(e,t,r,n){var i=Me.get(e) -void 0!==i&&i.arrayWillChange(e,t,r,n)},e.endPropertyChanges=L,e.expandProperties=ce,e.findNamespace=function(e){Ue||We() -return Ve[e]} -e.findNamespaces=He,e.flushAsyncObservers=function(e=!0){var r=(0,a.valueForTag)(a.CURRENT_TAG) -if(k===r)return -k=r,_.forEach(((r,n)=>{var i=(0,t.peekMeta)(n) -r.forEach(((r,s)=>{if(!(0,a.validateTag)(r.tag,r.lastRevision)){var o=()=>{try{m(n,s,[n,r.path],void 0,i)}finally{r.tag=K(n,r.path,(0,a.tagMetaFor)(n),(0,t.peekMeta)(n)),r.lastRevision=(0,a.valueForTag)(r.tag)}} -e?(0,u.schedule)("actions",o):o()}}))}))},e.get=Oe,e.getCachedValueFor=function(e,r){var n=(0,t.peekMeta)(e) -return n?n.valueFor(r):void 0},e.getProperties=function(e,t){var r,n={},i=1 -2===arguments.length&&Array.isArray(t)?(i=0,r=arguments[1]):r=Array.from(arguments) -for(;i0},e.hasUnknownProperty=Ee,e.inject=function(e,...t){var r,n -X(t)?r=t:"string"==typeof t[0]&&(n=t[0]) -var i=function(t){var r=(0,h.getOwner)(this)||this.container -return r.lookup(`${e}:${n||t}`)} -0 -var a=ve({get:i,set(e,t){ge(this,e,null,t)}}) -return r?a(r[0],r[1],r[2]):a},e.isClassicDecorator=oe,e.isComputed=function(e,t){return Boolean(ae(e,t))},Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return a.isConst}}),e.isElementDescriptor=X,e.isNamespaceSearchDisabled=function(){return Ue},e.libraries=void 0,e.makeComputedDecorator=ne,e.markObjectAsDirty=M,e.nativeDescDecorator=function(e){var t=function(){return e} -return ue(t),t},e.notifyPropertyChange=D,e.objectAt=V,e.on=function(...e){var t=e.pop(),n=e -return(0,r.setListeners)(t,n),t},e.processAllNamespaces=We,e.processNamespace=qe,e.removeArrayObserver=function(e,t,r){return W(e,t,r,f)},e.removeListener=f,e.removeNamespace=function(e){var t=(0,r.getName)(e) -delete Ve[t],ze.splice(ze.indexOf(e),1),t in o.context.lookup&&e===o.context.lookup[t]&&(o.context.lookup[t]=void 0)},e.removeObserver=function(e,r,n,i,a=b){var s=g(r),o=(0,t.peekMeta)(e) -null!==o&&(o.isPrototypeMeta(e)||o.isInitializing())||C(e,s,a) -f(e,s,n,i)},e.replace=function(e,t,r,n=z){i=e,null!=i&&"function"==typeof i.replace?e.replace(t,r,n):q(e,t,r,n) -var i},e.replaceInNativeArray=q,e.revalidateObservers=P -e.sendEvent=m,e.set=Pe,e.setClassicDecorator=ue,e.setNamespaceSearchDisabled=function(e){Ue=Boolean(e)},e.setProperties=function(e,t){if(null===t||"object"!=typeof t)return t -return U((()=>{var r=Object.keys(t) -for(var n of r)Pe(e,n,t[n])})),t},e.setUnprocessedMixins=function(){$e=!0},e.tagForObject=function(e){if((0,r.isObject)(e))return(0,a.tagFor)(e,S) -return a.CONSTANT_TAG},e.tagForProperty=j,e.tracked=Ie,e.trySet=function(e,t,r){return Pe(e,t,r,!0)} -var v=":change" -function g(e){return e+v}var b=!o.ENV._DEFAULT_ASYNC_OBSERVERS,y=e.SYNC_OBSERVERS=new Map,_=e.ASYNC_OBSERVERS=new Map -function w(e,r,n,i,a=b){var s=g(r) -p(e,s,n,i,!1,a) -var o=(0,t.peekMeta)(e) -null!==o&&(o.isPrototypeMeta(e)||o.isInitializing())||O(e,s,a)}function E(e,t){var r=!0===t?y:_ -return r.has(e)||(r.set(e,new Map),(0,i.registerDestructor)(e,(()=>function(e){y.size>0&&y.delete(e) -_.size>0&&_.delete(e)}(e)),!0)),r.get(e)}function O(e,r,n=!1){var i=E(e,n) -if(i.has(r))i.get(r).count++ -else{var s=r.substring(0,r.lastIndexOf(":")),o=K(e,s,(0,a.tagMetaFor)(e),(0,t.peekMeta)(e)) -i.set(r,{count:1,path:s,tag:o,lastRevision:(0,a.valueForTag)(o),suspended:!1})}}var R=!1,T=[] -function C(e,t,r=!1){if(!0!==R){var n=!0===r?y:_,i=n.get(e) -if(void 0!==i){var a=i.get(t) -a.count--,0===a.count&&(i.delete(t),0===i.size&&n.delete(e))}}else T.push([e,t,r])}function P(e){_.has(e)&&_.get(e).forEach((r=>{r.tag=K(e,r.path,(0,a.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,a.valueForTag)(r.tag)})),y.has(e)&&y.get(e).forEach((r=>{r.tag=K(e,r.path,(0,a.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,a.valueForTag)(r.tag)}))}var k=0 -function x(){y.forEach(((e,r)=>{var n=(0,t.peekMeta)(r) -e.forEach(((e,i)=>{if(!e.suspended&&!(0,a.validateTag)(e.tag,e.lastRevision))try{e.suspended=!0,m(r,i,[r,e.path],void 0,n)}finally{e.tag=K(r,e.path,(0,a.tagMetaFor)(r),(0,t.peekMeta)(r)),e.lastRevision=(0,a.valueForTag)(e.tag),e.suspended=!1}}))}))}function A(e,t,r){var n=y.get(e) -if(n){var i=n.get(g(t)) -i&&(i.suspended=r)}}var S=(0,r.symbol)("SELF_TAG") -function j(e,t,r=!1,n){var i=(0,l.getCustomTagFor)(e) -if(void 0!==i)return i(e,t,r) -var s=(0,a.tagFor)(e,t,n) -return s}function M(e,t){(0,a.dirtyTagFor)(e,t),(0,a.dirtyTagFor)(e,S)}var N=e.PROPERTY_DID_CHANGE=Symbol("PROPERTY_DID_CHANGE") -var I=0 -function D(e,r,n,i){var a=void 0===n?(0,t.peekMeta)(e):n -null!==a&&(a.isInitializing()||a.isPrototypeMeta(e))||(M(e,r),I<=0&&x(),N in e&&(4===arguments.length?e[N](r,i):e[N](r)))}function F(){I++,R=!0}function L(){--I<=0&&(x(),function(){for(var[e,t,r]of(R=!1,T))C(e,t,r) -T=[]}())}function U(e){F() -try{e()}finally{L()}}function B(e,t,r,n){return void 0===t?(t=0,r=n=-1):(void 0===r&&(r=-1),void 0===n&&(n=-1)),m(e,"@array:before",[e,t,r,n]),e}function $(e,r,n,i,a=!0){void 0===r?(r=0,n=i=-1):(void 0===n&&(n=-1),void 0===i&&(i=-1)) -var s=(0,t.peekMeta)(e) -if(a&&((i<0||n<0||i-n!=0)&&D(e,"length",s),D(e,"[]",s)),m(e,"@array:change",[e,r,n,i]),null!==s){var o=-1===n?0:n,u=e.length-((-1===i?0:i)-o),l=r<0?u+r:r -if(void 0!==s.revisionFor("firstObject")&&0===l&&D(e,"firstObject",s),void 0!==s.revisionFor("lastObject"))u-10&&this._property(...e)}setup(e,t,r,n){if(super.setup(e,t,r,n),!1===this._hasConfig){var{get:i,set:a}=r -void 0!==i&&(this._getter=i),void 0!==a&&(this._setter=function(e,t){var r=a.call(this,t) -return void 0!==i&&void 0===r?i.call(this):r})}}_property(...e){var t=[] -function r(e){t.push(e)}for(var n of e)ce(n,r) -this._dependentKeys=t}get(e,r){var n,i=(0,t.meta)(e),s=(0,a.tagMetaFor)(e),o=(0,a.tagFor)(e,r,s),u=i.revisionFor(r) -if(void 0!==u&&(0,a.validateTag)(o,u))n=i.valueFor(r) -else{var{_getter:l,_dependentKeys:c}=this;(0,a.untrack)((()=>{n=l.call(e,r)})),void 0!==c&&(0,a.updateTag)(o,Q(e,c,s,i)),i.setValueFor(r,n),i.setRevisionFor(r,(0,a.valueForTag)(o)),Y(i,r,n)}return(0,a.consumeTag)(o),Array.isArray(n)&&(0,a.consumeTag)((0,a.tagFor)(n,"[]")),n}set(e,r,n){this._readOnly&&this._throwReadOnlyError(e,r) -var i,s=(0,t.meta)(e) -s.isInitializing()&&void 0!==this._dependentKeys&&this._dependentKeys.length>0&&"function"==typeof e[N]&&e.isComponent&&w(e,r,(()=>{e[N](r)}),void 0,!0) -try{F(),i=this._set(e,r,n,s),Y(s,r,i) -var o=(0,a.tagMetaFor)(e),u=(0,a.tagFor)(e,r,o),{_dependentKeys:l}=this -void 0!==l&&(0,a.updateTag)(u,Q(e,l,o,s)),s.setRevisionFor(r,(0,a.valueForTag)(u))}finally{L()}return i}_throwReadOnlyError(e,t){throw new Error(`Cannot set read-only property "${t}" on object: ${(0,n.inspect)(e)}`)}_set(e,t,r,n){var i,a=void 0!==n.revisionFor(t),s=n.valueFor(t),{_setter:o}=this -A(e,t,!0) -try{i=o.call(e,t,r,s)}finally{A(e,t,!1)}return a&&s===i||(n.setValueFor(t,i),D(e,t,n,r)),i}teardown(e,t,r){void 0!==r.revisionFor(t)&&(r.setRevisionFor(t,void 0),r.setValueFor(t,void 0)),super.teardown(e,t,r)}}e.ComputedProperty=pe -class fe extends pe{get(e,r){var n,i=(0,t.meta)(e),s=(0,a.tagMetaFor)(e),o=(0,a.tagFor)(e,r,s),u=i.revisionFor(r) -if(void 0!==u&&(0,a.validateTag)(o,u))n=i.valueFor(r) -else{var{_getter:l}=this,c=(0,a.track)((()=>{n=l.call(e,r)}));(0,a.updateTag)(o,c),i.setValueFor(r,n),i.setRevisionFor(r,(0,a.valueForTag)(o)),Y(i,r,n)}return(0,a.consumeTag)(o),Array.isArray(n)&&(0,a.consumeTag)((0,a.tagFor)(n,"[]",s)),n}}class me extends Function{readOnly(){var e=se(this) -return e._readOnly=!0,this}meta(e){var t=se(this) -return 0===arguments.length?t._meta||{}:(t._meta=e,this)}get _getter(){return se(this)._getter}set enumerable(e){se(this).enumerable=e}}function ve(...e){return X(e)?ne(new pe([]),me)(e[0],e[1],e[2]):ne(new pe(e),me)}function ge(e,r,n,i,a){var s=void 0===a?(0,t.meta)(e):a,o=ae(e,r,s),u=void 0!==o -u&&o.teardown(e,r,s),oe(n)?be(e,r,n,s):null==n?ye(e,r,i,u,!0):Object.defineProperty(e,r,n),s.isPrototypeMeta(e)||P(e)}function be(e,t,r,n){var i -return i=r(e,t,void 0,n),Object.defineProperty(e,t,i),r}function ye(e,t,r,n,i=!0){return!0===n||!1===i?Object.defineProperty(e,t,{configurable:!0,enumerable:i,writable:!0,value:r}):e[t]=r,r}var _e=new r.Cache(1e3,(e=>e.indexOf("."))) -function we(e){return"string"==typeof e&&-1!==_e.get(e)}e.PROXY_CONTENT=(0,r.symbol)("PROXY_CONTENT") -function Ee(e){return"object"==typeof e&&null!==e&&"function"==typeof e.unknownProperty}function Oe(e,t){return we(t)?Te(e,t):Re(e,t)}function Re(e,t){var r -if(null!=e)return"object"==typeof e||"function"==typeof e?(void 0===(r=e[t])&&"object"==typeof e&&!(t in e)&&Ee(e)&&(r=e.unknownProperty(t)),(0,a.isTracking)()&&((0,a.consumeTag)((0,a.tagFor)(e,t)),(Array.isArray(r)||(0,c.isEmberArray)(r))&&(0,a.consumeTag)((0,a.tagFor)(r,"[]")))):r=e[t],r}function Te(e,t,r){var n="string"==typeof t?t.split("."):t -for(var i of n){if(null==e||e.isDestroyed)return -if(r&&("__proto__"===i||"constructor"===i))return -e=Re(e,i)}return e}Re("foo","a"),Re("foo",1),Re({},"a"),Re({},1),Re({unknownProperty(){}},"a"),Re({unknownProperty(){}},1),Oe({},"foo"),Oe({},"foo.bar") -var Ce={} -function Pe(e,t,r,n){return e.isDestroyed?r:we(t)?function(e,t,r,n){var i=t.split("."),a=i.pop() -var s=Te(e,i,!0) -if(null!=s)return Pe(s,a,r) -if(!n)throw new Error(`Property set failed: object in path "${i.join(".")}" could not be found.`)}(e,t,r,n):ke(e,t,r)}function ke(e,t,n){var i,a=(0,r.lookupDescriptor)(e,t) -return null!==a&&re.has(a.set)?(e[t]=n,n):(void 0!==(i=e[t])||"object"!=typeof e||t in e||"function"!=typeof e.setUnknownProperty?(e[t]=n,i!==n&&D(e,t)):e.setUnknownProperty(t,n),n)}(0,r.setProxy)(Ce),(0,a.track)((()=>Re({},"a"))),(0,a.track)((()=>Re({},1))),(0,a.track)((()=>Re({a:[]},"a"))),(0,a.track)((()=>Re({a:Ce},"a"))) -class xe extends Function{readOnly(){return se(this).readOnly(),this}oneWay(){return se(this).oneWay(),this}meta(e){var t=se(this) -if(0===arguments.length)return t._meta||{} -t._meta=e}}class Ae extends Z{constructor(e){super(),this.altKey=e}setup(e,t,r,n){super.setup(e,t,r,n),G.add(this)}get(e,r){var n,i=(0,t.meta)(e),s=(0,a.tagMetaFor)(e),o=(0,a.tagFor)(e,r,s);(0,a.untrack)((()=>{n=Oe(e,this.altKey)})) -var u=i.revisionFor(r) -return void 0!==u&&(0,a.validateTag)(o,u)||((0,a.updateTag)(o,K(e,this.altKey,s,i)),i.setRevisionFor(r,(0,a.valueForTag)(o)),Y(i,r,n)),(0,a.consumeTag)(o),n}set(e,t,r){return Pe(e,this.altKey,r)}readOnly(){this.set=Se}oneWay(){this.set=je}}function Se(e,t){throw new Error(`Cannot set read-only property '${t}' on object: ${(0,n.inspect)(e)}`)}function je(e,t,r){return ge(e,t,null),Pe(e,t,r)}var Me=new WeakMap -class Ne{constructor(){this._registry=[],this._coreLibIndex=0}_getLibraryByName(e){var t=this._registry -for(var r of t)if(r.name===e)return r}register(e,t,r){var n=this._registry.length -this._getLibraryByName(e)||(r&&(n=this._coreLibIndex++),this._registry.splice(n,0,{name:e,version:t}))}registerCoreLibrary(e,t){this.register(e,t,!0)}deRegister(e){var t,r=this._getLibraryByName(e) -r&&(t=this._registry.indexOf(r),this._registry.splice(t,1))}}function Ie(...e){if(!X(e)){var t=e[0],r=t?t.initializer:void 0,n=t?t.value:void 0,i=function(e,t,i,a,s){return De([e,t,{initializer:r||(()=>n)}])} -return ue(i),i}return De(e)}function De([e,r,n]){var{getter:i,setter:s}=(0,a.trackedData)(r,n?n.initializer:void 0) -function o(){var e=i(this) -return(Array.isArray(e)||(0,c.isEmberArray)(e))&&(0,a.consumeTag)((0,a.tagFor)(e,"[]")),e}function u(e){s(this,e),(0,a.dirtyTagFor)(this,S)}var l={enumerable:!0,configurable:!0,isTracked:!0,get:o,set:u} -return re.add(u),(0,t.meta)(e).writeDescriptors(r,new Fe(o,u)),l}e.Libraries=Ne,(e.libraries=new Ne).registerCoreLibrary("Ember",d.default) -class Fe{constructor(e,t){this._get=e,this._set=t,G.add(this)}get(e){return this._get.call(e)}set(e,t,r){this._set.call(e,r)}}e.TrackedDescriptor=Fe -e.cached=(...e)=>{var[t,r,n]=e -var i=new WeakMap,s=n.get -n.get=function(){return i.has(this)||i.set(this,(0,a.createCache)(s.bind(this))),(0,a.getValue)(i.get(this))}} -var Le=Object.prototype.hasOwnProperty,Ue=!1,Be={_set:0,_unprocessedNamespaces:!1,get unprocessedNamespaces(){return this._unprocessedNamespaces},set unprocessedNamespaces(e){this._set++,this._unprocessedNamespaces=e}},$e=!1,ze=e.NAMESPACES=[],Ve=e.NAMESPACES_BY_ID=Object.create(null) -function He(){if(Be.unprocessedNamespaces){var e,t=o.context.lookup,n=Object.keys(t) -for(var i of n)if((e=i.charCodeAt(0))>=65&&e<=90){var a=Qe(t,i) -a&&(0,r.setName)(a,i)}}}function qe(e){Ge([e.toString()],e,new Set)}function We(){var e=Be.unprocessedNamespaces -if(e&&(He(),Be.unprocessedNamespaces=!1),e||$e){var t=ze -for(var r of t)qe(r) -$e=!1}}function Ge(e,t,n){var i=e.length,a=e.join(".") -for(var s in Ve[a]=t,(0,r.setName)(t,a),t)if(Le.call(t,s)){var o=t[s] -if(e[i]=s,o&&void 0===(0,r.getName)(o))(0,r.setName)(o,e.join(".")) -else if(o&&Ye(o)){if(n.has(o))continue -n.add(o),Ge(e,o,n)}}e.length=i}function Ye(e){return null!=e&&"object"==typeof e&&e.isNamespace}function Qe(e,t){try{var r=e[t] -return(null!==r&&"object"==typeof r||"function"==typeof r)&&r.isNamespace&&r}catch(n){}}})),e("@ember/-internals/owner/index",["exports","@glimmer/owner"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.getOwner=function(e){return(0,t.getOwner)(e)},e.isFactory=function(e){return null!=e&&"function"==typeof e.create},e.setOwner=function(e,r){(0,t.setOwner)(e,r)}})),e("@ember/-internals/routing/index",["exports","@ember/routing/-internals"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"RouterDSL",{enumerable:!0,get:function(){return t.DSL}}),Object.defineProperty(e,"controllerFor",{enumerable:!0,get:function(){return t.controllerFor}}),Object.defineProperty(e,"generateController",{enumerable:!0,get:function(){return t.generateController}}),Object.defineProperty(e,"generateControllerFactory",{enumerable:!0,get:function(){return t.generateControllerFactory}})})),e("@ember/-internals/runtime/index",["exports","@ember/-internals/runtime/lib/mixins/registry_proxy","@ember/-internals/runtime/lib/mixins/container_proxy","@ember/-internals/runtime/lib/mixins/comparable","@ember/-internals/runtime/lib/mixins/action_handler","@ember/-internals/runtime/lib/mixins/-proxy","@ember/enumerable/mutable","@ember/-internals/runtime/lib/mixins/target_action_support","@ember/-internals/runtime/lib/ext/rsvp"],(function(e,t,r,n,i,a,s,o,u){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ActionHandler",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"Comparable",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"ContainerProxyMixin",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"MutableEnumerable",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"RSVP",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(e,"RegistryProxyMixin",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"TargetActionSupport",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"_ProxyMixin",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"_contentFor",{enumerable:!0,get:function(){return a.contentFor}}),Object.defineProperty(e,"onerrorDefault",{enumerable:!0,get:function(){return u.onerrorDefault}})})),e("@ember/-internals/runtime/lib/ext/rsvp",["exports","rsvp","@ember/runloop","@ember/-internals/error-handling","@ember/debug"],(function(e,t,r,n,i){"use strict" -function a(e){var t=function(e){if(!e)return -var t=e -if(t.errorThrown)return function(e){var t=e.errorThrown -"string"==typeof t&&(t=new Error(t)) -return Object.defineProperty(t,"__reason_with_error_thrown__",{value:e,enumerable:!1}),t}(t) -var r=e -if("UnrecognizedURLError"===r.name)return -if("TransitionAborted"===e.name)return -return e}(e) -if(t){var r=(0,n.getDispatchOverride)() -if(!r)throw t -r(t)}}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.onerrorDefault=a,t.configure("async",((e,t)=>{r._backburner.schedule("actions",null,e,t)})),t.configure("after",(e=>{r._backburner.schedule(r._rsvpErrorQueue,null,e)})),t.on("error",a) -e.default=t})),e("@ember/-internals/runtime/lib/mixins/-proxy",["exports","@ember/-internals/meta","@ember/object/mixin","@ember/-internals/metal","@ember/-internals/utils","@ember/debug","@glimmer/manager","@glimmer/validator"],(function(e,t,r,n,i,a,s,o){"use strict" -function u(e){var t=(0,n.get)(e,"content") -return(0,o.updateTag)((0,n.tagForObject)(e),(0,n.tagForObject)(t)),t}function l(e,t,r){var a=(0,o.tagMetaFor)(e),s=(0,o.tagFor)(e,t,a) -if(t in e)return s -var l=[s,(0,o.tagFor)(e,"content",a)],c=u(e) -return(0,i.isObject)(c)&&l.push((0,n.tagForProperty)(c,t,r)),(0,o.combine)(l)}Object.defineProperty(e,"__esModule",{value:!0}),e.contentFor=u,e.default=void 0 -var c=r.default.create({content:null,init(){this._super(...arguments),(0,i.setProxy)(this),(0,n.tagForObject)(this),(0,s.setCustomTagFor)(this,l)},willDestroy(){this.set("content",null),this._super(...arguments)},isTruthy:(0,n.computed)("content",(function(){return Boolean((0,n.get)(this,"content"))})),unknownProperty(e){var t=u(this) -return t?(0,n.get)(t,e):void 0},setUnknownProperty(e,r){var i=(0,t.meta)(this) -if(i.isInitializing()||i.isPrototypeMeta(this))return(0,n.defineProperty)(this,e,null,r),r -var a=u(this) -return(0,n.set)(a,e,r)}}) -e.default=c})),e("@ember/-internals/runtime/lib/mixins/action_handler",["exports","@ember/object/mixin","@ember/-internals/metal","@ember/debug"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=t.default.create({mergedProperties:["actions"],send(e,...t){if(this.actions&&this.actions[e]&&!(!0===this.actions[e].apply(this,t)))return -var n=(0,r.get)(this,"target") -n&&n.send(...arguments)}}) -e.default=i})),e("@ember/-internals/runtime/lib/mixins/comparable",["exports","@ember/object/mixin"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var r=t.default.create({compare:null}) -e.default=r})),e("@ember/-internals/runtime/lib/mixins/container_proxy",["exports","@ember/runloop","@ember/object/mixin"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var n=r.default.create({__container__:null,ownerInjection(){return this.__container__.ownerInjection()},lookup(e,t){return this.__container__.lookup(e,t)},destroy(){var e=this.__container__ -e&&(0,t.join)((()=>{e.destroy(),(0,t.schedule)("destroy",e,"finalizeDestroy")})),this._super()},factoryFor(e){return this.__container__.factoryFor(e)}}) -e.default=n})),e("@ember/-internals/runtime/lib/mixins/registry_proxy",["exports","@ember/debug","@ember/object/mixin"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var n=r.default.create({__registry__:null,resolveRegistration(e){return this.__registry__.resolve(e)},register:i("register"),unregister:i("unregister"),hasRegistration:i("has"),registeredOption:i("getOption"),registerOptions:i("options"),registeredOptions:i("getOptions"),registerOptionsForType:i("optionsForType"),registeredOptionsForType:i("getOptionsForType")}) -function i(e){return function(...t){return this.__registry__[e](...t)}}e.default=n})),e("@ember/-internals/runtime/lib/mixins/target_action_support",["exports","@ember/-internals/environment","@ember/-internals/metal","@ember/object/mixin","@ember/debug"],(function(e,t,r,n,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var a=n.default.create({target:null,action:null,actionContext:null,actionContextObject:(0,r.computed)("actionContext",(function(){var e=(0,r.get)(this,"actionContext") -if("string"==typeof e){var n=(0,r.get)(this,e) -return void 0===n&&(n=(0,r.get)(t.context.lookup,e)),n}return e})),triggerAction(e={}){var{action:n,target:i,actionContext:a}=e -n=n||(0,r.get)(this,"action"),i=i||function(e){var n=(0,r.get)(e,"target") -if(n){if("string"==typeof n){var i=(0,r.get)(e,n) -return void 0===i&&(i=(0,r.get)(t.context.lookup,n)),i}return n}if(e._target)return e._target -return null}(this),void 0===a&&(a=(0,r.get)(this,"actionContextObject")||this) -var s,o=Array.isArray(a)?a:[a] -if(i&&n&&!1!==(null!=(s=i)&&"object"==typeof s&&"function"==typeof s.send?i.send(n,...o):i[n](...o)))return!0 -return!1}}) -e.default=a})),e("@ember/-internals/string/index",["exports","@ember/-internals/utils"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.classify=function(e){return o.get(e)},e.dasherize=function(e){return n.get(e)} -var r=/[ _]/g,n=new t.Cache(1e3,(e=>{return(t=e,l.get(t)).replace(r,"-") -var t})),i=/^(-|_)+(.)?/,a=/(.)(-|_|\.|\s)+(.)?/g,s=/(^|\/|\.)([a-z])/g,o=new t.Cache(1e3,(e=>{for(var t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/"),o=0;oe.toUpperCase()))})),u=/([a-z\d])([A-Z])/g,l=new t.Cache(1e3,(e=>e.replace(u,"$1_$2").toLowerCase()))})),e("@ember/-internals/utility-types/index",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.Opaque=void 0 -e.Opaque=class{}})),e("@ember/-internals/utils/index",["exports","@glimmer/util","@ember/debug"],(function(e,t,r){"use strict" -function n(e){var t=Object.create(null) -for(var r in t[e]=1,t)if(r===e)return r -return e}function i(e){return null!==e&&("object"==typeof e||"function"==typeof e)}Object.defineProperty(e,"__esModule",{value:!0}),e.ROOT=e.GUID_KEY=e.Cache=void 0,e.canInvoke=function(e,t){return null!=e&&"function"==typeof e[t]},e.checkHasSuper=void 0,e.dictionary=function(e){var t=Object.create(e) -return t._dict=null,delete t._dict,t},e.enumerableSymbol=function(e){var t=c+Math.floor(Math.random()*Date.now()).toString(),r=n(`__${e}${t}__`) -0 -return r},e.generateGuid=function(e,t=o){var r=t+s().toString() -i(e)&&u.set(e,r) -return r},e.getDebugName=void 0,e.getName=function(e){return T.get(e)},e.guidFor=function(e){var t -if(i(e))void 0===(t=u.get(e))&&(t=`${o}${s()}`,u.set(e,t)) -else if(void 0===(t=l.get(e))){var r=typeof e -t="string"===r?`st${s()}`:"number"===r?`nu${s()}`:"symbol"===r?`sy${s()}`:`(${e})`,l.set(e,t)}return t},e.intern=n,e.isInternalSymbol=function(e){return-1!==d.indexOf(e)},e.isObject=i,e.isProxy=function(e){if(i(e))return k.has(e) -return!1},e.lookupDescriptor=R,e.observerListenerMetaFor=function(e){return _.get(e)},e.setListeners=function(e,t){w(e).listeners=t},e.setName=function(e,t){i(e)&&T.set(e,t)},e.setObservers=function(e,t){w(e).observers=t},e.setProxy=function(e){i(e)&&k.add(e)},e.teardownMandatorySetter=e.symbol=e.setupMandatorySetter=e.setWithMandatorySetter=void 0,e.toString=function e(t){if("string"==typeof t)return t -if(null===t)return"null" -if(void 0===t)return"undefined" -if(Array.isArray(t)){for(var r="",n=0;n0&&(r+=","),P(t[n])||(r+=e(t[n])) -return r}if("function"==typeof t.toString)return t.toString() -return C.call(t)},e.uuid=s,e.wrap=function(e,t){if(!b(e))return e -if(!E.has(t)&&b(t))return O(e,O(t,g)) -return O(e,t)} -var a=0 -function s(){return++a}var o="ember",u=new WeakMap,l=new Map,c=e.GUID_KEY=n(`__ember${Date.now()}`) -var d=[] -var h -e.symbol=Symbol -e.getDebugName=h -var p=/\.(_super|call\(this|apply\(this)/,f=Function.prototype.toString,m=e.checkHasSuper=f.call((function(){return this})).indexOf("return this")>-1?function(e){return p.test(f.call(e))}:function(){return!0},v=new WeakMap,g=e.ROOT=Object.freeze((function(){})) -function b(e){var t=v.get(e) -return void 0===t&&(t=m(e),v.set(e,t)),t}v.set(g,!1) -class y{constructor(){this.listeners=void 0,this.observers=void 0}}var _=new WeakMap -function w(e){var t=_.get(e) -return void 0===t&&(t=new y,_.set(e,t)),t}var E=new t._WeakSet -function O(e,t){function r(){var r=this._super -this._super=t -var n=e.apply(this,arguments) -return this._super=r,n}E.add(r) -var n=_.get(e) -return void 0!==n&&_.set(r,n),r}function R(e,t){var r=e -do{var n=Object.getOwnPropertyDescriptor(r,t) -if(void 0!==n)return n -r=Object.getPrototypeOf(r)}while(null!==r) -return null}var T=new WeakMap -var C=Object.prototype.toString -function P(e){return null==e}var k=new t._WeakSet -e.Cache=class{constructor(e,t,r=new Map){this.limit=e,this.func=t,this.store=r,this.size=0,this.misses=0,this.hits=0}get(e){return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,this.set(e,this.func(e)))}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}}})),e("@ember/-internals/views/index",["exports","@ember/-internals/views/lib/system/utils","@ember/-internals/views/lib/system/event_dispatcher","@ember/-internals/views/lib/component_lookup","@ember/-internals/views/lib/views/core_view","@ember/-internals/views/lib/mixins/class_names_support","@ember/-internals/views/lib/mixins/child_views_support","@ember/-internals/views/lib/mixins/view_state_support","@ember/-internals/views/lib/mixins/view_support","@ember/-internals/views/lib/mixins/action_support","@ember/-internals/views/lib/compat/attrs","@ember/-internals/views/lib/system/action_manager"],(function(e,t,r,n,i,a,s,o,u,l,c,d){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ActionManager",{enumerable:!0,get:function(){return d.default}}),Object.defineProperty(e,"ActionSupport",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"ChildViewsSupport",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"ClassNamesSupport",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"ComponentLookup",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"CoreView",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"EventDispatcher",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"MUTABLE_CELL",{enumerable:!0,get:function(){return c.MUTABLE_CELL}}),Object.defineProperty(e,"ViewMixin",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(e,"ViewStateSupport",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"addChildView",{enumerable:!0,get:function(){return t.addChildView}}),Object.defineProperty(e,"clearElementView",{enumerable:!0,get:function(){return t.clearElementView}}),Object.defineProperty(e,"clearViewElement",{enumerable:!0,get:function(){return t.clearViewElement}}),Object.defineProperty(e,"constructStyleDeprecationMessage",{enumerable:!0,get:function(){return t.constructStyleDeprecationMessage}}),Object.defineProperty(e,"getChildViews",{enumerable:!0,get:function(){return t.getChildViews}}),Object.defineProperty(e,"getElementView",{enumerable:!0,get:function(){return t.getElementView}}),Object.defineProperty(e,"getRootViews",{enumerable:!0,get:function(){return t.getRootViews}}),Object.defineProperty(e,"getViewBoundingClientRect",{enumerable:!0,get:function(){return t.getViewBoundingClientRect}}),Object.defineProperty(e,"getViewBounds",{enumerable:!0,get:function(){return t.getViewBounds}}),Object.defineProperty(e,"getViewClientRects",{enumerable:!0,get:function(){return t.getViewClientRects}}),Object.defineProperty(e,"getViewElement",{enumerable:!0,get:function(){return t.getViewElement}}),Object.defineProperty(e,"getViewId",{enumerable:!0,get:function(){return t.getViewId}}),Object.defineProperty(e,"isSimpleClick",{enumerable:!0,get:function(){return t.isSimpleClick}}),Object.defineProperty(e,"setElementView",{enumerable:!0,get:function(){return t.setElementView}}),Object.defineProperty(e,"setViewElement",{enumerable:!0,get:function(){return t.setViewElement}})})),e("@ember/-internals/views/lib/compat/attrs",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.MUTABLE_CELL=void 0 -e.MUTABLE_CELL=Symbol("MUTABLE_CELL")})),e("@ember/-internals/views/lib/compat/fallback-view-registry",["exports","@ember/-internals/utils"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=(0,t.dictionary)(null)})),e("@ember/-internals/views/lib/component_lookup",["exports","@ember/object"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.default.extend({componentFor(e,t){var r=`component:${e}` -return t.factoryFor(r)},layoutFor(e,t,r){var n=`template:components/${e}` -return t.lookup(n,r)}})})),e("@ember/-internals/views/lib/mixins/action_support",["exports","@ember/-internals/metal","@ember/object/mixin","@ember/debug"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=r.default.create({send(e,...r){var n=this.actions&&this.actions[e] -if(n&&!(!0===n.apply(this,r)))return -var i=(0,t.get)(this,"target") -i&&i.send(...arguments)}}) -e.default=i})),e("@ember/-internals/views/lib/mixins/child_views_support",["exports","@ember/-internals/metal","@ember/object/mixin","@ember/-internals/views/lib/system/utils"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=r.default.create({childViews:(0,t.nativeDescDecorator)({configurable:!1,enumerable:!1,get(){return(0,n.getChildViews)(this)}}),appendChild(e){(0,n.addChildView)(this,e)}}) -e.default=i})),e("@ember/-internals/views/lib/mixins/class_names_support",["exports","@ember/-internals/metal","@ember/object/mixin","@ember/debug"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=Object.freeze([]),a=r.default.create({concatenatedProperties:["classNames","classNameBindings"],init(){this._super(...arguments)},classNames:i,classNameBindings:i}) -e.default=a})) -e("@ember/-internals/views/lib/mixins/view_state_support",["exports","@ember/object/mixin"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var r=t.default.create({_transitionTo(e){var t=this._currentState,r=this._currentState=this._states[e] -this._state=e,t&&t.exit&&t.exit(this),r.enter&&r.enter(this)}}) -e.default=r})),e("@ember/-internals/views/lib/mixins/view_support",["exports","@ember/-internals/utils","@ember/-internals/metal","@ember/object/mixin","@ember/debug","@ember/-internals/browser-environment","@ember/-internals/views/lib/system/utils"],(function(e,t,r,n,i,a,s){"use strict" -function o(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var u=n.default.create({concatenatedProperties:["attributeBindings"],nearestOfType(e){for(var t=this.parentView,r=e instanceof n.default?t=>e.detect(t):t=>e.detect(t.constructor);t;){if(r(t))return t -t=t.parentView}},nearestWithProperty(e){for(var t=this.parentView;t;){if(e in t)return t -t=t.parentView}},rerender(){return this._currentState.rerender(this)},element:(0,r.nativeDescDecorator)({configurable:!1,enumerable:!1,get(){return this.renderer.getElement(this)}}),appendTo(e){var t -return t=a.hasDOM&&"string"==typeof e?document.querySelector(e):e,this.renderer.appendTo(this,t),this},append(){return this.appendTo(document.body)},elementId:null,willInsertElement:o,didInsertElement:o,willClearRender:o,destroy(){this._super(...arguments),this._currentState.destroy(this)},willDestroyElement:o,didDestroyElement:o,parentViewDidChange:o,tagName:null,init(){this._super(...arguments),this.elementId||""===this.tagName||(this.elementId=(0,t.guidFor)(this))},handleEvent(e,t){return this._currentState.handleEvent(this,e,t)}}) -e.default=u})),e("@ember/-internals/views/lib/system/action_manager",["exports"],(function(e){"use strict" -function t(){}Object.defineProperty(e,"__esModule",{value:!0}),e.default=t,t.registeredActions={}})),e("@ember/-internals/views/lib/system/event_dispatcher",["exports","@ember/-internals/owner","@ember/debug","@ember/-internals/metal","@ember/object","@ember/-internals/views","@ember/-internals/views/lib/system/action_manager"],(function(e,t,r,n,i,a,s){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var o="ember-application" -class u extends i.default{constructor(){super(...arguments),this.events={touchstart:"touchStart",touchmove:"touchMove",touchend:"touchEnd",touchcancel:"touchCancel",keydown:"keyDown",keyup:"keyUp",keypress:"keyPress",mousedown:"mouseDown",mouseup:"mouseUp",contextmenu:"contextMenu",click:"click",dblclick:"doubleClick",focusin:"focusIn",focusout:"focusOut",submit:"submit",input:"input",change:"change",dragstart:"dragStart",drag:"drag",dragenter:"dragEnter",dragleave:"dragLeave",dragover:"dragOver",drop:"drop",dragend:"dragEnd"},this.rootElement="body",this._eventHandlers=Object.create(null),this._didSetup=!1,this.finalEventNameMapping=null,this._sanitizedRootElement=null,this.lazyEvents=new Map,this._reverseEventNameMapping=null}setup(e,t){var r=this.finalEventNameMapping={...(0,n.get)(this,"events"),...e} -this._reverseEventNameMapping=Object.keys(r).reduce(((e,t)=>{var n=r[t] -return n?{...e,[n]:t}:e}),{}) -var i=this.lazyEvents -null!=t&&(0,n.set)(this,"rootElement",t) -var a=(0,n.get)(this,"rootElement"),s="string"!=typeof a?a:document.querySelector(a) -for(var u in s.classList.add(o),this._sanitizedRootElement=s,r)Object.prototype.hasOwnProperty.call(r,u)&&i.set(u,r[u]??null) -this._didSetup=!0}setupHandlerForBrowserEvent(e){this.setupHandler(this._sanitizedRootElement,e,this.finalEventNameMapping[e]??null)}setupHandlerForEmberEvent(e){var t=this._reverseEventNameMapping?.[e] -t&&this.setupHandler(this._sanitizedRootElement,t,e)}setupHandler(e,t,r){if(null!==r&&this.lazyEvents.has(t)){var n=(e,t)=>{var n=(0,a.getElementView)(e),i=!0 -return n&&(i=n.handleEvent(r,t)),i},i=(e,t)=>{var n,i=e.getAttribute("data-ember-action") -if(""===i)for(var a of(n=[],e.attributes)){if(0===a.name.indexOf("data-ember-action-")){var o=s.default.registeredActions[a.value] -n.push(o)}}else if(i){var u=s.default.registeredActions[i] -u&&(n=[u])}if(n){for(var l=!0,c=0;c{var t=e.target -do{if((0,a.getElementView)(t)){if(!1===n(t,e)){e.preventDefault(),e.stopPropagation() -break}if(!0===e.cancelBubble)break}else if("function"==typeof t.hasAttribute&&t.hasAttribute("data-ember-action")&&!1===i(t,e))break -t=t.parentNode}while(t instanceof Element)} -e.addEventListener(t,o),this.lazyEvents.delete(t)}}destroy(){if(!1!==this._didSetup){var e=this._sanitizedRootElement -if(e){for(var t in this._eventHandlers)e.removeEventListener(t,this._eventHandlers[t]) -return e.classList.remove(o),this._super(...arguments)}}}toString(){return"(EventDispatcher)"}}e.default=u})),e("@ember/-internals/views/lib/system/utils",["exports","@ember/-internals/owner","@ember/-internals/utils","@ember/debug"],(function(e,t,r,n){"use strict" -function i(e){return""!==e.tagName&&e.elementId?e.elementId:(0,r.guidFor)(e)}Object.defineProperty(e,"__esModule",{value:!0}),e.addChildView=function(e,t){var r=o.get(e) -void 0===r&&(r=u(e)) -r.add(i(t))},e.clearElementView=function(e){a.delete(e)},e.clearViewElement=function(e){s.delete(e)},e.collectChildViews=l,e.constructStyleDeprecationMessage=function(e){return'Binding style attributes may introduce cross-site scripting vulnerabilities; please ensure that values being bound are properly escaped. For more information, including how to disable this warning, see https://deprecations.emberjs.com/v1.x/#toc_binding-style-attributes. Style affected: "'+e+'"'},e.contains=function(e,t){if(void 0!==e.contains)return e.contains(t) -var r=t.parentNode -for(;r&&(r=r.parentNode);)if(r===e)return!0 -return!1},e.elMatches=void 0,e.getChildViews=function(e){var r=(0,t.getOwner)(e) -var n=r.lookup("-view-registry:main") -return l(e,n)},e.getElementView=function(e){return a.get(e)||null},e.getRootViews=function(e){var t=e.lookup("-view-registry:main"),r=[] -return Object.keys(t).forEach((e=>{var n=t[e] -null===n.parentView&&r.push(n)})),r},e.getViewBoundingClientRect=function(e){return d(e).getBoundingClientRect()},e.getViewBounds=c,e.getViewClientRects=function(e){return d(e).getClientRects()},e.getViewElement=function(e){return s.get(e)||null},e.getViewId=i,e.getViewRange=d,e.initChildViews=u,e.isSimpleClick=function(e){if(!(e instanceof MouseEvent))return!1 -var t=e.shiftKey||e.metaKey||e.altKey||e.ctrlKey,r=e.which>1 -return!t&&!r},e.matches=function(e,t){return h.call(e,t)},e.setElementView=function(e,t){a.set(e,t)},e.setViewElement=function(e,t){s.set(e,t)} -var a=new WeakMap,s=new WeakMap -var o=new WeakMap -function u(e){var t=new Set -return o.set(e,t),t}function l(e,t){var r=[],n=o.get(e) -return void 0!==n&&n.forEach((e=>{var n=t[e] -!n||n.isDestroying||n.isDestroyed||r.push(n)})),r}function c(e){return e.renderer.getBounds(e)}function d(e){var t=c(e),r=document.createRange() -return r.setStartBefore(t.firstNode),r.setEndAfter(t.lastNode),r}var h=e.elMatches="undefined"!=typeof Element?Element.prototype.matches:void 0})),e("@ember/-internals/views/lib/views/core_view",["exports","@ember/-internals/metal","@ember/-internals/runtime","@ember/object/evented","@ember/object/-internals","@ember/-internals/views/lib/views/states"],(function(e,t,r,n,i,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var s=function(e,t,r,n){var i,a=arguments.length,s=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) -else for(var o=e.length-1;o>=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,r,s):i(t,r))||s) -return a>3&&s&&Object.defineProperty(t,r,s),s} -class o extends(i.FrameworkObject.extend(n.default,r.ActionHandler)){constructor(){super(...arguments),this.isView=!0}init(e){super.init(e),this._superTrigger=this.trigger,this.trigger=this._trigger,this._superHas=this.has,this.has=this._has,this.parentView??=null,this._state="preRender",this._currentState=this._states.preRender}instrumentDetails(e){return e.object=this.toString(),e.containerKey=this._debugContainerKey,e.view=this,e}_trigger(e,...t){this._superTrigger(e,...t) -var r=this[e] -if("function"==typeof r)return r.apply(this,t)}_has(e){return"function"==typeof this[e]||this._superHas(e)}}o.isViewFactory=!0,s([(0,t.inject)("renderer","-dom")],o.prototype,"renderer",void 0),o.prototype._states=a.default -e.default=o})),e("@ember/-internals/views/lib/views/states",["exports","@ember/-internals/utils","@ember/debug","@ember/instrumentation","@ember/runloop"],(function(e,t,r,n,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var a=Object.freeze({appendChild(){throw new Error("You can't use appendChild outside of the rendering process")},handleEvent:()=>!0,rerender(){},destroy(){}}),s=Object.freeze({...a}),o=Object.freeze({...a,rerender(e){e.renderer.rerender()},destroy(e){e.renderer.remove(e)},handleEvent:(e,t,r)=>!e.has(t)||(0,n.flaggedInstrument)(`interaction.${t}`,{event:r,view:e},(()=>(0,i.join)(e,e.trigger,t,r)))}),u=Object.freeze({...o,enter(e){e.renderer.register(e)}}),l=Object.freeze({...a,appendChild(){throw new Error("You can't call appendChild on a view being destroyed")},rerender(){throw new Error("You can't call rerender on a view being destroyed")}}),c=Object.freeze({preRender:s,inDOM:u,hasElement:o,destroying:l}) -e.default=c})),e("@ember/application/index",["exports","@ember/owner","@ember/-internals/utils","@ember/-internals/environment","@ember/-internals/browser-environment","@ember/debug","@ember/runloop","@ember/-internals/metal","@ember/application/lib/lazy_load","@ember/-internals/runtime","@ember/-internals/views","@ember/routing/route","@ember/routing/router","@ember/routing/hash-location","@ember/routing/history-location","@ember/routing/none-location","@ember/routing/-internals","@ember/application/instance","@ember/engine","@ember/-internals/container","@ember/-internals/glimmer","@ember/routing/router-service"],(function(e,t,r,n,i,a,s,o,u,l,c,d,h,p,f,m,v,g,b,y,_,w){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"_loaded",{enumerable:!0,get:function(){return u._loaded}}),e.getOwner=e.default=void 0,Object.defineProperty(e,"onLoad",{enumerable:!0,get:function(){return u.onLoad}}),Object.defineProperty(e,"runLoadHooks",{enumerable:!0,get:function(){return u.runLoadHooks}}),e.setOwner=void 0 -e.getOwner=t.getOwner,e.setOwner=t.setOwner -class E extends b.default{constructor(){super(...arguments),this._bootPromise=null,this._bootResolver=null}static buildRegistry(e){var t=super.buildRegistry(e) -return function(e){e.register("router:main",h.default),e.register("-view-registry:main",{create:()=>(0,r.dictionary)(null)}),e.register("route:basic",d.default),e.register("event_dispatcher:main",c.EventDispatcher),e.register("location:hash",p.default),e.register("location:history",f.default),e.register("location:none",m.default),e.register(y.privatize`-bucket-cache:main`,{create:()=>new v.BucketCache}),e.register("service:router",w.default)}(t),(0,_.setupApplicationRegistry)(t),t}init(e){super.init(e),this.rootElement??="body",this._document??=null,this.eventDispatcher??=null,this.customEvents??=null,this.autoboot??=!0,this._document??=i.hasDOM?window.document:null,this._globalsMode??=!0,this._readinessDeferrals=1,this._booted=!1,this._applicationInstances=new Set,this.autoboot=this._globalsMode=Boolean(this.autoboot),this._globalsMode&&this._prepareForGlobalsMode(),this.autoboot&&this.waitForDOMReady()}buildInstance(e={}){return g.default.create({...e,base:this,application:this})}_watchInstance(e){this._applicationInstances.add(e)}_unwatchInstance(e){return this._applicationInstances.delete(e)}_prepareForGlobalsMode(){this.Router=(this.Router||h.default).extend(),this._buildDeprecatedInstance()}_buildDeprecatedInstance(){var e=this.buildInstance() -this.__deprecatedInstance__=e,this.__container__=e.__container__}waitForDOMReady(){var e=this._document -if(null===e||"loading"!==e.readyState)(0,s.schedule)("actions",this,this.domReady) -else{var t=()=>{e.removeEventListener("DOMContentLoaded",t),(0,s.run)(this,this.domReady)} -e.addEventListener("DOMContentLoaded",t)}}domReady(){this.isDestroying||this.isDestroyed||this._bootSync()}deferReadiness(){this._readinessDeferrals++}advanceReadiness(){this._readinessDeferrals--,0===this._readinessDeferrals&&(0,s.once)(this,this.didBecomeReady)}boot(){if(this._bootPromise)return this._bootPromise -try{this._bootSync()}catch(e){}return this._bootPromise}_bootSync(){if(!(this._booted||this.isDestroying||this.isDestroyed)){var e=this._bootResolver=l.RSVP.defer() -this._bootPromise=e.promise -try{this.runInitializers(),(0,u.runLoadHooks)("application",this),this.advanceReadiness()}catch(t){throw e.reject(t),t}}}reset(){var e=this.__deprecatedInstance__ -this._readinessDeferrals=1,this._bootPromise=null,this._bootResolver=null,this._booted=!1,(0,s.join)(this,(function(){(0,s.run)(e,"destroy"),this._buildDeprecatedInstance(),(0,s.schedule)("actions",this,"_bootSync")}))}didBecomeReady(){if(!this.isDestroying&&!this.isDestroyed)try{var e -if(this.autoboot)(e=this._globalsMode?this.__deprecatedInstance__:this.buildInstance())._bootSync(),this.ready(),e.startRouting() -this._bootResolver.resolve(this),this._booted=!0}catch(t){throw this._bootResolver.reject(t),t}}ready(){return this}willDestroy(){super.willDestroy(),u._loaded.application===this&&(u._loaded.application=void 0),this._applicationInstances.size&&(this._applicationInstances.forEach((e=>e.destroy())),this._applicationInstances.clear())}visit(e,t){return this.boot().then((()=>{var r=this.buildInstance() -return r.boot(t).then((()=>r.visit(e))).catch((e=>{throw(0,s.run)(r,"destroy"),e}))}))}}e.default=E,E.initializer=(0,b.buildInitializerMethod)("initializers","initializer"),E.instanceInitializer=(0,b.buildInitializerMethod)("instanceInitializers","instance initializer")})),e("@ember/application/instance",["exports","@ember/object","@ember/-internals/browser-environment","@ember/engine/instance","@ember/-internals/glimmer","@ember/debug","@ember/routing/router","@ember/-internals/views"],(function(e,t,r,n,i,a,s,o){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class u extends n.default{constructor(){super(...arguments),this.rootElement=null}init(e){super.init(e),this.application._watchInstance(this),this.register("-application-instance:main",this,{instantiate:!1})}_bootSync(e){return this._booted||(e=new l(e),this.setupRegistry(e),e.rootElement?this.rootElement=e.rootElement:this.rootElement=this.application.rootElement,e.location&&(0,t.set)(this.router,"location",e.location),this.application.runInstanceInitializers(this),e.isInteractive&&this.setupEventDispatcher(),this._booted=!0),this}setupRegistry(e){this.constructor.setupRegistry(this.__registry__,e)}get router(){if(!this._router){var e=this.lookup("router:main") -this._router=e}return this._router}didCreateRootView(e){e.appendTo(this.rootElement)}startRouting(){this.router.startRouting()}setupRouter(){this.router.setupRouter()}handleURL(e){return this.setupRouter(),this.router.handleURL(e)}setupEventDispatcher(){var e=this.lookup("event_dispatcher:main"),r=(0,t.get)(this.application,"customEvents"),n=(0,t.get)(this,"customEvents"),i=Object.assign({},r,n) -return e.setup(i,this.rootElement),e}getURL(){return this.router.url}visit(e){this.setupRouter() -var r=this.__container__.lookup("-environment:main"),n=this.router,a=()=>r.options.shouldRender?(0,i.renderSettled)().then((()=>this)):this,s=e=>{if(e.error&&e.error instanceof Error)throw e.error -if("TransitionAborted"===e.name&&n._routerMicrolib.activeTransition)return n._routerMicrolib.activeTransition.then(a,s) -throw"TransitionAborted"===e.name?new Error(e.message):e},o=(0,t.get)(n,"location") -return o.setURL(e),n.handleURL(o.getURL()).then(a,s)}willDestroy(){super.willDestroy(),this.application._unwatchInstance(this)}static setupRegistry(e,t={}){var r=t instanceof l?t:new l(t) -e.register("-environment:main",r.toEnvironment(),{instantiate:!1}),e.register("service:-document",r.document,{instantiate:!1}),super.setupRegistry(e,r)}}class l{constructor(e={}){this.location=null,this.isInteractive=Boolean(r.hasDOM),this._renderMode=e._renderMode,void 0!==e.isBrowser?this.isBrowser=Boolean(e.isBrowser):this.isBrowser=Boolean(r.hasDOM),this.isBrowser||(this.isInteractive=!1,this.location="none"),void 0!==e.shouldRender?this.shouldRender=Boolean(e.shouldRender):this.shouldRender=!0,this.shouldRender||(this.isInteractive=!1),e.document?this.document=e.document:this.document="undefined"!=typeof document?document:null,e.rootElement&&(this.rootElement=e.rootElement),void 0!==e.location&&(this.location=e.location),void 0!==e.isInteractive&&(this.isInteractive=Boolean(e.isInteractive))}toEnvironment(){return{...r,hasDOM:this.isBrowser,isInteractive:this.isInteractive,_renderMode:this._renderMode,options:this}}}e.default=u})),e("@ember/application/lib/lazy_load",["exports","@ember/-internals/environment","@ember/-internals/browser-environment"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._loaded=void 0,e.onLoad=function(e,t){var r=i[e];(n[e]??=[]).push(t),r&&t(r)},e.runLoadHooks=function(e,t){if(i[e]=t,r.window&&"function"==typeof CustomEvent){var a=new CustomEvent(e,{detail:t}) -r.window.dispatchEvent(a)}n[e]?.forEach((e=>e(t)))} -var n=t.ENV.EMBER_LOAD_HOOKS||{},i={} -e._loaded=i})),e("@ember/application/namespace",["exports","@ember/-internals/metal","@ember/object","@ember/-internals/utils","@ember/debug"],(function(e,t,r,n,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class a extends r.default{init(e){super.init(e),(0,t.addNamespace)(this)}toString(){var e=(0,r.get)(this,"name")||(0,r.get)(this,"modulePrefix") -if(e)return e;(0,t.findNamespaces)() -var i=(0,n.getName)(this) -return void 0===i&&(i=(0,n.guidFor)(this),(0,n.setName)(this,i)),i}nameClasses(){(0,t.processNamespace)(this)}destroy(){return(0,t.removeNamespace)(this),super.destroy()}}a.NAMESPACES=t.NAMESPACES,a.NAMESPACES_BY_ID=t.NAMESPACES_BY_ID,a.processAll=t.processAllNamespaces,a.byName=t.findNamespace,a.prototype.isNamespace=!0 -e.default=a})),e("@ember/array/-internals",["exports","@glimmer/util"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.isEmberArray=function(e){return r.has(e)},e.setEmberArray=function(e){r.add(e)} -var r=new t._WeakSet})),e("@ember/array/index",["exports","@ember/-internals/metal","@ember/object","@ember/object/mixin","@ember/debug","@ember/enumerable","@ember/enumerable/mutable","@ember/utils","@ember/-internals/environment","@ember/object/observable","@ember/array/-internals","@ember/array/lib/make-array"],(function(e,t,r,n,i,a,s,o,u,l,c,d){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.NativeArray=e.MutableArray=e.A=void 0,e.isArray=O,Object.defineProperty(e,"makeArray",{enumerable:!0,get:function(){return d.default}}),e.removeAt=w,e.uniqBy=f -var h=Object.freeze([]),p=e=>e -function f(e,t=p){var n=C(),i=new Set,a="function"==typeof t?t:e=>(0,r.get)(e,t) -return e.forEach((e=>{var t=a(e) -i.has(t)||(i.add(t),n.push(e))})),n}function m(...e){var t=2===e.length,[n,i]=e -return t?e=>i===(0,r.get)(e,n):e=>Boolean((0,r.get)(e,n))}function v(e,r,n){for(var i=e.length,a=n;a!n(e,t,r)),0)}function _(e,t,r=0,n){var i=e.length -return r<0&&(r+=i),v(e,n&&t!=t?e=>e!=e:e=>e===t,r)}function w(e,r,n){return(0,t.replace)(e,r,n??1,h),e}function E(e,r,n){return(0,t.replace)(e,r,0,[n]),n}function O(e){if(!e||e.setInterval)return!1 -if(Array.isArray(e)||P.detect(e))return!0 -var t=(0,o.typeOf)(e) -if("array"===t)return!0 -var r=e.length -return"number"==typeof r&&r==r&&"object"===t}function R(e){var r=(0,t.computed)(e) -return r.enumerable=!1,r}function T(e){return this.map((t=>(0,r.get)(t,e)))}var C,P=n.default.create(a.default,{init(){this._super(...arguments),(0,c.setEmberArray)(this)},objectsAt(e){return e.map((e=>(0,t.objectAt)(this,e)))},"[]":R({get(){return this},set(e,t){return this.replace(0,this.length,t),this}}),firstObject:R((function(){return(0,t.objectAt)(this,0)})).readOnly(),lastObject:R((function(){return(0,t.objectAt)(this,this.length-1)})).readOnly(),slice(e=0,r){var n,i=C(),a=this.length -for(e<0&&(e=a+e),n=void 0===r||r>a?a:r<0?a+r:r;e=n)&&(r=n-1),r<0&&(r+=n) -for(var i=r;i>=0;i--)if((0,t.objectAt)(this,i)===e)return i -return-1},forEach(e,t=null){for(var r=this.length,n=0;n(0,r.set)(n,e,t)))},map(e,t=null){var r=C() -return this.forEach(((n,i,a)=>r[i]=e.call(t,n,i,a))),r},mapBy:T,filter(e,t=null){var r=C() -return this.forEach(((n,i,a)=>{e.call(t,n,i,a)&&r.push(n)})),r},reject(e,t=null){return this.filter((function(){return!e.apply(t,arguments)}))},filterBy(){return this.filter(m(...arguments))},rejectBy(){return this.reject(m(...arguments))},find(e,t=null){return g(this,e,t)},findBy(){return g(this,m(...arguments))},every(e,t=null){return y(this,e,t)},isEvery(){return y(this,m(...arguments))},any(e,t=null){return b(this,e,t)},isAny(){return b(this,m(...arguments))},reduce(e,t){var r=t -return this.forEach((function(t,n){r=e(r,t,n,this)}),this),r},invoke(e,...t){var r=C() -return this.forEach((n=>r.push(n[e]?.(...t)))),r},toArray(){return this.map((e=>e))},compact(){return this.filter((e=>null!=e))},includes(e,t){return-1!==_(this,e,t,!0)},sortBy(){var e=arguments -return this.toArray().sort(((t,n)=>{for(var i=0;it!==e:e=>e==e -return this.filter(t)}}),k=e.MutableArray=n.default.create(P,s.default,{clear(){var e=this.length -return 0===e||this.replace(0,e,h),this},insertAt(e,t){return E(this,e,t),this},removeAt(e,t){return w(this,e,t)},pushObject(e){return E(this,this.length,e)},pushObjects(e){return this.replace(this.length,0,e),this},popObject(){var e=this.length -if(0===e)return null -var r=(0,t.objectAt)(this,e-1) -return this.removeAt(e-1,1),r},shiftObject(){if(0===this.length)return null -var e=(0,t.objectAt)(this,0) -return this.removeAt(0),e},unshiftObject(e){return E(this,0,e)},unshiftObjects(e){return this.replace(0,0,e),this},reverseObjects(){var e=this.length -if(0===e)return this -var t=this.toArray().reverse() -return this.replace(0,e,t),this},setObjects(e){if(0===e.length)return this.clear() -var t=this.length -return this.replace(0,t,e),this},removeObject(e){for(var r=this.length||0;--r>=0;){(0,t.objectAt)(this,r)===e&&this.removeAt(r)}return this},removeObjects(e){(0,t.beginPropertyChanges)() -for(var r=e.length-1;r>=0;r--)this.removeObject(e[r]) -return(0,t.endPropertyChanges)(),this},addObject(e){return this.includes(e)||this.pushObject(e),this},addObjects(e){return(0,t.beginPropertyChanges)(),e.forEach((e=>this.addObject(e))),(0,t.endPropertyChanges)(),this}}),x=e.NativeArray=n.default.create(k,l.default,{objectAt(e){return this[e]},replace(e,r,n=h){return(0,t.replaceInNativeArray)(this,e,r,n),this}}),A=["length"] -x.keys().forEach((e=>{Array.prototype[e]&&A.push(e)})),e.NativeArray=x=x.without(...A),u.ENV.EXTEND_PROTOTYPES.Array?(x.apply(Array.prototype,!0),e.A=C=function(e){return e||[]}):e.A=C=function(e){return(0,c.isEmberArray)(e)?e:x.apply(e??[])} -e.default=P})),e("@ember/array/lib/make-array",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var{isArray:t}=Array -e.default=function(e){return null==e?[]:t(e)?e:[e]}})),e("@ember/array/mutable",["exports","@ember/array"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.MutableArray}})})),e("@ember/array/proxy",["exports","@ember/-internals/metal","@ember/object","@ember/-internals/utils","@ember/array","@ember/array/mutable","@ember/debug","@glimmer/manager","@glimmer/validator"],(function(e,t,r,n,i,a,s,o,u){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var l={willChange:"_arrangedContentArrayWillChange",didChange:"_arrangedContentArrayDidChange"} -function c(e,t){return"[]"===t?(e._revalidate(),e._arrTag):"length"===t?(e._revalidate(),e._lengthTag):(0,u.tagFor)(e,t)}class d extends r.default{constructor(){super(...arguments),this._objectsDirtyIndex=0,this._objects=null,this._lengthDirty=!0,this._length=0,this._arrangedContent=null,this._arrangedContentIsUpdating=!1,this._arrangedContentTag=null,this._arrangedContentRevision=null,this._lengthTag=null,this._arrTag=null}init(e){super.init(e),(0,o.setCustomTagFor)(this,c)}[t.PROPERTY_DID_CHANGE](){this._revalidate()}willDestroy(){this._removeArrangedContentArrayObserver()}objectAtContent(e){var n=(0,r.get)(this,"arrangedContent") -return(0,t.objectAt)(n,e)}replace(e,t,r){this.replaceContent(e,t,r)}replaceContent(e,n,i){var a=(0,r.get)(this,"content");(0,t.replace)(a,e,n,i)}objectAt(e){if(this._revalidate(),null===this._objects&&(this._objects=[]),-1!==this._objectsDirtyIndex&&e>=this._objectsDirtyIndex){var t=(0,r.get)(this,"arrangedContent") -if(t)for(var n=this._objects.length=(0,r.get)(t,"length"),i=this._objectsDirtyIndex;is)&&(this._objectsDirtyIndex=s),this._lengthDirty=!0,(0,t.arrayContentDidChange)(this,n,i,a,!1)}_invalidate(){this._objectsDirtyIndex=0,this._lengthDirty=!0}_revalidate(){if(!0!==this._arrangedContentIsUpdating&&(null===this._arrangedContentTag||!(0,u.validateTag)(this._arrangedContentTag,this._arrangedContentRevision))){var e=this.get("arrangedContent") -null===this._arrangedContentTag?this._addArrangedContentArrayObserver(e):(this._arrangedContentIsUpdating=!0,this._updateArrangedContentArray(e),this._arrangedContentIsUpdating=!1) -var r=this._arrangedContentTag=(0,u.tagFor)(this,"arrangedContent") -this._arrangedContentRevision=(0,u.valueForTag)(this._arrangedContentTag),(0,n.isObject)(e)?(this._lengthTag=(0,u.combine)([r,(0,t.tagForProperty)(e,"length")]),this._arrTag=(0,u.combine)([r,(0,t.tagForProperty)(e,"[]")])):this._lengthTag=this._arrTag=r}}}d.reopen(a.default,{arrangedContent:(0,t.alias)("content")}) -e.default=d})),e("@ember/canary-features/index",["exports","@ember/-internals/environment"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.FEATURES=e.DEFAULT_FEATURES=void 0,e.isEnabled=function(e){var r=n[e] -return!0===r||!1===r?r:!!t.ENV.ENABLE_OPTIONAL_FEATURES} -var r=e.DEFAULT_FEATURES={},n=e.FEATURES=Object.assign(r,t.ENV.FEATURES)})),e("@ember/component/helper",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Helper}}),Object.defineProperty(e,"helper",{enumerable:!0,get:function(){return t.helper}})})),e("@ember/component/index",["exports","@glimmer/manager","@ember/-internals/glimmer"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Input",{enumerable:!0,get:function(){return r.Input}}),Object.defineProperty(e,"Textarea",{enumerable:!0,get:function(){return r.Textarea}}),Object.defineProperty(e,"capabilities",{enumerable:!0,get:function(){return r.componentCapabilities}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return r.Component}}),Object.defineProperty(e,"getComponentTemplate",{enumerable:!0,get:function(){return t.getComponentTemplate}}),Object.defineProperty(e,"setComponentManager",{enumerable:!0,get:function(){return r.setComponentManager}}),Object.defineProperty(e,"setComponentTemplate",{enumerable:!0,get:function(){return t.setComponentTemplate}})})),e("@ember/component/template-only",["exports","@glimmer/runtime"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var r=t.templateOnlyComponent -e.default=r})),e("@ember/controller/index",["exports","@ember/-internals/owner","@ember/object","@ember/object/-internals","@ember/-internals/metal","@ember/object/mixin","@ember/-internals/runtime","@ember/-internals/utils"],(function(e,t,r,n,i,a,s,o){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ControllerMixin=void 0,e.inject=function(...e){return(0,i.inject)("controller",...e)} -var u=(0,o.symbol)("MODEL"),l=e.ControllerMixin=a.default.create(s.ActionHandler,{isController:!0,concatenatedProperties:["queryParams"],target:null,store:null,init(){this._super(...arguments) -var e=(0,t.getOwner)(this) -e&&(this.namespace=e.lookup("application:main"),this.target=e.lookup("router:main"))},model:(0,r.computed)({get(){return this[u]},set(e,t){return this[u]=t}}),queryParams:null,_qpDelegate:null,_qpChanged(e,t){var n=t.indexOf(".[]"),i=-1===n?t:t.slice(0,n);(0,e._qpDelegate)(i,(0,r.get)(e,i))}}) -class c extends(n.FrameworkObject.extend(l)){}e.default=c})),e("@ember/debug/container-debug-adapter",["exports","@ember/-internals/string","@ember/object","@ember/utils","@ember/-internals/owner","@ember/application/namespace"],(function(e,t,r,n,i,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class s extends r.default{constructor(e){super(e),this.resolver=(0,i.getOwner)(this).lookup("resolver-for-debugging:main")}canCatalogEntriesByType(e){return"model"!==e&&"template"!==e}catalogEntriesByType(e){var r=a.default.NAMESPACES,i=[],s=new RegExp(`${(0,t.classify)(e)}$`) -return r.forEach((e=>{for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&s.test(r)){var a=e[r] -"class"===(0,n.typeOf)(a)&&i.push((0,t.dasherize)(r.replace(s,"")))}})),i}}e.default=s})),e("@ember/debug/data-adapter",["exports","@ember/-internals/owner","@ember/runloop","@ember/object","@ember/-internals/string","@ember/application/namespace","@ember/array","@glimmer/validator","@ember/debug"],(function(e,t,r,n,i,a,s,o,u){"use strict" -function l(e,t){if(Symbol.iterator in e)for(var r of e)t(r) -else(0,u.assert)("","function"==typeof e.forEach),e.forEach(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class c{getCacheForItem(e){var t=this.recordCaches.get(e) -if(!t){var r=!1 -t=(0,o.createCache)((()=>{r?this.updated.push(this.wrapRecord(e)):(this.added.push(this.wrapRecord(e)),r=!0)})),this.recordCaches.set(e,t)}return t}constructor(e,t,r,n,i,a){this.wrapRecord=i,this.release=a,this.recordCaches=new Map,this.added=[],this.updated=[],this.removed=[],this.recordArrayCache=(0,o.createCache)((()=>{var a=new Set;(0,o.consumeTag)((0,o.tagFor)(e,"[]")),l(e,(e=>{(0,o.getValue)(this.getCacheForItem(e)),a.add(e)})),(0,o.untrack)((()=>{this.recordCaches.forEach(((e,t)=>{a.has(t)||(this.removed.push(i(t)),this.recordCaches.delete(t))}))})),this.added.length>0&&(t(this.added),this.added=[]),this.updated.length>0&&(r(this.updated),this.updated=[]),this.removed.length>0&&(n(this.removed),this.removed=[])}))}revalidate(){(0,o.getValue)(this.recordArrayCache)}}class d{constructor(e,t,n){this.release=n -var i=!1 -this.cache=(0,o.createCache)((()=>{l(e,(()=>{})),(0,o.consumeTag)((0,o.tagFor)(e,"[]")),!0===i?(0,r.next)(t):i=!0})),this.release=n}revalidate(){(0,o.getValue)(this.cache)}}class h extends n.default{constructor(e){super(e),this.releaseMethods=(0,s.A)(),this.recordsWatchers=new Map,this.typeWatchers=new Map,this.flushWatchers=null,this.attributeLimit=3,this.acceptsModelName=!0,this.containerDebugAdapter=(0,t.getOwner)(this).lookup("container-debug-adapter:main")}getFilters(){return(0,s.A)()}watchModelTypes(e,t){var r=this.getModelTypes(),n=(0,s.A)() -e(r.map((e=>{var r=e.klass,i=this.wrapModelType(r,e.name) -return n.push(this.observeModelType(e.name,t)),i}))) -var i=()=>{n.forEach((e=>e())),this.releaseMethods.removeObject(i)} -return this.releaseMethods.pushObject(i),i}_nameToClass(e){if("string"==typeof e){var r=(0,t.getOwner)(this).factoryFor(`model:${e}`) -e=r&&r.class}return e}watchRecords(e,t,r,n){var i=this._nameToClass(e),a=this.getRecords(i,e),{recordsWatchers:s}=this,o=s.get(a) -return o||(o=new c(a,t,r,n,(e=>this.wrapRecord(e)),(()=>{s.delete(a),this.updateFlushWatchers()})),s.set(a,o),this.updateFlushWatchers(),o.revalidate()),o.release}updateFlushWatchers(){null===this.flushWatchers?(this.typeWatchers.size>0||this.recordsWatchers.size>0)&&(this.flushWatchers=()=>{this.typeWatchers.forEach((e=>e.revalidate())),this.recordsWatchers.forEach((e=>e.revalidate()))},r._backburner.on("end",this.flushWatchers)):0===this.typeWatchers.size&&0===this.recordsWatchers.size&&(r._backburner.off("end",this.flushWatchers),this.flushWatchers=null)}willDestroy(){this._super(...arguments),this.typeWatchers.forEach((e=>e.release())),this.recordsWatchers.forEach((e=>e.release())),this.releaseMethods.forEach((e=>e())),this.flushWatchers&&r._backburner.off("end",this.flushWatchers)}detect(e){return!1}columnsForType(e){return(0,s.A)()}observeModelType(e,t){var r=this._nameToClass(e),n=this.getRecords(r,e),{typeWatchers:i}=this,a=i.get(n) -return a||(a=new d(n,(()=>{t([this.wrapModelType(r,e)])}),(()=>{i.delete(n),this.updateFlushWatchers()})),i.set(n,a),this.updateFlushWatchers(),a.revalidate()),a.release}wrapModelType(e,t){var r=this.getRecords(e,t) -return{name:t,count:(0,n.get)(r,"length"),columns:this.columnsForType(e),object:e}}getModelTypes(){var e=this.containerDebugAdapter -return(e.canCatalogEntriesByType("model")?e.catalogEntriesByType("model"):this._getObjectsOnNamespaces()).map((e=>({klass:this._nameToClass(e),name:e}))).filter((e=>this.detect(e.klass)))}_getObjectsOnNamespaces(){var e=a.default.NAMESPACES,t=[] -return e.forEach((e=>{for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&this.detect(e[r])){var n=(0,i.dasherize)(r) -t.push(n)}})),t}getRecords(e,t){return(0,s.A)()}wrapRecord(e){return{object:e,columnValues:this.getRecordColumnValues(e),searchKeywords:this.getRecordKeywords(e),filterValues:this.getRecordFilterValues(e),color:this.getRecordColor(e)}}getRecordColumnValues(e){return{}}getRecordKeywords(e){return(0,s.A)()}getRecordFilterValues(e){return{}}getRecordColor(e){return null}}e.default=h})),e("@ember/debug/index",["exports","@ember/-internals/browser-environment","@ember/debug/lib/deprecate","@ember/debug/lib/testing","@ember/debug/lib/warn","@ember/debug/lib/inspect","@ember/debug/lib/capture-render-tree"],(function(e,t,r,n,i,a,s){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.assert=e._warnIfUsingStrippedFeatureFlags=void 0,Object.defineProperty(e,"captureRenderTree",{enumerable:!0,get:function(){return s.default}}),e.info=e.getDebugFunction=e.deprecateFunc=e.deprecate=e.debugSeal=e.debugFreeze=e.debug=void 0,Object.defineProperty(e,"inspect",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"isTesting",{enumerable:!0,get:function(){return n.isTesting}}),Object.defineProperty(e,"registerDeprecationHandler",{enumerable:!0,get:function(){return r.registerHandler}}),Object.defineProperty(e,"registerWarnHandler",{enumerable:!0,get:function(){return i.registerHandler}}),e.setDebugFunction=e.runInDebug=void 0,Object.defineProperty(e,"setTesting",{enumerable:!0,get:function(){return n.setTesting}}),e.warn=void 0 -var o=()=>{},u=(e.assert=o,e.info=o,e.warn=o,e.debug=o,e.deprecate=o,e.debugSeal=o,e.debugFreeze=o,e.runInDebug=o,e.setDebugFunction=o,e.getDebugFunction=o,function(){return arguments[arguments.length-1]}) -e.deprecateFunc=u})),e("@ember/debug/lib/capture-render-tree",["exports","@glimmer/util"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return(0,t.expect)(e.lookup("renderer:-dom"),"BUG: owner is missing renderer").debugRenderTree.capture()}})),e("@ember/debug/lib/deprecate",["exports","@ember/-internals/environment","@ember/debug/index","@ember/debug/lib/handlers"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.missingOptionsIdDeprecation=e.missingOptionsDeprecation=e.missingOptionDeprecation=e.default=void 0 -var i=()=>{} -e.registerHandler=i -var a=()=>"" -e.missingOptionDeprecation=a -var s=()=>{} -e.default=s})),e("@ember/debug/lib/handlers",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.invoke=e.HANDLERS=void 0 -e.HANDLERS={},e.registerHandler=function(e,t){} -var t=()=>{} -e.invoke=t})),e("@ember/debug/lib/inspect",["exports","@glimmer/util","@ember/debug"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){if("number"==typeof e&&2===arguments.length)return this -return d(e,0)} -var{toString:n}=Object.prototype,{toString:i}=Function.prototype,{isArray:a}=Array,{keys:s}=Object,{stringify:o}=JSON,u=100,l=4,c=/^[\w$]+$/ -function d(e,r,c){var p=!1 -switch(typeof e){case"undefined":return"undefined" -case"object":if(null===e)return"null" -if(a(e)){p=!0 -break}if(e.toString===n||void 0===e.toString)break -return e.toString() -case"function":return e.toString===i?e.name?`[Function:${e.name}]`:"[Function]":e.toString() -case"string":return o(e) -default:return e.toString()}if(void 0===c)c=new t._WeakSet -else if(c.has(e))return"[Circular]" -return c.add(e),p?function(e,t,r){if(t>l)return"[Array]" -for(var n="[",i=0;i=u){n+=`... ${e.length-u} more items` -break}n+=d(e[i],t,r)}return n+=" ]"}(e,r+1,c):function(e,t,r){if(t>l)return"[Object]" -for(var n="{",i=s(e),a=0;a=u){n+=`... ${i.length-u} more keys` -break}var o=i[a] -n+=`${h(String(o))}: ${d(e[o],t,r)}`}return n+=" }"}(e,r+1,c)}function h(e){return c.test(e)?e:o(e)}})),e("@ember/debug/lib/testing",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.isTesting=function(){return t},e.setTesting=function(e){t=Boolean(e)} -var t=!1})),e("@ember/debug/lib/warn",["exports","@ember/debug/index","@ember/debug/lib/handlers"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.missingOptionsIdDeprecation=e.missingOptionsDeprecation=e.default=void 0 -var n=()=>{} -e.registerHandler=n -var i=()=>{} -e.default=i})) -e("@ember/deprecated-features/index",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.ASSIGN=void 0 -e.ASSIGN=!0})),e("@ember/destroyable/index",["exports","@glimmer/destroyable"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"assertDestroyablesDestroyed",{enumerable:!0,get:function(){return t.assertDestroyablesDestroyed}}),Object.defineProperty(e,"associateDestroyableChild",{enumerable:!0,get:function(){return t.associateDestroyableChild}}),Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return t.destroy}}),Object.defineProperty(e,"enableDestroyableTracking",{enumerable:!0,get:function(){return t.enableDestroyableTracking}}),Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return t.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return t.isDestroying}}),e.registerDestructor=function(e,r){return(0,t.registerDestructor)(e,r)},e.unregisterDestructor=function(e,r){return(0,t.unregisterDestructor)(e,r)}})),e("@ember/engine/index",["exports","@ember/engine/lib/engine-parent","@ember/-internals/utils","@ember/controller","@ember/application/namespace","@ember/-internals/container","dag-map","@ember/debug","@ember/debug/container-debug-adapter","@ember/object","@ember/engine/instance","@ember/routing/-internals","@ember/-internals/views","@ember/-internals/glimmer","@ember/-internals/runtime"],(function(e,t,r,n,i,a,s,o,u,l,c,d,h,p,f){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.buildInitializerMethod=g,e.default=void 0,Object.defineProperty(e,"getEngineParent",{enumerable:!0,get:function(){return t.getEngineParent}}),Object.defineProperty(e,"setEngineParent",{enumerable:!0,get:function(){return t.setEngineParent}}) -class m extends(i.default.extend(f.RegistryProxyMixin)){constructor(){super(...arguments),this._initializersRan=!1}static buildRegistry(e){var t=new a.Registry({resolver:v(e)}) -return t.set=l.set,t.register("application:main",e,{instantiate:!1}),function(e){e.optionsForType("component",{singleton:!1}),e.optionsForType("view",{singleton:!1}),e.register("controller:basic",n.default,{instantiate:!1}),e.register("service:-routing",d.RoutingService),e.register("resolver-for-debugging:main",e.resolver,{instantiate:!1}),e.register("container-debug-adapter:main",u.default),e.register("component-lookup:main",h.ComponentLookup)}(t),(0,p.setupEngineRegistry)(t),t}init(e){super.init(e),this.buildRegistry()}ensureInitializers(){this._initializersRan||(this.runInitializers(),this._initializersRan=!0)}buildInstance(e={}){return this.ensureInitializers(),c.default.create({...e,base:this})}buildRegistry(){return this.__registry__=this.constructor.buildRegistry(this)}initializer(e){this.constructor.initializer(e)}instanceInitializer(e){this.constructor.instanceInitializer(e)}runInitializers(){this._runInitializer("initializers",((e,t)=>{t.initialize(this)}))}runInstanceInitializers(e){this._runInitializer("instanceInitializers",((t,r)=>{r.initialize(e)}))}_runInitializer(e,t){var r,n=(0,l.get)(this.constructor,e),i=function(e){var t=[] -for(var r in e)t.push(r) -return t}(n),a=new s.default -for(var o of i)r=n[o],a.add(r.name,r,r.before,r.after) -a.topsort(t)}}function v(e){var t={namespace:e} -return e.Resolver.create(t)}function g(e,t){return function(t){var r=this.superclass -if(void 0!==r[e]&&r[e]===this[e]){var n={[e]:Object.create(this[e])} -this.reopenClass(n)}this[e][t.name]=t}}m.initializers=Object.create(null),m.instanceInitializers=Object.create(null),m.initializer=g("initializers","initializer"),m.instanceInitializer=g("instanceInitializers","instance initializer") -e.default=m})),e("@ember/engine/instance",["exports","@ember/object","@ember/-internals/runtime","@ember/debug","@ember/-internals/container","@ember/-internals/utils","@ember/engine/lib/engine-parent","@ember/-internals/owner","@ember/engine"],(function(e,t,r,n,i,a,s,o,u){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class l extends(t.default.extend(r.RegistryProxyMixin,r.ContainerProxyMixin)){constructor(){super(...arguments),this._booted=!1,this._bootPromise=null}static setupRegistry(e,t){}init(e){super.init(e),(0,a.guidFor)(this),this.base??=this.application -var t=this.__registry__=new i.Registry({fallback:this.base.__registry__}) -this.__container__=t.container({owner:this}),this._booted=!1}boot(e){return this._bootPromise||(this._bootPromise=new r.RSVP.Promise((t=>{t(this._bootSync(e))}))),this._bootPromise}_bootSync(e){return this._booted||(this.cloneParentDependencies(),this.setupRegistry(e),this.base.runInstanceInitializers(this),this._booted=!0),this}setupRegistry(e=this.__container__.lookup("-environment:main")){this.constructor.setupRegistry(this.__registry__,e)}unregister(e){this.__container__.reset(e),this.__registry__.unregister(e)}buildChildEngineInstance(e,t={}){var r=this.lookup(`engine:${e}`) -if(!r)throw new Error(`You attempted to mount the engine '${e}', but it is not registered with its parent.`) -var n=r.buildInstance(t) -return(0,s.setEngineParent)(n,this),n}cloneParentDependencies(){var e=(0,s.getEngineParent)(this);["route:basic","service:-routing"].forEach((t=>{var r=e.resolveRegistration(t) -this.register(t,r)})) -var t=e.lookup("-environment:main") -this.register("-environment:main",t,{instantiate:!1}) -var r=["router:main",i.privatize`-bucket-cache:main`,"-view-registry:main","renderer:-dom","service:-document"] -t.isInteractive&&r.push("event_dispatcher:main"),r.forEach((t=>{var r=e.lookup(t) -this.register(t,r,{instantiate:!1})}))}}e.default=l})),e("@ember/engine/lib/engine-parent",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.ENGINE_PARENT=void 0,e.getEngineParent=function(e){return e[t]},e.setEngineParent=function(e,r){e[t]=r} -var t=e.ENGINE_PARENT=Symbol("ENGINE_PARENT")})),e("@ember/enumerable/index",["exports","@ember/object/mixin"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var r=t.default.create() -e.default=r})),e("@ember/enumerable/mutable",["exports","@ember/enumerable","@ember/object/mixin"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var n=r.default.create(t.default) -e.default=n})),e("@ember/helper/index",["exports","@glimmer/manager","@glimmer/runtime","@ember/-internals/glimmer"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.uniqueId=e.setHelperManager=e.invokeHelper=e.hash=e.get=e.fn=e.concat=e.capabilities=e.array=void 0 -e.capabilities=t.helperCapabilities,e.setHelperManager=t.setHelperManager,e.invokeHelper=r.invokeHelper,e.hash=r.hash,e.array=r.array,e.concat=r.concat,e.get=r.get,e.fn=r.fn,e.uniqueId=n.uniqueId})),e("@ember/instrumentation/index",["exports","@ember/-internals/environment","@ember/debug"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._instrumentStart=l,e.flaggedInstrument=function(e,t,r){return r()},e.instrument=function(e,t,r,i){var a,s,o -arguments.length<=3&&(c=t,"function"==typeof c)?(s=t,o=r):(a=t,s=r,o=i) -var c -if(0===n.length)return s.call(o) -var d=a||{},h=l(e,(()=>d)) -return h===u?s.call(o):function(e,t,r,n){try{return e.call(n)}catch(i){throw r.exception=i,i}finally{t()}}(s,h,d,o)},e.reset=function(){n.length=0,i={}},e.subscribe=function(e,t){var r=e.split("."),a=[] -for(var s of r)"*"===s?a.push("[^\\.]*"):a.push(s) -var o=a.join("\\.") -o=`${o}(\\..*)?` -var u={pattern:e,regex:new RegExp(`^${o}$`),object:t} -return n.push(u),i={},u},e.subscribers=void 0,e.unsubscribe=function(e){for(var t=0,r=0;r{e=i.call(this)})) -return(0,n.updateTag)(r,a),(0,n.consumeTag)(a),e}),r} -function a(...e){if((0,t.isElementDescriptor)(e)){var[r,n,a]=e -return i(r,n,a)}var s=e[0],o=function(e,t,r,n,a){return i(e,t,s)} -return(0,t.setClassicDecorator)(o),o}(0,t.setClassicDecorator)(a)})),e("@ember/object/computed",["exports","@ember/-internals/metal","@ember/object/lib/computed/computed_macros","@ember/object/lib/computed/reduce_computed_macros"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"alias",{enumerable:!0,get:function(){return t.alias}}),Object.defineProperty(e,"and",{enumerable:!0,get:function(){return r.and}}),Object.defineProperty(e,"bool",{enumerable:!0,get:function(){return r.bool}}),Object.defineProperty(e,"collect",{enumerable:!0,get:function(){return n.collect}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.ComputedProperty}}),Object.defineProperty(e,"deprecatingAlias",{enumerable:!0,get:function(){return r.deprecatingAlias}}),Object.defineProperty(e,"empty",{enumerable:!0,get:function(){return r.empty}}),Object.defineProperty(e,"equal",{enumerable:!0,get:function(){return r.equal}}),Object.defineProperty(e,"expandProperties",{enumerable:!0,get:function(){return t.expandProperties}}),Object.defineProperty(e,"filter",{enumerable:!0,get:function(){return n.filter}}),Object.defineProperty(e,"filterBy",{enumerable:!0,get:function(){return n.filterBy}}),Object.defineProperty(e,"gt",{enumerable:!0,get:function(){return r.gt}}),Object.defineProperty(e,"gte",{enumerable:!0,get:function(){return r.gte}}),Object.defineProperty(e,"intersect",{enumerable:!0,get:function(){return n.intersect}}),Object.defineProperty(e,"lt",{enumerable:!0,get:function(){return r.lt}}),Object.defineProperty(e,"lte",{enumerable:!0,get:function(){return r.lte}}),Object.defineProperty(e,"map",{enumerable:!0,get:function(){return n.map}}),Object.defineProperty(e,"mapBy",{enumerable:!0,get:function(){return n.mapBy}}),Object.defineProperty(e,"match",{enumerable:!0,get:function(){return r.match}}),Object.defineProperty(e,"max",{enumerable:!0,get:function(){return n.max}}),Object.defineProperty(e,"min",{enumerable:!0,get:function(){return n.min}}),Object.defineProperty(e,"none",{enumerable:!0,get:function(){return r.none}}),Object.defineProperty(e,"not",{enumerable:!0,get:function(){return r.not}}),Object.defineProperty(e,"notEmpty",{enumerable:!0,get:function(){return r.notEmpty}}),Object.defineProperty(e,"oneWay",{enumerable:!0,get:function(){return r.oneWay}}),Object.defineProperty(e,"or",{enumerable:!0,get:function(){return r.or}}),Object.defineProperty(e,"readOnly",{enumerable:!0,get:function(){return r.readOnly}}),Object.defineProperty(e,"reads",{enumerable:!0,get:function(){return r.oneWay}}),Object.defineProperty(e,"setDiff",{enumerable:!0,get:function(){return n.setDiff}}) -Object.defineProperty(e,"sort",{enumerable:!0,get:function(){return n.sort}}),Object.defineProperty(e,"sum",{enumerable:!0,get:function(){return n.sum}}),Object.defineProperty(e,"union",{enumerable:!0,get:function(){return n.union}}),Object.defineProperty(e,"uniq",{enumerable:!0,get:function(){return n.uniq}}),Object.defineProperty(e,"uniqBy",{enumerable:!0,get:function(){return n.uniqBy}})})),e("@ember/object/core",["exports","@ember/-internals/container","@ember/-internals/owner","@ember/-internals/utils","@ember/-internals/meta","@ember/-internals/metal","@ember/object/mixin","@ember/-internals/runtime","@ember/array","@ember/debug","@glimmer/util","@glimmer/destroyable","@glimmer/owner"],(function(e,t,r,n,i,a,s,o,u,l,c,d,h){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var p=s.default.prototype.reopen,f=new c._WeakSet,m=new WeakMap,v=new Set -function g(e){v.has(e)||e.destroy()}function b(e,t){var r,n=(0,i.meta)(e) -if(void 0!==t){var s=e.concatenatedProperties,o=e.mergedProperties,l=Object.keys(t) -for(var c of l){var d=t[c],h=(0,a.descriptorForProperty)(e,c,n),p=void 0!==h -if(!p){if(void 0!==s&&s.length>0&&s.includes(c)){var f=e[c] -d=f?(0,u.makeArray)(f).concat(d):(0,u.makeArray)(d)}if(void 0!==o&&o.length>0&&o.includes(c)){var m=e[c] -d=Object.assign({},m,d)}}p?h.set(e,c,d):"object"!=typeof(r=e)||null===r||"function"!=typeof r.setUnknownProperty||c in e?e[c]=d:e.setUnknownProperty(c,d)}}e.init(t),n.unsetInitializing() -var v=n.observerEvents() -if(void 0!==v)for(var g=0;gr.willDestroy())),(0,i.meta)(t).setInitializing()}reopen(...e){return(0,s.applyMixin)(this,e),this}init(e){}get isDestroyed(){return(0,d.isDestroyed)(this)}set isDestroyed(e){}get isDestroying(){return(0,d.isDestroying)(this)}set isDestroying(e){}destroy(){v.add(this) -try{(0,d.destroy)(this)}finally{v.delete(this)}return this}willDestroy(){}toString(){var e,r="object"==typeof(e=this)&&null!==e&&"function"==typeof e.toStringExtension?`:${this.toStringExtension()}`:"" -return`<${(0,t.getFactoryFor)(this)||"(unknown)"}:${(0,n.guidFor)(this)}${r}>`}static extend(...e){var t=class extends(this){} -return p.apply(t.PrototypeMixin,e),t}static create(...e){var n,i=e[0] -if(void 0!==i){n=new this((0,r.getOwner)(i)) -var a=(0,t.getFactoryFor)(i);(0,t.setFactoryFor)(n,a)}else n=new this -return e.length<=1?b(n,i):b(n,_.apply(this,e)),n}static reopen(...e){return this.willReopen(),p.apply(this.PrototypeMixin,e),this}static willReopen(){var e=this.prototype -f.has(e)&&(f.delete(e),m.has(this)&&m.set(this,s.default.create(this.PrototypeMixin)))}static reopenClass(...e){return(0,s.applyMixin)(this,e),this}static detect(e){if("function"!=typeof e)return!1 -for(;e;){if(e===this)return!0 -e=e.superclass}return!1}static detectInstance(e){return e instanceof this}static metaForProperty(e){var t=this.proto(),r=(0,a.descriptorForProperty)(t,e) -return r._meta||{}}static eachComputedProperty(e,t=this){this.proto() -var r={};(0,i.meta)(this.prototype).forEachDescriptors(((n,i)=>{if(i.enumerable){var a=i._meta||r -e.call(t,n,a)}}))}static get PrototypeMixin(){var e=m.get(this) -return void 0===e&&((e=s.default.create()).ownerConstructor=this,m.set(this,e)),e}static get superclass(){var e=Object.getPrototypeOf(this) -return e!==Function.prototype?e:void 0}static proto(){var e=this.prototype -if(!f.has(e)){f.add(e) -var t=this.superclass -t&&t.proto(),m.has(this)&&this.PrototypeMixin.apply(e)}return e}static toString(){return`<${(0,t.getFactoryFor)(this)||"(unknown)"}:constructor>`}}function _(...e){var t={} -for(var r of e)for(var n=Object.keys(r),i=0,a=n.length;iu.push(e))) -return(0,a.setObservers)(t,{paths:u,sync:s}),t},Object.defineProperty(e,"set",{enumerable:!0,get:function(){return n.set}}),Object.defineProperty(e,"setProperties",{enumerable:!0,get:function(){return n.setProperties}}),Object.defineProperty(e,"trySet",{enumerable:!0,get:function(){return n.trySet}}) -class u extends(s.default.extend(o.default)){get _debugContainerKey(){var e=(0,i.getFactoryFor)(this) -return void 0!==e&&e.fullName}}e.default=u -var l=new WeakMap -function c(e,t,r){var n -if(null!=(n=e)&&void 0!==n.constructor&&"function"==typeof n.constructor.proto&&e.constructor.proto(),!Object.prototype.hasOwnProperty.call(e,"actions")){var i=e.actions -e.actions=i?Object.assign({},i):{}}return e.actions[t]=r,{get(){var e=l.get(this) -void 0===e&&(e=new Map,l.set(this,e)) -var t=e.get(r) -return void 0===t&&(t=r.bind(this),e.set(r,t)),t}}}function d(...e){var t -if(!(0,n.isElementDescriptor)(e)){t=e[0] -var r=function(e,r,n,i,a){return c(e,r,t)} -return(0,n.setClassicDecorator)(r),r}var[i,a,s]=e -return t=s?.value,c(i,a,t)}(0,n.setClassicDecorator)(d)})),e("@ember/object/internals",["exports","@ember/object/-internals"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"cacheFor",{enumerable:!0,get:function(){return t.cacheFor}}),Object.defineProperty(e,"guidFor",{enumerable:!0,get:function(){return t.guidFor}})})),e("@ember/object/lib/computed/computed_macros",["exports","@ember/-internals/metal","@ember/object","@ember/debug","@ember/utils"],(function(e,t,r,n,i){"use strict" -function a(e,n){return(e,...i)=>{var a=[e,...i],s=function(e,r){var n=[] -function i(e){n.push(e)}for(var a of r)(0,t.expandProperties)(a,i) -return n}(0,a) -return(0,t.computed)(...s,(function(){for(var e=s.length-1,t=0;tn}))},e.gte=function(e,n){return(0,t.computed)(e,(function(){return(0,r.get)(this,e)>=n}))},e.lt=function(e,n){return(0,t.computed)(e,(function(){return(0,r.get)(this,e)e)),e.or=a(0,(e=>!e))})),e("@ember/object/lib/computed/reduce_computed_macros",["exports","@ember/debug","@ember/-internals/metal","@ember/object","@ember/utils","@ember/array"],(function(e,t,r,n,i,a){"use strict" -function s(e){return Array.isArray(e)||a.default.detect(e)}function o(e,t,r,i){return(0,n.computed)(`${e}.[]`,(function(){var i=(0,n.get)(this,e) -return null===i||"object"!=typeof i?r:i.reduce(t,r,this)})).readOnly()}function u(e,t,r){var i -return/@each/.test(e)?i=e.replace(/\.@each.*$/,""):(i=e,e+=".[]"),(0,n.computed)(e,...t,(function(){var e=(0,n.get)(this,i) -return s(e)?(0,a.A)(r.call(this,e)):(0,a.A)()})).readOnly()}function l(e,t,r){var i=e.map((e=>`${e}.[]`)) -return(0,n.computed)(...i,(function(){return(0,a.A)(t.call(this,e))})).readOnly()}function c(e,t,r){var n -"function"==typeof t?(r=t,n=[]):n=t -var i=r -return u(e,n,(function(e){return Array.isArray(e),e.map(i,this)}))}function d(e,t,r){var n -"function"==typeof t?(r=t,n=[]):n=t -var i=r -return u(e,n,(function(e){return Array.isArray(e),e.filter(i,this)}))}function h(e,...t){return l([e,...t],(function(e){var t=(0,a.A)(),r=new Set -return e.forEach((e=>{var i=(0,n.get)(this,e) -s(i)&&i.forEach((e=>{r.has(e)||(r.add(e),t.push(e))}))})),t}))}Object.defineProperty(e,"__esModule",{value:!0}),e.collect=function(e,...t){var r=[e,...t] -return l(r,(function(){var e=r.map((e=>{var t=(0,n.get)(this,e) -return void 0===t?null:t})) -return(0,a.A)(e)}),"collect")},e.filter=d,e.filterBy=function(e,t,r){var i -i=2===arguments.length?e=>(0,n.get)(e,t):e=>(0,n.get)(e,t)===r -return d(`${e}.@each.${t}`,i)},e.intersect=function(e,...t){return l([e,...t],(function(e){var t=e.map((e=>{var t=(0,n.get)(this,e) -return Array.isArray(t)?t:[]})),r=t.pop(),i=r.filter((e=>{for(var r of t){var n=!1 -for(var i of r)if(i===e){n=!0 -break}if(!1===n)return!1}return!0})) -return(0,a.A)(i)}),"intersect")},e.map=c,e.mapBy=function(e,t){return c(`${e}.@each.${t}`,(e=>(0,n.get)(e,t)))},e.max=function(e){return o(e,((e,t)=>Math.max(e,t)),-1/0,"max")},e.min=function(e){return o(e,((e,t)=>Math.min(e,t)),1/0,"min")},e.setDiff=function(e,t){return(0,n.computed)(`${e}.[]`,`${t}.[]`,(function(){var r=(0,n.get)(this,e),i=(0,n.get)(this,t) -return s(r)?s(i)?r.filter((e=>-1===i.indexOf(e))):r:(0,a.A)()})).readOnly()},e.sort=function(e,t,o){var l,c -Array.isArray(t)?(l=t,c=o):(l=[],c=t) -return"function"==typeof c?function(e,t,r){return u(e,t,(function(e){return e.slice().sort(((e,t)=>r.call(this,e,t)))}))}(e,l,c):function(e,t){var o=(0,r.autoComputed)((function(r){var o=(0,n.get)(this,t),u="@this"===e,l=function(e){var t=e=>{var[t,r]=e.split(":") -return[t,r=r||"asc"]} -return Array.isArray(e),e.map(t)}(o),c=u?this:(0,n.get)(this,e) -return s(c)?0===l.length?(0,a.A)(c.slice()):function(e,t){return(0,a.A)(e.slice().sort(((e,r)=>{for(var[a,s]of t){var o=(0,i.compare)((0,n.get)(e,a),(0,n.get)(r,a)) -if(0!==o)return"desc"===s?-1*o:o}return 0})))}(c,l):(0,a.A)()})).readOnly() -return o}(e,c)},e.sum=function(e){return o(e,((e,t)=>e+t),0,"sum")},e.union=void 0,e.uniq=h,e.uniqBy=function(e,t){return(0,n.computed)(`${e}.[]`,(function(){var r=(0,n.get)(this,e) -return s(r)?(0,a.uniqBy)(r,t):(0,a.A)()})).readOnly()} -e.union=h})),e("@ember/object/mixin",["exports","@ember/-internals/container","@ember/-internals/meta","@ember/-internals/utils","@ember/debug","@glimmer/util","@ember/-internals/metal","@ember/object/events"],(function(e,t,r,n,i,a,s,o){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.applyMixin=y,e.default=void 0,e.mixin=function(e,...t){return y(e,t),e} -var u=Array.prototype.concat,{isArray:l}=Array -function c(e,t,r,n){var i=r[e]||n[e] -return t[e]&&(i=i?u.call(i,t[e]):t[e]),i}function d(e,t,r,i){if(!0===r)return t -var a=r._getter -if(void 0===a)return t -var o=i[e],u="function"==typeof o?(0,s.descriptorForDecorator)(o):o -if(void 0===u||!0===u)return t -var l=u._getter -if(void 0===l)return t -var c,d=(0,n.wrap)(a,l),h=r._setter,p=u._setter -if(c=void 0!==p?void 0!==h?(0,n.wrap)(h,p):p:h,d!==a||c!==h){var f=r._dependentKeys||[],m=new s.ComputedProperty([...f,{get:d,set:c}]) -return m._readOnly=r._readOnly,m._meta=r._meta,m.enumerable=r.enumerable,(0,s.makeComputedDecorator)(m,s.ComputedProperty)}return t}function h(e,t,r,i){if(void 0!==i[e])return t -var a=r[e] -return"function"==typeof a?(0,n.wrap)(t,a):t}function p(e){return e?Array.isArray(e)?e:[e]:[]}function f(e,t,r){var n=p(r[e]).concat(p(t)) -return n}function m(e,t,r){var i=r[e] -if(!i)return t -var a=Object.assign({},i),s=!1,o=Object.keys(t) -for(var u of o){var l=t[u] -"function"==typeof l?(s=!0,a[u]=h(u,l,i,{})):a[u]=l}return s&&(a._super=n.ROOT),a}function v(e,t,r,n,i,a,s){for(var o,u=0;u{var t=a.indexOf(e);-1!==t&&a.splice(t,1)})))}else g(t,o,r,n,i,a,s)}function g(e,t,r,n,i,a,o){var u=c("concatenatedProperties",t,n,i),l=c("mergedProperties",t,n,i),p=Object.keys(t) -for(var v of p){var g=t[v] -if(void 0!==g){if(-1===a.indexOf(v)){a.push(v) -var y=e.peekDescriptors(v) -if(void 0===y){if(!(0,s.isClassicDecorator)(g)){var _=n[v]=i[v] -"function"==typeof _&&b(i,v,_,!1)}}else r[v]=y,o.push(v),y.teardown(i,v,e)}var w="function"==typeof g -if(w){var E=(0,s.descriptorForDecorator)(g) -if(void 0!==E){r[v]=d(v,g,E,r),n[v]=void 0 -continue}}u&&u.indexOf(v)>=0||"concatenatedProperties"===v||"mergedProperties"===v?g=f(v,g,n):l&&l.indexOf(v)>-1?g=m(v,g,n):w&&(g=h(v,g,n,r)),n[v]=g,r[v]=void 0}}}function b(e,t,r,i){var a=(0,n.observerListenerMetaFor)(r) -if(void 0!==a){var{observers:u,listeners:l}=a -if(void 0!==u){var c=i?s.addObserver:s.removeObserver -for(var d of u.paths)c(e,d,null,t,u.sync)}if(void 0!==l){var h=i?o.addListener:o.removeListener -for(var p of l)h(e,p,null,t)}}}function y(e,t,i=!1){var a=Object.create(null),o=Object.create(null),u=(0,r.meta)(e),l=[],c=[] -for(var d of(e._super=n.ROOT,v(t,u,a,o,e,l,c),l)){var h=o[d],p=a[d] -void 0!==h?("function"==typeof h&&b(e,d,h,!0),(0,s.defineValue)(e,d,h,-1!==c.indexOf(d),!i)):void 0!==p&&(0,s.defineDecorator)(e,d,p,u)}return u.isPrototypeMeta(e)||(0,s.revalidateObservers)(e),e}var _=new a._WeakSet -class w{constructor(e,t){_.add(this),this.properties=function(e){if(void 0!==e)for(var t of Object.keys(e)){var r=Object.getOwnPropertyDescriptor(e,t) -void 0===r.get&&void 0===r.set||Object.defineProperty(e,t,{value:(0,s.nativeDescDecorator)(r)})}return e}(t),this.mixins=E(e),this.ownerConstructor=void 0,this._without=void 0}static create(...e){(0,s.setUnprocessedMixins)() -return new this(e,void 0)}static mixins(e){var t=(0,r.peekMeta)(e),n=[] -return null===t||t.forEachMixins((e=>{e.properties||n.push(e)})),n}reopen(...e){if(0===e.length)return this -if(this.properties){var t=new w(void 0,this.properties) -this.properties=void 0,this.mixins=[t]}else this.mixins||(this.mixins=[]) -return this.mixins=this.mixins.concat(E(e)),this}apply(e,t=!1){return y(e,[this],t)}applyPartial(e){return y(e,[this])}detect(e){if("object"!=typeof e||null===e)return!1 -if(_.has(e))return O(e,this) -var t=(0,r.peekMeta)(e) -return null!==t&&t.hasMixin(this)}without(...e){var t=new w([this]) -return t._without=e,t}keys(){var e=R(this) -return e}toString(){return"(unknown mixin)"}}function E(e){var t=e&&e.length||0,r=void 0 -if(t>0){r=new Array(t) -for(var n=0;nO(e,t,r)))}function R(e,t=new Set,r=new Set){if(!r.has(e)){if(r.add(e),e.properties){var n=Object.keys(e.properties) -for(var i of n)t.add(i)}else e.mixins&&e.mixins.forEach((e=>R(e,t,r))) -return t}}e.default=w})),e("@ember/object/observable",["exports","@ember/-internals/meta","@ember/-internals/metal","@ember/object","@ember/object/mixin","@ember/debug"],(function(e,t,r,n,i,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var s=i.default.create({get(e){return(0,n.get)(this,e)},getProperties(...e){return(0,n.getProperties)(this,...e)},set(e,t){return(0,n.set)(this,e,t)},setProperties(e){return(0,n.setProperties)(this,e)},beginPropertyChanges(){return(0,r.beginPropertyChanges)(),this},endPropertyChanges(){return(0,r.endPropertyChanges)(),this},notifyPropertyChange(e){return(0,r.notifyPropertyChange)(this,e),this},addObserver(e,t,n,i){return(0,r.addObserver)(this,e,t,n,i),this},removeObserver(e,t,n,i){return(0,r.removeObserver)(this,e,t,n,i),this},hasObserverFor(e){return(0,r.hasListeners)(this,`${e}:change`)},incrementProperty(e,t=1){return(0,n.set)(this,e,(parseFloat((0,n.get)(this,e))||0)+t)},decrementProperty(e,t=1){return(0,n.set)(this,e,((0,n.get)(this,e)||0)-t)},toggleProperty(e){return(0,n.set)(this,e,!(0,n.get)(this,e))},cacheFor(e){var r=(0,t.peekMeta)(this) -return null!==r?r.valueFor(e):void 0}}) -e.default=s})),e("@ember/object/observers",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"addObserver",{enumerable:!0,get:function(){return t.addObserver}}),Object.defineProperty(e,"removeObserver",{enumerable:!0,get:function(){return t.removeObserver}})})),e("@ember/object/promise-proxy-mixin",["exports","@ember/object","@ember/object/mixin"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var n=r.default.create({reason:null,isPending:(0,t.computed)("isSettled",(function(){return!(0,t.get)(this,"isSettled")})).readOnly(),isSettled:(0,t.computed)("isRejected","isFulfilled",(function(){return(0,t.get)(this,"isRejected")||(0,t.get)(this,"isFulfilled")})).readOnly(),isRejected:!1,isFulfilled:!1,promise:(0,t.computed)({get(){throw new Error("PromiseProxy's promise must be set")},set(e,r){return function(e,r){return(0,t.setProperties)(e,{isFulfilled:!1,isRejected:!1}),r.then((r=>(e.isDestroyed||e.isDestroying||(0,t.setProperties)(e,{content:r,isFulfilled:!0}),r)),(r=>{throw e.isDestroyed||e.isDestroying||(0,t.setProperties)(e,{reason:r,isRejected:!0}),r}),"Ember: PromiseProxy")}(this,r)}}),then:i("then"),catch:i("catch"),finally:i("finally")}) -function i(e){return function(...r){return(0,t.get)(this,"promise")[e](...r)}}e.default=n})),e("@ember/object/proxy",["exports","@ember/object/-internals","@ember/-internals/runtime"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class n extends t.FrameworkObject{}n.PrototypeMixin.reopen(r._ProxyMixin) -e.default=n})),e("@ember/owner/index",["exports","@ember/-internals/owner"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.getOwner=void 0,Object.defineProperty(e,"setOwner",{enumerable:!0,get:function(){return t.setOwner}}) -e.getOwner=t.getOwner})),e("@ember/renderer/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"renderSettled",{enumerable:!0,get:function(){return t.renderSettled}})})),e("@ember/routing/-internals",["exports","@ember/routing/lib/router_state","@ember/routing/lib/routing-service","@ember/routing/lib/utils","@ember/routing/lib/generate_controller","@ember/routing/lib/cache","@ember/routing/lib/dsl","@ember/routing/lib/controller_for"],(function(e,t,r,n,i,a,s,o){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"BucketCache",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"DSL",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"RouterState",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"RoutingService",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"controllerFor",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"generateController",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"generateControllerFactory",{enumerable:!0,get:function(){return i.generateControllerFactory}}),Object.defineProperty(e,"prefixRouteNameArg",{enumerable:!0,get:function(){return n.prefixRouteNameArg}})})),e("@ember/routing/hash-location",["exports","@ember/object","@ember/runloop","@ember/routing/lib/location-utils"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class i extends t.default{constructor(){super(...arguments),this.lastSetURL=null}init(){this.location=this._location??window.location,this._hashchangeHandler=void 0}getHash(){return(0,n.getHash)(this.location)}getURL(){var e=this.getHash().substring(1),t=e -return"/"!==t[0]&&(t="/",e&&(t+=`#${e}`)),t}setURL(e){this.location.hash=e,this.lastSetURL=e}replaceURL(e){this.location.replace(`#${e}`),this.lastSetURL=e}onUpdateURL(e){this._removeEventListener(),this._hashchangeHandler=(0,r.bind)(this,(function(t){var r=this.getURL() -this.lastSetURL!==r&&(this.lastSetURL=null,e(r))})),window.addEventListener("hashchange",this._hashchangeHandler)}formatURL(e){return`#${e}`}willDestroy(){this._removeEventListener()}_removeEventListener(){this._hashchangeHandler&&window.removeEventListener("hashchange",this._hashchangeHandler)}}e.default=i})),e("@ember/routing/history-location",["exports","@ember/object","@ember/debug","@ember/routing/lib/location-utils"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var i=!1 -function a(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t -return t=16*Math.random()|0,("x"===e?t:3&t|8).toString(16)}))}class s extends t.default{constructor(){super(...arguments),this.rootURL="/"}getHash(){return(0,n.getHash)(this.location)}init(){this._super(...arguments) -var e=document.querySelector("base"),t="" -null!==e&&e.hasAttribute("href")&&(t=e.getAttribute("href")??""),this.baseURL=t,this.location=this.location??window.location,this._popstateHandler=void 0}initState(){var e=this.history??window.history -this.history=e -var{state:t}=e,r=this.formatURL(this.getURL()) -t&&t.path===r?this._previousURL=this.getURL():this.replaceState(r)}getURL(){var{location:e,rootURL:t,baseURL:r}=this,n=e.pathname -t=t.replace(/\/$/,""),r=r.replace(/\/$/,"") -var i=n.replace(new RegExp(`^${r}(?=/|$)`),"").replace(new RegExp(`^${t}(?=/|$)`),"").replace(/\/\//g,"/") -return i+=(e.search||"")+this.getHash()}setURL(e){var{state:t}=this.history -e=this.formatURL(e),t&&t.path===e||this.pushState(e)}replaceURL(e){var{state:t}=this.history -e=this.formatURL(e),t&&t.path===e||this.replaceState(e)}pushState(e){var t={path:e,uuid:a()} -this.history.pushState(t,"",e),this._previousURL=this.getURL()}replaceState(e){var t={path:e,uuid:a()} -this.history.replaceState(t,"",e),this._previousURL=this.getURL()}onUpdateURL(e){this._removeEventListener(),this._popstateHandler=()=>{(i||(i=!0,this.getURL()!==this._previousURL))&&e(this.getURL())},window.addEventListener("popstate",this._popstateHandler)}formatURL(e){var{rootURL:t,baseURL:r}=this -return""!==e?(t=t.replace(/\/$/,""),r=r.replace(/\/$/,"")):"/"===r[0]&&"/"===t[0]&&(r=r.replace(/\/$/,"")),r+t+e}willDestroy(){this._removeEventListener()}_removeEventListener(){this._popstateHandler&&window.removeEventListener("popstate",this._popstateHandler)}}e.default=s})) -e("@ember/routing/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"LinkTo",{enumerable:!0,get:function(){return t.LinkTo}})})),e("@ember/routing/lib/cache",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{constructor(){this.cache=new Map}has(e){return this.cache.has(e)}stash(e,t,r){var n=this.cache.get(e) -void 0===n&&(n=new Map,this.cache.set(e,n)),n.set(t,r)}lookup(e,t,r){if(!this.has(e))return r -var n=this.cache.get(e) -return n.has(t)?n.get(t):r}}})),e("@ember/routing/lib/controller_for",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return e.lookup(`controller:${t}`,r)}})),e("@ember/routing/lib/dsl",["exports","@ember/debug"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var r=0 -function n(e){return"function"==typeof e}class i{constructor(e=null,t){this.explicitIndex=!1,this.parent=e,this.enableLoadingSubstates=Boolean(t&&t.enableLoadingSubstates),this.matches=[],this.options=t}route(e,t,r){var o,u=null,l=`/_unused_dummy_error_path_route_${e}/:error` -if(n(t)?(o={},u=t):n(r)?(o=t,u=r):o=t||{},this.enableLoadingSubstates&&(s(this,`${e}_loading`,{resetNamespace:o.resetNamespace}),s(this,`${e}_error`,{resetNamespace:o.resetNamespace,path:l})),u){var c=a(this,e,o.resetNamespace),d=new i(c,this.options) -s(d,"loading"),s(d,"error",{path:l}),u.call(d),s(this,e,o,d.generate())}else s(this,e,o)}push(e,t,r,n){var i=t.split(".") -if(this.options.engineInfo){var a=t.slice(this.options.engineInfo.fullName.length+1),s=Object.assign({localFullName:a},this.options.engineInfo) -n&&(s.serializeMethod=n),this.options.addRouteForEngine(t,s)}else if(n)throw new Error(`Defining a route serializer on route '${t}' outside an Engine is not allowed.`) -""!==e&&"/"!==e&&"index"!==i[i.length-1]||(this.explicitIndex=!0),this.matches.push(e,t,r)}generate(){var e=this.matches -return this.explicitIndex||this.route("index",{path:"/"}),t=>{for(var r=0;r`(generated ${t} controller)`}) -var i=`controller:${t}` -return e.register(i,n),e.factoryFor(i)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){i(e,t) -var r=`controller:${t}`,n=e.lookup(r) -!1 -return n},e.generateControllerFactory=i})),e("@ember/routing/lib/location-utils",["exports"],(function(e){"use strict" -function t(e){var t=e.pathname -return"/"!==t[0]&&(t=`/${t}`),t}function r(e){return e.search}function n(e){return void 0!==e.hash?e.hash.substring(0):""}function i(e){var t=e.origin -return t||(t=`${e.protocol}//${e.hostname}`,e.port&&(t+=`:${e.port}`)),t}Object.defineProperty(e,"__esModule",{value:!0}),e.getFullPath=function(e){return t(e)+r(e)+n(e)},e.getHash=n,e.getOrigin=i,e.getPath=t,e.getQuery=r,e.replacePath=function(e,t){e.replace(i(e)+t)}})),e("@ember/routing/lib/query_params",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{constructor(e=null){this.isQueryParams=!0,this.values=e}}})),e("@ember/routing/lib/route-info",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/routing/lib/router_state",["exports","@ember/routing/lib/utils"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{constructor(e,t,r){this.emberRouter=e,this.router=t,this.routerJsState=r}isActiveIntent(e,r,n){var i=this.routerJsState -if(!this.router.isActiveIntent(e,r,void 0,i))return!1 -if(void 0!==n&&Object.keys(n).length>0){var a=Object.assign({},n) -return this.emberRouter._prepareQueryParams(e,r,a),(0,t.shallowEqual)(a,i.queryParams)}return!0}}})),e("@ember/routing/lib/routing-service",["exports","@ember/-internals/owner","@ember/debug","@ember/object/computed","@ember/service","@ember/routing/router","@ember/routing/router-service"],(function(e,t,r,n,i,a,s){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -class o extends i.default{get router(){var e=this[s.ROUTER] -if(void 0!==e)return e -var r=(0,t.getOwner)(this),n=r.lookup("router:main") -return n.setupRouter(),this[s.ROUTER]=n}hasRoute(e){return this.router.hasRoute(e)}transitionTo(e,t,r,n){var i=this.router._doTransition(e,t,r) -return n&&i.method("replace"),i}normalizeQueryParams(e,t,r){this.router._prepareQueryParams(e,t,r)}_generateURL(e,t,r){var n={} -return r&&(Object.assign(n,r),this.normalizeQueryParams(e,t,n)),this.router.generate(e,...t,{queryParams:n})}generateURL(e,t,r){if(this.router._initialTransitionStarted)return this._generateURL(e,t,r) -try{return this._generateURL(e,t,r)}catch(n){return}}isActiveForRoute(e,t,r,n){var i=this.router._routerMicrolib.recognizer.handlersFor(r),a=i[i.length-1].handler,s=function(e,t){for(var r=0,n=0;ns&&(r=a),n.isActiveIntent(r,e,t)}}e.default=o,o.reopen({targetState:(0,n.readOnly)("router.targetState"),currentState:(0,n.readOnly)("router.currentState"),currentRouteName:(0,n.readOnly)("router.currentRouteName"),currentPath:(0,n.readOnly)("router.currentPath")})})),e("@ember/routing/lib/utils",["exports","@ember/-internals/metal","@ember/-internals/owner","@ember/debug","@ember/engine/instance","router_js"],(function(e,t,r,n,i,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.calculateCacheKey=function(e,r=[],n){var i="" -for(var a of r){var u=o(e,a),l=void 0 -if(n)if(u&&u in n){var c=0===a.indexOf(u)?a.substring(u.length+1):a -l=(0,t.get)(n[u],c)}else l=(0,t.get)(n,a) -i+=`::${a}:${l}`}return e+i.replace(s,"-")},e.extractRouteArgs=function(e){var t,r,n=(e=e.slice())[e.length-1] -!function(e){if(e&&"object"==typeof e){var t=e.queryParams -if(t&&"object"==typeof t)return Object.keys(t).every((e=>"string"==typeof e))}return!1}(n)?t={}:(e.pop(),t=n.queryParams) -"string"==typeof e[0]&&(r=e.shift()) -return{routeName:r,models:e,queryParams:t}},e.getActiveTargetName=function(e){var t=e.activeTransition?e.activeTransition[a.STATE_SYMBOL].routeInfos:e.state.routeInfos,r=t[t.length-1] -return r.name},e.normalizeControllerQueryParams=function(e){var t={} -for(var r of e)u(r,t) -return t},e.prefixRouteNameArg=function(e,t){var n,i=(0,r.getOwner)(e) -var a=i.mountPoint -if(i.routable&&"string"==typeof t[0]){if(l(n=t[0]))throw new Error("Programmatic transitions by URL cannot be used within an Engine. Please use the route name instead.") -n=`${a}.${n}`,t[0]=n}return t},e.resemblesURL=l,e.shallowEqual=function(e,t){var r=0,n=0 -for(var i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(e[i]!==t[i])return!1 -r++}for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&n++ -return r===n},e.stashParamNames=function(e,t){if(t._namesStashed)return -var r=t[t.length-1] -for(var n,i=r.name,a=e._routerMicrolib.recognizer.handlersFor(i),s=0;s=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,r,s):i(t,r))||s) -return a>3&&s&&Object.defineProperty(t,r,s),s} -var _=e.ROUTE_CONNECTIONS=new WeakMap,w=Symbol("render") -class E extends(a.default.extend(u.ActionHandler,s.default)){constructor(e){if(super(e),this.context={},e){var r=e.lookup("router:main"),n=e.lookup(t.privatize`-bucket-cache:main`) -this._router=r,this._bucketCache=n,this._topLevelViewTemplate=e.lookup("template:-outlet"),this._environment=e.lookup("-environment:main")}}serialize(e,t){if(!(t.length<1)&&e){var r={} -if(1===t.length){var[n]=t -"object"==typeof e&&n in e?r[n]=(0,a.get)(e,n):/_id$/.test(n)?r[n]=(0,a.get)(e,"id"):(0,c.isProxy)(e)&&(r[n]=(0,a.get)(e,n))}else r=(0,a.getProperties)(e,t) -return r}}_setRouteName(e){this.routeName=e -var t=(0,n.getOwner)(this) -this.fullRouteName=C(t,e)}_stashNames(e,t){if(!this._names){var r=this._names=e._names -r.length||(r=(e=t)&&e._names||[]) -for(var n=(0,a.get)(this,"_qp").qps,i=new Array(r.length),s=0;s(e[t]=r,e)),o)}serializeQueryParamKey(e){return e}serializeQueryParam(e,t,r){return this._router._serializeQueryParam(e,r)}deserializeQueryParam(e,t,r){return this._router._deserializeQueryParam(e,r)}_optionsForQueryParam(e){var t=(0,a.get)(this,"queryParams") -return(0,a.get)(t,e.urlKey)||(0,a.get)(t,e.prop)||t[e.urlKey]||t[e.prop]||{}}resetController(e,t,r){return this}exit(e){this.deactivate(e),this.trigger("deactivate",e),this.teardownViews()}_internalReset(e,t){var r=this.controller -r._qpDelegate=(0,a.get)(this,"_qp").states.inactive,this.resetController(r,e,t)}enter(e){_.set(this,[]),this.activate(e),this.trigger("activate",e)}deactivate(e){}activate(e){}intermediateTransitionTo(...e){var[t,...r]=(0,b.prefixRouteNameArg)(this,e) -this._router.intermediateTransitionTo(t,...r)}refresh(){return this._router._routerMicrolib.refresh(this)}setup(e,t){var n=this.controllerName||this.routeName,i=this.controllerFor(n,!0)??this.generateController(n),s=(0,a.get)(this,"_qp") -if(!this.controller){var o=s.propertyNames;(function(e,t){t.forEach((t=>{if(void 0===(0,r.descriptorForProperty)(e,t)){var n=(0,c.lookupDescriptor)(e,t) -null===n||"function"!=typeof n.get&&"function"!=typeof n.set||(0,r.defineProperty)(e,t,(0,f.dependentKeyCompat)({get:n.get,set:n.set}))}(0,r.addObserver)(e,`${t}.[]`,e,e._qpChanged,!1)}))})(i,o),this.controller=i}var u=s.states -if(i._qpDelegate=u.allowOverrides,t){(0,b.stashParamNames)(this._router,t[v.STATE_SYMBOL].routeInfos) -var l=this._bucketCache,d=t[v.PARAMS_SYMBOL] -s.propertyNames.forEach((e=>{var t=s.map[e] -t.values=d -var r=(0,b.calculateCacheKey)(t.route.fullRouteName,t.parts,t.values),n=l.lookup(r,e,t.undecoratedDefaultValue);(0,a.set)(i,e,n)})) -var h=R(this,t[v.STATE_SYMBOL]);(0,a.setProperties)(i,h)}this.setupController(i,e,t),this._environment.options.shouldRender&&this[w](),(0,r.flushAsyncObservers)(!1)}_qpChanged(e,t,r){if(r){var n=this._bucketCache,i=(0,b.calculateCacheKey)(r.route.fullRouteName,r.parts,r.values) -n.stash(i,e,t)}}beforeModel(e){}afterModel(e,t){}redirect(e,t){}contextDidChange(){this.currentModel=this.context}model(e,t){var r,n,i,s=(0,a.get)(this,"_qp").map -for(var o in e)if(!("queryParams"===o||s&&o in s)){var u=o.match(/^(.*)_id$/) -null!==u&&(r=u[1],i=e[o]),n=!0}if(!r){if(n)return Object.assign({},e) -if(t.resolveIndex<1)return -return t[v.STATE_SYMBOL].routeInfos[t.resolveIndex-1].context}return this.findModel(r,i)}deserialize(e,t){return this.model(this._paramsFor(this.routeName,e),t)}findModel(e,t){var r="store"in this?this.store:(0,a.get)(this,"_store") -return r.find(e,t)}setupController(e,t,r){e&&void 0!==t&&(0,a.set)(e,"model",t)}controllerFor(e,t=!1){var r=(0,n.getOwner)(this),i=r.lookup(`route:${e}`) -i&&i.controllerName&&(e=i.controllerName) -var a=r.lookup(`controller:${e}`) -return a}generateController(e){var t=(0,n.getOwner)(this) -return(0,i.generateController)(t,e)}modelFor(e){var t,r=(0,n.getOwner)(this),i=this._router&&this._router._routerMicrolib?this._router._routerMicrolib.activeTransition:void 0 -t=r.routable&&void 0!==i?C(r,e):e -var a=r.lookup(`route:${t}`) -if(null!=i){var s=a&&a.routeName||t -if(Object.prototype.hasOwnProperty.call(i.resolvedModels,s))return i.resolvedModels[s]}return a?.currentModel}[w](e,t){var r=function(e,t,r){var i,a=!t&&!r -a||("object"!=typeof t||r?i=t:(i=e.templateName||e.routeName,r=t)) -var s,o,u,l,c,d,h=(0,n.getOwner)(e) -r&&(u=r.into&&r.into.replace(/\//g,"."),l=r.outlet,d=r.controller,c=r.model) -l=l||"main",a?(s=e.routeName,o=e.templateName||s):o=s=i.replace(/\//g,".") -void 0===d&&(d=a?e.controllerName||h.lookup(`controller:${s}`):h.lookup(`controller:${s}`)||e.controllerName||e.routeName) -if("string"==typeof d){var p=d -d=h.lookup(`controller:${p}`)}void 0===c?c=e.currentModel:d.set("model",c) -var f,m=h.lookup(`template:${o}`) -u&&(f=function(e){var t=function(e,t,r=0){if(!t)return -for(var n=0;n0&&(_.set(this,[]),(0,m.once)(this._router,"_setOutlets"))}buildRouteInfoMetadata(){}_paramsFor(e,t){return void 0!==this._router._routerMicrolib.activeTransition?this.paramsFor(e):t}get _store(){var e=(0,n.getOwner)(this) -this.routeName -return{find(t,r){var n=e.factoryFor(`model:${t}`) -if(n)return(n=n.class).find(r)}}}get _qp(){var e={},t=this.controllerName||this.routeName,r=(0,n.getOwner)(this),s=r.lookup(`controller:${t}`),o=(0,a.get)(this,"queryParams"),u=Object.keys(o).length>0 -if(s){var c=(0,a.get)(s,"queryParams")||[] -e=function(e,t){var r={},n={defaultValue:!0,type:!0,scope:!0,as:!0} -for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(r[i]={...e[i],...t[i]},n[i]=!0) -for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&!n[a]&&(r[a]={...t[a],...e[a]}) -return r}((0,b.normalizeControllerQueryParams)(c),o)}else u&&(s=(0,i.generateController)(r,t),e=o) -var d=[],h={},p=[] -for(var f in e)if(Object.prototype.hasOwnProperty.call(e,f)&&"unknownProperty"!==f&&"_super"!==f){var m=e[f],v=m.scope||"model",g=void 0 -"controller"===v&&(g=[]) -var y=m.as||this.serializeQueryParamKey(f),_=(0,a.get)(s,f) -_=T(_) -var w=m.type||(0,l.typeOf)(_),E=this.serializeQueryParam(_,y,w),O=`${t}:${f}`,R={undecoratedDefaultValue:(0,a.get)(s,f),defaultValue:_,serializedDefaultValue:E,serializedValue:E,type:w,urlKey:y,prop:f,scopedPropertyName:O,controllerName:t,route:this,parts:g,values:null,scope:v} -h[f]=h[y]=h[O]=R,d.push(R),p.push(f)}return{qps:d,map:h,propertyNames:p,states:{inactive:(e,t)=>{var r=h[e] -this._qpChanged(e,t,r)},active:(e,t)=>{var r=h[e] -return this._qpChanged(e,t,r),this._activeQPChanged(r,t)},allowOverrides:(e,t)=>{var r=h[e] -return this._qpChanged(e,t,r),this._updatingQPChanged(r)}}}}}function O(e,t){if(t.fullQueryParams)return t.fullQueryParams -var r=t.routeInfos.every((e=>e.route)),n={...t.queryParams} -return e._deserializeQueryParams(t.routeInfos,n),r&&(t.fullQueryParams=n),n}function R(e,t){t.queryParamsFor=t.queryParamsFor||{} -var r=e.fullRouteName,n=t.queryParamsFor[r] -if(n)return n -var i=O(e._router,t),s=t.queryParamsFor[r]={},o=(0,a.get)(e,"_qp").qps -for(var u of o){var l=u.prop in i -s[u.prop]=l?i[u.prop]:T(u.defaultValue)}return s}function T(e){return Array.isArray(e)?(0,o.A)(e.slice()):e}function C(e,t){if(e.routable){var r=e.mountPoint -return"application"===t?r:`${r}.${t}`}return t}E.isRouteFactory=!0,y([a.computed],E.prototype,"_store",null),y([a.computed],E.prototype,"_qp",null) -var P=e.defaultSerialize=E.prototype.serialize -E.reopen({mergedProperties:["queryParams"],queryParams:{},templateName:null,controllerName:null,send(...e){if(this._router&&this._router._routerMicrolib||!(0,h.isTesting)())this._router.send(...e) -else{var t=e.shift(),r=this.actions[t] -if(r)return r.apply(this,e)}},actions:{queryParamsDidChange(e,t,r){var n=(0,a.get)(this,"_qp").map,i=Object.keys(e).concat(Object.keys(r)) -for(var s of i){var o=n[s] -if(o){var u=this._optionsForQueryParam(o) -if((0,a.get)(u,"refreshModel")&&this._router.currentState){this.refresh() -break}}}return!0},finalizeQueryParamChange(e,t,n){if("application"!==this.fullRouteName)return!0 -if(n){var i,s=n[v.STATE_SYMBOL].routeInfos,o=this._router,u=o._queryParamsFor(s),l=o._qpUpdates,c=!1 -for(var d of((0,b.stashParamNames)(o,s),u.qps)){var h=d.route,p=h.controller,f=d.urlKey in e&&d.urlKey,m=void 0,g=void 0 -if(l.has(d.urlKey)?(m=(0,a.get)(p,d.prop),g=h.serializeQueryParam(m,d.urlKey,d.type)):f?void 0!==(g=e[f])&&(m=h.deserializeQueryParam(g,d.urlKey,d.type)):(g=d.serializedDefaultValue,m=T(d.defaultValue)),p._qpDelegate=(0,a.get)(h,"_qp").states.inactive,g!==d.serializedValue){if(n.queryParamsOnly&&!1!==i){var y=h._optionsForQueryParam(d),_=(0,a.get)(y,"replace") -_?i=!0:!1===_&&(i=!1)}(0,a.set)(p,d.prop,m),c=!0}d.serializedValue=g,d.serializedDefaultValue===g||t.push({value:g,visible:!0,key:f||d.urlKey})}!0===c&&(0,r.flushAsyncObservers)(!1),i&&n.method("replace"),u.qps.forEach((e=>{var t=(0,a.get)(e.route,"_qp") -e.route.controller._qpDelegate=(0,a.get)(t,"states.active")})),o._qpUpdates.clear()}}}}) -e.default=E})),e("@ember/routing/router-service",["exports","@ember/-internals/owner","@ember/object/evented","@ember/debug","@ember/object/computed","@ember/service","@glimmer/validator","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,a,s,o,u){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ROUTER=void 0 -var l=function(e,t,r,n){var i,a=arguments.length,s=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) -else for(var o=e.length-1;o>=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,r,s):i(t,r))||s) -return a>3&&s&&Object.defineProperty(t,r,s),s},c=e.ROUTER=Symbol("ROUTER") -function d(e,t){return"/"===t?e:e.substring(t.length)}class h extends(a.default.extend(r.default)){get _router(){var e=this[c] -if(void 0!==e)return e -var r=(0,t.getOwner)(this),n=r.lookup("router:main") -return this[c]=n}willDestroy(){super.willDestroy(),this[c]=void 0}transitionTo(...e){if((0,u.resemblesURL)(e[0]))return this._router._doURLTransition("transitionTo",e[0]) -var{routeName:t,models:r,queryParams:n}=(0,u.extractRouteArgs)(e) -return this._router._doTransition(t,r,n,!0)}replaceWith(...e){return this.transitionTo(...e).method("replace")}urlFor(e,...t){return this._router.setupRouter(),this._router.generate(e,...t)}isActive(...e){var{routeName:t,models:r,queryParams:n}=(0,u.extractRouteArgs)(e),i=this._router._routerMicrolib -if((0,s.consumeTag)((0,s.tagFor)(this._router,"currentURL")),!i.isActiveIntent(t,r))return!1 -if(Object.keys(n).length>0){var a=t -n=Object.assign({},n),this._router._prepareQueryParams(a,r,n,!0) -var o=Object.assign({},i.state.queryParams) -return this._router._prepareQueryParams(a,r,o,!0),(0,u.shallowEqual)(n,o)}return!0}recognize(e){this._router.setupRouter() -var t=d(e,this.rootURL) -return this._router._routerMicrolib.recognize(t)}recognizeAndLoad(e){this._router.setupRouter() -var t=d(e,this.rootURL) -return this._router._routerMicrolib.recognizeAndLoad(t)}refresh(e){if(!e)return this._router._routerMicrolib.refresh() -var r=(0,t.getOwner)(this),n=r.lookup(`route:${e}`) -return this._router._routerMicrolib.refresh(n)}}e.default=h,l([(0,i.readOnly)("_router.currentRouteName")],h.prototype,"currentRouteName",void 0),l([(0,i.readOnly)("_router.currentURL")],h.prototype,"currentURL",void 0),l([(0,i.readOnly)("_router.location")],h.prototype,"location",void 0),l([(0,i.readOnly)("_router.rootURL")],h.prototype,"rootURL",void 0),l([(0,i.readOnly)("_router.currentRoute")],h.prototype,"currentRoute",void 0)})),e("@ember/routing/router",["exports","@ember/-internals/container","@ember/object","@ember/owner","@ember/routing/-internals","@ember/routing/lib/utils","@ember/array","@ember/utils","@ember/object/evented","@ember/debug","@ember/runloop","@ember/routing/route","router_js","@ember/engine/instance"],(function(e,t,r,n,i,a,s,o,u,l,c,d,h,p){"use strict" -function f(e){C(this),this._cancelSlowTransitionTimer(),this.notifyPropertyChange("url"),this.set("currentState",this.targetState)}function m(e,t){0}function v(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.triggerEvent=R -var{slice:g}=Array.prototype -class b extends(r.default.extend(u.default)){static map(e){return this.dslCallbacks||(this.dslCallbacks=[],this.reopenClass({dslCallbacks:this.dslCallbacks})),this.dslCallbacks.push(e),this}static _routePath(e){var t,r,n=[] -function i(e,t){for(var r=0;r{e.setURL(n),(0,r.set)(t,"currentURL",n)}))}didTransition(e){t.didTransition(e)}willTransition(e,r){t.willTransition(e,r)}triggerEvent(e,r,n,i){return R.bind(t)(e,r,n,i)}routeWillChange(e){t.trigger("routeWillChange",e),t._routerService.trigger("routeWillChange",e),e.isIntermediate&&t.set("currentRoute",e.to)}routeDidChange(e){t.set("currentRoute",e.to),(0,c.once)((()=>{t.trigger("routeDidChange",e),t._routerService.trigger("routeDidChange",e)}))}transitionDidError(e,r){return e.wasAborted||r.isAborted?(0,h.logAbort)(r):(r.trigger(!1,"error",e.error,r,e.route),t._isErrorHandled(e.error)?(r.rollback(),this.routeDidChange(r),e.error):(r.abort(),e.error))}replaceURL(n){if(e.replaceURL){(0,c.once)((()=>{e.replaceURL(n),(0,r.set)(t,"currentURL",n)}))}else this.updateURL(n)}}var o=this._routerMicrolib=new s,u=this.constructor.dslCallbacks||[v],l=this._buildDSL() -l.route("application",{path:"/",resetNamespace:!0,overrideNameAssertion:!0},(function(){for(var e=0;er.factoryFor(`route-map:${e}`),addRouteForEngine(e,r){t._engineInfoByRoute[e]||(t._engineInfoByRoute[e]=r)}} -return new i.DSL(null,a)}_resetQueuedQueryParameterChanges(){this._queuedQPChanges={}}_hasModuleBasedResolver(){var e=(0,n.getOwner)(this),t=(0,r.get)(e,"application.__registry__.resolver.moduleBasedResolver") -return Boolean(t)}startRouting(){if(this.setupRouter()){var e=(0,r.get)(this,"initialURL") -void 0===e&&(e=(0,r.get)(this,"location").getURL()) -var t=this.handleURL(e) -if(t&&t.error)throw t.error}}setupRouter(){if(this._didSetupRouter)return!1 -this._didSetupRouter=!0,this._setupLocation() -var e=(0,r.get)(this,"location") -return!(0,r.get)(e,"cancelRouterSetup")&&(this._initRouterJs(),e.onUpdateURL((e=>{this.handleURL(e)})),!0)}_setOutlets(){if(!this.isDestroying&&!this.isDestroyed){var e=this._routerMicrolib.currentRouteInfos -if(e){var t,r=null -for(var i of e){var a=i.route,s=d.ROUTE_CONNECTIONS.get(a),o=void 0 -if(0===s.length)o=S(r,t,a) -else for(var u=0;u{if(n)delete t[e],t[n.urlKey]=n.route.serializeQueryParam(r,n.urlKey,n.type) -else{if(void 0===r)return -t[e]=this._serializeQueryParam(r,(0,o.typeOf)(r))}}))}_serializeQueryParam(e,t){return null==e?e:"array"===t?JSON.stringify(e):`${e}`}_deserializeQueryParams(e,t){k(this,e,t,((e,r,n)=>{n&&(delete t[e],t[n.prop]=n.route.deserializeQueryParam(r,n.urlKey,n.type))}))}_deserializeQueryParam(e,t){return null==e?e:"boolean"===t?"true"===e:"number"===t?Number(e).valueOf():"array"===t?(0,s.A)(JSON.parse(e)):e}_pruneDefaultQueryParamValues(e,t){var r=this._queryParamsFor(e) -for(var n in t){var i=r.map[n] -i&&i.serializedDefaultValue===t[n]&&delete t[n]}}_doTransition(e,t,r,n){var i=e||(0,a.getActiveTargetName)(this._routerMicrolib) -this._initialTransitionStarted=!0 -var s={} -this._processActiveTransitionQueryParams(i,t,s,r),Object.assign(s,r),this._prepareQueryParams(i,t,s,Boolean(n)) -var o=this._routerMicrolib.transitionTo(i,...t,{queryParams:s}) -return P(o,this),o}_processActiveTransitionQueryParams(e,t,r,n){if(this._routerMicrolib.activeTransition){var i={},a=this._qpUpdates,s=(0,d.getFullQueryParams)(this,this._routerMicrolib.activeTransition[h.STATE_SYMBOL]) -for(var o in s)a.has(o)||(i[o]=s[o]) -this._fullyScopeQueryParams(e,t,n),this._fullyScopeQueryParams(e,t,i),Object.assign(r,i)}}_prepareQueryParams(e,t,r,n){var i=T(this,e,t) -this._hydrateUnsuppliedQueryParams(i,r,Boolean(n)),this._serializeQueryParams(i.routeInfos,r),n||this._pruneDefaultQueryParamValues(i.routeInfos,r)}_getQPMeta(e){var t=e.route -return t&&(0,r.get)(t,"_qp")}_queryParamsFor(e){var t=e[e.length-1].name,r=this._qpCache[t] -if(void 0!==r)return r -var n,i=!0,a={},s=[] -for(var o of e)if(n=this._getQPMeta(o)){for(var u of n.qps)s.push(u) -Object.assign(a,n.map)}else i=!1 -var l={qps:s,map:a} -return i&&(this._qpCache[t]=l),l}_fullyScopeQueryParams(e,t,r){var n,i=T(this,e,t).routeInfos -for(var a of i)if(n=this._getQPMeta(a))for(var s of n.qps){var o=s.prop in r&&s.prop||s.scopedPropertyName in r&&s.scopedPropertyName||s.urlKey in r&&s.urlKey -o&&o!==s.scopedPropertyName&&(r[s.scopedPropertyName]=r[o],delete r[o])}}_hydrateUnsuppliedQueryParams(e,t,r){var n,i,s,o=e.routeInfos,u=this._bucketCache -for(var l of o)if(n=this._getQPMeta(l))for(var c=0,d=n.qps.length;c=0;--r){var n=e[r],i=n.route -if(void 0!==i&&!0!==t(i,n))return}}var _={willResolveModel(e,t,r){this._scheduleLoadingEvent(t,r)},error(e,t,r){var n=this,i=e[e.length-1] -y(e,((e,r)=>{if(r!==i){var a=E(e,"error") -if(a)return n._markErrorAsHandled(t),n.intermediateTransitionTo(a,t),!1}var s=w(e,"error") -return!s||(n._markErrorAsHandled(t),n.intermediateTransitionTo(s,t),!1)})),function(e,t){var r,n=[] -r=e&&"object"==typeof e&&"object"==typeof e.errorThrown?e.errorThrown:e -t&&n.push(t) -r&&(r.message&&n.push(r.message),r.stack&&n.push(r.stack),"string"==typeof r&&n.push(r)) -console.error(...n)}(t,`Error while processing route: ${r.targetName}`)},loading(e,t){var r=this,n=e[e.length-1] -y(e,((e,i)=>{if(i!==n){var a=E(e,"loading") -if(a)return r.intermediateTransitionTo(a),!1}var s=w(e,"loading") -return s?(r.intermediateTransitionTo(s),!1):t.pivotHandler!==e}))}} -function w(e,t){var r=(0,n.getOwner)(e),{routeName:i,fullRouteName:a,_router:s}=e,o=`${a}_${t}` -return O(r,s,`${i}_${t}`,o)?o:""}function E(e,t){var r=(0,n.getOwner)(e),{routeName:i,fullRouteName:a,_router:s}=e,o="application"===a?t:`${a}.${t}` -return O(r,s,"application"===i?t:`${i}.${t}`,o)?o:""}function O(e,t,r,n){var i=t.hasRoute(n),a=e.factoryFor(`template:${r}`)||e.factoryFor(`route:${r}`) -return i&&a}function R(e,t,r,n){if(!e){if(t)return -throw new Error(`Can't trigger action '${r}' because your app hasn't finished transitioning into its first route. To trigger an action on destination routes during a transition, you can call \`.send()\` on the \`Transition\` object passed to the \`model/beforeModel/afterModel\` hooks.`)}for(var i,a,s=!1,o=e.length-1;o>=0;o--)if(a=(i=e[o].route)&&i.actions&&i.actions[r]){if(!0!==a.apply(i,n))return void("error"===r&&i._router._markErrorAsHandled(n[0])) -s=!0}var u=_[r] -if(u)u.call(this,e,...n) -else if(!s&&!t)throw new Error(`Nothing handled the action '${r}'. If you did handle the action, this error can be caused by returning true from an action handler in a controller, causing the action to bubble.`)}function T(e,t,r){var n=e._routerMicrolib.applyIntent(t,r),{routeInfos:i,params:a}=n -for(var s of i)s.isResolved?a[s.name]=s.params:a[s.name]=s.serialize(s.context) -return n}function C(e){var t=e._routerMicrolib.currentRouteInfos -if(0!==t.length){var n=b._routePath(t),i=t[t.length-1],a=i.name,s=e.location,o=s.getURL();(0,r.set)(e,"currentPath",n),(0,r.set)(e,"currentRouteName",a),(0,r.set)(e,"currentURL",o)}}function P(e,t){var r=new i.RouterState(t,t._routerMicrolib,e[h.STATE_SYMBOL]) -t.currentState||t.set("currentState",r),t.set("targetState",r),e.promise=e.catch((e=>{if(!t._isErrorHandled(e))throw e -t._clearHandledError(e)}),"Transition Error")}function k(e,t,r,n){var i=e._queryParamsFor(t) -for(var a in r){if(Object.prototype.hasOwnProperty.call(r,a))n(a,r[a],i.map[a])}}function x(e,t){if(e)for(var r=[e];r.length>0;){var n=r.shift() -if(n.render.name===t)return n -var i=n.outlets -for(var a in i)r.push(i[a])}}function A(e,t,n){var i,a={render:n,outlets:Object.create(null),wasUsed:!1} -return(i=n.into?x(e,n.into):t)?(0,r.set)(i.outlets,n.outlet,a):e=a,{liveRoutes:e,ownState:a}}function S(e,t,{routeName:r}){var n=x(e,r) -return n||(t.outlets.main={render:{name:r,outlet:"main"},outlets:{}},t)}b.reopen({didTransition:f,willTransition:m,rootURL:"/",location:"hash",url:(0,r.computed)((function(){var e=(0,r.get)(this,"location") -if("string"!=typeof e)return e.getURL()}))}) -e.default=b})),e("@ember/routing/transition",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/runloop/-private/backburner",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/runloop/index",["exports","@ember/debug","@ember/-internals/error-handling","@ember/-internals/metal","backburner.js"],(function(e,t,r,n,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._backburner=void 0,e._cancelTimers=function(){u.cancelTimers()},e._getCurrentRunLoop=function(){return a},e._hasScheduledTimers=function(){return u.hasTimers()},e._rsvpErrorQueue=e._queues=void 0,e.begin=function(){u.begin()},e.bind=function(...e){return(...t)=>l(...e.concat(t))},e.cancel=function(e){return u.cancel(e)},e.debounce=function(...e){return u.debounce(...e)},e.end=function(){u.end()},e.join=l,e.later=function(...e){return u.later(...e)},e.next=function(...e){return u.later(...e,1)},e.once=function(...e){return u.scheduleOnce("actions",...e)},e.run=function(...e){return u.run(...e)},e.schedule=function(...e){return u.schedule(...e)},e.scheduleOnce=function(...e){return u.scheduleOnce(...e)},e.throttle=function(...e){return u.throttle(...e)} -var a=null -var s=e._rsvpErrorQueue=`${Math.random()}${Date.now()}`.replace(".",""),o=e._queues=["actions","routerTransitions","render","afterRender","destroy",s],u=e._backburner=new i.default(o,{defaultQueue:"actions",onBegin:function(e){a=e},onEnd:function(e,t){a=t,(0,n.flushAsyncObservers)()},onErrorTarget:r.onErrorTarget,onErrorMethod:"onerror",flush:function(e,t){"render"!==e&&e!==s||(0,n.flushAsyncObservers)(),t()}}) -function l(e,t,...r){return u.join(e,t,...r)}})),e("@ember/service/index",["exports","@ember/object/-internals","@ember/-internals/metal"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.inject=function(...e){return(0,r.inject)("service",...e)},e.service=function(...e){return(0,r.inject)("service",...e)} -class n extends t.FrameworkObject{}n.isServiceFactory=!0 -e.default=n})),e("@ember/template-compilation/index",["exports","ember-template-compiler"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"compileTemplate",{enumerable:!0,get:function(){return t.compile}}),e.precompileTemplate=void 0})),e("@ember/template-factory/index",["exports","@glimmer/opcode-compiler"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"createTemplateFactory",{enumerable:!0,get:function(){return t.templateFactory}})})),e("@ember/template/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"htmlSafe",{enumerable:!0,get:function(){return t.htmlSafe}}),Object.defineProperty(e,"isHTMLSafe",{enumerable:!0,get:function(){return t.isHTMLSafe}})})),e("@ember/test/adapter",["exports","ember-testing"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=t.Adapter})),e("@ember/test/index",["exports","require"],(function(e,t){"use strict" -if(Object.defineProperty(e,"__esModule",{value:!0}),e.unregisterWaiter=e.unregisterHelper=e.registerWaiter=e.registerHelper=e.registerAsyncHelper=void 0,(0,t.has)("ember-testing")){var r=(0,t.default)("ember-testing").Test -e.registerAsyncHelper=r.registerAsyncHelper,e.registerHelper=r.registerHelper,e.registerWaiter=r.registerWaiter,e.unregisterHelper=r.unregisterHelper,e.unregisterWaiter=r.unregisterWaiter}else{var n=()=>{throw new Error("Attempted to use test utilities, but `ember-testing` was not included")} -e.registerAsyncHelper=n,e.registerHelper=n,e.registerWaiter=n,e.unregisterHelper=n,e.unregisterWaiter=n}})),e("@ember/utils/index",["exports","@ember/utils/lib/is_none","@ember/utils/lib/is_blank","@ember/utils/lib/is_empty","@ember/utils/lib/is_present","@ember/utils/lib/is-equal","@ember/utils/lib/type-of","@ember/utils/lib/compare"],(function(e,t,r,n,i,a,s,o){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"compare",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"isBlank",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"isEmpty",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"isEqual",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"isNone",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"isPresent",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"typeOf",{enumerable:!0,get:function(){return s.default}})})),e("@ember/utils/lib/compare",["exports","@ember/utils/lib/type-of","@ember/-internals/runtime","@ember/debug"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function e(r,n){if(r===n)return 0 -var o=(0,t.default)(r),u=(0,t.default)(n) -if("instance"===o&&s(r)&&r.constructor.compare)return r.constructor.compare(r,n) -if("instance"===u&&s(n)&&n.constructor.compare)return-1*n.constructor.compare(n,r) -var l=a(i[o],i[u]) -if(0!==l)return l -switch(o){case"boolean":return a(Number(r),Number(n)) -case"number":return a(r,n) -case"string":return a(r.localeCompare(n),0) -case"array":for(var c=r.length,d=n.length,h=Math.min(c,d),p=0;p=2},e.isDestroying=l,e.registerDestructor=function(e,t,r=!1){0 -var n=o(e),a=!0===r?"eagerDestructors":"destructors" -return n[a]=i(n[a],t),t},e.unregisterDestructor=function(e,t,r=!1){0 -var n=o(e),i=!0===r?"eagerDestructors":"destructors" -n[i]=s(n[i],t,!1)} -var n=new WeakMap -function i(e,t){return null===e?t:Array.isArray(e)?(e.push(t),e):[e,t]}function a(e,t){if(Array.isArray(e))for(var r=0;r1){var n=e.indexOf(t) -return e.splice(n,1),e}return null}function o(e){var t=n.get(e) -return void 0===t&&(t={parents:null,children:null,eagerDestructors:null,destructors:null,state:0},n.set(e,t)),t}function u(e){var t=o(e) -if(!(t.state>=1)){var{parents:n,children:i,eagerDestructors:l,destructors:c}=t -t.state=1,a(i,u),a(l,(t=>t(e))),a(c,(t=>(0,r.scheduleDestroy)(e,t))),(0,r.scheduleDestroyed)((()=>{a(n,(t=>function(e,t){var r=o(t) -0===r.state&&(r.children=s(r.children,e))}(e,t))),t.state=2}))}}function l(e){var t=n.get(e) -return void 0!==t&&t.state>=1}})),e("@glimmer/encoder",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.InstructionEncoderImpl=void 0 -e.InstructionEncoderImpl=class{constructor(e){this.buffer=e,this.size=0}encode(e,t){if(e>255)throw new Error(`Opcode type over 8-bits. Got ${e}.`) -var r=e|t|arguments.length-2<<8 -this.buffer.push(r) -for(var n=2;n{} -e.scheduleRevalidate=t -e.default=function(r){var n -e.scheduleRevalidate=t=r.scheduleRevalidate,e.scheduleDestroy=r.scheduleDestroy,e.scheduleDestroyed=r.scheduleDestroyed,e.toIterator=r.toIterator,e.toBool=r.toBool,e.getProp=r.getProp,e.setProp=r.setProp,e.getPath=r.getPath,e.setPath=r.setPath,e.warnIfStyleNotTrusted=r.warnIfStyleNotTrusted,e.assert=r.assert,e.deprecate=r.deprecate,"boolean"==typeof(null===(n=r.FEATURES)||void 0===n?void 0:n.DEFAULT_HELPER_MANAGER)&&(e.FEATURE_DEFAULT_HELPER_MANAGER=r.FEATURES.DEFAULT_HELPER_MANAGER)}})),e("@glimmer/low-level",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.Storage=e.Stack=void 0 -e.Storage=class{constructor(){this.array=[],this.next=0}add(e){var{next:t,array:r}=this -if(t===r.length)this.next++ -else{var n=r[t] -this.next=n}return this.array[t]=e,t}deref(e){return this.array[e]}drop(e){this.array[e]=this.next,this.next=e}} -class t{constructor(e=[]){this.vec=e}clone(){return new t(this.vec.slice())}sliceFrom(e){return new t(this.vec.slice(e))}slice(e,r){return new t(this.vec.slice(e,r))}copy(e,t){this.vec[t]=this.vec[e]}writeRaw(e,t){this.vec[e]=t}getRaw(e){return this.vec[e]}reset(){this.vec.length=0}len(){return this.vec.length}}e.Stack=t})),e("@glimmer/manager",["exports","@glimmer/util","@glimmer/global-context","@glimmer/destroyable","@glimmer/reference","@glimmer/validator"],(function(e,t,r,n,i,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.CustomModifierManager=e.CustomHelperManager=e.CustomComponentManager=void 0,e.capabilityFlagsFrom=function(e){return(e.dynamicLayout?1:0)|(e.dynamicTag?2:0)|(e.prepareArgs?4:0)|(e.createArgs?8:0)|(e.attributeHook?16:0)|(e.elementHook?32:0)|(e.dynamicScope?64:0)|(e.createCaller?128:0)|(e.updateHook?256:0)|(e.createInstance?512:0)|(e.wrapped?1024:0)|(e.willDestroy?2048:0)|(e.hasSubOwner?4096:0)},e.componentCapabilities=function(e,t={}){0 -var r=Boolean(t.updateHook) -return s({asyncLifeCycleCallbacks:Boolean(t.asyncLifecycleCallbacks),destructor:Boolean(t.destructor),updateHook:r})},e.getComponentTemplate=function(e){var t=e -for(;null!==t;){var r=I.get(t) -if(void 0!==r)return r -t=D(t)}return},e.getCustomTagFor=function(e){return u.get(e)},e.getInternalComponentManager=function(e,t){0 -var r=R(y,e) -if(void 0===r&&!0===t)return null -return r},e.getInternalHelperManager=function(e,t){0 -var n=R(w,e) -r.FEATURE_DEFAULT_HELPER_MANAGER&&void 0===n&&"function"==typeof e&&(n=P) -if(n)return n -if(!0===t)return null -return null},e.getInternalModifierManager=function(e,t){0 -var r=R(_,e) -if(void 0===r&&!0===t)return null -return r},e.hasCapability=function(e,t){return!!(e&t)},e.hasDestroyable=v,e.hasInternalComponentManager=function(e){return void 0!==R(y,e)},e.hasInternalHelperManager=function(e){return function(e){if(r.FEATURE_DEFAULT_HELPER_MANAGER)return"function"==typeof e -return!1}(e)||void 0!==R(w,e)},e.hasInternalModifierManager=function(e){return void 0!==R(_,e)},e.hasValue=m,e.helperCapabilities=function(e,t={}){0 -0 -0 -return s({hasValue:Boolean(t.hasValue),hasDestroyable:Boolean(t.hasDestroyable),hasScheduledEffect:Boolean(t.hasScheduledEffect)})},e.managerHasCapability=function(e,t,r){return!!(t&r)},e.modifierCapabilities=function(e,t={}){0 -return s({disableAutoTracking:Boolean(t.disableAutoTracking)})},e.setComponentManager=function(e,t){return k(new j(e),t)},e.setComponentTemplate=function(e,t){0 -0 -return I.set(t,e),t},e.setCustomTagFor=l,e.setHelperManager=function(e,t){return C(new g(e),t)},e.setInternalComponentManager=k,e.setInternalHelperManager=C,e.setInternalModifierManager=T,e.setModifierManager=function(e,t){return T(new N(e),t)} -function s(e){return e}var o,u=new WeakMap -function l(e,t){u.set(e,t)}function c(e){if("symbol"==typeof e)return null -var t=Number(e) -return isNaN(t)?null:t%1==0?t:null}function d(e,t){return(0,a.track)((()=>{t in e&&(0,i.valueForRef)(e[t])}))}function h(e,t){return(0,a.track)((()=>{"[]"===t&&e.forEach(i.valueForRef) -var r=c(t) -null!==r&&r{var{named:r,positional:n}=e,i=new p(r),a=new f(n),s=Object.create(null),o=new Proxy(s,i),u=new Proxy([],a) -return l(o,((e,t)=>d(r,t))),l(u,((e,t)=>h(n,t))),{named:o,positional:u}}:(e,t)=>{var{named:r,positional:n}=e,a={},s=[] -return l(a,((e,t)=>d(r,t))),l(s,((e,t)=>h(n,t))),Object.keys(r).forEach((e=>{Object.defineProperty(a,e,{enumerable:!0,configurable:!0,get:()=>(0,i.valueForRef)(r[e])})})),n.forEach(((e,t)=>{Object.defineProperty(s,t,{enumerable:!0,configurable:!0,get:()=>(0,i.valueForRef)(e)})})),{named:a,positional:s}} -class g{constructor(e){this.factory=e,this.helperManagerDelegates=new WeakMap,this.undefinedDelegate=null}getDelegateForOwner(e){var t=this.helperManagerDelegates.get(e) -if(void 0===t){var{factory:r}=this -t=r(e),this.helperManagerDelegates.set(e,t)}return t}getDelegateFor(e){if(void 0===e){var{undefinedDelegate:t}=this -if(null===t){var{factory:r}=this -this.undefinedDelegate=t=r(void 0)}return t}return this.getDelegateForOwner(e)}getHelper(e){return(t,r)=>{var a=this.getDelegateFor(r),s=o(t,"helper"),u=a.createHelper(e,s) -if(m(a)){var l=(0,i.createComputeRef)((()=>a.getValue(u)),null,!1) -return v(a)&&(0,n.associateDestroyableChild)(l,a.getDestroyable(u)),l}if(v(a)){var c=(0,i.createConstRef)(void 0,!1) -return(0,n.associateDestroyableChild)(c,a.getDestroyable(u)),c}return i.UNDEFINED_REFERENCE}}}e.CustomHelperManager=g -class b{constructor(){this.capabilities={hasValue:!0,hasDestroyable:!1,hasScheduledEffect:!1}}createHelper(e,t){return{fn:e,args:t}}getValue({fn:e,args:t}){return Object.keys(t.named).length>0?e(...[...t.positional,t.named]):e(...t.positional)}getDebugName(e){return e.name?`(helper function ${e.name})`:"(anonymous helper function)"}}var y=new WeakMap,_=new WeakMap,w=new WeakMap,E=Object.getPrototypeOf -function O(e,t,r){return e.set(r,t),r}function R(e,t){for(var r=t;null!=r;){var n=e.get(r) -if(void 0!==n)return n -r=E(r)}}function T(e,t){return O(_,e,t)}function C(e,t){return O(w,e,t)}var P=new g((()=>new b)) -function k(e,t){return O(y,e,t)}var x={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -function A(e){return e.capabilities.asyncLifeCycleCallbacks}function S(e){return e.capabilities.updateHook}class j{constructor(e){this.factory=e,this.componentManagerDelegates=new WeakMap}getDelegateFor(e){var{componentManagerDelegates:t}=this,r=t.get(e) -if(void 0===r){var{factory:n}=this -r=n(e),t.set(e,r)}return r}create(e,t,r){var n=this.getDelegateFor(e),i=o(r.capture(),"component"),a=n.createComponent(t,i) -return new M(a,n,i)}getDebugName(e){return"function"==typeof e?e.name:e.toString()}update(e){var{delegate:t}=e -if(S(t)){var{component:r,args:n}=e -t.updateComponent(r,n)}}didCreate({component:e,delegate:t}){A(t)&&t.didCreateComponent(e)}didUpdate({component:e,delegate:t}){(function(e){return A(e)&&S(e)})(t)&&t.didUpdateComponent(e)}didRenderLayout(){}didUpdateLayout(){}getSelf({component:e,delegate:t}){return(0,i.createConstRef)(t.getContext(e),"this")}getDestroyable(e){var{delegate:t}=e -if(function(e){return e.capabilities.destructor}(t)){var{component:r}=e -return(0,n.registerDestructor)(e,(()=>t.destroyComponent(r))),e}return null}getCapabilities(){return x}}e.CustomComponentManager=j -class M{constructor(e,t,r){this.component=e,this.delegate=t,this.args=r}}class N{constructor(e){this.factory=e,this.componentManagerDelegates=new WeakMap}getDelegateFor(e){var{componentManagerDelegates:t}=this,r=t.get(e) -if(void 0===r){var{factory:n}=this -r=n(e),t.set(e,r)}return r}create(e,t,r,i){var s,u=this.getDelegateFor(e),l=o(i,"modifier"),c=u.createModifier(r,l) -return s={tag:(0,a.createUpdatableTag)(),element:t,delegate:u,args:l,modifier:c},(0,n.registerDestructor)(s,(()=>u.destroyModifier(c,l))),s}getDebugName({debugName:e}){return e}getTag({tag:e}){return e}install({element:e,args:t,modifier:r,delegate:n}){var{capabilities:i}=n -!0===i.disableAutoTracking?(0,a.untrack)((()=>n.installModifier(r,e,t))):n.installModifier(r,e,t)}update({args:e,modifier:t,delegate:r}){var{capabilities:n}=r -!0===n.disableAutoTracking?(0,a.untrack)((()=>r.updateModifier(t,e))):r.updateModifier(t,e)}getDestroyable(e){return e}}e.CustomModifierManager=N -var I=new WeakMap,D=Object.getPrototypeOf})),e("@glimmer/node",["exports","@glimmer/runtime","@simple-dom/document"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.NodeDOMTreeConstruction=void 0,e.serializeBuilder=function(e,t){return a.forInitialRender(e,t)} -class n extends t.DOMTreeConstruction{constructor(e){super(e||(0,r.default)())}setupUselessElement(){}insertHTMLBefore(e,r,n){var i=this.document.createRawHTMLSection(n) -return e.insertBefore(i,r),new t.ConcreteBounds(e,i,i)}createElement(e){return this.document.createElement(e)}setAttribute(e,t,r){e.setAttribute(t,r)}}e.NodeDOMTreeConstruction=n -var i=new WeakMap -class a extends t.NewElementBuilder{constructor(){super(...arguments),this.serializeBlockDepth=0}__openBlock(){var{tagName:e}=this.element -if("TITLE"!==e&&"SCRIPT"!==e&&"STYLE"!==e){var t=this.serializeBlockDepth++ -this.__appendComment(`%+b:${t}%`)}super.__openBlock()}__closeBlock(){var{tagName:e}=this.element -if(super.__closeBlock(),"TITLE"!==e&&"SCRIPT"!==e&&"STYLE"!==e){var t=--this.serializeBlockDepth -this.__appendComment(`%-b:${t}%`)}}__appendHTML(e){var{tagName:r}=this.element -if("TITLE"===r||"SCRIPT"===r||"STYLE"===r)return super.__appendHTML(e) -var n=this.__appendComment("%glmr%") -if("TABLE"===r){var i=e.indexOf("<") -if(i>-1)"tr"===e.slice(i+1,i+3)&&(e=`${e}`)}""===e?this.__appendComment("% %"):super.__appendHTML(e) -var a=this.__appendComment("%glmr%") -return new t.ConcreteBounds(this.element,n,a)}__appendText(e){var{tagName:t}=this.element,r=function(e){var{element:t,nextSibling:r}=e -return null===r?t.lastChild:r.previousSibling}(this) -return"TITLE"===t||"SCRIPT"===t||"STYLE"===t?super.__appendText(e):""===e?this.__appendComment("% %"):(r&&3===r.nodeType&&this.__appendComment("%|%"),super.__appendText(e))}closeElement(){return i.has(this.element)&&(i.delete(this.element),super.closeElement()),super.closeElement()}openElement(e){return"tr"===e&&"TBODY"!==this.element.tagName&&"THEAD"!==this.element.tagName&&"TFOOT"!==this.element.tagName&&(this.openElement("tbody"),i.set(this.constructing,!0),this.flushElement(null)),super.openElement(e)}pushRemoteElement(e,t,r=null){var{dom:n}=this,i=n.createElement("script") -return i.setAttribute("glmr",t),n.insertBefore(e,i,r),super.pushRemoteElement(e,t,r)}}})),e("@glimmer/opcode-compiler",["exports","@glimmer/vm","@glimmer/manager","@glimmer/util","@glimmer/global-context","@glimmer/encoder"],(function(e,t,r,n,i,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.WrappedBuilder=e.StdLib=e.MINIMAL_CAPABILITIES=e.EMPTY_BLOCKS=e.DEFAULT_CAPABILITIES=e.CompileTimeCompilationContextImpl=void 0,e.compilable=te,e.compileStatements=re,e.compileStd=oe,e.debugCompiler=void 0,e.invokeStaticBlock=I,e.invokeStaticBlockWithStack=D,e.meta=C,e.programCompilationContext=function(e,t){return new ce(e,t)},e.templateCacheCounters=void 0,e.templateCompilationContext=G,e.templateFactory=function({id:e,moduleName:t,block:r,scope:n,isStrictMode:i}){var a,s=e||"client-"+he++,o=null,u=new WeakMap,l=e=>{if(void 0===a&&(a=JSON.parse(r)),void 0===e)return null===o?(pe.cacheMiss++,o=new fe({id:s,block:a,moduleName:t,owner:null,scope:n,isStrictMode:i})):pe.cacheHit++,o -var l=u.get(e) -return void 0===l?(pe.cacheMiss++,l=new fe({id:s,block:a,moduleName:t,owner:e,scope:n,isStrictMode:i}),u.set(e,l)):pe.cacheHit++,l} -return l.__id=s,l.__meta={moduleName:t},l} -class s{constructor(e){this.blocks=e,this.names=e?Object.keys(e):[]}get(e){return this.blocks&&this.blocks[e]||null}has(e){var{blocks:t}=this -return null!==t&&e in t}with(e,t){var{blocks:r}=this -return new s(r?(0,n.assign)({},r,{[e]:t}):{[e]:t})}get hasAny(){return null!==this.blocks}}var o=e.EMPTY_BLOCKS=new s(null) -function u(e){if(null===e)return o -for(var t=(0,n.dict)(),[r,i]=e,a=0;a{if(!function(e){return Array.isArray(e)&&2===e.length}(t))return!1 -var r=t[0] -return 31===r||32===r||r===e}}var f=p(39),m=p(38),v=p(37),g=p(35),b=p(34) -function y(e,t,r,n,i){var{upvars:a}=r,s=a[e[1]],o=t.lookupBuiltInHelper(s) -return n.helper(o,s)}class _{constructor(){this.names={},this.funcs=[]}add(e,t){this.names[e]=this.funcs.push(t)-1}compile(e,t){var r=t[0],n=this.names[r];(0,this.funcs[n])(e,t)}}var w=new _ -function E(e,t){if(void 0!==t&&0!==t.length)for(var r=0;r=0;s--){var o=n[s] -e(1e3,o.label),e(34,1),o.callback(),0!==s&&e(4,l("END"))}e(1e3,"END"),e(1002),e(70)}function U(e,t,r){e(1001),e(0),e(6,l("ENDINITIAL")),e(69,t()),r(),e(1e3,"FINALLY"),e(70),e(5),e(1e3,"ENDINITIAL"),e(1),e(1002)}function B(e,t,r,n){return U(e,t,(()=>{e(66,l("ELSE")),r(),e(4,l("FINALLY")),e(1e3,"ELSE"),void 0!==n&&n()}))}w.add(29,((e,[,t])=>{for(var r of t)O(e,r) -e(27,t.length)})),w.add(28,((e,[,t,r,n])=>{v(t)?e(1005,t,(t=>{A(e,t,r,n)})):(O(e,t),S(e,r,n))})),w.add(50,((e,[,t,r,n,i])=>{j(e,r,t,n,i)})),w.add(30,((e,[,t,r])=>{e(21,t),E(e,r)})),w.add(32,((e,[,t,r])=>{e(1011,t,(t=>{e(29,t),E(e,r)}))})),w.add(31,((e,[,t,r])=>{e(1009,t,(e=>{}))})),w.add(34,(()=>{throw new Error("unimplemented opcode")})),w.add(36,((e,t)=>{e(1010,t[1],(r=>{e(1006,t,{ifHelper:t=>{A(e,t,null,null)}})}))})),w.add(99,((e,t)=>{e(1010,t[1],(r=>{e(1006,t,{ifHelper:(r,n,i)=>{t[2][0] -A(e,r,null,null)}})}))})),w.add(27,(e=>k(e,void 0))),w.add(48,((e,[,t])=>{O(e,t),e(25)})),w.add(49,((e,[,t])=>{O(e,t),e(24),e(61),e(26)})),w.add(52,((e,[,t,r,n])=>{O(e,n),O(e,r),O(e,t),e(109)})),w.add(51,((e,[,t])=>{O(e,t),e(110)})),w.add(53,((e,[,t])=>{O(e,t),e(111)})),w.add(54,((e,[,r])=>{e(0),R(e,r,null,!1),e(112),e(1),e(36,t.$v0)})) -var $="&attrs" -function z(e,i,a,s,o,l){var{compilable:c,capabilities:d,handle:p}=i,f=a?[a,[]]:null,m=Array.isArray(l)||null===l?u(l):l -c?(e(78,p),function(e,{capabilities:i,layout:a,elementBlock:s,positional:o,named:u,blocks:l}){var{symbolTable:c}=a,d=c.hasEval||(0,r.hasCapability)(i,4) -if(d)return void H(e,{capabilities:i,elementBlock:s,positional:o,named:u,atNames:!0,blocks:l,layout:a}) -e(36,t.$s0),e(33,t.$sp,1),e(35,t.$s0),e(0) -var{symbols:p}=c,f=[],m=[],v=[],g=l.names -if(null!==s){var b=p.indexOf($);-1!==b&&(N(e,s),f.push(b))}for(var y=0;y0?1:0),e(19,0) -for(var I=m.length-1;I>=0;I--){var D=m[I];-1===D?e(34,1):e(19,D+1)}null!==o&&e(34,o.length) -for(var F=f.length-1;F>=0;F--){e(20,f[F]+1)}e(28,h(a)),e(61),e(2),e(100,t.$s0),e(1),e(40),(0,r.hasCapability)(i,64)&&e(60) -e(98),e(35,t.$s0)}(e,{capabilities:d,layout:c,elementBlock:f,positional:s,named:o,blocks:m})):(e(78,p),H(e,{capabilities:d,elementBlock:f,positional:s,named:o,atNames:!0,blocks:m}))}function V(e,r,n,i,a,s,o,c){var d=n?[n,[]]:null,h=Array.isArray(s)||null===s?u(s):s -U(e,(()=>(O(e,r),e(33,t.$sp,0),2)),(()=>{e(66,l("ELSE")),c?e(81):e(80,{type:2,value:void 0}),e(79),H(e,{capabilities:!0,elementBlock:d,positional:i,named:a,atNames:o,blocks:h}),e(1e3,"ELSE")}))}function H(e,{capabilities:i,elementBlock:a,positional:s,named:o,atNames:u,blocks:l,layout:c}){var p=!!l,f=!0===i||(0,r.hasCapability)(i,4)||!(!o||0===o[0].length),m=l.with("attrs",a) -e(36,t.$s0),e(33,t.$sp,1),e(35,t.$s0),e(0),function(e,t,r,i,a){for(var s=i.names,o=0;o{c?(e(63,d(c.symbolTable)),e(28,h(c)),e(61)):e(92,t.$s0),e(95,t.$s0)})),e(35,t.$s0)}function q(e,r,n,i,a=null){e(97,t.$s0),e(59),e(87,0|r,t.$s0),a&&a(),e(88,t.$s0),e(90,t.$s0),e(38,t.$s0),e(19,0),e(94,t.$s0),i&&e(17,t.$s0),n&&e(18,t.$s0),e(34,1),e(96,t.$s0),e(100,t.$s0),e(1),e(40),e(60),e(98)}class W{constructor(e,t,r,n,i){this.main=e,this.trustingGuardedAppend=t,this.cautiousGuardedAppend=r,this.trustingNonDynamicAppend=n,this.cautiousNonDynamicAppend=i}get"trusting-append"(){return this.trustingGuardedAppend}get"cautious-append"(){return this.cautiousGuardedAppend}get"trusting-non-dynamic-append"(){return this.trustingNonDynamicAppend}get"cautious-non-dynamic-append"(){return this.cautiousNonDynamicAppend}getAppend(e){return e?this.trustingGuardedAppend:this.cautiousGuardedAppend}}function G(e,t){return{program:e,encoder:new ae(e.heap,t,e.stdlib),meta:t}}e.StdLib=W -var Y=new _,Q=["class","id","value","name","type","style","href"],K=["div","span","p","a"] -function J(e){return"string"==typeof e?e:K[e]}function X(e){return"string"==typeof e?e:Q[e]}function Z(e){return null===e?null:[e[0].map((e=>`@${e}`)),e[1]]}Y.add(3,((e,t)=>e(42,t[1]))),Y.add(13,(e=>e(55))),Y.add(12,(e=>e(54))),Y.add(4,((e,[,r,n,i])=>{m(r)?e(1003,r,(t=>{e(0),R(e,n,i,!1),e(57,t),e(1)})):(O(e,r),e(0),R(e,n,i,!1),e(33,t.$fp,1),e(108),e(1))})),Y.add(14,((e,[,t,r,n])=>{e(51,X(t),r,null!=n?n:null)})),Y.add(24,((e,[,t,r,n])=>{e(105,X(t),r,null!=n?n:null)})),Y.add(15,((e,[,t,r,n])=>{O(e,r),e(52,X(t),!1,null!=n?n:null)})),Y.add(22,((e,[,t,r,n])=>{O(e,r),e(52,X(t),!0,null!=n?n:null)})),Y.add(16,((e,[,t,r,n])=>{O(e,r),e(53,X(t),!1,null!=n?n:null)})),Y.add(23,((e,[,t,r,n])=>{O(e,r),e(53,X(t),!0,null!=n?n:null)})),Y.add(10,((e,[,t])=>{e(48,J(t))})),Y.add(11,((e,[,t])=>{e(89),e(48,J(t))})),Y.add(8,((e,[,t,r,n,i])=>{f(t)?e(1004,t,(t=>{z(e,t,r,null,n,i)})):V(e,t,r,null,n,i,!0,!0)})),Y.add(18,((e,[,t,r])=>M(e,t,r))),Y.add(17,((e,[,t])=>M(e,t,null))),Y.add(26,((e,[,t])=>e(103,{type:3,value:void 0},t))),Y.add(1,((e,[,t])=>{if(Array.isArray(t))if(b(t))e(1008,t,{ifComponent(t){z(e,t,null,null,null,null)},ifHelper(t){e(0),A(e,t,null,null),e(3,c("cautious-non-dynamic-append")),e(1)},ifValue(t){e(0),e(29,t),e(3,c("cautious-non-dynamic-append")),e(1)}}) -else if(28===t[0]){var[,r,n,i]=t -g(r)?e(1007,r,{ifComponent(t){z(e,t,null,n,Z(i),null)},ifHelper(t){e(0),A(e,t,n,i),e(3,c("cautious-non-dynamic-append")),e(1)}}):L(e,(()=>{O(e,r),e(106)}),(t=>{t(0,(()=>{e(81),e(79),H(e,{capabilities:!0,elementBlock:null,positional:n,named:i,atNames:!1,blocks:u(null)})})),t(1,(()=>{S(e,n,i,(()=>{e(3,c("cautious-non-dynamic-append"))}))}))}))}else e(0),O(e,t),e(3,c("cautious-append")),e(1) -else e(41,null==t?"":String(t))})),Y.add(2,((e,[,t])=>{Array.isArray(t)?(e(0),O(e,t),e(3,c("trusting-append")),e(1)):e(41,null==t?"":String(t))})),Y.add(6,((e,[,t,r,n,i])=>{f(t)?e(1004,t,(t=>{z(e,t,null,r,Z(n),i)})):V(e,t,null,r,n,i,!1,!1)})),Y.add(40,((e,[,r,n,i,a])=>{B(e,(()=>(O(e,n),void 0===a?k(e,void 0):O(e,a),O(e,i),e(33,t.$sp,0),4)),(()=>{e(50),I(e,r),e(56)}))})),Y.add(41,((e,[,t,r,n])=>B(e,(()=>(O(e,t),e(71),1)),(()=>{I(e,r)}),n?()=>{I(e,n)}:void 0))),Y.add(42,((e,[,r,n,i,a])=>U(e,(()=>(n?O(e,n):k(e,null),O(e,r),2)),(()=>{e(72,l("BODY"),l("ELSE")),e(0),e(33,t.$fp,1),e(6,l("ITER")),e(1e3,"ITER"),e(74,l("BREAK")),e(1e3,"BODY"),D(e,i,2),e(34,2),e(4,l("FINALLY")),e(1e3,"BREAK"),e(1),e(73),e(4,l("FINALLY")),e(1e3,"ELSE"),a&&I(e,a)})))),Y.add(43,((e,[,r,n,i])=>{B(e,(()=>(O(e,r),e(33,t.$sp,0),e(71),2)),(()=>{D(e,n,1)}),(()=>{i&&I(e,i)}))})),Y.add(44,((e,[,t,r])=>{D(e,r,T(e,t))})),Y.add(45,((e,[,t,r])=>{if(t){var[n,i]=t -T(e,i),function(e,t,r){e(59),e(58,t),r(),e(60)}(e,n,(()=>{I(e,r)}))}else I(e,r)})),Y.add(46,((e,[,t,r,n,i])=>{f(t)?e(1004,t,(t=>{z(e,t,null,r,Z(n),i)})):V(e,t,null,r,n,i,!1,!1)})) -class ee{constructor(e,t,r,n="plain block"){this.statements=e,this.meta=t,this.symbolTable=r,this.moduleName=n,this.compiled=null}compile(e){return function(e,t){if(null!==e.compiled)return e.compiled -e.compiled=-1 -var{statements:r,meta:n}=e,i=re(r,n,t) -return e.compiled=i,i}(this,e)}}function te(e,t){var[r,n,i]=e.block -return new ee(r,C(e),{symbols:n,hasEval:i},t)}function re(e,t,r){var n=Y,i=G(r,t),{encoder:a,program:{constants:s,resolver:o}}=i -function u(...e){ie(a,s,o,t,e)}for(var l=0;le(76)),(i=>{i(2,(()=>{r?(e(68),e(43)):e(47)})),"number"==typeof n?(i(0,(()=>{e(81),e(79),function(e){e(36,t.$s0),e(33,t.$sp,1),e(35,t.$s0),e(0),e(83),e(85,t.$s0),q(e,!1,!1,!0,(()=>{e(92,t.$s0),e(95,t.$s0)})),e(35,t.$s0)}(e)})),i(1,(()=>{S(e,null,null,(()=>{e(3,n)}))}))):(i(0,(()=>{e(47)})),i(1,(()=>{e(47)}))),i(4,(()=>{e(68),e(44)})),i(5,(()=>{e(68),e(45)})),i(6,(()=>{e(68),e(46)}))}))}function oe(e){var r=le(e,(e=>function(e){e(75,t.$s0),q(e,!1,!1,!0)}(e))),n=le(e,(e=>se(e,!0,null))),i=le(e,(e=>se(e,!1,null))),a=le(e,(e=>se(e,!0,n))),s=le(e,(e=>se(e,!1,i))) -return new W(r,a,s,n,i)}var ue={evalSymbols:null,upvars:null,moduleName:"stdlib",scopeValues:null,isStrictMode:!0,owner:null,size:0} -function le(e,t){var{constants:r,heap:n,resolver:i}=e,a=new ae(n,ue) -t((function(...e){ie(a,r,i,ue,e)})) -var s=a.commit(0) -if("number"!=typeof s)throw new Error("Unexpected errors compiling std") -return s}class ce{constructor({constants:e,heap:t},r){this.resolver=r,this.constants=e,this.heap=t,this.stdlib=oe(this)}}e.CompileTimeCompilationContextImpl=ce -e.DEFAULT_CAPABILITIES={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!1,elementHook:!1,dynamicScope:!0,createCaller:!1,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1},e.MINIMAL_CAPABILITIES={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,dynamicScope:!1,createCaller:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class de{constructor(e,t){this.layout=e,this.moduleName=t,this.compiled=null -var{block:r}=e,[,n,i]=r,a=(n=n.slice()).indexOf($) -this.attrsBlockNumber=-1===a?n.push($):a+1,this.symbolTable={hasEval:i,symbols:n}}compile(e){if(null!==this.compiled)return this.compiled -var r,n,i,a=C(this.layout),s=G(e,a),{encoder:o,program:{constants:u,resolver:c}}=s -r=function(...e){ie(o,u,c,a,e)},n=this.layout,i=this.attrsBlockNumber,r(1001),function(e,t,r){e(36,t),r(),e(35,t)}(r,t.$s1,(()=>{r(91,t.$s0),r(31),r(33,t.$sp,0)})),r(66,l("BODY")),r(36,t.$s1),r(89),r(49),r(99,t.$s0),M(r,i,null),r(54),r(1e3,"BODY"),I(r,[n.block[0],[]]),r(36,t.$s1),r(66,l("END")),r(55),r(1e3,"END"),r(35,t.$s1),r(1002) -var d=s.encoder.commit(a.size) -return"number"!=typeof d||(this.compiled=d),d}}e.WrappedBuilder=de -var he=0,pe=e.templateCacheCounters={cacheHit:0,cacheMiss:0} -class fe{constructor(e){this.parsedLayout=e,this.result="ok",this.layout=null,this.wrappedLayout=null}get moduleName(){return this.parsedLayout.moduleName}get id(){return this.parsedLayout.id}get referrer(){return{moduleName:this.parsedLayout.moduleName,owner:this.parsedLayout.owner}}asLayout(){return this.layout?this.layout:this.layout=te((0,n.assign)({},this.parsedLayout),this.moduleName)}asWrappedLayout(){return this.wrappedLayout?this.wrappedLayout:this.wrappedLayout=new de((0,n.assign)({},this.parsedLayout),this.moduleName)}}})),e("@glimmer/owner",["exports","@glimmer/util"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.OWNER=void 0,e.getOwner=function(e){return e[r]},e.setOwner=function(e,t){e[r]=t} -var r=e.OWNER=(0,t.symbol)("OWNER")})),e("@glimmer/program",["exports","@glimmer/util","@glimmer/manager","@glimmer/opcode-compiler"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.RuntimeProgramImpl=e.RuntimeOpImpl=e.RuntimeHeapImpl=e.RuntimeConstantsImpl=e.HeapImpl=e.ConstantsImpl=e.CompileTimeConstantImpl=void 0,e.artifacts=function(){return{constants:new l,heap:new p}},e.hydrateHeap=function(e){return new h(e)} -var i={id:"1b32f5c2-7623-43d6-a0ad-9672898920a1",moduleName:"__default__.hbs",block:JSON.stringify([[[18,1,null]],["&default"],!1,[]]),scope:null,isStrictMode:!0},a=Object.freeze([]),s=(0,t.constants)(a),o=s.indexOf(a) -class u{constructor(){this.values=s.slice(),this.indexMap=new Map(this.values.map(((e,t)=>[e,t])))}value(e){var t=this.indexMap,r=t.get(e) -return void 0===r&&(r=this.values.push(e)-1,t.set(e,r)),r}array(e){if(0===e.length)return o -for(var t=new Array(e.length),r=0;r>8)}get isMachine(){return 1024&this.heap.getbyaddr(this.offset)?1:0}get type(){return 255&this.heap.getbyaddr(this.offset)}get op1(){return this.heap.getbyaddr(this.offset+1)}get op2(){return this.heap.getbyaddr(this.offset+2)}get op3(){return this.heap.getbyaddr(this.offset+3)}}e.RuntimeOpImpl=c -var d=1048576 -class h{constructor(e){var{buffer:t,table:r}=e -this.heap=new Int32Array(t),this.table=r}getaddr(e){return this.table[e]}getbyaddr(e){return this.heap[e]}sizeof(e){return f(this.table)}}e.RuntimeHeapImpl=h -class p{constructor(){this.offset=0,this.handle=0,this.heap=new Int32Array(d),this.handleTable=[],this.handleState=[]}push(e){this.sizeCheck(),this.heap[this.offset++]=e}sizeCheck(){var{heap:e}=this -if(this.offset===this.heap.length){var t=new Int32Array(e.length+d) -t.set(e,0),this.heap=t}}getbyaddr(e){return this.heap[e]}setbyaddr(e,t){this.heap[e]=t}malloc(){return this.handleTable.push(this.offset),this.handleTable.length-1}finishMalloc(e){}size(){return this.offset}getaddr(e){return this.handleTable[e]}sizeof(e){return f(this.handleTable)}free(e){this.handleState[e]=1}compact(){for(var e=0,{handleTable:t,handleState:r,heap:n}=this,i=0;id(e)),(t=>h(e,t))) -return t.debugLabel=e.debugLabel,t[i]=3,t},e.createIteratorItemRef=function(e){var t=e,r=(0,n.createTag)() -return l((()=>((0,n.consumeTag)(r),t)),(e=>{t!==e&&(t=e,(0,n.dirtyTag)(r))}))},e.createIteratorRef=function(e,n){return l((()=>{var i=d(e),a=function(e){switch(e){case"@key":return _(m) -case"@index":return _(v) -case"@identity":return _(g) -default:return function(e){0 -return _((r=>(0,t.getPath)(r,e)))}(e)}}(n) -if(Array.isArray(i))return new E(i,a) -var s=(0,t.toIterator)(i) -return null===s?new E(r.EMPTY_ARRAY,(()=>null)):new w(s,a)}))},e.createPrimitiveRef=s,e.createReadOnlyRef=function(e){return c(e)?l((()=>d(e)),null,e.debugLabel):e},e.createUnboundRef=u,e.isConstRef=function(e){return e.tag===n.CONSTANT_TAG},e.isInvokableRef=function(e){return 3===e[i]},e.isUpdatableRef=c,e.updateRef=h,e.valueForRef=d -var i=e.REFERENCE=(0,r.symbol)("REFERENCE") -class a{constructor(e){this.tag=null,this.lastRevision=n.INITIAL,this.children=null,this.compute=null,this.update=null,this[i]=e}}function s(e){var t=new a(2) -return t.tag=n.CONSTANT_TAG,t.lastValue=e,t}var o=e.UNDEFINED_REFERENCE=s(void 0) -e.NULL_REFERENCE=s(null),e.TRUE_REFERENCE=s(!0),e.FALSE_REFERENCE=s(!1) -function u(e,t){var r=new a(2) -return r.lastValue=e,r.tag=n.CONSTANT_TAG,r}function l(e,t=null,r="unknown"){var n=new a(1) -return n.compute=e,n.update=t,n}function c(e){return null!==e.update}function d(e){var t=e,{tag:r}=t -if(r===n.CONSTANT_TAG)return t.lastValue -var i,{lastRevision:a}=t -if(null!==r&&(0,n.validateTag)(r,a))i=t.lastValue -else{var{compute:s}=t -r=t.tag=(0,n.track)((()=>{i=t.lastValue=s()}),!1),t.lastRevision=(0,n.valueForTag)(r)}return(0,n.consumeTag)(r),i}function h(e,t){(0,e.update)(t)}function p(e,n){var a,s=e,c=s[i],h=s.children -if(null===h)h=s.children=new Map -else if(void 0!==(a=h.get(n)))return a -if(2===c){var p=d(s) -a=(0,r.isDict)(p)?u(p[n]):o}else a=l((()=>{var e=d(s) -if((0,r.isDict)(e))return(0,t.getProp)(e,n)}),(e=>{var i=d(s) -if((0,r.isDict)(i))return(0,t.setProp)(i,n,e)})) -return h.set(n,a),a}var f={},m=(e,t)=>t,v=(e,t)=>String(t),g=e=>null===e?f:e -class b{get weakMap(){return void 0===this._weakMap&&(this._weakMap=new WeakMap),this._weakMap}get primitiveMap(){return void 0===this._primitiveMap&&(this._primitiveMap=new Map),this._primitiveMap}set(e,t){(0,r.isObject)(e)?this.weakMap.set(e,t):this.primitiveMap.set(e,t)}get(e){return(0,r.isObject)(e)?this.weakMap.get(e):this.primitiveMap.get(e)}}var y=new b -function _(e){var t=new b -return(r,n)=>{var i=e(r,n),a=t.get(i)||0 -return t.set(i,a+1),0===a?i:function(e,t){var r=y.get(e) -void 0===r&&(r=[],y.set(e,r)) -var n=r[t] -return void 0===n&&(n={value:e,count:t},r[t]=n),n}(i,a)}}class w{constructor(e,t){this.inner=e,this.keyFor=t}isEmpty(){return this.inner.isEmpty()}next(){var e=this.inner.next() -return null!==e&&(e.key=this.keyFor(e.value,e.memo)),e}}class E{constructor(e,t){this.iterator=e,this.keyFor=t,this.pos=0,0===e.length?this.current={kind:"empty"}:this.current={kind:"first",value:e[this.pos]}}isEmpty(){return"empty"===this.current.kind}next(){var e,t=this.current -if("first"===t.kind)this.current={kind:"progress"},e=t.value -else{if(this.pos>=this.iterator.length-1)return null -e=this.iterator[++this.pos]}var{keyFor:r}=this -return{key:r(e,this.pos),value:e,memo:this.pos}}}})),e("@glimmer/runtime",["exports","@glimmer/reference","@glimmer/util","@glimmer/vm","@glimmer/destroyable","@glimmer/global-context","@glimmer/validator","@glimmer/manager","@glimmer/program","@glimmer/owner","@glimmer/runtime"],(function(e,t,r,n,i,a,s,o,u,l,c){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.array=e.UpdatingVM=e.UpdatableBlockImpl=e.TemplateOnlyComponentManager=e.TemplateOnlyComponent=e.TEMPLATE_ONLY_COMPONENT_MANAGER=e.SimpleDynamicAttribute=e.SERIALIZATION_FIRST_NODE_STRING=e.RemoteLiveBlock=e.RehydrateBuilder=e.PartialScopeImpl=e.NewElementBuilder=e.LowLevelVM=e.IDOMChanges=e.EnvironmentImpl=e.EMPTY_POSITIONAL=e.EMPTY_NAMED=e.EMPTY_ARGS=e.DynamicScopeImpl=e.DynamicAttribute=e.DOMTreeConstruction=e.DOMChanges=e.CursorImpl=e.CurriedValue=e.ConcreteBounds=void 0,e.clear=R,e.clientBuilder=function(e,t){return ae.forInitialRender(e,t)},e.concat=void 0,e.createCapturedArgs=Se,e.curry=Ee,Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return i.destroy}}),e.dynamicAttribute=W,e.hash=e.get=e.fn=void 0,e.inTransaction=Nt,e.invokeHelper=function(e,t,r){0 -var n=(0,l.getOwner)(e),a=(0,o.getInternalHelperManager)(t) -0 -0 -var u,c=a.getDelegateFor(n),d=new ur(e,r),h=c.createHelper(t,d) -if(!(0,o.hasValue)(c))throw new Error("TODO: unreachable, to be implemented with hasScheduledEffect") -u=(0,s.createCache)((()=>c.getValue(h))),(0,i.associateDestroyableChild)(e,u) -if((0,o.hasDestroyable)(c)){var p=c.getDestroyable(h);(0,i.associateDestroyableChild)(u,p)}return u},Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return i.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return i.isDestroying}}),e.isSerializationFirstNode=function(e){return e.nodeValue===Kt},e.isWhitespace=function(e){return _t.test(e)},e.normalizeProperty=A,e.on=void 0,Object.defineProperty(e,"registerDestructor",{enumerable:!0,get:function(){return i.registerDestructor}}),e.rehydrationBuilder=function(e,t){return Xt.forInitialRender(e,t)},e.reifyArgs=Ne,e.reifyNamed=je,e.reifyPositional=Me,e.renderComponent=function(e,n,i,a,s,o={},u=new d){var l=Wt.empty(e,{treeBuilder:n,handle:i.stdlib.main,dynamicScope:u,owner:a},i) -return function(e,t,n,i,a){var s=Object.keys(a).map((e=>[e,a[e]])),o=["main","else","attrs"],u=s.map((([e])=>`@${e}`)),l=e[b].component(i,n) -e.pushFrame() -for(var c=0;c<3*o.length;c++)e.stack.push(null) -e.stack.push(null),s.forEach((([,t])=>{e.stack.push(t)})),e[y].setup(e.stack,u,o,0,!0) -var d=l.compilable,h=(0,r.unwrapHandle)(d.compile(t)),p={handle:h,symbolTable:d.symbolTable} -return e.stack.push(e[y]),e.stack.push(p),e.stack.push(l),new Qt(e)}(l,i,a,s,(c=o,h=(0,t.createConstRef)(c,"args"),Object.keys(c).reduce(((e,r)=>(e[r]=(0,t.childRefFor)(h,r),e)),{}))) -var c,h},e.renderMain=function(e,t,n,i,a,s,o=new d){var u=(0,r.unwrapHandle)(s.compile(t)),l=s.symbolTable.symbols.length,c=Wt.initial(e,t,{self:i,dynamicScope:o,treeBuilder:a,handle:u,numSymbols:l,owner:n}) -return new Qt(c)},e.renderSync=function(e,t){var r -return Nt(e,(()=>r=t.sync())),r},e.resetDebuggerCallback=function(){ot=st},e.runtimeContext=function(e,t,r,n){return{env:new Mt(e,t),program:new u.RuntimeProgramImpl(r.constants,r.heap),resolver:n}},e.setDebuggerCallback=function(e){ot=e},e.templateOnlyComponent=function(e,t){return new ht(e,t)} -class d{constructor(e){this.bucket=e?(0,r.assign)({},e):{}}get(e){return this.bucket[e]}set(e,t){return this.bucket[e]=t}child(){return new d(this.bucket)}}e.DynamicScopeImpl=d -class h{constructor(e,t,r,n,i){this.slots=e,this.owner=t,this.callerScope=r,this.evalScope=n,this.partialMap=i}static root(e,r=0,n){for(var i=new Array(r+1),a=0;a<=r;a++)i[a]=t.UNDEFINED_REFERENCE -return new h(i,n,null,null,null).init({self:e})}static sized(e=0,r){for(var n=new Array(e+1),i=0;i<=e;i++)n[i]=t.UNDEFINED_REFERENCE -return new h(n,r,null,null,null)}init({self:e}){return this.slots[0]=e,this}getSelf(){return this.get(0)}getSymbol(e){return this.get(e)}getBlock(e){var r=this.get(e) -return r===t.UNDEFINED_REFERENCE?null:r}getEvalScope(){return this.evalScope}getPartialMap(){return this.partialMap}bind(e,t){this.set(e,t)}bindSelf(e){this.set(0,e)}bindSymbol(e,t){this.set(e,t)}bindBlock(e,t){this.set(e,t)}bindEvalScope(e){this.evalScope=e}bindPartialMap(e){this.partialMap=e}bindCallerScope(e){this.callerScope=e}getCallerScope(){return this.callerScope}child(){return new h(this.slots.slice(),this.owner,this.callerScope,this.evalScope,this.partialMap)}get(e){if(e>=this.slots.length)throw new RangeError(`BUG: cannot get $${e} from scope; length=${this.slots.length}`) -return this.slots[e]}set(e,t){if(e>=this.slots.length)throw new RangeError(`BUG: cannot get $${e} from scope; length=${this.slots.length}`) -this.slots[e]=t}}e.PartialScopeImpl=h -var p=(0,r.symbol)("INNER_VM"),f=(0,r.symbol)("DESTROYABLE_STACK"),m=(0,r.symbol)("STACKS"),v=(0,r.symbol)("REGISTERS"),g=(0,r.symbol)("HEAP"),b=(0,r.symbol)("CONSTANTS"),y=(0,r.symbol)("ARGS");(0,r.symbol)("PC") -class _{constructor(e,t){this.element=e,this.nextSibling=t}}e.CursorImpl=_ -class w{constructor(e,t,r){this.parentNode=e,this.first=t,this.last=r}parentElement(){return this.parentNode}firstNode(){return this.first}lastNode(){return this.last}}e.ConcreteBounds=w -class E{constructor(e,t){this.parentNode=e,this.node=t}parentElement(){return this.parentNode}firstNode(){return this.node}lastNode(){return this.node}}function O(e,t){for(var r=e.parentElement(),n=e.firstNode(),i=e.lastNode(),a=n;;){var s=a.nextSibling -if(r.insertBefore(a,t),a===i)return s -a=s}}function R(e){for(var t=e.parentElement(),r=e.firstNode(),n=e.lastNode(),i=r;;){var a=i.nextSibling -if(t.removeChild(i),i===n)return a -i=a}}function T(e){return C(e)?"":String(e)}function C(e){return null==e||"function"!=typeof e.toString}function P(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}function k(e){return"object"==typeof e&&null!==e&&"number"==typeof e.nodeType}function x(e){return"string"==typeof e}function A(e,t){var r,n,i,a,s -if(t in e)n=t,r="prop" -else{var o=t.toLowerCase() -o in e?(r="prop",n=o):(r="attr",n=t)}return"prop"===r&&("style"===n.toLowerCase()||(i=e.tagName,a=n,(s=S[i.toUpperCase()])&&s[a.toLowerCase()]))&&(r="attr"),{normalized:n,type:r}}var S={INPUT:{form:!0,autocorrect:!0,list:!0},SELECT:{form:!0},OPTION:{form:!0},TEXTAREA:{form:!0},LABEL:{form:!0},FIELDSET:{form:!0},LEGEND:{form:!0},OBJECT:{form:!0},OUTPUT:{form:!0},BUTTON:{form:!0}} -var j,M,N=["javascript:","vbscript:"],I=["A","BODY","LINK","IMG","IFRAME","BASE","FORM"],D=["EMBED"],F=["href","src","background","action"],L=["src"] -function U(e,t){return-1!==e.indexOf(t)}function B(e,t){return(null===e||U(I,e))&&U(F,t)}function $(e,t){return null!==e&&(U(D,e)&&U(L,t))}function z(e,t){return B(e,t)||$(e,t)}if("object"==typeof URL&&null!==URL&&"function"==typeof URL.parse){var V=URL -j=e=>{var t=null -return"string"==typeof e&&(t=V.parse(e).protocol),null===t?":":t}}else if("function"==typeof URL)j=e=>{try{return new URL(e).protocol}catch(t){return":"}} -else{var H=document.createElement("a") -j=e=>(H.href=e,H.protocol)}function q(e,t,r){var n=null -if(null==r)return r -if(P(r))return r.toHTML() -n=e?e.tagName.toUpperCase():null -var i=T(r) -if(B(n,t)){var a=j(i) -if(U(N,a))return`unsafe:${i}`}return $(n,t)?`unsafe:${i}`:i}function W(e,t,r,n=!1){var{tagName:i,namespaceURI:a}=e,s={element:e,name:t,namespace:r} -if("http://www.w3.org/2000/svg"===a)return G(i,t,s) -var{type:o,normalized:u}=A(e,t) -return"attr"===o?G(i,u,s):function(e,t,r){if(z(e,t))return new J(t,r) -if(function(e,t){return("INPUT"===e||"TEXTAREA"===e)&&"value"===t}(e,t))return new Z(t,r) -if(function(e,t){return"OPTION"===e&&"selected"===t}(e,t))return new ee(t,r) -return new K(t,r)}(i,u,s)}function G(e,t,r){return z(e,t)?new X(r):new Q(r)}class Y{constructor(e){this.attribute=e}}e.DynamicAttribute=Y -class Q extends Y{set(e,t,r){var n=te(t) -if(null!==n){var{name:i,namespace:a}=this.attribute -e.__setAttribute(i,n,a)}}update(e,t){var r=te(e),{element:n,name:i}=this.attribute -null===r?n.removeAttribute(i):n.setAttribute(i,r)}}e.SimpleDynamicAttribute=Q -class K extends Y{constructor(e,t){super(t),this.normalizedName=e}set(e,t,r){null!=t&&(this.value=t,e.__setProperty(this.normalizedName,t))}update(e,t){var{element:r}=this.attribute -this.value!==e&&(r[this.normalizedName]=this.value=e,null==e&&this.removeAttribute())}removeAttribute(){var{element:e,namespace:t}=this.attribute -t?e.removeAttributeNS(t,this.normalizedName):e.removeAttribute(this.normalizedName)}}class J extends K{set(e,t,r){var{element:n,name:i}=this.attribute,a=q(n,i,t) -super.set(e,a,r)}update(e,t){var{element:r,name:n}=this.attribute,i=q(r,n,e) -super.update(i,t)}}class X extends Q{set(e,t,r){var{element:n,name:i}=this.attribute,a=q(n,i,t) -super.set(e,a,r)}update(e,t){var{element:r,name:n}=this.attribute,i=q(r,n,e) -super.update(i,t)}}class Z extends K{set(e,t){e.__setProperty("value",T(t))}update(e){var t=this.attribute.element,r=t.value,n=T(e) -r!==n&&(t.value=n)}}class ee extends K{set(e,t){null!=t&&!1!==t&&e.__setProperty("selected",!0)}update(e){var t=this.attribute.element -t.selected=!!e}}function te(e){return!1===e||null==e||void 0===e.toString?null:!0===e?"":"function"==typeof e?null:String(e)}class re{constructor(e){this.node=e}firstNode(){return this.node}}class ne{constructor(e){this.node=e}lastNode(){return this.node}}var ie=(0,r.symbol)("CURSOR_STACK") -class ae{constructor(e,t,n){this.constructing=null,this.operations=null,this[M]=new r.Stack,this.modifierStack=new r.Stack,this.blockStack=new r.Stack,this.pushElement(t,n),this.env=e,this.dom=e.getAppendOperations(),this.updateOperations=e.getDOM()}static forInitialRender(e,t){return new this(e,t.element,t.nextSibling).initialize()}static resume(e,t){var r=new this(e,t.parentElement(),t.reset(e)).initialize() -return r.pushLiveBlock(t),r}initialize(){return this.pushSimpleBlock(),this}debugBlocks(){return this.blockStack.toArray()}get element(){return this[ie].current.element}get nextSibling(){return this[ie].current.nextSibling}get hasBlocks(){return this.blockStack.size>0}block(){return this.blockStack.current}popElement(){this[ie].pop(),this[ie].current}pushSimpleBlock(){return this.pushLiveBlock(new se(this.element))}pushUpdatableBlock(){return this.pushLiveBlock(new ue(this.element))}pushBlockList(e){return this.pushLiveBlock(new le(this.element,e))}pushLiveBlock(e,t=!1){var r=this.blockStack.current -return null!==r&&(t||r.didAppendBounds(e)),this.__openBlock(),this.blockStack.push(e),e}popBlock(){return this.block().finalize(this),this.__closeBlock(),this.blockStack.pop()}__openBlock(){}__closeBlock(){}openElement(e){var t=this.__openElement(e) -return this.constructing=t,t}__openElement(e){return this.dom.createElement(e,this.element)}flushElement(e){var t=this.element,r=this.constructing -this.__flushElement(t,r),this.constructing=null,this.operations=null,this.pushModifiers(e),this.pushElement(r,null),this.didOpenElement(r)}__flushElement(e,t){this.dom.insertBefore(e,t,this.nextSibling)}closeElement(){return this.willCloseElement(),this.popElement(),this.popModifiers()}pushRemoteElement(e,t,r){return this.__pushRemoteElement(e,t,r)}__pushRemoteElement(e,t,r){if(this.pushElement(e,r),void 0===r)for(;e.lastChild;)e.removeChild(e.lastChild) -var n=new oe(e) -return this.pushLiveBlock(n,!0)}popRemoteElement(){this.popBlock(),this.popElement()}pushElement(e,t=null){this[ie].push(new _(e,t))}pushModifiers(e){this.modifierStack.push(e)}popModifiers(){return this.modifierStack.pop()}didAppendBounds(e){return this.block().didAppendBounds(e),e}didAppendNode(e){return this.block().didAppendNode(e),e}didOpenElement(e){return this.block().openElement(e),e}willCloseElement(){this.block().closeElement()}appendText(e){return this.didAppendNode(this.__appendText(e))}__appendText(e){var{dom:t,element:r,nextSibling:n}=this,i=t.createTextNode(e) -return t.insertBefore(r,i,n),i}__appendNode(e){return this.dom.insertBefore(this.element,e,this.nextSibling),e}__appendFragment(e){var t=e.firstChild -if(t){var r=new w(this.element,t,e.lastChild) -return this.dom.insertBefore(this.element,e,this.nextSibling),r}return new E(this.element,this.__appendComment(""))}__appendHTML(e){return this.dom.insertHTMLBefore(this.element,this.nextSibling,e)}appendDynamicHTML(e){var t=this.trustedContent(e) -this.didAppendBounds(t)}appendDynamicText(e){var t=this.untrustedContent(e) -return this.didAppendNode(t),t}appendDynamicFragment(e){var t=this.__appendFragment(e) -this.didAppendBounds(t)}appendDynamicNode(e){var t=this.__appendNode(e),r=new E(this.element,t) -this.didAppendBounds(r)}trustedContent(e){return this.__appendHTML(e)}untrustedContent(e){return this.__appendText(e)}appendComment(e){return this.didAppendNode(this.__appendComment(e))}__appendComment(e){var{dom:t,element:r,nextSibling:n}=this,i=t.createComment(e) -return t.insertBefore(r,i,n),i}__setAttribute(e,t,r){this.dom.setAttribute(this.constructing,e,t,r)}__setProperty(e,t){this.constructing[e]=t}setStaticAttribute(e,t,r){this.__setAttribute(e,t,r)}setDynamicAttribute(e,t,r,n){var i=W(this.constructing,e,n,r) -return i.set(this,t,this.env),i}}e.NewElementBuilder=ae,M=ie -class se{constructor(e){this.parent=e,this.first=null,this.last=null,this.nesting=0}parentElement(){return this.parent}firstNode(){return this.first.firstNode()}lastNode(){return this.last.lastNode()}openElement(e){this.didAppendNode(e),this.nesting++}closeElement(){this.nesting--}didAppendNode(e){0===this.nesting&&(this.first||(this.first=new re(e)),this.last=new ne(e))}didAppendBounds(e){0===this.nesting&&(this.first||(this.first=e),this.last=e)}finalize(e){null===this.first&&e.appendComment("")}}class oe extends se{constructor(e){super(e),(0,i.registerDestructor)(this,(()=>{this.parentElement()===this.firstNode().parentNode&&R(this)}))}}e.RemoteLiveBlock=oe -class ue extends se{reset(){(0,i.destroy)(this) -var e=R(this) -return this.first=null,this.last=null,this.nesting=0,e}}e.UpdatableBlockImpl=ue -class le{constructor(e,t){this.parent=e,this.boundList=t,this.parent=e,this.boundList=t}parentElement(){return this.parent}firstNode(){return this.boundList[0].firstNode()}lastNode(){var e=this.boundList -return e[e.length-1].lastNode()}openElement(e){}closeElement(){}didAppendNode(e){}didAppendBounds(e){}finalize(e){}}var ce=new class{constructor(){this.evaluateOpcode=(0,r.fillNulls)(104).slice()}add(e,t,r="syscall"){this.evaluateOpcode[e]={syscall:"machine"!==r,evaluate:t}}debugBefore(e,t){return{sp:undefined,pc:e.fetchValue(n.$pc),name:undefined,params:undefined,type:t.type,isMachine:t.isMachine,size:t.size,state:void 0}}debugAfter(e,t){}evaluate(e,t,r){var n=this.evaluateOpcode[r] -n.syscall?n.evaluate(e,t):n.evaluate(e[p],t)}} -function de(e){return"function"!=typeof e.toString?"":String(e)}var he=(0,r.symbol)("TYPE"),pe=(0,r.symbol)("INNER"),fe=(0,r.symbol)("OWNER"),me=(0,r.symbol)("ARGS"),ve=(0,r.symbol)("RESOLVED"),ge=new r._WeakSet -function be(e){return ge.has(e)}function ye(e,t){return be(e)&&e[he]===t}class _e{constructor(e,t,r,n,i=!1){ge.add(this),this[he]=e,this[pe]=t,this[fe]=r,this[me]=n,this[ve]=i}}function we(e){for(var t,r,n,i,a,s=e;;){var{[me]:o,[pe]:u}=s -if(null!==o){var{named:l,positional:c}=o -c.length>0&&(t=void 0===t?c:c.concat(t)),void 0===r&&(r=[]),r.unshift(l)}if(!be(u)){n=u,i=s[fe],a=s[ve] -break}s=u}return{definition:n,owner:i,resolved:a,positional:t,named:r}}function Ee(e,t,r,n,i=!1){return new _e(e,t,r,n,i)}e.CurriedValue=_e -class Oe{constructor(){this.stack=null,this.positional=new Te,this.named=new Ce,this.blocks=new xe}empty(e){var t=e[v][n.$sp]+1 -return this.named.empty(e,t),this.positional.empty(e,t),this.blocks.empty(e,t),this}setup(e,t,r,i,a){this.stack=e -var s=this.named,o=t.length,u=e[v][n.$sp]-o+1 -s.setup(e,u,o,t,a) -var l=u-i -this.positional.setup(e,l,i) -var c=this.blocks,d=r.length,h=l-3*d -c.setup(e,h,d,r)}get base(){return this.blocks.base}get length(){return this.positional.length+this.named.length+3*this.blocks.length}at(e){return this.positional.at(e)}realloc(e){var{stack:t}=this -if(e>0&&null!==t){for(var{positional:r,named:i}=this,a=r.base+e,s=r.length+i.length-1;s>=0;s--)t.copy(s+r.base,s+a) -r.base+=e,i.base+=e,t[v][n.$sp]+=e}}capture(){var e=0===this.positional.length?De:this.positional.capture() -return{named:0===this.named.length?Ie:this.named.capture(),positional:e}}clear(){var{stack:e,length:t}=this -t>0&&null!==e&&e.pop(t)}}var Re=(0,r.emptyArray)() -class Te{constructor(){this.base=0,this.length=0,this.stack=null,this._references=null}empty(e,t){this.stack=e,this.base=t,this.length=0,this._references=Re}setup(e,t,r){this.stack=e,this.base=t,this.length=r,this._references=0===r?Re:null}at(e){var{base:r,length:n,stack:i}=this -return e<0||e>=n?t.UNDEFINED_REFERENCE:i.get(e,r)}capture(){return this.references}prepend(e){var t=e.length -if(t>0){var{base:r,length:n,stack:i}=this -this.base=r-=t,this.length=n+t -for(var a=0;a0){for(var{names:r,length:n,stack:i}=this,a=r.slice(),s=0;s{var s=e.stack,o=s.pop(),u=s.pop(),l=e.getOwner() -e.runtime.resolver -e.loadValue(n.$v0,function(e,n,i,a,s,o){var u,l -return(0,t.createComputeRef)((()=>{var s=(0,t.valueForRef)(n) -return s===u||(l=ye(s,e)?a?Ee(e,s,i,a):a:0===e&&"string"==typeof s&&s||(0,r.isObject)(s)?Ee(e,s,i,a):null,u=s),l}))}(i,o,l,u))})),ce.add(107,(e=>{var a,s=e.stack,o=s.pop(),u=s.pop().capture(),l=e.getOwner(),c=(0,t.createComputeRef)((()=>{void 0!==a&&(0,i.destroy)(a) -var n=(0,t.valueForRef)(o) -if(ye(n,1)){var{definition:s,owner:d,positional:h,named:p}=we(n),f=Le(e[b],s,o) -void 0!==p&&(u.named=(0,r.assign)({},...p,u.named)),void 0!==h&&(u.positional=h.concat(u.positional)),a=f(u,d),(0,i.associateDestroyableChild)(c,a)}else if((0,r.isObject)(n)){var m=Le(e[b],n,o) -a=m(u,l),(0,i._hasDestroyableChildren)(a)&&(0,i.associateDestroyableChild)(c,a)}else a=t.UNDEFINED_REFERENCE})),d=(0,t.createComputeRef)((()=>((0,t.valueForRef)(c),(0,t.valueForRef)(a)))) -e.associateDestroyable(c),e.loadValue(n.$v0,d)})),ce.add(16,((e,{op1:t})=>{var r=e.stack,a=e[b].getValue(t)(r.pop().capture(),e.getOwner(),e.dynamicScope());(0,i._hasDestroyableChildren)(a)&&e.associateDestroyable(a),e.loadValue(n.$v0,a)})),ce.add(21,((e,{op1:t})=>{var r=e.referenceForSymbol(t) -e.stack.push(r)})),ce.add(19,((e,{op1:t})=>{var r=e.stack.pop() -e.scope().bindSymbol(t,r)})),ce.add(20,((e,{op1:t})=>{var r=e.stack.pop(),n=e.stack.pop(),i=e.stack.pop() -e.scope().bindBlock(t,[r,n,i])})),ce.add(102,((e,{op1:r})=>{var n=e[b].getValue(r),i=e.scope().getPartialMap()[n] -void 0===i&&(i=(0,t.childRefFor)(e.getSelf(),n)),e.stack.push(i)})),ce.add(37,((e,{op1:t})=>{e.pushRootScope(t,e.getOwner())})),ce.add(22,((e,{op1:r})=>{var n=e[b].getValue(r),i=e.stack.pop() -e.stack.push((0,t.childRefFor)(i,n))})),ce.add(23,((e,{op1:t})=>{var{stack:r}=e,n=e.scope().getBlock(t) -r.push(n)})),ce.add(24,(e=>{var{stack:t}=e,r=t.pop() -if(r&&!Ue(r)){var[n,i,a]=r -t.push(a),t.push(i),t.push(n)}else t.push(null),t.push(null),t.push(null)})),ce.add(25,(e=>{var{stack:r}=e,n=r.pop() -n&&!Ue(n)?r.push(t.TRUE_REFERENCE):r.push(t.FALSE_REFERENCE)})),ce.add(26,(e=>{e.stack.pop(),e.stack.pop() -var r=e.stack.pop(),n=r&&r.parameters.length -e.stack.push(n?t.TRUE_REFERENCE:t.FALSE_REFERENCE)})),ce.add(27,((e,{op1:r})=>{for(var n,i=new Array(r),a=r;a>0;a--){i[a-1]=e.stack.pop()}e.stack.push((n=i,(0,t.createComputeRef)((()=>{for(var e=new Array,r=0;r0?e.join(""):null}))))})),ce.add(109,(e=>{var r=e.stack.pop(),n=e.stack.pop(),i=e.stack.pop() -e.stack.push((0,t.createComputeRef)((()=>!0===(0,a.toBool)((0,t.valueForRef)(r))?(0,t.valueForRef)(n):(0,t.valueForRef)(i))))})),ce.add(110,(e=>{var r=e.stack.pop() -e.stack.push((0,t.createComputeRef)((()=>!(0,a.toBool)((0,t.valueForRef)(r)))))})),ce.add(111,(e=>{var r=e.dynamicScope(),n=e.stack,i=n.pop() -n.push((0,t.createComputeRef)((()=>{var e=String((0,t.valueForRef)(i)) -return(0,t.valueForRef)(r.get(e))})))})),ce.add(112,(e=>{var{positional:r}=e.stack.pop().capture() -e.loadValue(n.$v0,(0,t.createComputeRef)((()=>{console.log(...Me(r))})))})),ce.add(39,(e=>e.pushChildScope())),ce.add(40,(e=>e.popScope())),ce.add(59,(e=>e.pushDynamicScope())),ce.add(60,(e=>e.popDynamicScope())),ce.add(28,((e,{op1:t})=>{e.stack.push(e[b].getValue((0,r.decodeHandle)(t)))})),ce.add(29,((e,{op1:n})=>{e.stack.push((0,t.createConstRef)(e[b].getValue((0,r.decodeHandle)(n)),!1))})),ce.add(30,((e,{op1:t})=>{var n=e.stack -if((0,r.isHandle)(t)){var i=e[b].getValue((0,r.decodeHandle)(t)) -n.push(i)}else n.push((0,r.decodeImmediate)(t))})),ce.add(31,(e=>{var r,n=e.stack,i=n.pop() -r=void 0===i?t.UNDEFINED_REFERENCE:null===i?t.NULL_REFERENCE:!0===i?t.TRUE_REFERENCE:!1===i?t.FALSE_REFERENCE:(0,t.createPrimitiveRef)(i),n.push(r)})),ce.add(33,((e,{op1:t,op2:r})=>{var n=e.fetchValue(t)-r -e.stack.dup(n)})),ce.add(34,((e,{op1:t})=>{e.stack.pop(t)})),ce.add(35,((e,{op1:t})=>{e.load(t)})),ce.add(36,((e,{op1:t})=>{e.fetch(t)})) -ce.add(58,((e,{op1:t})=>{var r=e[b].getArray(t) -e.bindDynamicScope(r)})),ce.add(69,((e,{op1:t})=>{e.enter(t)})),ce.add(70,(e=>{e.exit()})),ce.add(63,((e,{op1:t})=>{e.stack.push(e[b].getValue(t))})),ce.add(62,(e=>{e.stack.push(e.scope())})),ce.add(61,(e=>{var t=e.stack,r=t.pop() -r?t.push(e.compile(r)):t.push(null)})),ce.add(64,(e=>{var{stack:t}=e,r=t.pop(),n=t.pop(),i=t.pop(),a=t.pop() -if(null===i)return e.pushFrame(),void e.pushScope(null!=n?n:e.scope()) -var s=n,o=i.parameters,u=o.length -if(u>0){s=s.child() -for(var l=0;l{var n=e.stack.pop(),i=Boolean((0,t.valueForRef)(n));(0,t.isConstRef)(n)?!0===i&&e.goto(r):(!0===i&&e.goto(r),e.updateWith(new $e(n)))})),ce.add(66,((e,{op1:r})=>{var n=e.stack.pop(),i=Boolean((0,t.valueForRef)(n));(0,t.isConstRef)(n)?!1===i&&e.goto(r):(!1===i&&e.goto(r),e.updateWith(new $e(n)))})),ce.add(67,((e,{op1:t,op2:r})=>{e.stack.peek()===r&&e.goto(t)})),ce.add(68,(e=>{var r=e.stack.peek() -!1===(0,t.isConstRef)(r)&&e.updateWith(new $e(r))})),ce.add(71,(e=>{var{stack:r}=e,n=r.pop() -r.push((0,t.createComputeRef)((()=>(0,a.toBool)((0,t.valueForRef)(n)))))})) -class $e{constructor(e){this.ref=e,this.last=(0,t.valueForRef)(e)}evaluate(e){var{last:r,ref:n}=this -r!==(0,t.valueForRef)(n)&&e.throw()}}class ze{constructor(e,r){this.ref=e,this.filter=r,this.last=r((0,t.valueForRef)(e))}evaluate(e){var{last:r,ref:n,filter:i}=this -r!==i((0,t.valueForRef)(n))&&e.throw()}}class Ve{constructor(){this.tag=s.CONSTANT_TAG,this.lastRevision=s.INITIAL}finalize(e,t){this.target=t,this.didModify(e)}evaluate(e){var{tag:t,target:r,lastRevision:n}=this -!e.alwaysRevalidate&&(0,s.validateTag)(t,n)&&((0,s.consumeTag)(t),e.goto(r))}didModify(e){this.tag=e,this.lastRevision=(0,s.valueForTag)(this.tag),(0,s.consumeTag)(e)}}class He{constructor(e){this.debugLabel=e}evaluate(){(0,s.beginTrackFrame)(this.debugLabel)}}class qe{constructor(e){this.target=e}evaluate(){var e=(0,s.endTrackFrame)() -this.target.didModify(e)}}ce.add(41,((e,{op1:t})=>{e.elements().appendText(e[b].getValue(t))})),ce.add(42,((e,{op1:t})=>{e.elements().appendComment(e[b].getValue(t))})),ce.add(48,((e,{op1:t})=>{e.elements().openElement(e[b].getValue(t))})),ce.add(49,(e=>{var r=(0,t.valueForRef)(e.stack.pop()) -e.elements().openElement(r)})),ce.add(50,(e=>{var r=e.stack.pop(),n=e.stack.pop(),i=e.stack.pop(),a=(0,t.valueForRef)(r),s=(0,t.valueForRef)(n),o=(0,t.valueForRef)(i);(0,t.isConstRef)(r)||e.updateWith(new $e(r)),void 0===s||(0,t.isConstRef)(n)||e.updateWith(new $e(n)) -var u=e.elements().pushRemoteElement(a,o,s) -u&&e.associateDestroyable(u)})),ce.add(56,(e=>{e.elements().popRemoteElement()})),ce.add(54,(e=>{var t=e.fetchValue(n.$t0),r=null -t&&(r=t.flush(e),e.loadValue(n.$t0,null)),e.elements().flushElement(r)})),ce.add(55,(e=>{var t=e.elements().closeElement() -t&&t.forEach((t=>{e.env.scheduleInstallModifier(t) -var{manager:r,state:n}=t,i=r.getDestroyable(n) -i&&e.associateDestroyable(i)}))})),ce.add(57,((e,{op1:t})=>{if(!1!==e.env.isInteractive){var r=e.getOwner(),i=e.stack.pop(),a=e[b].getValue(t),{manager:o}=a,{constructing:u}=e.elements(),l=o.create(r,u,a.state,i.capture()),c={manager:o,state:l,definition:a} -e.fetchValue(n.$t0).addModifier(c) -var d=o.getTag(l) -return null!==d?((0,s.consumeTag)(d),e.updateWith(new We(d,c))):void 0}})),ce.add(108,(e=>{if(!1!==e.env.isInteractive){var{stack:i,[b]:a}=e,o=i.pop(),u=i.pop().capture(),{constructing:l}=e.elements(),c=e.getOwner(),d=(0,t.createComputeRef)((()=>{var e,n=(0,t.valueForRef)(o) -if((0,r.isObject)(n)){var i -if(ye(n,2)){var{definition:s,owner:d,positional:h,named:p}=we(n) -i=s,e=d,void 0!==h&&(u.positional=h.concat(u.positional)),void 0!==p&&(u.named=(0,r.assign)({},...p,u.named))}else i=n,e=c -var f=a.modifier(i,null,!0) -0 -var m=a.getValue(f),{manager:v}=m,g=v.create(e,l,m.state,u) -return{manager:v,state:g,definition:m}}})),h=(0,t.valueForRef)(d),p=null -if(void 0!==h)e.fetchValue(n.$t0).addModifier(h),null!==(p=h.manager.getTag(h.state))&&(0,s.consumeTag)(p) -return!(0,t.isConstRef)(o)||p?e.updateWith(new Ge(p,h,d)):void 0}})) -class We{constructor(e,t){this.tag=e,this.modifier=t,this.lastUpdated=(0,s.valueForTag)(e)}evaluate(e){var{modifier:t,tag:r,lastUpdated:n}=this;(0,s.consumeTag)(r),(0,s.validateTag)(r,n)||(e.env.scheduleUpdateModifier(t),this.lastUpdated=(0,s.valueForTag)(r))}}class Ge{constructor(e,t,r){this.tag=e,this.instance=t,this.instanceRef=r,this.lastUpdated=(0,s.valueForTag)(null!=e?e:s.CURRENT_TAG)}evaluate(e){var{tag:r,lastUpdated:n,instance:a,instanceRef:o}=this,u=(0,t.valueForRef)(o) -if(u!==a){if(void 0!==a){var l=a.manager.getDestroyable(a.state) -null!==l&&(0,i.destroy)(l)}if(void 0!==u){var{manager:c,state:d}=u,h=c.getDestroyable(d) -null!==h&&(0,i.associateDestroyableChild)(this,h),null!==(r=c.getTag(d))&&(this.lastUpdated=(0,s.valueForTag)(r)),this.tag=r,e.env.scheduleInstallModifier(u)}this.instance=u}else null===r||(0,s.validateTag)(r,n)||(e.env.scheduleUpdateModifier(a),this.lastUpdated=(0,s.valueForTag)(r)) -null!==r&&(0,s.consumeTag)(r)}}ce.add(51,((e,{op1:t,op2:r,op3:n})=>{var i=e[b].getValue(t),a=e[b].getValue(r),s=n?e[b].getValue(n):null -e.elements().setStaticAttribute(i,a,s)})),ce.add(52,((e,{op1:r,op2:n,op3:i})=>{var a=e[b].getValue(r),s=e[b].getValue(n),o=e.stack.pop(),u=(0,t.valueForRef)(o),l=i?e[b].getValue(i):null,c=e.elements().setDynamicAttribute(a,u,s,l);(0,t.isConstRef)(o)||e.updateWith(new Ye(o,c,e.env))})) -class Ye{constructor(e,r,n){var i=!1 -this.updateRef=(0,t.createComputeRef)((()=>{var a=(0,t.valueForRef)(e) -!0===i?r.update(a,n):i=!0})),(0,t.valueForRef)(this.updateRef)}evaluate(){(0,t.valueForRef)(this.updateRef)}}ce.add(78,((e,{op1:t})=>{var r=e[b].getValue(t),{manager:n,capabilities:i}=r,a={definition:r,manager:n,capabilities:i,state:null,handle:null,table:null,lookup:null} -e.stack.push(a)})),ce.add(80,((e,{op1:r})=>{var i,a=e.stack,s=(0,t.valueForRef)(a.pop()),o=e[b],u=e.getOwner() -o.getValue(r) -if(e.loadValue(n.$t1,null),"string"==typeof s){0 -var l=function(e,t,r,n){var i=e.lookupComponent(r,n) -return t.resolvedComponent(i,r)}(e.runtime.resolver,o,s,u) -i=l}else i=be(s)?s:o.component(s,u) -a.push(i)})),ce.add(81,(e=>{var r,n=e.stack,i=n.pop(),a=(0,t.valueForRef)(i),s=e[b] -r=be(a)?a:s.component(a,e.getOwner(),!0),n.push(r)})),ce.add(79,(e=>{var t,r,{stack:n}=e,i=n.pop() -be(i)?r=t=null:(r=i.manager,t=i.capabilities),n.push({definition:i,capabilities:t,manager:r,state:null,handle:null,table:null})})),ce.add(82,((e,{op1:t,op2:n,op3:i})=>{var a=e.stack,s=e[b].getArray(t),o=i>>4,u=8&i,l=7&i?e[b].getArray(n):r.EMPTY_STRING_ARRAY -e[y].setup(a,s,l,o,!!u),a.push(e[y])})),ce.add(83,(e=>{var{stack:t}=e -t.push(e[y].empty(t))})),ce.add(86,(e=>{var t=e.stack,r=t.pop().capture() -t.push(r)})),ce.add(85,((e,{op1:t})=>{var i=e.stack,a=e.fetchValue(t),s=i.pop(),{definition:u}=a -if(ye(u,0)){var l=e[b],{definition:c,owner:d,resolved:h,positional:p,named:f}=we(u) -if(!0===h)u=c -else if("string"==typeof c){var m=e.runtime.resolver.lookupComponent(c,d) -u=l.resolvedComponent(m,c)}else u=l.component(c,d) -void 0!==f&&s.named.merge((0,r.assign)({},...f)),void 0!==p&&(s.realloc(p.length),s.positional.prepend(p)) -var{manager:v}=u -a.definition=u,a.manager=v,a.capabilities=u.capabilities,e.loadValue(n.$t1,d)}var{manager:g,state:y}=u,_=a.capabilities -if((0,o.managerHasCapability)(g,_,4)){var w=s.blocks.values,E=s.blocks.names,O=g.prepareArgs(y,s) -if(O){s.clear() -for(var R=0;R{var n=e.fetchValue(r),{definition:i,manager:a,capabilities:s}=n -if((0,o.managerHasCapability)(a,s,512)){var u=null;(0,o.managerHasCapability)(a,s,64)&&(u=e.dynamicScope()) -var l=1&t,c=null;(0,o.managerHasCapability)(a,s,8)&&(c=e.stack.peek()) -var d=null;(0,o.managerHasCapability)(a,s,128)&&(d=e.getSelf()) -var h=a.create(e.getOwner(),i.state,c,e.env,u,d,!!l) -n.state=h,(0,o.managerHasCapability)(a,s,256)&&e.updateWith(new Ze(h,a,u))}})),ce.add(88,((e,{op1:t})=>{var{manager:r,state:n,capabilities:i}=e.fetchValue(t),a=r.getDestroyable(n) -a&&e.associateDestroyable(a)})),ce.add(97,((e,{op1:t})=>{var r -e.beginCacheGroup(r),e.elements().pushSimpleBlock()})),ce.add(89,(e=>{e.loadValue(n.$t0,new Qe)})),ce.add(53,((e,{op1:t,op2:r,op3:i})=>{var a=e[b].getValue(t),s=e[b].getValue(r),o=e.stack.pop(),u=i?e[b].getValue(i):null -e.fetchValue(n.$t0).setAttribute(a,o,s,u)})),ce.add(105,((e,{op1:t,op2:r,op3:i})=>{var a=e[b].getValue(t),s=e[b].getValue(r),o=i?e[b].getValue(i):null -e.fetchValue(n.$t0).setStaticAttribute(a,s,o)})) -class Qe{constructor(){this.attributes=(0,r.dict)(),this.classes=[],this.modifiers=[]}setAttribute(e,t,r,n){var i={value:t,namespace:n,trusting:r} -"class"===e&&this.classes.push(t),this.attributes[e]=i}setStaticAttribute(e,t,r){var n={value:t,namespace:r} -"class"===e&&this.classes.push(t),this.attributes[e]=n}addModifier(e){this.modifiers.push(e)}flush(e){var t,r=this.attributes -for(var n in this.attributes)if("type"!==n){var i=this.attributes[n] -"class"===n?Je(e,"class",Ke(this.classes),i.namespace,i.trusting):Je(e,n,i.value,i.namespace,i.trusting)}else t=r[n] -return void 0!==t&&Je(e,"type",t.value,t.namespace,t.trusting),this.modifiers}}function Ke(e){return 0===e.length?"":1===e.length?e[0]:function(e){for(var t=0;t{for(var e=[],n=0;n{var{definition:r,state:i}=e.fetchValue(t),{manager:a}=r,s=e.fetchValue(n.$t0) -a.didCreateElement(i,e.elements().constructing,s)})),ce.add(90,((e,{op1:r,op2:n})=>{var a,s=e.fetchValue(r),{definition:o,state:u}=s,{manager:l}=o,c=l.getSelf(u) -if(void 0!==e.env.debugRenderTree){var d,h,p=e.fetchValue(r),{definition:f,manager:m}=p -if(e.stack.peek()===e[y])d=e[y].capture() -else{var v=e[b].getArray(n) -e[y].setup(e.stack,v,[],0,!0),d=e[y].capture()}var g=f.compilable -if(h=null===g?null!==(g=m.getDynamicLayout(u,e.runtime.resolver))?g.moduleName:"__default__.hbs":g.moduleName,e.associateDestroyable(p),Be(m)){m.getDebugCustomRenderTree(p.definition.state,p.state,d,h).forEach((t=>{var{bucket:r}=t -e.env.debugRenderTree.create(r,t),(0,i.registerDestructor)(p,(()=>{var t -null===(t=e.env.debugRenderTree)||void 0===t||t.willDestroy(r)})),e.updateWith(new tt(r))}))}else{var _=null!==(a=f.resolvedName)&&void 0!==a?a:m.getDebugName(f.state) -e.env.debugRenderTree.create(p,{type:"component",name:_,args:d,template:h,instance:(0,t.valueForRef)(c)}),e.associateDestroyable(p),(0,i.registerDestructor)(p,(()=>{var t -null===(t=e.env.debugRenderTree)||void 0===t||t.willDestroy(p)})),e.updateWith(new tt(p))}}e.stack.push(c)})),ce.add(91,((e,{op1:t})=>{var{definition:r,state:n}=e.fetchValue(t),{manager:i}=r,a=i.getTagName(n) -e.stack.push(a)})),ce.add(92,((e,{op1:t})=>{var n=e.fetchValue(t),{manager:i,definition:a}=n,{stack:s}=e,{compilable:u}=a -if(null===u){var{capabilities:l}=n -null===(u=i.getDynamicLayout(n.state,e.runtime.resolver))&&(u=(0,o.managerHasCapability)(i,l,1024)?(0,r.unwrapTemplate)(e[b].defaultTemplate).asWrappedLayout():(0,r.unwrapTemplate)(e[b].defaultTemplate).asLayout())}var c=u.compile(e.context) -s.push(u.symbolTable),s.push(c)})),ce.add(75,((e,{op1:t})=>{var r=e.stack.pop(),n=e.stack.pop(),{manager:i,capabilities:a}=r,s={definition:r,manager:i,capabilities:a,state:null,handle:n.handle,table:n.symbolTable,lookup:null} -e.loadValue(t,s)})),ce.add(95,((e,{op1:t})=>{var{stack:r}=e,n=r.pop(),i=r.pop(),a=e.fetchValue(t) -a.handle=n,a.table=i})),ce.add(38,((e,{op1:t})=>{var r,{table:i,manager:a,capabilities:s,state:u}=e.fetchValue(t);(0,o.managerHasCapability)(a,s,4096)?(r=a.getOwner(u),e.loadValue(n.$t1,null)):null===(r=e.fetchValue(n.$t1))?r=e.getOwner():e.loadValue(n.$t1,null),e.pushRootScope(i.symbols.length+1,r)})),ce.add(94,((e,{op1:t})=>{var n=e.fetchValue(t) -if(n.table.hasEval){var i=n.lookup=(0,r.dict)() -e.scope().bindEvalScope(i)}})),ce.add(17,((e,{op1:t})=>{for(var r=e.fetchValue(t),n=e.scope(),i=e.stack.peek(),a=i.named.atNames,s=a.length-1;s>=0;s--){var o=a[s],u=r.table.symbols.indexOf(a[s]),l=i.named.get(o,!0);-1!==u&&n.bindSymbol(u+1,l),r.lookup&&(r.lookup[o]=l)}})),ce.add(18,((e,{op1:t})=>{for(var r=e.fetchValue(t),{blocks:n}=e.stack.peek(),i=0;i{var r=e.fetchValue(t) -e.call(r.handle)})),ce.add(100,((e,{op1:t})=>{var r=e.fetchValue(t),{manager:n,state:i,capabilities:a}=r,s=e.elements().popBlock() -void 0!==e.env.debugRenderTree&&(Be(n)?n.getDebugCustomRenderTree(r.definition.state,i,Fe).reverse().forEach((t=>{var{bucket:r}=t -e.env.debugRenderTree.didRender(r,s),e.updateWith(new rt(r,s))})):(e.env.debugRenderTree.didRender(r,s),e.updateWith(new rt(r,s))));(0,o.managerHasCapability)(n,a,512)&&(n.didRenderLayout(i,s),e.env.didCreate(r),e.updateWith(new et(r,s)))})),ce.add(98,(e=>{e.commitCacheGroup()})) -class Ze{constructor(e,t,r){this.component=e,this.manager=t,this.dynamicScope=r}evaluate(e){var{component:t,manager:r,dynamicScope:n}=this -r.update(t,n)}}class et{constructor(e,t){this.component=e,this.bounds=t}evaluate(e){var{component:t,bounds:r}=this,{manager:n,state:i}=t -n.didUpdateLayout(i,r),e.env.didUpdate(t)}}class tt{constructor(e){this.bucket=e}evaluate(e){var t -null===(t=e.env.debugRenderTree)||void 0===t||t.update(this.bucket)}}class rt{constructor(e,t){this.bucket=e,this.bounds=t}evaluate(e){var t -null===(t=e.env.debugRenderTree)||void 0===t||t.didRender(this.bucket,this.bounds)}}class nt{constructor(e,t,r){this.node=e,this.reference=t,this.lastValue=r}evaluate(){var e,r=(0,t.valueForRef)(this.reference),{lastValue:n}=this -r!==n&&((e=C(r)?"":x(r)?r:String(r))!==n&&(this.node.nodeValue=this.lastValue=e))}}function it(e){return function(e){return x(e)||C(e)||"boolean"==typeof e||"number"==typeof e}(e)?2:ye(e,0)||(0,o.hasInternalComponentManager)(e)?0:ye(e,1)||(0,o.hasInternalHelperManager)(e)?1:P(e)?4:function(e){return k(e)&&11===e.nodeType}(e)?5:k(e)?6:2}function at(e){return(0,r.isObject)(e)?ye(e,0)||(0,o.hasInternalComponentManager)(e)?0:1:2}function st(e,t){console.info("Use `context`, and `get()` to debug this template."),t("this")}ce.add(76,(e=>{var r=e.stack.peek() -e.stack.push(it((0,t.valueForRef)(r))),(0,t.isConstRef)(r)||e.updateWith(new ze(r,it))})),ce.add(106,(e=>{var r=e.stack.peek() -e.stack.push(at((0,t.valueForRef)(r))),(0,t.isConstRef)(r)||e.updateWith(new ze(r,at))})),ce.add(43,(e=>{var r=e.stack.pop(),n=(0,t.valueForRef)(r),i=C(n)?"":String(n) -e.elements().appendDynamicHTML(i)})),ce.add(44,(e=>{var r=e.stack.pop(),n=(0,t.valueForRef)(r).toHTML(),i=C(n)?"":n -e.elements().appendDynamicHTML(i)})),ce.add(47,(e=>{var r=e.stack.pop(),n=(0,t.valueForRef)(r),i=C(n)?"":String(n),a=e.elements().appendDynamicText(i);(0,t.isConstRef)(r)||e.updateWith(new nt(a,r,i))})),ce.add(45,(e=>{var r=e.stack.pop(),n=(0,t.valueForRef)(r) -e.elements().appendDynamicFragment(n)})),ce.add(46,(e=>{var r=e.stack.pop(),n=(0,t.valueForRef)(r) -e.elements().appendDynamicNode(n)})) -var ot=st -class ut{constructor(e,t,n){this.scope=e,this.locals=(0,r.dict)() -for(var i=0;i(0,t.childRefFor)(e,r)),r)}}ce.add(103,((e,{op1:n,op2:i})=>{var a=e[b].getArray(n),s=e[b].getArray((0,r.decodeHandle)(i)),o=new ut(e.scope(),a,s) -ot((0,t.valueForRef)(e.getSelf()),(e=>(0,t.valueForRef)(o.get(e))))})),ce.add(72,((e,{op1:r,op2:n})=>{var i=e.stack,a=i.pop(),s=i.pop(),o=(0,t.valueForRef)(s),u=null===o?"@identity":String(o),l=(0,t.createIteratorRef)(a,u),c=(0,t.valueForRef)(l) -e.updateWith(new ze(l,(e=>e.isEmpty()))),!0===c.isEmpty()?e.goto(n+1):(e.enterList(l,r),e.stack.push(c))})),ce.add(73,(e=>{e.exitList()})),ce.add(74,((e,{op1:t})=>{var r=e.stack.peek().next() -null!==r?e.registerItem(e.enterItem(r)):e.goto(t)})) -var lt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class ct{getCapabilities(){return lt}getDebugName({name:e}){return e}getSelf(){return t.NULL_REFERENCE}getDestroyable(){return null}}e.TemplateOnlyComponentManager=ct -var dt=e.TEMPLATE_ONLY_COMPONENT_MANAGER=new ct -class ht{constructor(e="@glimmer/component/template-only",t="(unknown template-only component)"){this.moduleName=e,this.name=t}toString(){return this.moduleName}}e.TemplateOnlyComponent=ht,(0,o.setInternalComponentManager)(dt,ht.prototype) -var pt={foreignObject:1,desc:1,title:1},ft=Object.create(null) -class mt{constructor(e){this.document=e,this.setupUselessElement()}setupUselessElement(){this.uselessElement=this.document.createElement("div")}createElement(e,t){var r,n -if(t?(r="http://www.w3.org/2000/svg"===t.namespaceURI||"svg"===e,n=!!pt[t.tagName]):(r="svg"===e,n=!1),r&&!n){if(ft[e])throw new Error(`Cannot create a ${e} inside an SVG context`) -return this.document.createElementNS("http://www.w3.org/2000/svg",e)}return this.document.createElement(e)}insertBefore(e,t,r){e.insertBefore(t,r)}insertHTMLBefore(e,t,r){if(""===r){var n=this.createComment("") -return e.insertBefore(n,t),new w(e,n,n)}var i,a=t?t.previousSibling:e.lastChild -if(null===t)e.insertAdjacentHTML("beforeend",r),i=e.lastChild -else if(t instanceof HTMLElement)t.insertAdjacentHTML("beforebegin",r),i=t.previousSibling -else{var{uselessElement:s}=this -e.insertBefore(s,t),s.insertAdjacentHTML("beforebegin",r),i=s.previousSibling,e.removeChild(s)}var o=a?a.nextSibling:e.firstChild -return new w(e,o,i)}createTextNode(e){return this.document.createTextNode(e)}createComment(e){return this.document.createComment(e)}}var vt="http://www.w3.org/2000/svg" -function gt(e,t,n){if(!e)return t -if(!function(e,t){var r=e.createElementNS(t,"svg") -try{r.insertAdjacentHTML("beforeend","")}catch(n){}finally{return 1!==r.childNodes.length||r.firstChild.namespaceURI!==vt}}(e,n))return t -var i=e.createElement("div") -return class extends t{insertHTMLBefore(e,t,a){return""===a||e.namespaceURI!==n?super.insertHTMLBefore(e,t,a):function(e,t,n,i){var a -if("FOREIGNOBJECT"===e.tagName.toUpperCase()){var s=""+n+"";(0,r.clearElement)(t),t.insertAdjacentHTML("afterbegin",s),a=t.firstChild.firstChild}else{var o=""+n+"";(0,r.clearElement)(t),t.insertAdjacentHTML("afterbegin",o),a=t.firstChild}return function(e,t,r){for(var n=e.firstChild,i=n,a=n;a;){var s=a.nextSibling -t.insertBefore(a,r),i=a,a=s}return new w(t,n,i)}(a,e,i)}(e,i,a,t)}}}function bt(e,t){return e&&function(e){var t=e.createElement("div") -if(t.appendChild(e.createTextNode("first")),t.insertAdjacentHTML("beforeend","second"),2===t.childNodes.length)return!1 -return!0}(e)?class extends t{constructor(e){super(e),this.uselessComment=e.createComment("")}insertHTMLBefore(e,t,r){if(""===r)return super.insertHTMLBefore(e,t,r) -var n=!1,i=t?t.previousSibling:e.lastChild -i&&i instanceof Text&&(n=!0,e.insertBefore(this.uselessComment,t)) -var a=super.insertHTMLBefore(e,t,r) -return n&&e.removeChild(this.uselessComment),a}}:t}["b","big","blockquote","body","br","center","code","dd","div","dl","dt","em","embed","h1","h2","h3","h4","h5","h6","head","hr","i","img","li","listing","main","meta","nobr","ol","p","pre","ruby","s","small","span","strong","strike","sub","sup","table","tt","u","ul","var"].forEach((e=>ft[e]=1)) -var yt,_t=/[\t-\r \xA0\u1680\u180E\u2000-\u200A\u2028\u2029\u202F\u205F\u3000\uFEFF]/,wt="undefined"==typeof document?null:document;(function(e){class t extends mt{createElementNS(e,t){return this.document.createElementNS(e,t)}setAttribute(e,t,r,n=null){n?e.setAttributeNS(n,t,r):e.setAttribute(t,r)}}e.TreeConstruction=t -var r=t -r=bt(wt,r),r=gt(wt,r,"http://www.w3.org/2000/svg"),e.DOMTreeConstruction=r})(yt||(yt={})) -class Et extends mt{constructor(e){super(e),this.document=e,this.namespace=null}setAttribute(e,t,r){e.setAttribute(t,r)}removeAttribute(e,t){e.removeAttribute(t)}insertAfter(e,t,r){this.insertBefore(e,t,r.nextSibling)}}e.IDOMChanges=Et -var Ot=Et -Ot=bt(wt,Ot),Ot=gt(wt,Ot,"http://www.w3.org/2000/svg") -e.DOMChanges=Ot -var Rt,Tt=e.DOMTreeConstruction=yt.DOMTreeConstruction,Ct=0 -class Pt{constructor(e){this.id=Ct++,this.value=e}get(){return this.value}release(){this.value=null}toString(){var e=`Ref ${this.id}` -if(null===this.value)return`${e} (released)` -try{return`${e}: ${this.value}`}catch(M){return e}}}class kt{constructor(){this.stack=new r.Stack,this.refs=new WeakMap,this.roots=new Set,this.nodes=new WeakMap}begin(){this.reset()}create(e,t){var n=(0,r.assign)({},t,{bounds:null,refs:new Set}) -this.nodes.set(e,n),this.appendChild(n,e),this.enter(e)}update(e){this.enter(e)}didRender(e,t){this.nodeFor(e).bounds=t,this.exit()}willDestroy(e){this.refs.get(e).release()}commit(){this.reset()}capture(){return this.captureRefs(this.roots)}reset(){if(0!==this.stack.size){var e=this.stack.toArray()[0],t=this.refs.get(e) -for(void 0!==t&&this.roots.delete(t);!this.stack.isEmpty();)this.stack.pop()}}enter(e){this.stack.push(e)}exit(){this.stack.pop()}nodeFor(e){return this.nodes.get(e)}appendChild(e,t){var r=this.stack.current,n=new Pt(t) -if(this.refs.set(t,n),r){var i=this.nodeFor(r) -i.refs.add(n),e.parent=i}else this.roots.add(n)}captureRefs(e){var t=[] -return e.forEach((r=>{var n=r.get() -n?t.push(this.captureNode(`render-node:${r.id}`,n)):e.delete(r)})),t}captureNode(e,t){var r=this.nodeFor(t),{type:n,name:i,args:a,instance:s,refs:o}=r,u=this.captureTemplate(r),l=this.captureBounds(r),c=this.captureRefs(o) -return{id:e,type:n,name:i,args:Ne(a),instance:s,template:u,bounds:l,children:c}}captureTemplate({template:e}){return e||null}captureBounds(e){var t=e.bounds -return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}}var xt,At,St=(0,r.symbol)("TRANSACTION") -class jt{constructor(){this.scheduledInstallModifiers=[],this.scheduledUpdateModifiers=[],this.createdComponents=[],this.updatedComponents=[]}didCreate(e){this.createdComponents.push(e)}didUpdate(e){this.updatedComponents.push(e)}scheduleInstallModifier(e){this.scheduledInstallModifiers.push(e)}scheduleUpdateModifier(e){this.scheduledUpdateModifiers.push(e)}commit(){for(var{createdComponents:e,updatedComponents:t}=this,r=0;rl.install(c)),!1);(0,s.updateTag)(m,v)}else l.install(c)}for(var g=0;gl.update(c)),!1);(0,s.updateTag)(y,_)}else l.update(c)}}}class Mt{constructor(e,t){this.delegate=t,this[Rt]=null,this.isInteractive=this.delegate.isInteractive,this.debugRenderTree=this.delegate.enableDebugTooling?new kt:void 0,e.appendOperations?(this.appendOperations=e.appendOperations,this.updateOperations=e.updateOperations):e.document&&(this.appendOperations=new Tt(e.document),this.updateOperations=new Et(e.document))}getAppendOperations(){return this.appendOperations}getDOM(){return this.updateOperations}begin(){var e -null===(e=this.debugRenderTree)||void 0===e||e.begin(),this[St]=new jt}get transaction(){return this[St]}didCreate(e){this.transaction.didCreate(e)}didUpdate(e){this.transaction.didUpdate(e)}scheduleInstallModifier(e){this.isInteractive&&this.transaction.scheduleInstallModifier(e)}scheduleUpdateModifier(e){this.isInteractive&&this.transaction.scheduleUpdateModifier(e)}commit(){var e,t=this.transaction -this[St]=null,t.commit(),null===(e=this.debugRenderTree)||void 0===e||e.commit(),this.delegate.onTransactionCommit()}}function Nt(e,t){if(e[St])t() -else{e.begin() -try{t()}finally{e.commit()}}}e.EnvironmentImpl=Mt,Rt=St -class It{constructor(e,t,r,n,i){this.stack=e,this.heap=t,this.program=r,this.externs=n,this.registers=i,this.currentOpSize=0}fetchRegister(e){return this.registers[e]}loadRegister(e,t){this.registers[e]=t}setPc(e){this.registers[n.$pc]=e}pushFrame(){this.stack.push(this.registers[n.$ra]),this.stack.push(this.registers[n.$fp]),this.registers[n.$fp]=this.registers[n.$sp]-1}popFrame(){this.registers[n.$sp]=this.registers[n.$fp]-1,this.registers[n.$ra]=this.stack.get(0),this.registers[n.$fp]=this.stack.get(1)}pushSmallFrame(){this.stack.push(this.registers[n.$ra])}popSmallFrame(){this.registers[n.$ra]=this.stack.pop()}goto(e){this.setPc(this.target(e))}target(e){return this.registers[n.$pc]+e-this.currentOpSize}call(e){this.registers[n.$ra]=this.registers[n.$pc],this.setPc(this.heap.getaddr(e))}returnTo(e){this.registers[n.$ra]=this.target(e)}return(){this.setPc(this.registers[n.$ra])}nextStatement(){var{registers:e,program:t}=this,r=e[n.$pc] -if(-1===r)return null -var i=t.opcode(r),a=this.currentOpSize=i.size -return this.registers[n.$pc]+=a,i}evaluateOuter(e,t){this.evaluateInner(e,t)}evaluateInner(e,t){e.isMachine?this.evaluateMachine(e):this.evaluateSyscall(e,t)}evaluateMachine(e){switch(e.type){case 0:return this.pushFrame() -case 1:return this.popFrame() -case 3:return this.call(e.op1) -case 2:return this.call(this.stack.pop()) -case 4:return this.goto(e.op1) -case 5:return this.return() -case 6:return this.returnTo(e.op1)}}evaluateSyscall(e,t){ce.evaluate(t,e,e.type)}}class Dt{constructor(e,{alwaysRevalidate:t=!1}){this.frameStack=new r.Stack,this.env=e,this.dom=e.getDOM(),this.alwaysRevalidate=t}execute(e,t){this._execute(e,t)}_execute(e,t){var{frameStack:r}=this -for(this.try(e,t);!r.isEmpty();){var n=this.frame.nextStatement() -void 0!==n?n.evaluate(this):r.pop()}}get frame(){return this.frameStack.current}goto(e){this.frame.goto(e)}try(e,t){this.frameStack.push(new zt(e,t))}throw(){this.frame.handleException(),this.frameStack.pop()}}e.UpdatingVM=Dt -class Ft{constructor(e,t){this.state=e,this.resumeCallback=t}resume(e,t){return this.resumeCallback(e,this.state,t)}}class Lt{constructor(e,t,r,n){this.state=e,this.runtime=t,this.children=n,this.bounds=r}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}evaluate(e){e.try(this.children,null)}}class Ut extends Lt{constructor(){super(...arguments),this.type="try"}evaluate(e){e.try(this.children,this)}handleException(){var{state:e,bounds:t,runtime:r}=this;(0,i.destroyChildren)(this) -var n=ae.resume(r.env,t),a=e.resume(r,n),s=[],o=this.children=[],u=a.execute((e=>{e.pushUpdating(s),e.updateWith(this),e.pushUpdating(o)}));(0,i.associateDestroyableChild)(this,u.drop)}}class Bt extends Ut{constructor(e,t,r,n,i,a){super(e,t,r,[]),this.key=n,this.memo=i,this.value=a,this.retained=!1,this.index=-1}updateReferences(e){this.retained=!0,(0,t.updateRef)(this.value,e.value),(0,t.updateRef)(this.memo,e.memo)}shouldRemove(){return!this.retained}reset(){this.retained=!1}}class $t extends Lt{constructor(e,r,n,i,a){super(e,r,n,i),this.iterableRef=a,this.type="list-block",this.opcodeMap=new Map,this.marker=null,this.lastIterator=(0,t.valueForRef)(a)}initializeChild(e){e.index=this.children.length-1,this.opcodeMap.set(e.key,e)}evaluate(e){var r=(0,t.valueForRef)(this.iterableRef) -if(this.lastIterator!==r){var{bounds:n}=this,{dom:i}=e,a=this.marker=i.createComment("") -i.insertAfter(n.parentElement(),a,n.lastNode()),this.sync(r),this.parentElement().removeChild(a),this.marker=null,this.lastIterator=r}super.evaluate(e)}sync(e){var{opcodeMap:t,children:r}=this,n=0,i=0 -for(this.children=this.bounds.boundList=[];;){var a=e.next() -if(null===a)break -for(var s=r[n],{key:o}=a;void 0!==s&&!0===s.retained;)s=r[++n] -if(void 0!==s&&s.key===o)this.retainItem(s,a),n++ -else if(t.has(o)){var u=t.get(o) -if(u.index{t.pushUpdating() -var n=t.enterItem(e) -n.index=o.length,o.push(n),r.set(u,n),(0,i.associateDestroyableChild)(this,n)}))}moveItem(e,r,n){var i,{children:a}=this;(0,t.updateRef)(e.memo,r.memo),(0,t.updateRef)(e.value,r.value),e.retained=!0,void 0===n?O(e,this.marker):e.lastNode().nextSibling!==(i=n.firstNode())&&O(e,i),e.index=a.length,a.push(e)}deleteItem(e){(0,i.destroy)(e),R(e),this.opcodeMap.delete(e.key)}}class zt{constructor(e,t){this.ops=e,this.exceptionHandler=t,this.current=0}goto(e){this.current=e}nextStatement(){return this.ops[this.current++]}handleException(){this.exceptionHandler&&this.exceptionHandler.handleException()}}class Vt{constructor(e,t,r,n){this.env=e,this.updating=t,this.bounds=r,this.drop=n,(0,i.associateDestroyableChild)(this,n),(0,i.registerDestructor)(this,(()=>R(this.bounds)))}rerender({alwaysRevalidate:e=!1}={alwaysRevalidate:!1}){var{env:t,updating:r}=this -new Dt(t,{alwaysRevalidate:e}).execute(r,this)}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}handleException(){throw"this should never happen"}}class Ht{constructor(e=[],t){this.stack=e,this[v]=t}static restore(e){return new this(e.slice(),[0,-1,e.length-1,0])}push(e){this.stack[++this[v][n.$sp]]=e}dup(e=this[v][n.$sp]){this.stack[++this[v][n.$sp]]=this.stack[e]}copy(e,t){this.stack[t]=this.stack[e]}pop(e=1){var t=this.stack[this[v][n.$sp]] -return this[v][n.$sp]-=e,t}peek(e=0){return this.stack[this[v][n.$sp]-e]}get(e,t=this[v][n.$fp]){return this.stack[t+e]}set(e,t,r=this[v][n.$fp]){this.stack[r+t]=e}slice(e,t){return this.stack.slice(e,t)}capture(e){var t=this[v][n.$sp]+1,r=t-e -return this.stack.slice(r,t)}reset(){this.stack.length=0}toArray(){return this.stack.slice(this[v][n.$fp],this[v][n.$sp]+1)}}class qt{constructor(){this.scope=new r.Stack,this.dynamicScope=new r.Stack,this.updating=new r.Stack,this.cache=new r.Stack,this.list=new r.Stack}}class Wt{constructor(e,{pc:t,scope:i,dynamicScope:a,stack:s},o,u){this.runtime=e,this.elementStack=o,this.context=u,this[xt]=new qt,this[At]=new r.Stack,this.s0=null,this.s1=null,this.t0=null,this.t1=null,this.v0=null,this.resume=Yt(this.context) -var l=Ht.restore(s) -l[v][n.$pc]=t,l[v][n.$sp]=s.length-1,l[v][n.$fp]=-1,this[g]=this.program.heap,this[b]=this.program.constants,this.elementStack=o,this[m].scope.push(i),this[m].dynamicScope.push(a),this[y]=new Oe,this[p]=new It(l,this[g],e.program,{debugBefore:e=>ce.debugBefore(this,e),debugAfter:e=>{ce.debugAfter(this,e)}},l[v]),this.destructor={},this[f].push(this.destructor)}get stack(){return this[p].stack}get pc(){return this[p].fetchRegister(n.$pc)}fetch(e){var t=this.fetchValue(e) -this.stack.push(t)}load(e){var t=this.stack.pop() -this.loadValue(e,t)}fetchValue(e){if((0,n.isLowLevelRegister)(e))return this[p].fetchRegister(e) -switch(e){case n.$s0:return this.s0 -case n.$s1:return this.s1 -case n.$t0:return this.t0 -case n.$t1:return this.t1 -case n.$v0:return this.v0}}loadValue(e,t){switch((0,n.isLowLevelRegister)(e)&&this[p].loadRegister(e,t),e){case n.$s0:this.s0=t -break -case n.$s1:this.s1=t -break -case n.$t0:this.t0=t -break -case n.$t1:this.t1=t -break -case n.$v0:this.v0=t}}pushFrame(){this[p].pushFrame()}popFrame(){this[p].popFrame()}goto(e){this[p].goto(e)}call(e){this[p].call(e)}returnTo(e){this[p].returnTo(e)}return(){this[p].return()}static initial(e,t,{handle:r,self:n,dynamicScope:i,treeBuilder:a,numSymbols:s,owner:o}){var u=h.root(n,s,o),l=Gt(e.program.heap.getaddr(r),u,i),c=Yt(t)(e,l,a) -return c.pushUpdating(),c}static empty(e,{handle:r,treeBuilder:n,dynamicScope:i,owner:a},s){var o=Yt(s)(e,Gt(e.program.heap.getaddr(r),h.root(t.UNDEFINED_REFERENCE,0,a),i),n) -return o.pushUpdating(),o}compile(e){return(0,r.unwrapHandle)(e.compile(this.context))}get program(){return this.runtime.program}get env(){return this.runtime.env}captureState(e,t=this[p].fetchRegister(n.$pc)){return{pc:t,scope:this.scope(),dynamicScope:this.dynamicScope(),stack:this.stack.capture(e)}}capture(e,t=this[p].fetchRegister(n.$pc)){return new Ft(this.captureState(e,t),this.resume)}beginCacheGroup(e){var t=this.updating(),r=new Ve -t.push(r),t.push(new He(e)),this[m].cache.push(r),(0,s.beginTrackFrame)(e)}commitCacheGroup(){var e=this.updating(),t=this[m].cache.pop(),r=(0,s.endTrackFrame)() -e.push(new qe(t)),t.finalize(r,e.length)}enter(e){var t=this.capture(e),r=this.elements().pushUpdatableBlock(),n=new Ut(t,this.runtime,r,[]) -this.didEnter(n)}enterItem({key:e,value:r,memo:n}){var{stack:i}=this,a=(0,t.createIteratorItemRef)(r),s=(0,t.createIteratorItemRef)(n) -i.push(a),i.push(s) -var o=this.capture(2),u=this.elements().pushUpdatableBlock(),l=new Bt(o,this.runtime,u,e,s,a) -return this.didEnter(l),l}registerItem(e){this.listBlock().initializeChild(e)}enterList(e,t){var r=[],n=this[p].target(t),i=this.capture(0,n),a=this.elements().pushBlockList(r),s=new $t(i,this.runtime,a,r,e) -this[m].list.push(s),this.didEnter(s)}didEnter(e){this.associateDestroyable(e),this[f].push(e),this.updateWith(e),this.pushUpdating(e.children)}exit(){this[f].pop(),this.elements().popBlock(),this.popUpdating()}exitList(){this.exit(),this[m].list.pop()}pushUpdating(e=[]){this[m].updating.push(e)}popUpdating(){return this[m].updating.pop()}updateWith(e){this.updating().push(e)}listBlock(){return this[m].list.current}associateDestroyable(e){var t=this[f].current;(0,i.associateDestroyableChild)(t,e)}tryUpdating(){return this[m].updating.current}updating(){return this[m].updating.current}elements(){return this.elementStack}scope(){return this[m].scope.current}dynamicScope(){return this[m].dynamicScope.current}pushChildScope(){this[m].scope.push(this.scope().child())}pushDynamicScope(){var e=this.dynamicScope().child() -return this[m].dynamicScope.push(e),e}pushRootScope(e,t){var r=h.sized(e,t) -return this[m].scope.push(r),r}pushScope(e){this[m].scope.push(e)}popScope(){this[m].scope.pop()}popDynamicScope(){this[m].dynamicScope.pop()}getOwner(){return this.scope().owner}getSelf(){return this.scope().getSelf()}referenceForSymbol(e){return this.scope().getSymbol(e)}execute(e){return this._execute(e)}_execute(e){var t -for(e&&e(this);!(t=this.next()).done;);return t.value}next(){var e,{env:t,elementStack:r}=this,n=this[p].nextStatement() -return null!==n?(this[p].evaluateOuter(n,this),e={done:!1,value:null}):(this.stack.reset(),e={done:!0,value:new Vt(t,this.popUpdating(),r.popBlock(),this.destructor)}),e}bindDynamicScope(e){for(var t=this.dynamicScope(),r=e.length-1;r>=0;r--){var n=e[r] -t.set(n,this.stack.pop())}}}function Gt(e,t,r){return{pc:e,scope:t,dynamicScope:r,stack:[]}}function Yt(e){return(t,r,n)=>new Wt(t,r,n,e)}e.LowLevelVM=Wt,xt=m,At=f -class Qt{constructor(e){this.vm=e}next(){return this.vm.next()}sync(){return this.vm.execute()}}var Kt=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" -class Jt extends _{constructor(e,t,r){super(e,t),this.startingBlockDepth=r,this.candidate=null,this.injectedOmittedNode=!1,this.openBlockDepth=r-1}}class Xt extends ae{constructor(e,t,r){if(super(e,t,r),this.unmatchedAttributes=null,this.blockDepth=0,r)throw new Error("Rehydration with nextSibling not supported") -for(var n=this.currentCursor.element.firstChild;null!==n&&!Zt(n);)n=n.nextSibling -this.candidate=n -var i=tr(n) -if(0!==i){var a=i-1,s=this.dom.createComment(`%+b:${a}%`) -n.parentNode.insertBefore(s,this.candidate) -for(var o=n.nextSibling;null!==o&&(!er(o)||tr(o)!==i);)o=o.nextSibling -var u=this.dom.createComment(`%-b:${a}%`) -n.parentNode.insertBefore(u,o.nextSibling),this.candidate=s,this.startingBlockOffset=a}else this.startingBlockOffset=0}get currentCursor(){return this[ie].current}get candidate(){return this.currentCursor?this.currentCursor.candidate:null}set candidate(e){this.currentCursor.candidate=e}disableRehydration(e){var t=this.currentCursor -t.candidate=null,t.nextSibling=e}enableRehydration(e){var t=this.currentCursor -t.candidate=e,t.nextSibling=null}pushElement(e,t=null){var r=new Jt(e,t,this.blockDepth||0) -null!==this.candidate&&(r.candidate=e.firstChild,this.candidate=e.nextSibling),this[ie].push(r)}clearMismatch(e){var t=e,r=this.currentCursor -if(null!==r){var n=r.openBlockDepth -if(n>=r.startingBlockDepth)for(;t;){if(er(t))if(n>=rr(t,this.startingBlockOffset))break -t=this.remove(t)}else for(;null!==t;)t=this.remove(t) -this.disableRehydration(t)}}__openBlock(){var{currentCursor:e}=this -if(null!==e){var t=this.blockDepth -this.blockDepth++ -var{candidate:r}=e -if(null!==r){var{tagName:n}=e.element -Zt(r)&&rr(r,this.startingBlockOffset)===t?(this.candidate=this.remove(r),e.openBlockDepth=t):"TITLE"!==n&&"SCRIPT"!==n&&"STYLE"!==n&&this.clearMismatch(r)}}}__closeBlock(){var{currentCursor:e}=this -if(null!==e){var t=e.openBlockDepth -this.blockDepth-- -var{candidate:r}=e,n=!1 -if(null!==r)if(n=!0,er(r)&&rr(r,this.startingBlockOffset)===t){var i=this.remove(r) -this.candidate=i,e.openBlockDepth--}else this.clearMismatch(r),n=!1 -if(!1===n){var a=e.nextSibling -if(null!==a&&er(a)&&rr(a,this.startingBlockOffset)===this.blockDepth){var s=this.remove(a) -this.enableRehydration(s),e.openBlockDepth--}}}}__appendNode(e){var{candidate:t}=this -return t||super.__appendNode(e)}__appendHTML(e){var t=this.markerBounds() -if(t){var r=t.firstNode(),n=t.lastNode(),i=new w(this.element,r.nextSibling,n.previousSibling),a=this.remove(r) -return this.remove(n),null!==a&&ar(a)&&(this.candidate=this.remove(a),null!==this.candidate&&this.clearMismatch(this.candidate)),i}return super.__appendHTML(e)}remove(e){var t=e.parentNode,r=e.nextSibling -return t.removeChild(e),r}markerBounds(){var e=this.candidate -if(e&&ir(e)){for(var t=e,r=t.nextSibling;r&&!ir(r);)r=r.nextSibling -return new w(this.element,t,r)}return null}__appendText(e){var{candidate:t}=this -return t?3===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):function(e){return 8===e.nodeType&&"%|%"===e.nodeValue}(t)||ar(t)&&""===e?(this.candidate=this.remove(t),this.__appendText(e)):(this.clearMismatch(t),super.__appendText(e)):super.__appendText(e)}__appendComment(e){var t=this.candidate -return t&&8===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):(t&&this.clearMismatch(t),super.__appendComment(e))}__openElement(e){var t=this.candidate -if(t&&nr(t)&&function(e,t){if("http://www.w3.org/2000/svg"===e.namespaceURI)return e.tagName===t -return e.tagName===t.toUpperCase()}(t,e))return this.unmatchedAttributes=[].slice.call(t.attributes),t -if(t){if(nr(t)&&"TBODY"===t.tagName)return this.pushElement(t,null),this.currentCursor.injectedOmittedNode=!0,this.__openElement(e) -this.clearMismatch(t)}return super.__openElement(e)}__setAttribute(e,t,r){var n=this.unmatchedAttributes -if(n){var i=sr(n,e) -if(i)return i.value!==t&&(i.value=t),void n.splice(n.indexOf(i),1)}return super.__setAttribute(e,t,r)}__setProperty(e,t){var r=this.unmatchedAttributes -if(r){var n=sr(r,e) -if(n)return n.value!==t&&(n.value=t),void r.splice(r.indexOf(n),1)}return super.__setProperty(e,t)}__flushElement(e,t){var{unmatchedAttributes:r}=this -if(r){for(var n=0;nFe)){var r=(0,s.createCache)((()=>t(e))) -this.argsCache=r}get named(){return or(this).named||Ie}get positional(){return or(this).positional||De}}function lr(e){return(0,o.setInternalHelperManager)(e,{})}var cr=(0,r.buildUntouchableThis)("`fn` helper") -e.fn=lr((({positional:e})=>{var r=e[0] -return(0,t.createComputeRef)((()=>(...n)=>{var[i,...a]=(0,c.reifyPositional)(e) -if((0,t.isInvokableRef)(r)){var s=a.length>0?a[0]:n[0] -return(0,t.updateRef)(r,s)}return i.call(cr,...a,...n)}),null,"fn")})) -e.hash=lr((({named:e})=>{var r=(0,t.createComputeRef)((()=>{var t=(0,c.reifyNamed)(e) -return t}),null,"hash"),n=new Map -for(var i in e)n.set(i,e[i]) -return r.children=n,r})),e.array=lr((({positional:e})=>(0,t.createComputeRef)((()=>(0,c.reifyPositional)(e)),null,"array"))),e.get=lr((({positional:e})=>{var n,i,s=null!==(n=e[0])&&void 0!==n?n:t.UNDEFINED_REFERENCE,o=null!==(i=e[1])&&void 0!==i?i:t.UNDEFINED_REFERENCE -return(0,t.createComputeRef)((()=>{var e=(0,t.valueForRef)(s) -if((0,r.isDict)(e))return(0,a.getPath)(e,String((0,t.valueForRef)(o)))}),(e=>{var n=(0,t.valueForRef)(s) -if((0,r.isDict)(n))return(0,a.setPath)(n,String((0,t.valueForRef)(o)),e)}),"get")})) -var dr=e=>(e=>null==e||"function"!=typeof e.toString)(e)?"":String(e),hr=(e.concat=lr((({positional:e})=>(0,t.createComputeRef)((()=>(0,c.reifyPositional)(e).map(dr).join("")),null,"concat"))),(0,r.buildUntouchableThis)("`on` modifier")),pr=(()=>{try{var e,t=document.createElement("div"),r=0 -return t.addEventListener("click",(()=>r++),{once:!0}),"function"==typeof Event?e=new Event("click"):(e=document.createEvent("Event")).initEvent("click",!0,!0),t.dispatchEvent(e),t.dispatchEvent(e),1===r}catch(n){return!1}})() -class fr{constructor(e,t){this.tag=(0,s.createUpdatableTag)(),this.shouldUpdate=!0,this.element=e,this.args=t}updateFromArgs(){var e,{args:r}=this,{once:n,passive:i,capture:a}=(0,c.reifyNamed)(r.named) -n!==this.once&&(this.once=n,this.shouldUpdate=!0),i!==this.passive&&(this.passive=i,this.shouldUpdate=!0),a!==this.capture&&(this.capture=a,this.shouldUpdate=!0),void 0!==n||void 0!==i||void 0!==a?e=this.options={once:n,passive:i,capture:a}:this.options=void 0 -var s=(0,t.valueForRef)(r.positional[0]) -s!==this.eventName&&(this.eventName=s,this.shouldUpdate=!0) -var o=r.positional[1],u=(0,t.valueForRef)(o) -u!==this.userProvidedCallback&&(this.userProvidedCallback=u,this.shouldUpdate=!0) -var l=!1===pr&&n||!1 -if(this.shouldUpdate)if(l)var d=this.callback=function(t){return!pr&&n&&gr(this,s,d,e),u.call(hr,t)} -else this.callback=u}}var mr=0,vr=0 -function gr(e,t,r,n){vr++,pr?e.removeEventListener(t,r,n):void 0!==n&&n.capture?e.removeEventListener(t,r,!0):e.removeEventListener(t,r)}function br(e,t,r,n){mr++,pr?e.addEventListener(t,r,n):void 0!==n&&n.capture?e.addEventListener(t,r,!0):e.addEventListener(t,r)}e.on=(0,o.setInternalModifierManager)(new class{constructor(){this.SUPPORTS_EVENT_OPTIONS=pr}getDebugName(){return"on"}get counters(){return{adds:mr,removes:vr}}create(e,t,r,n){return new fr(t,n)}getTag(e){return null===e?null:e.tag}install(e){if(null!==e){e.updateFromArgs() -var{element:t,eventName:r,callback:n,options:a}=e -br(t,r,n,a),(0,i.registerDestructor)(e,(()=>gr(t,r,n,a))),e.shouldUpdate=!1}}update(e){if(null!==e){var{element:t,eventName:r,callback:n,options:i}=e -e.updateFromArgs(),e.shouldUpdate&&(gr(t,r,n,i),br(e.element,e.eventName,e.callback,e.options),e.shouldUpdate=!1)}}getDestroyable(e){return e}},{})})),e("@glimmer/tracking/index",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"cached",{enumerable:!0,get:function(){return t.cached}}),Object.defineProperty(e,"tracked",{enumerable:!0,get:function(){return t.tracked}})})),e("@glimmer/tracking/primitives/cache",["exports","@ember/-internals/metal"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return t.createCache}}),Object.defineProperty(e,"getValue",{enumerable:!0,get:function(){return t.getValue}}),Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return t.isConst}})})),e("@glimmer/util",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._WeakSet=e.Stack=e.SERIALIZATION_FIRST_NODE_STRING=e.LOGGER=e.LOCAL_LOGGER=e.HAS_NATIVE_SYMBOL=e.HAS_NATIVE_PROXY=e.EMPTY_STRING_ARRAY=e.EMPTY_NUMBER_ARRAY=e.EMPTY_ARRAY=void 0,e.assert=function(e,t){if(!e)throw new Error(t||"assertion failure")},e.assertNever=function(e,t="unexpected unreachable branch"){throw _.log("unreachable",e),_.log(`${t} :: ${JSON.stringify(e)} (${e})`),new Error("code reached unreachable")},e.assertPresent=function(e,t="unexpected empty list"){if(!b(e))throw new Error(t)},e.beginTestSteps=e.assign=void 0,e.buildUntouchableThis=function(e){var t=null -return t},e.castToBrowser=function(e,t){if(null==e)return null -if(void 0===typeof document)throw new Error("Attempted to cast to a browser node in a non-browser context") -if(m(e))return e -if(e.ownerDocument!==document)throw new Error("Attempted to cast to a browser node with a node that was not created from this document") -return v(e,t)},e.castToSimple=function(e){return m(e)||function(e){e.nodeType}(e),e},e.checkNode=v,e.clearElement=function(e){var t=e.firstChild -for(;t;){var r=t.nextSibling -e.removeChild(t),t=r}},e.constants=function(...e){return[!1,!0,null,void 0,...e]},e.debugToString=void 0,e.decodeHandle=function(e){return e},e.decodeImmediate=p,e.decodeNegative=l,e.decodePositive=d,e.deprecate=function(e){y.warn(`DEPRECATION: ${e}`)},e.dict=function(){return Object.create(null)},e.emptyArray=r,e.encodeHandle=function(e){return e},e.encodeImmediate=h,e.encodeNegative=u,e.encodePositive=c,e.endTestSteps=void 0,e.enumerableSymbol=o,e.exhausted=function(e){throw new Error(`Exhausted ${e}`)},e.expect=function(e,t){if(null==e)throw new Error(t) -return e},e.extractHandle=function(e){return"number"==typeof e?e:e.handle},e.fillNulls=function(e){for(var t=new Array(e),r=0;r=0},e.isNonPrimitiveHandle=function(e){return e>3},e.isObject=function(e){return"function"==typeof e||"object"==typeof e&&null!==e},e.isOkHandle=function(e){return"number"==typeof e},e.isPresent=b,e.isSerializationFirstNode=function(e){return e.nodeValue===n},e.isSmallInt=function(e){return e%1==0&&e<=536870911&&e>=-536870912},e.keys=function(e){return Object.keys(e)},e.logStep=void 0,e.mapPresent=function(e,t){if(null===e)return null -var r=[] -for(var n of e)r.push(t(n)) -return r},e.strip=function(e,...t){for(var r="",n=0;ne -e.symbol=a?Symbol:o -function u(e){return-536870913&e}function l(e){return 536870912|e}function c(e){return~e}function d(e){return~e}function h(e){return(e|=0)<0?u(e):c(e)}function p(e){return(e|=0)>-536870913?d(e):l(e)}[1,-1].forEach((e=>p(h(e)))) -var f -e._WeakSet="function"==typeof WeakSet?WeakSet:class{constructor(){this._map=new WeakMap}add(e){return this._map.set(e,!0),this}delete(e){return this._map.delete(e)}has(e){return this._map.has(e)}} -function m(e){return 9===e.nodeType}function v(e,t){var r=!1 -if(null!==e)if("string"==typeof t)r=g(e,t) -else{if(!Array.isArray(t))throw s() -r=t.some((t=>g(e,t)))}if(r)return e -throw function(e,t){return new Error(`cannot cast a ${e} into ${t}`)}(`SimpleElement(${e})`,t)}function g(e,t){switch(t){case"NODE":return!0 -case"HTML":return e instanceof HTMLElement -case"SVG":return e instanceof SVGElement -case"ELEMENT":return e instanceof Element -default:if(t.toUpperCase()===t)throw new Error("BUG: this code is missing handling for a generic node type") -return e instanceof Element&&e.tagName.toLowerCase()===t}}function b(e){return e.length>0}e.debugToString=f -var y=e.LOCAL_LOGGER=console,_=e.LOGGER=console})),e("@glimmer/validator",["exports","@glimmer/global-context"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.VolatileTag=e.VOLATILE_TAG=e.VOLATILE=e.INITIAL=e.CurrentTag=e.CURRENT_TAG=e.CONSTANT_TAG=e.CONSTANT=e.COMPUTE=e.ALLOW_CYCLES=void 0,e.beginTrackFrame=S,e.beginTrackingTransaction=void 0,e.beginUntrackFrame=M,e.bump=function(){o++},e.combine=void 0,e.consumeTag=I,e.createCache=function(e,t){0 -var r={[D]:e,[F]:void 0,[L]:void 0,[U]:-1} -0 -return r},e.createTag=function(){return new h(0)},e.createUpdatableTag=m,e.dirtyTag=void 0,e.dirtyTagFor=T,e.endTrackFrame=j,e.endTrackingTransaction=void 0,e.endUntrackFrame=N,e.getValue=function(e){B(e,"getValue") -var t=e[D],r=e[L],n=e[U] -if(void 0!==r&&c(r,n))I(r) -else{S() -try{e[F]=t()}finally{r=j(),e[L]=r,e[U]=l(r),I(r)}}return e[F]},e.isConst=function(e){B(e,"isConst") -var t=e[L] -return function(e,t){0}(),g(t)},e.isConstTag=g,e.isTracking=function(){return null!==x},e.logTrackingStack=void 0,e.resetTracking=function(){for(;A.length>0;)A.pop() -x=null,!1},e.setTrackingTransactionEnv=e.runInTrackingTransaction=void 0,e.tagFor=P,e.tagMetaFor=C,e.track=function(e,t){var r -S(t) -try{e()}finally{r=j()}return r},e.trackedData=function(e,t){var r=new WeakMap,n="function"==typeof t -return{getter:function(i){var a -return I(P(i,e)),n&&!r.has(i)?(a=t.call(i),r.set(i,a)):a=r.get(i),a},setter:function(t,n){T(t,e),r.set(t,n)}}},e.untrack=function(e){M() -try{return e()}finally{N()}},e.updateTag=void 0,e.validateTag=c -e.valueForTag=l -var r="undefined"!=typeof Symbol?Symbol:e=>`__${e}${Math.floor(Math.random()*Date.now())}__`,n="undefined"!=typeof Symbol?Symbol.for:e=>`__GLIMMER_VALIDATOR_SYMBOL_FOR_${e}` -function i(e){if(null==e)throw new Error("Expected value to be present") -return e}e.CONSTANT=0 -var a=e.INITIAL=1,s=e.VOLATILE=NaN,o=a -var u=e.COMPUTE=r("TAG_COMPUTE") -function l(e){return e[u]()}function c(e,t){return t>=e[u]()}var d=r("TAG_TYPE") -class h{constructor(e){this.revision=a,this.lastChecked=a,this.lastValue=a,this.isUpdating=!1,this.subtag=null,this.subtagBufferCache=null,this[d]=e}static combine(e){switch(e.length){case 0:return v -case 1:return e[0] -default:var t=new h(2) -return t.subtag=e,t}}[u](){var{lastChecked:e}=this -if(!0===this.isUpdating)this.lastChecked=++o -else if(e!==o){this.isUpdating=!0,this.lastChecked=o -try{var{subtag:t,revision:r}=this -if(null!==t)if(Array.isArray(t))for(var n=0;nt.push(e))),_(t)}}var x=null,A=[] -function S(e){A.push(x),x=new k}function j(){var e=x -return x=A.pop()||null,i(e).combine()}function M(){A.push(x),x=null}function N(){x=A.pop()||null}function I(e){null!==x&&x.add(e)}var D=r("FN"),F=r("LAST_VALUE"),L=r("TAG"),U=r("SNAPSHOT") -r("DEBUG_LABEL") -function B(e,t){0}var $=n("GLIMMER_VALIDATOR_REGISTRATION"),z=function(){if("undefined"!=typeof globalThis)return globalThis -if("undefined"!=typeof self)return self -if("undefined"!=typeof window)return window -if("undefined"!=typeof global)return global -throw new Error("unable to locate global object")}() -if(!0===z[$])throw new Error("The `@glimmer/validator` library has been included twice in this application. It could be different versions of the package, or the same version included twice by mistake. `@glimmer/validator` depends on having a single copy of the package in use at any time in an application, even if they are the same version. You must dedupe your build to remove the duplicate packages in order to prevent this error.") -z[$]=!0})),e("@glimmer/vm",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.TemporaryRegister=e.SavedRegister=e.$v0=e.$t1=e.$t0=e.$sp=e.$s1=e.$s0=e.$ra=e.$pc=e.$fp=void 0,e.isLowLevelRegister=function(e){return e<=n},e.isMachineOp=function(e){return e>=0&&e<=15},e.isOp=function(e){return e>=16} -e.$pc=0,e.$ra=1,e.$fp=2 -var t,r,n=e.$sp=3 -e.$s0=4,e.$s1=5,e.$t0=6,e.$t1=7,e.$v0=8;(function(e){e[e.s0=4]="s0",e[e.s1=5]="s1"})(t||(e.SavedRegister=t={})),function(e){e[e.t0=6]="t0",e[e.t1=7]="t1"}(r||(e.TemporaryRegister=r={}))})),e("@glimmer/wire-format",["exports"],(function(e){"use strict" -function t(e){return function(t){return Array.isArray(t)&&t[0]===e}}Object.defineProperty(e,"__esModule",{value:!0}),e.getStringFromValue=function(e){return e},e.is=t,e.isArgument=function(e){return 21===e[0]||20===e[0]},e.isAttribute=function(e){return 14===e[0]||15===e[0]||22===e[0]||16===e[0]||24===e[0]||23===e[0]||17===e[0]||4===e[0]},e.isGet=e.isFlushElement=void 0,e.isHelper=function(e){return Array.isArray(e)&&28===e[0]},e.isStringLiteral=function(e){return"string"==typeof e} -e.isFlushElement=t(12) -e.isGet=t(30)})),e("@simple-dom/document",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var t=[] -function r(e,t,r){for(var n=0;n{} -function n(e){if("function"==typeof Promise){var r=Promise.resolve() -return()=>r.then(e)}if("function"==typeof MutationObserver){var n=0,i=new MutationObserver(e),a=document.createTextNode("") -return i.observe(a,{characterData:!0}),()=>(n=++n%2,a.data=""+n,n)}return()=>t(e,0)}function i(e){var t=r -return{setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),now:()=>Date.now(),next:n(e),clearNext:t}}var a=/\d+/ -function s(e){var t=typeof e -return"number"===t&&e==e||"string"===t&&a.test(e)}function o(e){return e.onError||e.onErrorTarget&&e.onErrorTarget[e.onErrorMethod]}function u(e,t,r){for(var n=-1,i=0,a=r.length;i=t[r=i+(n=(a-i)/6)-n%6]?i=r+6:a=r -return e>=t[i]?i+6:i}class h{constructor(e,t={},r={}){this._queueBeingFlushed=[],this.targetQueues=new Map,this.index=0,this._queue=[],this.name=e,this.options=t,this.globalOptions=r}stackFor(e){if(e0){var s=o(this.globalOptions) -r=s?this.invokeWithOnError:this.invoke -for(var u=this.index;u0&&this.flush(!0)}hasWork(){return this._queueBeingFlushed.length>0||this._queue.length>0}cancel({target:e,method:t}){var r=this._queue,n=this.targetQueues.get(e) -void 0!==n&&n.delete(t) -var i=u(e,t,r) -return(i>-1||(i=u(e,t,r=this._queueBeingFlushed))>-1)&&(r[i+1]=null,!0)}push(e,t,r,n){return this._queue.push(e,t,r,n),{queue:this,target:e,method:t}}pushUnique(e,t,r,n){var i=this.targetQueues.get(e) -void 0===i&&(i=new Map,this.targetQueues.set(e,i)) -var a=i.get(t) -if(void 0===a){var s=this._queue.push(e,t,r,n)-4 -i.set(t,s)}else{var o=this._queue -o[a+2]=r,o[a+3]=n}return{queue:this,target:e,method:t}}_getDebugInfo(e){if(e)return c(this._queue,4)}invoke(e,t,r){void 0===r?t.call(e):t.apply(e,r)}invokeWithOnError(e,t,r,n,i){try{void 0===r?t.call(e):t.apply(e,r)}catch(a){n(a,i)}}}class p{constructor(e=[],t){this.queues={},this.queueNameIndex=0,this.queueNames=e,e.reduce((function(e,r){return e[r]=new h(r,t[r],t),e}),this.queues)}schedule(e,t,r,n,i,a){var s=this.queues[e] -if(void 0===s)throw new Error(`You attempted to schedule an action in a queue (${e}) that doesn't exist`) -if(null==r)throw new Error(`You attempted to schedule an action in a queue (${e}) for a method that doesn't exist`) -return this.queueNameIndex=0,i?s.pushUnique(t,r,n,a):s.push(t,r,n,a)}flush(e=!1){for(var t,r,n=this.queueNames.length;this.queueNameIndexi){var u=n-i -e=new Array(u) -for(var l=0;l{F++,!1!==this._autorun&&(this._autorun=!1,this._autorunStack=null,this._end(!0))} -var r=this.options._buildPlatform||i -this._platform=r(this._boundAutorunEnd)}get counters(){return{begin:_,end:w,events:{begin:E,end:0},autoruns:{created:D,completed:F},run:O,join:R,defer:T,schedule:C,scheduleIterable:P,deferOnce:k,scheduleOnce:x,setTimeout:A,later:S,throttle:j,debounce:M,cancelTimers:N,cancel:I,loops:{total:L,nested:U}}}get defaultQueue(){return this._defaultQueue}begin(){_++ -var e,t=this.options,r=this.currentInstance -return!1!==this._autorun?(e=r,this._cancelAutorun()):(null!==r&&(U++,this.instanceStack.push(r)),L++,e=this.currentInstance=new p(this.queueNames,t),E++,this._trigger("begin",e,r)),this._onBegin(e,r),e}end(){w++,this._end(!1)}on(e,t){if("function"!=typeof t)throw new TypeError("Callback must be a function") -var r=this._eventCallbacks[e] -if(void 0===r)throw new TypeError(`Cannot on() event ${e} because it does not exist`) -r.push(t)}off(e,t){var r=this._eventCallbacks[e] -if(!e||void 0===r)throw new TypeError(`Cannot off() event ${e} because it does not exist`) -var n=!1 -if(t)for(var i=0;i0&&s(r[i-1])&&(n=parseInt(r.pop(),10)),[e,t,r,n]}(...arguments) -return this._later(e,t,r,n)}throttle(){j++ -var e,[t,r,n,i,a=!0]=b(...arguments),s=l(t,r,this._timers) -if(-1===s)e=this._later(t,r,a?v:n,i),a&&this._join(t,r,n) -else{e=this._timers[s+1] -var o=s+4 -this._timers[o]!==v&&(this._timers[o]=n)}return e}debounce(){M++ -var e,[t,r,n,i,a=!1]=b(...arguments),s=this._timers,o=l(t,r,s) -if(-1===o)e=this._later(t,r,a?v:n,i),a&&this._join(t,r,n) -else{var u=this._platform.now()+i,c=o+4 -s[c]===v&&(n=v),e=s[o+1] -var h=d(u,s) -if(o+6===h)s[o]=u,s[c]=n -else{var p=this._timers[o+5] -this._timers.splice(h,0,u,e,t,r,n,p),this._timers.splice(o,6)}0===o&&this._reinstallTimerTimeout()}return e}cancelTimers(){N++,this._clearTimerTimeout(),this._timers=[],this._cancelAutorun()}hasTimers(){return this._timers.length>0||this._autorun}cancel(e){if(I++,null==e)return!1 -var t=typeof e -return"number"===t?this._cancelLaterTimer(e):!("object"!==t||!e.queue||!e.method)&&e.queue.cancel(e)}ensureInstance(){this._ensureInstance()}getDebugInfo(){if(this.DEBUG)return{autorun:this._autorunStack,counters:this.counters,timers:c(this._timers,6,2),instanceStack:[this.currentInstance,...this.instanceStack].map((e=>e&&e._getDebugInfo(this.DEBUG)))}}_end(e){var t=this.currentInstance,r=null -if(null===t)throw new Error("end called without begin") -var n,i=!1 -try{n=t.flush(e)}finally{if(!i)if(i=!0,1===n){var a=this.queueNames[t.queueNameIndex] -this._scheduleAutorun(a)}else this.currentInstance=null,this.instanceStack.length>0&&(r=this.instanceStack.pop(),this.currentInstance=r),this._trigger("end",t,r),this._onEnd(t,r)}}_join(e,t,r){return null===this.currentInstance?this._run(e,t,r):void 0===e&&void 0===r?t():t.apply(e,r)}_run(e,t,r){var n=o(this.options) -if(this.begin(),n)try{return t.apply(e,r)}catch(i){n(i)}finally{this.end()}else try{return t.apply(e,r)}finally{this.end()}}_cancelAutorun(){this._autorun&&(this._platform.clearNext(),this._autorun=!1,this._autorunStack=null)}_later(e,t,r,n){var i=this.DEBUG?new Error:void 0,a=this._platform.now()+n,s=y++ -if(0===this._timers.length)this._timers.push(a,s,e,t,r,i),this._installTimerTimeout() -else{var o=d(a,this._timers) -this._timers.splice(o,0,a,s,e,t,r,i),this._reinstallTimerTimeout()}return s}_cancelLaterTimer(e){for(var t=1;t0&&(this.begin(),this._scheduleExpiredTimers(),this.end())}_scheduleExpiredTimers(){for(var e=this._timers,t=0,r=e.length,n=this._defaultQueue,i=this._platform.now();ti)break -var a=e[t+4] -if(a!==v){var s=e[t+2],o=e[t+3],u=e[t+5] -this.currentInstance.schedule(n,s,o,a,!1,u)}}e.splice(0,t),this._installTimerTimeout()}_reinstallTimerTimeout(){this._clearTimerTimeout(),this._installTimerTimeout()}_clearTimerTimeout(){null!==this._timerTimeoutId&&(this._platform.clearTimeout(this._timerTimeoutId),this._timerTimeoutId=null)}_installTimerTimeout(){if(0!==this._timers.length){var e=this._timers[0],t=this._platform.now(),r=Math.max(0,e-t) -this._timerTimeoutId=this._platform.setTimeout(this._boundRunExpiredTimers,r)}}_ensureInstance(){var e=this.currentInstance -return null===e&&(this._autorunStack=this.DEBUG?new Error:void 0,e=this.begin(),this._scheduleAutorun(this.queueNames[0])),e}_scheduleAutorun(e){D++ -var t=this._platform.next,r=this.options.flush -r?r(e,t):t(),this._autorun=!0}}B.Queue=h,B.buildPlatform=i,B.buildNext=n -e.default=B})),e("dag-map",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -var t=function(){function e(){this._vertices=new r}return e.prototype.add=function(e,t,r,n){if(!e)throw new Error("argument `key` is required") -var i=this._vertices,a=i.add(e) -if(a.val=t,r)if("string"==typeof r)i.addEdge(a,i.add(r)) -else for(var s=0;s0){var n="cycle detected: "+t -throw this.each(this.path,(function(e){n+=" <- "+e})),new Error(n)}}},e.prototype.reset=function(){this.stack.length=0,this.path.length=0,this.result.length=0 -for(var e=0,t=this.length;e=0){var o=this[s] -if(o.flag)continue -if(o.flag=!0,i.push(s),t===o.key)break -n.push(~s),this.pushIncoming(o)}else i.pop(),a.push(~s)}},e.prototype.pushIncoming=function(e){for(var t=this.stack,r=e.length-1;r>=0;r--){var n=e[r] -this[n].flag||t.push(n)}},e.prototype.each=function(e,t){for(var r=0,n=e.length;r=e.length?{done:!0}:{done:!1,value:e[t++]}} -throw new TypeError("Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(t=e[Symbol.iterator]()).next.bind(t)},e.createSuper=function(e){return function(){var t,i=r(e) -if(n){var a=r(this).constructor -t=Reflect.construct(i,arguments,a)}else t=i.apply(this,arguments) -return o(this,t)}},e.inheritsLoose=function(e,r){0 -e.prototype=Object.create(null===r?null:r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),null!==r&&t(e,r)},e.objectDestructuringEmpty=function(e){0},e.possibleConstructorReturn=o,e.taggedTemplateLiteralLoose=function(e,t){t||(t=e.slice(0)) -return e.raw=t,e},e.wrapNativeSuper=function(e){if(i.has(e))return i.get(e) -function r(){}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),i.set(e,r),t(r,e)} -var t=Object.setPrototypeOf,r=Object.getPrototypeOf,n="object"==typeof Reflect&&"function"==typeof Reflect.construct,i=new Map -function a(e,t){for(var r=0;re.length)&&(t=e.length) -for(var r=new Array(t),n=0;n0&&47===t.charCodeAt(0)&&(t=t.substr(1)) -for(var n=t.split("/"),i=void 0,a=void 0,s=0;s2&&"[]"===a.slice(s-2)&&(o=!0,r[a=a.slice(0,s-2)]||(r[a]=[])),u=i[1]?k(i[1]):""),o?r[a].push(u):r[a]=u}return r},x.prototype.recognize=function(e){var t,r=[this.rootState],n={},i=!1,a=e.indexOf("#");-1!==a&&(e=e.substr(0,a)) -var s=e.indexOf("?") -if(-1!==s){var o=e.substr(s+1,e.length) -e=e.substr(0,s),n=this.parseQueryString(o)}"/"!==e.charAt(0)&&(e="/"+e) -var l=e -x.ENCODE_AND_DECODE_PATH_SEGMENTS?e=u(e):(e=decodeURI(e),l=decodeURI(l)) -var c=e.length -c>1&&"/"===e.charAt(c-1)&&(e=e.substr(0,c-1),l=l.substr(0,l.length-1),i=!0) -for(var d=0;d0){var n=e[r-1] -if(function(e){if(e&&"object"==typeof e){var t=e -return"queryParams"in t&&Object.keys(t.queryParams).every((e=>"string"==typeof e))}return!1}(n))return t=n.queryParams,[a.call(e,0,r-1),t]}return[e,null]}function l(e){for(var t in e){var r=e[t] -if("number"==typeof r)e[t]=""+r -else if(Array.isArray(r))for(var n=0,i=r.length;n{throw this.router.transitionDidError(e,this)}),m("Handle Abort"))}else this.promise=r.Promise.resolve(this[v]),this[g]={}}then(e,t,r){return this.promise.then(e,t,r)}catch(e,t){return this.promise.catch(e,t)}finally(e,t){return this.promise.finally(e,t)}abort(){this.rollback() -var e=new y(this.router,void 0,void 0,void 0) -return e.to=this.from,e.from=this.from,e.isAborted=!0,this.router.routeWillChange(e),this.router.routeDidChange(e),this}rollback(){this.isAborted||(c(this.router,this.sequence,this.targetName+": transition was aborted"),void 0!==this.intent&&null!==this.intent&&(this.intent.preTransitionState=this.router.state),this.isAborted=!0,this.isActive=!1,this.router.activeTransition=void 0)}redirect(e){this.rollback(),this.router.routeWillChange(e)}retry(){this.abort() -var e=this.router.transitionByIntent(this.intent,!1) -return null!==this.urlMethod&&e.method(this.urlMethod),e}method(e){return this.urlMethod=e,this}send(e=!1,t,r,n,i){this.trigger(e,t,r,n,i)}trigger(e=!1,t,...r){"string"==typeof e&&(t=e,e=!1),this.router.triggerEvent(this[v].routeInfos.slice(0,this.resolveIndex+1),e,t,r)}followRedirects(){var e=this.router -return this.promise.catch((function(t){return e.activeTransition?e.activeTransition.followRedirects():r.Promise.reject(t)}))}toString(){return"Transition (sequence "+this.sequence+")"}log(e){c(this.router,this.sequence,e)}}function _(e){return c(e.router,e.sequence,"detected abort."),n()}function w(e){return"object"==typeof e&&e instanceof y&&e.isTransition}e.InternalTransition=y -var E=new WeakMap -function O(e,t={},r=!1){return e.map(((n,i)=>{var{name:a,params:s,paramNames:o,context:u,route:l}=n,c=n -if(E.has(c)&&r){var d=E.get(c) -d=function(e,t){var r={get metadata(){return T(e)}} -if(!Object.isExtensible(t)||t.hasOwnProperty("metadata"))return Object.freeze(Object.assign({},t,r)) -return Object.assign(t,r)}(l,d) -var h=R(d,u) -return E.set(c,h),h}var p={find(t,r){var n,i=[] -3===t.length&&(i=e.map((e=>E.get(e)))) -for(var a=0;e.length>a;a++)if(n=E.get(e[a]),t.call(r,n,a,i))return n},get name(){return a},get paramNames(){return o},get metadata(){return T(n.route)},get parent(){var t=e[i-1] -return void 0===t?null:E.get(t)},get child(){var t=e[i+1] -return void 0===t?null:E.get(t)},get localName(){var e=this.name.split(".") -return e[e.length-1]},get params(){return s},get queryParams(){return t}} -return r&&(p=R(p,u)),E.set(n,p),p}))}function R(e,t){var r={get attributes(){return t}} -return!Object.isExtensible(e)||e.hasOwnProperty("attributes")?Object.freeze(Object.assign({},e,r)):Object.assign(e,r)}function T(e){return null!=e&&void 0!==e.buildRouteInfoMetadata?e.buildRouteInfoMetadata():null}class C{constructor(e,t,r,n){this._routePromise=void 0,this._route=null,this.params={},this.isResolved=!1,this.name=t,this.paramNames=r,this.router=e,n&&this._processRoute(n)}getModel(e){return r.Promise.resolve(this.context)}serialize(e){return this.params||{}}resolve(e){return r.Promise.resolve(this.routePromise).then((t=>(i(e),t))).then((()=>this.runBeforeModelHook(e))).then((()=>i(e))).then((()=>this.getModel(e))).then((t=>(i(e),t))).then((t=>this.runAfterModelHook(e,t))).then((t=>this.becomeResolved(e,t)))}becomeResolved(e,t){var r,n=this.serialize(t) -e&&(this.stashResolvedModel(e,t),e[g]=e[g]||{},e[g][this.name]=n) -var i=t===this.context -!("context"in this)&&i||(r=t) -var a=E.get(this),s=new P(this.router,this.name,this.paramNames,n,this.route,r) -return void 0!==a&&E.set(s,a),s}shouldSupersede(e){if(!e)return!0 -var t=e.context===this.context -return e.name!==this.name||"context"in this&&!t||this.hasOwnProperty("params")&&!function(e,t){if(e===t)return!0 -if(!e||!t)return!1 -for(var r in e)if(e.hasOwnProperty(r)&&e[r]!==t[r])return!1 -return!0}(this.params,e.params)}get route(){return null!==this._route?this._route:this.fetchRoute()}set route(e){this._route=e}get routePromise(){return this._routePromise||this.fetchRoute(),this._routePromise}set routePromise(e){this._routePromise=e}log(e,t){e.log&&e.log(this.name+": "+t)}updateRoute(e){return e._internalName=this.name,this.route=e}runBeforeModelHook(e){var t -return e.trigger&&e.trigger(!0,"willResolveModel",e,this.route),this.route&&void 0!==this.route.beforeModel&&(t=this.route.beforeModel(e)),w(t)&&(t=null),r.Promise.resolve(t)}runAfterModelHook(e,t){var n,i,a=this.name -return this.stashResolvedModel(e,t),void 0!==this.route&&void 0!==this.route.afterModel&&(n=this.route.afterModel(t,e)),n=w(i=n)?null:i,r.Promise.resolve(n).then((()=>e.resolvedModels[a]))}stashResolvedModel(e,t){e.resolvedModels=e.resolvedModels||{},e.resolvedModels[this.name]=t}fetchRoute(){var e=this.router.getRoute(this.name) -return this._processRoute(e)}_processRoute(e){return this.routePromise=r.Promise.resolve(e),null!==(t=e)&&"object"==typeof t&&"function"==typeof t.then?(this.routePromise=this.routePromise.then((e=>this.updateRoute(e))),this.route=void 0):e?this.updateRoute(e):void 0 -var t}}e.InternalRouteInfo=C -class P extends C{constructor(e,t,r,n,i,a){super(e,t,r,i),this.params=n,this.isResolved=!0,this.context=a}resolve(e){return e&&e.resolvedModels&&(e.resolvedModels[this.name]=this.context),r.Promise.resolve(this)}}class k extends C{constructor(e,t,r,n,i){super(e,t,r,i),this.params={},n&&(this.params=n)}getModel(e){var t=this.params -e&&e[b]&&(o(t={},this.params),t.queryParams=e[b]) -var n,i=this.route -return i.deserialize?n=i.deserialize(t,e):i.model&&(n=i.model(t,e)),n&&w(n)&&(n=void 0),r.Promise.resolve(n)}}class x extends C{constructor(e,t,r,n){super(e,t,r),this.context=n,this.serializer=this.router.getSerializer(t)}getModel(e){return void 0!==this.router.log&&this.router.log(this.name+": resolving provided model"),super.getModel(e)}serialize(e){var{paramNames:t,context:r}=this -e||(e=r) -var n={} -if(d(e))return n[t[0]]=e,n -if(this.serializer)return this.serializer.call(null,e,t) -if(void 0!==this.route&&this.route.serialize)return this.route.serialize(e,t) -if(1===t.length){var i=t[0] -return/_id$/.test(i)?n[i]=e.id:n[i]=e,n}}}class A{constructor(e,t={}){this.router=e,this.data=t}}function S(e,t,r){var n=e.routeInfos,i=t.resolveIndex>=n.length?n.length-1:t.resolveIndex,a=t.isAborted -throw new I(r,e.routeInfos[i].route,a,e)}function j(e,t){if(t.resolveIndex!==e.routeInfos.length){var r=e.routeInfos[t.resolveIndex],n=M.bind(null,e,t) -return r.resolve(t).then(n,null,e.promiseLabel("Proceed"))}}function M(e,t,r){var n=e.routeInfos[t.resolveIndex].isResolved -if(e.routeInfos[t.resolveIndex++]=r,!n){var{route:a}=r -void 0!==a&&a.redirect&&a.redirect(r.context,t)}return i(t),j(e,t)}class N{constructor(){this.routeInfos=[],this.queryParams={},this.params={}}promiseLabel(e){var t="" -return h(this.routeInfos,(function(e){return""!==t&&(t+="."),t+=e.name,!0})),m("'"+t+"': "+e)}resolve(e){var t=this.params -h(this.routeInfos,(e=>(t[e.name]=e.params||{},!0))),e.resolveIndex=0 -var n=j.bind(null,this,e),i=S.bind(null,this,e) -return r.Promise.resolve(null,this.promiseLabel("Start transition")).then(n,null,this.promiseLabel("Resolve route")).catch(i,this.promiseLabel("Handle error")).then((()=>this))}}e.TransitionState=N -class I{constructor(e,t,r,n){this.error=e,this.route=t,this.wasAborted=r,this.state=n}}e.TransitionError=I -class D extends A{constructor(e,t,r,n=[],i={},a){super(e,a),this.preTransitionState=void 0,this.name=t,this.pivotHandler=r,this.contexts=n,this.queryParams=i}applyToState(e,t){var r=this.router.recognizer.handlersFor(this.name),n=r[r.length-1].handler -return this.applyToHandlers(e,r,n,t,!1)}applyToHandlers(e,t,r,n,i){var a,s,u=new N,l=this.contexts.slice(0),c=t.length -if(this.pivotHandler)for(a=0,s=t.length;a=0;--a){var d=t[a],h=d.handler,p=e.routeInfos[a],f=null -if(f=d.names.length>0?a>=c?this.createParamHandlerInfo(h,d.names,l,p):this.getHandlerInfoForDynamicSegment(h,d.names,l,p,r,a):this.createParamHandlerInfo(h,d.names,l,p),i){f=f.becomeResolved(null,f.context) -var m=p&&p.context -d.names.length>0&&void 0!==p.context&&f.context===m&&(f.params=p&&p.params),f.context=m}var v=p;(a>=c||f.shouldSupersede(p))&&(c=Math.min(a,c),v=f),n&&!i&&(v=v.becomeResolved(null,v.context)),u.routeInfos.unshift(v)}if(l.length>0)throw new Error("More context objects were passed than there are dynamic segments for the route: "+r) -return n||this.invalidateChildren(u.routeInfos,c),o(u.queryParams,this.queryParams||{}),n&&e.queryParams&&o(u.queryParams,e.queryParams),u}invalidateChildren(e,t){for(var r=t,n=e.length;r0){if(d(s=r[r.length-1]))return this.createParamHandlerInfo(e,t,r,n) -r.pop()}else{if(n&&n.name===e)return n -if(!this.preTransitionState)return n -var o=this.preTransitionState.routeInfos[a] -s=null==o?void 0:o.context}return new x(this.router,e,t,s)}createParamHandlerInfo(e,t,r,n){for(var i={},a=t.length,s=[];a--;){var o=n&&e===n.name&&n.params||{},u=r[r.length-1],l=t[a] -d(u)?i[l]=""+r.pop():o.hasOwnProperty(l)?i[l]=o[l]:s.push(l)}if(s.length>0)throw new Error(`You didn't provide enough string/numeric parameters to satisfy all of the dynamic segments for route ${e}. Missing params: ${s}`) -return new k(this.router,e,t,i)}}var F=function(){function e(t){var r=Error.call(this,t) -this.name="UnrecognizedURLError",this.message=t||"UnrecognizedURL",Error.captureStackTrace?Error.captureStackTrace(this,e):this.stack=r.stack}return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}() -class L extends A{constructor(e,t,r){super(e,r),this.url=t,this.preTransitionState=void 0}applyToState(e){var t,r,n=new N,i=this.router.recognizer.recognize(this.url) -if(!i)throw new F(this.url) -var a=!1,s=this.url -function u(e){if(e&&e.inaccessibleByURL)throw new F(s) -return e}for(t=0,r=i.length;t=0&&n;--r){var i=t[r],a=i.handler -e.add(t,{as:a}),n="/"===i.path||""===i.path||".index"===a.slice(-6)}}))}hasRoute(e){return this.recognizer.hasRoute(e)}queryParamsTransition(e,t,r,n){if(this.fireQueryParamDidChange(n,e),!t&&this.activeTransition)return this.activeTransition -var i=new y(this,void 0,void 0) -return i.queryParamsOnly=!0,r.queryParams=this.finalizeQueryParamChange(n.routeInfos,n.queryParams,i),i[b]=n.queryParams,this.toReadOnlyInfos(i,n),this.routeWillChange(i),i.promise=i.promise.then((e=>(i.isAborted||(this._updateURL(i,r),this.didTransition(this.currentRouteInfos),this.toInfos(i,n.routeInfos,!0),this.routeDidChange(i)),e)),null,m("Transition complete")),i}transitionByIntent(e,t){try{return this.getTransitionByIntent(e,t)}catch(r){return new y(this,e,void 0,r,void 0)}}recognize(e){var t=new L(this,e),r=this.generateNewState(t) -if(null===r)return r -var n=O(r.routeInfos,r.queryParams) -return n[n.length-1]}recognizeAndLoad(e){var t=new L(this,e),n=this.generateNewState(t) -if(null===n)return r.Promise.reject(`URL ${e} was not recognized`) -var i=new y(this,t,n,void 0) -return i.then((()=>{var e=O(n.routeInfos,i[b],!0) -return e[e.length-1]}))}generateNewState(e){try{return e.applyToState(this.state,!1)}catch(t){return null}}getTransitionByIntent(e,t){var r,n=!!this.activeTransition,i=n?this.activeTransition[v]:this.state,a=e.applyToState(i,t),s=p(i.queryParams,a.queryParams) -if(U(a.routeInfos,i.routeInfos)){if(s){var o=this.queryParamsTransition(s,n,i,a) -return o.queryParamsOnly=!0,o}return this.activeTransition||new y(this,void 0,void 0)}if(t){var u=new y(this,void 0,a) -return u.isIntermediate=!0,this.toReadOnlyInfos(u,a),this.setupContexts(a,u),this.routeWillChange(u),this.activeTransition}return r=new y(this,e,a,void 0,this.activeTransition),function(e,t){if(e.length!==t.length)return!1 -for(var r=0,n=e.length;rthis.finalizeTransition(r,e)),null,m("Settle transition promise when transition is finalized")),n||this.notifyExistingHandlers(a,r),this.fireQueryParamDidChange(a,s),r}doTransition(e,t=[],r=!1){var n,i=t[t.length-1],a={} -if(i&&Object.prototype.hasOwnProperty.call(i,"queryParams")&&(a=t.pop().queryParams),void 0===e){c(this,"Updating query params") -var{routeInfos:s}=this.state -n=new D(this,s[s.length-1].name,void 0,[],a)}else"/"===e.charAt(0)?(c(this,"Attempting URL transition to "+e),n=new L(this,e)):(c(this,"Attempting transition to "+e),n=new D(this,e,void 0,t,a)) -return this.transitionByIntent(n,r)}finalizeTransition(e,t){try{c(e.router,e.sequence,"Resolved all models on destination route; finalizing transition.") -var n=t.routeInfos -return this.setupContexts(t,e),e.isAborted?(this.state.routeInfos=this.currentRouteInfos,r.Promise.reject(_(e))):(this._updateURL(e,t),e.isActive=!1,this.activeTransition=void 0,this.triggerEvent(this.currentRouteInfos,!0,"didTransition",[]),this.didTransition(this.currentRouteInfos),this.toInfos(e,t.routeInfos,!0),this.routeDidChange(e),c(this,e.sequence,"TRANSITION COMPLETE."),n[n.length-1].route)}catch(s){if("object"!=typeof(a=s)||null===a||"TRANSITION_ABORTED"!==a.code){var i=e[v].routeInfos -e.trigger(!0,"error",s,e,i[i.length-1].route),e.abort()}throw s}var a}setupContexts(e,t){var r,n,i,a=this.partitionRoutes(this.state,e) -for(r=0,n=a.exited.length;r=0;--s){var u=n[s] -o(a,u.params),u.route.inaccessibleByURL&&(r=null)}if(r){a.queryParams=e._visibleQueryParams||t.queryParams -var l=this.recognizer.generate(i,a),c=e.isCausedByInitialTransition,d="replace"===r&&!e.isCausedByAbortingTransition,h=e.queryParamsOnly&&"replace"===r,p="replace"===r&&e.isCausedByAbortingReplaceTransition -c||d||h||p?this.replaceURL(l):this.updateURL(l)}}}finalizeQueryParamChange(e,t,r){for(var n in t)t.hasOwnProperty(n)&&null===t[n]&&delete t[n] -var i=[] -this.triggerEvent(e,!0,"finalizeQueryParamChange",[t,i,r]),r&&(r._visibleQueryParams={}) -for(var a={},s=0,o=i.length;s0){var r=O(t,Object.assign({},this._lastQueryParams),!0) -e.from=r[r.length-1]||null}}toInfos(e,t,r=!1){if(void 0!==e&&t.length>0){var n=O(t,Object.assign({},e[b]),r) -e.to=n[n.length-1]||null}}notifyExistingHandlers(e,t){var r,n,i,a,s=this.state.routeInfos -for(n=s.length,r=0;r{for(var e=0;e{t===r?v(e,r):f(e,r)}),(t=>g(e,t)))}(e,t):"function"==typeof r?function(e,t,r){i.async((e=>{var n=!1,i=function(e,t,r,n){try{e.call(t,r,n)}catch(i){return i}}(r,t,(r=>{n||(n=!0,t===r?v(e,r):f(e,r))}),(t=>{n||(n=!0,g(e,t))}),e._label) -!n&&i&&(n=!0,g(e,i))}),e)}(e,t,r):v(e,t)}function f(e,t){if(e===t)v(e,t) -else if(i=typeof(n=t),null===n||"object"!==i&&"function"!==i)v(e,t) -else{var r -try{r=t.then}catch(a){return void g(e,a)}p(e,t,r)}var n,i}function m(e){e._onError&&e._onError(e._result),y(e)}function v(e,t){e._state===c&&(e._result=t,e._state=d,0===e._subscribers.length?i.instrument&&o("fulfilled",e):i.async(y,e))}function g(e,t){e._state===c&&(e._state=h,e._result=t,i.async(m,e))}function b(e,t,r,n){var a=e._subscribers,s=a.length -e._onError=null,a[s]=t,a[s+d]=r,a[s+h]=n,0===s&&e._state&&i.async(y,e)}function y(e){var t=e._subscribers,r=e._state -if(i.instrument&&o(r===d?"fulfilled":"rejected",e),0!==t.length){for(var n,a,s=e._result,u=0;u_(a,s,p,u)))}return s}class E{constructor(e,t,r,n){this._instanceConstructor=e,this.promise=new e(l,n),this._abortOnReject=r,this._isUsingOwnPromise=e===C,this._isUsingOwnResolve=e.resolve===u,this._init(...arguments)}_init(e,t){var r=t.length||0 -this.length=r,this._remaining=r,this._result=new Array(r),this._enumerate(t)}_enumerate(e){for(var t=this.length,r=this.promise,n=0;r._state===c&&nt(e))),t,r)}else this._willSettleAt(n.resolve(e),t,r)}_eachEntry(e,t,r){null!==e&&"object"==typeof e?this._settleMaybeThenable(e,t,r):this._setResultAt(d,t,e,r)}_settledAt(e,t,r,n){var i=this.promise -i._state===c&&(this._abortOnReject&&e===h?g(i,r):(this._setResultAt(e,t,r,n),this._checkFullfillment()))}_setResultAt(e,t,r,n){this._remaining--,this._result[t]=r}_willSettleAt(e,t,r){b(e,void 0,(e=>this._settledAt(d,t,e,r)),(e=>this._settledAt(h,t,e,r)))}}function O(e,t,r){this._remaining--,this._result[t]=e===d?{state:"fulfilled",value:r}:{state:"rejected",reason:r}}var R="rsvp_"+Date.now()+"-",T=0 -class C{constructor(e,t){this._id=T++,this._label=t,this._state=void 0,this._result=void 0,this._subscribers=[],i.instrument&&o("created",this),l!==e&&("function"!=typeof e&&function(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}(),this instanceof C?function(e,t){var r=!1 -try{t((t=>{r||(r=!0,f(e,t))}),(t=>{r||(r=!0,g(e,t))}))}catch(n){g(e,n)}}(this,e):function(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}())}_onError(e){i.after((()=>{this._onError&&i.trigger("error",e,this._label)}))}catch(e,t){return this.then(void 0,e,t)}finally(e,t){var r=this,n=r.constructor -return"function"==typeof e?r.then((t=>n.resolve(e()).then((()=>t))),(t=>n.resolve(e()).then((()=>{throw t})))):r.then(e,e)}}function P(e,t){return{then:(r,n)=>e.call(t,r,n)}}function k(e,t){var r=function(){for(var r=arguments.length,n=new Array(r+1),i=!1,a=0;ax(e,t,r,n)))}(u,n,e,this):x(u,n,e,this)} -return r.__proto__=e,r}function x(e,t,r,n){try{r.apply(n,t)}catch(i){g(e,i)}return e}function A(e,t){return C.all(e,t)}e.Promise=C,C.cast=u,C.all=function(e,t){return Array.isArray(e)?new E(this,e,!0,t).promise:this.reject(new TypeError("Promise.all must be called with an array"),t)},C.race=function(e,t){var r=new this(l,t) -if(!Array.isArray(e))return g(r,new TypeError("Promise.race must be called with an array")),r -for(var n=0;r._state===c&&nf(r,e)),(e=>g(r,e))) -return r},C.resolve=u,C.reject=function(e,t){var r=new this(l,t) -return g(r,e),r},C.prototype._guidKey=R,C.prototype.then=w -class S extends E{constructor(e,t,r){super(e,t,!1,r)}}function j(e,t){return Array.isArray(e)?new S(C,e,t).promise:C.reject(new TypeError("Promise.allSettled must be called with an array"),t)}function M(e,t){return C.race(e,t)}S.prototype._setResultAt=O -class N extends E{constructor(e,t,r=!0,n){super(e,t,r,n)}_init(e,t){this._result={},this._enumerate(t)}_enumerate(e){var t,r,n=Object.keys(e),i=n.length,a=this.promise -this._remaining=i -for(var s=0;a._state===c&&s{throw e})),e}function U(e){var t={resolve:void 0,reject:void 0} -return t.promise=new C(((e,r)=>{t.resolve=e,t.reject=r}),e),t}D.prototype._setResultAt=O -class B extends E{constructor(e,t,r,n){super(e,t,!0,n,r)}_init(e,t,r,n,i){var a=t.length||0 -this.length=a,this._remaining=a,this._result=new Array(a),this._mapFn=i,this._enumerate(t)}_setResultAt(e,t,r,n){if(n)try{this._eachEntry(this._mapFn(r,t),t,!1)}catch(i){this._settledAt(h,t,i,!1)}else this._remaining--,this._result[t]=r}}function $(e,t,r){return"function"!=typeof t?C.reject(new TypeError("map expects a function as a second argument"),r):C.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("map must be called with an array") -return new B(C,e,t,r).promise}))}function z(e,t){return C.resolve(e,t)}function V(e,t){return C.reject(e,t)}var H={} -class q extends B{_checkFullfillment(){if(0===this._remaining&&null!==this._result){var e=this._result.filter((e=>e!==H)) -v(this.promise,e),this._result=null}}_setResultAt(e,t,r,n){if(n){this._result[t]=r -var i,a=!0 -try{i=this._mapFn(r,t)}catch(s){a=!1,this._settledAt(h,t,s,!1)}a&&this._eachEntry(i,t,!1)}else this._remaining--,r||(this._result[t]=H)}}function W(e,t,r){return"function"!=typeof t?C.reject(new TypeError("filter expects function as a second argument"),r):C.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("filter must be called with an array") -return new q(C,e,t,r).promise}))}var G,Y=0 -function Q(e,t){le[Y]=e,le[Y+1]=t,2===(Y+=2)&&re()}var K="undefined"!=typeof window?window:void 0,J=K||{},X=J.MutationObserver||J.WebKitMutationObserver,Z="undefined"==typeof self&&"undefined"!=typeof process&&"[object process]"==={}.toString.call(process),ee="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel -function te(){return()=>setTimeout(ce,1)}var re,ne,ie,ae,se,oe,ue,le=new Array(1e3) -function ce(){for(var e=0;eoe(ce)):X?(ie=0,ae=new X(ce),se=document.createTextNode(""),ae.observe(se,{characterData:!0}),re=()=>se.data=ie=++ie%2):ee?((ne=new MessageChannel).port1.onmessage=ce,re=()=>ne.port2.postMessage(0)):re=void 0===K&&"function"==typeof t?function(){try{var e=Function("return this")().require("vertx") -return void 0!==(G=e.runOnLoop||e.runOnContext)?function(){G(ce)}:te()}catch(t){return te()}}():te(),i.async=Q,i.after=e=>setTimeout(e,0) -var de=e.cast=z,he=(e,t)=>i.async(e,t) -function pe(){i.on(...arguments)}function fe(){i.off(...arguments)}if(e.async=he,"undefined"!=typeof window&&"object"==typeof window.__PROMISE_INSTRUMENTATION__){var me=window.__PROMISE_INSTRUMENTATION__ -for(var ve in a("instrument",!0),me)me.hasOwnProperty(ve)&&pe(ve,me[ve])}var ge={asap:Q,cast:de,Promise:C,EventTarget:n,all:A,allSettled:j,race:M,hash:I,hashSettled:F,rethrow:L,defer:U,denodeify:k,configure:a,on:pe,off:fe,resolve:z,reject:V,map:$,async:he,filter:W} -e.default=ge})),t("@ember/-internals/bootstrap")}(),"undefined"==typeof FastBoot){var preferNative=!1;(function(e){define("fetch",["exports","ember","rsvp"],(function(t,r,n){"use strict" -var i="default"in r?r.default:r,a=("default"in n?n.default:n).Promise,s=["FormData","FileReader","Blob","URLSearchParams","Symbol","ArrayBuffer"],o=s -preferNative&&(o=s.concat(["fetch","Headers","Request","Response","AbortController"])),o.forEach((function(r){e[r]&&Object.defineProperty(t,r,{configurable:!0,get:function(){return e[r]},set:function(t){e[r]=t}})})) -var u=t,l=t;(function(){class e{constructor(){Object.defineProperty(this,"listeners",{value:{},writable:!0,configurable:!0})}addEventListener(e,t,r){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push({callback:t,options:r})}removeEventListener(e,t){if(!(e in this.listeners))return -const r=this.listeners[e] -for(let n=0,i=r.length;n{throw r}))}i.options&&i.options.once&&this.removeEventListener(e.type,i.callback)}return!e.defaultPrevented}}class t extends e{constructor(){super(),this.listeners||e.call(this),Object.defineProperty(this,"aborted",{value:!1,writable:!0,configurable:!0}),Object.defineProperty(this,"onabort",{value:null,writable:!0,configurable:!0}),Object.defineProperty(this,"reason",{value:void 0,writable:!0,configurable:!0})}toString(){return"[object AbortSignal]"}dispatchEvent(e){"abort"===e.type&&(this.aborted=!0,"function"==typeof this.onabort&&this.onabort.call(this,e)),super.dispatchEvent(e)}}class r{constructor(){Object.defineProperty(this,"signal",{value:new t,writable:!0,configurable:!0})}abort(e){let t -try{t=new Event("abort")}catch(n){"undefined"!=typeof document?document.createEvent?(t=document.createEvent("Event"),t.initEvent("abort",!1,!1)):(t=document.createEventObject(),t.type="abort"):t={type:"abort",bubbles:!1,cancelable:!1}}let r=e -if(void 0===r)if("undefined"==typeof document)r=new Error("This operation was aborted"),r.name="AbortError" -else try{r=new DOMException("signal is aborted without reason")}catch(i){r=new Error("This operation was aborted"),r.name="AbortError"}this.signal.reason=r,this.signal.dispatchEvent(t)}toString(){return"[object AbortController]"}}"undefined"!=typeof Symbol&&Symbol.toStringTag&&(r.prototype[Symbol.toStringTag]="AbortController",t.prototype[Symbol.toStringTag]="AbortSignal"),function(e){(function(e){return e.__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL?(console.log("__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL=true is set, will force install polyfill"),!0):"function"==typeof e.Request&&!e.Request.prototype.hasOwnProperty("signal")||!e.AbortController})(e)&&(e.AbortController=r,e.AbortSignal=t)}(void 0!==l?l:global)})();(function(e){var t=void 0!==u&&u||void 0!==l&&l||"undefined"!=typeof global&&global||{},r="URLSearchParams"in t,n="Symbol"in t&&"iterator"in Symbol,i="FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(e){return!1}}(),s="FormData"in t,o="ArrayBuffer"in t -if(o)var c=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],d=ArrayBuffer.isView||function(e){return e&&c.indexOf(Object.prototype.toString.call(e))>-1} -function h(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(e)||""===e)throw new TypeError('Invalid character in header field name: "'+e+'"') -return e.toLowerCase()}function p(e){return"string"!=typeof e&&(e=String(e)),e}function f(e){var t={next:function(){var t=e.shift() -return{done:void 0===t,value:t}}} -return n&&(t[Symbol.iterator]=function(){return t}),t}function m(e){this.map={},e instanceof m?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){if(2!=e.length)throw new TypeError("Headers constructor: expected name/value pair to be length 2, found"+e.length) -this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function v(e){if(!e._noBody)return e.bodyUsed?a.reject(new TypeError("Already read")):void(e.bodyUsed=!0)}function g(e){return new a((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function b(e){var t=new FileReader,r=g(t) -return t.readAsArrayBuffer(e),r}function y(e){if(e.slice)return e.slice(0) -var t=new Uint8Array(e.byteLength) -return t.set(new Uint8Array(e)),t.buffer}function _(){return this.bodyUsed=!1,this._initBody=function(e){var t -this.bodyUsed=this.bodyUsed,this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:i&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:s&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():o&&i&&((t=e)&&DataView.prototype.isPrototypeOf(t))?(this._bodyArrayBuffer=y(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o&&(ArrayBuffer.prototype.isPrototypeOf(e)||d(e))?this._bodyArrayBuffer=y(e):this._bodyText=e=Object.prototype.toString.call(e):(this._noBody=!0,this._bodyText=""),this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var e=v(this) -if(e)return e -if(this._bodyBlob)return a.resolve(this._bodyBlob) -if(this._bodyArrayBuffer)return a.resolve(new Blob([this._bodyArrayBuffer])) -if(this._bodyFormData)throw new Error("could not read FormData body as blob") -return a.resolve(new Blob([this._bodyText]))}),this.arrayBuffer=function(){if(this._bodyArrayBuffer){var e=v(this) -return e||(ArrayBuffer.isView(this._bodyArrayBuffer)?a.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):a.resolve(this._bodyArrayBuffer))}if(i)return this.blob().then(b) -throw new Error("could not read as ArrayBuffer")},this.text=function(){var e,t,r,n,i,s=v(this) -if(s)return s -if(this._bodyBlob)return e=this._bodyBlob,t=new FileReader,r=g(t),n=/charset=([A-Za-z0-9_-]+)/.exec(e.type),i=n?n[1]:"utf-8",t.readAsText(e,i),r -if(this._bodyArrayBuffer)return a.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?i:n),this.mode=r.mode||this.mode||null,this.signal=r.signal||this.signal||function(){if("AbortController"in t)return(new AbortController).signal}(),this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&a)throw new TypeError("Body not allowed for GET or HEAD requests") -if(this._initBody(a),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==r.cache&&"no-cache"!==r.cache)){var s=/([?&])_=[^&]*/ -if(s.test(this.url))this.url=this.url.replace(s,"$1_="+(new Date).getTime()) -else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function O(e){var t=new FormData -return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ") -t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function R(e,t){if(!(this instanceof R))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.') -if(t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].") -this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new m(t.headers),this.url=t.url||"",this._initBody(e)}E.prototype.clone=function(){return new E(this,{body:this._bodyInit})},_.call(E.prototype),_.call(R.prototype),R.prototype.clone=function(){return new R(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},R.error=function(){var e=new R(null,{status:200,statusText:""}) -return e.ok=!1,e.status=0,e.type="error",e} -var T=[301,302,303,307,308] -R.redirect=function(e,t){if(-1===T.indexOf(t))throw new RangeError("Invalid status code") -return new R(null,{status:t,headers:{location:e}})},e.DOMException=t.DOMException -try{new e.DOMException}catch(P){e.DOMException=function(e,t){this.message=e,this.name=t -var r=Error(e) -this.stack=r.stack},e.DOMException.prototype=Object.create(Error.prototype),e.DOMException.prototype.constructor=e.DOMException}function C(r,n){return new a((function(a,s){var u=new E(r,n) -if(u.signal&&u.signal.aborted)return s(new e.DOMException("Aborted","AbortError")) -var l=new XMLHttpRequest -function c(){l.abort()}if(l.onload=function(){var e,t,r={statusText:l.statusText,headers:(e=l.getAllResponseHeaders()||"",t=new m,e.replace(/\r?\n[\t ]+/g," ").split("\r").map((function(e){return 0===e.indexOf("\n")?e.substr(1,e.length):e})).forEach((function(e){var r=e.split(":"),n=r.shift().trim() -if(n){var i=r.join(":").trim() -try{t.append(n,i)}catch(a){console.warn("Response "+a.message)}}})),t)} -0===u.url.indexOf("file://")&&(l.status<200||l.status>599)?r.status=200:r.status=l.status,r.url="responseURL"in l?l.responseURL:r.headers.get("X-Request-URL") -var n="response"in l?l.response:l.responseText -setTimeout((function(){a(new R(n,r))}),0)},l.onerror=function(){setTimeout((function(){s(new TypeError("Network request failed"))}),0)},l.ontimeout=function(){setTimeout((function(){s(new TypeError("Network request timed out"))}),0)},l.onabort=function(){setTimeout((function(){s(new e.DOMException("Aborted","AbortError"))}),0)},l.open(u.method,function(e){try{return""===e&&t.location.href?t.location.href:e}catch(r){return e}}(u.url),!0),"include"===u.credentials?l.withCredentials=!0:"omit"===u.credentials&&(l.withCredentials=!1),"responseType"in l&&(i?l.responseType="blob":o&&(l.responseType="arraybuffer")),n&&"object"==typeof n.headers&&!(n.headers instanceof m||t.Headers&&n.headers instanceof t.Headers)){var d=[] -Object.getOwnPropertyNames(n.headers).forEach((function(e){d.push(h(e)),l.setRequestHeader(e,p(n.headers[e]))})),u.headers.forEach((function(e,t){-1===d.indexOf(t)&&l.setRequestHeader(t,e)}))}else u.headers.forEach((function(e,t){l.setRequestHeader(t,e)})) -u.signal&&(u.signal.addEventListener("abort",c),l.onreadystatechange=function(){4===l.readyState&&u.signal.removeEventListener("abort",c)}),l.send(void 0===u._bodyInit?null:u._bodyInit)}))}C.polyfill=!0,t.fetch||(t.fetch=C,t.Headers=m,t.Request=E,t.Response=R),e.Headers=m,e.Request=E,e.Response=R,e.fetch=C})({}) -if(!u.fetch)throw new Error("fetch is not defined - maybe your browser targets are not covering everything you need?") -var c=0 -function d(e){return c--,e}i.Test?(i.Test.registerWaiter((function(){return 0===c})),t.default=function(){return c++,t.fetch.apply(e,arguments).then((function(e){return e.clone().blob().then(d,d),e}),(function(e){throw d(e),e}))}):t.default=t.fetch,s.forEach((function(e){delete t[e]}))}))})("undefined"!=typeof window&&window||"undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||"undefined"!=typeof global&&global)}define("@ember/string/cache",["exports"],(function(e){"use strict" -function t(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e -var r=e[Symbol.toPrimitive] -if(void 0!==r){var n=r.call(e,t||"default") -if("object"!=typeof n)return n -throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{constructor(e,r,n){t(this,"size",0),t(this,"misses",0),t(this,"hits",0),this.limit=e,this.func=r,this.store=n,this.store=n||new Map}get(e){let t=this.store.get(e) -return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,t=this.set(e,this.func(e)),t)}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}}})),define("@ember/string/index",["exports","@ember/string/cache"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.camelize=function(e){return o.get(e)},e.capitalize=function(e){return v.get(e)},e.classify=function(e){return d.get(e)},e.dasherize=function(e){return i.get(e)},e.decamelize=y,e.getString=function(e){return r[e]},e.getStrings=function(){return r},e.htmlSafe=function(e){throw new Error("htmlSafe is not implemented in the `@ember/string` package. Please import from `@ember/template` instead.")},e.isHTMLSafe=function(e){throw new Error("isHTMLSafe is not implemented in the `@ember/string` package. Please import from `@ember/template` instead.")},e.setStrings=function(e){r=e},e.underscore=function(e){return f.get(e)},e.w=function(e){return e.split(/\s+/)} -let r={} -const n=/[ _]/g,i=new t.default(1e3,(e=>y(e).replace(n,"-"))),a=/(\-|\_|\.|\s)+(.)?/g,s=/(^|\/)([A-Z])/g,o=new t.default(1e3,(e=>e.replace(a,((e,t,r)=>r?r.toUpperCase():"")).replace(s,(e=>e.toLowerCase())))),u=/^(\-|_)+(.)?/,l=/(.)(\-|\_|\.|\s)+(.)?/g,c=/(^|\/|\.)([a-z])/g,d=new t.default(1e3,(e=>{const t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/") -for(let i=0;ie.toUpperCase()))})),h=/([a-z\d])([A-Z]+)/g,p=/\-|\s+/g,f=new t.default(1e3,(e=>e.replace(h,"$1_$2").replace(p,"_").toLowerCase())),m=/(^|\/)([a-z\u00C0-\u024F])/g,v=new t.default(1e3,(e=>e.replace(m,(e=>e.toUpperCase())))),g=/([a-z\d])([A-Z])/g,b=new t.default(1e3,(e=>e.replace(g,"$1_$2").toLowerCase())) -function y(e){return b.get(e)}})),define("@ember/test-waiters/build-waiter",["exports","@ember/debug","@ember/test-waiters/token","@ember/test-waiters/waiter-manager"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._resetWaiterNames=function(){i=new Set},e.default=function(e){0 -return new a(e)} -let i -class a{constructor(e){this.name=e}beginAsync(){return this}endAsync(){}waitUntil(){return!0}debugInfo(){return[]}reset(){}}})),define("@ember/test-waiters/index",["exports","@ember/test-waiters/waiter-manager","@ember/test-waiters/build-waiter","@ember/test-waiters/wait-for-promise","@ember/test-waiters/wait-for"],(function(e,t,r,n,i){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"_reset",{enumerable:!0,get:function(){return t._reset}}),Object.defineProperty(e,"_resetWaiterNames",{enumerable:!0,get:function(){return r._resetWaiterNames}}),Object.defineProperty(e,"buildWaiter",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"getPendingWaiterState",{enumerable:!0,get:function(){return t.getPendingWaiterState}}),Object.defineProperty(e,"getWaiters",{enumerable:!0,get:function(){return t.getWaiters}}),Object.defineProperty(e,"hasPendingWaiters",{enumerable:!0,get:function(){return t.hasPendingWaiters}}),Object.defineProperty(e,"register",{enumerable:!0,get:function(){return t.register}}),Object.defineProperty(e,"unregister",{enumerable:!0,get:function(){return t.unregister}}),Object.defineProperty(e,"waitFor",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"waitForPromise",{enumerable:!0,get:function(){return n.default}})})),define("@ember/test-waiters/token",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{}})),define("@ember/test-waiters/types/index",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0})})),define("@ember/test-waiters/wait-for-promise",["exports","@ember/test-waiters/build-waiter"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){let r=e -0 -return r};(0,t.default)("@ember/test-waiters:promise-waiter")})),define("@ember/test-waiters/wait-for",["exports","@ember/test-waiters/wait-for-promise","@ember/test-waiters/build-waiter"],(function(e,t,r){"use strict" -function n(e,t){return e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(...e){if(e.length<3){let[t,r]=e -return n(t,r)}{let[,,t,r]=e -return t}};(0,r.default)("@ember/test-waiters:generator-waiter")})),define("@ember/test-waiters/waiter-manager",["exports","ember","@ember/test"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e._reset=function(){for(let e of a())e.isRegistered=!1 -n.clear()},e.getPendingWaiterState=s,e.getWaiters=a,e.hasPendingWaiters=o,e.register=function(e){n.set(e.name,e)},e.unregister=function(e){n.delete(e.name)} -const n=function(){let e="TEST_WAITERS",t="undefined"!=typeof Symbol?Symbol.for(e):e,r=i(),n=r[t] -return void 0===n&&(n=r[t]=new Map),n}() -function i(){if("undefined"!=typeof globalThis)return globalThis -if("undefined"!=typeof self)return self -if("undefined"!=typeof window)return window -if("undefined"!=typeof global)return global -throw new Error("unable to locate global object")}function a(){let e=[] -return n.forEach((t=>{e.push(t)})),e}function s(){let e={pending:0,waiters:{}} -return n.forEach((t=>{if(!t.waitUntil()){e.pending++ -let r=t.debugInfo() -e.waiters[t.name]=r||!0}})),e}function o(){return s().pending>0}t.default.Test&&(0,r.registerWaiter)((()=>!o()))})),define("@embroider/macros/es-compat2",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return e?.__esModule?e:{default:e,...e}}})),define("@embroider/macros/runtime",["exports"],(function(e){"use strict" -function t(e){return n.packages[e]}function r(){return n.global}Object.defineProperty(e,"__esModule",{value:!0}),e.config=t,e.each=function(e){if(!Array.isArray(e))throw new Error("the argument to the each() macro must be an array") -return e},e.getGlobalConfig=r,e.isTesting=function(){let e=n.global,t=e&&e["@embroider/macros"] -return Boolean(t&&t.isTesting)},e.macroCondition=function(e){return e} -const n={packages:{},global:{}} -let i="undefined"!=typeof window?window._embroider_macros_runtime_config:void 0 -if(i){let e={config:t,getGlobalConfig:r,setConfig(e,t){n.packages[e]=t},setGlobalConfig(e,t){n.global[e]=t}} -for(let t of i)t(e)}})),define("@glimmer/component/-private/base-component-manager",["exports","@glimmer/component/-private/component"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return class{static create(e){return new this(t(e))}constructor(t){var n,i,a -n=this,a=r,(i=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e -var r=e[Symbol.toPrimitive] -if(void 0!==r){var n=r.call(e,t||"default") -if("object"!=typeof n)return n -throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(i="capabilities"))in n?Object.defineProperty(n,i,{value:a,enumerable:!0,configurable:!0,writable:!0}):n[i]=a,e(this,t)}createComponent(e,r){return new e(t(this),r.named)}getContext(e){return e}}}})),define("@glimmer/component/-private/component",["exports","@glimmer/component/-private/owner","@glimmer/component/-private/destroyables"],(function(e,t,r){"use strict" -function n(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e -var r=e[Symbol.toPrimitive] -if(void 0!==r){var n=r.call(e,t||"default") -if("object"!=typeof n)return n -throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ARGS_SET=void 0 -e.ARGS_SET=void 0 -e.default=class{constructor(e,r){n(this,"args",void 0),this.args=r,(0,t.setOwner)(this,e)}get isDestroying(){return(0,r.isDestroying)(this)}get isDestroyed(){return(0,r.isDestroyed)(this)}willDestroy(){}}})),define("@glimmer/component/-private/destroyables",["exports","ember"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.isDestroying=e.isDestroyed=void 0 -e.isDestroying=t.default._isDestroying,e.isDestroyed=t.default._isDestroyed})),define("@glimmer/component/-private/ember-component-manager",["exports","ember","@ember/object","@ember/application","@ember/component","@ember/runloop","@glimmer/component/-private/base-component-manager","@glimmer/component/-private/destroyables"],(function(e,t,r,n,i,a,s,o){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -const{setDestroyed:u,setDestroying:l}=o,c=(0,i.capabilities)("3.13",{destructor:!0,asyncLifecycleCallbacks:!1,updateHook:!1}),d=t.default.destroy,h=t.default._registerDestructor -class p extends((0,s.default)(n.setOwner,n.getOwner,c)){createComponent(e,t){const r=super.createComponent(e,t) -return h(r,(()=>{r.willDestroy()})),r}destroyComponent(e){d(e)}}e.default=p})),define("@glimmer/component/-private/owner",["exports","@ember/application"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"setOwner",{enumerable:!0,get:function(){return t.setOwner}})})),define("@glimmer/component/index",["exports","@ember/component","@glimmer/component/-private/ember-component-manager","@glimmer/component/-private/component"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -let i=n.default;(0,t.setComponentManager)((e=>new r.default(e)),i) -e.default=i})),define("ember-cli-app-version/initializer-factory",["exports","ember"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){let n=!1 -return function(){!n&&e&&t&&(r.register(e,t),n=!0)}} -const{libraries:r}=t.default})),define("ember-cli-app-version/utils/regexp",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.versionRegExp=e.versionExtendedRegExp=e.shaRegExp=void 0 -e.versionRegExp=/\d+[.]\d+[.]\d+/,e.versionExtendedRegExp=/\d+[.]\d+[.]\d+-[a-z]*([.]\d+)?/,e.shaRegExp=/[a-z\d]{8}$/})),define("ember-fetch/errors",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.isAbortError=function(e){return"AbortError"==e.name},e.isBadRequestResponse=function(e){return 400===e.status},e.isConflictResponse=function(e){return 409===e.status},e.isForbiddenResponse=function(e){return 403===e.status},e.isGoneResponse=function(e){return 410===e.status},e.isInvalidResponse=function(e){return 422===e.status},e.isNotFoundResponse=function(e){return 404===e.status},e.isServerErrorResponse=function(e){return e.status>=500&&e.status<600},e.isUnauthorizedResponse=function(e){return 401===e.status}})),define("ember-fetch/types",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.isPlainObject=function(e){return"[object Object]"===Object.prototype.toString.call(e)}})),define("ember-fetch/utils/determine-body-promise",["exports","@ember/debug"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,r){return e.text().then((function(n){let i=n -try{i=JSON.parse(n)}catch(a){if(!(a instanceof SyntaxError))throw a -const s=e.status -!e.ok||204!==s&&205!==s&&"HEAD"!==r.method?(0,t.debug)(`This response was unable to be parsed as json: ${n}`):i=void 0}return i}))}})),define("ember-fetch/utils/mung-options-for-fetch",["exports","@ember/polyfills","ember-fetch/utils/serialize-query-params","ember-fetch/types"],(function(e,t,r,n){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){const i=(0,t.assign)({credentials:"same-origin"},e) -if(i.method=(i.method||i.type||"GET").toUpperCase(),i.data)if("GET"===i.method||"HEAD"===i.method){if(Object.keys(i.data).length){const e=i.url.indexOf("?")>-1?"&":"?" -i.url+=`${e}${(0,r.serializeQueryParams)(i.data)}`}}else(0,n.isPlainObject)(i.data)?i.body=JSON.stringify(i.data):i.body=i.data -return i}})),define("ember-fetch/utils/serialize-query-params",["exports","ember-fetch/types"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.serializeQueryParams=n -const r=/\[\]$/ -function n(e){var n=[] -return function e(a,s){var o,u,l -if(a)if(Array.isArray(s))for(o=0,u=s.length;o1){let e=t[0] -return"component"===e||"helper"===e||"modifier"===e||"template"===e&&0===t[1].indexOf("components/")?e+":"+t[1].replace(/_/g,"-"):e+":"+(0,i.dasherize)(t[1].replace(/\./g,"/"))}return e}pluralize(e){return this.pluralizedTypes[e]||(this.pluralizedTypes[e]=e+"s")}podBasedLookupWithPrefix(e,t){let r=t.fullNameWithoutType -return"template"===t.type&&(r=r.replace(/^components\//,"")),e+"/"+r+"/"+t.type}podBasedModuleName(e){let t=this.namespace.podModulePrefix||this.namespace.modulePrefix -return this.podBasedLookupWithPrefix(t,e)}podBasedComponentsInSubdir(e){let t=this.namespace.podModulePrefix||this.namespace.modulePrefix -if(t+="/components","component"===e.type||/^components/.test(e.fullNameWithoutType))return this.podBasedLookupWithPrefix(t,e)}resolveEngine(e){let t=e.fullNameWithoutType+"/engine" -if(this._moduleRegistry.has(t))return this._extractDefaultExport(t)}resolveRouteMap(e){let t=e.fullNameWithoutType,r=t+"/routes" -if(this._moduleRegistry.has(r)){let e=this._extractDefaultExport(r) -return e}}resolveTemplate(e){let r=this.resolveOther(e) -return null==r&&(r=t.default.TEMPLATES[e.fullNameWithoutType]),r}mainModuleName(e){if("main"===e.fullNameWithoutType)return e.prefix+"/"+e.type}defaultModuleName(e){return e.prefix+"/"+this.pluralize(e.type)+"/"+e.fullNameWithoutType}nestedColocationComponentModuleName(e){if("component"===e.type)return e.prefix+"/"+this.pluralize(e.type)+"/"+e.fullNameWithoutType+"/index"}prefix(e){let t=this.namespace.modulePrefix -return this.namespace[e.type+"Prefix"]&&(t=this.namespace[e.type+"Prefix"]),t}findModuleName(e,t){let r,n=this.moduleNameLookupPatterns -for(let i=0,a=n.length;i60?".":new Array(60-r.fullName.length).join("."),n||(n=this.lookupDescription(r)),console&&console.info&&console.info(a,r.fullName,i,n)}knownForType(e){let t=this._moduleRegistry.moduleNames(),r=Object.create(null) -for(let n=0,i=t.length;nn.length+i.length)return e+":"+t.slice(a+n.length,s) -let o=r+"/"+this.pluralize(e)+"/" -return 0===t.indexOf(o)&&t.length>o.length?e+":"+t.slice(o.length):void 0}_extractDefaultExport(e){let t=this._moduleRegistry.get(e,null,null,!0) -return t&&t.default&&(t=t.default),t}}s(u,"moduleBasedResolver",!0) -e.default=u})),define("ember-resolver/string/cache",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default=class{constructor(e,t,r){this.limit=e,this.func=t,this.store=r,this.size=0,this.misses=0,this.hits=0,this.store=r||new Map}get(e){let t=this.store.get(e) -return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,t=this.set(e,this.func(e)),t)}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}}})),define("ember-resolver/string/index",["exports","ember-resolver/string/cache"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.classify=function(e){return u.get(e)},e.dasherize=function(e){return i.get(e)},e.decamelize=f,e.getString=function(e){return r[e]},e.getStrings=function(){return r},e.setStrings=function(e){r=e},e.underscore=function(e){return d.get(e)} -let r={} -const n=/[ _]/g,i=new t.default(1e3,(e=>f(e).replace(n,"-"))),a=/^(\-|_)+(.)?/,s=/(.)(\-|\_|\.|\s)+(.)?/g,o=/(^|\/|\.)([a-z])/g,u=new t.default(1e3,(e=>{const t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/") -for(let i=0;ie.toUpperCase()))})),l=/([a-z\d])([A-Z]+)/g,c=/\-|\s+/g,d=new t.default(1e3,(e=>e.replace(l,"$1_$2").replace(c,"_").toLowerCase())),h=/([a-z\d])([A-Z])/g,p=new t.default(1e3,(e=>e.replace(h,"$1_$2").toLowerCase())) -function f(e){return p.get(e)}})) -define("ember-resolver/utils/class-factory",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return{create:t=>"function"==typeof e.extend?e.extend(t):e}}})),define("ember-test-waiters/index",["exports","@ember/debug","@ember/test-waiters"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.keys(r).forEach((function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===r[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return r[t]}}))}))})),define("ember-tracked-storage-polyfill/index",["exports","@glimmer/tracking","@ember/debug"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.createStorage=function(e,t=a){return new i(e,t)},e.getValue=function(e){return e._value},e.setValue=function(e,t){const{_isEqual:r,_lastValue:n}=e -r(t,n)||(e._value=e._lastValue=t)} -var n=function(e,t,r,n){var i,a=arguments.length,s=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n -if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) -else for(var o=e.length-1;o>=0;o--)(i=e[o])&&(s=(a<3?i(s):a>3?i(t,r,s):i(t,r))||s) -return a>3&&s&&Object.defineProperty(t,r,s),s} -class i{constructor(e,t){this._value=this._lastValue=e,this._isEqual=t}}function a(e,t){return e===t}n([t.tracked],i.prototype,"_value",void 0)})) diff --git a/ember/ember-5.5.0.template-compiler.js b/ember/ember-5.5.0.template-compiler.js deleted file mode 100644 index 718b9b7..0000000 --- a/ember/ember-5.5.0.template-compiler.js +++ /dev/null @@ -1,19195 +0,0 @@ -(function() { -/*! - * @overview Ember - JavaScript Application Framework - * @copyright Copyright 2011 Tilde Inc. and contributors - * Portions Copyright 2006-2011 Strobe Inc. - * Portions Copyright 2008-2011 Apple Inc. All rights reserved. - * @license Licensed under MIT license - * See https://raw.github.com/emberjs/ember.js/master/LICENSE - * @version 5.5.0 - */ - -/* eslint-disable no-var */ -/* globals global globalThis self */ -/* eslint-disable-next-line no-unused-vars */ -var define, require; - -(function () { - var globalObj = - typeof globalThis !== 'undefined' - ? globalThis - : typeof self !== 'undefined' - ? self - : typeof window !== 'undefined' - ? window - : typeof global !== 'undefined' - ? global - : null; - - if (globalObj === null) { - throw new Error('unable to locate global object'); - } - - if (typeof globalObj.define === 'function' && typeof globalObj.require === 'function') { - define = globalObj.define; - require = globalObj.require; - - return; - } - - var registry = Object.create(null); - var seen = Object.create(null); - - function missingModule(name, referrerName) { - if (referrerName) { - throw new Error('Could not find module ' + name + ' required by: ' + referrerName); - } else { - throw new Error('Could not find module ' + name); - } - } - - function internalRequire(_name, referrerName) { - var name = _name; - var mod = registry[name]; - - if (!mod) { - name = name + '/index'; - mod = registry[name]; - } - - var exports = seen[name]; - - if (exports !== undefined) { - return exports; - } - - exports = seen[name] = {}; - - if (!mod) { - missingModule(_name, referrerName); - } - - var deps = mod.deps; - var callback = mod.callback; - var reified = new Array(deps.length); - - for (var i = 0; i < deps.length; i++) { - if (deps[i] === 'exports') { - reified[i] = exports; - } else if (deps[i] === 'require') { - reified[i] = require; - } else { - reified[i] = require(deps[i], name); - } - } - - callback.apply(this, reified); - - return exports; - } - - require = function (name) { - return internalRequire(name, null); - }; - - define = function (name, deps, callback) { - registry[name] = { deps: deps, callback: callback }; - }; - - // setup `require` module - require['default'] = require; - - require.has = function registryHas(moduleName) { - return Boolean(registry[moduleName]) || Boolean(registry[moduleName + '/index']); - }; - - require._eak_seen = require.entries = registry; -})(); - -define("@ember/-internals/browser-environment/index", ["exports"], function (_exports) { - "use strict"; - - Object.defineProperty(_exports, "__esModule", { - value: true - }); - _exports.window = _exports.userAgent = _exports.location = _exports.isFirefox = _exports.isChrome = _exports.history = _exports.hasDOM = void 0; - // check if window exists and actually is the global - var hasDom = _exports.hasDOM = typeof self === 'object' && self !== null && self.Object === Object && typeof Window !== 'undefined' && self.constructor === Window && typeof document === 'object' && document !== null && self.document === document && typeof location === 'object' && location !== null && self.location === location && typeof history === 'object' && history !== null && self.history === history && typeof navigator === 'object' && navigator !== null && self.navigator === navigator && typeof navigator.userAgent === 'string'; - var window = _exports.window = hasDom ? self : null; - var location$1 = _exports.location = hasDom ? self.location : null; - var history$1 = _exports.history = hasDom ? self.history : null; - var userAgent = _exports.userAgent = hasDom ? self.navigator.userAgent : 'Lynx (textmode)'; - var isChrome = _exports.isChrome = hasDom ? typeof chrome === 'object' && !(typeof opera === 'object') : false; - var isFirefox = _exports.isFirefox = hasDom ? /Firefox|FxiOS/.test(userAgent) : false; -}); -define("@ember/-internals/environment/index", ["exports"], function (_exports) { - "use strict"; - - Object.defineProperty(_exports, "__esModule", { - value: true - }); - _exports.context = _exports.ENV = void 0; - _exports.getENV = getENV; - _exports.getLookup = getLookup; - _exports.global = void 0; - _exports.setLookup = setLookup; - // from lodash to catch fake globals - function checkGlobal(value) { - return value && value.Object === Object ? value : undefined; - } - // element ids can ruin global miss checks - function checkElementIdShadowing(value) { - return value && value.nodeType === undefined ? value : undefined; - } - // export real global - var global$1 = _exports.global = checkGlobal(checkElementIdShadowing(typeof global === 'object' && global)) || checkGlobal(typeof self === 'object' && self) || checkGlobal(typeof window === 'object' && window) || typeof mainContext !== 'undefined' && mainContext || - // set before strict mode in Ember loader/wrapper - new Function('return this')(); // eval outside of strict mode - - // legacy imports/exports/lookup stuff (should we keep this??) - var context = _exports.context = function (global, Ember) { - return Ember === undefined ? { - imports: global, - exports: global, - lookup: global - } : { - // import jQuery - imports: Ember.imports || global, - // export Ember - exports: Ember.exports || global, - // search for Namespaces - lookup: Ember.lookup || global - }; - }(global$1, global$1.Ember); - function getLookup() { - return context.lookup; - } - function setLookup(value) { - context.lookup = value; - } - - /** - The hash of environment variables used to control various configuration - settings. To specify your own or override default settings, add the - desired properties to a global hash named `EmberENV` (or `ENV` for - backwards compatibility with earlier versions of Ember). The `EmberENV` - hash must be created before loading Ember. - - @class EmberENV - @type Object - @public - */ - var ENV = _exports.ENV = { - ENABLE_OPTIONAL_FEATURES: false, - /** - Determines whether Ember should add to `Array` - native object prototypes, a few extra methods in order to provide a more - friendly API. - We generally recommend leaving this option set to true however, if you need - to turn it off, you can add the configuration property - `EXTEND_PROTOTYPES` to `EmberENV` and set it to `false`. - Note, when disabled (the default configuration for Ember Addons), you will - instead have to access all methods and functions from the Ember - namespace. - @property EXTEND_PROTOTYPES - @type Boolean - @default true - @for EmberENV - @public - */ - EXTEND_PROTOTYPES: { - Array: true - }, - /** - The `LOG_STACKTRACE_ON_DEPRECATION` property, when true, tells Ember to log - a full stack trace during deprecation warnings. - @property LOG_STACKTRACE_ON_DEPRECATION - @type Boolean - @default true - @for EmberENV - @public - */ - LOG_STACKTRACE_ON_DEPRECATION: true, - /** - The `LOG_VERSION` property, when true, tells Ember to log versions of all - dependent libraries in use. - @property LOG_VERSION - @type Boolean - @default true - @for EmberENV - @public - */ - LOG_VERSION: true, - RAISE_ON_DEPRECATION: false, - STRUCTURED_PROFILE: false, - /** - Whether to insert a `
` wrapper around the - application template. See RFC #280. - This is not intended to be set directly, as the implementation may change in - the future. Use `@ember/optional-features` instead. - @property _APPLICATION_TEMPLATE_WRAPPER - @for EmberENV - @type Boolean - @default true - @private - */ - _APPLICATION_TEMPLATE_WRAPPER: true, - /** - Whether to use Glimmer Component semantics (as opposed to the classic "Curly" - components semantics) for template-only components. See RFC #278. - This is not intended to be set directly, as the implementation may change in - the future. Use `@ember/optional-features` instead. - @property _TEMPLATE_ONLY_GLIMMER_COMPONENTS - @for EmberENV - @type Boolean - @default false - @private - */ - _TEMPLATE_ONLY_GLIMMER_COMPONENTS: false, - /** - Whether to perform extra bookkeeping needed to make the `captureRenderTree` - API work. - This has to be set before the ember JavaScript code is evaluated. This is - usually done by setting `window.EmberENV = { _DEBUG_RENDER_TREE: true };` - before the "vendor" `'; - }; - return EventedTokenizer; - }(); - var Tokenizer = _exports.Tokenizer = /** @class */function () { - function Tokenizer(entityParser, options) { - if (options === void 0) { - options = {}; - } - this.options = options; - this.token = null; - this.startLine = 1; - this.startColumn = 0; - this.tokens = []; - this.tokenizer = new EventedTokenizer(this, entityParser, options.mode); - this._currentAttribute = undefined; - } - Tokenizer.prototype.tokenize = function (input) { - this.tokens = []; - this.tokenizer.tokenize(input); - return this.tokens; - }; - Tokenizer.prototype.tokenizePart = function (input) { - this.tokens = []; - this.tokenizer.tokenizePart(input); - return this.tokens; - }; - Tokenizer.prototype.tokenizeEOF = function () { - this.tokens = []; - this.tokenizer.tokenizeEOF(); - return this.tokens[0]; - }; - Tokenizer.prototype.reset = function () { - this.token = null; - this.startLine = 1; - this.startColumn = 0; - }; - Tokenizer.prototype.current = function () { - var token = this.token; - if (token === null) { - throw new Error('token was unexpectedly null'); - } - if (arguments.length === 0) { - return token; - } - for (var i = 0; i < arguments.length; i++) { - if (token.type === arguments[i]) { - return token; - } - } - throw new Error("token type was unexpectedly " + token.type); - }; - Tokenizer.prototype.push = function (token) { - this.token = token; - this.tokens.push(token); - }; - Tokenizer.prototype.currentAttribute = function () { - return this._currentAttribute; - }; - Tokenizer.prototype.addLocInfo = function () { - if (this.options.loc) { - this.current().loc = { - start: { - line: this.startLine, - column: this.startColumn - }, - end: { - line: this.tokenizer.line, - column: this.tokenizer.column - } - }; - } - this.startLine = this.tokenizer.line; - this.startColumn = this.tokenizer.column; - }; - // Data - Tokenizer.prototype.beginDoctype = function () { - this.push({ - type: "Doctype" /* Doctype */, - name: '' - }); - }; - Tokenizer.prototype.appendToDoctypeName = function (char) { - this.current("Doctype" /* Doctype */).name += char; - }; - Tokenizer.prototype.appendToDoctypePublicIdentifier = function (char) { - var doctype = this.current("Doctype" /* Doctype */); - if (doctype.publicIdentifier === undefined) { - doctype.publicIdentifier = char; - } else { - doctype.publicIdentifier += char; - } - }; - Tokenizer.prototype.appendToDoctypeSystemIdentifier = function (char) { - var doctype = this.current("Doctype" /* Doctype */); - if (doctype.systemIdentifier === undefined) { - doctype.systemIdentifier = char; - } else { - doctype.systemIdentifier += char; - } - }; - Tokenizer.prototype.endDoctype = function () { - this.addLocInfo(); - }; - Tokenizer.prototype.beginData = function () { - this.push({ - type: "Chars" /* Chars */, - chars: '' - }); - }; - Tokenizer.prototype.appendToData = function (char) { - this.current("Chars" /* Chars */).chars += char; - }; - Tokenizer.prototype.finishData = function () { - this.addLocInfo(); - }; - // Comment - Tokenizer.prototype.beginComment = function () { - this.push({ - type: "Comment" /* Comment */, - chars: '' - }); - }; - Tokenizer.prototype.appendToCommentData = function (char) { - this.current("Comment" /* Comment */).chars += char; - }; - Tokenizer.prototype.finishComment = function () { - this.addLocInfo(); - }; - // Tags - basic - Tokenizer.prototype.tagOpen = function () {}; - Tokenizer.prototype.beginStartTag = function () { - this.push({ - type: "StartTag" /* StartTag */, - tagName: '', - attributes: [], - selfClosing: false - }); - }; - Tokenizer.prototype.beginEndTag = function () { - this.push({ - type: "EndTag" /* EndTag */, - tagName: '' - }); - }; - Tokenizer.prototype.finishTag = function () { - this.addLocInfo(); - }; - Tokenizer.prototype.markTagAsSelfClosing = function () { - this.current("StartTag" /* StartTag */).selfClosing = true; - }; - // Tags - name - Tokenizer.prototype.appendToTagName = function (char) { - this.current("StartTag" /* StartTag */, "EndTag" /* EndTag */).tagName += char; - }; - // Tags - attributes - Tokenizer.prototype.beginAttribute = function () { - this._currentAttribute = ['', '', false]; - }; - Tokenizer.prototype.appendToAttributeName = function (char) { - this.currentAttribute()[0] += char; - }; - Tokenizer.prototype.beginAttributeValue = function (isQuoted) { - this.currentAttribute()[2] = isQuoted; - }; - Tokenizer.prototype.appendToAttributeValue = function (char) { - this.currentAttribute()[1] += char; - }; - Tokenizer.prototype.finishAttributeValue = function () { - this.current("StartTag" /* StartTag */).attributes.push(this._currentAttribute); - }; - Tokenizer.prototype.reportSyntaxError = function (message) { - this.current().syntaxError = message; - }; - return Tokenizer; - }(); - function tokenize(input, options) { - var tokenizer = new Tokenizer(new EntityParser(namedCharRefs), options); - return tokenizer.tokenize(input); - } -}); -(function (m) { if (typeof module === "object" && module.exports) { module.exports = m } }(require("ember-template-compiler"))); -}()); -//# sourceMappingURL=ember-template-compiler.map diff --git a/ember/ember-5.9.0.prod.js b/ember/ember-git-01-a474b88f.prod.js similarity index 99% rename from ember/ember-5.9.0.prod.js rename to ember/ember-git-01-a474b88f.prod.js index c3678ea..aada200 100644 --- a/ember/ember-5.9.0.prod.js +++ b/ember/ember-git-01-a474b88f.prod.js @@ -33,7 +33,7 @@ if(!r||"new"===r.state)return(r=new s(e,[],a,null)).module.exports=t,r.state="fi * Portions Copyright 2008-2011 Apple Inc. All rights reserved. * @license Licensed under MIT license * See https://raw.github.com/emberjs/ember.js/master/LICENSE - * @version 5.9.0 + * @version 5.10.0-alpha.1+a474b88f */ var e,t;(function(){var r="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:null if(null===r)throw new Error("unable to locate global object") @@ -102,7 +102,7 @@ function i(e){return Object.hasOwnProperty.call(e.since,"enabled")||t.ENV._ALL_D if(t.isRemoved)throw new Error(`The API deprecated by ${r.id} was removed in ember-source ${r.until}. The message was: ${e}. Please see ${r.url} for more details.`)},e.emberVersionGte=s,e.isRemoved=a let o=parseFloat(t.ENV._OVERRIDE_DEPRECATION_VERSION??r.VERSION) function s(e,t=o){let r=e.replace(/(\.0+)/g,"") -return t>=parseFloat(r)}function a(e){return s(e.until)}function l(e){return{options:e,test:!i(e),isEnabled:i(e)||a(e),isRemoved:a(e)}}e.DEPRECATIONS={DEPRECATE_IMPLICIT_ROUTE_MODEL:l({id:"deprecate-implicit-route-model",for:"ember-source",since:{available:"5.3.0",enabled:"5.3.0"},until:"6.0.0",url:"https://deprecations.emberjs.com/v5.x/#toc_deprecate-implicit-route-model"}),DEPRECATE_TEMPLATE_ACTION:l({id:"template-action",url:"https://deprecations.emberjs.com/id/template-action",until:"6.0.0",for:"ember-source",since:{available:"5.9.0",enabled:"5.9.0"}})}})),e("@ember/-internals/environment/index",["exports"],(function(e){"use strict" +return t>=parseFloat(r)}function a(e){return s(e.until)}function l(e){return{options:e,test:!i(e),isEnabled:i(e)||a(e),isRemoved:a(e)}}e.DEPRECATIONS={DEPRECATE_IMPLICIT_ROUTE_MODEL:l({id:"deprecate-implicit-route-model",for:"ember-source",since:{available:"5.3.0",enabled:"5.3.0"},until:"6.0.0",url:"https://deprecations.emberjs.com/v5.x/#toc_deprecate-implicit-route-model"}),DEPRECATE_TEMPLATE_ACTION:l({id:"template-action",url:"https://deprecations.emberjs.com/id/template-action",until:"6.0.0",for:"ember-source",since:{available:"5.9.0"}})}})),e("@ember/-internals/environment/index",["exports"],(function(e){"use strict" function t(e){return e&&e.Object===Object?e:void 0}Object.defineProperty(e,"__esModule",{value:!0}),e.context=e.ENV=void 0,e.getENV=function(){return o},e.getLookup=function(){return i.lookup},e.global=void 0,e.setLookup=function(e){i.lookup=e} var r,n=e.global=t((r="object"==typeof global&&global)&&void 0===r.nodeType?r:void 0)||t("object"==typeof self&&self)||t("object"==typeof window&&window)||"undefined"!=typeof mainContext&&mainContext||new Function("return this")() const i=e.context=function(e,t){return void 0===t?{imports:e,exports:e,lookup:e}:{imports:t.imports||e,exports:t.exports||e,lookup:t.lookup||e}}(n,n.Ember) @@ -3102,7 +3102,7 @@ function se(e){Object.defineProperty(re,e,{configurable:!0,enumerable:!0,get:()= return t.Adapter=r,t.QUnitAdapter=n,Object.defineProperty(re,"Test",{configurable:!0,writable:!0,enumerable:!0,value:t}),Object.defineProperty(re,"setupForTesting",{configurable:!0,writable:!0,enumerable:!0,value:i}),"Test"===e?t:i}}})}se("HTMLBars"),se("Handlebars"),ae("Test"),ae("setupForTesting"),(0,S.runLoadHooks)("Ember") e.default=re})),e("ember/version",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default="5.9.0"})) +e.default="5.10.0-alpha.1+a474b88f"})) e("route-recognizer",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 var t=Object.create @@ -3603,19 +3603,18 @@ const n={packages:{},global:{}} let i="undefined"!=typeof window?window._embroider_macros_runtime_config:void 0 if(i){let e={config:t,getGlobalConfig:r,setConfig(e,t){n.packages[e]=t},setGlobalConfig(e,t){n.global[e]=t}} for(let t of i)t(e)}})),define("@glimmer/component/-private/base-component-manager",["exports","@glimmer/component/-private/component"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return class{static create(e){return new this(t(e))}constructor(t){var n,i,o -n=this,o=r,(i=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return class{static create(e){return new this(t(e))}constructor(t){(function(e,t,r){(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e var r=e[Symbol.toPrimitive] if(void 0!==r){var n=r.call(e,t||"default") if("object"!=typeof n)return n throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(i="capabilities"))in n?Object.defineProperty(n,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[i]=o,e(this,t)}createComponent(e,r){return new e(t(this),r.named)}getContext(e){return e}}}})),define("@glimmer/component/-private/component",["exports","@glimmer/component/-private/owner","@glimmer/component/-private/destroyables"],(function(e,t,r){"use strict" -function n(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})(this,"capabilities",r),e(this,t)}createComponent(e,r){return new e(t(this),r.named)}getContext(e){return e}}}})),define("@glimmer/component/-private/component",["exports","@glimmer/component/-private/owner","@glimmer/component/-private/destroyables"],(function(e,t,r){"use strict" +function n(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e var r=e[Symbol.toPrimitive] if(void 0!==r){var n=r.call(e,t||"default") if("object"!=typeof n)return n throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ARGS_SET=void 0 +return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ARGS_SET=void 0 e.ARGS_SET=void 0 e.default=class{constructor(e,r){n(this,"args",void 0),this.args=r,(0,t.setOwner)(this,e)}get isDestroying(){return(0,r.isDestroying)(this)}get isDestroyed(){return(0,r.isDestroyed)(this)}willDestroy(){}}})),define("@glimmer/component/-private/destroyables",["exports","ember"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.isDestroying=e.isDestroyed=void 0 diff --git a/ember/ember-5.9.0.template-compiler.js b/ember/ember-git-01-a474b88f.template-compiler.js similarity index 99% rename from ember/ember-5.9.0.template-compiler.js rename to ember/ember-git-01-a474b88f.template-compiler.js index a0c3ad6..a6634b8 100644 --- a/ember/ember-5.9.0.template-compiler.js +++ b/ember/ember-git-01-a474b88f.template-compiler.js @@ -6,7 +6,7 @@ * Portions Copyright 2008-2011 Apple Inc. All rights reserved. * @license Licensed under MIT license * See https://raw.github.com/emberjs/ember.js/master/LICENSE - * @version 5.9.0 + * @version 5.10.0-alpha.1+a474b88f */ /* eslint-disable no-var */ @@ -17088,7 +17088,7 @@ define("ember/version", ["exports"], function (_exports) { value: true }); _exports.default = void 0; - var _default = _exports.default = "5.9.0"; + var _default = _exports.default = "5.10.0-alpha.1+a474b88f"; }); define("simple-html-tokenizer", ["exports"], function (_exports) { "use strict"; diff --git a/ember/ember-git-02-a4359032.prod.js b/ember/ember-git-02-a4359032.prod.js new file mode 100644 index 0000000..58fee31 --- /dev/null +++ b/ember/ember-git-02-a4359032.prod.js @@ -0,0 +1,3734 @@ +window.EmberENV=function(e,t){for(var r in t)e[r]=t[r] +return e}(window.EmberENV||{},{EXTEND_PROTOTYPES:!1,FEATURES:{},_APPLICATION_TEMPLATE_WRAPPER:!1,_DEFAULT_ASYNC_OBSERVERS:!0,_JQUERY_INTEGRATION:!1,_TEMPLATE_ONLY_GLIMMER_COMPONENTS:!0}) +var loader,define,requireModule,require,requirejs,runningTests=!1 +if(function(e){"use strict" +function t(){var e=Object.create(null) +return e.__=void 0,delete e.__,e}var r={loader:loader,define:define,requireModule:requireModule,require:require,requirejs:requirejs} +requirejs=require=requireModule=function(e){for(var t=[],r=u(e,"(require)",t),n=t.length-1;n>=0;n--)t[n].exports() +return r.module.exports},loader={noConflict:function(t){var n,i +for(n in t)t.hasOwnProperty(n)&&r.hasOwnProperty(n)&&(i=t[n],e[i]=e[n],e[n]=r[n])},makeDefaultExport:!0} +var n=t(),i=(t(),0) +var o=["require","exports","module"] +function s(e,t,r,n){this.uuid=i++,this.id=e,this.deps=!t.length&&r.length?o:t,this.module={exports:{}},this.callback=r,this.hasExportsAsDep=!1,this.isAlias=n,this.reified=new Array(t.length),this.state="new"}function a(){}function l(e){this.id=e}function u(e,t,r){for(var i=n[e]||n[e+"/index"];i&&i.isAlias;)i=n[i.id]||n[i.id+"/index"] +return i||function(e,t){throw new Error("Could not find module `"+e+"` imported from `"+t+"`")}(e,t),r&&"pending"!==i.state&&"finalized"!==i.state&&(i.findDeps(r),r.push(i)),i}function c(e,t){if("."!==e.charAt(0))return e +for(var r=e.split("/"),n=t.split("/").slice(0,-1),i=0,o=r.length;i=parseFloat(r)}function a(e){return s(e.until)}function l(e){return{options:e,test:!i(e),isEnabled:i(e)||a(e),isRemoved:a(e)}}e.DEPRECATIONS={DEPRECATE_IMPLICIT_ROUTE_MODEL:l({id:"deprecate-implicit-route-model",for:"ember-source",since:{available:"5.3.0",enabled:"5.3.0"},until:"6.0.0",url:"https://deprecations.emberjs.com/v5.x/#toc_deprecate-implicit-route-model"}),DEPRECATE_TEMPLATE_ACTION:l({id:"template-action",url:"https://deprecations.emberjs.com/id/template-action",until:"6.0.0",for:"ember-source",since:{available:"5.9.0"}})}})),e("@ember/-internals/environment/index",["exports"],(function(e){"use strict" +function t(e){return e&&e.Object===Object?e:void 0}Object.defineProperty(e,"__esModule",{value:!0}),e.context=e.ENV=void 0,e.getENV=function(){return o},e.getLookup=function(){return i.lookup},e.global=void 0,e.setLookup=function(e){i.lookup=e} +var r,n=e.global=t((r="object"==typeof global&&global)&&void 0===r.nodeType?r:void 0)||t("object"==typeof self&&self)||t("object"==typeof window&&window)||"undefined"!=typeof mainContext&&mainContext||new Function("return this")() +const i=e.context=function(e,t){return void 0===t?{imports:e,exports:e,lookup:e}:{imports:t.imports||e,exports:t.exports||e,lookup:t.lookup||e}}(n,n.Ember) +const o=e.ENV={ENABLE_OPTIONAL_FEATURES:!1,EXTEND_PROTOTYPES:{Array:!0},LOG_STACKTRACE_ON_DEPRECATION:!0,LOG_VERSION:!0,RAISE_ON_DEPRECATION:!1,STRUCTURED_PROFILE:!1,_APPLICATION_TEMPLATE_WRAPPER:!0,_TEMPLATE_ONLY_GLIMMER_COMPONENTS:!1,_DEBUG_RENDER_TREE:!1,_ALL_DEPRECATIONS_ENABLED:!1,_OVERRIDE_DEPRECATION_VERSION:null,_DEFAULT_ASYNC_OBSERVERS:!1,_NO_IMPLICIT_ROUTE_MODEL:!1,_RERENDER_LOOP_LIMIT:1e3,EMBER_LOAD_HOOKS:{},FEATURES:{}};(e=>{if("object"!=typeof e||null===e)return +for(let i in e){if(!Object.prototype.hasOwnProperty.call(e,i)||"EXTEND_PROTOTYPES"===i||"EMBER_LOAD_HOOKS"===i)continue +let t=o[i] +o[i]=!0===t?!1!==e[i]:!1===t?!0===e[i]:e[i]}let{EXTEND_PROTOTYPES:t}=e +void 0!==t&&(o.EXTEND_PROTOTYPES.Array="object"==typeof t&&null!==t?!1!==t.Array:!1!==t) +let{EMBER_LOAD_HOOKS:r}=e +if("object"==typeof r&&null!==r)for(let i in r){if(!Object.prototype.hasOwnProperty.call(r,i))continue +let e=r[i] +Array.isArray(e)&&(o.EMBER_LOAD_HOOKS[i]=e.filter((e=>"function"==typeof e)))}let{FEATURES:n}=e +if("object"==typeof n&&null!==n)for(let i in n)Object.prototype.hasOwnProperty.call(n,i)&&(o.FEATURES[i]=!0===n[i])})(n.EmberENV)})),e("@ember/-internals/error-handling/index",["exports"],(function(e){"use strict" +let t +Object.defineProperty(e,"__esModule",{value:!0}),e.getDispatchOverride=function(){return r},e.getOnerror=function(){return t},e.onErrorTarget=void 0,e.setDispatchOverride=function(e){r=e},e.setOnerror=function(e){t=e} +e.onErrorTarget={get onerror(){return t}} +let r=null})),e("@ember/-internals/glimmer/index",["exports","@glimmer/opcode-compiler","@ember/-internals/browser-environment","@ember/debug","@ember/object","@glimmer/reference","@glimmer/validator","@ember/modifier","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/utils","@glimmer/manager","@ember/-internals/views","@ember/engine","@ember/engine/instance","@ember/instrumentation","@ember/service","@ember/-internals/runtime","@glimmer/runtime","@glimmer/util","@ember/-internals/string","@glimmer/destroyable","@ember/-internals/deprecations","@ember/runloop","@ember/object/-internals","@ember/-internals/container","@ember/-internals/environment","@glimmer/vm","@glimmer/program","rsvp","@glimmer/node","@glimmer/global-context","@ember/array/-internals","@ember/-internals/glimmer","@ember/array","@ember/routing/-internals","@ember/template-factory"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v,_,O,w,E,C,k,T,R,S,P,A,x,M,N,D,j,I){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.Component=void 0,Object.defineProperty(e,"DOMChanges",{enumerable:!0,get:function(){return y.DOMChanges}}),Object.defineProperty(e,"DOMTreeConstruction",{enumerable:!0,get:function(){return y.DOMTreeConstruction}}),e.LinkTo=e.Input=e.Helper=void 0,Object.defineProperty(e,"NodeDOMTreeConstruction",{enumerable:!0,get:function(){return A.NodeDOMTreeConstruction}}),e.Textarea=e.SafeString=e.RootTemplate=e.Renderer=e.OutletView=void 0,e._resetRenderers=function(){ur.length=0},e.componentCapabilities=void 0,e.escapeExpression=function(e){let t +if("string"!=typeof e){if(ut(e))return e.toHTML() +if(null==e)return"" +if(!e)return String(e) +t=String(e)}else t=e +if(!st.test(t))return t +return t.replace(at,lt)},e.getTemplate=function(e){if(Object.prototype.hasOwnProperty.call(fr,e))return fr[e]},e.getTemplates=function(){return fr},e.hasTemplate=function(e){return Object.prototype.hasOwnProperty.call(fr,e)},e.helper=nt,e.htmlSafe=function(e){null==e?e="":"string"!=typeof e&&(e=String(e)) +return new it(e)},e.isHTMLSafe=ut,Object.defineProperty(e,"isSerializationFirstNode",{enumerable:!0,get:function(){return y.isSerializationFirstNode}}),e.modifierCapabilities=void 0,e.renderSettled=function(){null===pr&&(pr=P.default.defer(),(0,E._getCurrentRunLoop)()||E._backburner.schedule("actions",null,ar)) +return pr.promise},e.setComponentManager=function(e,t){return(0,p.setComponentManager)(e,t)},e.setTemplate=function(e,t){return fr[e]=t},e.setTemplates=function(e){fr=e},e.setupApplicationRegistry=function(e){e.register("service:-dom-builder",{create(e){let t=(0,u.getOwner)(e) +switch(t.lookup("-environment:main")._renderMode){case"serialize":return A.serializeBuilder.bind(null) +case"rehydrate":return y.rehydrationBuilder.bind(null) +default:return y.clientBuilder.bind(null)}}}),e.register(k.privatize`template:-root`,F),e.register("renderer:-dom",hr)},e.setupEngineRegistry=function(e){e.optionsForType("template",{instantiate:!1}),e.register("view:-outlet",or),e.register("template:-outlet",mr),e.optionsForType("helper",{instantiate:!1}),e.register("component:input",re),e.register("component:link-to",he),e.register("component:textarea",be),T.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS||e.register(k.privatize`component:-default`,Ye)},Object.defineProperty(e,"template",{enumerable:!0,get:function(){return t.templateFactory}}),Object.defineProperty(e,"templateCacheCounters",{enumerable:!0,get:function(){return t.templateCacheCounters}}),e.uniqueId=Ut +var F=e.RootTemplate=(0,I.createTemplateFactory)({id:"tjANIXCV",block:'[[[46,[30,0],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/root.hbs",isStrictMode:!0}),L=(0,I.createTemplateFactory)({id:"4z3DuGQ3",block:'[[[11,"input"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,4,[30,0,["type"]]],[16,"checked",[30,0,["checked"]]],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/input.hbs",scope:()=>[a.on],isStrictMode:!0}) +function B(){}class U{static toString(){return"internal component"}constructor(e,t,r){this.owner=e,this.args=t,this.caller=r,(0,u.setOwner)(this,e)}get id(){return(0,c.guidFor)(this)}get class(){return"ember-view"}validateArguments(){for(let e of Object.keys(this.args.named))this.isSupportedArgument(e)||this.onUnsupportedArgument(e)}named(e){let t=this.args.named[e] +return t?(0,o.valueForRef)(t):void 0}positional(e){let t=this.args.positional[e] +return t?(0,o.valueForRef)(t):void 0}listenerFor(e){let t=this.named(e) +return t||B}isSupportedArgument(e){return!1}onUnsupportedArgument(e){}toString(){return`<${this.constructor}:${(0,c.guidFor)(this)}>`}}const H=new WeakMap +function $(e,t){let r={create(){throw(0,n.assert)("Use constructor instead of create")},toString:()=>e.toString()} +return H.set(r,e),(0,p.setInternalComponentManager)(z,r),(0,p.setComponentTemplate)(t,r),r}const V={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!1,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +const z=new class{getCapabilities(){return V}create(e,t,r,n,i,a){var l +let u=new(l=t,H.get(l))(e,r.capture(),(0,o.valueForRef)(a)) +return(0,s.untrack)(u.validateArguments.bind(u)),u}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}getDebugName(e){return e.toString()}getSelf(e){return(0,o.createConstRef)(e,"this")}getDestroyable(e){return e}} +var q=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +const G=Object.freeze({}) +function W(e){return function(e){return e.target}(e).value}function Y(e){return void 0===e?new Q(void 0):(0,o.isConstRef)(e)?new Q((0,o.valueForRef)(e)):(0,o.isUpdatableRef)(e)?new K(e):new J(e)}class Q{constructor(e){this.value=e}get(){return this.value}set(e){this.value=e}}q([l.tracked],Q.prototype,"value",void 0) +class K{constructor(e){this.reference=e}get(){return(0,o.valueForRef)(this.reference)}set(e){(0,o.updateRef)(this.reference,e)}}class J{constructor(e){this.lastUpstreamValue=G,this.upstream=new K(e)}get(){let e=this.upstream.get() +return e!==this.lastUpstreamValue&&(this.lastUpstreamValue=e,this.local=new Q(e)),this.local.get()}set(e){this.local.set(e)}}class X extends U{constructor(){super(...arguments),this._value=Y(this.args.named.value)}validateArguments(){super.validateArguments()}get value(){return this._value.get()}set value(e){this._value.set(e)}valueDidChange(e){this.value=W(e)}change(e){this.valueDidChange(e)}input(e){this.valueDidChange(e)}keyUp(e){switch(e.key){case"Enter":this.listenerFor("enter")(e),this.listenerFor("insert-newline")(e) +break +case"Escape":this.listenerFor("escape-press")(e)}}listenerFor(e){let t=super.listenerFor(e) +return this.isVirtualEventListener(e,t)?(r=t,e=>r(W(e),e)):t +var r}isVirtualEventListener(e,t){return-1!==["enter","insert-newline","escape-press"].indexOf(e)}}q([i.action],X.prototype,"valueDidChange",null),q([i.action],X.prototype,"keyUp",null) +var Z=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +let ee +if(r.hasDOM){const e=Object.create(null),t=document.createElement("input") +e[""]=!1,e.text=!0,e.checkbox=!0,ee=r=>{let n=e[r] +if(void 0===n){try{t.type=r,n=t.type===r}catch(i){n=!1}finally{t.type="text"}e[r]=n}return n}}else ee=e=>""!==e +class te extends X{constructor(){super(...arguments),this._checked=Y(this.args.named.checked)}static toString(){return"Input"}get class(){return this.isCheckbox?"ember-checkbox ember-view":"ember-text-field ember-view"}get type(){let e=this.named("type") +return null==e?"text":ee(e)?e:"text"}get isCheckbox(){return"checkbox"===this.named("type")}get checked(){return this.isCheckbox?this._checked.get():void 0}set checked(e){this._checked.set(e)}change(e){this.isCheckbox?this.checkedDidChange(e):super.change(e)}input(e){this.isCheckbox||super.input(e)}checkedDidChange(e){let t=e.target +this.checked=t.checked}isSupportedArgument(e){return-1!==["type","value","checked","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}Z([i.action],te.prototype,"change",null),Z([i.action],te.prototype,"input",null),Z([i.action],te.prototype,"checkedDidChange",null) +const re=e.Input=$(te,L) +var ne=(0,I.createTemplateFactory)({id:"Ub0nir+H",block:'[[[11,3],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[16,"role",[30,0,["role"]]],[16,"title",[30,0,["title"]]],[16,"rel",[30,0,["rel"]]],[16,"tabindex",[30,0,["tabindex"]]],[16,"target",[30,0,["target"]]],[17,1],[16,6,[30,0,["href"]]],[4,[32,0],["click",[30,0,["click"]]],null],[12],[18,2,null],[13]],["&attrs","&default"],false,["yield"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/link-to.hbs",scope:()=>[a.on],isStrictMode:!0}),ie=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +const oe=[],se={} +function ae(e){return null==e}function le(e){return!ae(e)}function ue(e){return"object"==typeof e&&null!==e&&!0===e.isQueryParams}(0,n.debugFreeze)(oe),(0,n.debugFreeze)(se) +class ce extends U{constructor(){super(...arguments),this.currentRouteCache=(0,s.createCache)((()=>((0,s.consumeTag)((0,s.tagFor)(this.routing,"currentState")),(0,s.untrack)((()=>this.routing.currentRouteName)))))}static toString(){return"LinkTo"}validateArguments(){super.validateArguments()}get class(){let e="ember-view" +return this.isActive?(e+=this.classFor("active"),!1===this.willBeActive&&(e+=" ember-transitioning-out")):this.willBeActive&&(e+=" ember-transitioning-in"),this.isLoading&&(e+=this.classFor("loading")),this.isDisabled&&(e+=this.classFor("disabled")),e}get href(){if(this.isLoading)return"#" +let{routing:e,route:t,models:r,query:n}=this +return(0,s.consumeTag)((0,s.tagFor)(e,"currentState")),e.generateURL(t,r,n)}click(e){if(!(0,d.isSimpleClick)(e))return +let t=e.currentTarget +if(!(""===t.target||"_self"===t.target))return +if(this.preventDefault(e),this.isDisabled)return +if(this.isLoading)return +let{routing:r,route:n,models:i,query:o,replace:s}=this,a={routeName:n,queryParams:o,transition:void 0};(0,m.flaggedInstrument)("interaction.link-to",a,(()=>{a.transition=r.transitionTo(n,i,o,s)}))}get route(){if("route"in this.args.named){let e=this.named("route") +return e&&this.namespaceRoute(e)}return this.currentRoute}get currentRoute(){return(0,s.getValue)(this.currentRouteCache)}get models(){if("models"in this.args.named){let e=this.named("models") +return e}return"model"in this.args.named?[this.named("model")]:oe}get query(){if("query"in this.args.named){let e=this.named("query") +return{...e}}return se}get replace(){return!0===this.named("replace")}get isActive(){return this.isActiveForState(this.routing.currentState)}get willBeActive(){let e=this.routing.currentState,t=this.routing.targetState +return e===t?null:this.isActiveForState(t)}get isLoading(){return ae(this.route)||this.models.some((e=>ae(e)))}get isDisabled(){return Boolean(this.named("disabled"))}get isEngine(){let e=this.owner +return e instanceof f.default&&void 0!==(0,h.getEngineParent)(e)}get engineMountPoint(){let e=this.owner +return e instanceof f.default?e.mountPoint:void 0}classFor(e){let t=this.named(`${e}Class`) +return!0===t||ae(t)?` ${e}`:t?` ${t}`:""}namespaceRoute(e){let{engineMountPoint:t}=this +return void 0===t?e:"application"===e?t:`${t}.${e}`}isActiveForState(e){if(!le(e))return!1 +if(this.isLoading)return!1 +let t=this.named("current-when") +if("boolean"==typeof t)return t +if("string"==typeof t){let{models:r,routing:n}=this +return t.split(" ").some((t=>n.isActiveForRoute(r,void 0,this.namespaceRoute(t),e)))}{let{route:t,models:r,query:n,routing:i}=this +return i.isActiveForRoute(r,n,t,e)}}preventDefault(e){e.preventDefault()}isSupportedArgument(e){return-1!==["route","model","models","query","replace","disabled","current-when","activeClass","loadingClass","disabledClass"].indexOf(e)||super.isSupportedArgument(e)}}ie([(0,g.service)("-routing")],ce.prototype,"routing",void 0),ie([i.action],ce.prototype,"click",null) +let{prototype:pe}=ce,de=(e,t)=>e?Object.getOwnPropertyDescriptor(e,t)||de(Object.getPrototypeOf(e),t):null +{let e=pe.onUnsupportedArgument +Object.defineProperty(pe,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"href"===t||e.call(this,t)}})}{let e=de(pe,"models"),t=e.get +Object.defineProperty(pe,"models",{configurable:!0,enumerable:!1,get:function(){let e=t.call(this) +return e.length>0&&!("query"in this.args.named)&&ue(e[e.length-1])&&(e=e.slice(0,-1)),e}}) +let r=de(pe,"query"),n=r.get +Object.defineProperty(pe,"query",{configurable:!0,enumerable:!1,get:function(){if("query"in this.args.named){let e=n.call(this) +return ue(e)?e.values??se:e}{let e=t.call(this) +if(e.length>0){let t=e[e.length-1] +if(ue(t)&&null!==t.values)return t.values}return se}}})}{let e=pe.onUnsupportedArgument +Object.defineProperty(pe,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"params"!==t&&e.call(this,t)}})}const he=e.LinkTo=$(ce,ne) +var fe=(0,I.createTemplateFactory)({id:"112WKCh2",block:'[[[11,"textarea"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/textarea.hbs",scope:()=>[a.on],isStrictMode:!0}),me=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +class ge extends X{static toString(){return"Textarea"}get class(){return"ember-text-area ember-view"}change(e){super.change(e)}input(e){super.input(e)}isSupportedArgument(e){return-1!==["type","value","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}me([i.action],ge.prototype,"change",null),me([i.action],ge.prototype,"input",null) +const be=e.Textarea=$(ge,fe) +function ye(e){return"function"==typeof e}function ve(e,t){return"attrs"===t[0]&&(t.shift(),1===t.length)?(0,o.childRefFor)(e,t[0]):(0,o.childRefFromParts)(e,t)}function _e(e){let t=e.indexOf(":") +if(-1===t)return[e,e,!0] +{let r=e.substring(0,t),n=e.substring(t+1) +return[r,n,!1]}}function Oe(e,t,r,n){let[i,s,a]=r +if("id"===s){let t=(0,l.get)(e,i) +null==t&&(t=e.elementId) +let r=(0,o.createPrimitiveRef)(t) +return void n.setAttribute("id",r,!0,null)}let u=i.indexOf(".")>-1,c=u?ve(t,i.split(".")):(0,o.childRefFor)(t,i) +n.setAttribute(s,c,!1,null)}function we(e,t,r){let n=t.split(":"),[i,s,a]=n +if(""===i)r.setAttribute("class",(0,o.createPrimitiveRef)(s),!0,null) +else{let t,n=i.indexOf(".")>-1,l=n?i.split("."):[],u=n?ve(e,l):(0,o.childRefFor)(e,i) +t=void 0===s?Ee(u,n?l[l.length-1]:i):function(e,t,r){return(0,o.createComputeRef)((()=>(0,o.valueForRef)(e)?t:r))}(u,s,a),r.setAttribute("class",t,!1,null)}}function Ee(e,t){let r +return(0,o.createComputeRef)((()=>{let n=(0,o.valueForRef)(e) +return!0===n?r||(r=(0,_.dasherize)(t)):n||0===n?String(n):null}))}function Ce(){}class ke{constructor(e,t,r,n,i,a){this.component=e,this.args=t,this.argsTag=r,this.finalizer=n,this.hasWrappedElement=i,this.isInteractive=a,this.classRef=null,this.classRef=null,this.argsRevision=null===t?0:(0,s.valueForTag)(r),this.rootRef=(0,o.createConstRef)(e,"this"),(0,O.registerDestructor)(this,(()=>this.willDestroy()),!0),(0,O.registerDestructor)(this,(()=>this.component.destroy()))}willDestroy(){let{component:e,isInteractive:t}=this +if(t){(0,s.beginUntrackFrame)(),e.trigger("willDestroyElement"),e.trigger("willClearRender"),(0,s.endUntrackFrame)() +let t=(0,d.getViewElement)(e) +t&&((0,d.clearElementView)(t),(0,d.clearViewElement)(e))}e.renderer.unregister(e)}finalize(){let{finalizer:e}=this +e(),this.finalizer=Ce}}function Te(e){return(0,p.setInternalHelperManager)(e,{})}const Re=new WeakSet +var Se=Te((e=>{(0,w.deprecateUntil)("Usage of the `(action)` helper is deprecated. Migrate to native functions and function invocation.",w.DEPRECATIONS.DEPRECATE_TEMPLATE_ACTION) +let t,{named:r,positional:n}=e,[i,s,...a]=n,u=s.debugLabel,c="target"in r?r.target:i,p=function(e,t){let r,n +t.length>0&&(r=e=>t.map(o.valueForRef).concat(e)) +e&&(n=t=>{let r=(0,o.valueForRef)(e) +return r&&t.length>0&&(t[0]=(0,l.get)(t[0],r)),t}) +return r&&n?e=>n(r(e)):r||n||Pe}("value"in r&&r.value||!1,a) +return t=(0,o.isInvokableRef)(s)?Ae(s,s,xe,p,u):function(e,t,r,n,i){const s=(0,o.valueForRef)(r) +0 +return(...r)=>Ae(e,(0,o.valueForRef)(t),s,n,i)(...r)}((0,o.valueForRef)(i),c,s,p,u),Re.add(t),(0,o.createUnboundRef)(t,"(result of an `action` helper)")})) +function Pe(e){return e}function Ae(e,t,r,n,i){let o,s +if("string"==typeof r){o=t +let e=t.actions?.[r] +s=e}else"function"==typeof r&&(o=e,s=r) +return(...e)=>{let t={target:o,args:e,label:"@glimmer/closure-action"} +return(0,m.flaggedInstrument)("interaction.ember-action",t,(()=>(0,E.join)(o,s,...n(e))))}}function xe(e){(0,o.updateRef)(this,e)}function Me(e){let t=Object.create(null),r=Object.create(null) +r[je]=e +for(let n in e){let i=e[n],s=(0,o.valueForRef)(i),a="function"==typeof s&&Re.has(s);(0,o.isUpdatableRef)(i)&&!a?t[n]=new De(i,s):t[n]=s,r[n]=s}return r.attrs=t,r}const Ne=Symbol("REF") +class De{constructor(e,t){this[d.MUTABLE_CELL]=!0,this[Ne]=e,this.value=t}update(e){(0,o.updateRef)(this[Ne],e)}}const je=(0,c.enumerableSymbol)("ARGS"),Ie=(0,c.enumerableSymbol)("HAS_BLOCK"),Fe=Symbol("DIRTY_TAG"),Le=Symbol("IS_DISPATCHING_ATTRS"),Be=Symbol("BOUNDS"),Ue=(0,o.createPrimitiveRef)("ember-view");(0,n.debugFreeze)([]) +class He{templateFor(e){let t,{layout:r,layoutName:n}=e,i=(0,u.getOwner)(e) +if(void 0===r){if(void 0===n)return null +{let e=i.lookup(`template:${n}`) +t=e}}else{if(!ye(r))return null +t=r}return(0,v.unwrapTemplate)(t(i)).asWrappedLayout()}getDynamicLayout(e){return this.templateFor(e.component)}getTagName(e){let{component:t,hasWrappedElement:r}=e +return r?t&&t.tagName||"div":null}getCapabilities(){return ze}prepareArgs(e,t){if(t.named.has("__ARGS__")){let{__ARGS__:e,...r}=t.named.capture(),n=(0,o.valueForRef)(e) +return{positional:n.positional,named:{...r,...n.named}}}const{positionalParams:r}=e.class??e +if(null==r||0===t.positional.length)return null +let n +if("string"==typeof r){let e=t.positional.capture() +n={[r]:(0,o.createComputeRef)((()=>(0,y.reifyPositional)(e)))},Object.assign(n,t.named.capture())}else{if(!(Array.isArray(r)&&r.length>0))return null +{const e=Math.min(r.length,t.positional.length) +n={},Object.assign(n,t.named.capture()) +for(let i=0;i{a.setAttribute("class",(0,o.createPrimitiveRef)(e),!1,null)})),p&&p.length&&p.forEach((e=>{we(n,e,a)})),a.setAttribute("class",Ue,!1,null),"ariaRole"in e&&a.setAttribute("role",(0,o.childRefFor)(n,"ariaRole"),!1,null),e._transitionTo("hasElement"),r&&((0,s.beginUntrackFrame)(),e.trigger("willInsertElement"),(0,s.endUntrackFrame)())}didRenderLayout(e,t){e.component[Be]=t,e.finalize()}didCreate({component:e,isInteractive:t}){t&&(e._transitionTo("inDOM"),e.trigger("didInsertElement"),e.trigger("didRender"))}update(e){let{component:t,args:r,argsTag:n,argsRevision:i,isInteractive:o}=e +if(e.finalizer=(0,m._instrumentStart)("render.component",Ve,t),(0,s.beginUntrackFrame)(),null!==r&&!(0,s.validateTag)(n,i)){(0,s.beginTrackFrame)() +let i=Me(r) +n=e.argsTag=(0,s.endTrackFrame)(),e.argsRevision=(0,s.valueForTag)(n),t[Le]=!0,t.setProperties(i),t[Le]=!1,t.trigger("didUpdateAttrs"),t.trigger("didReceiveAttrs")}o&&(t.trigger("willUpdate"),t.trigger("willRender")),(0,s.endUntrackFrame)(),(0,s.consumeTag)(n),(0,s.consumeTag)(t[Fe])}didUpdateLayout(e){e.finalize()}didUpdate({component:e,isInteractive:t}){t&&(e.trigger("didUpdate"),e.trigger("didRender"))}getDestroyable(e){return e}}function $e(e){return e.instrumentDetails({initialRender:!0})}function Ve(e){return e.instrumentDetails({initialRender:!1})}const ze={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!0,hasSubOwner:!1},qe=new He +function Ge(e){return e===qe}let We=new WeakMap +class Ye extends(d.CoreView.extend(d.ChildViewsSupport,d.ViewStateSupport,d.ClassNamesSupport,b.TargetActionSupport,d.ActionSupport,d.ViewMixin,{didReceiveAttrs(){},didRender(){},didUpdate(){},didUpdateAttrs(){},willRender(){},willUpdate(){}})){constructor(){super(...arguments),this.isComponent=!0}init(e){super.init(e),this._superRerender=this.rerender,this.rerender=this._rerender,this[Le]=!1,this[Fe]=(0,s.createTag)(),this[Be]=null +const t=this._dispatcher +if(t){let e=We.get(t) +e||(e=new WeakSet,We.set(t,e)) +let r=Object.getPrototypeOf(this) +if(!e.has(r)){t.lazyEvents.forEach(((e,r)=>{null!==e&&"function"==typeof this[e]&&t.setupHandlerForBrowserEvent(r)})),e.add(r)}}}get _dispatcher(){if(void 0===this.__dispatcher){let e=(0,u.getOwner)(this) +if(e.lookup("-environment:main").isInteractive){let t=e.lookup("event_dispatcher:main") +this.__dispatcher=t}else this.__dispatcher=null}return this.__dispatcher}on(e,t,r){return this._dispatcher?.setupHandlerForEmberEvent(e),super.on(e,t,r)}_rerender(){(0,s.dirtyTag)(this[Fe]),this._superRerender()}[l.PROPERTY_DID_CHANGE](e,t){if(this[Le])return +let r=this[je],n=void 0!==r?r[e]:void 0 +void 0!==n&&(0,o.isUpdatableRef)(n)&&(0,o.updateRef)(n,2===arguments.length?t:(0,l.get)(this,e))}getAttr(e){return this.get(e)}readDOMAttr(e){let t=(0,d.getViewElement)(this),r=t,n="http://www.w3.org/2000/svg"===r.namespaceURI,{type:i,normalized:o}=(0,y.normalizeProperty)(r,e) +return n||"attr"===i?r.getAttribute(o):r[o]}static toString(){return"@ember/component"}}var Qe +e.Component=Ye,Ye.isComponentFactory=!0,Ye.reopenClass({positionalParams:[]}),(0,p.setInternalComponentManager)(qe,Ye) +const Ke=Symbol("RECOMPUTE_TAG"),Je=Symbol("IS_CLASSIC_HELPER") +class Xe extends C.FrameworkObject{init(e){super.init(e),this[Ke]=(0,s.createTag)()}recompute(){(0,E.join)((()=>(0,s.dirtyTag)(this[Ke])))}}e.Helper=Xe,Qe=Je,Xe.isHelperFactory=!0,Xe[Qe]=!0,Xe.helper=nt +class Ze{constructor(e){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0,hasDestroyable:!0}) +let t={};(0,u.setOwner)(t,e),this.ownerInjection=t}createHelper(e,t){let r=null!=(n=e)&&"class"in n?e.create():e.create(this.ownerInjection) +var n +return{instance:r,args:t}}getDestroyable({instance:e}){return e}getValue({instance:e,args:t}){let{positional:r,named:n}=t,i=e.compute(r,n) +return(0,s.consumeTag)(e[Ke]),i}getDebugName(e){return(0,c.getDebugName)((e.class||e).prototype)}}(0,p.setHelperManager)((e=>new Ze(e)),Xe) +const et=(0,p.getInternalHelperManager)(Xe) +class tt{constructor(e){this.compute=e,this.isHelperFactory=!0}create(){return{compute:this.compute}}}const rt=new class{constructor(){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0})}createHelper(e,t){return()=>e.compute.call(null,t.positional,t.named)}getValue(e){return e()}getDebugName(e){return(0,c.getDebugName)(e.compute)}} +function nt(e){return new tt(e)}(0,p.setHelperManager)((()=>rt),tt.prototype) +class it{constructor(e){this.__string=e}toString(){return`${this.__string}`}toHTML(){return this.toString()}}e.SafeString=it +const ot={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},st=/[&<>"'`=]/,at=/[&<>"'`=]/g +function lt(e){return ot[e]}function ut(e){return null!==e&&"object"==typeof e&&"toHTML"in e&&"function"==typeof e.toHTML}function ct(e){return{object:`${e.name}:main`}}const pt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +class dt{create(e,t,r,n,i){let s=i.get("outletState"),a=t.ref +i.set("outletState",a) +let l={self:(0,o.createConstRef)(t.controller,"this"),finalize:(0,m._instrumentStart)("render.outlet",ct,t)} +if(void 0!==n.debugRenderTree){l.outletBucket={} +let e=(0,o.valueForRef)(s),t=e&&e.render&&e.render.owner,r=(0,o.valueForRef)(a).render.owner +if(t&&t!==r){let e=r.mountPoint +l.engine=r,e&&(l.engineBucket={mountPoint:e})}}return l}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r){let n=[] +return n.push({bucket:t.outletBucket,type:"outlet",name:"main",args:y.EMPTY_ARGS,instance:void 0,template:void 0}),t.engineBucket&&n.push({bucket:t.engineBucket,type:"engine",name:t.engineBucket.mountPoint,args:y.EMPTY_ARGS,instance:t.engine,template:void 0}),n.push({bucket:t,type:"route-template",name:e.name,args:r,instance:e.controller,template:(0,v.unwrapTemplate)(e.template).moduleName}),n}getCapabilities(){return pt}getSelf({self:e}){return e}didCreate(){}didUpdate(){}didRenderLayout(e){e.finalize()}didUpdateLayout(){}getDestroyable(){return null}}const ht=new dt +class ft{constructor(e,t=ht){this.state=e,this.manager=t,this.handle=-1 +let r=t.getCapabilities() +this.capabilities=(0,p.capabilityFlagsFrom)(r),this.compilable=r.wrapped?(0,v.unwrapTemplate)(e.template).asWrappedLayout():(0,v.unwrapTemplate)(e.template).asLayout(),this.resolvedName=e.name}}class mt extends He{constructor(e){super(),this.component=e}create(e,t,r,{isInteractive:n},i){let o=this.component,a=(0,m._instrumentStart)("render.component",$e,o) +i.view=o +let l=""!==o.tagName +l||(n&&o.trigger("willRender"),o._transitionTo("hasElement"),n&&o.trigger("willInsertElement")) +let u=new ke(o,null,s.CONSTANT_TAG,a,l,n) +return(0,s.consumeTag)(o[Fe]),u}}const gt={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!1,createArgs:!1,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!1,hasSubOwner:!1} +class bt{constructor(e){this.handle=-1,this.resolvedName="-top-level",this.capabilities=(0,p.capabilityFlagsFrom)(gt),this.compilable=null,this.manager=new mt(e) +let t=(0,k.getFactoryFor)(e) +this.state=t}}class yt{constructor(e){this.inner=e}}var vt=Te((({positional:e})=>{const t=e[0] +return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(t) +return(0,s.consumeTag)((0,l.tagForObject)(e)),(0,c.isProxy)(e)&&(e=(0,b._contentFor)(e)),new yt(e)}))})) +class _t{constructor(e){this.length=e,this.position=0}isEmpty(){return!1}memoFor(e){return e}next(){let{length:e,position:t}=this +if(t>=e)return null +let r=this.valueFor(t),n=this.memoFor(t) +return this.position++,{value:r,memo:n}}}class Ot extends _t{static from(e){return e.length>0?new this(e):null}static fromForEachable(e){let t=[] +return e.forEach((e=>t.push(e))),this.from(t)}constructor(e){super(e.length),this.array=e}valueFor(e){return this.array[e]}}class wt extends _t{static from(e){return e.length>0?new this(e):null}constructor(e){super(e.length),this.array=e}valueFor(e){return(0,l.objectAt)(this.array,e)}}class Et extends _t{static fromIndexable(e){let t=Object.keys(e) +if(0===t.length)return null +{let r=[] +for(let n of t){let t +t=e[n],(0,s.isTracking)()&&((0,s.consumeTag)((0,s.tagFor)(e,n)),Array.isArray(t)&&(0,s.consumeTag)((0,s.tagFor)(t,"[]"))),r.push(t)}return new this(t,r)}}static fromForEachable(e){let t=[],r=[],n=0,i=!1 +return e.forEach((function(e,o){i=i||arguments.length>=2,i&&t.push(o),r.push(e),n++})),0===n?null:i?new this(t,r):new Ot(r)}constructor(e,t){super(t.length),this.keys=e,this.values=t}valueFor(e){return this.values[e]}memoFor(e){return this.keys[e]}}class Ct{static from(e){let t=e[Symbol.iterator](),r=t.next(),{done:n}=r +return n?null:new this(t,r)}constructor(e,t){this.iterable=e,this.result=t,this.position=0}isEmpty(){return!1}next(){let{iterable:e,result:t,position:r}=this +if(t.done)return null +let n=this.valueFor(t,r),i=this.memoFor(t,r) +return this.position++,this.result=e.next(),{value:n,memo:i}}}class kt extends Ct{valueFor(e){return e.value}memoFor(e,t){return t}}class Tt extends Ct{valueFor(e){return e.value[1]}memoFor(e){return e.value[0]}}function Rt(e){return null!=e&&"function"==typeof e.forEach}function St(e){return null!=e&&"function"==typeof e[Symbol.iterator]}(0,x.default)({FEATURES:{DEFAULT_HELPER_MANAGER:!0},scheduleRevalidate(){E._backburner.ensureInstance()},toBool:function(e){return(0,c.isProxy)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"content")),Boolean((0,l.get)(e,"isTruthy"))):(0,D.isArray)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),0!==e.length):(0,N.isHTMLSafe)(e)?Boolean(e.toString()):Boolean(e)},toIterator:function(e){return e instanceof yt?function(e){if(t=e,null===t||"object"!=typeof t&&"function"!=typeof t)return null +var t +return Array.isArray(e)||(0,M.isEmberArray)(e)?Et.fromIndexable(e):St(e)?Tt.from(e):Rt(e)?Et.fromForEachable(e):Et.fromIndexable(e)}(e.inner):function(e){if(!(0,c.isObject)(e))return null +return Array.isArray(e)?Ot.from(e):(0,M.isEmberArray)(e)?wt.from(e):St(e)?kt.from(e):Rt(e)?Ot.fromForEachable(e):null}(e)},getProp:l._getProp,setProp:l._setProp,getPath:l.get,setPath:l.set,scheduleDestroy(e,t){(0,E.schedule)("actions",null,t,e)},scheduleDestroyed(e){(0,E.schedule)("destroy",null,e)},warnIfStyleNotTrusted(e){},assert(e,t,r){0},deprecate(e,t,r){0}}) +class Pt{constructor(e,t){this.owner=e,this.isInteractive=t,this.enableDebugTooling=T.ENV._DEBUG_RENDER_TREE}onTransactionCommit(){}}var At=Te((({positional:e,named:t})=>{const r=e[0] +let n=t.type,i=t.loc,s=t.original;(0,o.valueForRef)(n),(0,o.valueForRef)(i),(0,o.valueForRef)(s) +return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(r) +return e}))})) +let xt +xt=e=>{let t=e.positional[0] +return t} +var Mt=Te(xt),Nt=Te((({positional:e})=>(0,o.createComputeRef)((()=>{let t=e[0],r=e[1],n=(0,o.valueForRef)(t).split("."),i=n[n.length-1],s=(0,o.valueForRef)(r) +return!0===s?(0,_.dasherize)(i):s||0===s?String(s):""})))),Dt=Te((({positional:e},t)=>{let r=e[0],n=(0,o.valueForRef)(r) +return(0,o.createConstRef)(t.factoryFor(n)?.class,`(-resolve "${n}")`)})),jt=Te((({positional:e})=>{const t=e[0] +return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(t) +return(0,c.isObject)(e)&&(0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),e}))})),It=Te((({positional:e})=>{let t=e[0] +return(0,o.createInvokableRef)(t)})),Ft=Te((({positional:e})=>{let t=e[0] +return(0,o.createReadOnlyRef)(t)})),Lt=Te((({positional:e,named:t})=>(0,o.createUnboundRef)((0,o.valueForRef)(e[0]),"(result of an `unbound` helper)"))),Bt=Te((()=>(0,o.createConstRef)(Ut(),"unique-id"))) +function Ut(){return([3e7]+-1e3+-4e3+-2e3+-1e11).replace(/[0-3]/g,(e=>(4*e^16*Math.random()>>(2&e)).toString(16)))}const Ht=["alt","shift","meta","ctrl"],$t=/^click|mouse|touch/ +let Vt={registeredActions:d.ActionManager.registeredActions,registerAction(e){let{actionId:t}=e +return d.ActionManager.registeredActions[t]=e,t},unregisterAction(e){let{actionId:t}=e +delete d.ActionManager.registeredActions[t]}} +class zt{constructor(e,t,r,n,i,o){this.tag=(0,s.createUpdatableTag)(),this.element=e,this.owner=t,this.actionId=r,this.actionArgs=n,this.namedArgs=i,this.positional=o,this.eventName=this.getEventName(),(0,O.registerDestructor)(this,(()=>Vt.unregisterAction(this)))}getEventName(){let{on:e}=this.namedArgs +return void 0!==e?(0,o.valueForRef)(e):"click"}getActionArgs(){let e=new Array(this.actionArgs.length) +for(let t=0;t=0)return!0 +for(let r=0;r{let e=this.getActionArgs(),r={args:e,target:c,name:null};(0,o.isInvokableRef)(t)?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{(0,o.updateRef)(t,e[0])})):"function"!=typeof t?(r.name=t,c.send?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c.send.apply(c,[t,...e])})):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c[t].apply(c,e)}))):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{t.apply(c,e)}))})),p)}}const qt=new class{create(e,t,r,{named:n,positional:i}){let o=[] +for(let a=2;a1&&(n=a[0],r=a[1],t=(0,o.isInvokableRef)(r)?r:(0,o.valueForRef)(r)),e.actionName=t,e.implicitTarget=n,this.ensureEventSetup(e),Vt.registerAction(e),i.setAttribute("data-ember-action",""),i.setAttribute(`data-ember-action-${s}`,String(s))}update(e){let{positional:t}=e,r=t[1];(0,o.isInvokableRef)(r)||(e.actionName=(0,o.valueForRef)(r)),e.getEventName()!==e.eventName&&(this.ensureEventSetup(e),e.eventName=e.getEventName())}ensureEventSetup(e){let t=e.owner.lookup("event_dispatcher:main") +t?.setupHandlerForEmberEvent(e.eventName)}getTag(e){return e.tag}getDestroyable(e){return e}} +var Gt=(0,p.setInternalModifierManager)(qt,{}) +const Wt={dynamicLayout:!0,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!0} +const Yt=new class{getDynamicLayout(e){let t=e.engine.lookup("template:application") +return(0,v.unwrapTemplate)(t(e.engine)).asLayout()}getCapabilities(){return Wt}getOwner(e){return e.engine}create(e,{name:t},r,n){let i=e.buildChildEngineInstance(t) +i.boot() +let s,a,l,u,c=i.factoryFor("controller:application")||(0,j.generateControllerFactory)(i,"application") +if(r.named.has("model")&&(u=r.named.get("model")),void 0===u)s=c.create(),a=(0,o.createConstRef)(s,"this"),l={engine:i,controller:s,self:a,modelRef:u} +else{let e=(0,o.valueForRef)(u) +s=c.create({model:e}),a=(0,o.createConstRef)(s,"this"),l={engine:i,controller:s,self:a,modelRef:u}}return n.debugRenderTree&&(0,O.associateDestroyableChild)(i,s),l}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r,n){return[{bucket:t.engine,instance:t.engine,type:"engine",name:e.name,args:r},{bucket:t.controller,instance:t.controller,type:"route-template",name:"application",args:r,template:n}]}getSelf({self:e}){return e}getDestroyable(e){return e.engine}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}update(e){let{controller:t,modelRef:r}=e +void 0!==r&&t.set("model",(0,o.valueForRef)(r))}} +class Qt{constructor(e){this.resolvedName=e,this.handle=-1,this.manager=Yt,this.compilable=null,this.capabilities=(0,p.capabilityFlagsFrom)(Wt),this.state={name:e}}}const Kt=Te(((e,t)=>{let r,n,i,s=e.positional[0] +return r=(0,y.createCapturedArgs)(e.named,y.EMPTY_POSITIONAL),(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(s) +return"string"==typeof e?(n===e||(n=e,i=(0,y.curry)(R.CurriedType.Component,new Qt(e),t,r,!0)),i):(i=null,n=null,null)}))})),Jt=Te(((e,t,r)=>{let n=(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(r.get("outletState")) +return e?.outlets?.main})),i=null,s=null +return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(n),r=function(e,t){if(void 0===t)return null +let r=t.render +if(void 0===r)return null +let n=r.template +if(void 0===n)return null +ye(n)&&(n=n(r.owner)) +return{ref:e,name:r.name,template:n,controller:r.controller,model:r.model}}(n,e) +if(!function(e,t){if(null===e)return null===t +if(null===t)return!1 +return e.template===t.template&&e.controller===t.controller}(r,i))if(i=r,null!==r){let a=(0,v.dict)(),l=(0,o.childRefFromParts)(n,["render","model"]),u=(0,o.valueForRef)(l) +a.model=(0,o.createComputeRef)((()=>(i===r&&(u=(0,o.valueForRef)(l)),u))) +let c=(0,y.createCapturedArgs)(a,y.EMPTY_POSITIONAL) +s=(0,y.curry)(R.CurriedType.Component,new ft(r),e?.render?.owner??t,c,!0)}else s=null +return s}))})) +function Xt(e){return{object:`component:${e}`}}const Zt={action:Se,mut:It,readonly:Ft,unbound:Lt,"-hash":y.hash,"-each-in":vt,"-normalize-class":Nt,"-resolve":Dt,"-track-array":jt,"-mount":Kt,"-outlet":Jt,"-in-el-null":Mt},er={...Zt,array:y.array,concat:y.concat,fn:y.fn,get:y.get,hash:y.hash,"unique-id":Bt} +er["-disallow-dynamic-resolution"]=At +const tr={action:Gt},rr={...tr,on:y.on} +new WeakSet +class nr{constructor(){this.componentDefinitionCache=new Map}lookupPartial(){return null}lookupHelper(e,t){let r=er[e] +if(void 0!==r)return r +let n=t.factoryFor(`helper:${e}`) +if(void 0===n)return null +let i=n.class +return void 0===i?null:"function"==typeof i&&!0===i[Je]?((0,p.setInternalHelperManager)(et,n),n):i}lookupBuiltInHelper(e){return Zt[e]??null}lookupModifier(e,t){let r=rr[e] +if(void 0!==r)return r +let n=t.factoryFor(`modifier:${e}`) +return void 0===n?null:n.class||null}lookupBuiltInModifier(e){return tr[e]??null}lookupComponent(e,t){let r=function(e,t,r){let n=function(e,t){let r=`component:${e}` +return t.factoryFor(r)||null}(t,e) +if((0,u.isFactory)(n)&&n.class){let e=(0,p.getComponentTemplate)(n.class) +if(void 0!==e)return{component:n,layout:e}}let i=function(e,t,r){let n=`template:components/${e}` +return t.lookup(n,r)||null}(t,e,r) +return null===n&&null===i?null:{component:n,layout:i}}(t,e) +if(null===r)return null +let n,i=null +n=null===r.component?i=r.layout(t):r.component +let o=this.componentDefinitionCache.get(n) +if(void 0!==o)return o +null===i&&null!==r.layout&&(i=r.layout(t)) +let s=(0,m._instrumentStart)("render.getComponentDefinition",Xt,e),a=null +if(null===r.component)if(T.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS)a={state:(0,y.templateOnlyComponent)(void 0,e),manager:y.TEMPLATE_ONLY_COMPONENT_MANAGER,template:i} +else{let e=t.factoryFor(k.privatize`component:-default`) +a={state:e,manager:(0,p.getInternalComponentManager)(e.class),template:i}}else{let e=r.component,t=e.class,n=(0,p.getInternalComponentManager)(t) +a={state:Ge(n)?e:t,manager:n,template:i}}return s(),this.componentDefinitionCache.set(n,a),a}}const ir="-top-level" +class or{static extend(e){return class extends or{static create(t){return t?super.create(Object.assign({},e,t)):super.create(e)}}}static reopenClass(e){Object.assign(this,e)}static create(e){let{environment:t,application:r,template:n}=e,i=(0,u.getOwner)(e),o=n(i) +return new or(t,i,o,r)}constructor(e,t,r,n){this._environment=e,this.owner=t,this.template=r,this.namespace=n +let i=(0,s.createTag)(),a={outlets:{main:void 0},render:{owner:t,into:void 0,outlet:"main",name:ir,controller:void 0,model:void 0,template:r}},l=this.ref=(0,o.createComputeRef)((()=>((0,s.consumeTag)(i),a)),(e=>{(0,s.dirtyTag)(i),a.outlets.main=e})) +this.state={ref:l,name:ir,template:r,controller:void 0,model:void 0}}appendTo(e){let t +t=this._environment.hasDOM&&"string"==typeof e?document.querySelector(e):e +let r=this.owner.lookup("renderer:-dom");(0,E.schedule)("render",r,"appendOutletView",this,t)}rerender(){}setOutletState(e){(0,o.updateRef)(this.ref,e)}destroy(){}}e.OutletView=or +class sr{constructor(e,t){this.view=e,this.outletState=t}child(){return new sr(this.view,this.outletState)}get(e){return this.outletState}set(e,t){return this.outletState=t,t}}const ar=()=>{} +class lr{constructor(e,t,r,n,i,o,s,a,l){this.root=e,this.runtime=t,this.id=e instanceof or?(0,c.guidFor)(e):(0,d.getViewId)(e),this.result=void 0,this.destroyed=!1,this.render=()=>{let e=(0,v.unwrapTemplate)(i).asLayout(),u=(0,y.renderMain)(t,r,n,o,l(t.env,{element:s,nextSibling:null}),e,a),c=this.result=u.sync() +this.render=()=>c.rerender({alwaysRevalidate:!1})}}isFor(e){return this.root===e}destroy(){let{result:e,runtime:{env:t}}=this +this.destroyed=!0,this.runtime=void 0,this.root=null,this.result=void 0,this.render=void 0,void 0!==e&&(0,y.inTransaction)(t,(()=>(0,O.destroy)(e)))}}const ur=[] +function cr(e){let t=ur.indexOf(e) +ur.splice(t,1)}let pr=null +let dr=0 +E._backburner.on("begin",(function(){for(let e of ur)e._scheduleRevalidate()})),E._backburner.on("end",(function(){for(let e of ur)if(!e._isValid()){if(dr>T.ENV._RERENDER_LOOP_LIMIT)throw dr=0,e.destroy(),new Error("infinite rendering invalidation detected") +return dr++,E._backburner.join(null,ar)}dr=0,function(){if(null!==pr){let e=pr.resolve +pr=null,E._backburner.join(null,e)}}()})) +class hr{static create(e){let{_viewRegistry:t}=e,r=(0,u.getOwner)(e),n=r.lookup("service:-document"),i=r.lookup("-environment:main"),o=r.lookup(k.privatize`template:-root`),s=r.lookup("service:-dom-builder") +return new this(r,n,i,o,t,s)}constructor(e,r,n,i,o,s=y.clientBuilder){this._inRenderTransaction=!1,this._lastRevision=-1,this._destroyed=!1,this._owner=e,this._rootTemplate=i(e),this._viewRegistry=o||e.lookup("-view-registry:main"),this._roots=[],this._removedRoots=[],this._builder=s,this._isInteractive=n.isInteractive +let a=this._runtimeResolver=new nr,l=(0,S.artifacts)() +this._context=(0,t.programCompilationContext)(l,a,(e=>new S.RuntimeOpImpl(e))) +let u=new Pt(e,n.isInteractive) +this._runtime=(0,y.runtimeContext)({appendOperations:n.hasDOM?new y.DOMTreeConstruction(r):new A.NodeDOMTreeConstruction(r),updateOperations:new y.DOMChanges(r)},u,l,a)}get debugRenderTree(){let{debugRenderTree:e}=this._runtime.env +return e}appendOutletView(e,t){let r=function(e){if(T.ENV._APPLICATION_TEMPLATE_WRAPPER){const t=Object.assign({},pt,{dynamicTag:!0,elementHook:!0,wrapped:!0}),r=new class extends dt{getTagName(){return"div"}getCapabilities(){return t}didCreateElement(e,t){t.setAttribute("class","ember-view"),t.setAttribute("id",(0,c.guidFor)(e))}} +return new ft(e.state,r)}return new ft(e.state)}(e) +this._appendDefinition(e,(0,y.curry)(R.CurriedType.Component,r,e.owner,null,!0),t)}appendTo(e,t){let r=new bt(e) +this._appendDefinition(e,(0,y.curry)(R.CurriedType.Component,r,this._owner,null,!0),t)}_appendDefinition(e,t,r){let n=(0,o.createConstRef)(t,"this"),i=new sr(null,o.UNDEFINED_REFERENCE),s=new lr(e,this._runtime,this._context,this._owner,this._rootTemplate,n,r,i,this._builder) +this._renderRoot(s)}rerender(){this._scheduleRevalidate()}register(e){let t=(0,d.getViewId)(e) +this._viewRegistry[t]=e}unregister(e){delete this._viewRegistry[(0,d.getViewId)(e)]}remove(e){e._transitionTo("destroying"),this.cleanupRootFor(e),this._isInteractive&&e.trigger("didDestroyElement")}cleanupRootFor(e){if(this._destroyed)return +let t=this._roots,r=this._roots.length +for(;r--;){let n=t[r] +n.isFor(e)&&(n.destroy(),t.splice(r,1))}}destroy(){this._destroyed||(this._destroyed=!0,this._clearAllRoots())}getElement(e){if(this._isInteractive)return(0,d.getViewElement)(e) +throw new Error("Accessing `this.element` is not allowed in non-interactive environments (such as FastBoot).")}getBounds(e){let t=e[Be] +return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}createElement(e){return this._runtime.env.getAppendOperations().createElement(e)}_renderRoot(e){let{_roots:t}=this +var r +t.push(e),1===t.length&&(r=this,ur.push(r)),this._renderRootsTransaction()}_renderRoots(){let e,{_roots:t,_runtime:r,_removedRoots:n}=this +do{e=t.length,(0,y.inTransaction)(r.env,(()=>{for(let r=0;r=e||i.render()}this._lastRevision=(0,s.valueForTag)(s.CURRENT_TAG)}))}while(t.length>e) +for(;n.length;){let e=n.pop(),r=t.indexOf(e) +t.splice(r,1)}0===this._roots.length&&cr(this)}_renderRootsTransaction(){if(this._inRenderTransaction)return +this._inRenderTransaction=!0 +let e=!1 +try{this._renderRoots(),e=!0}finally{e||(this._lastRevision=(0,s.valueForTag)(s.CURRENT_TAG)),this._inRenderTransaction=!1}}_clearAllRoots(){let e=this._roots +for(let t of e)t.destroy() +this._removedRoots.length=0,this._roots=[],e.length&&cr(this)}_scheduleRevalidate(){E._backburner.scheduleOnce("render",this,this._revalidate)}_isValid(){return this._destroyed||0===this._roots.length||(0,s.validateTag)(s.CURRENT_TAG,this._lastRevision)}_revalidate(){this._isValid()||this._renderRootsTransaction()}}e.Renderer=hr +let fr={} +var mr=(0,I.createTemplateFactory)({id:"2c6+lAmT",block:'[[[46,[28,[32,0],null,null],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/outlet.hbs",scope:()=>[Jt],isStrictMode:!0}) +e.componentCapabilities=p.componentCapabilities,e.modifierCapabilities=p.modifierCapabilities})),e("@ember/-internals/meta/index",["exports","@ember/-internals/meta/lib/meta"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Meta",{enumerable:!0,get:function(){return t.Meta}}),Object.defineProperty(e,"UNDEFINED",{enumerable:!0,get:function(){return t.UNDEFINED}}),Object.defineProperty(e,"counters",{enumerable:!0,get:function(){return t.counters}}),Object.defineProperty(e,"meta",{enumerable:!0,get:function(){return t.meta}}),Object.defineProperty(e,"peekMeta",{enumerable:!0,get:function(){return t.peekMeta}}),Object.defineProperty(e,"setMeta",{enumerable:!0,get:function(){return t.setMeta}})})),e("@ember/-internals/meta/lib/meta",["exports","@ember/-internals/utils","@ember/debug","@glimmer/destroyable"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.meta=e.counters=e.UNDEFINED=e.Meta=void 0,e.peekMeta=d,e.setMeta=p +const i=Object.prototype +e.counters=void 0 +const o=e.UNDEFINED=(0,t.symbol)("undefined") +var s;(function(e){e[e.ADD=0]="ADD",e[e.ONCE=1]="ONCE",e[e.REMOVE=2]="REMOVE"})(s||(s={})) +let a=1 +class l{constructor(e){this._listenersVersion=1,this._inheritedEnd=-1,this._flattenedVersion=0,this._parent=void 0,this._descriptors=void 0,this._mixins=void 0,this._lazyChains=void 0,this._values=void 0,this._revisions=void 0,this._isInit=!1,this.source=e,this.proto=void 0===e.constructor?void 0:e.constructor.prototype,this._listeners=void 0}get parent(){let e=this._parent +if(void 0===e){let t=u(this.source) +this._parent=e=null===t||t===i?null:h(t)}return e}setInitializing(){this._isInit=!0}unsetInitializing(){this._isInit=!1}isInitializing(){return this._isInit}isPrototypeMeta(e){return this.proto===this.source&&this.source===e}_getOrCreateOwnMap(e){return this[e]||(this[e]=Object.create(null))}_getOrCreateOwnSet(e){return this[e]||(this[e]=new Set)}_findInheritedMap(e,t){let r=this +for(;null!==r;){let n=r[e] +if(void 0!==n){let e=n.get(t) +if(void 0!==e)return e}r=r.parent}}_hasInInheritedSet(e,t){let r=this +for(;null!==r;){let n=r[e] +if(void 0!==n&&n.has(t))return!0 +r=r.parent}return!1}valueFor(e){let t=this._values +return void 0!==t?t[e]:void 0}setValueFor(e,t){this._getOrCreateOwnMap("_values")[e]=t}revisionFor(e){let t=this._revisions +return void 0!==t?t[e]:void 0}setRevisionFor(e,t){this._getOrCreateOwnMap("_revisions")[e]=t}writableLazyChainsFor(e){let t=this._getOrCreateOwnMap("_lazyChains"),r=t[e] +return void 0===r&&(r=t[e]=[]),r}readableLazyChainsFor(e){let t=this._lazyChains +if(void 0!==t)return t[e]}addMixin(e){this._getOrCreateOwnSet("_mixins").add(e)}hasMixin(e){return this._hasInInheritedSet("_mixins",e)}forEachMixins(e){let t,r=this +for(;null!==r;){let n=r._mixins +void 0!==n&&(t=void 0===t?new Set:t,n.forEach((r=>{t.has(r)||(t.add(r),e(r))}))),r=r.parent}}writeDescriptors(e,t){(this._descriptors||(this._descriptors=new Map)).set(e,t)}peekDescriptors(e){let t=this._findInheritedMap("_descriptors",e) +return t===o?void 0:t}removeDescriptors(e){this.writeDescriptors(e,o)}forEachDescriptors(e){let t,r=this +for(;null!==r;){let n=r._descriptors +void 0!==n&&(t=void 0===t?new Set:t,n.forEach(((r,n)=>{t.has(n)||(t.add(n),r!==o&&e(n,r))}))),r=r.parent}}addToListeners(e,t,r,n,i){this.pushListener(e,t,r,n?s.ONCE:s.ADD,i)}removeFromListeners(e,t,r){this.pushListener(e,t,r,s.REMOVE)}pushListener(e,t,r,n,i=!1){let o=this.writableListeners(),a=f(o,e,t,r) +if(-1!==a&&a0&&(e.splice(0,this._inheritedEnd),this._inheritedEnd=0) +for(let r of t){-1===f(e,r.event,r.target,r.method)&&(e.unshift(r),this._inheritedEnd++)}}}this._flattenedVersion=a}return this._listeners}matchingListeners(e){let t,r=this.flattenedListeners() +if(void 0!==r)for(let n of r)n.event!==e||n.kind!==s.ADD&&n.kind!==s.ONCE||(void 0===t&&(t=[]),t.push(n.target,n.method,n.kind===s.ONCE)) +return t}observerEvents(){let e,t=this.flattenedListeners() +if(void 0!==t)for(let r of t)r.kind!==s.ADD&&r.kind!==s.ONCE||-1===r.event.indexOf(":change")||(void 0===e&&(e=[]),e.push(r)) +return e}}e.Meta=l +const u=Object.getPrototypeOf,c=new WeakMap +function p(e,t){c.set(e,t)}function d(e){let t=c.get(e) +if(void 0!==t)return t +let r=u(e) +for(;null!==r;){if(t=c.get(r),void 0!==t)return t.proto!==r&&(t.proto=r),t +r=u(r)}return null}const h=e.meta=function(e){let t=d(e) +if(null!==t&&t.source===e)return t +let r=new l(e) +return p(e,r),r} +function f(e,t,r,n){for(let i=e.length-1;i>=0;i--){let o=e[i] +if(o.event===t&&o.target===r&&o.method===n)return i}return-1}})),e("@ember/-internals/metal/index",["exports","@ember/-internals/meta","@ember/-internals/utils","@ember/debug","@glimmer/destroyable","@glimmer/validator","@ember/-internals/environment","@ember/runloop","@glimmer/manager","@ember/array/-internals","ember/version","@ember/-internals/owner"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.TrackedDescriptor=e.SYNC_OBSERVERS=e.PROXY_CONTENT=e.PROPERTY_DID_CHANGE=e.NAMESPACES_BY_ID=e.NAMESPACES=e.Libraries=e.DEBUG_INJECTION_FUNCTIONS=e.ComputedProperty=e.ComputedDescriptor=e.ASYNC_OBSERVERS=void 0,e._getPath=Ce,e._getProp=Ee,e._setProp=Re,e.activateObserver=w,e.addArrayObserver=function(e,t,r){return q(e,t,r,d)},e.addListener=d,e.addNamespace=function(e){Be.unprocessedNamespaces=!0,He.push(e)},e.addObserver=_,e.alias=function(e){return re(new Pe(e),Se)},e.arrayContentDidChange=U,e.arrayContentWillChange=B,e.autoComputed=function(...e){return re(new he(e),fe)},e.beginPropertyChanges=I,e.cached=void 0,e.changeProperties=L,e.computed=me,Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return o.createCache}}),e.defineDecorator=be,e.defineProperty=ge,e.defineValue=ye,e.deprecateProperty=function(e,t,r,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,set(e){Te(this,r,e)},get(){return we(this,r)}})},e.descriptorForDecorator=oe,e.descriptorForProperty=ie,e.eachProxyArrayDidChange=function(e,t,r,n){let i=Me.get(e) +void 0!==i&&i.arrayDidChange(e,t,r,n)},e.eachProxyArrayWillChange=function(e,t,r,n){let i=Me.get(e) +void 0!==i&&i.arrayWillChange(e,t,r,n)},e.endPropertyChanges=F,e.expandProperties=ue,e.findNamespace=function(e){Le||qe() +return $e[e]} +function d(e,r,n,i,o,s=!0){i||"function"!=typeof n||(i=n,n=null),(0,t.meta)(e).addToListeners(r,n,i,!0===o,s)}function h(e,r,n,i){let o,s +"object"==typeof n?(o=n,s=i):(o=null,s=n),(0,t.meta)(e).removeFromListeners(r,o,s)}function f(e,r,n,i,o){if(void 0===i){let n=void 0===o?(0,t.peekMeta)(e):o +i=null!==n?n.matchingListeners(r):void 0}if(void 0===i||0===i.length)return!1 +for(let t=i.length-3;t>=0;t-=3){let o=i[t],s=i[t+1],a=i[t+2] +if(!s)continue +a&&h(e,r,o,s),o||(o=e) +let l=typeof s +"string"!==l&&"symbol"!==l||(s=o[s]),s.apply(o,n)}return!0}e.findNamespaces=Ve,e.flushAsyncObservers=function(e=!0){let r=(0,o.valueForTag)(o.CURRENT_TAG) +if(R===r)return +R=r,v.forEach(((r,n)=>{let i=(0,t.peekMeta)(n) +r.forEach(((r,s)=>{if(!(0,o.validateTag)(r.tag,r.lastRevision)){let l=()=>{try{f(n,s,[n,r.path],void 0,i)}finally{r.tag=Q(n,r.path,(0,o.tagMetaFor)(n),(0,t.peekMeta)(n)),r.lastRevision=(0,o.valueForTag)(r.tag)}} +e?(0,a.schedule)("actions",l):l()}}))}))},e.get=we,e.getCachedValueFor=function(e,r){let n=(0,t.peekMeta)(e) +return n?n.valueFor(r):void 0},e.getProperties=function(e,t){let r,n={},i=1 +2===arguments.length&&Array.isArray(t)?(i=0,r=arguments[1]):r=Array.from(arguments) +for(;i0},e.hasUnknownProperty=Oe,e.inject=function(e,...t){let r,n +J(t)?r=t:"string"==typeof t[0]&&(n=t[0]) +let i=function(t){let r=(0,p.getOwner)(this)||this.container +return r.lookup(`${e}:${n||t}`)} +0 +let o=me({get:i,set(e,t){ge(this,e,null,t)}}) +return r?o(r[0],r[1],r[2]):o},e.isClassicDecorator=se,e.isComputed=function(e,t){return Boolean(ie(e,t))},Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return o.isConst}}),e.isElementDescriptor=J,e.isNamespaceSearchDisabled=function(){return Le},e.libraries=void 0,e.makeComputedDecorator=re,e.markObjectAsDirty=M,e.nativeDescDecorator=function(e){let t=function(){return e} +return ae(t),t},e.notifyPropertyChange=j,e.objectAt=$,e.on=function(...e){let t=e.pop(),n=e +return(0,r.setListeners)(t,n),t},e.processAllNamespaces=qe,e.processNamespace=ze,e.removeArrayObserver=function(e,t,r){return q(e,t,r,h)},e.removeListener=h,e.removeNamespace=function(e){let t=(0,r.getName)(e) +delete $e[t],He.splice(He.indexOf(e),1),t in s.context.lookup&&e===s.context.lookup[t]&&(s.context.lookup[t]=void 0)},e.removeObserver=function(e,r,n,i,o=b){let s=g(r),a=(0,t.peekMeta)(e) +null!==a&&(a.isPrototypeMeta(e)||a.isInitializing())||k(e,s,o) +h(e,s,n,i)},e.replace=function(e,t,r,n=H){i=e,null!=i&&"function"==typeof i.replace?e.replace(t,r,n):z(e,t,r,n) +var i},e.replaceInNativeArray=z,e.revalidateObservers=T +e.sendEvent=f,e.set=Te,e.setClassicDecorator=ae,e.setNamespaceSearchDisabled=function(e){Le=Boolean(e)},e.setProperties=function(e,t){if(null===t||"object"!=typeof t)return t +return L((()=>{let r=Object.keys(t) +for(let n of r)Te(e,n,t[n])})),t},e.setUnprocessedMixins=function(){Ue=!0},e.tagForObject=function(e){if((0,r.isObject)(e))return(0,o.tagFor)(e,A) +return o.CONSTANT_TAG},e.tagForProperty=x,e.tracked=De,e.trySet=function(e,t,r){return Te(e,t,r,!0)} +const m=":change" +function g(e){return e+m}const b=!s.ENV._DEFAULT_ASYNC_OBSERVERS,y=e.SYNC_OBSERVERS=new Map,v=e.ASYNC_OBSERVERS=new Map +function _(e,r,n,i,o=b){let s=g(r) +d(e,s,n,i,!1,o) +let a=(0,t.peekMeta)(e) +null!==a&&(a.isPrototypeMeta(e)||a.isInitializing())||w(e,s,o)}function O(e,t){let r=!0===t?y:v +return r.has(e)||(r.set(e,new Map),(0,i.registerDestructor)(e,(()=>function(e){y.size>0&&y.delete(e) +v.size>0&&v.delete(e)}(e)),!0)),r.get(e)}function w(e,r,n=!1){let i=O(e,n) +if(i.has(r))i.get(r).count++ +else{let n=r.substring(0,r.lastIndexOf(":")),s=Q(e,n,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)) +i.set(r,{count:1,path:n,tag:s,lastRevision:(0,o.valueForTag)(s),suspended:!1})}}let E=!1,C=[] +function k(e,t,r=!1){if(!0===E)return void C.push([e,t,r]) +let n=!0===r?y:v,i=n.get(e) +if(void 0!==i){let r=i.get(t) +r.count--,0===r.count&&(i.delete(t),0===i.size&&n.delete(e))}}function T(e){v.has(e)&&v.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)})),y.has(e)&&y.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)}))}let R=0 +function S(){y.forEach(((e,r)=>{let n=(0,t.peekMeta)(r) +e.forEach(((e,i)=>{if(!e.suspended&&!(0,o.validateTag)(e.tag,e.lastRevision))try{e.suspended=!0,f(r,i,[r,e.path],void 0,n)}finally{e.tag=Q(r,e.path,(0,o.tagMetaFor)(r),(0,t.peekMeta)(r)),e.lastRevision=(0,o.valueForTag)(e.tag),e.suspended=!1}}))}))}function P(e,t,r){let n=y.get(e) +if(!n)return +let i=n.get(g(t)) +i&&(i.suspended=r)}const A=(0,r.symbol)("SELF_TAG") +function x(e,t,r=!1,n){let i=(0,l.getCustomTagFor)(e) +if(void 0!==i)return i(e,t,r) +let s=(0,o.tagFor)(e,t,n) +return s}function M(e,t){(0,o.dirtyTagFor)(e,t),(0,o.dirtyTagFor)(e,A)}const N=e.PROPERTY_DID_CHANGE=Symbol("PROPERTY_DID_CHANGE") +let D=0 +function j(e,r,n,i){let o=void 0===n?(0,t.peekMeta)(e):n +null!==o&&(o.isInitializing()||o.isPrototypeMeta(e))||(M(e,r),D<=0&&S(),N in e&&(4===arguments.length?e[N](r,i):e[N](r)))}function I(){D++,E=!0}function F(){D--,D<=0&&(S(),function(){E=!1 +for(let[e,t,r]of C)k(e,t,r) +C=[]}())}function L(e){I() +try{e()}finally{F()}}function B(e,t,r,n){return void 0===t?(t=0,r=n=-1):(void 0===r&&(r=-1),void 0===n&&(n=-1)),f(e,"@array:before",[e,t,r,n]),e}function U(e,r,n,i,o=!0){void 0===r?(r=0,n=i=-1):(void 0===n&&(n=-1),void 0===i&&(i=-1)) +let s=(0,t.peekMeta)(e) +if(o&&((i<0||n<0||i-n!=0)&&j(e,"length",s),j(e,"[]",s)),f(e,"@array:change",[e,r,n,i]),null!==s){let t=-1===n?0:n,o=e.length-((-1===i?0:i)-t),a=r<0?o+r:r +if(void 0!==s.revisionFor("firstObject")&&0===a&&j(e,"firstObject",s),void 0!==s.revisionFor("lastObject")){o-10&&this._property(...e)}setup(e,t,r,n){if(super.setup(e,t,r,n),!1===this._hasConfig){let{get:e,set:t}=r +void 0!==e&&(this._getter=e),void 0!==t&&(this._setter=function(r,n){let i=t.call(this,n) +return void 0!==e&&void 0===i?e.call(this):i})}}_property(...e){let t=[] +function r(e){t.push(e)}for(let n of e)ue(n,r) +this._dependentKeys=t}get(e,r){let n,i=(0,t.meta)(e),s=(0,o.tagMetaFor)(e),a=(0,o.tagFor)(e,r,s),l=i.revisionFor(r) +if(void 0!==l&&(0,o.validateTag)(a,l))n=i.valueFor(r) +else{let{_getter:t,_dependentKeys:l}=this;(0,o.untrack)((()=>{n=t.call(e,r)})),void 0!==l&&(0,o.updateTag)(a,Y(e,l,s,i)),i.setValueFor(r,n),i.setRevisionFor(r,(0,o.valueForTag)(a)),W(i,r,n)}return(0,o.consumeTag)(a),Array.isArray(n)&&(0,o.consumeTag)((0,o.tagFor)(n,"[]")),n}set(e,r,n){this._readOnly&&this._throwReadOnlyError(e,r) +let i,s=(0,t.meta)(e) +s.isInitializing()&&void 0!==this._dependentKeys&&this._dependentKeys.length>0&&"function"==typeof e[N]&&e.isComponent&&_(e,r,(()=>{e[N](r)}),void 0,!0) +try{I(),i=this._set(e,r,n,s),W(s,r,i) +let t=(0,o.tagMetaFor)(e),a=(0,o.tagFor)(e,r,t),{_dependentKeys:l}=this +void 0!==l&&(0,o.updateTag)(a,Y(e,l,t,s)),s.setRevisionFor(r,(0,o.valueForTag)(a))}finally{F()}return i}_throwReadOnlyError(e,t){throw new Error(`Cannot set read-only property "${t}" on object: ${(0,n.inspect)(e)}`)}_set(e,t,r,n){let i,o=void 0!==n.revisionFor(t),s=n.valueFor(t),{_setter:a}=this +P(e,t,!0) +try{i=a.call(e,t,r,s)}finally{P(e,t,!1)}return o&&s===i||(n.setValueFor(t,i),j(e,t,n,r)),i}teardown(e,t,r){void 0!==r.revisionFor(t)&&(r.setRevisionFor(t,void 0),r.setValueFor(t,void 0)),super.teardown(e,t,r)}}e.ComputedProperty=de +class he extends de{get(e,r){let n,i=(0,t.meta)(e),s=(0,o.tagMetaFor)(e),a=(0,o.tagFor)(e,r,s),l=i.revisionFor(r) +if(void 0!==l&&(0,o.validateTag)(a,l))n=i.valueFor(r) +else{let{_getter:t}=this,s=(0,o.track)((()=>{n=t.call(e,r)}));(0,o.updateTag)(a,s),i.setValueFor(r,n),i.setRevisionFor(r,(0,o.valueForTag)(a)),W(i,r,n)}return(0,o.consumeTag)(a),Array.isArray(n)&&(0,o.consumeTag)((0,o.tagFor)(n,"[]",s)),n}}class fe extends Function{readOnly(){let e=oe(this) +return e._readOnly=!0,this}meta(e){let t=oe(this) +return 0===arguments.length?t._meta||{}:(t._meta=e,this)}get _getter(){return oe(this)._getter}set enumerable(e){oe(this).enumerable=e}}function me(...e){if(J(e)){return re(new de([]),fe)(e[0],e[1],e[2])}return re(new de(e),fe)}function ge(e,r,n,i,o){let s=void 0===o?(0,t.meta)(e):o,a=ie(e,r,s),l=void 0!==a +l&&a.teardown(e,r,s),se(n)?be(e,r,n,s):null==n?ye(e,r,i,l,!0):Object.defineProperty(e,r,n),s.isPrototypeMeta(e)||T(e)}function be(e,t,r,n){let i +return i=r(e,t,void 0,n),Object.defineProperty(e,t,i),r}function ye(e,t,r,n,i=!0){return!0===n||!1===i?Object.defineProperty(e,t,{configurable:!0,enumerable:i,writable:!0,value:r}):e[t]=r,r}const ve=new r.Cache(1e3,(e=>e.indexOf("."))) +function _e(e){return"string"==typeof e&&-1!==ve.get(e)}e.PROXY_CONTENT=(0,r.symbol)("PROXY_CONTENT") +function Oe(e){return"object"==typeof e&&null!==e&&"function"==typeof e.unknownProperty}function we(e,t){return _e(t)?Ce(e,t):Ee(e,t)}function Ee(e,t){if(null==e)return +let r +return"object"==typeof e||"function"==typeof e?(r=e[t],void 0===r&&"object"==typeof e&&!(t in e)&&Oe(e)&&(r=e.unknownProperty(t)),(0,o.isTracking)()&&((0,o.consumeTag)((0,o.tagFor)(e,t)),(Array.isArray(r)||(0,u.isEmberArray)(r))&&(0,o.consumeTag)((0,o.tagFor)(r,"[]")))):r=e[t],r}function Ce(e,t,r){let n="string"==typeof t?t.split("."):t +for(let i of n){if(null==e||e.isDestroyed)return +if(r&&("__proto__"===i||"constructor"===i))return +e=Ee(e,i)}return e}Ee("foo","a"),Ee("foo",1),Ee({},"a"),Ee({},1),Ee({unknownProperty(){}},"a"),Ee({unknownProperty(){}},1),we({},"foo"),we({},"foo.bar") +let ke={} +function Te(e,t,r,n){return e.isDestroyed?r:_e(t)?function(e,t,r,n){let i=t.split("."),o=i.pop() +let s=Ce(e,i,!0) +if(null!=s)return Te(s,o,r) +if(!n)throw new Error(`Property set failed: object in path "${i.join(".")}" could not be found.`)}(e,t,r,n):Re(e,t,r)}function Re(e,t,n){let i,o=(0,r.lookupDescriptor)(e,t) +return null!==o&&te.has(o.set)?(e[t]=n,n):(i=e[t],void 0!==i||"object"!=typeof e||t in e||"function"!=typeof e.setUnknownProperty?(e[t]=n,i!==n&&j(e,t)):e.setUnknownProperty(t,n),n)}(0,r.setProxy)(ke),(0,o.track)((()=>Ee({},"a"))),(0,o.track)((()=>Ee({},1))),(0,o.track)((()=>Ee({a:[]},"a"))),(0,o.track)((()=>Ee({a:ke},"a"))) +class Se extends Function{readOnly(){return oe(this).readOnly(),this}oneWay(){return oe(this).oneWay(),this}meta(e){let t=oe(this) +if(0===arguments.length)return t._meta||{} +t._meta=e}}class Pe extends X{constructor(e){super(),this.altKey=e}setup(e,t,r,n){super.setup(e,t,r,n),G.add(this)}get(e,r){let n,i=(0,t.meta)(e),s=(0,o.tagMetaFor)(e),a=(0,o.tagFor)(e,r,s);(0,o.untrack)((()=>{n=we(e,this.altKey)})) +let l=i.revisionFor(r) +return void 0!==l&&(0,o.validateTag)(a,l)||((0,o.updateTag)(a,Q(e,this.altKey,s,i)),i.setRevisionFor(r,(0,o.valueForTag)(a)),W(i,r,n)),(0,o.consumeTag)(a),n}set(e,t,r){return Te(e,this.altKey,r)}readOnly(){this.set=Ae}oneWay(){this.set=xe}}function Ae(e,t){throw new Error(`Cannot set read-only property '${t}' on object: ${(0,n.inspect)(e)}`)}function xe(e,t,r){return ge(e,t,null),Te(e,t,r)}const Me=new WeakMap +class Ne{constructor(){this._registry=[],this._coreLibIndex=0}_getLibraryByName(e){let t=this._registry +for(let r of t)if(r.name===e)return r}register(e,t,r){let n=this._registry.length +this._getLibraryByName(e)||(r&&(n=this._coreLibIndex++),this._registry.splice(n,0,{name:e,version:t}))}registerCoreLibrary(e,t){this.register(e,t,!0)}deRegister(e){let t,r=this._getLibraryByName(e) +r&&(t=this._registry.indexOf(r),this._registry.splice(t,1))}}e.Libraries=Ne;(e.libraries=new Ne).registerCoreLibrary("Ember",c.default) +e.DEBUG_INJECTION_FUNCTIONS=void 0 +function De(...e){if(!J(e)){let t=e[0] +0 +let r=t?t.initializer:void 0,n=t?t.value:void 0,i=function(e,t,i,o,s){return je([e,t,{initializer:r||(()=>n)}])} +return ae(i),i}return je(e)}function je([e,r,n]){let{getter:i,setter:s}=(0,o.trackedData)(r,n?n.initializer:void 0) +function a(){let e=i(this) +return(Array.isArray(e)||(0,u.isEmberArray)(e))&&(0,o.consumeTag)((0,o.tagFor)(e,"[]")),e}function l(e){s(this,e),(0,o.dirtyTagFor)(this,A)}let c={enumerable:!0,configurable:!0,isTracked:!0,get:a,set:l} +return te.add(l),(0,t.meta)(e).writeDescriptors(r,new Ie(a,l)),c}class Ie{constructor(e,t){this._get=e,this._set=t,G.add(this)}get(e){return this._get.call(e)}set(e,t,r){this._set.call(e,r)}}e.TrackedDescriptor=Ie +e.cached=(...e)=>{const[t,r,n]=e +const i=new WeakMap,s=n.get +n.get=function(){return i.has(this)||i.set(this,(0,o.createCache)(s.bind(this))),(0,o.getValue)(i.get(this))}} +const Fe=Object.prototype.hasOwnProperty +let Le=!1 +const Be={_set:0,_unprocessedNamespaces:!1,get unprocessedNamespaces(){return this._unprocessedNamespaces},set unprocessedNamespaces(e){this._set++,this._unprocessedNamespaces=e}} +let Ue=!1 +const He=e.NAMESPACES=[],$e=e.NAMESPACES_BY_ID=Object.create(null) +function Ve(){if(!Be.unprocessedNamespaces)return +let e=s.context.lookup,t=Object.keys(e) +for(let i of t){if(!((n=i.charCodeAt(0))>=65&&n<=90))continue +let t=Ye(e,i) +t&&(0,r.setName)(t,i)}var n}function ze(e){Ge([e.toString()],e,new Set)}function qe(){let e=Be.unprocessedNamespaces +if(e&&(Ve(),Be.unprocessedNamespaces=!1),e||Ue){let e=He +for(let t of e)ze(t) +Ue=!1}}function Ge(e,t,n){let i=e.length,o=e.join(".") +$e[o]=t,(0,r.setName)(t,o) +for(let s in t){if(!Fe.call(t,s))continue +let o=t[s] +if(e[i]=s,o&&void 0===(0,r.getName)(o))(0,r.setName)(o,e.join(".")) +else if(o&&We(o)){if(n.has(o))continue +n.add(o),Ge(e,o,n)}}e.length=i}function We(e){return null!=e&&"object"==typeof e&&e.isNamespace}function Ye(e,t){try{let r=e[t] +return(null!==r&&"object"==typeof r||"function"==typeof r)&&r.isNamespace&&r}catch(r){}}})),e("@ember/-internals/owner/index",["exports","@glimmer/owner"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.getOwner=function(e){return(0,t.getOwner)(e)},e.isFactory=function(e){return null!=e&&"function"==typeof e.create},e.setOwner=function(e,r){(0,t.setOwner)(e,r)}})),e("@ember/-internals/routing/index",["exports","@ember/routing/-internals"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"RouterDSL",{enumerable:!0,get:function(){return t.DSL}}),Object.defineProperty(e,"controllerFor",{enumerable:!0,get:function(){return t.controllerFor}}),Object.defineProperty(e,"generateController",{enumerable:!0,get:function(){return t.generateController}}),Object.defineProperty(e,"generateControllerFactory",{enumerable:!0,get:function(){return t.generateControllerFactory}})})),e("@ember/-internals/runtime/index",["exports","@ember/-internals/runtime/lib/mixins/registry_proxy","@ember/-internals/runtime/lib/mixins/container_proxy","@ember/-internals/runtime/lib/mixins/comparable","@ember/-internals/runtime/lib/mixins/action_handler","@ember/-internals/runtime/lib/mixins/-proxy","@ember/enumerable/mutable","@ember/-internals/runtime/lib/mixins/target_action_support","@ember/-internals/runtime/lib/ext/rsvp"],(function(e,t,r,n,i,o,s,a,l){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ActionHandler",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"Comparable",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"ContainerProxyMixin",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"MutableEnumerable",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"RSVP",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"RegistryProxyMixin",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"TargetActionSupport",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"_ProxyMixin",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"_contentFor",{enumerable:!0,get:function(){return o.contentFor}}),Object.defineProperty(e,"onerrorDefault",{enumerable:!0,get:function(){return l.onerrorDefault}})})),e("@ember/-internals/runtime/lib/ext/rsvp",["exports","rsvp","@ember/runloop","@ember/-internals/error-handling","@ember/debug"],(function(e,t,r,n,i){"use strict" +function o(e){let t=function(e){if(!e)return +let t=e +if(t.errorThrown)return function(e){let t=e.errorThrown +"string"==typeof t&&(t=new Error(t)) +return Object.defineProperty(t,"__reason_with_error_thrown__",{value:e,enumerable:!1}),t}(t) +let r=e +if("UnrecognizedURLError"===r.name)return +if("TransitionAborted"===e.name)return +return e}(e) +if(t){let e=(0,n.getDispatchOverride)() +if(!e)throw t +e(t)}}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.onerrorDefault=o,t.configure("async",((e,t)=>{r._backburner.schedule("actions",null,e,t)})),t.configure("after",(e=>{r._backburner.schedule(r._rsvpErrorQueue,null,e)})),t.on("error",o) +e.default=t})),e("@ember/-internals/runtime/lib/mixins/-proxy",["exports","@ember/-internals/meta","@ember/object/mixin","@ember/-internals/metal","@ember/-internals/utils","@ember/debug","@glimmer/manager","@glimmer/validator"],(function(e,t,r,n,i,o,s,a){"use strict" +function l(e){let t=(0,n.get)(e,"content") +return(0,a.updateTag)((0,n.tagForObject)(e),(0,n.tagForObject)(t)),t}function u(e,t,r){let o=(0,a.tagMetaFor)(e),s=(0,a.tagFor)(e,t,o) +if(t in e)return s +{let u=[s,(0,a.tagFor)(e,"content",o)],c=l(e) +return(0,i.isObject)(c)&&u.push((0,n.tagForProperty)(c,t,r)),(0,a.combine)(u)}}Object.defineProperty(e,"__esModule",{value:!0}),e.contentFor=l,e.default=void 0 +const c=r.default.create({content:null,init(){this._super(...arguments),(0,i.setProxy)(this),(0,n.tagForObject)(this),(0,s.setCustomTagFor)(this,u)},willDestroy(){this.set("content",null),this._super(...arguments)},isTruthy:(0,n.computed)("content",(function(){return Boolean((0,n.get)(this,"content"))})),unknownProperty(e){let t=l(this) +return t?(0,n.get)(t,e):void 0},setUnknownProperty(e,r){let i=(0,t.meta)(this) +if(i.isInitializing()||i.isPrototypeMeta(this))return(0,n.defineProperty)(this,e,null,r),r +let o=l(this) +return(0,n.set)(o,e,r)}}) +e.default=c})),e("@ember/-internals/runtime/lib/mixins/action_handler",["exports","@ember/object/mixin","@ember/-internals/metal","@ember/debug"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const i=t.default.create({mergedProperties:["actions"],send(e,...t){if(this.actions&&this.actions[e]){if(!(!0===this.actions[e].apply(this,t)))return}let n=(0,r.get)(this,"target") +n&&n.send(...arguments)}}) +e.default=i})),e("@ember/-internals/runtime/lib/mixins/comparable",["exports","@ember/object/mixin"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const r=t.default.create({compare:null}) +e.default=r})),e("@ember/-internals/runtime/lib/mixins/container_proxy",["exports","@ember/runloop","@ember/object/mixin"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const n=r.default.create({__container__:null,ownerInjection(){return this.__container__.ownerInjection()},lookup(e,t){return this.__container__.lookup(e,t)},destroy(){let e=this.__container__ +e&&(0,t.join)((()=>{e.destroy(),(0,t.schedule)("destroy",e,"finalizeDestroy")})),this._super()},factoryFor(e){return this.__container__.factoryFor(e)}}) +e.default=n})),e("@ember/-internals/runtime/lib/mixins/registry_proxy",["exports","@ember/debug","@ember/object/mixin"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const n=r.default.create({__registry__:null,resolveRegistration(e){return this.__registry__.resolve(e)},register:i("register"),unregister:i("unregister"),hasRegistration:i("has"),registeredOption:i("getOption"),registerOptions:i("options"),registeredOptions:i("getOptions"),registerOptionsForType:i("optionsForType"),registeredOptionsForType:i("getOptionsForType")}) +function i(e){return function(...t){return this.__registry__[e](...t)}}e.default=n})),e("@ember/-internals/runtime/lib/mixins/target_action_support",["exports","@ember/-internals/environment","@ember/-internals/metal","@ember/object/mixin","@ember/debug"],(function(e,t,r,n,i){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const o=n.default.create({target:null,action:null,actionContext:null,actionContextObject:(0,r.computed)("actionContext",(function(){let e=(0,r.get)(this,"actionContext") +if("string"==typeof e){let n=(0,r.get)(this,e) +return void 0===n&&(n=(0,r.get)(t.context.lookup,e)),n}return e})),triggerAction(e={}){let{action:n,target:i,actionContext:o}=e +n=n||(0,r.get)(this,"action"),i=i||function(e){let n=(0,r.get)(e,"target") +if(n){if("string"==typeof n){let i=(0,r.get)(e,n) +return void 0===i&&(i=(0,r.get)(t.context.lookup,n)),i}return n}if(e._target)return e._target +return null}(this),void 0===o&&(o=(0,r.get)(this,"actionContextObject")||this) +let s=Array.isArray(o)?o:[o] +if(i&&n){let e +if(e=null!=(a=i)&&"object"==typeof a&&"function"==typeof a.send?i.send(n,...s):i[n](...s),!1!==e)return!0}var a +return!1}}) +e.default=o})),e("@ember/-internals/string/index",["exports","@ember/-internals/utils"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.classify=function(e){return a.get(e)},e.dasherize=function(e){return n.get(e)} +const r=/[ _]/g,n=new t.Cache(1e3,(e=>{return(t=e,u.get(t)).replace(r,"-") +var t})),i=/^(-|_)+(.)?/,o=/(.)(-|_|\.|\s)+(.)?/g,s=/(^|\/|\.)([a-z])/g,a=new t.Cache(1e3,(e=>{let t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/") +for(let s=0;se.toUpperCase()))})),l=/([a-z\d])([A-Z])/g,u=new t.Cache(1e3,(e=>e.replace(l,"$1_$2").toLowerCase()))})),e("@ember/-internals/utility-types/index",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.Opaque=void 0 +e.Opaque=class{}})),e("@ember/-internals/utils/index",["exports","@ember/debug"],(function(e,t){"use strict" +function r(e){let t=Object.create(null) +t[e]=1 +for(let r in t)if(r===e)return r +return e}function n(e){return null!==e&&("object"==typeof e||"function"==typeof e)}Object.defineProperty(e,"__esModule",{value:!0}),e.ROOT=e.GUID_KEY=e.Cache=void 0,e.canInvoke=function(e,t){return null!=e&&"function"==typeof e[t]},e.checkHasSuper=void 0,e.dictionary=function(e){let t=Object.create(e) +return t._dict=null,delete t._dict,t},e.enumerableSymbol=function(e){let t=u+Math.floor(Math.random()*Date.now()).toString(),n=r(`__${e}${t}__`) +0 +return n},e.generateGuid=function(e,t=s){let r=t+o().toString() +n(e)&&a.set(e,r) +return r},e.getDebugName=void 0,e.getName=function(e){return C.get(e)},e.guidFor=function(e){let t +if(n(e))t=a.get(e),void 0===t&&(t=`${s}${o()}`,a.set(e,t)) +else if(t=l.get(e),void 0===t){let r=typeof e +t="string"===r?`st${o()}`:"number"===r?`nu${o()}`:"symbol"===r?`sy${o()}`:`(${e})`,l.set(e,t)}return t},e.intern=r,e.isInternalSymbol=function(e){return-1!==c.indexOf(e)},e.isObject=n,e.isProxy=function(e){if(n(e))return R.has(e) +return!1},e.lookupDescriptor=E,e.observerListenerMetaFor=function(e){return v.get(e)},e.setListeners=function(e,t){_(e).listeners=t},e.setName=function(e,t){n(e)&&C.set(e,t)},e.setObservers=function(e,t){_(e).observers=t},e.setProxy=function(e){n(e)&&R.add(e)},e.teardownMandatorySetter=e.symbol=e.setupMandatorySetter=e.setWithMandatorySetter=void 0,e.toString=function e(t){if("string"==typeof t)return t +if(null===t)return"null" +if(void 0===t)return"undefined" +if(Array.isArray(t)){let r="" +for(let n=0;n0&&(r+=","),T(t[n])||(r+=e(t[n])) +return r}if("function"==typeof t.toString)return t.toString() +return k.call(t)},e.uuid=o,e.wrap=function(e,t){if(!b(e))return e +if(!O.has(t)&&b(t))return w(e,w(t,g)) +return w(e,t)} +let i=0 +function o(){return++i}const s="ember",a=new WeakMap,l=new Map,u=e.GUID_KEY=r(`__ember${Date.now()}`) +const c=[] +e.symbol=Symbol +let p +e.getDebugName=p +const d=/\.(_super|call\(this|apply\(this)/,h=Function.prototype.toString,f=e.checkHasSuper=h.call((function(){return this})).indexOf("return this")>-1?function(e){return d.test(h.call(e))}:function(){return!0},m=new WeakMap,g=e.ROOT=Object.freeze((function(){})) +function b(e){let t=m.get(e) +return void 0===t&&(t=f(e),m.set(e,t)),t}m.set(g,!1) +class y{constructor(){this.listeners=void 0,this.observers=void 0}}const v=new WeakMap +function _(e){let t=v.get(e) +return void 0===t&&(t=new y,v.set(e,t)),t}const O=new WeakSet +function w(e,t){function r(){let r=this._super +this._super=t +let n=e.apply(this,arguments) +return this._super=r,n}O.add(r) +let n=v.get(e) +return void 0!==n&&v.set(r,n),r}function E(e,t){let r=e +do{let e=Object.getOwnPropertyDescriptor(r,t) +if(void 0!==e)return e +r=Object.getPrototypeOf(r)}while(null!==r) +return null}const C=new WeakMap +const k=Object.prototype.toString +function T(e){return null==e}const R=new WeakSet +e.Cache=class{constructor(e,t,r=new Map){this.limit=e,this.func=t,this.store=r,this.size=0,this.misses=0,this.hits=0}get(e){return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,this.set(e,this.func(e)))}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}} +e.setupMandatorySetter=void 0,e.teardownMandatorySetter=void 0,e.setWithMandatorySetter=void 0})),e("@ember/-internals/views/index",["exports","@ember/-internals/views/lib/system/utils","@ember/-internals/views/lib/system/event_dispatcher","@ember/-internals/views/lib/component_lookup","@ember/-internals/views/lib/views/core_view","@ember/-internals/views/lib/mixins/class_names_support","@ember/-internals/views/lib/mixins/child_views_support","@ember/-internals/views/lib/mixins/view_state_support","@ember/-internals/views/lib/mixins/view_support","@ember/-internals/views/lib/mixins/action_support","@ember/-internals/views/lib/compat/attrs","@ember/-internals/views/lib/system/action_manager"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ActionManager",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(e,"ActionSupport",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(e,"ChildViewsSupport",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"ClassNamesSupport",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"ComponentLookup",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"CoreView",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"EventDispatcher",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"MUTABLE_CELL",{enumerable:!0,get:function(){return c.MUTABLE_CELL}}),Object.defineProperty(e,"ViewMixin",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"ViewStateSupport",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"addChildView",{enumerable:!0,get:function(){return t.addChildView}}),Object.defineProperty(e,"clearElementView",{enumerable:!0,get:function(){return t.clearElementView}}),Object.defineProperty(e,"clearViewElement",{enumerable:!0,get:function(){return t.clearViewElement}}),Object.defineProperty(e,"constructStyleDeprecationMessage",{enumerable:!0,get:function(){return t.constructStyleDeprecationMessage}}),Object.defineProperty(e,"getChildViews",{enumerable:!0,get:function(){return t.getChildViews}}),Object.defineProperty(e,"getElementView",{enumerable:!0,get:function(){return t.getElementView}}),Object.defineProperty(e,"getRootViews",{enumerable:!0,get:function(){return t.getRootViews}}),Object.defineProperty(e,"getViewBoundingClientRect",{enumerable:!0,get:function(){return t.getViewBoundingClientRect}}),Object.defineProperty(e,"getViewBounds",{enumerable:!0,get:function(){return t.getViewBounds}}),Object.defineProperty(e,"getViewClientRects",{enumerable:!0,get:function(){return t.getViewClientRects}}),Object.defineProperty(e,"getViewElement",{enumerable:!0,get:function(){return t.getViewElement}}),Object.defineProperty(e,"getViewId",{enumerable:!0,get:function(){return t.getViewId}}),Object.defineProperty(e,"isSimpleClick",{enumerable:!0,get:function(){return t.isSimpleClick}}),Object.defineProperty(e,"setElementView",{enumerable:!0,get:function(){return t.setElementView}}),Object.defineProperty(e,"setViewElement",{enumerable:!0,get:function(){return t.setViewElement}})})),e("@ember/-internals/views/lib/compat/attrs",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.MUTABLE_CELL=void 0 +e.MUTABLE_CELL=Symbol("MUTABLE_CELL")})),e("@ember/-internals/views/lib/compat/fallback-view-registry",["exports","@ember/-internals/utils"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=(0,t.dictionary)(null)})),e("@ember/-internals/views/lib/component_lookup",["exports","@ember/object"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=t.default.extend({componentFor(e,t){let r=`component:${e}` +return t.factoryFor(r)},layoutFor(e,t,r){let n=`template:components/${e}` +return t.lookup(n,r)}})})),e("@ember/-internals/views/lib/mixins/action_support",["exports","@ember/-internals/metal","@ember/object/mixin","@ember/debug"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const i=r.default.create({send(e,...r){let n=this.actions&&this.actions[e] +if(n){if(!(!0===n.apply(this,r)))return}let i=(0,t.get)(this,"target") +i&&i.send(...arguments)}}) +e.default=i})),e("@ember/-internals/views/lib/mixins/child_views_support",["exports","@ember/-internals/metal","@ember/object/mixin","@ember/-internals/views/lib/system/utils"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const i=r.default.create({childViews:(0,t.nativeDescDecorator)({configurable:!1,enumerable:!1,get(){return(0,n.getChildViews)(this)}}),appendChild(e){(0,n.addChildView)(this,e)}}) +e.default=i})),e("@ember/-internals/views/lib/mixins/class_names_support",["exports","@ember/-internals/metal","@ember/object/mixin","@ember/debug"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const i=Object.freeze([]),o=r.default.create({concatenatedProperties:["classNames","classNameBindings"],init(){this._super(...arguments)},classNames:i,classNameBindings:i}) +e.default=o})) +e("@ember/-internals/views/lib/mixins/view_state_support",["exports","@ember/object/mixin"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const r=t.default.create({_transitionTo(e){let t=this._currentState,r=this._currentState=this._states[e] +this._state=e,t&&t.exit&&t.exit(this),r.enter&&r.enter(this)}}) +e.default=r})),e("@ember/-internals/views/lib/mixins/view_support",["exports","@ember/-internals/utils","@ember/-internals/metal","@ember/object/mixin","@ember/debug","@ember/-internals/browser-environment","@ember/-internals/views/lib/system/utils"],(function(e,t,r,n,i,o,s){"use strict" +function a(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const l=n.default.create({concatenatedProperties:["attributeBindings"],nearestOfType(e){let t=this.parentView,r=e instanceof n.default?t=>e.detect(t):t=>e.detect(t.constructor) +for(;t;){if(r(t))return t +t=t.parentView}},nearestWithProperty(e){let t=this.parentView +for(;t;){if(e in t)return t +t=t.parentView}},rerender(){return this._currentState.rerender(this)},element:(0,r.nativeDescDecorator)({configurable:!1,enumerable:!1,get(){return this.renderer.getElement(this)}}),appendTo(e){let t +return t=o.hasDOM&&"string"==typeof e?document.querySelector(e):e,this.renderer.appendTo(this,t),this},append(){return this.appendTo(document.body)},elementId:null,willInsertElement:a,didInsertElement:a,willClearRender:a,destroy(){this._super(...arguments),this._currentState.destroy(this)},willDestroyElement:a,didDestroyElement:a,parentViewDidChange:a,tagName:null,init(){this._super(...arguments),this.elementId||""===this.tagName||(this.elementId=(0,t.guidFor)(this))},handleEvent(e,t){return this._currentState.handleEvent(this,e,t)}}) +e.default=l})),e("@ember/-internals/views/lib/system/action_manager",["exports"],(function(e){"use strict" +function t(){}Object.defineProperty(e,"__esModule",{value:!0}),e.default=t,t.registeredActions={}})),e("@ember/-internals/views/lib/system/event_dispatcher",["exports","@ember/-internals/owner","@ember/debug","@ember/-internals/metal","@ember/object","@ember/-internals/views","@ember/-internals/views/lib/system/action_manager"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const a="ember-application" +class l extends i.default{constructor(){super(...arguments),this.events={touchstart:"touchStart",touchmove:"touchMove",touchend:"touchEnd",touchcancel:"touchCancel",keydown:"keyDown",keyup:"keyUp",keypress:"keyPress",mousedown:"mouseDown",mouseup:"mouseUp",contextmenu:"contextMenu",click:"click",dblclick:"doubleClick",focusin:"focusIn",focusout:"focusOut",submit:"submit",input:"input",change:"change",dragstart:"dragStart",drag:"drag",dragenter:"dragEnter",dragleave:"dragLeave",dragover:"dragOver",drop:"drop",dragend:"dragEnd"},this.rootElement="body",this._eventHandlers=Object.create(null),this._didSetup=!1,this.finalEventNameMapping=null,this._sanitizedRootElement=null,this.lazyEvents=new Map,this._reverseEventNameMapping=null}setup(e,t){let r=this.finalEventNameMapping={...(0,n.get)(this,"events"),...e} +this._reverseEventNameMapping=Object.keys(r).reduce(((e,t)=>{let n=r[t] +return n?{...e,[n]:t}:e}),{}) +let i=this.lazyEvents +null!=t&&(0,n.set)(this,"rootElement",t) +let o=(0,n.get)(this,"rootElement"),s="string"!=typeof o?o:document.querySelector(o) +s.classList.add(a),this._sanitizedRootElement=s +for(let n in r)Object.prototype.hasOwnProperty.call(r,n)&&i.set(n,r[n]??null) +this._didSetup=!0}setupHandlerForBrowserEvent(e){this.setupHandler(this._sanitizedRootElement,e,this.finalEventNameMapping[e]??null)}setupHandlerForEmberEvent(e){let t=this._reverseEventNameMapping?.[e] +t&&this.setupHandler(this._sanitizedRootElement,t,e)}setupHandler(e,t,r){if(null===r||!this.lazyEvents.has(t))return +let n=(e,t)=>{let n=(0,o.getElementView)(e),i=!0 +return n&&(i=n.handleEvent(r,t)),i},i=(e,t)=>{let n,i=e.getAttribute("data-ember-action") +if(""===i){n=[] +for(let t of e.attributes){if(0===t.name.indexOf("data-ember-action-")){let e=s.default.registeredActions[t.value] +n.push(e)}}}else if(i){let e=s.default.registeredActions[i] +e&&(n=[e])}if(!n)return +let o=!0 +for(let s=0;s{let t=e.target +do{if((0,o.getElementView)(t)){if(!1===n(t,e)){e.preventDefault(),e.stopPropagation() +break}if(!0===e.cancelBubble)break}else if("function"==typeof t.hasAttribute&&t.hasAttribute("data-ember-action")&&!1===i(t,e))break +t=t.parentNode}while(t instanceof Element)} +e.addEventListener(t,a),this.lazyEvents.delete(t)}destroy(){if(!1===this._didSetup)return +let e=this._sanitizedRootElement +if(e){for(let t in this._eventHandlers)e.removeEventListener(t,this._eventHandlers[t]) +return e.classList.remove(a),this._super(...arguments)}}toString(){return"(EventDispatcher)"}}e.default=l})),e("@ember/-internals/views/lib/system/utils",["exports","@ember/-internals/owner","@ember/-internals/utils","@ember/debug"],(function(e,t,r,n){"use strict" +function i(e){return""!==e.tagName&&e.elementId?e.elementId:(0,r.guidFor)(e)}Object.defineProperty(e,"__esModule",{value:!0}),e.addChildView=function(e,t){let r=a.get(e) +void 0===r&&(r=l(e)) +r.add(i(t))},e.clearElementView=function(e){o.delete(e)},e.clearViewElement=function(e){s.delete(e)},e.collectChildViews=u,e.constructStyleDeprecationMessage=function(e){return'Binding style attributes may introduce cross-site scripting vulnerabilities; please ensure that values being bound are properly escaped. For more information, including how to disable this warning, see https://deprecations.emberjs.com/v1.x/#toc_binding-style-attributes. Style affected: "'+e+'"'},e.contains=function(e,t){if(void 0!==e.contains)return e.contains(t) +let r=t.parentNode +for(;r&&(r=r.parentNode);)if(r===e)return!0 +return!1},e.elMatches=void 0,e.getChildViews=function(e){let r=(0,t.getOwner)(e) +let n=r.lookup("-view-registry:main") +return u(e,n)},e.getElementView=function(e){return o.get(e)||null},e.getRootViews=function(e){let t=e.lookup("-view-registry:main"),r=[] +return Object.keys(t).forEach((e=>{let n=t[e] +null===n.parentView&&r.push(n)})),r},e.getViewBoundingClientRect=function(e){return p(e).getBoundingClientRect()},e.getViewBounds=c,e.getViewClientRects=function(e){return p(e).getClientRects()},e.getViewElement=function(e){return s.get(e)||null},e.getViewId=i,e.getViewRange=p,e.initChildViews=l,e.isSimpleClick=function(e){if(!(e instanceof MouseEvent))return!1 +let t=e.shiftKey||e.metaKey||e.altKey||e.ctrlKey,r=e.which>1 +return!t&&!r},e.matches=function(e,t){return d.call(e,t)},e.setElementView=function(e,t){o.set(e,t)},e.setViewElement=function(e,t){s.set(e,t)} +const o=new WeakMap,s=new WeakMap +const a=new WeakMap +function l(e){let t=new Set +return a.set(e,t),t}function u(e,t){let r=[],n=a.get(e) +return void 0!==n&&n.forEach((e=>{let n=t[e] +!n||n.isDestroying||n.isDestroyed||r.push(n)})),r}function c(e){return e.renderer.getBounds(e)}function p(e){let t=c(e),r=document.createRange() +return r.setStartBefore(t.firstNode),r.setEndAfter(t.lastNode),r}const d=e.elMatches="undefined"!=typeof Element?Element.prototype.matches:void 0})),e("@ember/-internals/views/lib/views/core_view",["exports","@ember/-internals/metal","@ember/-internals/runtime","@ember/object/evented","@ember/object/-internals","@ember/-internals/views/lib/views/states"],(function(e,t,r,n,i,o){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +var s=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +class a extends(i.FrameworkObject.extend(n.default,r.ActionHandler)){constructor(){super(...arguments),this.isView=!0}init(e){super.init(e),this._superTrigger=this.trigger,this.trigger=this._trigger,this._superHas=this.has,this.has=this._has,this.parentView??=null,this._state="preRender",this._currentState=this._states.preRender}instrumentDetails(e){return e.object=this.toString(),e.containerKey=this._debugContainerKey,e.view=this,e}_trigger(e,...t){this._superTrigger(e,...t) +let r=this[e] +if("function"==typeof r)return r.apply(this,t)}_has(e){return"function"==typeof this[e]||this._superHas(e)}}a.isViewFactory=!0,s([(0,t.inject)("renderer","-dom")],a.prototype,"renderer",void 0),a.prototype._states=o.default +e.default=a})),e("@ember/-internals/views/lib/views/states",["exports","@ember/-internals/utils","@ember/debug","@ember/instrumentation","@ember/runloop"],(function(e,t,r,n,i){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const o=Object.freeze({appendChild(){throw new Error("You can't use appendChild outside of the rendering process")},handleEvent:()=>!0,rerender(){},destroy(){}}),s=Object.freeze({...o}),a=Object.freeze({...o,rerender(e){e.renderer.rerender()},destroy(e){e.renderer.remove(e)},handleEvent:(e,t,r)=>!e.has(t)||(0,n.flaggedInstrument)(`interaction.${t}`,{event:r,view:e},(()=>(0,i.join)(e,e.trigger,t,r)))}),l=Object.freeze({...a,enter(e){e.renderer.register(e)}}),u=Object.freeze({...o,appendChild(){throw new Error("You can't call appendChild on a view being destroyed")},rerender(){throw new Error("You can't call rerender on a view being destroyed")}}),c=Object.freeze({preRender:s,inDOM:l,hasElement:a,destroying:u}) +e.default=c})),e("@ember/application/index",["exports","@ember/owner","@ember/-internals/utils","@ember/-internals/environment","@ember/-internals/browser-environment","@ember/debug","@ember/runloop","@ember/-internals/metal","@ember/application/lib/lazy_load","@ember/-internals/runtime","@ember/-internals/views","@ember/routing/route","@ember/routing/router","@ember/routing/hash-location","@ember/routing/history-location","@ember/routing/none-location","@ember/routing/-internals","@ember/application/instance","@ember/engine","@ember/-internals/container","@ember/-internals/glimmer","@ember/routing/router-service"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v,_,O){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"_loaded",{enumerable:!0,get:function(){return l._loaded}}),e.getOwner=e.default=void 0,Object.defineProperty(e,"onLoad",{enumerable:!0,get:function(){return l.onLoad}}),Object.defineProperty(e,"runLoadHooks",{enumerable:!0,get:function(){return l.runLoadHooks}}),e.setOwner=void 0 +e.getOwner=t.getOwner,e.setOwner=t.setOwner +class w extends y.default{constructor(){super(...arguments),this._bootPromise=null,this._bootResolver=null}static buildRegistry(e){let t=super.buildRegistry(e) +return function(e){e.register("router:main",d.default),e.register("-view-registry:main",{create:()=>(0,r.dictionary)(null)}),e.register("route:basic",p.default),e.register("event_dispatcher:main",c.EventDispatcher),e.register("location:hash",h.default),e.register("location:history",f.default),e.register("location:none",m.default),e.register(v.privatize`-bucket-cache:main`,{create:()=>new g.BucketCache}),e.register("service:router",O.default)}(t),(0,_.setupApplicationRegistry)(t),t}init(e){super.init(e),this.rootElement??="body",this._document??=null,this.eventDispatcher??=null,this.customEvents??=null,this.autoboot??=!0,this._document??=i.hasDOM?window.document:null,this._globalsMode??=!0,this._readinessDeferrals=1,this._booted=!1,this._applicationInstances=new Set,this.autoboot=this._globalsMode=Boolean(this.autoboot),this._globalsMode&&this._prepareForGlobalsMode(),this.autoboot&&this.waitForDOMReady()}buildInstance(e={}){return b.default.create({...e,base:this,application:this})}_watchInstance(e){this._applicationInstances.add(e)}_unwatchInstance(e){return this._applicationInstances.delete(e)}_prepareForGlobalsMode(){this.Router=(this.Router||d.default).extend(),this._buildDeprecatedInstance()}_buildDeprecatedInstance(){let e=this.buildInstance() +this.__deprecatedInstance__=e,this.__container__=e.__container__}waitForDOMReady(){const e=this._document +if(null===e||"loading"!==e.readyState)(0,s.schedule)("actions",this,this.domReady) +else{let t=()=>{e.removeEventListener("DOMContentLoaded",t),(0,s.run)(this,this.domReady)} +e.addEventListener("DOMContentLoaded",t)}}domReady(){this.isDestroying||this.isDestroyed||this._bootSync()}deferReadiness(){this._readinessDeferrals++}advanceReadiness(){this._readinessDeferrals--,0===this._readinessDeferrals&&(0,s.once)(this,this.didBecomeReady)}boot(){if(this._bootPromise)return this._bootPromise +try{this._bootSync()}catch(e){}return this._bootPromise}_bootSync(){if(this._booted||this.isDestroying||this.isDestroyed)return +let e=this._bootResolver=u.RSVP.defer() +this._bootPromise=e.promise +try{this.runInitializers(),(0,l.runLoadHooks)("application",this),this.advanceReadiness()}catch(t){throw e.reject(t),t}}reset(){let e=this.__deprecatedInstance__ +this._readinessDeferrals=1,this._bootPromise=null,this._bootResolver=null,this._booted=!1,(0,s.join)(this,(function(){(0,s.run)(e,"destroy"),this._buildDeprecatedInstance(),(0,s.schedule)("actions",this,"_bootSync")}))}didBecomeReady(){if(!this.isDestroying&&!this.isDestroyed)try{if(this.autoboot){let e +e=this._globalsMode?this.__deprecatedInstance__:this.buildInstance(),e._bootSync(),this.ready(),e.startRouting()}this._bootResolver.resolve(this),this._booted=!0}catch(e){throw this._bootResolver.reject(e),e}}ready(){return this}willDestroy(){super.willDestroy(),l._loaded.application===this&&(l._loaded.application=void 0),this._applicationInstances.size&&(this._applicationInstances.forEach((e=>e.destroy())),this._applicationInstances.clear())}visit(e,t){return this.boot().then((()=>{let r=this.buildInstance() +return r.boot(t).then((()=>r.visit(e))).catch((e=>{throw(0,s.run)(r,"destroy"),e}))}))}}e.default=w,w.initializer=(0,y.buildInitializerMethod)("initializers","initializer"),w.instanceInitializer=(0,y.buildInitializerMethod)("instanceInitializers","instance initializer")})),e("@ember/application/instance",["exports","@ember/object","@ember/-internals/browser-environment","@ember/engine/instance","@ember/-internals/glimmer","@ember/debug","@ember/routing/router","@ember/-internals/views"],(function(e,t,r,n,i,o,s,a){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class l extends n.default{constructor(){super(...arguments),this.rootElement=null}init(e){super.init(e),this.application._watchInstance(this),this.register("-application-instance:main",this,{instantiate:!1})}_bootSync(e){return this._booted||(e=new u(e),this.setupRegistry(e),e.rootElement?this.rootElement=e.rootElement:this.rootElement=this.application.rootElement,e.location&&(0,t.set)(this.router,"location",e.location),this.application.runInstanceInitializers(this),e.isInteractive&&this.setupEventDispatcher(),this._booted=!0),this}setupRegistry(e){this.constructor.setupRegistry(this.__registry__,e)}get router(){if(!this._router){let e=this.lookup("router:main") +this._router=e}return this._router}didCreateRootView(e){e.appendTo(this.rootElement)}startRouting(){this.router.startRouting()}setupRouter(){this.router.setupRouter()}handleURL(e){return this.setupRouter(),this.router.handleURL(e)}setupEventDispatcher(){let e=this.lookup("event_dispatcher:main"),r=(0,t.get)(this.application,"customEvents"),n=(0,t.get)(this,"customEvents"),i=Object.assign({},r,n) +return e.setup(i,this.rootElement),e}getURL(){return this.router.url}visit(e){this.setupRouter() +let r=this.__container__.lookup("-environment:main"),n=this.router,o=()=>r.options.shouldRender?(0,i.renderSettled)().then((()=>this)):this,s=e=>{if(e.error&&e.error instanceof Error)throw e.error +if("TransitionAborted"===e.name&&n._routerMicrolib.activeTransition)return n._routerMicrolib.activeTransition.then(o,s) +throw"TransitionAborted"===e.name?new Error(e.message):e},a=(0,t.get)(n,"location") +return a.setURL(e),n.handleURL(a.getURL()).then(o,s)}willDestroy(){super.willDestroy(),this.application._unwatchInstance(this)}static setupRegistry(e,t={}){let r=t instanceof u?t:new u(t) +e.register("-environment:main",r.toEnvironment(),{instantiate:!1}),e.register("service:-document",r.document,{instantiate:!1}),super.setupRegistry(e,r)}}class u{constructor(e={}){this.location=null,this.isInteractive=Boolean(r.hasDOM),this._renderMode=e._renderMode,void 0!==e.isBrowser?this.isBrowser=Boolean(e.isBrowser):this.isBrowser=Boolean(r.hasDOM),this.isBrowser||(this.isInteractive=!1,this.location="none"),void 0!==e.shouldRender?this.shouldRender=Boolean(e.shouldRender):this.shouldRender=!0,this.shouldRender||(this.isInteractive=!1),e.document?this.document=e.document:this.document="undefined"!=typeof document?document:null,e.rootElement&&(this.rootElement=e.rootElement),void 0!==e.location&&(this.location=e.location),void 0!==e.isInteractive&&(this.isInteractive=Boolean(e.isInteractive))}toEnvironment(){return{...r,hasDOM:this.isBrowser,isInteractive:this.isInteractive,_renderMode:this._renderMode,options:this}}}e.default=l})),e("@ember/application/lib/lazy_load",["exports","@ember/-internals/environment","@ember/-internals/browser-environment"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e._loaded=void 0,e.onLoad=function(e,t){let r=i[e];(n[e]??=[]).push(t),r&&t(r)},e.runLoadHooks=function(e,t){if(i[e]=t,r.window&&"function"==typeof CustomEvent){let n=new CustomEvent(e,{detail:t}) +r.window.dispatchEvent(n)}n[e]?.forEach((e=>e(t)))} +const n=t.ENV.EMBER_LOAD_HOOKS||{},i={} +e._loaded=i})),e("@ember/application/namespace",["exports","@ember/-internals/metal","@ember/object","@ember/-internals/utils","@ember/debug"],(function(e,t,r,n,i){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class o extends r.default{init(e){super.init(e),(0,t.addNamespace)(this)}toString(){let e=(0,r.get)(this,"name")||(0,r.get)(this,"modulePrefix") +if(e)return e;(0,t.findNamespaces)() +let i=(0,n.getName)(this) +return void 0===i&&(i=(0,n.guidFor)(this),(0,n.setName)(this,i)),i}nameClasses(){(0,t.processNamespace)(this)}destroy(){return(0,t.removeNamespace)(this),super.destroy()}}o.NAMESPACES=t.NAMESPACES,o.NAMESPACES_BY_ID=t.NAMESPACES_BY_ID,o.processAll=t.processAllNamespaces,o.byName=t.findNamespace,o.prototype.isNamespace=!0 +e.default=o})),e("@ember/array/-internals",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.isEmberArray=function(e){return t.has(e)},e.setEmberArray=function(e){t.add(e)} +const t=new WeakSet})),e("@ember/array/index",["exports","@ember/-internals/metal","@ember/object","@ember/object/mixin","@ember/debug","@ember/enumerable","@ember/enumerable/mutable","@ember/utils","@ember/-internals/environment","@ember/object/observable","@ember/array/-internals","@ember/array/lib/make-array"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.NativeArray=e.MutableArray=e.A=void 0,e.isArray=E,Object.defineProperty(e,"makeArray",{enumerable:!0,get:function(){return p.default}}),e.removeAt=O,e.uniqBy=f +const d=Object.freeze([]),h=e=>e +function f(e,t=h){let n=A(),i=new Set,o="function"==typeof t?t:e=>(0,r.get)(e,t) +return e.forEach((e=>{let t=o(e) +i.has(t)||(i.add(t),n.push(e))})),n}function m(...e){let t=2===e.length,[n,i]=e +return t?e=>i===(0,r.get)(e,n):e=>Boolean((0,r.get)(e,n))}function g(e,r,n){let i=e.length +for(let o=n;o!n(e,t,r)),0)}function _(e,t,r=0,n){let i=e.length +return r<0&&(r+=i),g(e,n&&t!=t?e=>e!=e:e=>e===t,r)}function O(e,r,n){return(0,t.replace)(e,r,n??1,d),e}function w(e,r,n){return(0,t.replace)(e,r,0,[n]),n}function E(e){if(!e||e.setInterval)return!1 +if(Array.isArray(e)||T.detect(e))return!0 +let t=(0,a.typeOf)(e) +if("array"===t)return!0 +let r=e.length +return"number"==typeof r&&r==r&&"object"===t}function C(e){let r=(0,t.computed)(e) +return r.enumerable=!1,r}function k(e){return this.map((t=>(0,r.get)(t,e)))}const T=n.default.create(o.default,{init(){this._super(...arguments),(0,c.setEmberArray)(this)},objectsAt(e){return e.map((e=>(0,t.objectAt)(this,e)))},"[]":C({get(){return this},set(e,t){return this.replace(0,this.length,t),this}}),firstObject:C((function(){return(0,t.objectAt)(this,0)})).readOnly(),lastObject:C((function(){return(0,t.objectAt)(this,this.length-1)})).readOnly(),slice(e=0,r){let n,i=A(),o=this.length +for(e<0&&(e=o+e),n=void 0===r||r>o?o:r<0?o+r:r;e=n)&&(r=n-1),r<0&&(r+=n) +for(let i=r;i>=0;i--)if((0,t.objectAt)(this,i)===e)return i +return-1},forEach(e,t=null){let r=this.length +for(let n=0;n(0,r.set)(n,e,t)))},map(e,t=null){let r=A() +return this.forEach(((n,i,o)=>r[i]=e.call(t,n,i,o))),r},mapBy:k,filter(e,t=null){let r=A() +return this.forEach(((n,i,o)=>{e.call(t,n,i,o)&&r.push(n)})),r},reject(e,t=null){return this.filter((function(){return!e.apply(t,arguments)}))},filterBy(){return this.filter(m(...arguments))},rejectBy(){return this.reject(m(...arguments))},find(e,t=null){return b(this,e,t)},findBy(){return b(this,m(...arguments))},every(e,t=null){return v(this,e,t)},isEvery(){return v(this,m(...arguments))},any(e,t=null){return y(this,e,t)},isAny(){return y(this,m(...arguments))},reduce(e,t){let r=t +return this.forEach((function(t,n){r=e(r,t,n,this)}),this),r},invoke(e,...t){let r=A() +return this.forEach((n=>r.push(n[e]?.(...t)))),r},toArray(){return this.map((e=>e))},compact(){return this.filter((e=>null!=e))},includes(e,t){return-1!==_(this,e,t,!0)},sortBy(){let e=arguments +return this.toArray().sort(((t,n)=>{for(let i=0;it!==e:e=>e==e +return this.filter(t)}}),R=e.MutableArray=n.default.create(T,s.default,{clear(){let e=this.length +return 0===e||this.replace(0,e,d),this},insertAt(e,t){return w(this,e,t),this},removeAt(e,t){return O(this,e,t)},pushObject(e){return w(this,this.length,e)},pushObjects(e){return this.replace(this.length,0,e),this},popObject(){let e=this.length +if(0===e)return null +let r=(0,t.objectAt)(this,e-1) +return this.removeAt(e-1,1),r},shiftObject(){if(0===this.length)return null +let e=(0,t.objectAt)(this,0) +return this.removeAt(0),e},unshiftObject(e){return w(this,0,e)},unshiftObjects(e){return this.replace(0,0,e),this},reverseObjects(){let e=this.length +if(0===e)return this +let t=this.toArray().reverse() +return this.replace(0,e,t),this},setObjects(e){if(0===e.length)return this.clear() +let t=this.length +return this.replace(0,t,e),this},removeObject(e){let r=this.length||0 +for(;--r>=0;){(0,t.objectAt)(this,r)===e&&this.removeAt(r)}return this},removeObjects(e){(0,t.beginPropertyChanges)() +for(let t=e.length-1;t>=0;t--)this.removeObject(e[t]) +return(0,t.endPropertyChanges)(),this},addObject(e){return this.includes(e)||this.pushObject(e),this},addObjects(e){return(0,t.beginPropertyChanges)(),e.forEach((e=>this.addObject(e))),(0,t.endPropertyChanges)(),this}}) +let S=e.NativeArray=n.default.create(R,u.default,{objectAt(e){return this[e]},replace(e,r,n=d){return(0,t.replaceInNativeArray)(this,e,r,n),this}}) +const P=["length"] +S.keys().forEach((e=>{Array.prototype[e]&&P.push(e)})),e.NativeArray=S=S.without(...P) +let A=e.A=void 0 +l.ENV.EXTEND_PROTOTYPES.Array?(S.apply(Array.prototype,!0),e.A=A=function(e){return e||[]}):e.A=A=function(e){return(0,c.isEmberArray)(e)?e:S.apply(e??[])} +e.default=T})),e("@ember/array/lib/make-array",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const{isArray:t}=Array +e.default=function(e){return null==e?[]:t(e)?e:[e]}})),e("@ember/array/mutable",["exports","@ember/array"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.MutableArray}})})),e("@ember/array/proxy",["exports","@ember/-internals/metal","@ember/object","@ember/-internals/utils","@ember/array","@ember/array/mutable","@ember/debug","@glimmer/manager","@glimmer/validator"],(function(e,t,r,n,i,o,s,a,l){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const u={willChange:"_arrangedContentArrayWillChange",didChange:"_arrangedContentArrayDidChange"} +function c(e,t){return"[]"===t?(e._revalidate(),e._arrTag):"length"===t?(e._revalidate(),e._lengthTag):(0,l.tagFor)(e,t)}class p extends r.default{constructor(){super(...arguments),this._objectsDirtyIndex=0,this._objects=null,this._lengthDirty=!0,this._length=0,this._arrangedContent=null,this._arrangedContentIsUpdating=!1,this._arrangedContentTag=null,this._arrangedContentRevision=null,this._lengthTag=null,this._arrTag=null}init(e){super.init(e),(0,a.setCustomTagFor)(this,c)}[t.PROPERTY_DID_CHANGE](){this._revalidate()}willDestroy(){this._removeArrangedContentArrayObserver()}objectAtContent(e){let n=(0,r.get)(this,"arrangedContent") +return(0,t.objectAt)(n,e)}replace(e,t,r){this.replaceContent(e,t,r)}replaceContent(e,n,i){let o=(0,r.get)(this,"content");(0,t.replace)(o,e,n,i)}objectAt(e){if(this._revalidate(),null===this._objects&&(this._objects=[]),-1!==this._objectsDirtyIndex&&e>=this._objectsDirtyIndex){let e=(0,r.get)(this,"arrangedContent") +if(e){let t=this._objects.length=(0,r.get)(e,"length") +for(let e=this._objectsDirtyIndex;es)&&(this._objectsDirtyIndex=s),this._lengthDirty=!0,(0,t.arrayContentDidChange)(this,n,i,o,!1)}_invalidate(){this._objectsDirtyIndex=0,this._lengthDirty=!0}_revalidate(){if(!0!==this._arrangedContentIsUpdating&&(null===this._arrangedContentTag||!(0,l.validateTag)(this._arrangedContentTag,this._arrangedContentRevision))){let e=this.get("arrangedContent") +null===this._arrangedContentTag?this._addArrangedContentArrayObserver(e):(this._arrangedContentIsUpdating=!0,this._updateArrangedContentArray(e),this._arrangedContentIsUpdating=!1) +let r=this._arrangedContentTag=(0,l.tagFor)(this,"arrangedContent") +this._arrangedContentRevision=(0,l.valueForTag)(this._arrangedContentTag),(0,n.isObject)(e)?(this._lengthTag=(0,l.combine)([r,(0,t.tagForProperty)(e,"length")]),this._arrTag=(0,l.combine)([r,(0,t.tagForProperty)(e,"[]")])):this._lengthTag=this._arrTag=r}}}p.reopen(o.default,{arrangedContent:(0,t.alias)("content")}) +e.default=p})),e("@ember/canary-features/index",["exports","@ember/-internals/environment"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.FEATURES=e.DEFAULT_FEATURES=void 0,e.isEnabled=function(e){let r=n[e] +return!0===r||!1===r?r:!!t.ENV.ENABLE_OPTIONAL_FEATURES} +const r=e.DEFAULT_FEATURES={},n=e.FEATURES=Object.assign(r,t.ENV.FEATURES)})),e("@ember/component/helper",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Helper}}),Object.defineProperty(e,"helper",{enumerable:!0,get:function(){return t.helper}})})),e("@ember/component/index",["exports","@glimmer/manager","@ember/-internals/glimmer"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Input",{enumerable:!0,get:function(){return r.Input}}),Object.defineProperty(e,"Textarea",{enumerable:!0,get:function(){return r.Textarea}}),Object.defineProperty(e,"capabilities",{enumerable:!0,get:function(){return r.componentCapabilities}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return r.Component}}),Object.defineProperty(e,"getComponentTemplate",{enumerable:!0,get:function(){return t.getComponentTemplate}}),Object.defineProperty(e,"setComponentManager",{enumerable:!0,get:function(){return r.setComponentManager}}),Object.defineProperty(e,"setComponentTemplate",{enumerable:!0,get:function(){return t.setComponentTemplate}})})),e("@ember/component/template-only",["exports","@glimmer/runtime"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const r=t.templateOnlyComponent +e.default=r})),e("@ember/controller/index",["exports","@ember/-internals/owner","@ember/object","@ember/object/-internals","@ember/-internals/metal","@ember/object/mixin","@ember/-internals/runtime","@ember/-internals/utils"],(function(e,t,r,n,i,o,s,a){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ControllerMixin=void 0,e.inject=function(...e){return(0,i.inject)("controller",...e)} +const l=(0,a.symbol)("MODEL"),u=e.ControllerMixin=o.default.create(s.ActionHandler,{isController:!0,concatenatedProperties:["queryParams"],target:null,store:null,init(){this._super(...arguments) +let e=(0,t.getOwner)(this) +e&&(this.namespace=e.lookup("application:main"),this.target=e.lookup("router:main"))},model:(0,r.computed)({get(){return this[l]},set(e,t){return this[l]=t}}),queryParams:null,_qpDelegate:null,_qpChanged(e,t){let n=t.indexOf(".[]"),i=-1===n?t:t.slice(0,n);(0,e._qpDelegate)(i,(0,r.get)(e,i))}}) +class c extends(n.FrameworkObject.extend(u)){}e.default=c})),e("@ember/debug/container-debug-adapter",["exports","@ember/-internals/string","@ember/object","@ember/utils","@ember/-internals/owner","@ember/application/namespace"],(function(e,t,r,n,i,o){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class s extends r.default{constructor(e){super(e),this.resolver=(0,i.getOwner)(this).lookup("resolver-for-debugging:main")}canCatalogEntriesByType(e){return"model"!==e&&"template"!==e}catalogEntriesByType(e){let r=o.default.NAMESPACES,i=[],s=new RegExp(`${(0,t.classify)(e)}$`) +return r.forEach((e=>{for(let r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&s.test(r)){let o=e[r] +"class"===(0,n.typeOf)(o)&&i.push((0,t.dasherize)(r.replace(s,"")))}})),i}}e.default=s})),e("@ember/debug/data-adapter",["exports","@ember/-internals/owner","@ember/runloop","@ember/object","@ember/-internals/string","@ember/application/namespace","@ember/array","@glimmer/validator","@ember/debug"],(function(e,t,r,n,i,o,s,a,l){"use strict" +function u(e,t){if(Symbol.iterator in e)for(let r of e)t(r) +else(0,l.assert)("","function"==typeof e.forEach),e.forEach(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class c{getCacheForItem(e){let t=this.recordCaches.get(e) +if(!t){let r=!1 +t=(0,a.createCache)((()=>{r?this.updated.push(this.wrapRecord(e)):(this.added.push(this.wrapRecord(e)),r=!0)})),this.recordCaches.set(e,t)}return t}constructor(e,t,r,n,i,o){this.wrapRecord=i,this.release=o,this.recordCaches=new Map,this.added=[],this.updated=[],this.removed=[],this.recordArrayCache=(0,a.createCache)((()=>{let o=new Set;(0,a.consumeTag)((0,a.tagFor)(e,"[]")),u(e,(e=>{(0,a.getValue)(this.getCacheForItem(e)),o.add(e)})),(0,a.untrack)((()=>{this.recordCaches.forEach(((e,t)=>{o.has(t)||(this.removed.push(i(t)),this.recordCaches.delete(t))}))})),this.added.length>0&&(t(this.added),this.added=[]),this.updated.length>0&&(r(this.updated),this.updated=[]),this.removed.length>0&&(n(this.removed),this.removed=[])}))}revalidate(){(0,a.getValue)(this.recordArrayCache)}}class p{constructor(e,t,n){this.release=n +let i=!1 +this.cache=(0,a.createCache)((()=>{u(e,(()=>{})),(0,a.consumeTag)((0,a.tagFor)(e,"[]")),!0===i?(0,r.next)(t):i=!0})),this.release=n}revalidate(){(0,a.getValue)(this.cache)}}class d extends n.default{constructor(e){super(e),this.releaseMethods=(0,s.A)(),this.recordsWatchers=new Map,this.typeWatchers=new Map,this.flushWatchers=null,this.attributeLimit=3,this.acceptsModelName=!0,this.containerDebugAdapter=(0,t.getOwner)(this).lookup("container-debug-adapter:main")}getFilters(){return(0,s.A)()}watchModelTypes(e,t){let r,n=this.getModelTypes(),i=(0,s.A)() +r=n.map((e=>{let r=e.klass,n=this.wrapModelType(r,e.name) +return i.push(this.observeModelType(e.name,t)),n})),e(r) +let o=()=>{i.forEach((e=>e())),this.releaseMethods.removeObject(o)} +return this.releaseMethods.pushObject(o),o}_nameToClass(e){if("string"==typeof e){let r=(0,t.getOwner)(this).factoryFor(`model:${e}`) +e=r&&r.class}return e}watchRecords(e,t,r,n){let i=this._nameToClass(e),o=this.getRecords(i,e),{recordsWatchers:s}=this,a=s.get(o) +return a||(a=new c(o,t,r,n,(e=>this.wrapRecord(e)),(()=>{s.delete(o),this.updateFlushWatchers()})),s.set(o,a),this.updateFlushWatchers(),a.revalidate()),a.release}updateFlushWatchers(){null===this.flushWatchers?(this.typeWatchers.size>0||this.recordsWatchers.size>0)&&(this.flushWatchers=()=>{this.typeWatchers.forEach((e=>e.revalidate())),this.recordsWatchers.forEach((e=>e.revalidate()))},r._backburner.on("end",this.flushWatchers)):0===this.typeWatchers.size&&0===this.recordsWatchers.size&&(r._backburner.off("end",this.flushWatchers),this.flushWatchers=null)}willDestroy(){this._super(...arguments),this.typeWatchers.forEach((e=>e.release())),this.recordsWatchers.forEach((e=>e.release())),this.releaseMethods.forEach((e=>e())),this.flushWatchers&&r._backburner.off("end",this.flushWatchers)}detect(e){return!1}columnsForType(e){return(0,s.A)()}observeModelType(e,t){let r=this._nameToClass(e),n=this.getRecords(r,e),i=()=>{t([this.wrapModelType(r,e)])},{typeWatchers:o}=this,s=o.get(n) +return s||(s=new p(n,i,(()=>{o.delete(n),this.updateFlushWatchers()})),o.set(n,s),this.updateFlushWatchers(),s.revalidate()),s.release}wrapModelType(e,t){let r=this.getRecords(e,t) +return{name:t,count:(0,n.get)(r,"length"),columns:this.columnsForType(e),object:e}}getModelTypes(){let e=this.containerDebugAdapter +return(e.canCatalogEntriesByType("model")?e.catalogEntriesByType("model"):this._getObjectsOnNamespaces()).map((e=>({klass:this._nameToClass(e),name:e}))).filter((e=>this.detect(e.klass)))}_getObjectsOnNamespaces(){let e=o.default.NAMESPACES,t=[] +return e.forEach((e=>{for(let r in e){if(!Object.prototype.hasOwnProperty.call(e,r))continue +if(!this.detect(e[r]))continue +let n=(0,i.dasherize)(r) +t.push(n)}})),t}getRecords(e,t){return(0,s.A)()}wrapRecord(e){return{object:e,columnValues:this.getRecordColumnValues(e),searchKeywords:this.getRecordKeywords(e),filterValues:this.getRecordFilterValues(e),color:this.getRecordColor(e)}}getRecordColumnValues(e){return{}}getRecordKeywords(e){return(0,s.A)()}getRecordFilterValues(e){return{}}getRecordColor(e){return null}}e.default=d})),e("@ember/debug/index",["exports","@ember/-internals/browser-environment","@ember/debug/lib/deprecate","@ember/debug/lib/testing","@ember/debug/lib/warn","@ember/debug/lib/inspect","@ember/debug/lib/capture-render-tree"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.assert=e._warnIfUsingStrippedFeatureFlags=void 0,Object.defineProperty(e,"captureRenderTree",{enumerable:!0,get:function(){return s.default}}),e.info=e.getDebugFunction=e.deprecateFunc=e.deprecate=e.debugSeal=e.debugFreeze=e.debug=void 0,Object.defineProperty(e,"inspect",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"isTesting",{enumerable:!0,get:function(){return n.isTesting}}),Object.defineProperty(e,"registerDeprecationHandler",{enumerable:!0,get:function(){return r.registerHandler}}),Object.defineProperty(e,"registerWarnHandler",{enumerable:!0,get:function(){return i.registerHandler}}),e.setDebugFunction=e.runInDebug=void 0,Object.defineProperty(e,"setTesting",{enumerable:!0,get:function(){return n.setTesting}}),e.warn=void 0 +const a=()=>{} +e.assert=a,e.info=a,e.warn=a,e.debug=a,e.deprecate=a,e.debugSeal=a,e.debugFreeze=a,e.runInDebug=a,e.setDebugFunction=a,e.getDebugFunction=a +let l=function(){return arguments[arguments.length-1]} +e.deprecateFunc=l +e._warnIfUsingStrippedFeatureFlags=void 0})),e("@ember/debug/lib/capture-render-tree",["exports","@glimmer/util"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return(0,t.expect)(e.lookup("renderer:-dom"),"BUG: owner is missing renderer").debugRenderTree.capture()}})),e("@ember/debug/lib/deprecate",["exports","@ember/-internals/environment","@ember/debug/index","@ember/debug/lib/handlers"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.missingOptionsIdDeprecation=e.missingOptionsDeprecation=e.missingOptionDeprecation=e.default=void 0 +let i=()=>{} +e.registerHandler=i +e.missingOptionsDeprecation=void 0,e.missingOptionsIdDeprecation=void 0 +let o=()=>"" +e.missingOptionDeprecation=o +let s=()=>{} +e.default=s})),e("@ember/debug/lib/handlers",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.invoke=e.HANDLERS=void 0 +e.HANDLERS={},e.registerHandler=function(e,t){} +let t=()=>{} +e.invoke=t})),e("@ember/debug/lib/inspect",["exports","@ember/debug"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){if("number"==typeof e&&2===arguments.length)return this +return c(e,0)} +const{toString:r}=Object.prototype,{toString:n}=Function.prototype,{isArray:i}=Array,{keys:o}=Object,{stringify:s}=JSON,a=100,l=4,u=/^[\w$]+$/ +function c(e,t,u){let d=!1 +switch(typeof e){case"undefined":return"undefined" +case"object":if(null===e)return"null" +if(i(e)){d=!0 +break}if(e.toString===r||void 0===e.toString)break +return e.toString() +case"function":return e.toString===n?e.name?`[Function:${e.name}]`:"[Function]":e.toString() +case"string":return s(e) +default:return e.toString()}if(void 0===u)u=new WeakSet +else if(u.has(e))return"[Circular]" +return u.add(e),d?function(e,t,r){if(t>l)return"[Array]" +let n="[" +for(let i=0;i=a){n+=`... ${e.length-a} more items` +break}n+=c(e[i],t,r)}return n+=" ]",n}(e,t+1,u):function(e,t,r){if(t>l)return"[Object]" +let n="{",i=o(e) +for(let o=0;o=a){n+=`... ${i.length-a} more keys` +break}let s=i[o] +n+=`${p(String(s))}: ${c(e[s],t,r)}`}return n+=" }",n}(e,t+1,u)}function p(e){return u.test(e)?e:s(e)}})),e("@ember/debug/lib/testing",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.isTesting=function(){return t},e.setTesting=function(e){t=Boolean(e)} +let t=!1})),e("@ember/debug/lib/warn",["exports","@ember/debug/index","@ember/debug/lib/handlers"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.missingOptionsIdDeprecation=e.missingOptionsDeprecation=e.default=void 0 +let n=()=>{} +e.registerHandler=n +let i=()=>{} +e.missingOptionsDeprecation=void 0,e.missingOptionsIdDeprecation=void 0 +e.default=i})) +e("@ember/deprecated-features/index",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.ASSIGN=void 0 +e.ASSIGN=!0})),e("@ember/destroyable/index",["exports","@glimmer/destroyable"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"assertDestroyablesDestroyed",{enumerable:!0,get:function(){return t.assertDestroyablesDestroyed}}),Object.defineProperty(e,"associateDestroyableChild",{enumerable:!0,get:function(){return t.associateDestroyableChild}}),Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return t.destroy}}),Object.defineProperty(e,"enableDestroyableTracking",{enumerable:!0,get:function(){return t.enableDestroyableTracking}}),Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return t.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return t.isDestroying}}),e.registerDestructor=function(e,r){return(0,t.registerDestructor)(e,r)},e.unregisterDestructor=function(e,r){return(0,t.unregisterDestructor)(e,r)}})),e("@ember/engine/index",["exports","@ember/engine/lib/engine-parent","@ember/-internals/utils","@ember/controller","@ember/application/namespace","@ember/-internals/container","dag-map","@ember/debug","@ember/debug/container-debug-adapter","@ember/object","@ember/engine/instance","@ember/routing/-internals","@ember/-internals/views","@ember/-internals/glimmer","@ember/-internals/runtime"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.buildInitializerMethod=b,e.default=void 0,Object.defineProperty(e,"getEngineParent",{enumerable:!0,get:function(){return t.getEngineParent}}),Object.defineProperty(e,"setEngineParent",{enumerable:!0,get:function(){return t.setEngineParent}}) +class m extends(i.default.extend(f.RegistryProxyMixin)){constructor(){super(...arguments),this._initializersRan=!1}static buildRegistry(e){let t=new o.Registry({resolver:g(e)}) +return t.set=u.set,t.register("application:main",e,{instantiate:!1}),function(e){e.optionsForType("component",{singleton:!1}),e.optionsForType("view",{singleton:!1}),e.register("controller:basic",n.default,{instantiate:!1}),e.register("service:-routing",p.RoutingService),e.register("resolver-for-debugging:main",e.resolver,{instantiate:!1}),e.register("container-debug-adapter:main",l.default),e.register("component-lookup:main",d.ComponentLookup)}(t),(0,h.setupEngineRegistry)(t),t}init(e){super.init(e),this.buildRegistry()}ensureInitializers(){this._initializersRan||(this.runInitializers(),this._initializersRan=!0)}buildInstance(e={}){return this.ensureInitializers(),c.default.create({...e,base:this})}buildRegistry(){return this.__registry__=this.constructor.buildRegistry(this)}initializer(e){this.constructor.initializer(e)}instanceInitializer(e){this.constructor.instanceInitializer(e)}runInitializers(){this._runInitializer("initializers",((e,t)=>{t.initialize(this)}))}runInstanceInitializers(e){this._runInitializer("instanceInitializers",((t,r)=>{r.initialize(e)}))}_runInitializer(e,t){let r,n=(0,u.get)(this.constructor,e),i=function(e){let t=[] +for(let r in e)t.push(r) +return t}(n),o=new s.default +for(let s of i)r=n[s],o.add(r.name,r,r.before,r.after) +o.topsort(t)}}function g(e){let t={namespace:e} +return e.Resolver.create(t)}function b(e,t){return function(t){let r=this.superclass +if(void 0!==r[e]&&r[e]===this[e]){let t={[e]:Object.create(this[e])} +this.reopenClass(t)}this[e][t.name]=t}}m.initializers=Object.create(null),m.instanceInitializers=Object.create(null),m.initializer=b("initializers","initializer"),m.instanceInitializer=b("instanceInitializers","instance initializer") +e.default=m})),e("@ember/engine/instance",["exports","@ember/object","@ember/-internals/runtime","@ember/debug","@ember/-internals/container","@ember/-internals/utils","@ember/engine/lib/engine-parent","@ember/-internals/owner","@ember/engine"],(function(e,t,r,n,i,o,s,a,l){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class u extends(t.default.extend(r.RegistryProxyMixin,r.ContainerProxyMixin)){constructor(){super(...arguments),this._booted=!1,this._bootPromise=null}static setupRegistry(e,t){}init(e){super.init(e),(0,o.guidFor)(this),this.base??=this.application +let t=this.__registry__=new i.Registry({fallback:this.base.__registry__}) +this.__container__=t.container({owner:this}),this._booted=!1}boot(e){return this._bootPromise||(this._bootPromise=new r.RSVP.Promise((t=>{t(this._bootSync(e))}))),this._bootPromise}_bootSync(e){return this._booted||(this.cloneParentDependencies(),this.setupRegistry(e),this.base.runInstanceInitializers(this),this._booted=!0),this}setupRegistry(e=this.__container__.lookup("-environment:main")){this.constructor.setupRegistry(this.__registry__,e)}unregister(e){this.__container__.reset(e),this.__registry__.unregister(e)}buildChildEngineInstance(e,t={}){let r=this.lookup(`engine:${e}`) +if(!r)throw new Error(`You attempted to mount the engine '${e}', but it is not registered with its parent.`) +let n=r.buildInstance(t) +return(0,s.setEngineParent)(n,this),n}cloneParentDependencies(){const e=(0,s.getEngineParent)(this);["route:basic","service:-routing"].forEach((t=>{let r=e.resolveRegistration(t) +this.register(t,r)})) +let t=e.lookup("-environment:main") +this.register("-environment:main",t,{instantiate:!1}) +let r=["router:main",i.privatize`-bucket-cache:main`,"-view-registry:main","renderer:-dom","service:-document"] +t.isInteractive&&r.push("event_dispatcher:main"),r.forEach((t=>{let r=e.lookup(t) +this.register(t,r,{instantiate:!1})}))}}e.default=u})),e("@ember/engine/lib/engine-parent",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.ENGINE_PARENT=void 0,e.getEngineParent=function(e){return e[t]},e.setEngineParent=function(e,r){e[t]=r} +const t=e.ENGINE_PARENT=Symbol("ENGINE_PARENT")})),e("@ember/enumerable/index",["exports","@ember/object/mixin"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const r=t.default.create() +e.default=r})),e("@ember/enumerable/mutable",["exports","@ember/enumerable","@ember/object/mixin"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const n=r.default.create(t.default) +e.default=n})),e("@ember/helper/index",["exports","@glimmer/manager","@glimmer/runtime","@ember/-internals/glimmer"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.uniqueId=e.setHelperManager=e.invokeHelper=e.hash=e.get=e.fn=e.concat=e.capabilities=e.array=void 0 +e.capabilities=t.helperCapabilities,e.setHelperManager=t.setHelperManager,e.invokeHelper=r.invokeHelper,e.hash=r.hash,e.array=r.array,e.concat=r.concat,e.get=r.get,e.fn=r.fn,e.uniqueId=n.uniqueId})),e("@ember/instrumentation/index",["exports","@ember/-internals/environment","@ember/debug"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e._instrumentStart=a,e.flaggedInstrument=function(e,t,r){return r()},e.instrument=function(e,t,r,i){let o,l,u +arguments.length<=3&&(c=t,"function"==typeof c)?(l=t,u=r):(o=t,l=r,u=i) +var c +if(0===n.length)return l.call(u) +let p=o||{},d=a(e,(()=>p)) +return d===s?l.call(u):function(e,t,r,n){try{return e.call(n)}catch(i){throw r.exception=i,i}finally{t()}}(l,d,p,u)},e.reset=function(){n.length=0,i={}},e.subscribe=function(e,t){let r=e.split("."),o=[] +for(let n of r)"*"===n?o.push("[^\\.]*"):o.push(n) +let s=o.join("\\.") +s=`${s}(\\..*)?` +let a={pattern:e,regex:new RegExp(`^${s}$`),object:t} +return n.push(a),i={},a},e.subscribers=void 0,e.unsubscribe=function(e){let t=0 +for(let r=0;r{let e="undefined"!=typeof window&&window.performance||{},t=e.now||e.mozNow||e.webkitNow||e.msNow||e.oNow +return t?t.bind(e):Date.now})() +function s(){}function a(e,r,a){if(0===n.length)return s +let l=i[e] +if(l||(l=function(e){let t=[] +for(let r of n)r.regex.test(e)&&t.push(r.object) +return i[e]=t,t}(e)),0===l.length)return s +let u,c=r(a),p=t.ENV.STRUCTURED_PROFILE +p&&(u=`${e}: ${c.object}`,console.time(u)) +let d=[],h=o() +for(let t of l)d.push(t.before(e,h,c)) +const f=l +return function(){let t=o() +for(let r=0;r{e=i.call(this)})) +return(0,n.updateTag)(r,o),(0,n.consumeTag)(o),e}),r} +function o(...e){if((0,t.isElementDescriptor)(e)){let[t,r,n]=e +return i(t,r,n)}{const r=e[0] +let n=function(e,t,n,o,s){return i(e,t,r)} +return(0,t.setClassicDecorator)(n),n}}(0,t.setClassicDecorator)(o)})),e("@ember/object/computed",["exports","@ember/-internals/metal","@ember/object/lib/computed/computed_macros","@ember/object/lib/computed/reduce_computed_macros"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"alias",{enumerable:!0,get:function(){return t.alias}}),Object.defineProperty(e,"and",{enumerable:!0,get:function(){return r.and}}),Object.defineProperty(e,"bool",{enumerable:!0,get:function(){return r.bool}}),Object.defineProperty(e,"collect",{enumerable:!0,get:function(){return n.collect}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.ComputedProperty}}),Object.defineProperty(e,"deprecatingAlias",{enumerable:!0,get:function(){return r.deprecatingAlias}}),Object.defineProperty(e,"empty",{enumerable:!0,get:function(){return r.empty}}),Object.defineProperty(e,"equal",{enumerable:!0,get:function(){return r.equal}}),Object.defineProperty(e,"expandProperties",{enumerable:!0,get:function(){return t.expandProperties}}),Object.defineProperty(e,"filter",{enumerable:!0,get:function(){return n.filter}}),Object.defineProperty(e,"filterBy",{enumerable:!0,get:function(){return n.filterBy}}),Object.defineProperty(e,"gt",{enumerable:!0,get:function(){return r.gt}}),Object.defineProperty(e,"gte",{enumerable:!0,get:function(){return r.gte}}),Object.defineProperty(e,"intersect",{enumerable:!0,get:function(){return n.intersect}}),Object.defineProperty(e,"lt",{enumerable:!0,get:function(){return r.lt}}),Object.defineProperty(e,"lte",{enumerable:!0,get:function(){return r.lte}}),Object.defineProperty(e,"map",{enumerable:!0,get:function(){return n.map}}),Object.defineProperty(e,"mapBy",{enumerable:!0,get:function(){return n.mapBy}}),Object.defineProperty(e,"match",{enumerable:!0,get:function(){return r.match}}),Object.defineProperty(e,"max",{enumerable:!0,get:function(){return n.max}}),Object.defineProperty(e,"min",{enumerable:!0,get:function(){return n.min}}),Object.defineProperty(e,"none",{enumerable:!0,get:function(){return r.none}}),Object.defineProperty(e,"not",{enumerable:!0,get:function(){return r.not}}),Object.defineProperty(e,"notEmpty",{enumerable:!0,get:function(){return r.notEmpty}}),Object.defineProperty(e,"oneWay",{enumerable:!0,get:function(){return r.oneWay}}),Object.defineProperty(e,"or",{enumerable:!0,get:function(){return r.or}}),Object.defineProperty(e,"readOnly",{enumerable:!0,get:function(){return r.readOnly}}),Object.defineProperty(e,"reads",{enumerable:!0,get:function(){return r.oneWay}}),Object.defineProperty(e,"setDiff",{enumerable:!0,get:function(){return n.setDiff}}) +Object.defineProperty(e,"sort",{enumerable:!0,get:function(){return n.sort}}),Object.defineProperty(e,"sum",{enumerable:!0,get:function(){return n.sum}}),Object.defineProperty(e,"union",{enumerable:!0,get:function(){return n.union}}),Object.defineProperty(e,"uniq",{enumerable:!0,get:function(){return n.uniq}}),Object.defineProperty(e,"uniqBy",{enumerable:!0,get:function(){return n.uniqBy}})})),e("@ember/object/core",["exports","@ember/-internals/container","@ember/-internals/owner","@ember/-internals/utils","@ember/-internals/meta","@ember/-internals/metal","@ember/object/mixin","@ember/-internals/runtime","@ember/array","@ember/debug","@glimmer/destroyable","@glimmer/owner"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const d=s.default.prototype.reopen,h=new WeakSet,f=new WeakMap,m=new Set +function g(e){m.has(e)||e.destroy()}function b(e,t){let r=(0,i.meta)(e) +if(void 0!==t){let i=e.concatenatedProperties,s=e.mergedProperties,a=Object.keys(t) +for(let u of a){let a=t[u],c=(0,o.descriptorForProperty)(e,u,r),p=void 0!==c +if(!p){if(void 0!==i&&i.length>0&&i.includes(u)){let t=e[u] +a=t?(0,l.makeArray)(t).concat(a):(0,l.makeArray)(a)}if(void 0!==s&&s.length>0&&s.includes(u)){let t=e[u] +a=Object.assign({},t,a)}}p?c.set(e,u,a):"object"!=typeof(n=e)||null===n||"function"!=typeof n.setUnknownProperty||u in e?e[u]=a:e.setUnknownProperty(u,a)}}var n +e.init(t),r.unsetInitializing() +let s=r.observerEvents() +if(void 0!==s)for(let i=0;ir.willDestroy())),(0,i.meta)(t).setInitializing()}reopen(...e){return(0,s.applyMixin)(this,e),this}init(e){}get isDestroyed(){return(0,c.isDestroyed)(this)}set isDestroyed(e){}get isDestroying(){return(0,c.isDestroying)(this)}set isDestroying(e){}destroy(){m.add(this) +try{(0,c.destroy)(this)}finally{m.delete(this)}return this}willDestroy(){}toString(){let e="object"==typeof(r=this)&&null!==r&&"function"==typeof r.toStringExtension?`:${this.toStringExtension()}`:"" +var r +return`<${(0,t.getFactoryFor)(this)||"(unknown)"}:${(0,n.guidFor)(this)}${e}>`}static extend(...e){let t=class extends(this){} +return d.apply(t.PrototypeMixin,e),t}static create(...e){let n,i=e[0] +if(void 0!==i){n=new this((0,r.getOwner)(i)) +let e=(0,t.getFactoryFor)(i);(0,t.setFactoryFor)(n,e)}else n=new this +return e.length<=1?b(n,i):b(n,v.apply(this,e)),n}static reopen(...e){return this.willReopen(),d.apply(this.PrototypeMixin,e),this}static willReopen(){let e=this.prototype +h.has(e)&&(h.delete(e),f.has(this)&&f.set(this,s.default.create(this.PrototypeMixin)))}static reopenClass(...e){return(0,s.applyMixin)(this,e),this}static detect(e){if("function"!=typeof e)return!1 +for(;e;){if(e===this)return!0 +e=e.superclass}return!1}static detectInstance(e){return e instanceof this}static metaForProperty(e){let t=this.proto(),r=(0,o.descriptorForProperty)(t,e) +return r._meta||{}}static eachComputedProperty(e,t=this){this.proto() +let r={};(0,i.meta)(this.prototype).forEachDescriptors(((n,i)=>{if(i.enumerable){let o=i._meta||r +e.call(t,n,o)}}))}static get PrototypeMixin(){let e=f.get(this) +return void 0===e&&(e=s.default.create(),e.ownerConstructor=this,f.set(this,e)),e}static get superclass(){let e=Object.getPrototypeOf(this) +return e!==Function.prototype?e:void 0}static proto(){let e=this.prototype +if(!h.has(e)){h.add(e) +let t=this.superclass +t&&t.proto(),f.has(this)&&this.PrototypeMixin.apply(e)}return e}static toString(){return`<${(0,t.getFactoryFor)(this)||"(unknown)"}:constructor>`}}function v(...e){let t={} +for(let r of e){let e=Object.keys(r) +for(let n=0,i=e.length;nl.push(e))) +return(0,o.setObservers)(t,{paths:l,sync:s}),t},Object.defineProperty(e,"set",{enumerable:!0,get:function(){return n.set}}),Object.defineProperty(e,"setProperties",{enumerable:!0,get:function(){return n.setProperties}}),Object.defineProperty(e,"trySet",{enumerable:!0,get:function(){return n.trySet}}) +class l extends(s.default.extend(a.default)){get _debugContainerKey(){let e=(0,i.getFactoryFor)(this) +return void 0!==e&&e.fullName}}e.default=l +const u=new WeakMap +function c(e,t,r){var n +if(null!=(n=e)&&void 0!==n.constructor&&"function"==typeof n.constructor.proto&&e.constructor.proto(),!Object.prototype.hasOwnProperty.call(e,"actions")){let t=e.actions +e.actions=t?Object.assign({},t):{}}return e.actions[t]=r,{get(){let e=u.get(this) +void 0===e&&(e=new Map,u.set(this,e)) +let t=e.get(r) +return void 0===t&&(t=r.bind(this),e.set(r,t)),t}}}function p(...e){let t +if(!(0,n.isElementDescriptor)(e)){t=e[0] +let r=function(e,r,n,i,o){return c(e,r,t)} +return(0,n.setClassicDecorator)(r),r}let[r,i,o]=e +return t=o?.value,c(r,i,t)}(0,n.setClassicDecorator)(p)})),e("@ember/object/internals",["exports","@ember/object/-internals"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"cacheFor",{enumerable:!0,get:function(){return t.cacheFor}}),Object.defineProperty(e,"guidFor",{enumerable:!0,get:function(){return t.guidFor}})})),e("@ember/object/lib/computed/computed_macros",["exports","@ember/-internals/metal","@ember/object","@ember/debug","@ember/utils"],(function(e,t,r,n,i){"use strict" +function o(e,n){return(e,...i)=>{let o=[e,...i],s=function(e,r){let n=[] +function i(e){n.push(e)}for(let o of r)(0,t.expandProperties)(o,i) +return n}(0,o) +return(0,t.computed)(...s,(function(){let e=s.length-1 +for(let t=0;tn}))},e.gte=function(e,n){return(0,t.computed)(e,(function(){return(0,r.get)(this,e)>=n}))},e.lt=function(e,n){return(0,t.computed)(e,(function(){return(0,r.get)(this,e)e)),e.or=o(0,(e=>!e))})),e("@ember/object/lib/computed/reduce_computed_macros",["exports","@ember/debug","@ember/-internals/metal","@ember/object","@ember/utils","@ember/array"],(function(e,t,r,n,i,o){"use strict" +function s(e){return Array.isArray(e)||o.default.detect(e)}function a(e,t,r,i){return(0,n.computed)(`${e}.[]`,(function(){let i=(0,n.get)(this,e) +return null===i||"object"!=typeof i?r:i.reduce(t,r,this)})).readOnly()}function l(e,t,r){let i +return/@each/.test(e)?i=e.replace(/\.@each.*$/,""):(i=e,e+=".[]"),(0,n.computed)(e,...t,(function(){let e=(0,n.get)(this,i) +return s(e)?(0,o.A)(r.call(this,e)):(0,o.A)()})).readOnly()}function u(e,t,r){let i=e.map((e=>`${e}.[]`)) +return(0,n.computed)(...i,(function(){return(0,o.A)(t.call(this,e))})).readOnly()}function c(e,t,r){let n +"function"==typeof t?(r=t,n=[]):n=t +const i=r +return l(e,n,(function(e){return Array.isArray(e),e.map(i,this)}))}function p(e,t,r){let n +"function"==typeof t?(r=t,n=[]):n=t +const i=r +return l(e,n,(function(e){return Array.isArray(e),e.filter(i,this)}))}function d(e,...t){return u([e,...t],(function(e){let t=(0,o.A)(),r=new Set +return e.forEach((e=>{let i=(0,n.get)(this,e) +s(i)&&i.forEach((e=>{r.has(e)||(r.add(e),t.push(e))}))})),t}))}Object.defineProperty(e,"__esModule",{value:!0}),e.collect=function(e,...t){let r=[e,...t] +return u(r,(function(){let e=r.map((e=>{let t=(0,n.get)(this,e) +return void 0===t?null:t})) +return(0,o.A)(e)}),"collect")},e.filter=p,e.filterBy=function(e,t,r){let i +i=2===arguments.length?e=>(0,n.get)(e,t):e=>(0,n.get)(e,t)===r +return p(`${e}.@each.${t}`,i)},e.intersect=function(e,...t){return u([e,...t],(function(e){let t=e.map((e=>{let t=(0,n.get)(this,e) +return Array.isArray(t)?t:[]})),r=t.pop(),i=r.filter((e=>{for(let r of t){let t=!1 +for(let n of r)if(n===e){t=!0 +break}if(!1===t)return!1}return!0})) +return(0,o.A)(i)}),"intersect")},e.map=c,e.mapBy=function(e,t){return c(`${e}.@each.${t}`,(e=>(0,n.get)(e,t)))},e.max=function(e){return a(e,((e,t)=>Math.max(e,t)),-1/0,"max")},e.min=function(e){return a(e,((e,t)=>Math.min(e,t)),1/0,"min")},e.setDiff=function(e,t){return(0,n.computed)(`${e}.[]`,`${t}.[]`,(function(){let r=(0,n.get)(this,e),i=(0,n.get)(this,t) +return s(r)?s(i)?r.filter((e=>-1===i.indexOf(e))):r:(0,o.A)()})).readOnly()},e.sort=function(e,t,a){!1 +let u,c +Array.isArray(t)?(u=t,c=a):(u=[],c=t) +return"function"==typeof c?function(e,t,r){return l(e,t,(function(e){return e.slice().sort(((e,t)=>r.call(this,e,t)))}))}(e,u,c):function(e,t){let a=(0,r.autoComputed)((function(r){let a=(0,n.get)(this,t) +let l="@this"===e,u=function(e){let t=e=>{let[t,r]=e.split(":") +return r=r||"asc",[t,r]} +return Array.isArray(e),e.map(t)}(a),c=l?this:(0,n.get)(this,e) +return s(c)?0===u.length?(0,o.A)(c.slice()):function(e,t){return(0,o.A)(e.slice().sort(((e,r)=>{for(let[o,s]of t){let t=(0,i.compare)((0,n.get)(e,o),(0,n.get)(r,o)) +if(0!==t)return"desc"===s?-1*t:t}return 0})))}(c,u):(0,o.A)()})).readOnly() +return a}(e,c)},e.sum=function(e){return a(e,((e,t)=>e+t),0,"sum")},e.union=void 0,e.uniq=d,e.uniqBy=function(e,t){return(0,n.computed)(`${e}.[]`,(function(){let r=(0,n.get)(this,e) +return s(r)?(0,o.uniqBy)(r,t):(0,o.A)()})).readOnly()} +e.union=d})),e("@ember/object/mixin",["exports","@ember/-internals/container","@ember/-internals/meta","@ember/-internals/utils","@ember/debug","@ember/-internals/metal","@ember/object/events"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.applyMixin=y,e.default=void 0,e.mixin=function(e,...t){return y(e,t),e} +const a=Array.prototype.concat,{isArray:l}=Array +function u(e,t,r,n){let i=r[e]||n[e] +return t[e]&&(i=i?a.call(i,t[e]):t[e]),i}function c(e,t,r,i){if(!0===r)return t +let s=r._getter +if(void 0===s)return t +let a=i[e],l="function"==typeof a?(0,o.descriptorForDecorator)(a):a +if(void 0===l||!0===l)return t +let u=l._getter +if(void 0===u)return t +let c,p=(0,n.wrap)(s,u),d=r._setter,h=l._setter +if(c=void 0!==h?void 0!==d?(0,n.wrap)(d,h):h:d,p!==s||c!==d){let e=r._dependentKeys||[],t=new o.ComputedProperty([...e,{get:p,set:c}]) +return t._readOnly=r._readOnly,t._meta=r._meta,t.enumerable=r.enumerable,(0,o.makeComputedDecorator)(t,o.ComputedProperty)}return t}function p(e,t,r,i){if(void 0!==i[e])return t +let o=r[e] +return"function"==typeof o?(0,n.wrap)(t,o):t}function d(e){return e?Array.isArray(e)?e:[e]:[]}function h(e,t,r){let n=d(r[e]).concat(d(t)) +return n}function f(e,t,r){let i=r[e] +if(!i)return t +let o=Object.assign({},i),s=!1,a=Object.keys(t) +for(let n of a){let e=t[n] +"function"==typeof e?(s=!0,o[n]=p(n,e,i,{})):o[n]=e}return s&&(o._super=n.ROOT),o}function m(e,t,r,n,i,o,s){let a +for(let l=0;l{let t=o.indexOf(e);-1!==t&&o.splice(t,1)})))}else g(t,a,r,n,i,o,s)}function g(e,t,r,n,i,s,a){let l=u("concatenatedProperties",t,n,i),d=u("mergedProperties",t,n,i),m=Object.keys(t) +for(let u of m){let m=t[u] +if(void 0===m)continue +if(-1===s.indexOf(u)){s.push(u) +let t=e.peekDescriptors(u) +if(void 0===t){if(!(0,o.isClassicDecorator)(m)){let e=n[u]=i[u] +"function"==typeof e&&b(i,u,e,!1)}}else r[u]=t,a.push(u),t.teardown(i,u,e)}let g="function"==typeof m +if(g){let e=(0,o.descriptorForDecorator)(m) +if(void 0!==e){r[u]=c(u,m,e,r),n[u]=void 0 +continue}}l&&l.indexOf(u)>=0||"concatenatedProperties"===u||"mergedProperties"===u?m=h(u,m,n):d&&d.indexOf(u)>-1?m=f(u,m,n):g&&(m=p(u,m,n,r)),n[u]=m,r[u]=void 0}}function b(e,t,r,i){let a=(0,n.observerListenerMetaFor)(r) +if(void 0===a)return +let{observers:l,listeners:u}=a +if(void 0!==l){let r=i?o.addObserver:o.removeObserver +for(let n of l.paths)r(e,n,null,t,l.sync)}if(void 0!==u){let r=i?s.addListener:s.removeListener +for(let n of u)r(e,n,null,t)}}function y(e,t,i=!1){let s=Object.create(null),a=Object.create(null),l=(0,r.meta)(e),u=[],c=[] +e._super=n.ROOT,m(t,l,s,a,e,u,c) +for(let r of u){let t=a[r],n=s[r] +void 0!==t?("function"==typeof t&&b(e,r,t,!0),(0,o.defineValue)(e,r,t,-1!==c.indexOf(r),!i)):void 0!==n&&(0,o.defineDecorator)(e,r,n,l)}return l.isPrototypeMeta(e)||(0,o.revalidateObservers)(e),e}const v=new WeakSet +class _{constructor(e,t){v.add(this),this.properties=function(e){if(void 0!==e)for(let t of Object.keys(e)){let r=Object.getOwnPropertyDescriptor(e,t) +void 0===r.get&&void 0===r.set||Object.defineProperty(e,t,{value:(0,o.nativeDescDecorator)(r)})}return e}(t),this.mixins=O(e),this.ownerConstructor=void 0,this._without=void 0}static create(...e){(0,o.setUnprocessedMixins)() +return new this(e,void 0)}static mixins(e){let t=(0,r.peekMeta)(e),n=[] +return null===t||t.forEachMixins((e=>{e.properties||n.push(e)})),n}reopen(...e){if(0===e.length)return this +if(this.properties){let e=new _(void 0,this.properties) +this.properties=void 0,this.mixins=[e]}else this.mixins||(this.mixins=[]) +return this.mixins=this.mixins.concat(O(e)),this}apply(e,t=!1){return y(e,[this],t)}applyPartial(e){return y(e,[this])}detect(e){if("object"!=typeof e||null===e)return!1 +if(v.has(e))return w(e,this) +let t=(0,r.peekMeta)(e) +return null!==t&&t.hasMixin(this)}without(...e){let t=new _([this]) +return t._without=e,t}keys(){let e=E(this) +return e}toString(){return"(unknown mixin)"}}function O(e){let t,r=e&&e.length||0 +if(r>0){t=new Array(r) +for(let n=0;nw(e,t,r)))}function E(e,t=new Set,r=new Set){if(!r.has(e)){if(r.add(e),e.properties){let r=Object.keys(e.properties) +for(let e of r)t.add(e)}else e.mixins&&e.mixins.forEach((e=>E(e,t,r))) +return t}}e.default=_})),e("@ember/object/observable",["exports","@ember/-internals/meta","@ember/-internals/metal","@ember/object","@ember/object/mixin","@ember/debug"],(function(e,t,r,n,i,o){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const s=i.default.create({get(e){return(0,n.get)(this,e)},getProperties(...e){return(0,n.getProperties)(this,...e)},set(e,t){return(0,n.set)(this,e,t)},setProperties(e){return(0,n.setProperties)(this,e)},beginPropertyChanges(){return(0,r.beginPropertyChanges)(),this},endPropertyChanges(){return(0,r.endPropertyChanges)(),this},notifyPropertyChange(e){return(0,r.notifyPropertyChange)(this,e),this},addObserver(e,t,n,i){return(0,r.addObserver)(this,e,t,n,i),this},removeObserver(e,t,n,i){return(0,r.removeObserver)(this,e,t,n,i),this},hasObserverFor(e){return(0,r.hasListeners)(this,`${e}:change`)},incrementProperty(e,t=1){return(0,n.set)(this,e,(parseFloat((0,n.get)(this,e))||0)+t)},decrementProperty(e,t=1){return(0,n.set)(this,e,((0,n.get)(this,e)||0)-t)},toggleProperty(e){return(0,n.set)(this,e,!(0,n.get)(this,e))},cacheFor(e){let r=(0,t.peekMeta)(this) +return null!==r?r.valueFor(e):void 0}}) +e.default=s})),e("@ember/object/observers",["exports","@ember/-internals/metal"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"addObserver",{enumerable:!0,get:function(){return t.addObserver}}),Object.defineProperty(e,"removeObserver",{enumerable:!0,get:function(){return t.removeObserver}})})),e("@ember/object/promise-proxy-mixin",["exports","@ember/object","@ember/object/mixin"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const n=r.default.create({reason:null,isPending:(0,t.computed)("isSettled",(function(){return!(0,t.get)(this,"isSettled")})).readOnly(),isSettled:(0,t.computed)("isRejected","isFulfilled",(function(){return(0,t.get)(this,"isRejected")||(0,t.get)(this,"isFulfilled")})).readOnly(),isRejected:!1,isFulfilled:!1,promise:(0,t.computed)({get(){throw new Error("PromiseProxy's promise must be set")},set(e,r){return function(e,r){return(0,t.setProperties)(e,{isFulfilled:!1,isRejected:!1}),r.then((r=>(e.isDestroyed||e.isDestroying||(0,t.setProperties)(e,{content:r,isFulfilled:!0}),r)),(r=>{throw e.isDestroyed||e.isDestroying||(0,t.setProperties)(e,{reason:r,isRejected:!0}),r}),"Ember: PromiseProxy")}(this,r)}}),then:i("then"),catch:i("catch"),finally:i("finally")}) +function i(e){return function(...r){return(0,t.get)(this,"promise")[e](...r)}}e.default=n})),e("@ember/object/proxy",["exports","@ember/object/-internals","@ember/-internals/runtime"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class n extends t.FrameworkObject{}n.PrototypeMixin.reopen(r._ProxyMixin) +e.default=n})),e("@ember/owner/index",["exports","@ember/-internals/owner"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.getOwner=void 0,Object.defineProperty(e,"setOwner",{enumerable:!0,get:function(){return t.setOwner}}) +e.getOwner=t.getOwner})),e("@ember/renderer/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"renderSettled",{enumerable:!0,get:function(){return t.renderSettled}})})),e("@ember/routing/-internals",["exports","@ember/routing/lib/router_state","@ember/routing/lib/routing-service","@ember/routing/lib/utils","@ember/routing/lib/generate_controller","@ember/routing/lib/cache","@ember/routing/lib/dsl","@ember/routing/lib/controller_for"],(function(e,t,r,n,i,o,s,a){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"BucketCache",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"DSL",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"RouterState",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"RoutingService",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"controllerFor",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"generateController",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"generateControllerFactory",{enumerable:!0,get:function(){return i.generateControllerFactory}}),Object.defineProperty(e,"prefixRouteNameArg",{enumerable:!0,get:function(){return n.prefixRouteNameArg}})})),e("@ember/routing/hash-location",["exports","@ember/object","@ember/runloop","@ember/routing/lib/location-utils"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class i extends t.default{constructor(){super(...arguments),this.lastSetURL=null}init(){this.location=this._location??window.location,this._hashchangeHandler=void 0}getHash(){return(0,n.getHash)(this.location)}getURL(){let e=this.getHash().substring(1),t=e +return"/"!==t[0]&&(t="/",e&&(t+=`#${e}`)),t}setURL(e){this.location.hash=e,this.lastSetURL=e}replaceURL(e){this.location.replace(`#${e}`),this.lastSetURL=e}onUpdateURL(e){this._removeEventListener(),this._hashchangeHandler=(0,r.bind)(this,(function(t){let r=this.getURL() +this.lastSetURL!==r&&(this.lastSetURL=null,e(r))})),window.addEventListener("hashchange",this._hashchangeHandler)}formatURL(e){return`#${e}`}willDestroy(){this._removeEventListener()}_removeEventListener(){this._hashchangeHandler&&window.removeEventListener("hashchange",this._hashchangeHandler)}}e.default=i})),e("@ember/routing/history-location",["exports","@ember/object","@ember/debug","@ember/routing/lib/location-utils"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +let i=!1 +function o(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){let t,r +return t=16*Math.random()|0,r="x"===e?t:3&t|8,r.toString(16)}))}class s extends t.default{constructor(){super(...arguments),this.rootURL="/"}getHash(){return(0,n.getHash)(this.location)}init(){this._super(...arguments) +let e=document.querySelector("base"),t="" +null!==e&&e.hasAttribute("href")&&(t=e.getAttribute("href")??""),this.baseURL=t,this.location=this.location??window.location,this._popstateHandler=void 0}initState(){let e=this.history??window.history +this.history=e +let{state:t}=e,r=this.formatURL(this.getURL()) +t&&t.path===r?this._previousURL=this.getURL():this.replaceState(r)}getURL(){let{location:e,rootURL:t,baseURL:r}=this,n=e.pathname +t=t.replace(/\/$/,""),r=r.replace(/\/$/,"") +let i=n.replace(new RegExp(`^${r}(?=/|$)`),"").replace(new RegExp(`^${t}(?=/|$)`),"").replace(/\/\//g,"/") +return i+=(e.search||"")+this.getHash(),i}setURL(e){let{state:t}=this.history +e=this.formatURL(e),t&&t.path===e||this.pushState(e)}replaceURL(e){let{state:t}=this.history +e=this.formatURL(e),t&&t.path===e||this.replaceState(e)}pushState(e){let t={path:e,uuid:o()} +this.history.pushState(t,"",e),this._previousURL=this.getURL()}replaceState(e){let t={path:e,uuid:o()} +this.history.replaceState(t,"",e),this._previousURL=this.getURL()}onUpdateURL(e){this._removeEventListener(),this._popstateHandler=()=>{(i||(i=!0,this.getURL()!==this._previousURL))&&e(this.getURL())},window.addEventListener("popstate",this._popstateHandler)}formatURL(e){let{rootURL:t,baseURL:r}=this +return""!==e?(t=t.replace(/\/$/,""),r=r.replace(/\/$/,"")):"/"===r[0]&&"/"===t[0]&&(r=r.replace(/\/$/,"")),r+t+e}willDestroy(){this._removeEventListener()}_removeEventListener(){this._popstateHandler&&window.removeEventListener("popstate",this._popstateHandler)}}e.default=s})) +e("@ember/routing/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"LinkTo",{enumerable:!0,get:function(){return t.LinkTo}})})),e("@ember/routing/lib/cache",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{constructor(){this.cache=new Map}has(e){return this.cache.has(e)}stash(e,t,r){let n=this.cache.get(e) +void 0===n&&(n=new Map,this.cache.set(e,n)),n.set(t,r)}lookup(e,t,r){if(!this.has(e))return r +let n=this.cache.get(e) +return n.has(t)?n.get(t):r}}})),e("@ember/routing/lib/controller_for",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return e.lookup(`controller:${t}`,r)}})),e("@ember/routing/lib/dsl",["exports","@ember/debug"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +let r=0 +function n(e){return"function"==typeof e}class i{constructor(e=null,t){this.explicitIndex=!1,this.parent=e,this.enableLoadingSubstates=Boolean(t&&t.enableLoadingSubstates),this.matches=[],this.options=t}route(e,t,r){let a,l=null,u=`/_unused_dummy_error_path_route_${e}/:error` +if(n(t)?(a={},l=t):n(r)?(a=t,l=r):a=t||{},this.enableLoadingSubstates&&(s(this,`${e}_loading`,{resetNamespace:a.resetNamespace}),s(this,`${e}_error`,{resetNamespace:a.resetNamespace,path:u})),l){let t=o(this,e,a.resetNamespace),r=new i(t,this.options) +s(r,"loading"),s(r,"error",{path:u}),l.call(r),s(this,e,a,r.generate())}else s(this,e,a)}push(e,t,r,n){let i=t.split(".") +if(this.options.engineInfo){let e=t.slice(this.options.engineInfo.fullName.length+1),r=Object.assign({localFullName:e},this.options.engineInfo) +n&&(r.serializeMethod=n),this.options.addRouteForEngine(t,r)}else if(n)throw new Error(`Defining a route serializer on route '${t}' outside an Engine is not allowed.`) +""!==e&&"/"!==e&&"index"!==i[i.length-1]||(this.explicitIndex=!0),this.matches.push(e,t,r)}generate(){let e=this.matches +return this.explicitIndex||this.route("index",{path:"/"}),t=>{for(let r=0;r`(generated ${t} controller)`}) +let i=`controller:${t}` +return e.register(i,n),e.factoryFor(i)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){i(e,t) +let r=`controller:${t}`,n=e.lookup(r) +!1 +return n},e.generateControllerFactory=i})),e("@ember/routing/lib/location-utils",["exports"],(function(e){"use strict" +function t(e){let t=e.pathname +return"/"!==t[0]&&(t=`/${t}`),t}function r(e){return e.search}function n(e){return void 0!==e.hash?e.hash.substring(0):""}function i(e){let t=e.origin +return t||(t=`${e.protocol}//${e.hostname}`,e.port&&(t+=`:${e.port}`)),t}Object.defineProperty(e,"__esModule",{value:!0}),e.getFullPath=function(e){return t(e)+r(e)+n(e)},e.getHash=n,e.getOrigin=i,e.getPath=t,e.getQuery=r,e.replacePath=function(e,t){e.replace(i(e)+t)}})),e("@ember/routing/lib/query_params",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{constructor(e=null){this.isQueryParams=!0,this.values=e}}})),e("@ember/routing/lib/route-info",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/routing/lib/router_state",["exports","@ember/routing/lib/utils"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{constructor(e,t,r){this.emberRouter=e,this.router=t,this.routerJsState=r}isActiveIntent(e,r,n){let i=this.routerJsState +if(!this.router.isActiveIntent(e,r,void 0,i))return!1 +if(void 0!==n&&Object.keys(n).length>0){let o=Object.assign({},n) +return this.emberRouter._prepareQueryParams(e,r,o),(0,t.shallowEqual)(o,i.queryParams)}return!0}}})),e("@ember/routing/lib/routing-service",["exports","@ember/-internals/owner","@ember/debug","@ember/object/computed","@ember/service","@ember/routing/router","@ember/routing/router-service"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class a extends i.default{get router(){let e=this[s.ROUTER] +if(void 0!==e)return e +let r=(0,t.getOwner)(this),n=r.lookup("router:main") +return n.setupRouter(),this[s.ROUTER]=n}hasRoute(e){return this.router.hasRoute(e)}transitionTo(e,t,r,n){let i=this.router._doTransition(e,t,r) +return n&&i.method("replace"),i}normalizeQueryParams(e,t,r){this.router._prepareQueryParams(e,t,r)}_generateURL(e,t,r){let n={} +return r&&(Object.assign(n,r),this.normalizeQueryParams(e,t,n)),this.router.generate(e,...t,{queryParams:n})}generateURL(e,t,r){if(this.router._initialTransitionStarted)return this._generateURL(e,t,r) +try{return this._generateURL(e,t,r)}catch(n){return}}isActiveForRoute(e,t,r,n){let i=this.router._routerMicrolib.recognizer.handlersFor(r),o=i[i.length-1].handler,s=function(e,t){let r=0 +for(let n=0;ns&&(r=o),n.isActiveIntent(r,e,t)}}e.default=a,a.reopen({targetState:(0,n.readOnly)("router.targetState"),currentState:(0,n.readOnly)("router.currentState"),currentRouteName:(0,n.readOnly)("router.currentRouteName"),currentPath:(0,n.readOnly)("router.currentPath")})})),e("@ember/routing/lib/utils",["exports","@ember/-internals/metal","@ember/-internals/owner","@ember/debug","@ember/engine/instance","router_js"],(function(e,t,r,n,i,o){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.calculateCacheKey=function(e,r=[],n){let i="" +for(let o of r){let r,s=a(e,o) +if(n)if(s&&s in n){let e=0===o.indexOf(s)?o.substring(s.length+1):o +r=(0,t.get)(n[s],e)}else r=(0,t.get)(n,o) +i+=`::${o}:${r}`}return e+i.replace(s,"-")},e.extractRouteArgs=function(e){let t,r,n=(e=e.slice())[e.length-1] +!function(e){if(e&&"object"==typeof e){let t=e.queryParams +if(t&&"object"==typeof t)return Object.keys(t).every((e=>"string"==typeof e))}return!1}(n)?t={}:(e.pop(),t=n.queryParams) +"string"==typeof e[0]&&(r=e.shift()) +return{routeName:r,models:e,queryParams:t}},e.getActiveTargetName=function(e){let t=e.activeTransition?e.activeTransition[o.STATE_SYMBOL].routeInfos:e.state.routeInfos,r=t[t.length-1] +return r.name},e.normalizeControllerQueryParams=function(e){let t={} +for(let r of e)l(r,t) +return t},e.prefixRouteNameArg=function(e,t){let n,i=(0,r.getOwner)(e) +let o=i.mountPoint +if(i.routable&&"string"==typeof t[0]){if(n=t[0],u(n))throw new Error("Programmatic transitions by URL cannot be used within an Engine. Please use the route name instead.") +n=`${o}.${n}`,t[0]=n}return t},e.resemblesURL=u,e.shallowEqual=function(e,t){let r=0,n=0 +for(let i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(e[i]!==t[i])return!1 +r++}for(let i in t)Object.prototype.hasOwnProperty.call(t,i)&&n++ +return r===n},e.stashParamNames=function(e,t){if(t._namesStashed)return +let r=t[t.length-1] +let n,i=r.name,o=e._routerMicrolib.recognizer.handlersFor(i) +for(let s=0;s=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +const E=Symbol("render"),C=Symbol("render-state") +class k extends(s.default.extend(u.ActionHandler,a.default)){constructor(e){if(super(e),this.context={},this[O]=void 0,e){let r=e.lookup("router:main"),n=e.lookup(t.privatize`-bucket-cache:main`) +this._router=r,this._bucketCache=n,this._topLevelViewTemplate=e.lookup("template:-outlet"),this._environment=e.lookup("-environment:main")}}serialize(e,t){if(t.length<1||!e)return +let r={} +if(1===t.length){let[n]=t +"object"==typeof e&&n in e?r[n]=(0,s.get)(e,n):/_id$/.test(n)?r[n]=(0,s.get)(e,"id"):(0,p.isProxy)(e)&&(r[n]=(0,s.get)(e,n))}else r=(0,s.getProperties)(e,t) +return r}_setRouteName(e){this.routeName=e +let t=(0,n.getOwner)(this) +this.fullRouteName=P(t,e)}_stashNames(e,t){if(this._names)return +let r=this._names=e._names +r.length||(r=(e=t)&&e._names||[]) +let n=(0,s.get)(this,"_qp").qps,i=new Array(r.length) +for(let o=0;o(e[t]=r,e)),a)}serializeQueryParamKey(e){return e}serializeQueryParam(e,t,r){return this._router._serializeQueryParam(e,r)}deserializeQueryParam(e,t,r){return this._router._deserializeQueryParam(e,r)}_optionsForQueryParam(e){const t=(0,s.get)(this,"queryParams") +return(0,s.get)(t,e.urlKey)||(0,s.get)(t,e.prop)||t[e.urlKey]||t[e.prop]||{}}resetController(e,t,r){return this}exit(e){this.deactivate(e),this.trigger("deactivate",e),this.teardownViews()}_internalReset(e,t){let r=this.controller +r._qpDelegate=(0,s.get)(this,"_qp").states.inactive,this.resetController(r,e,t)}enter(e){this[C]=void 0,this.activate(e),this.trigger("activate",e)}deactivate(e){}activate(e){}intermediateTransitionTo(...e){let[t,...r]=(0,_.prefixRouteNameArg)(this,e) +this._router.intermediateTransitionTo(t,...r)}refresh(){return this._router._routerMicrolib.refresh(this)}setup(e,t){let n=this.controllerName||this.routeName,i=this.controllerFor(n,!0)??this.generateController(n),o=(0,s.get)(this,"_qp") +if(!this.controller){let e=o.propertyNames;(function(e,t){t.forEach((t=>{if(void 0===(0,r.descriptorForProperty)(e,t)){let n=(0,p.lookupDescriptor)(e,t) +null===n||"function"!=typeof n.get&&"function"!=typeof n.set||(0,r.defineProperty)(e,t,(0,g.dependentKeyCompat)({get:n.get,set:n.set}))}(0,r.addObserver)(e,`${t}.[]`,e,e._qpChanged,!1)}))})(i,e),this.controller=i}let a=o.states +if(i._qpDelegate=a.allowOverrides,t){(0,_.stashParamNames)(this._router,t[y.STATE_SYMBOL].routeInfos) +let e=this._bucketCache,r=t[y.PARAMS_SYMBOL] +o.propertyNames.forEach((t=>{let n=o.map[t] +n.values=r +let a=(0,_.calculateCacheKey)(n.route.fullRouteName,n.parts,n.values),l=e.lookup(a,t,n.undecoratedDefaultValue);(0,s.set)(i,t,l)})) +let n=R(this,t[y.STATE_SYMBOL]);(0,s.setProperties)(i,n)}this.setupController(i,e,t),this._environment.options.shouldRender&&this[E](),(0,r.flushAsyncObservers)(!1)}_qpChanged(e,t,r){if(!r)return +let n=this._bucketCache,i=(0,_.calculateCacheKey)(r.route.fullRouteName,r.parts,r.values) +n.stash(i,e,t)}beforeModel(e){}afterModel(e,t){}redirect(e,t){}contextDidChange(){this.currentModel=this.context}model(e,t){let r,n,i,o=(0,s.get)(this,"_qp").map +for(let s in e){if("queryParams"===s||o&&s in o)continue +let t=s.match(/^(.*)_id$/) +null!==t&&(r=t[1],i=e[s]),n=!0}if(!r){if(n)return Object.assign({},e) +if(t.resolveIndex<1)return +return t[y.STATE_SYMBOL].routeInfos[t.resolveIndex-1].context}return this.findModel(r,i)}deserialize(e,t){return this.model(this._paramsFor(this.routeName,e),t)}findModel(e,t){if(i.ENV._NO_IMPLICIT_ROUTE_MODEL)return;(0,f.deprecateUntil)(`The implicit model loading behavior for routes is deprecated. Please define an explicit model hook for ${this.fullRouteName}.`,f.DEPRECATIONS.DEPRECATE_IMPLICIT_ROUTE_MODEL) +const r="store"in this?this.store:(0,s.get)(this,"_store") +return r.find(e,t)}setupController(e,t,r){e&&void 0!==t&&(0,s.set)(e,"model",t)}controllerFor(e,t=!1){let r=(0,n.getOwner)(this),i=r.lookup(`route:${e}`) +i&&i.controllerName&&(e=i.controllerName) +let o=r.lookup(`controller:${e}`) +return o}generateController(e){let t=(0,n.getOwner)(this) +return(0,o.generateController)(t,e)}modelFor(e){let t,r=(0,n.getOwner)(this),i=this._router&&this._router._routerMicrolib?this._router._routerMicrolib.activeTransition:void 0 +t=r.routable&&void 0!==i?P(r,e):e +let o=r.lookup(`route:${t}`) +if(null!=i){let e=o&&o.routeName||t +if(Object.prototype.hasOwnProperty.call(i.resolvedModels,e))return i.resolvedModels[e]}return o?.currentModel}[(O=C,E)](){this[C]=function(e){let t=(0,n.getOwner)(e) +let r=e.routeName,i=t.lookup(`controller:${e.controllerName||r}`) +let o=e.currentModel,s=t.lookup(`template:${e.templateName||r}`),a={owner:t,into:void 0,outlet:"main",name:r,controller:i,model:o,template:s?.(t)??e._topLevelViewTemplate(t)} +0 +return a}(this),(0,b.once)(this._router,"_setOutlets")}willDestroy(){this.teardownViews()}teardownViews(){this[C]&&(this[C]=void 0,(0,b.once)(this._router,"_setOutlets"))}buildRouteInfoMetadata(){}_paramsFor(e,t){return void 0!==this._router._routerMicrolib.activeTransition?this.paramsFor(e):t}get _store(){const e=(0,n.getOwner)(this) +this.routeName +return{find(t,r){let n=e.factoryFor(`model:${t}`) +if(n)return n=n.class,n.find(r)}}}get _qp(){let e={},t=this.controllerName||this.routeName,r=(0,n.getOwner)(this),i=r.lookup(`controller:${t}`),a=(0,s.get)(this,"queryParams"),l=Object.keys(a).length>0 +if(i){let t=(0,s.get)(i,"queryParams")||[] +e=function(e,t){let r={},n={defaultValue:!0,type:!0,scope:!0,as:!0} +for(let i in e)Object.prototype.hasOwnProperty.call(e,i)&&(r[i]={...e[i],...t[i]},n[i]=!0) +for(let i in t)Object.prototype.hasOwnProperty.call(t,i)&&!n[i]&&(r[i]={...t[i],...e[i]}) +return r}((0,_.normalizeControllerQueryParams)(t),a)}else l&&(i=(0,o.generateController)(r,t),e=a) +let u=[],p={},d=[] +for(let n in e){if(!Object.prototype.hasOwnProperty.call(e,n))continue +if("unknownProperty"===n||"_super"===n)continue +let r,o=e[n],a=o.scope||"model" +"controller"===a&&(r=[]) +let l=o.as||this.serializeQueryParamKey(n),h=(0,s.get)(i,n) +h=S(h) +let f=o.type||(0,c.typeOf)(h),m=this.serializeQueryParam(h,l,f),g=`${t}:${n}`,b={undecoratedDefaultValue:(0,s.get)(i,n),defaultValue:h,serializedDefaultValue:m,serializedValue:m,type:f,urlKey:l,prop:n,scopedPropertyName:g,controllerName:t,route:this,parts:r,values:null,scope:a} +p[n]=p[l]=p[g]=b,u.push(b),d.push(n)}return{qps:u,map:p,propertyNames:d,states:{inactive:(e,t)=>{let r=p[e] +this._qpChanged(e,t,r)},active:(e,t)=>{let r=p[e] +return this._qpChanged(e,t,r),this._activeQPChanged(r,t)},allowOverrides:(e,t)=>{let r=p[e] +return this._qpChanged(e,t,r),this._updatingQPChanged(r)}}}}}function T(e,t){if(t.fullQueryParams)return t.fullQueryParams +let r=t.routeInfos.every((e=>e.route)),n={...t.queryParams} +return e._deserializeQueryParams(t.routeInfos,n),r&&(t.fullQueryParams=n),n}function R(e,t){t.queryParamsFor=t.queryParamsFor||{} +let r=e.fullRouteName,n=t.queryParamsFor[r] +if(n)return n +let i=T(e._router,t),o=t.queryParamsFor[r]={},a=(0,s.get)(e,"_qp").qps +for(let s of a){let e=s.prop in i +o[s.prop]=e?i[s.prop]:S(s.defaultValue)}return o}function S(e){return Array.isArray(e)?(0,l.A)(e.slice()):e}function P(e,t){if(e.routable){let r=e.mountPoint +return"application"===t?r:`${r}.${t}`}return t}k.isRouteFactory=!0,w([s.computed],k.prototype,"_store",null),w([s.computed],k.prototype,"_qp",null) +const A=e.defaultSerialize=k.prototype.serialize +k.reopen({mergedProperties:["queryParams"],queryParams:{},templateName:null,controllerName:null,send(...e){if(this._router&&this._router._routerMicrolib||!(0,h.isTesting)())this._router.send(...e) +else{let t=e.shift(),r=this.actions[t] +if(r)return r.apply(this,e)}},actions:{queryParamsDidChange(e,t,r){let n=(0,s.get)(this,"_qp").map,i=Object.keys(e).concat(Object.keys(r)) +for(let o of i){let e=n[o] +if(e){let t=this._optionsForQueryParam(e) +if((0,s.get)(t,"refreshModel")&&this._router.currentState){this.refresh() +break}}}return!0},finalizeQueryParamChange(e,t,n){if("application"!==this.fullRouteName)return!0 +if(!n)return +let i,o=n[y.STATE_SYMBOL].routeInfos,a=this._router,l=a._queryParamsFor(o),u=a._qpUpdates,c=!1;(0,_.stashParamNames)(a,o) +for(let r of l.qps){let o,a,l=r.route,p=l.controller,d=r.urlKey in e&&r.urlKey +if(u.has(r.urlKey)?(o=(0,s.get)(p,r.prop),a=l.serializeQueryParam(o,r.urlKey,r.type)):d?(a=e[d],void 0!==a&&(o=l.deserializeQueryParam(a,r.urlKey,r.type))):(a=r.serializedDefaultValue,o=S(r.defaultValue)),p._qpDelegate=(0,s.get)(l,"_qp").states.inactive,a!==r.serializedValue){if(n.queryParamsOnly&&!1!==i){let e=l._optionsForQueryParam(r),t=(0,s.get)(e,"replace") +t?i=!0:!1===t&&(i=!1)}(0,s.set)(p,r.prop,o),c=!0}r.serializedValue=a,r.serializedDefaultValue===a||t.push({value:a,visible:!0,key:d||r.urlKey})}!0===c&&(0,r.flushAsyncObservers)(!1),i&&n.method("replace"),l.qps.forEach((e=>{let t=(0,s.get)(e.route,"_qp") +e.route.controller._qpDelegate=(0,s.get)(t,"states.active")})),a._qpUpdates.clear()}}}) +e.default=k})),e("@ember/routing/router-service",["exports","@ember/-internals/owner","@ember/object/evented","@ember/debug","@ember/object/computed","@ember/service","@glimmer/validator","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,o,s,a,l){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ROUTER=void 0 +var u=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +const c=e.ROUTER=Symbol("ROUTER") +function p(e,t){return"/"===t?e:e.substring(t.length)}class d extends(o.default.extend(r.default)){get _router(){let e=this[c] +if(void 0!==e)return e +let r=(0,t.getOwner)(this),n=r.lookup("router:main") +return this[c]=n}willDestroy(){super.willDestroy(),this[c]=void 0}transitionTo(...e){if((0,l.resemblesURL)(e[0]))return this._router._doURLTransition("transitionTo",e[0]) +let{routeName:t,models:r,queryParams:n}=(0,l.extractRouteArgs)(e) +return this._router._doTransition(t,r,n,!0)}replaceWith(...e){return this.transitionTo(...e).method("replace")}urlFor(e,...t){return this._router.setupRouter(),this._router.generate(e,...t)}isActive(...e){let{routeName:t,models:r,queryParams:n}=(0,l.extractRouteArgs)(e),i=this._router._routerMicrolib +if((0,s.consumeTag)((0,s.tagFor)(this._router,"currentURL")),!i.isActiveIntent(t,r))return!1 +if(Object.keys(n).length>0){let e=t +n=Object.assign({},n),this._router._prepareQueryParams(e,r,n,!0) +let o=Object.assign({},i.state.queryParams) +return this._router._prepareQueryParams(e,r,o,!0),(0,l.shallowEqual)(n,o)}return!0}recognize(e){this._router.setupRouter() +let t=p(e,this.rootURL) +return this._router._routerMicrolib.recognize(t)}recognizeAndLoad(e){this._router.setupRouter() +let t=p(e,this.rootURL) +return this._router._routerMicrolib.recognizeAndLoad(t)}refresh(e){if(!e)return this._router._routerMicrolib.refresh() +let r=(0,t.getOwner)(this),n=r.lookup(`route:${e}`) +return this._router._routerMicrolib.refresh(n)}}e.default=d,u([(0,i.readOnly)("_router.currentRouteName")],d.prototype,"currentRouteName",void 0),u([(0,i.readOnly)("_router.currentURL")],d.prototype,"currentURL",void 0),u([(0,i.readOnly)("_router.location")],d.prototype,"location",void 0),u([(0,i.readOnly)("_router.rootURL")],d.prototype,"rootURL",void 0),u([(0,i.readOnly)("_router.currentRoute")],d.prototype,"currentRoute",void 0)})),e("@ember/routing/router",["exports","@ember/-internals/container","@ember/object","@ember/owner","@ember/routing/-internals","@ember/routing/lib/utils","@ember/array","@ember/utils","@ember/object/evented","@ember/debug","@ember/runloop","@ember/routing/route","router_js","@ember/engine/instance"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h){"use strict" +function f(e){T(this),this._cancelSlowTransitionTimer(),this.notifyPropertyChange("url"),this.set("currentState",this.targetState)}function m(e,t){0}function g(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.triggerEvent=C +const{slice:b}=Array.prototype +class y extends(r.default.extend(l.default)){static map(e){return this.dslCallbacks||(this.dslCallbacks=[],this.reopenClass({dslCallbacks:this.dslCallbacks})),this.dslCallbacks.push(e),this}static _routePath(e){let t,r,n,i=[] +function o(e,t){for(let r=0;r{e.setURL(n),(0,r.set)(t,"currentURL",n)}))}didTransition(e){t.didTransition(e)}willTransition(e,r){t.willTransition(e,r)}triggerEvent(e,r,n,i){return C.bind(t)(e,r,n,i)}routeWillChange(e){t.trigger("routeWillChange",e),t._routerService.trigger("routeWillChange",e),e.isIntermediate&&t.set("currentRoute",e.to)}routeDidChange(e){t.set("currentRoute",e.to),(0,c.once)((()=>{t.trigger("routeDidChange",e),t._routerService.trigger("routeDidChange",e)}))}transitionDidError(e,r){return e.wasAborted||r.isAborted?(0,d.logAbort)(r):(r.trigger(!1,"error",e.error,r,e.route),t._isErrorHandled(e.error)?(r.rollback(),this.routeDidChange(r),e.error):(r.abort(),e.error))}replaceURL(n){if(e.replaceURL){let i=()=>{e.replaceURL(n),(0,r.set)(t,"currentURL",n)};(0,c.once)(i)}else this.updateURL(n)}}let a=this._routerMicrolib=new s,l=this.constructor.dslCallbacks||[g],u=this._buildDSL() +u.route("application",{path:"/",resetNamespace:!0,overrideNameAssertion:!0},(function(){for(let e=0;er.factoryFor(`route-map:${e}`),addRouteForEngine(e,r){t._engineInfoByRoute[e]||(t._engineInfoByRoute[e]=r)}} +return new i.DSL(null,o)}_resetQueuedQueryParameterChanges(){this._queuedQPChanges={}}_hasModuleBasedResolver(){let e=(0,n.getOwner)(this),t=(0,r.get)(e,"application.__registry__.resolver.moduleBasedResolver") +return Boolean(t)}startRouting(){if(this.setupRouter()){let e=(0,r.get)(this,"initialURL") +void 0===e&&(e=(0,r.get)(this,"location").getURL()) +let t=this.handleURL(e) +if(t&&t.error)throw t.error}}setupRouter(){if(this._didSetupRouter)return!1 +this._didSetupRouter=!0,this._setupLocation() +let e=(0,r.get)(this,"location") +return!(0,r.get)(e,"cancelRouterSetup")&&(this._initRouterJs(),e.onUpdateURL((e=>{this.handleURL(e)})),!0)}_setOutlets(){if(this.isDestroying||this.isDestroyed)return +let e=this._routerMicrolib.currentRouteInfos +if(!e)return +let t=null,r=null +for(let n of e){let e=n.route,i=(0,p.getRenderState)(e) +if(!i)break +{let e={render:i,outlets:{main:void 0}} +r?r.outlets.main=e:t=e,r=e}}if(null!==t)if(this._toplevelView)this._toplevelView.setOutletState(t) +else{let e=(0,n.getOwner)(this),r=e.factoryFor("view:-outlet"),i=e.lookup("application:main"),o=e.lookup("-environment:main"),s=e.lookup("template:-outlet") +this._toplevelView=r.create({environment:o,template:s,application:i}),this._toplevelView.setOutletState(t) +let a=e.lookup("-application-instance:main") +a&&a.didCreateRootView(this._toplevelView)}}handleURL(e){let t=e.split(/#(.+)?/)[0] +return this._doURLTransition("handleURL",t)}_doURLTransition(e,t){this._initialTransitionStarted=!0 +let r=this._routerMicrolib[e](t||"/") +return R(r,this),r}transitionTo(...e){if((0,o.resemblesURL)(e[0]))return this._doURLTransition("transitionTo",e[0]) +let{routeName:t,models:r,queryParams:n}=(0,o.extractRouteArgs)(e) +return this._doTransition(t,r,n)}intermediateTransitionTo(e,...t){this._routerMicrolib.intermediateTransitionTo(e,...t),T(this)}replaceWith(...e){return this.transitionTo(...e).method("replace")}generate(e,...t){let r=this._routerMicrolib.generate(e,...t) +return this.location.formatURL(r)}isActive(e){return this._routerMicrolib.isActive(e)}isActiveIntent(e,t,r){return this.currentState.isActiveIntent(e,t,r)}send(e,...t){this._routerMicrolib.trigger(e,...t)}hasRoute(e){return this._routerMicrolib.hasRoute(e)}reset(){this._didSetupRouter=!1,this._initialTransitionStarted=!1,this._routerMicrolib&&this._routerMicrolib.reset()}willDestroy(){this._toplevelView&&(this._toplevelView.destroy(),this._toplevelView=null),super.willDestroy(),this.reset() +let e=this._engineInstances +for(let t in e){let r=e[t] +for(let e in r){let t=r[e];(0,c.run)(t,"destroy")}}}_activeQPChanged(e,t){this._queuedQPChanges[e]=t,(0,c.once)(this,this._fireQueryParamTransition)}_updatingQPChanged(e){this._qpUpdates.add(e)}_fireQueryParamTransition(){this.transitionTo({queryParams:this._queuedQPChanges}),this._resetQueuedQueryParameterChanges()}_setupLocation(){let e=this.location,t=this.rootURL,i=(0,n.getOwner)(this) +if("string"==typeof e){let t=i.lookup(`location:${e}`) +e=(0,r.set)(this,"location",t)}null!==e&&"object"==typeof e&&(t&&(0,r.set)(e,"rootURL",t),"function"==typeof e.initState&&e.initState())}_serializeQueryParams(e,t){S(this,e,t,((e,r,n)=>{if(n)delete t[e],t[n.urlKey]=n.route.serializeQueryParam(r,n.urlKey,n.type) +else{if(void 0===r)return +t[e]=this._serializeQueryParam(r,(0,a.typeOf)(r))}}))}_serializeQueryParam(e,t){return null==e?e:"array"===t?JSON.stringify(e):`${e}`}_deserializeQueryParams(e,t){S(this,e,t,((e,r,n)=>{n&&(delete t[e],t[n.prop]=n.route.deserializeQueryParam(r,n.urlKey,n.type))}))}_deserializeQueryParam(e,t){return null==e?e:"boolean"===t?"true"===e:"number"===t?Number(e).valueOf():"array"===t?(0,s.A)(JSON.parse(e)):e}_pruneDefaultQueryParamValues(e,t){let r=this._queryParamsFor(e) +for(let n in t){let e=r.map[n] +e&&e.serializedDefaultValue===t[n]&&delete t[n]}}_doTransition(e,t,r,n){let i=e||(0,o.getActiveTargetName)(this._routerMicrolib) +this._initialTransitionStarted=!0 +let s={} +this._processActiveTransitionQueryParams(i,t,s,r),Object.assign(s,r),this._prepareQueryParams(i,t,s,Boolean(n)) +let a=this._routerMicrolib.transitionTo(i,...t,{queryParams:s}) +return R(a,this),a}_processActiveTransitionQueryParams(e,t,r,n){if(!this._routerMicrolib.activeTransition)return +let i={},o=this._qpUpdates,s=(0,p.getFullQueryParams)(this,this._routerMicrolib.activeTransition[d.STATE_SYMBOL]) +for(let a in s)o.has(a)||(i[a]=s[a]) +this._fullyScopeQueryParams(e,t,n),this._fullyScopeQueryParams(e,t,i),Object.assign(r,i)}_prepareQueryParams(e,t,r,n){let i=k(this,e,t) +this._hydrateUnsuppliedQueryParams(i,r,Boolean(n)),this._serializeQueryParams(i.routeInfos,r),n||this._pruneDefaultQueryParamValues(i.routeInfos,r)}_getQPMeta(e){let t=e.route +return t&&(0,r.get)(t,"_qp")}_queryParamsFor(e){let t=e[e.length-1].name,r=this._qpCache[t] +if(void 0!==r)return r +let n,i=!0,o={},s=[] +for(let l of e)if(n=this._getQPMeta(l),n){for(let e of n.qps)s.push(e) +Object.assign(o,n.map)}else i=!1 +let a={qps:s,map:o} +return i&&(this._qpCache[t]=a),a}_fullyScopeQueryParams(e,t,r){let n,i=k(this,e,t).routeInfos +for(let o of i)if(n=this._getQPMeta(o),n)for(let e of n.qps){let t=e.prop in r&&e.prop||e.scopedPropertyName in r&&e.scopedPropertyName||e.urlKey in r&&e.urlKey +t&&t!==e.scopedPropertyName&&(r[e.scopedPropertyName]=r[t],delete r[t])}}_hydrateUnsuppliedQueryParams(e,t,r){let n,i,s,a=e.routeInfos,l=this._bucketCache +for(let u of a)if(n=this._getQPMeta(u),n)for(let r=0,a=n.qps.length;r=0;--r){let n=e[r],i=n.route +if(void 0!==i&&!0!==t(i,n))return}}let _={willResolveModel(e,t,r){this._scheduleLoadingEvent(t,r)},error(e,t,r){let n=this,i=e[e.length-1] +v(e,((e,r)=>{if(r!==i){let r=w(e,"error") +if(r)return n._markErrorAsHandled(t),n.intermediateTransitionTo(r,t),!1}let o=O(e,"error") +return!o||(n._markErrorAsHandled(t),n.intermediateTransitionTo(o,t),!1)})),function(e,t){let r,n=[] +r=e&&"object"==typeof e&&"object"==typeof e.errorThrown?e.errorThrown:e +t&&n.push(t) +r&&(r.message&&n.push(r.message),r.stack&&n.push(r.stack),"string"==typeof r&&n.push(r)) +console.error(...n)}(t,`Error while processing route: ${r.targetName}`)},loading(e,t){let r=this,n=e[e.length-1] +v(e,((e,i)=>{if(i!==n){let t=w(e,"loading") +if(t)return r.intermediateTransitionTo(t),!1}let o=O(e,"loading") +return o?(r.intermediateTransitionTo(o),!1):t.pivotHandler!==e}))}} +function O(e,t){let r=(0,n.getOwner)(e),{routeName:i,fullRouteName:o,_router:s}=e,a=`${o}_${t}` +return E(r,s,`${i}_${t}`,a)?a:""}function w(e,t){let r=(0,n.getOwner)(e),{routeName:i,fullRouteName:o,_router:s}=e,a="application"===o?t:`${o}.${t}` +return E(r,s,"application"===i?t:`${i}.${t}`,a)?a:""}function E(e,t,r,n){let i=t.hasRoute(n),o=e.factoryFor(`template:${r}`)||e.factoryFor(`route:${r}`) +return i&&o}function C(e,t,r,n){if(!e){if(t)return +throw new Error(`Can't trigger action '${r}' because your app hasn't finished transitioning into its first route. To trigger an action on destination routes during a transition, you can call \`.send()\` on the \`Transition\` object passed to the \`model/beforeModel/afterModel\` hooks.`)}let i,o,s,a=!1 +for(let u=e.length-1;u>=0;u--)if(i=e[u],o=i.route,s=o&&o.actions&&o.actions[r],s){if(!0!==s.apply(o,n))return void("error"===r&&o._router._markErrorAsHandled(n[0])) +a=!0}let l=_[r] +if(l)l.call(this,e,...n) +else if(!a&&!t)throw new Error(`Nothing handled the action '${r}'. If you did handle the action, this error can be caused by returning true from an action handler in a controller, causing the action to bubble.`)}function k(e,t,r){let n=e._routerMicrolib.applyIntent(t,r),{routeInfos:i,params:o}=n +for(let s of i)s.isResolved?o[s.name]=s.params:o[s.name]=s.serialize(s.context) +return n}function T(e){let t=e._routerMicrolib.currentRouteInfos +if(0===t.length)return +let n=y._routePath(t),i=t[t.length-1],o=i.name,s=e.location,a=s.getURL();(0,r.set)(e,"currentPath",n),(0,r.set)(e,"currentRouteName",o),(0,r.set)(e,"currentURL",a)}function R(e,t){let r=new i.RouterState(t,t._routerMicrolib,e[d.STATE_SYMBOL]) +t.currentState||t.set("currentState",r),t.set("targetState",r),e.promise=e.catch((e=>{if(!t._isErrorHandled(e))throw e +t._clearHandledError(e)}),"Transition Error")}function S(e,t,r,n){let i=e._queryParamsFor(t) +for(let o in r){if(!Object.prototype.hasOwnProperty.call(r,o))continue +n(o,r[o],i.map[o])}}y.reopen({didTransition:f,willTransition:m,rootURL:"/",location:"hash",url:(0,r.computed)((function(){let e=(0,r.get)(this,"location") +if("string"!=typeof e)return e.getURL()}))}) +e.default=y})),e("@ember/routing/transition",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/runloop/-private/backburner",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/runloop/index",["exports","@ember/debug","@ember/-internals/error-handling","@ember/-internals/metal","backburner.js"],(function(e,t,r,n,i){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e._backburner=void 0,e._cancelTimers=function(){l.cancelTimers()},e._getCurrentRunLoop=function(){return o},e._hasScheduledTimers=function(){return l.hasTimers()},e._rsvpErrorQueue=e._queues=void 0,e.begin=function(){l.begin()},e.bind=function(...e){return(...t)=>u(...e.concat(t))},e.cancel=function(e){return l.cancel(e)},e.debounce=function(...e){return l.debounce(...e)},e.end=function(){l.end()},e.join=u,e.later=function(...e){return l.later(...e)},e.next=function(...e){return l.later(...e,1)},e.once=function(...e){return l.scheduleOnce("actions",...e)},e.run=function(...e){return l.run(...e)},e.schedule=function(...e){return l.schedule(...e)},e.scheduleOnce=function(...e){return l.scheduleOnce(...e)},e.throttle=function(...e){return l.throttle(...e)} +let o=null +const s=e._rsvpErrorQueue=`${Math.random()}${Date.now()}`.replace(".",""),a=e._queues=["actions","routerTransitions","render","afterRender","destroy",s],l=e._backburner=new i.default(a,{defaultQueue:"actions",onBegin:function(e){o=e},onEnd:function(e,t){o=t,(0,n.flushAsyncObservers)()},onErrorTarget:r.onErrorTarget,onErrorMethod:"onerror",flush:function(e,t){"render"!==e&&e!==s||(0,n.flushAsyncObservers)(),t()}}) +function u(e,t,...r){return l.join(e,t,...r)}})),e("@ember/service/index",["exports","@ember/object/-internals","@ember/-internals/metal"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.inject=function(...e){return(0,r.inject)("service",...e)},e.service=function(...e){return(0,r.inject)("service",...e)} +class n extends t.FrameworkObject{}n.isServiceFactory=!0 +e.default=n})),e("@ember/template-compilation/index",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.__emberTemplateCompiler=void 0,e.__registerTemplateCompiler=function(r){e.__emberTemplateCompiler=t=r},e.precompileTemplate=e.compileTemplate=void 0 +let t=e.__emberTemplateCompiler=void 0 +e.compileTemplate=(...e)=>{if(!t)throw new Error("Attempted to call `compileTemplate` without first loading the runtime template compiler.") +return t.compile(...e)} +e.precompileTemplate=void 0})),e("@ember/template-factory/index",["exports","@glimmer/opcode-compiler"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"createTemplateFactory",{enumerable:!0,get:function(){return t.templateFactory}})})),e("@ember/template/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"htmlSafe",{enumerable:!0,get:function(){return t.htmlSafe}}),Object.defineProperty(e,"isHTMLSafe",{enumerable:!0,get:function(){return t.isHTMLSafe}})})),e("@ember/test/adapter",["exports","ember-testing"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Adapter}})})),e("@ember/test/index",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.registerHelper=e.registerAsyncHelper=e._impl=void 0,e.registerTestImplementation=function(a){let{Test:l}=a +e.registerAsyncHelper=t=l.registerAsyncHelper,e.registerHelper=r=l.registerHelper,e.registerWaiter=n=l.registerWaiter,e.unregisterHelper=i=l.unregisterHelper,e.unregisterWaiter=o=l.unregisterWaiter,e._impl=s=a},e.unregisterWaiter=e.unregisterHelper=e.registerWaiter=void 0 +let t=e.registerAsyncHelper=void 0,r=e.registerHelper=void 0,n=e.registerWaiter=void 0,i=e.unregisterHelper=void 0,o=e.unregisterWaiter=void 0,s=e._impl=void 0,a=()=>{throw new Error("Attempted to use test utilities, but `ember-testing` was not included")} +e.registerAsyncHelper=t=a,e.registerHelper=r=a,e.registerWaiter=n=a,e.unregisterHelper=i=a,e.unregisterWaiter=o=a})),e("@ember/utils/index",["exports","@ember/utils/lib/is_none","@ember/utils/lib/is_blank","@ember/utils/lib/is_empty","@ember/utils/lib/is_present","@ember/utils/lib/is-equal","@ember/utils/lib/type-of","@ember/utils/lib/compare"],(function(e,t,r,n,i,o,s,a){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"compare",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"isBlank",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"isEmpty",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"isEqual",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"isNone",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"isPresent",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"typeOf",{enumerable:!0,get:function(){return s.default}})})),e("@ember/utils/lib/compare",["exports","@ember/utils/lib/type-of","@ember/-internals/runtime","@ember/debug"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function e(r,n){if(r===n)return 0 +let a=(0,t.default)(r),l=(0,t.default)(n) +if("instance"===a&&s(r)&&r.constructor.compare)return r.constructor.compare(r,n) +if("instance"===l&&s(n)&&n.constructor.compare)return-1*n.constructor.compare(n,r) +let u=o(i[a],i[l]) +if(0!==u)return u +switch(a){case"boolean":return o(Number(r),Number(n)) +case"number":return o(r,n) +case"string":return o(r.localeCompare(n),0) +case"array":{let t=r.length,i=n.length,s=Math.min(t,i) +for(let o=0;o{o.push(` ${e.name} = ${r+t},`),i=t})),o.push(` Size = ${i+r+1},`),o.push("}") +let s,a=o.join("\n") +s=n?p` + export function is${e}(value: number): value is ${e} { + return value >= ${r} && value <= ${n}; + } + `:p` + export function is${e}(value: number): value is ${e} { + return value >= ${r}; + } + ` +return{enumString:a,predicate:s}},e.buildMetas=function(e,t){let r=[] +for(let n of Object.keys(t))r.push(d(e,t,n)) +return r.join("\n\n")},e.buildSingleMeta=d,e.check=function(e,t,r=k){if("function"==typeof t)return t(e),e +if(t.validate(e))return e +throw new Error(r(e,t.expected()))},e.debug=function(e,t,r){return},e.debugSlice=function(e,t,r){},e.expectStackChange=function(e,t,r){let n=e.sp-T +if(n===t)return +throw new Error(`Expected stack to change by ${t}, but it changed by ${n} in ${r}`)},e.logOpcode=function(e,t){},e.normalize=s,e.normalizeAll=function(e){let t=c(e.machine),r=c(e.syscall) +return{machine:t,syscall:r}},e.normalizeParsed=c,e.opcodeMetadata=function(e,t){let r=t?i[e]:n[e] +return r||null},e.recordStackSize=function(e){T=e},e.strip=p,e.wrap=function(e){return new class{validate(t){return e().validate(t)}expected(){return e().expected()}}} +const n=new Array(r.Op.Size).fill(null),i=new Array(r.Op.Size).fill(null) +i[r.MachineOp.PushFrame]={name:"PushFrame",mnemonic:"pushf",before:null,stackChange:2,ops:[],operands:0,check:!0},i[r.MachineOp.PopFrame]={name:"PopFrame",mnemonic:"popf",before:null,stackChange:-2,ops:[],operands:0,check:!1},i[r.MachineOp.InvokeVirtual]={name:"InvokeVirtual",mnemonic:"vcall",before:null,stackChange:-1,ops:[],operands:0,check:!0},i[r.MachineOp.InvokeStatic]={name:"InvokeStatic",mnemonic:"scall",before:null,stackChange:0,ops:[{name:"offset",type:"u32"}],operands:1,check:!0},i[r.MachineOp.Jump]={name:"Jump",mnemonic:"goto",before:null,stackChange:0,ops:[{name:"to",type:"u32"}],operands:1,check:!0},i[r.MachineOp.Return]={name:"Return",mnemonic:"ret",before:null,stackChange:0,ops:[],operands:0,check:!1},i[r.MachineOp.ReturnTo]={name:"ReturnTo",mnemonic:"setra",before:null,stackChange:0,ops:[{name:"offset",type:"i32"}],operands:1,check:!0},n[r.Op.Helper]={name:"Helper",mnemonic:"ncall",before:null,stackChange:null,ops:[{name:"helper",type:"handle"}],operands:1,check:!0},n[r.Op.DynamicHelper]={name:"DynamicHelper",mnemonic:"dynamiccall",before:null,stackChange:null,ops:[],operands:0,check:!0},n[r.Op.SetNamedVariables]={name:"SetNamedVariables",mnemonic:"vsargs",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},n[r.Op.SetBlocks]={name:"SetBlocks",mnemonic:"vbblocks",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},n[r.Op.SetVariable]={name:"SetVariable",mnemonic:"sbvar",before:null,stackChange:-1,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},n[r.Op.SetBlock]={name:"SetBlock",mnemonic:"sblock",before:null,stackChange:-3,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},n[r.Op.GetVariable]={name:"GetVariable",mnemonic:"symload",before:null,stackChange:1,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},n[r.Op.GetProperty]={name:"GetProperty",mnemonic:"getprop",before:null,stackChange:0,ops:[{name:"property",type:"str"}],operands:1,check:!0},n[r.Op.GetBlock]={name:"GetBlock",mnemonic:"blockload",before:null,stackChange:1,ops:[{name:"block",type:"u32"}],operands:1,check:!0},n[r.Op.SpreadBlock]={name:"SpreadBlock",mnemonic:"blockspread",before:null,stackChange:2,ops:[],operands:0,check:!0},n[r.Op.HasBlock]={name:"HasBlock",mnemonic:"hasblockload",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.HasBlockParams]={name:"HasBlockParams",mnemonic:"hasparamsload",before:null,stackChange:-2,ops:[],operands:0,check:!0},n[r.Op.Concat]={name:"Concat",mnemonic:"concat",before:null,stackChange:null,ops:[{name:"count",type:"u32"}],operands:1,check:!0},n[r.Op.IfInline]={name:"IfInline",mnemonic:"ifinline",before:null,stackChange:-2,ops:[{name:"count",type:"u32"}],operands:1,check:!0},n[r.Op.Not]={name:"Not",mnemonic:"not",before:null,stackChange:0,ops:[{name:"count",type:"u32"}],operands:1,check:!0},n[r.Op.Constant]={name:"Constant",mnemonic:"rconstload",before:null,stackChange:1,ops:[{name:"constant",type:"unknown"}],operands:1,check:!0},n[r.Op.ConstantReference]={name:"ConstantReference",mnemonic:"rconstrefload",before:null,stackChange:1,ops:[{name:"constant",type:"unknown"}],operands:1,check:!0},n[r.Op.Primitive]={name:"Primitive",mnemonic:"pconstload",before:null,stackChange:1,ops:[{name:"constant",type:"primitive"}],operands:1,check:!0},n[r.Op.PrimitiveReference]={name:"PrimitiveReference",mnemonic:"ptoref",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.ReifyU32]={name:"ReifyU32",mnemonic:"reifyload",before:null,stackChange:1,ops:[],operands:0,check:!0},n[r.Op.Dup]={name:"Dup",mnemonic:"dup",before:null,stackChange:1,ops:[{name:"register",type:"u32"},{name:"offset",type:"u32"}],operands:2,check:!0},n[r.Op.Pop]={name:"Pop",mnemonic:"pop",before:null,stackChange:0,ops:[{name:"count",type:"u32"}],operands:1,check:!1},n[r.Op.Load]={name:"Load",mnemonic:"put",before:null,stackChange:-1,ops:[{name:"register",type:"u32"}],operands:1,check:!0} +n[r.Op.Fetch]={name:"Fetch",mnemonic:"regload",before:null,stackChange:1,ops:[{name:"register",type:"u32"}],operands:1,check:!0},n[r.Op.RootScope]={name:"RootScope",mnemonic:"rscopepush",before:null,stackChange:0,ops:[{name:"symbols",type:"u32"}],operands:1,check:!0},n[r.Op.VirtualRootScope]={name:"VirtualRootScope",mnemonic:"vrscopepush",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},n[r.Op.ChildScope]={name:"ChildScope",mnemonic:"cscopepush",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.PopScope]={name:"PopScope",mnemonic:"scopepop",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.Text]={name:"Text",mnemonic:"apnd_text",before:null,stackChange:0,ops:[{name:"contents",type:"str"}],operands:1,check:!0},n[r.Op.Comment]={name:"Comment",mnemonic:"apnd_comment",before:null,stackChange:0,ops:[{name:"contents",type:"str"}],operands:1,check:!0},n[r.Op.AppendHTML]={name:"AppendHTML",mnemonic:"apnd_dynhtml",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.AppendSafeHTML]={name:"AppendSafeHTML",mnemonic:"apnd_dynshtml",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.AppendDocumentFragment]={name:"AppendDocumentFragment",mnemonic:"apnd_dynfrag",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.AppendNode]={name:"AppendNode",mnemonic:"apnd_dynnode",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.AppendText]={name:"AppendText",mnemonic:"apnd_dyntext",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.OpenElement]={name:"OpenElement",mnemonic:"apnd_tag",before:null,stackChange:0,ops:[{name:"tag",type:"str"}],operands:1,check:!0},n[r.Op.OpenDynamicElement]={name:"OpenDynamicElement",mnemonic:"apnd_dyntag",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.PushRemoteElement]={name:"PushRemoteElement",mnemonic:"apnd_remotetag",before:null,stackChange:-3,ops:[],operands:0,check:!0},n[r.Op.StaticAttr]={name:"StaticAttr",mnemonic:"apnd_attr",before:null,stackChange:0,ops:[{name:"name",type:"str"},{name:"value",type:"str"},{name:"namespace",type:"option-str"}],operands:3,check:!0},n[r.Op.DynamicAttr]={name:"DynamicAttr",mnemonic:"apnd_dynattr",before:null,stackChange:-1,ops:[{name:"name",type:"str"},{name:"trusting",type:"bool"},{name:"namespace",type:"option-str"}],operands:3,check:!0},n[r.Op.ComponentAttr]={name:"ComponentAttr",mnemonic:"apnd_cattr",before:null,stackChange:-1,ops:[{name:"name",type:"str"},{name:"trusting",type:"bool"},{name:"namespace",type:"option-str"}],operands:3,check:!0},n[r.Op.FlushElement]={name:"FlushElement",mnemonic:"apnd_flushtag",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.CloseElement]={name:"CloseElement",mnemonic:"apnd_closetag",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.PopRemoteElement]={name:"PopRemoteElement",mnemonic:"apnd_closeremotetag",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.Modifier]={name:"Modifier",mnemonic:"apnd_modifier",before:null,stackChange:-1,ops:[{name:"helper",type:"handle"}],operands:1,check:!0},n[r.Op.BindDynamicScope]={name:"BindDynamicScope",mnemonic:"setdynscope",before:null,stackChange:null,ops:[{name:"names",type:"str-array"}],operands:1,check:!0},n[r.Op.PushDynamicScope]={name:"PushDynamicScope",mnemonic:"dynscopepush",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.PopDynamicScope]={name:"PopDynamicScope",mnemonic:"dynscopepop",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.CompileBlock]={name:"CompileBlock",mnemonic:"cmpblock",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.PushBlockScope]={name:"PushBlockScope",mnemonic:"scopeload",before:null,stackChange:1,ops:[{name:"scope",type:"scope"}],operands:1,check:!0},n[r.Op.PushSymbolTable]={name:"PushSymbolTable",mnemonic:"dsymload",before:null,stackChange:1,ops:[{name:"table",type:"symbol-table"}],operands:1,check:!0},n[r.Op.InvokeYield]={name:"InvokeYield",mnemonic:"invokeyield",before:null,stackChange:null,ops:[],operands:0,check:!0},n[r.Op.JumpIf]={name:"JumpIf",mnemonic:"iftrue",before:null,stackChange:-1,ops:[{name:"to",type:"u32"}],operands:1,check:!0} +n[r.Op.JumpUnless]={name:"JumpUnless",mnemonic:"iffalse",before:null,stackChange:-1,ops:[{name:"to",type:"u32"}],operands:1,check:!0},n[r.Op.JumpEq]={name:"JumpEq",mnemonic:"ifeq",before:null,stackChange:0,ops:[{name:"to",type:"i32"},{name:"comparison",type:"i32"}],operands:2,check:!0},n[r.Op.AssertSame]={name:"AssertSame",mnemonic:"assert_eq",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.Enter]={name:"Enter",mnemonic:"blk_start",before:null,stackChange:0,ops:[{name:"args",type:"u32"}],operands:1,check:!0},n[r.Op.Exit]={name:"Exit",mnemonic:"blk_end",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.ToBoolean]={name:"ToBoolean",mnemonic:"anytobool",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.EnterList]={name:"EnterList",mnemonic:"list_start",before:null,stackChange:null,ops:[{name:"address",type:"u32"},{name:"address",type:"u32"}],operands:2,check:!0},n[r.Op.ExitList]={name:"ExitList",mnemonic:"list_end",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.Iterate]={name:"Iterate",mnemonic:"iter",before:null,stackChange:0,ops:[{name:"end",type:"u32"}],operands:1,check:!1},n[r.Op.Main]={name:"Main",mnemonic:"main",before:null,stackChange:-2,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.ContentType]={name:"ContentType",mnemonic:"ctload",before:null,stackChange:1,ops:[],operands:0,check:!0},n[r.Op.DynamicContentType]={name:"DynamicContentType",mnemonic:"dctload",before:null,stackChange:1,ops:[],operands:0,check:!0},n[r.Op.Curry]={name:"Curry",mnemonic:"curry",before:null,stackChange:null,ops:[{name:"type",type:"u32"},{name:"is-strict",type:"bool"}],operands:2,check:!0},n[r.Op.PushComponentDefinition]={name:"PushComponentDefinition",mnemonic:"cmload",before:null,stackChange:1,ops:[{name:"spec",type:"handle"}],operands:1,check:!0},n[r.Op.PushDynamicComponentInstance]={name:"PushDynamicComponentInstance",mnemonic:"dciload",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.ResolveDynamicComponent]={name:"ResolveDynamicComponent",mnemonic:"cdload",before:null,stackChange:0,ops:[{name:"owner",type:"owner"}],operands:1,check:!0},n[r.Op.PushArgs]={name:"PushArgs",mnemonic:"argsload",before:null,stackChange:null,ops:[{name:"names",type:"str-array"},{name:"block-names",type:"str-array"},{name:"flags",type:"u32"}],operands:3,check:!0},n[r.Op.PushEmptyArgs]={name:"PushEmptyArgs",mnemonic:"emptyargsload",before:null,stackChange:1,ops:[],operands:0,check:!0},n[r.Op.PopArgs]={name:"PopArgs",mnemonic:"argspop",before:null,stackChange:null,ops:[],operands:0,check:!0},n[r.Op.PrepareArgs]={name:"PrepareArgs",mnemonic:"argsprep",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!1},n[r.Op.CaptureArgs]={name:"CaptureArgs",mnemonic:"argscapture",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.CreateComponent]={name:"CreateComponent",mnemonic:"comp_create",before:null,stackChange:0,ops:[{name:"flags",type:"u32"},{name:"state",type:"register"}],operands:2,check:!0},n[r.Op.RegisterComponentDestructor]={name:"RegisterComponentDestructor",mnemonic:"comp_dest",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.PutComponentOperations]={name:"PutComponentOperations",mnemonic:"comp_elops",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.GetComponentSelf]={name:"GetComponentSelf",mnemonic:"comp_selfload",before:null,stackChange:1,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.GetComponentTagName]={name:"GetComponentTagName",mnemonic:"comp_tagload",before:null,stackChange:1,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.GetComponentLayout]={name:"GetComponentLayout",mnemonic:"comp_layoutload",before:null,stackChange:2,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.BindEvalScope]={name:"BindEvalScope",mnemonic:"eval_scope",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.SetupForEval]={name:"SetupForEval",mnemonic:"eval_setup",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.PopulateLayout]={name:"PopulateLayout",mnemonic:"comp_layoutput",before:null,stackChange:-2,ops:[{name:"state",type:"register"}],operands:1,check:!0} +n[r.Op.InvokeComponentLayout]={name:"InvokeComponentLayout",mnemonic:"comp_invokelayout",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.BeginComponentTransaction]={name:"BeginComponentTransaction",mnemonic:"comp_begin",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.CommitComponentTransaction]={name:"CommitComponentTransaction",mnemonic:"comp_commit",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.DidCreateElement]={name:"DidCreateElement",mnemonic:"comp_created",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.DidRenderLayout]={name:"DidRenderLayout",mnemonic:"comp_rendered",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.ResolveMaybeLocal]={name:"ResolveMaybeLocal",mnemonic:"eval_varload",before:null,stackChange:1,ops:[{name:"local",type:"str"}],operands:1,check:!0},n[r.Op.Debugger]={name:"Debugger",mnemonic:"debugger",before:null,stackChange:0,ops:[{name:"symbols",type:"str-array"},{name:"debugInfo",type:"array"}],operands:2,check:!0} +const o=e.OPERAND_TYPES=["u32","i32","owner","handle","str","option-str","array","str-array","bool","primitive","register","unknown","symbol-table","scope"] +function s(e,t){let r +if(void 0===t.format)throw new Error(`Missing format in ${JSON.stringify(t)}`) +r=Array.isArray(t.format)?t.format[0]:t.format +let n=Array.isArray(t.format)?function(e){if(!Array.isArray(e))throw new Error(`Expected operands array, got ${JSON.stringify(e)}`) +return e.map(u)}(t.format.slice(1)):[] +return{name:r,mnemonic:e,before:null,stackChange:a(t["operand-stack"]),ops:n,operands:n.length,check:!0!==t.skip}}function a(e){if(void 0===e)return 0 +let t=e[0],r=e[1] +return l(t)||l(r)?null:r.length-t.length}function l(e){if(!Array.isArray(e))throw new Error(`Unexpected stack entry: ${JSON.stringify(e)}`) +return e.some((e=>"..."===e.slice(-3)))}function u(e){let[t,r]=e.split(":") +if(n=r,-1!==o.indexOf(n))return{name:t,type:r} +throw new Error(`Expected operand, found ${JSON.stringify(e)}`) +var n}function c(e){let t=Object.create(null) +for(const[r,n]of Object.entries(e))t[r]=s(r,n) +return t}function p(e,...t){let r="" +for(let o=0;oh(e,t))).join(", ")}]` +let r=["{"] +for(let n of Object.keys(e))r.push(`${" ".repeat(t+2)}${n}: ${h(e[n],t+2)},`) +return r.push(`${" ".repeat(t)}}`),r.join("\n")}class f{constructor(e){this.expectedType=e}validate(e){return typeof e===this.expectedType}expected(){return`typeof ${this.expectedType}`}}class m{constructor(e){this.Class=e}validate(e){return!!e&&e instanceof this.Class}expected(){return`an instance of ${this.Class.name}`}}class g{constructor(e,t){this.checker=e,this.emptyValue=t}validate(e){return e===this.emptyValue||this.checker.validate(e)}expected(){return`${this.checker.expected()} or null`}}class b{constructor(e){this.checker=e}validate(e){return null==e||this.checker.validate(e)}expected(){return`${this.checker.expected()} or null or undefined`}}class y{constructor(e,t){this.left=e,this.right=t}validate(e){return this.left.validate(e)||this.right.validate(e)}expected(){return`${this.left.expected()} or ${this.right.expected()}`}}class v{constructor(e,t){this.value=e,this.desc=t}validate(e){return e===this.value}expected(){return this.desc}}class _{constructor(e){this.checkers=e}validate(e){return"object"==typeof e&&(null!=e&&Object.entries(this.checkers).every((([t,r])=>t in e&&r.validate(e[t]))))}expected(){return`{ ${Object.entries(this.checkers).map((([e,t])=>`${e}: ${t.expected()}`)).join(",")} }`}}class O{constructor(e){this.checker=e}validate(e){return null!=e&&(!!Array.isArray(e)&&e.every((e=>this.checker.validate(e))))}expected(){return`Array<${this.checker.expected()}>`}}class w{constructor(e){this.checker=e}validate(e){if(!("object"==typeof e&&null!==e&&null===Object.getPrototypeOf(e)))return!1 +let{checker:t}=this +for(let r in e)if(!t.validate(e[r]))return!1 +return!0}expected(){return"a primitive"}}function E(e){return new _(e)}function C(e){return new O(e)}function k(e,t){return`Got ${e}, expected:\n${t}`}let T=0 +e.CheckPrimitive=new class{validate(e){return"string"!=typeof e||"number"==typeof e||"string"==typeof e||null==e}expected(){return"a primitive"}},e.CheckFunction=new f("function") +const R=e.CheckNumber=new f("number"),S=e.CheckBoolean=new f("boolean"),P=(e.CheckHandle=R,e.CheckString=new f("string")),A=(e.CheckNull=new class{validate(e){return null===e}expected(){return"null"}},e.CheckUndefined=new class{validate(e){return void 0===e}expected(){return"undefined"}},e.CheckUnknown=new class{constructor(){this.type=void 0}validate(e){return!0}expected(){return"any"}}) +e.CheckSafeString=new class{validate(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}expected(){return"SafeString"}},e.CheckObject=new class{validate(e){return"function"==typeof e||"object"==typeof e&&null!==e}expected(){return"an object or function (valid WeakMap key)"}} +function x(e,t=String(e)){return new v(e,t)}e.CheckBlockSymbolTable=E({parameters:C(R)}),e.CheckProgramSymbolTable=E({hasEval:S,symbols:C(P)}),e.CheckElement=E({nodeType:x(1),tagName:P,nextSibling:A}),e.CheckDocumentFragment=E({nodeType:x(11),nextSibling:A}),e.CheckNode=E({nodeType:R,nextSibling:A})})),e("@glimmer/destroyable",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e._hasDestroyableChildren=function(e){let t=i.get(e) +return void 0!==t&&null!==t.children},e.assertDestroyablesDestroyed=void 0,e.associateDestroyableChild=function(e,t){0 +let r=l(e),n=l(t) +return r.children=o(r.children,t),n.parents=o(n.parents,e),t},e.destroy=u,e.destroyChildren=function(e){let{children:t}=l(e) +s(t,u)},e.enableDestroyableTracking=void 0,e.isDestroyed=function(e){let t=i.get(e) +return void 0!==t&&t.state>=n.Destroyed},e.isDestroying=c,e.registerDestructor=function(e,t,r=!1){0 +let n=l(e),i=!0===r?"eagerDestructors":"destructors" +return n[i]=o(n[i],t),t},e.unregisterDestructor=function(e,t,r=!1){0 +let n=l(e),i=!0===r?"eagerDestructors":"destructors" +n[i]=a(n[i],t,!1)} +var n=function(e){return e[e.Live=0]="Live",e[e.Destroying=1]="Destroying",e[e.Destroyed=2]="Destroyed",e}(n||{}) +let i=new WeakMap +function o(e,t){return null===e?t:Array.isArray(e)?(e.push(t),e):[e,t]}function s(e,t){Array.isArray(e)?e.forEach(t):null!==e&&t(e)}function a(e,t,r){if(Array.isArray(e)&&e.length>1){let r=e.indexOf(t) +return e.splice(r,1),e}return null}function l(e){let t=i.get(e) +return void 0===t&&(t={parents:null,children:null,eagerDestructors:null,destructors:null,state:n.Live},i.set(e,t)),t}function u(e){let r=l(e) +if(r.state>=n.Destroying)return +let{parents:i,children:o,eagerDestructors:c,destructors:p}=r +r.state=n.Destroying,s(o,u),s(c,(t=>t(e))),s(p,(r=>(0,t.scheduleDestroy)(e,r))),(0,t.scheduleDestroyed)((()=>{s(i,(t=>function(e,t){let r=l(t) +r.state===n.Live&&(r.children=a(r.children,e))}(e,t))),r.state=n.Destroyed}))}function c(e){let t=i.get(e) +return void 0!==t&&t.state>=n.Destroying}e.enableDestroyableTracking=void 0,e.assertDestroyablesDestroyed=void 0})),e("@glimmer/encoder",["exports","@glimmer/vm"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.InstructionEncoderImpl=void 0 +e.InstructionEncoderImpl=class{constructor(e){this.size=0,this.buffer=e}encode(e,r,...n){if(e>t.TYPE_SIZE)throw new Error(`Opcode type over 8-bits. Got ${e}.`) +let i=e|r|arguments.length-2<{} +e.scheduleRevalidate=t +let r=e.scheduleDestroy=void 0,n=e.scheduleDestroyed=void 0,i=e.toIterator=void 0,o=e.toBool=void 0,s=e.getProp=void 0,a=e.setProp=void 0,l=e.getPath=void 0,u=e.setPath=void 0,c=e.warnIfStyleNotTrusted=void 0,p=e.assert=void 0,d=e.deprecate=void 0 +e.assertGlobalContextWasSet=void 0,e.testOverrideGlobalContext=void 0})),e("@glimmer/manager",["exports","@glimmer/util","@glimmer/destroyable","@glimmer/reference","@glimmer/validator","@glimmer/debug","@glimmer/vm"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.CustomModifierManager=e.CustomHelperManager=e.CustomComponentManager=void 0,e.capabilityFlagsFrom=function(e){return f|m(e,"dynamicLayout")|m(e,"dynamicTag")|m(e,"prepareArgs")|m(e,"createArgs")|m(e,"attributeHook")|m(e,"elementHook")|m(e,"dynamicScope")|m(e,"createCaller")|m(e,"updateHook")|m(e,"createInstance")|m(e,"wrapped")|m(e,"willDestroy")|m(e,"hasSubOwner")},e.componentCapabilities=function(e,t={}){0 +let r=Boolean(t.updateHook) +return h({asyncLifeCycleCallbacks:Boolean(t.asyncLifecycleCallbacks),destructor:Boolean(t.destructor),updateHook:r})},e.getComponentTemplate=function(e){let t=e +for(;null!==t;){let e=I.get(t) +if(void 0!==e)return e +t=F(t)}return},e.getCustomTagFor=function(e){return a.get(e)},e.getInternalComponentManager=function(e,t){0 +const r=k(_,e) +if(void 0===r&&!0===t)return null +return r},e.getInternalHelperManager=function(e,t){0 +let r=k(w,e) +void 0===r&&"function"==typeof e&&(r=S) +if(r)return r +if(!0===t)return null +return null},e.getInternalModifierManager=function(e,t){0 +const r=k(O,e) +if(void 0===r&&!0===t)return null +return r},e.hasCapability=function(e,t){return(0,o.check)(e,o.CheckNumber),!!(e&t)},e.hasDestroyable=b,e.hasInternalComponentManager=function(e){return void 0!==k(_,e)},e.hasInternalHelperManager=function(e){return function(e){return"function"==typeof e}(e)||void 0!==k(w,e)},e.hasInternalModifierManager=function(e){return void 0!==k(O,e)},e.hasValue=g,e.helperCapabilities=function(e,t={}){0 +0 +0 +return h({hasValue:Boolean(t.hasValue),hasDestroyable:Boolean(t.hasDestroyable),hasScheduledEffect:Boolean(t.hasScheduledEffect)})},e.managerHasCapability=function(e,t,r){return(0,o.check)(t,o.CheckNumber),!!(t&r)},e.modifierCapabilities=function(e,t={}){0 +return h({disableAutoTracking:Boolean(t.disableAutoTracking)})},e.setComponentManager=function(e,t){return P(new N(e),t)},e.setComponentTemplate=function(e,t){0 +0 +return I.set(t,e),t},e.setCustomTagFor=l,e.setHelperManager=function(e,t){return R(new y(e),t)},e.setInternalComponentManager=P,e.setInternalHelperManager=R,e.setInternalModifierManager=T,e.setModifierManager=function(e,t){return T(new j(e),t)} +const a=new WeakMap +function l(e,t){a.set(e,t)}function u(e){if("symbol"==typeof e)return null +const t=Number(e) +return isNaN(t)?null:t%1==0?t:null}class c{constructor(e){this.named=e}get(e,t){const r=this.named[t] +if(void 0!==r)return(0,n.valueForRef)(r)}has(e,t){return t in this.named}ownKeys(){return Object.keys(this.named)}isExtensible(){return!1}getOwnPropertyDescriptor(e,t){return{enumerable:!0,configurable:!0}}}class p{constructor(e){this.positional=e}get(e,t){let{positional:r}=this +if("length"===t)return r.length +const i=u(t) +return null!==i&&i{const{named:r,positional:o}=e +const s=new c(r),a=new p(o),d=Object.create(null) +const h=new Proxy(d,s),f=new Proxy([],a) +return l(h,((e,t)=>function(e,t){return(0,i.track)((()=>{t in e&&(0,n.valueForRef)(e[t])}))}(r,t))),l(f,((e,t)=>function(e,t){return(0,i.track)((()=>{"[]"===t&&e.forEach(n.valueForRef) +const r=u(t) +null!==r&&r{let o=this.getDelegateFor(i) +const s=d(t),a=o.createHelper(e,s) +if(g(o)){let e=(0,n.createComputeRef)((()=>o.getValue(a)),null,!1) +return b(o)&&(0,r.associateDestroyableChild)(e,o.getDestroyable(a)),e}if(b(o)){let e=(0,n.createConstRef)(void 0,!1) +return(0,r.associateDestroyableChild)(e,o.getDestroyable(a)),e}return n.UNDEFINED_REFERENCE}}}e.CustomHelperManager=y +class v{constructor(){this.capabilities={hasValue:!0,hasDestroyable:!1,hasScheduledEffect:!1}}createHelper(e,t){return{fn:e,args:t}}getValue({fn:e,args:t}){if(Object.keys(t.named).length>0){return e(...[...t.positional,t.named])}return e(...t.positional)}getDebugName(e){return e.name?`(helper function ${e.name})`:"(anonymous helper function)"}}const _=new WeakMap,O=new WeakMap,w=new WeakMap,E=Object.getPrototypeOf +function C(e,t,r){return e.set(r,t),r}function k(e,t){let r=t +for(;null!=r;){const t=e.get(r) +if(void 0!==t)return t +r=E(r)}}function T(e,t){return C(O,e,t)}function R(e,t){return C(w,e,t)}const S=new y((()=>new v)) +function P(e,t){return C(_,e,t)}const A={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +function x(e){return e.capabilities.asyncLifeCycleCallbacks}function M(e){return e.capabilities.updateHook}class N{constructor(e){this.componentManagerDelegates=new WeakMap,this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) +if(void 0===r){let{factory:n}=this +r=n(e),t.set(e,r)}return r}create(e,t,r){let n=this.getDelegateFor(e),i=d(r.capture()),o=n.createComponent(t,i) +return new D(o,n,i)}getDebugName(e){return"function"==typeof e?e.name:e.toString()}update(e){let{delegate:t}=e +if(M(t)){let{component:r,args:n}=e +t.updateComponent(r,n)}}didCreate({component:e,delegate:t}){x(t)&&t.didCreateComponent(e)}didUpdate({component:e,delegate:t}){(function(e){return x(e)&&M(e)})(t)&&t.didUpdateComponent(e)}didRenderLayout(){}didUpdateLayout(){}getSelf({component:e,delegate:t}){return(0,n.createConstRef)(t.getContext(e),"this")}getDestroyable(e){const{delegate:t}=e +if(function(e){return e.capabilities.destructor}(t)){const{component:n}=e +return(0,r.registerDestructor)(e,(()=>t.destroyComponent(n))),e}return null}getCapabilities(){return A}}e.CustomComponentManager=N +class D{constructor(e,t,r){this.component=e,this.delegate=t,this.args=r}}class j{constructor(e){this.componentManagerDelegates=new WeakMap,this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) +if(void 0===r){let{factory:n}=this +r=n(e),t.set(e,r)}return r}create(e,t,n,o){let s,a=this.getDelegateFor(e),l=d(o),u=a.createModifier(n,l) +return s={tag:(0,i.createUpdatableTag)(),element:t,delegate:a,args:l,modifier:u},(0,r.registerDestructor)(s,(()=>a.destroyModifier(u,l))),s}getDebugName(e){return"function"==typeof e?e.name||e.toString():""}getDebugInstance({modifier:e}){return e}getTag({tag:e}){return e}install({element:e,args:r,modifier:n,delegate:o}){let{capabilities:s}=o +!0===s.disableAutoTracking?(0,i.untrack)((()=>o.installModifier(n,(0,t.castToBrowser)(e,"ELEMENT"),r))):o.installModifier(n,(0,t.castToBrowser)(e,"ELEMENT"),r)}update({args:e,modifier:t,delegate:r}){let{capabilities:n}=r +!0===n.disableAutoTracking?(0,i.untrack)((()=>r.updateModifier(t,e))):r.updateModifier(t,e)}getDestroyable(e){return e}}e.CustomModifierManager=j +const I=new WeakMap,F=Object.getPrototypeOf})),e("@glimmer/node",["exports","@glimmer/runtime","@simple-dom/document"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.NodeDOMTreeConstruction=void 0,e.serializeBuilder=function(e,t){return o.forInitialRender(e,t)} +class n extends t.DOMTreeConstruction{constructor(e){super(e||(0,r.default)())}setupUselessElement(){}insertHTMLBefore(e,r,n){let i=this.document.createRawHTMLSection(n) +return e.insertBefore(i,r),new t.ConcreteBounds(e,i,i)}createElement(e){return this.document.createElement(e)}setAttribute(e,t,r){e.setAttribute(t,r)}}e.NodeDOMTreeConstruction=n +const i=new WeakMap +class o extends t.NewElementBuilder{constructor(...e){super(...e),this.serializeBlockDepth=0}__openBlock(){let{tagName:e}=this.element +if("TITLE"!==e&&"SCRIPT"!==e&&"STYLE"!==e){let e=this.serializeBlockDepth++ +this.__appendComment(`%+b:${e}%`)}super.__openBlock()}__closeBlock(){let{tagName:e}=this.element +if(super.__closeBlock(),"TITLE"!==e&&"SCRIPT"!==e&&"STYLE"!==e){let e=--this.serializeBlockDepth +this.__appendComment(`%-b:${e}%`)}}__appendHTML(e){let{tagName:r}=this.element +if("TITLE"===r||"SCRIPT"===r||"STYLE"===r)return super.__appendHTML(e) +let n=this.__appendComment("%glmr%") +if("TABLE"===r){let t=e.indexOf("<") +if(t>-1){"tr"===e.slice(t+1,t+3)&&(e=`${e}`)}}""===e?this.__appendComment("% %"):super.__appendHTML(e) +let i=this.__appendComment("%glmr%") +return new t.ConcreteBounds(this.element,n,i)}__appendText(e){let{tagName:t}=this.element,r=function(e){let{element:t,nextSibling:r}=e +return null===r?t.lastChild:r.previousSibling}(this) +return"TITLE"===t||"SCRIPT"===t||"STYLE"===t?super.__appendText(e):""===e?this.__appendComment("% %"):(r&&3===r.nodeType&&this.__appendComment("%|%"),super.__appendText(e))}closeElement(){return i.has(this.element)&&(i.delete(this.element),super.closeElement()),super.closeElement()}openElement(e){return"tr"===e&&"TBODY"!==this.element.tagName&&"THEAD"!==this.element.tagName&&"TFOOT"!==this.element.tagName&&(this.openElement("tbody"),i.set(this.constructing,!0),this.flushElement(null)),super.openElement(e)}pushRemoteElement(e,t,r=null){let{dom:n}=this,i=n.createElement("script") +return i.setAttribute("glmr",t),n.insertBefore(e,i,r),super.pushRemoteElement(e,t,r)}}})),e("@glimmer/opcode-compiler",["exports","@glimmer/util","@glimmer/debug","@glimmer/vm","@glimmer/encoder","@glimmer/wire-format","@glimmer/manager"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.WrappedBuilder=e.StdLib=e.MINIMAL_CAPABILITIES=e.EMPTY_BLOCKS=e.DEFAULT_CAPABILITIES=e.CompileTimeCompilationContextImpl=void 0,e.compilable=fe,e.compileStatements=me,e.compileStd=re,e.debugCompiler=void 0,e.invokeStaticBlock=V,e.invokeStaticBlockWithStack=z,e.meta=B,e.programCompilationContext=function(e,t,r){return new oe(e,t,r)},e.templateCacheCounters=void 0,e.templateCompilationContext=se,e.templateFactory=function({id:e,moduleName:t,block:r,scope:n,isStrictMode:i}){let o,s=e||"client-"+be++,a=null,l=new WeakMap,u=e=>{if(void 0===o&&(o=JSON.parse(r)),void 0===e)return null===a?(ye.cacheMiss++,a=new ve({id:s,block:o,moduleName:t,owner:null,scope:n,isStrictMode:i})):ye.cacheHit++,a +let u=l.get(e) +return void 0===u?(ye.cacheMiss++,u=new ve({id:s,block:o,moduleName:t,owner:e,scope:n,isStrictMode:i}),l.set(e,u)):ye.cacheHit++,u} +return u.__id=s,u.__meta={moduleName:t},u} +e.debugCompiler=void 0 +function a(e){return t=>{if(!function(e){return Array.isArray(e)&&2===e.length}(t))return!1 +let r=t[0] +return r===o.SexpOpcodes.GetStrictKeyword||r===o.SexpOpcodes.GetLexicalSymbol||r===e}}const l=a(o.SexpOpcodes.GetFreeAsComponentHead),u=a(o.SexpOpcodes.GetFreeAsModifierHead),c=a(o.SexpOpcodes.GetFreeAsHelperHead),p=a(o.SexpOpcodes.GetFreeAsComponentOrHelperHead) +function d(e,r,n,i,o){let{upvars:s}=n,a=(0,t.unwrap)(s[e[1]]),l=r.lookupBuiltInHelper(a) +return i.helper(l,a)}const h={Modifier:1003,Component:1004,Helper:1005,ComponentOrHelper:1007,OptionalComponentOrHelper:1008,Local:1010,TemplateLocal:1011},f={Label:1e3,StartLabels:1001,StopLabels:1002,Start:1e3,End:1002},m={Label:1,IsStrictMode:2,DebugSymbols:3,Block:4,StdLib:5,NonSmallInt:6,SymbolTable:7,Layout:8} +function g(e){return{type:m.Label,value:e}}function b(){return{type:m.IsStrictMode,value:void 0}}function y(e){return{type:m.StdLib,value:e}}function v(e){return{type:m.SymbolTable,value:e}}function _(e){return{type:m.Layout,value:e}}class O{constructor(){this.labels=(0,t.dict)(),this.targets=[]}label(e,t){this.labels[e]=t}target(e,t){this.targets.push({at:e,target:t})}patch(e){let{targets:r,labels:n}=this +for(const{at:i,target:o}of r){let r=n[o]-i;(0,t.assert)(-1===e.getbyaddr(i),"Expected heap to contain a placeholder, but it did not"),e.setbyaddr(i,r)}}}function w(e,r,n,i,s){if(function(e){return e=0;a--){let r=(0,t.unwrap)(o[a]) +e(f.Label,r.label),e(n.Op.Pop,1),r.callback(),0!==a&&e(n.MachineOp.Jump,g("END"))}e(f.Label,"END"),e(f.StopLabels),e(n.Op.Exit)}function W(e,t,r){e(f.StartLabels),e(n.MachineOp.PushFrame),e(n.MachineOp.ReturnTo,g("ENDINITIAL")) +let i=t() +e(n.Op.Enter,i),r(),e(f.Label,"FINALLY"),e(n.Op.Exit),e(n.MachineOp.Return),e(f.Label,"ENDINITIAL"),e(n.MachineOp.PopFrame),e(f.StopLabels)}function Y(e,t,r,i){return W(e,t,(()=>{e(n.Op.JumpUnless,g("ELSE")),r(),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"ELSE"),void 0!==i&&i()}))}D.add(o.SexpOpcodes.Concat,((e,[,t])=>{for(let r of t)I(e,r) +e(n.Op.Concat,t.length)})),D.add(o.SexpOpcodes.Call,((e,[,t,r,n])=>{c(t)?e(h.Helper,t,(t=>{A(e,t,r,n)})):(I(e,t),x(e,r,n))})),D.add(o.SexpOpcodes.Curry,((e,[,t,r,n,i])=>{M(e,r,t,n,i)})),D.add(o.SexpOpcodes.GetSymbol,((e,[,t,r])=>{e(n.Op.GetVariable,t),j(e,r)})),D.add(o.SexpOpcodes.GetLexicalSymbol,((e,[,t,r])=>{e(h.TemplateLocal,t,(t=>{e(n.Op.ConstantReference,t),j(e,r)}))})),D.add(o.SexpOpcodes.GetStrictKeyword,((e,t)=>{e(h.Local,t[1],(r=>{e(h.Helper,t,(t=>{A(e,t,null,null)}))}))})),D.add(o.SexpOpcodes.GetFreeAsHelperHead,((e,t)=>{e(h.Local,t[1],(r=>{e(h.Helper,t,(t=>{A(e,t,null,null)}))}))})),D.add(o.SexpOpcodes.Undefined,(e=>S(e,void 0))),D.add(o.SexpOpcodes.HasBlock,((e,[,t])=>{I(e,t),e(n.Op.HasBlock)})),D.add(o.SexpOpcodes.HasBlockParams,((e,[,t])=>{I(e,t),e(n.Op.SpreadBlock),e(n.Op.CompileBlock),e(n.Op.HasBlockParams)})),D.add(o.SexpOpcodes.IfInline,((e,[,t,r,i])=>{I(e,i),I(e,r),I(e,t),e(n.Op.IfInline)})),D.add(o.SexpOpcodes.Not,((e,[,t])=>{I(e,t),e(n.Op.Not)})),D.add(o.SexpOpcodes.GetDynamicVar,((e,[,t])=>{I(e,t),e(n.Op.GetDynamicVar)})),D.add(o.SexpOpcodes.Log,((e,[,t])=>{e(n.MachineOp.PushFrame),F(e,t,null,!1),e(n.Op.Log),e(n.MachineOp.PopFrame),e(n.Op.Fetch,n.$v0)})) +const Q="&attrs" +function K(e,r,i,o,a,l){let{compilable:u,capabilities:c,handle:p}=r,d=i?[i,[]]:null,h=Array.isArray(l)||null===l?R(l):l +u?(e(n.Op.PushComponentDefinition,p),function(e,{capabilities:r,layout:i,elementBlock:o,positional:a,named:l,blocks:u}){let{symbolTable:c}=i,p=c.hasEval||(0,s.hasCapability)(r,n.InternalComponentCapabilities.prepareArgs) +if(p)return void X(e,{capabilities:r,elementBlock:o,positional:a,named:l,atNames:!0,blocks:u,layout:i}) +e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame) +let{symbols:d}=c,h=[],f=[],m=[],g=u.names +if(null!==o){let t=d.indexOf(Q);-1!==t&&($(e,o),h.push(t))}for(const t of g){let r=d.indexOf(`&${t}`);-1!==r&&($(e,u.get(t)),h.push(r))}if((0,s.hasCapability)(r,n.InternalComponentCapabilities.createArgs)){let r=L(e,a)<<4 +r|=8 +let i=t.EMPTY_STRING_ARRAY +if(null!==l){i=l[0] +let r=l[1] +for(let n=0;n0?1:0),e(n.Op.SetVariable,0) +for(const s of(0,t.reverse)(f))-1===s?e(n.Op.Pop,1):e(n.Op.SetVariable,s+1) +null!==a&&e(n.Op.Pop,a.length) +for(const s of(0,t.reverse)(h))e(n.Op.SetBlock,s+1) +e(n.Op.Constant,_(i)),e(n.Op.CompileBlock),e(n.MachineOp.InvokeVirtual),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),(0,s.hasCapability)(r,n.InternalComponentCapabilities.dynamicScope)&&e(n.Op.PopDynamicScope) +e(n.Op.CommitComponentTransaction),e(n.Op.Load,n.$s0)}(e,{capabilities:c,layout:u,elementBlock:d,positional:o,named:a,blocks:h})):(e(n.Op.PushComponentDefinition,p),X(e,{capabilities:c,elementBlock:d,positional:o,named:a,atNames:!0,blocks:h}))}function J(e,t,r,i,o,s,a,l){let u=r?[r,[]]:null,c=Array.isArray(s)||null===s?R(s):s +W(e,(()=>(I(e,t),e(n.Op.Dup,n.$sp,0),2)),(()=>{e(n.Op.JumpUnless,g("ELSE")),l?e(n.Op.ResolveCurriedComponent):e(n.Op.ResolveDynamicComponent,b()),e(n.Op.PushDynamicComponentInstance),X(e,{capabilities:!0,elementBlock:u,positional:i,named:o,atNames:a,blocks:c}),e(f.Label,"ELSE")}))}function X(e,{capabilities:r,elementBlock:i,positional:o,named:a,atNames:l,blocks:u,layout:c}){let p=!!u,d=!0===r||(0,s.hasCapability)(r,n.InternalComponentCapabilities.prepareArgs)||!(!a||0===a[0].length),h=u.with("attrs",i) +e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame),function(e,r,i,o,s){let a=o.names +for(const t of a)$(e,o.get(t)) +let l=L(e,r)<<4 +s&&(l|=8),o&&(l|=7) +let u=t.EMPTY_ARRAY +if(i){u=i[0] +let t=i[1] +for(let r=0;r{c?(e(n.Op.PushSymbolTable,v(c.symbolTable)),e(n.Op.Constant,_(c)),e(n.Op.CompileBlock)):e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}function Z(e,t,r){e(f.StartLabels),function(e,t,r){e(n.Op.Fetch,t),r(),e(n.Op.Load,t)}(e,n.$s1,(()=>{e(n.Op.GetComponentTagName,n.$s0),e(n.Op.PrimitiveReference),e(n.Op.Dup,n.$sp,0)})),e(n.Op.JumpUnless,g("BODY")),e(n.Op.Fetch,n.$s1),e(n.Op.PutComponentOperations),e(n.Op.OpenDynamicElement),e(n.Op.DidCreateElement,n.$s0),H(e,r,null),e(n.Op.FlushElement),e(f.Label,"BODY"),V(e,[t.block[0],[]]),e(n.Op.Fetch,n.$s1),e(n.Op.JumpUnless,g("END")),e(n.Op.CloseElement),e(f.Label,"END"),e(n.Op.Load,n.$s1),e(f.StopLabels)}function ee(e,t,r,i,o=null){e(n.Op.BeginComponentTransaction,n.$s0),e(n.Op.PushDynamicScope),e(n.Op.CreateComponent,0|t,n.$s0),o&&o(),e(n.Op.RegisterComponentDestructor,n.$s0),e(n.Op.GetComponentSelf,n.$s0),e(n.Op.VirtualRootScope,n.$s0),e(n.Op.SetVariable,0),e(n.Op.SetupForEval,n.$s0),i&&e(n.Op.SetNamedVariables,n.$s0),r&&e(n.Op.SetBlocks,n.$s0),e(n.Op.Pop,1),e(n.Op.InvokeComponentLayout,n.$s0),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),e(n.Op.PopDynamicScope),e(n.Op.CommitComponentTransaction)}function te(e,t,r){G(e,(()=>e(n.Op.ContentType)),(i=>{i(n.ContentType.String,(()=>{t?(e(n.Op.AssertSame),e(n.Op.AppendHTML)):e(n.Op.AppendText)})),"number"==typeof r?(i(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),function(e){e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame),e(n.Op.PushEmptyArgs),e(n.Op.PrepareArgs,n.$s0),ee(e,!1,!1,!0,(()=>{e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}(e)})),i(n.ContentType.Helper,(()=>{x(e,null,null,(()=>{e(n.MachineOp.InvokeStatic,r)}))}))):(i(n.ContentType.Component,(()=>{e(n.Op.AppendText)})),i(n.ContentType.Helper,(()=>{e(n.Op.AppendText)}))),i(n.ContentType.SafeString,(()=>{e(n.Op.AssertSame),e(n.Op.AppendSafeHTML)})),i(n.ContentType.Fragment,(()=>{e(n.Op.AssertSame),e(n.Op.AppendDocumentFragment)})),i(n.ContentType.Node,(()=>{e(n.Op.AssertSame),e(n.Op.AppendNode)}))}))}function re(e){let t=ie(e,(e=>function(e){e(n.Op.Main,n.$s0),ee(e,!1,!1,!0)}(e))),r=ie(e,(e=>te(e,!0,null))),i=ie(e,(e=>te(e,!1,null))),o=ie(e,(e=>te(e,!0,r))),s=ie(e,(e=>te(e,!1,i))) +return new C(t,o,s,r,i)}const ne={evalSymbols:null,upvars:null,moduleName:"stdlib",scopeValues:null,isStrictMode:!0,owner:null,size:0} +function ie(e,t){let{constants:r,heap:n,resolver:i}=e,o=new E(n,ne) +t((function(...e){w(o,r,i,ne,e)})) +let s=o.commit(0) +if("number"!=typeof s)throw new Error("Unexpected errors compiling std") +return s}class oe{constructor({constants:e,heap:t},r,n){this.constants=void 0,this.heap=void 0,this.stdlib=void 0,this.resolver=r,this.createOp=n,this.constants=e,this.heap=t,this.stdlib=re(this)}}function se(e,t){return{program:e,encoder:new E(e.heap,t,e.stdlib),meta:t}}e.CompileTimeCompilationContextImpl=oe +const ae=new N,le=["class","id","value","name","type","style","href"],ue=["div","span","p","a"] +function ce(e){return"string"==typeof e?e:ue[e]}function pe(e){return"string"==typeof e?e:le[e]}function de(e){if(null===e)return null +return[e[0].map((e=>`@${e}`)),e[1]]}ae.add(o.SexpOpcodes.Comment,((e,t)=>e(n.Op.Comment,t[1]))),ae.add(o.SexpOpcodes.CloseElement,(e=>e(n.Op.CloseElement))),ae.add(o.SexpOpcodes.FlushElement,(e=>e(n.Op.FlushElement))),ae.add(o.SexpOpcodes.Modifier,((e,[,t,r,i])=>{u(t)?e(h.Modifier,t,(t=>{e(n.MachineOp.PushFrame),F(e,r,i,!1),e(n.Op.Modifier,t),e(n.MachineOp.PopFrame)})):(I(e,t),e(n.MachineOp.PushFrame),F(e,r,i,!1),e(n.Op.Dup,n.$fp,1),e(n.Op.DynamicModifier),e(n.MachineOp.PopFrame))})),ae.add(o.SexpOpcodes.StaticAttr,((e,[,t,r,i])=>{e(n.Op.StaticAttr,pe(t),r,i??null)})),ae.add(o.SexpOpcodes.StaticComponentAttr,((e,[,t,r,i])=>{e(n.Op.StaticComponentAttr,pe(t),r,i??null)})),ae.add(o.SexpOpcodes.DynamicAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.DynamicAttr,pe(t),!1,i??null)})),ae.add(o.SexpOpcodes.TrustingDynamicAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.DynamicAttr,pe(t),!0,i??null)})),ae.add(o.SexpOpcodes.ComponentAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.ComponentAttr,pe(t),!1,i??null)})),ae.add(o.SexpOpcodes.TrustingComponentAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.ComponentAttr,pe(t),!0,i??null)})),ae.add(o.SexpOpcodes.OpenElement,((e,[,t])=>{e(n.Op.OpenElement,ce(t))})),ae.add(o.SexpOpcodes.OpenElementWithSplat,((e,[,t])=>{e(n.Op.PutComponentOperations),e(n.Op.OpenElement,ce(t))})),ae.add(o.SexpOpcodes.Component,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,r,null,n,i)})):J(e,t,r,null,n,i,!0,!0)})),ae.add(o.SexpOpcodes.Yield,((e,[,t,r])=>H(e,t,r))),ae.add(o.SexpOpcodes.AttrSplat,((e,[,t])=>H(e,t,null))),ae.add(o.SexpOpcodes.Debugger,((e,[,t])=>e(n.Op.Debugger,{type:m.DebugSymbols,value:void 0},t))),ae.add(o.SexpOpcodes.Append,((e,[,t])=>{if(Array.isArray(t))if(p(t))e(h.OptionalComponentOrHelper,t,{ifComponent(t){K(e,t,null,null,null,null)},ifHelper(t){e(n.MachineOp.PushFrame),A(e,t,null,null),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)},ifValue(t){e(n.MachineOp.PushFrame),e(n.Op.ConstantReference,t),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}) +else if(t[0]===o.SexpOpcodes.Call){let[,r,i,o]=t +p(r)?e(h.ComponentOrHelper,r,{ifComponent(t){K(e,t,null,i,de(o),null)},ifHelper(t){e(n.MachineOp.PushFrame),A(e,t,i,o),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}):G(e,(()=>{I(e,r),e(n.Op.DynamicContentType)}),(t=>{t(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),X(e,{capabilities:!0,elementBlock:null,positional:i,named:o,atNames:!1,blocks:R(null)})})),t(n.ContentType.Helper,(()=>{x(e,i,o,(()=>{e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append"))}))}))}))}else e(n.MachineOp.PushFrame),I(e,t),e(n.MachineOp.InvokeStatic,y("cautious-append")),e(n.MachineOp.PopFrame) +else e(n.Op.Text,null==t?"":String(t))})),ae.add(o.SexpOpcodes.TrustingAppend,((e,[,t])=>{Array.isArray(t)?(e(n.MachineOp.PushFrame),I(e,t),e(n.MachineOp.InvokeStatic,y("trusting-append")),e(n.MachineOp.PopFrame)):e(n.Op.Text,null==t?"":String(t))})),ae.add(o.SexpOpcodes.Block,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,null,r,de(n),i)})):J(e,t,null,r,n,i,!1,!1)})),ae.add(o.SexpOpcodes.InElement,((e,[,t,r,i,o])=>{Y(e,(()=>(I(e,r),void 0===o?S(e,void 0):I(e,o),I(e,i),e(n.Op.Dup,n.$sp,0),4)),(()=>{e(n.Op.PushRemoteElement),V(e,t),e(n.Op.PopRemoteElement)}))})),ae.add(o.SexpOpcodes.If,((e,[,t,r,i])=>Y(e,(()=>(I(e,t),e(n.Op.ToBoolean),1)),(()=>{V(e,r)}),i?()=>{V(e,i)}:void 0))),ae.add(o.SexpOpcodes.Each,((e,[,t,r,i,o])=>W(e,(()=>(r?I(e,r):S(e,null),I(e,t),2)),(()=>{e(n.Op.EnterList,g("BODY"),g("ELSE")),e(n.MachineOp.PushFrame),e(n.Op.Dup,n.$fp,1),e(n.MachineOp.ReturnTo,g("ITER")),e(f.Label,"ITER"),e(n.Op.Iterate,g("BREAK")),e(f.Label,"BODY"),z(e,i,2),e(n.Op.Pop,2),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"BREAK"),e(n.MachineOp.PopFrame),e(n.Op.ExitList),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"ELSE"),o&&V(e,o)})))),ae.add(o.SexpOpcodes.Let,((e,[,t,r])=>{z(e,r,L(e,t))})),ae.add(o.SexpOpcodes.WithDynamicVars,((e,[,t,r])=>{if(t){let[i,o]=t +L(e,o),function(e,t,r){e(n.Op.PushDynamicScope),e(n.Op.BindDynamicScope,t),r(),e(n.Op.PopDynamicScope)}(e,i,(()=>{V(e,r)}))}else V(e,r)})),ae.add(o.SexpOpcodes.InvokeComponent,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,null,r,de(n),i)})):J(e,t,null,r,n,i,!1,!1)})) +class he{constructor(e,t,r,n="plain block"){this.compiled=null,this.statements=e,this.meta=t,this.symbolTable=r,this.moduleName=n}compile(e){return function(e,t){if(null!==e.compiled)return e.compiled +e.compiled=-1 +let{statements:r,meta:n}=e,i=me(r,n,t) +return e.compiled=i,i}(this,e)}}function fe(e,t){let[r,n,i]=e.block +return new he(r,B(e),{symbols:n,hasEval:i},t)}function me(e,t,r){let n=ae,i=se(r,t),{encoder:o,program:{constants:s,resolver:a}}=i +function l(...e){w(o,s,a,t,e)}for(const u of e)n.compile(l,u) +return i.encoder.commit(t.size)}e.DEFAULT_CAPABILITIES={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!1,elementHook:!1,dynamicScope:!0,createCaller:!1,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1},e.MINIMAL_CAPABILITIES={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,dynamicScope:!1,createCaller:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +class ge{constructor(e,t){this.symbolTable=void 0,this.compiled=null,this.attrsBlockNumber=void 0,this.layout=e,this.moduleName=t +let{block:r}=e,[,n,i]=r +n=n.slice() +let o=n.indexOf(Q) +this.attrsBlockNumber=-1===o?n.push(Q):o+1,this.symbolTable={hasEval:i,symbols:n}}compile(e){if(null!==this.compiled)return this.compiled +let t=B(this.layout),r=se(e,t),{encoder:n,program:{constants:i,resolver:o}}=r +Z((function(...e){w(n,i,o,t,e)}),this.layout,this.attrsBlockNumber) +let s=r.encoder.commit(t.size) +return"number"!=typeof s||(this.compiled=s),s}}e.WrappedBuilder=ge +let be=0,ye=e.templateCacheCounters={cacheHit:0,cacheMiss:0} +class ve{constructor(e){this.result="ok",this.layout=null,this.wrappedLayout=null,this.parsedLayout=e}get moduleName(){return this.parsedLayout.moduleName}get id(){return this.parsedLayout.id}get referrer(){return{moduleName:this.parsedLayout.moduleName,owner:this.parsedLayout.owner}}asLayout(){return this.layout?this.layout:this.layout=fe((0,t.assign)({},this.parsedLayout),this.moduleName)}asWrappedLayout(){return this.wrappedLayout?this.wrappedLayout:this.wrappedLayout=new ge((0,t.assign)({},this.parsedLayout),this.moduleName)}}})),e("@glimmer/owner",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.OWNER=void 0,e.getOwner=function(e){return e[t]},e.setOwner=function(e,r){e[t]=r} +const t=e.OWNER=Symbol("OWNER")})),e("@glimmer/program",["exports","@glimmer/manager","@glimmer/opcode-compiler","@glimmer/util","@glimmer/vm","@glimmer/wire-format"],(function(e,t,r,n,i,o){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.RuntimeProgramImpl=e.RuntimeOpImpl=e.RuntimeHeapImpl=e.RuntimeConstantsImpl=e.HeapImpl=e.ConstantsImpl=e.CompileTimeConstantImpl=void 0,e.artifacts=function(){return{constants:new d,heap:new b}},e.hydrateHeap=function(e){return new g(e)} +const s=[[[o.SexpOpcodes.Yield,1,null]],["&default"],!1,[]],a={id:"1b32f5c2-7623-43d6-a0ad-9672898920a1",moduleName:"__default__.hbs",block:JSON.stringify(s),scope:null,isStrictMode:!0},l=Object.freeze([]),u=(0,n.constants)(l),c=u.indexOf(l) +class p{constructor(){this.values=u.slice(),this.indexMap=new Map(this.values.map(((e,t)=>[e,t])))}value(e){let t=this.indexMap,r=t.get(e) +return void 0===r&&(r=this.values.push(e)-1,t.set(e,r)),r}array(e){if(0===e.length)return c +let t=new Array(e.length) +for(let r=0;r=0,`cannot get value for handle: ${e}`),this.values[e]}getArray(e){let t=this.reifiedArrs,r=t[e] +if(void 0===r){let i=this.getValue(e) +r=new Array(i.length) +for(const[e,t]of(0,n.enumerate)(i))r[e]=this.getValue(t) +t[e]=r}return r}}e.ConstantsImpl=d +class h{constructor(e){this.offset=0,this.heap=e}get size(){return 1+((this.heap.getbyaddr(this.offset)&i.OPERAND_LEN_MASK)>>i.ARG_SHIFT)}get isMachine(){return this.heap.getbyaddr(this.offset)&i.MACHINE_MASK?1:0}get type(){return this.heap.getbyaddr(this.offset)&i.TYPE_MASK}get op1(){return this.heap.getbyaddr(this.offset+1)}get op2(){return this.heap.getbyaddr(this.offset+2)}get op3(){return this.heap.getbyaddr(this.offset+3)}}e.RuntimeOpImpl=h +var f=function(e){return e[e.Allocated=0]="Allocated",e[e.Freed=1]="Freed",e[e.Purged=2]="Purged",e[e.Pointer=3]="Pointer",e}(f||{}) +const m=1048576 +class g{constructor(e){this.heap=void 0,this.table=void 0 +let{buffer:t,table:r}=e +this.heap=new Int32Array(t),this.table=r}getaddr(e){return(0,n.unwrap)(this.table[e])}getbyaddr(e){return(0,n.expect)(this.heap[e],"Access memory out of bounds of the heap")}sizeof(e){return y(this.table)}}e.RuntimeHeapImpl=g +class b{constructor(){this.offset=0,this.heap=void 0,this.handleTable=void 0,this.handleState=void 0,this.handle=0,this.heap=new Int32Array(m),this.handleTable=[],this.handleState=[]}pushRaw(e){this.sizeCheck(),this.heap[this.offset++]=e}pushOp(e){this.pushRaw(e)}pushMachine(e){this.pushRaw(e|i.MACHINE_MASK)}sizeCheck(){let{heap:e}=this +if(this.offset===this.heap.length){let t=new Int32Array(e.length+m) +t.set(e,0),this.heap=t}}getbyaddr(e){return(0,n.unwrap)(this.heap[e])}setbyaddr(e,t){this.heap[e]=t}malloc(){return this.handleTable.push(this.offset),this.handleTable.length-1}finishMalloc(e){}size(){return this.offset}getaddr(e){return(0,n.unwrap)(this.handleTable[e])}sizeof(e){return y(this.handleTable)}free(e){this.handleState[e]=f.Freed}compact(){let e=0,{handleTable:t,handleState:r,heap:i}=this +for(let o=0;om(e)),(t=>g(e,t))) +return t.debugLabel=e.debugLabel,t[i]=l,t},e.createIteratorItemRef=function(e){let t=e,r=(0,n.createTag)() +return h((()=>((0,n.consumeTag)(r),t)),(e=>{t!==e&&(t=e,(0,n.dirtyTag)(r))}))},e.createIteratorRef=function(e,n){return h((()=>{let i=m(e),o=function(e){switch(e){case"@key":return C(v) +case"@index":return C(_) +case"@identity":return C(O) +default:return function(e){0 +return C((r=>(0,t.getPath)(r,e)))}(e)}}(n) +if(Array.isArray(i))return new T(i,o) +let s=(0,t.toIterator)(i) +return null===s?new T(r.EMPTY_ARRAY,(()=>null)):new k(s,o)}))},e.createPrimitiveRef=c,e.createReadOnlyRef=function(e){return f(e)?h((()=>m(e)),null,e.debugLabel):e},e.createUnboundRef=d,e.isConstRef=function(e){return e.tag===n.CONSTANT_TAG},e.isInvokableRef=function(e){return e[i]===l},e.isUpdatableRef=f,e.updateRef=g,e.valueForRef=m +const i=e.REFERENCE=Symbol("REFERENCE"),o=0,s=1,a=2,l=3 +class u{constructor(e){this[i]=void 0,this.tag=null,this.lastRevision=n.INITIAL,this.lastValue=void 0,this.children=null,this.compute=null,this.update=null,this.debugLabel=void 0,this[i]=e}}function c(e){const t=new u(a) +return t.tag=n.CONSTANT_TAG,t.lastValue=e,t}const p=e.UNDEFINED_REFERENCE=c(void 0) +e.NULL_REFERENCE=c(null),e.TRUE_REFERENCE=c(!0),e.FALSE_REFERENCE=c(!1) +function d(e,t){const r=new u(a) +return r.lastValue=e,r.tag=n.CONSTANT_TAG,r}function h(e,t=null,r="unknown"){const n=new u(s) +return n.compute=e,n.update=t,n}function f(e){return null!==e.update}function m(e){const t=e +let{tag:r}=t +if(r===n.CONSTANT_TAG)return t.lastValue +const{lastRevision:i}=t +let o +if(null!==r&&(0,n.validateTag)(r,i))o=t.lastValue +else{const{compute:e}=t,i=(0,n.track)((()=>{o=t.lastValue=e()}),!1) +r=t.tag=i,t.lastRevision=(0,n.valueForTag)(i)}return(0,n.consumeTag)(r),o}function g(e,t){const n=e;(0,r.expect)(n.update,"called update on a non-updatable reference")(t)}function b(e,n){const o=e,s=o[i] +let l,u=o.children +if(null===u)u=o.children=new Map +else if(l=u.get(n),void 0!==l)return l +if(s===a){const e=m(o) +l=(0,r.isDict)(e)?d(e[n]):p}else l=h((()=>{const e=m(o) +if((0,r.isDict)(e))return(0,t.getProp)(e,n)}),(e=>{const i=m(o) +if((0,r.isDict)(i))return(0,t.setProp)(i,n,e)})) +return u.set(n,l),l}e.createDebugAliasRef=void 0 +const y={},v=(e,t)=>t,_=(e,t)=>String(t),O=e=>null===e?y:e +class w{constructor(){this._weakMap=void 0,this._primitiveMap=void 0}get weakMap(){return void 0===this._weakMap&&(this._weakMap=new WeakMap),this._weakMap}get primitiveMap(){return void 0===this._primitiveMap&&(this._primitiveMap=new Map),this._primitiveMap}set(e,t){(0,r.isObject)(e)?this.weakMap.set(e,t):this.primitiveMap.set(e,t)}get(e){return(0,r.isObject)(e)?this.weakMap.get(e):this.primitiveMap.get(e)}}const E=new w +function C(e){let t=new w +return(r,n)=>{let i=e(r,n),o=t.get(i)||0 +return t.set(i,o+1),0===o?i:function(e,t){let r=E.get(e) +void 0===r&&(r=[],E.set(e,r)) +let n=r[t] +return void 0===n&&(n={value:e,count:t},r[t]=n),n}(i,o)}}class k{constructor(e,t){this.inner=e,this.keyFor=t}isEmpty(){return this.inner.isEmpty()}next(){let e=this.inner.next() +return null!==e&&(e.key=this.keyFor(e.value,e.memo)),e}}class T{constructor(e,t){this.current=void 0,this.pos=0,this.iterator=e,this.keyFor=t,0===e.length?this.current={kind:"empty"}:this.current={kind:"first",value:e[this.pos]}}isEmpty(){return"empty"===this.current.kind}next(){let e,t=this.current +if("first"===t.kind)this.current={kind:"progress"},e=t.value +else{if(this.pos>=this.iterator.length-1)return null +e=this.iterator[++this.pos]}let{keyFor:r}=this +return{key:r(e,this.pos),value:e,memo:this.pos}}}})),e("@glimmer/runtime",["exports","@glimmer/debug","@glimmer/reference","@glimmer/util","@glimmer/vm","@glimmer/destroyable","@glimmer/global-context","@glimmer/manager","@glimmer/validator","@glimmer/program","@glimmer/owner"],(function(e,t,r,n,i,o,s,a,l,u,c){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.array=e.UpdatingVM=e.UpdatableBlockImpl=e.TemplateOnlyComponentManager=e.TemplateOnlyComponent=e.TEMPLATE_ONLY_COMPONENT_MANAGER=e.SimpleDynamicAttribute=e.SERIALIZATION_FIRST_NODE_STRING=e.RemoteLiveBlock=e.RehydrateBuilder=e.PartialScopeImpl=e.NewElementBuilder=e.LowLevelVM=e.IDOMChanges=e.EnvironmentImpl=e.EMPTY_POSITIONAL=e.EMPTY_NAMED=e.EMPTY_ARGS=e.DynamicScopeImpl=e.DynamicAttribute=e.DOMTreeConstruction=e.DOMChanges=e.CursorImpl=e.CurriedValue=e.ConcreteBounds=void 0,e.clear=E,e.clientBuilder=function(e,t){return re.forInitialRender(e,t)},e.concat=void 0,e.createCapturedArgs=lt,e.curry=ye,Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return o.destroy}}),e.dynamicAttribute=V,e.hash=e.get=e.fn=void 0,e.inTransaction=Qt,e.invokeHelper=function(e,t,r){0 +const n=(0,c.getOwner)(e),i=(0,a.getInternalHelperManager)(t) +0 +0 +const s=i.getDelegateFor(n) +let u,p=new tr(e,r),d=s.createHelper(t,p) +if(!(0,a.hasValue)(s))throw new Error("TODO: unreachable, to be implemented with hasScheduledEffect") +u=(0,l.createCache)((()=>s.getValue(d))),(0,o.associateDestroyableChild)(e,u) +if((0,a.hasDestroyable)(s)){let e=s.getDestroyable(d);(0,o.associateDestroyableChild)(u,e)}return u},Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return o.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return o.isDestroying}}),e.isSerializationFirstNode=function(e){return e.nodeValue===Or},e.isWhitespace=function(e){return Bt.test(e)},e.normalizeProperty=P,e.on=void 0,Object.defineProperty(e,"registerDestructor",{enumerable:!0,get:function(){return o.registerDestructor}}),e.rehydrationBuilder=function(e,t){return Er.forInitialRender(e,t)},e.reifyArgs=function(e){return{named:ut(e.named),positional:ct(e.positional)}},e.reifyNamed=ut,e.reifyPositional=ct,e.renderComponent=function(e,t,i,o,s,a={},l=new p){let u=br.empty(e,{treeBuilder:t,handle:i.stdlib.main,dynamicScope:l,owner:o},i) +return function(e,t,r,i,o){const s=Object.keys(o).map((e=>[e,o[e]])),a=["main","else","attrs"],l=s.map((([e])=>`@${e}`)) +let u=e[y].component(i,r) +e.pushFrame() +for(let n=0;n<3*a.length;n++)e.stack.push(null) +e.stack.push(null),s.forEach((([,t])=>{e.stack.push(t)})),e[v].setup(e.stack,l,a,0,!0) +const c=(0,n.expect)(u.compilable,"BUG: Expected the root component rendered with renderComponent to have an associated template, set with setComponentTemplate"),p=(0,n.unwrapHandle)(c.compile(t)),d={handle:p,symbolTable:c.symbolTable} +return e.stack.push(e[v]),e.stack.push(d),e.stack.push(u),new _r(e)}(u,i,o,s,function(e){const t=(0,r.createConstRef)(e,"args") +return Object.keys(e).reduce(((e,n)=>(e[n]=(0,r.childRefFor)(t,n),e)),{})}(a))},e.renderMain=function(e,t,r,i,o,s,a=new p){let l=(0,n.unwrapHandle)(s.compile(t)),u=s.symbolTable.symbols.length,c=br.initial(e,t,{self:i,dynamicScope:a,treeBuilder:o,handle:l,numSymbols:u,owner:r}) +return new _r(c)},e.renderSync=function(e,t){let r +return Qt(e,(()=>r=t.sync())),r},e.resetDebuggerCallback=function(){kt=Ct},e.runtimeContext=function(e,t,r,n){return{env:new Yt(e,t),program:new u.RuntimeProgramImpl(r.constants,r.heap),resolver:n}},e.setDebuggerCallback=function(e){kt=e},e.templateOnlyComponent=function(e,t){return new At(e,t)} +class p{constructor(e){this.bucket=void 0,this.bucket=e?(0,n.assign)({},e):{}}get(e){return(0,n.unwrap)(this.bucket[e])}set(e,t){return this.bucket[e]=t}child(){return new p(this.bucket)}}e.DynamicScopeImpl=p +class d{static root(e,t=0,n){let i=new Array(t+1).fill(r.UNDEFINED_REFERENCE) +return new d(i,n,null,null,null).init({self:e})}static sized(e=0,t){let n=new Array(e+1).fill(r.UNDEFINED_REFERENCE) +return new d(n,t,null,null,null)}constructor(e,t,r,n,i){this.slots=e,this.owner=t,this.callerScope=r,this.evalScope=n,this.partialMap=i}init({self:e}){return this.slots[0]=e,this}getSelf(){return this.get(0)}getSymbol(e){return this.get(e)}getBlock(e){let t=this.get(e) +return t===r.UNDEFINED_REFERENCE?null:t}getEvalScope(){return this.evalScope}getPartialMap(){return this.partialMap}bind(e,t){this.set(e,t)}bindSelf(e){this.set(0,e)}bindSymbol(e,t){this.set(e,t)}bindBlock(e,t){this.set(e,t)}bindEvalScope(e){this.evalScope=e}bindPartialMap(e){this.partialMap=e}bindCallerScope(e){this.callerScope=e}getCallerScope(){return this.callerScope}child(){return new d(this.slots.slice(),this.owner,this.callerScope,this.evalScope,this.partialMap)}get(e){if(e>=this.slots.length)throw new RangeError(`BUG: cannot get $${e} from scope; length=${this.slots.length}`) +return this.slots[e]}set(e,t){if(e>=this.slots.length)throw new RangeError(`BUG: cannot get $${e} from scope; length=${this.slots.length}`) +this.slots[e]=t}}e.PartialScopeImpl=d +const h=Symbol("INNER_VM"),f=Symbol("DESTROYABLE_STACK"),m=Symbol("STACKS"),g=Symbol("REGISTERS"),b=Symbol("HEAP"),y=Symbol("CONSTANTS"),v=Symbol("ARGS") +class _{constructor(e,t){this.element=e,this.nextSibling=t}}e.CursorImpl=_ +class O{constructor(e,t,r){this.parentNode=e,this.first=t,this.last=r}parentElement(){return this.parentNode}firstNode(){return this.first}lastNode(){return this.last}}function w(e,t){let r=e.parentElement(),i=e.firstNode(),o=e.lastNode(),s=i +for(;;){let e=s.nextSibling +if(r.insertBefore(s,t),s===o)return e +s=(0,n.expect)(e,"invalid bounds")}}function E(e){let t=e.parentElement(),r=e.firstNode(),i=e.lastNode(),o=r +for(;;){let e=o.nextSibling +if(t.removeChild(o),o===i)return e +o=(0,n.expect)(e,"invalid bounds")}}function C(e){return k(e)?"":String(e)}function k(e){return null==e||"function"!=typeof e.toString}function T(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}function R(e){return"object"==typeof e&&null!==e&&"number"==typeof e.nodeType}function S(e){return"string"==typeof e}function P(e,t){let r,n +if(t in e)n=t,r="prop" +else{let i=t.toLowerCase() +i in e?(r="prop",n=i):(r="attr",n=t)}return"prop"!==r||"style"!==n.toLowerCase()&&!function(e,t){let r=A[e.toUpperCase()] +return r&&r[t.toLowerCase()]||!1}(e.tagName,n)||(r="attr"),{normalized:n,type:r}}e.ConcreteBounds=O +const A={INPUT:{form:!0,autocorrect:!0,list:!0},SELECT:{form:!0},OPTION:{form:!0},TEXTAREA:{form:!0},LABEL:{form:!0},FIELDSET:{form:!0},LEGEND:{form:!0},OBJECT:{form:!0},OUTPUT:{form:!0},BUTTON:{form:!0}} +const x=["javascript:","vbscript:"],M=["A","BODY","LINK","IMG","IFRAME","BASE","FORM"],N=["EMBED"],D=["href","src","background","action"],j=["src"] +function I(e,t){return-1!==e.indexOf(t)}function F(e,t){return(null===e||I(M,e))&&I(D,t)}function L(e,t){return null!==e&&(I(N,e)&&I(j,t))}function B(e,t){return F(e,t)||L(e,t)}let U +function H(e){return U||(U=function(){if("object"==typeof URL&&null!==URL&&"function"==typeof URL.parse){let e=URL +return t=>{let r=null +return"string"==typeof t&&(r=e.parse(t).protocol),null===r?":":r}}if("function"==typeof URL)return e=>{try{return new URL(e).protocol}catch(t){return":"}} +throw new Error('@glimmer/runtime needs a valid "globalThis.URL"')}()),U(e)}function $(e,t,r){let n=null +if(null==r)return r +if(T(r))return r.toHTML() +n=e?e.tagName.toUpperCase():null +let i=C(r) +if(F(n,t)){let e=H(i) +if(I(x,e))return`unsafe:${i}`}return L(n,t)?`unsafe:${i}`:i}function V(e,t,r,i=!1){const{tagName:o,namespaceURI:s}=e,a={element:e,name:t,namespace:r} +if(s===n.NS_SVG)return z(o,t,a) +const{type:l,normalized:u}=P(e,t) +return"attr"===l?z(o,u,a):function(e,t,r){if(B(e,t))return new Y(t,r) +if(function(e,t){return("INPUT"===e||"TEXTAREA"===e)&&"value"===t}(e,t))return new K(t,r) +if(function(e,t){return"OPTION"===e&&"selected"===t}(e,t))return new J(t,r) +return new W(t,r)}(o,u,a)}function z(e,t,r){return B(e,t)?new Q(r):new G(r)}class q{constructor(e){this.attribute=e}}e.DynamicAttribute=q +class G extends q{set(e,t,r){const n=X(t) +if(null!==n){const{name:t,namespace:r}=this.attribute +e.__setAttribute(t,n,r)}}update(e,t){const r=X(e),{element:n,name:i}=this.attribute +null===r?n.removeAttribute(i):n.setAttribute(i,r)}}e.SimpleDynamicAttribute=G +class W extends q{constructor(e,t){super(t),this.value=void 0,this.normalizedName=e}set(e,t,r){null!=t&&(this.value=t,e.__setProperty(this.normalizedName,t))}update(e,t){const{element:r}=this.attribute +this.value!==e&&(r[this.normalizedName]=this.value=e,null==e&&this.removeAttribute())}removeAttribute(){const{element:e,namespace:t}=this.attribute +t?e.removeAttributeNS(t,this.normalizedName):e.removeAttribute(this.normalizedName)}}class Y extends W{set(e,t,r){const{element:n,name:i}=this.attribute,o=$(n,i,t) +super.set(e,o,r)}update(e,t){const{element:r,name:n}=this.attribute,i=$(r,n,e) +super.update(i,t)}}class Q extends G{set(e,t,r){const{element:n,name:i}=this.attribute,o=$(n,i,t) +super.set(e,o,r)}update(e,t){const{element:r,name:n}=this.attribute,i=$(r,n,e) +super.update(i,t)}}class K extends W{set(e,t){e.__setProperty("value",C(t))}update(e){const t=(0,n.castToBrowser)(this.attribute.element,["input","textarea"]),r=t.value,i=C(e) +r!==i&&(t.value=i)}}class J extends W{set(e,t){null!=t&&!1!==t&&e.__setProperty("selected",!0)}update(e){const t=(0,n.castToBrowser)(this.attribute.element,"option") +t.selected=!!e}}function X(e){return!1===e||null==e||void 0===e.toString?null:!0===e?"":"function"==typeof e?null:String(e)}class Z{constructor(e){this.node=e}firstNode(){return this.node}}class ee{constructor(e){this.node=e}lastNode(){return this.node}}const te=Symbol("CURSOR_STACK") +class re{static forInitialRender(e,t){return new this(e,t.element,t.nextSibling).initialize()}static resume(e,t){let r=new this(e,t.parentElement(),t.reset(e)).initialize() +return r.pushLiveBlock(t),r}constructor(e,t,r){this.dom=void 0,this.updateOperations=void 0,this.constructing=null,this.operations=null,this.env=void 0,this[te]=new n.Stack,this.modifierStack=new n.Stack,this.blockStack=new n.Stack,this.pushElement(t,r),this.env=e,this.dom=e.getAppendOperations(),this.updateOperations=e.getDOM()}initialize(){return this.pushSimpleBlock(),this}debugBlocks(){return this.blockStack.toArray()}get element(){return this[te].current.element}get nextSibling(){return this[te].current.nextSibling}get hasBlocks(){return this.blockStack.size>0}block(){return(0,n.expect)(this.blockStack.current,"Expected a current live block")}popElement(){this[te].pop(),(0,n.expect)(this[te].current,"can't pop past the last element")}pushSimpleBlock(){return this.pushLiveBlock(new ne(this.element))}pushUpdatableBlock(){return this.pushLiveBlock(new oe(this.element))}pushBlockList(e){return this.pushLiveBlock(new se(this.element,e))}pushLiveBlock(e,t=!1){let r=this.blockStack.current +return null!==r&&(t||r.didAppendBounds(e)),this.__openBlock(),this.blockStack.push(e),e}popBlock(){return this.block().finalize(this),this.__closeBlock(),(0,n.expect)(this.blockStack.pop(),"Expected popBlock to return a block")}__openBlock(){}__closeBlock(){}openElement(e){let t=this.__openElement(e) +return this.constructing=t,t}__openElement(e){return this.dom.createElement(e,this.element)}flushElement(e){let t=this.element,r=(0,n.expect)(this.constructing,"flushElement should only be called when constructing an element") +this.__flushElement(t,r),this.constructing=null,this.operations=null,this.pushModifiers(e),this.pushElement(r,null),this.didOpenElement(r)}__flushElement(e,t){this.dom.insertBefore(e,t,this.nextSibling)}closeElement(){return this.willCloseElement(),this.popElement(),this.popModifiers()}pushRemoteElement(e,t,r){return this.__pushRemoteElement(e,t,r)}__pushRemoteElement(e,t,r){if(this.pushElement(e,r),void 0===r)for(;e.lastChild;)e.removeChild(e.lastChild) +let n=new ie(e) +return this.pushLiveBlock(n,!0)}popRemoteElement(){const e=this.popBlock() +return(0,n.assert)(e instanceof ie,"[BUG] expecting a RemoteLiveBlock"),this.popElement(),e}pushElement(e,t=null){this[te].push(new _(e,t))}pushModifiers(e){this.modifierStack.push(e)}popModifiers(){return this.modifierStack.pop()}didAppendBounds(e){return this.block().didAppendBounds(e),e}didAppendNode(e){return this.block().didAppendNode(e),e}didOpenElement(e){return this.block().openElement(e),e}willCloseElement(){this.block().closeElement()}appendText(e){return this.didAppendNode(this.__appendText(e))}__appendText(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createTextNode(e) +return t.insertBefore(r,i,n),i}__appendNode(e){return this.dom.insertBefore(this.element,e,this.nextSibling),e}__appendFragment(e){let t=e.firstChild +if(t){let r=new O(this.element,t,e.lastChild) +return this.dom.insertBefore(this.element,e,this.nextSibling),r}{const e=this.__appendComment("") +return new O(this.element,e,e)}}__appendHTML(e){return this.dom.insertHTMLBefore(this.element,this.nextSibling,e)}appendDynamicHTML(e){let t=this.trustedContent(e) +this.didAppendBounds(t)}appendDynamicText(e){let t=this.untrustedContent(e) +return this.didAppendNode(t),t}appendDynamicFragment(e){let t=this.__appendFragment(e) +this.didAppendBounds(t)}appendDynamicNode(e){let t=this.__appendNode(e),r=new O(this.element,t,t) +this.didAppendBounds(r)}trustedContent(e){return this.__appendHTML(e)}untrustedContent(e){return this.__appendText(e)}appendComment(e){return this.didAppendNode(this.__appendComment(e))}__appendComment(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createComment(e) +return t.insertBefore(r,i,n),i}__setAttribute(e,t,r){this.dom.setAttribute(this.constructing,e,t,r)}__setProperty(e,t){this.constructing[e]=t}setStaticAttribute(e,t,r){this.__setAttribute(e,t,r)}setDynamicAttribute(e,t,r,n){let i=V(this.constructing,e,n,r) +return i.set(this,t,this.env),i}}e.NewElementBuilder=re +class ne{constructor(e){this.first=null,this.last=null,this.nesting=0,this.parent=e}parentElement(){return this.parent}firstNode(){return(0,n.expect)(this.first,"cannot call `firstNode()` while `SimpleLiveBlock` is still initializing").firstNode()}lastNode(){return(0,n.expect)(this.last,"cannot call `lastNode()` while `SimpleLiveBlock` is still initializing").lastNode()}openElement(e){this.didAppendNode(e),this.nesting++}closeElement(){this.nesting--}didAppendNode(e){0===this.nesting&&(this.first||(this.first=new Z(e)),this.last=new ee(e))}didAppendBounds(e){0===this.nesting&&(this.first||(this.first=e),this.last=e)}finalize(e){null===this.first&&e.appendComment("")}}class ie extends ne{constructor(e){super(e),(0,o.registerDestructor)(this,(()=>{this.parentElement()===this.firstNode().parentNode&&E(this)}))}}e.RemoteLiveBlock=ie +class oe extends ne{reset(){(0,o.destroy)(this) +let e=E(this) +return this.first=null,this.last=null,this.nesting=0,e}}e.UpdatableBlockImpl=oe +class se{constructor(e,t){this.parent=e,this.boundList=t,this.parent=e,this.boundList=t}parentElement(){return this.parent}firstNode(){return(0,n.expect)(this.boundList[0],"cannot call `firstNode()` while `LiveBlockList` is still initializing").firstNode()}lastNode(){let e=this.boundList +return(0,n.expect)(e[e.length-1],"cannot call `lastNode()` while `LiveBlockList` is still initializing").lastNode()}openElement(e){(0,n.assert)(!1,"Cannot openElement directly inside a block list")}closeElement(){(0,n.assert)(!1,"Cannot closeElement directly inside a block list")}didAppendNode(e){(0,n.assert)(!1,"Cannot create a new node directly inside a block list")}didAppendBounds(e){}finalize(e){(0,n.assert)(this.boundList.length>0,"boundsList cannot be empty")}}const ae=new class{constructor(){this.evaluateOpcode=new Array(i.Op.Size).fill(null)}add(e,t,r="syscall"){this.evaluateOpcode[e]={syscall:"machine"!==r,evaluate:t}}debugBefore(e,r){let n,o +return(0,t.recordStackSize)(e.fetchValue(i.$sp)),{sp:undefined,pc:e.fetchValue(i.$pc),name:o,params:n,type:r.type,isMachine:r.isMachine,size:r.size,state:void 0}}debugAfter(e,t){}evaluate(e,t,r){let i=(0,n.unwrap)(this.evaluateOpcode[r]) +i.syscall?((0,n.assert)(!t.isMachine,`BUG: Mismatch between operation.syscall (${i.syscall}) and opcode.isMachine (${t.isMachine}) for ${t.type}`),i.evaluate(e,t)):((0,n.assert)(t.isMachine,`BUG: Mismatch between operation.syscall (${i.syscall}) and opcode.isMachine (${t.isMachine}) for ${t.type}`),i.evaluate(e[h],t))}},le=Symbol("TYPE"),ue=Symbol("INNER"),ce=Symbol("OWNER"),pe=Symbol("ARGS"),de=Symbol("RESOLVED"),he=new WeakSet +function fe(e){return he.has(e)}function me(e,t){return fe(e)&&e[le]===t}class ge{constructor(e,t,r,n,i=!1){this[le]=void 0,this[ue]=void 0,this[ce]=void 0,this[pe]=void 0,this[de]=void 0,he.add(this),this[le]=e,this[ue]=t,this[ce]=r,this[pe]=n,this[de]=i}}function be(e){let t,r,n,i,o,s=e +for(;;){let{[pe]:e,[ue]:a}=s +if(null!==e){let{named:n,positional:i}=e +i.length>0&&(t=void 0===t?i:i.concat(t)),void 0===r&&(r=[]),r.unshift(n)}if(!fe(a)){n=a,i=s[ce],o=s[de] +break}s=a}return{definition:n,owner:i,resolved:o,positional:t,named:r}}function ye(e,t,r,n,i=!1){return new ge(e,t,r,n,i)}function ve(e){return"getDebugCustomRenderTree"in e}e.CurriedValue=ge,ae.add(i.Op.ChildScope,(e=>e.pushChildScope())),ae.add(i.Op.PopScope,(e=>e.popScope())),ae.add(i.Op.PushDynamicScope,(e=>e.pushDynamicScope())),ae.add(i.Op.PopDynamicScope,(e=>e.popDynamicScope())),ae.add(i.Op.Constant,((e,{op1:t})=>{e.stack.push(e[y].getValue((0,n.decodeHandle)(t)))})),ae.add(i.Op.ConstantReference,((e,{op1:t})=>{e.stack.push((0,r.createConstRef)(e[y].getValue((0,n.decodeHandle)(t)),!1))})),ae.add(i.Op.Primitive,((e,{op1:t})=>{let r=e.stack +if((0,n.isHandle)(t)){let i=e[y].getValue((0,n.decodeHandle)(t)) +r.push(i)}else r.push((0,n.decodeImmediate)(t))})),ae.add(i.Op.PrimitiveReference,(e=>{let n,i=e.stack,o=(0,t.check)(i.pop(),t.CheckPrimitive) +n=void 0===o?r.UNDEFINED_REFERENCE:null===o?r.NULL_REFERENCE:!0===o?r.TRUE_REFERENCE:!1===o?r.FALSE_REFERENCE:(0,r.createPrimitiveRef)(o),i.push(n)})),ae.add(i.Op.Dup,((e,{op1:r,op2:n})=>{let i=(0,t.check)(e.fetchValue(r),t.CheckNumber)-n +e.stack.dup(i)})),ae.add(i.Op.Pop,((e,{op1:t})=>{e.stack.pop(t)})),ae.add(i.Op.Load,((e,{op1:t})=>{e.load(t)})),ae.add(i.Op.Fetch,((e,{op1:t})=>{e.fetch(t)})),ae.add(i.Op.BindDynamicScope,((e,{op1:t})=>{let r=e[y].getArray(t) +e.bindDynamicScope(r)})),ae.add(i.Op.Enter,((e,{op1:t})=>{e.enter(t)})),ae.add(i.Op.Exit,(e=>{e.exit()})),ae.add(i.Op.PushSymbolTable,((e,{op1:t})=>{e.stack.push(e[y].getValue(t))})),ae.add(i.Op.PushBlockScope,(e=>{e.stack.push(e.scope())})),ae.add(i.Op.CompileBlock,(e=>{let t=e.stack,r=t.pop() +r?t.push(e.compile(r)):t.push(null)})),ae.add(i.Op.InvokeYield,(e=>{let{stack:r}=e,i=(0,t.check)(r.pop(),(0,t.CheckOption)(t.CheckHandle)),o=(0,t.check)(r.pop(),(0,t.CheckOption)(Ve)),s=(0,t.check)(r.pop(),(0,t.CheckOption)(t.CheckBlockSymbolTable));(0,n.assert)(null===s||s&&"object"==typeof s&&Array.isArray(s.parameters),`Expected top of stack to be ${"Option"}, was ${String(s)}`) +let a=(0,t.check)(r.pop(),(0,t.CheckInstanceof)(et)) +if(null===s)return e.pushFrame(),void e.pushScope(o??e.scope()) +let l=(0,n.expect)(o,"BUG: expected scope") +{let e=s.parameters,t=e.length +if(t>0){l=l.child() +for(let r=0;r{let i=(0,t.check)(e.stack.pop(),Fe),o=Boolean((0,r.valueForRef)(i));(0,r.isConstRef)(i)?!0===o&&e.goto(n):(!0===o&&e.goto(n),e.updateWith(new _e(i)))})),ae.add(i.Op.JumpUnless,((e,{op1:n})=>{let i=(0,t.check)(e.stack.pop(),Fe),o=Boolean((0,r.valueForRef)(i));(0,r.isConstRef)(i)?!1===o&&e.goto(n):(!1===o&&e.goto(n),e.updateWith(new _e(i)))})),ae.add(i.Op.JumpEq,((e,{op1:r,op2:n})=>{(0,t.check)(e.stack.peek(),t.CheckNumber)===n&&e.goto(r)})),ae.add(i.Op.AssertSame,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) +!1===(0,r.isConstRef)(n)&&e.updateWith(new _e(n))})),ae.add(i.Op.ToBoolean,(e=>{let{stack:n}=e,i=(0,t.check)(n.pop(),Fe) +n.push((0,r.createComputeRef)((()=>(0,s.toBool)((0,r.valueForRef)(i)))))})) +class _e{constructor(e){this.last=void 0,this.ref=e,this.last=(0,r.valueForRef)(e)}evaluate(e){let{last:t,ref:n}=this +t!==(0,r.valueForRef)(n)&&e.throw()}}class Oe{constructor(e,t){this.last=void 0,this.ref=e,this.filter=t,this.last=t((0,r.valueForRef)(e))}evaluate(e){let{last:t,ref:n,filter:i}=this +t!==i((0,r.valueForRef)(n))&&e.throw()}}class we{constructor(){this.tag=l.CONSTANT_TAG,this.lastRevision=l.INITIAL,this.target=void 0}finalize(e,t){this.target=t,this.didModify(e)}evaluate(e){let{tag:t,target:r,lastRevision:i}=this +!e.alwaysRevalidate&&(0,l.validateTag)(t,i)&&((0,l.consumeTag)(t),e.goto((0,n.expect)(r,"VM BUG: Target must be set before attempting to jump")))}didModify(e){this.tag=e,this.lastRevision=(0,l.valueForTag)(this.tag),(0,l.consumeTag)(e)}}class Ee{constructor(e){this.debugLabel=e}evaluate(){(0,l.beginTrackFrame)(this.debugLabel)}}class Ce{constructor(e){this.target=e}evaluate(){let e=(0,l.endTrackFrame)() +this.target.didModify(e)}}ae.add(i.Op.Text,((e,{op1:t})=>{e.elements().appendText(e[y].getValue(t))})),ae.add(i.Op.Comment,((e,{op1:t})=>{e.elements().appendComment(e[y].getValue(t))})),ae.add(i.Op.OpenElement,((e,{op1:t})=>{e.elements().openElement(e[y].getValue(t))})),ae.add(i.Op.OpenDynamicElement,(e=>{let n=(0,t.check)((0,r.valueForRef)((0,t.check)(e.stack.pop(),Fe)),t.CheckString) +e.elements().openElement(n)})),ae.add(i.Op.PushRemoteElement,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),s=(0,t.check)(e.stack.pop(),Fe),a=(0,t.check)((0,r.valueForRef)(n),t.CheckElement),l=(0,t.check)((0,r.valueForRef)(i),(0,t.CheckMaybe)((0,t.CheckOption)(t.CheckNode))),u=(0,r.valueForRef)(s);(0,r.isConstRef)(n)||e.updateWith(new _e(n)),void 0===l||(0,r.isConstRef)(i)||e.updateWith(new _e(i)) +let c=e.elements().pushRemoteElement(a,u,l) +if(c&&e.associateDestroyable(c),void 0!==e.env.debugRenderTree){let t=lt(void 0===l?{}:{insertBefore:i},[n]) +e.env.debugRenderTree.create(c,{type:"keyword",name:"in-element",args:t,instance:null}),(0,o.registerDestructor)(c,(()=>{e.env.debugRenderTree?.willDestroy(c)}))}})),ae.add(i.Op.PopRemoteElement,(e=>{let t=e.elements().popRemoteElement() +void 0!==e.env.debugRenderTree&&e.env.debugRenderTree.didRender(t,t)})),ae.add(i.Op.FlushElement,(e=>{let r=(0,t.check)(e.fetchValue(i.$t0),Ie),n=null +r&&(n=r.flush(e),e.loadValue(i.$t0,null)),e.elements().flushElement(n)})),ae.add(i.Op.CloseElement,(e=>{let t=e.elements().closeElement() +null!==t&&t.forEach((t=>{e.env.scheduleInstallModifier(t) +const r=t.manager.getDestroyable(t.state) +null!==r&&e.associateDestroyable(r)}))})),ae.add(i.Op.Modifier,((e,{op1:r})=>{if(!1===e.env.isInteractive)return +let o=e.getOwner(),s=(0,t.check)(e.stack.pop(),Be),a=e[y].getValue(r),{manager:u}=a,{constructing:c}=e.elements(),p=s.capture(),d=u.create(o,(0,n.expect)(c,"BUG: ElementModifier could not find the element it applies to"),a.state,p),h={manager:u,state:d,definition:a};(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(e,h,p) +let f=u.getTag(d) +return null!==f?((0,l.consumeTag)(f),e.updateWith(new ke(f,h))):void 0})),ae.add(i.Op.DynamicModifier,(e=>{if(!1===e.env.isInteractive)return +let{stack:o}=e,s=(0,t.check)(o.pop(),Fe),u=(0,t.check)(o.pop(),Be).capture(),{positional:c,named:p}=u,{constructing:d}=e.elements(),h=e.getOwner(),f=(0,r.createComputeRef)((()=>{let e,t,o=(0,r.valueForRef)(s) +if(!(0,n.isObject)(o))return +if(me(o,i.CurriedTypes.Modifier)){let{definition:r,owner:n,positional:i,named:s}=be(o) +t=r,e=n,void 0!==i&&(u.positional=i.concat(c)),void 0!==s&&(u.named=Object.assign({},...s,p))}else t=o,e=h +let l=(0,a.getInternalModifierManager)(t,!0) +if(null===l)throw new Error("BUG: modifier manager expected") +let f={resolvedName:null,manager:l,state:t},m=l.create(e,(0,n.expect)(d,"BUG: ElementModifier could not find the element it applies to"),f.state,u) +return{manager:l,state:m,definition:f}})),m=(0,r.valueForRef)(f),g=null +if(void 0!==m){(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(e,m,u),g=m.manager.getTag(m.state),null!==g&&(0,l.consumeTag)(g)}return!(0,r.isConstRef)(s)||g?e.updateWith(new Te(g,m,f)):void 0})) +class ke{constructor(e,t){this.lastUpdated=void 0,this.tag=e,this.modifier=t,this.lastUpdated=(0,l.valueForTag)(e)}evaluate(e){let{modifier:t,tag:r,lastUpdated:n}=this;(0,l.consumeTag)(r),(0,l.validateTag)(r,n)||(e.env.scheduleUpdateModifier(t),this.lastUpdated=(0,l.valueForTag)(r))}}class Te{constructor(e,t,r){this.lastUpdated=void 0,this.tag=e,this.instance=t,this.instanceRef=r,this.lastUpdated=(0,l.valueForTag)(e??l.CURRENT_TAG)}evaluate(e){let{tag:t,lastUpdated:n,instance:i,instanceRef:s}=this,a=(0,r.valueForRef)(s) +if(a!==i){if(void 0!==i){let e=i.manager.getDestroyable(i.state) +null!==e&&(0,o.destroy)(e)}if(void 0!==a){let{manager:r,state:n}=a,i=r.getDestroyable(n) +null!==i&&(0,o.associateDestroyableChild)(this,i),t=r.getTag(n),null!==t&&(this.lastUpdated=(0,l.valueForTag)(t)),this.tag=t,e.env.scheduleInstallModifier(a)}this.instance=a}else null===t||(0,l.validateTag)(t,n)||(e.env.scheduleUpdateModifier(i),this.lastUpdated=(0,l.valueForTag)(t)) +null!==t&&(0,l.consumeTag)(t)}}ae.add(i.Op.StaticAttr,((e,{op1:t,op2:r,op3:n})=>{let i=e[y].getValue(t),o=e[y].getValue(r),s=n?e[y].getValue(n):null +e.elements().setStaticAttribute(i,o,s)})),ae.add(i.Op.DynamicAttr,((e,{op1:n,op2:i,op3:o})=>{let s=e[y].getValue(n),a=e[y].getValue(i),l=(0,t.check)(e.stack.pop(),Fe),u=(0,r.valueForRef)(l),c=o?e[y].getValue(o):null,p=e.elements().setDynamicAttribute(s,u,a,c);(0,r.isConstRef)(l)||e.updateWith(new Re(l,p,e.env))})) +class Re{constructor(e,t,n){this.updateRef=void 0 +let i=!1 +this.updateRef=(0,r.createComputeRef)((()=>{let o=(0,r.valueForRef)(e) +!0===i?t.update(o,n):i=!0})),(0,r.valueForRef)(this.updateRef)}evaluate(){(0,r.valueForRef)(this.updateRef)}}ae.add(i.Op.PushComponentDefinition,((e,{op1:t})=>{let r=e[y].getValue(t);(0,n.assert)(!!r,`Missing component for ${t}`) +let{manager:i,capabilities:o}=r,s={definition:r,manager:i,capabilities:o,state:null,handle:null,table:null,lookup:null} +e.stack.push(s)})),ae.add(i.Op.ResolveDynamicComponent,((e,{op1:o})=>{let s,a=e.stack,l=(0,t.check)((0,r.valueForRef)((0,t.check)(a.pop(),Fe)),(0,t.CheckOr)(t.CheckString,We)),u=e[y],c=e.getOwner() +u.getValue(o) +if(e.loadValue(i.$t1,null),"string"==typeof l){0 +let t=function(e,t,r,i){let o=e.lookupComponent(r,(0,n.expect)(i,"BUG: expected owner when looking up component")) +return t.resolvedComponent(o,r)}(e.runtime.resolver,u,l,c) +s=(0,n.expect)(t,`Could not find a component named "${l}"`)}else s=fe(l)?l:u.component(l,c) +a.push(s)})),ae.add(i.Op.ResolveCurriedComponent,(e=>{let n,i=e.stack,o=(0,t.check)(i.pop(),Fe),s=(0,r.valueForRef)(o),a=e[y] +n=fe(s)?s:a.component(s,e.getOwner(),!0),i.push(n)})),ae.add(i.Op.PushDynamicComponentInstance,(e=>{let t,r,{stack:n}=e,i=n.pop() +fe(i)?r=t=null:(r=i.manager,t=i.capabilities),n.push({definition:i,capabilities:t,manager:r,state:null,handle:null,table:null})})),ae.add(i.Op.PushArgs,((e,{op1:t,op2:r,op3:i})=>{let o=e.stack,s=e[y].getArray(t),a=i>>4,l=8&i,u=7&i?e[y].getArray(r):n.EMPTY_STRING_ARRAY +e[v].setup(o,s,u,a,!!l),o.push(e[v])})),ae.add(i.Op.PushEmptyArgs,(e=>{let{stack:t}=e +t.push(e[v].empty(t))})),ae.add(i.Op.CaptureArgs,(e=>{let r=e.stack,n=(0,t.check)(r.pop(),(0,t.CheckInstanceof)(et)).capture() +r.push(n)})),ae.add(i.Op.PrepareArgs,((e,{op1:r})=>{let o=e.stack,s=e.fetchValue(r),l=(0,t.check)(o.pop(),(0,t.CheckInstanceof)(et)),{definition:u}=s +if(me(u,i.CurriedTypes.Component)){(0,n.assert)(!u.manager,"If the component definition was curried, we don't yet have a manager") +let t=e[y],{definition:r,owner:o,resolved:a,positional:c,named:p}=be(u) +if(!0===a)u=r +else if("string"==typeof r){let i=e.runtime.resolver.lookupComponent(r,o) +u=t.resolvedComponent((0,n.expect)(i,"BUG: expected resolved component"),r)}else u=t.component(r,o) +void 0!==p&&l.named.merge((0,n.assign)({},...p)),void 0!==c&&(l.realloc(c.length),l.positional.prepend(c)) +let{manager:d}=u;(0,n.assert)(null===s.manager,"component instance manager should not be populated yet"),(0,n.assert)(null===s.capabilities,"component instance manager should not be populated yet"),s.definition=u,s.manager=d,s.capabilities=u.capabilities,e.loadValue(i.$t1,o)}let{manager:c,state:p}=u,d=s.capabilities +if(!(0,a.managerHasCapability)(c,d,i.InternalComponentCapabilities.prepareArgs))return void o.push(l) +let h=l.blocks.values,f=l.blocks.names,m=c.prepareArgs(p,l) +if(m){l.clear() +for(let n=0;n{let o=(0,t.check)(e.fetchValue(n),Ge),{definition:s,manager:l,capabilities:u}=o +if(!(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.createInstance))return +let c=null;(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.dynamicScope)&&(c=e.dynamicScope()) +let p=1&r,d=null;(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.createArgs)&&(d=(0,t.check)(e.stack.peek(),Be)) +let h=null;(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.createCaller)&&(h=e.getSelf()) +let f=l.create(e.getOwner(),s.state,d,e.env,c,h,!!p) +o.state=f,(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.updateHook)&&e.updateWith(new Me(f,l,c))})),ae.add(i.Op.RegisterComponentDestructor,((e,{op1:r})=>{let{manager:n,state:i,capabilities:o}=(0,t.check)(e.fetchValue(r),Ge),s=n.getDestroyable(i) +s&&e.associateDestroyable(s)})),ae.add(i.Op.BeginComponentTransaction,((e,{op1:t})=>{let r +e.beginCacheGroup(r),e.elements().pushSimpleBlock()})),ae.add(i.Op.PutComponentOperations,(e=>{e.loadValue(i.$t0,new Se)})),ae.add(i.Op.ComponentAttr,((e,{op1:r,op2:n,op3:o})=>{let s=e[y].getValue(r),a=e[y].getValue(n),l=(0,t.check)(e.stack.pop(),Fe),u=o?e[y].getValue(o):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)).setAttribute(s,l,a,u)})),ae.add(i.Op.StaticComponentAttr,((e,{op1:r,op2:n,op3:o})=>{let s=e[y].getValue(r),a=e[y].getValue(n),l=o?e[y].getValue(o):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)).setStaticAttribute(s,a,l)})) +class Se{constructor(){this.attributes=(0,n.dict)(),this.classes=[],this.modifiers=[]}setAttribute(e,t,r,n){let i={value:t,namespace:n,trusting:r} +"class"===e&&this.classes.push(t),this.attributes[e]=i}setStaticAttribute(e,t,r){let n={value:t,namespace:r} +"class"===e&&this.classes.push(t),this.attributes[e]=n}addModifier(e,t,r){if(this.modifiers.push(t),void 0!==e.env.debugRenderTree){const{manager:i,definition:s,state:a}=t +if(null===a||"object"!=typeof a&&"function"!=typeof a)return +let{element:l,constructing:u}=e.elements(),c=i.getDebugName(s.state),p=i.getDebugInstance(a);(0,n.assert)(u,"Expected a constructing element in addModifier") +let d=new O(l,u,u) +e.env.debugRenderTree.create(a,{type:"modifier",name:c,args:r,instance:p}),e.env.debugRenderTree.didRender(a,d),e.associateDestroyable(a),e.updateWith(new De(a)),e.updateWith(new je(a,d)),(0,o.registerDestructor)(a,(()=>{e.env.debugRenderTree?.willDestroy(a)}))}}flush(e){let t,r=this.attributes +for(let i in this.attributes){if("type"===i){t=r[i] +continue}let o=(0,n.unwrap)(this.attributes[i]) +"class"===i?Ae(e,"class",Pe(this.classes),o.namespace,o.trusting):Ae(e,i,o.value,o.namespace,o.trusting)}return void 0!==t&&Ae(e,"type",t.value,t.namespace,t.trusting),this.modifiers}}function Pe(e){return 0===e.length?"":1===e.length?(0,n.unwrap)(e[0]):function(e){return e.every((e=>"string"==typeof e))}(e)?e.join(" "):(t=e,(0,r.createComputeRef)((()=>{let e=[] +for(const n of t){let t=C("string"==typeof n?n:(0,r.valueForRef)(n)) +t&&e.push(t)}return 0===e.length?null:e.join(" ")}))) +var t}function Ae(e,t,n,i,o=!1){if("string"==typeof n)e.elements().setStaticAttribute(t,n,i) +else{let s=e.elements().setDynamicAttribute(t,(0,r.valueForRef)(n),o,i);(0,r.isConstRef)(n)||e.updateWith(new Re(n,s,e.env))}}function xe(e,t,r,n,i){let o=r.table.symbols.indexOf(e),s=n.get(t);-1!==o&&i.scope().bindBlock(o+1,s),r.lookup&&(r.lookup[e]=s)}ae.add(i.Op.DidCreateElement,((e,{op1:r})=>{let{definition:o,state:s}=(0,t.check)(e.fetchValue(r),Ge),{manager:a}=o,l=(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)) +a.didCreateElement(s,(0,n.expect)(e.elements().constructing,"Expected a constructing element in DidCreateOpcode"),l)})),ae.add(i.Op.GetComponentSelf,((e,{op1:s,op2:l})=>{let u=(0,t.check)(e.fetchValue(s),Ge),{definition:c,state:p}=u,{manager:d}=c,h=d.getSelf(p) +if(void 0!==e.env.debugRenderTree){let u,c,d=(0,t.check)(e.fetchValue(s),Ge),{definition:f,manager:m}=d +if(e.stack.peek()===e[v])u=e[v].capture() +else{let t=e[y].getArray(l) +e[v].setup(e.stack,t,[],0,!0),u=e[v].capture()}let g=f.compilable +if(null===g?((0,n.assert)((0,a.managerHasCapability)(m,d.capabilities,i.InternalComponentCapabilities.dynamicLayout),"BUG: No template was found for this component, and the component did not have the dynamic layout capability"),g=m.getDynamicLayout(p,e.runtime.resolver),c=null!==g?g.moduleName:"__default__.hbs"):c=g.moduleName,e.associateDestroyable(d),ve(m)){m.getDebugCustomRenderTree(d.definition.state,d.state,u,c).forEach((t=>{let{bucket:r}=t +e.env.debugRenderTree.create(r,t),(0,o.registerDestructor)(d,(()=>{e.env.debugRenderTree?.willDestroy(r)})),e.updateWith(new De(r))}))}else{let t=f.resolvedName??m.getDebugName(f.state) +e.env.debugRenderTree.create(d,{type:"component",name:t,args:u,template:c,instance:(0,r.valueForRef)(h)}),(0,o.registerDestructor)(d,(()=>{e.env.debugRenderTree?.willDestroy(d)})),e.updateWith(new De(d))}}e.stack.push(h)})),ae.add(i.Op.GetComponentTagName,((e,{op1:r})=>{let{definition:n,state:i}=(0,t.check)(e.fetchValue(r),Ge),{manager:o}=n,s=o.getTagName(i) +e.stack.push(s)})),ae.add(i.Op.GetComponentLayout,((e,{op1:r})=>{let o=(0,t.check)(e.fetchValue(r),Ge),{manager:s,definition:l}=o,{stack:u}=e,{compilable:c}=l +if(null===c){let{capabilities:t}=o;(0,n.assert)((0,a.managerHasCapability)(s,t,i.InternalComponentCapabilities.dynamicLayout),"BUG: No template was found for this component, and the component did not have the dynamic layout capability"),c=s.getDynamicLayout(o.state,e.runtime.resolver),null===c&&(c=(0,a.managerHasCapability)(s,t,i.InternalComponentCapabilities.wrapped)?(0,n.unwrapTemplate)(e[y].defaultTemplate).asWrappedLayout():(0,n.unwrapTemplate)(e[y].defaultTemplate).asLayout())}let p=c.compile(e.context) +u.push(c.symbolTable),u.push(p)})),ae.add(i.Op.Main,((e,{op1:r})=>{let n=(0,t.check)(e.stack.pop(),Ze),i=(0,t.check)(e.stack.pop(),Ye),{manager:o,capabilities:s}=n,a={definition:n,manager:o,capabilities:s,state:null,handle:i.handle,table:i.symbolTable,lookup:null} +e.loadValue(r,a)})),ae.add(i.Op.PopulateLayout,((e,{op1:r})=>{let{stack:n}=e,i=(0,t.check)(n.pop(),t.CheckHandle),o=(0,t.check)(n.pop(),t.CheckProgramSymbolTable),s=(0,t.check)(e.fetchValue(r),Ge) +s.handle=i,s.table=o})),ae.add(i.Op.VirtualRootScope,((e,{op1:r})=>{let n,{table:o,manager:s,capabilities:l,state:u}=(0,t.check)(e.fetchValue(r),Qe);(0,a.managerHasCapability)(s,l,i.InternalComponentCapabilities.hasSubOwner)?(n=s.getOwner(u),e.loadValue(i.$t1,null)):(n=e.fetchValue(i.$t1),null===n?n=e.getOwner():e.loadValue(i.$t1,null)),e.pushRootScope(o.symbols.length+1,n)})),ae.add(i.Op.SetupForEval,((e,{op1:r})=>{let i=(0,t.check)(e.fetchValue(r),Qe) +if(i.table.hasEval){let t=i.lookup=(0,n.dict)() +e.scope().bindEvalScope(t)}})),ae.add(i.Op.SetNamedVariables,((e,{op1:r})=>{let i=(0,t.check)(e.fetchValue(r),Qe),o=e.scope(),s=(0,t.check)(e.stack.peek(),Be),a=s.named.atNames +for(let t=a.length-1;t>=0;t--){let e=(0,n.unwrap)(a[t]),r=i.table.symbols.indexOf(e),l=s.named.get(e,!0);-1!==r&&o.bindSymbol(r+1,l),i.lookup&&(i.lookup[e]=l)}})),ae.add(i.Op.SetBlocks,((e,{op1:r})=>{let i=(0,t.check)(e.fetchValue(r),Qe),{blocks:o}=(0,t.check)(e.stack.peek(),Be) +for(const[t]of(0,n.enumerate)(o.names))xe((0,n.unwrap)(o.symbolNames[t]),(0,n.unwrap)(o.names[t]),i,o,e)})),ae.add(i.Op.InvokeComponentLayout,((e,{op1:r})=>{let n=(0,t.check)(e.fetchValue(r),Qe) +e.call(n.handle)})),ae.add(i.Op.DidRenderLayout,((e,{op1:r})=>{let n=(0,t.check)(e.fetchValue(r),Ge),{manager:o,state:s,capabilities:l}=n,u=e.elements().popBlock() +if(void 0!==e.env.debugRenderTree)if(ve(o)){o.getDebugCustomRenderTree(n.definition.state,s,bt).reverse().forEach((t=>{let{bucket:r}=t +e.env.debugRenderTree.didRender(r,u),e.updateWith(new je(r,u))}))}else e.env.debugRenderTree.didRender(n,u),e.updateWith(new je(n,u)) +if((0,a.managerHasCapability)(o,l,i.InternalComponentCapabilities.createInstance)){(0,t.check)(o,(0,t.CheckInterface)({didRenderLayout:t.CheckFunction})).didRenderLayout(s,u),e.env.didCreate(n),e.updateWith(new Ne(n,u))}})),ae.add(i.Op.CommitComponentTransaction,(e=>{e.commitCacheGroup()})) +class Me{constructor(e,t,r){this.component=e,this.manager=t,this.dynamicScope=r}evaluate(e){let{component:t,manager:r,dynamicScope:n}=this +r.update(t,n)}}class Ne{constructor(e,t){this.component=e,this.bounds=t}evaluate(e){let{component:t,bounds:r}=this,{manager:n,state:i}=t +n.didUpdateLayout(i,r),e.env.didUpdate(t)}}class De{constructor(e){this.bucket=e}evaluate(e){e.env.debugRenderTree?.update(this.bucket)}}class je{constructor(e,t){this.bucket=e,this.bounds=t}evaluate(e){e.env.debugRenderTree?.didRender(this.bucket,this.bounds)}}(0,t.CheckInterface)({[l.COMPUTE]:t.CheckFunction}) +const Ie=(0,t.wrap)((()=>(0,t.CheckOption)((0,t.CheckInstanceof)(Se)))) +const Fe=new class{validate(e){return"object"==typeof e&&null!==e&&r.REFERENCE in e}expected(){return"Reference"}},Le=(0,t.CheckInterface)({next:t.CheckFunction,isEmpty:t.CheckFunction}),Be=(0,t.wrap)((()=>(0,t.CheckInstanceof)(et))),Ue=t.CheckFunction +const He=new class{validate(e){return e===r.UNDEFINED_REFERENCE}expected(){return"undefined"}},$e=(0,t.CheckInterface)({positional:(0,t.wrap)((()=>(0,t.CheckArray)(Fe))),named:(0,t.wrap)((()=>(0,t.CheckDict)(Fe)))}),Ve=(0,t.wrap)((()=>(0,t.CheckInstanceof)(d))),ze=(0,t.CheckInterface)({getCapabilities:t.CheckFunction}),qe=t.CheckNumber,Ge=(0,t.CheckInterface)({definition:t.CheckUnknown,state:t.CheckUnknown,handle:t.CheckUnknown,table:t.CheckUnknown}),We=(0,t.CheckOr)(t.CheckObject,t.CheckFunction),Ye=(0,t.CheckInterface)({handle:t.CheckNumber,symbolTable:t.CheckProgramSymbolTable});(0,t.CheckInterface)({setAttribute:t.CheckFunction}) +const Qe=(0,t.CheckInterface)({definition:t.CheckUnknown,state:t.CheckUnknown,handle:t.CheckHandle,table:t.CheckProgramSymbolTable}),Ke=(0,t.CheckInterface)({compile:t.CheckFunction,symbolTable:t.CheckBlockSymbolTable}),Je=(0,t.CheckInterface)({compile:t.CheckFunction,symbolTable:t.CheckProgramSymbolTable}),Xe=(0,t.CheckInterface)({0:Ke,1:Ve,2:t.CheckBlockSymbolTable}),Ze=(0,t.CheckInterface)({resolvedName:(0,t.CheckOption)(t.CheckString),handle:t.CheckNumber,state:(0,t.CheckOr)(t.CheckObject,t.CheckFunction),manager:ze,capabilities:qe,compilable:Je}) +class et{constructor(){this.stack=null,this.positional=new rt,this.named=new nt,this.blocks=new st}empty(e){let t=e[g][i.$sp]+1 +return this.named.empty(e,t),this.positional.empty(e,t),this.blocks.empty(e,t),this}setup(e,t,r,n,o){this.stack=e +let s=this.named,a=t.length,l=e[g][i.$sp]-a+1 +s.setup(e,l,a,t,o) +let u=l-n +this.positional.setup(e,u,n) +let c=this.blocks,p=r.length,d=u-3*p +c.setup(e,d,p,r)}get base(){return this.blocks.base}get length(){return this.positional.length+this.named.length+3*this.blocks.length}at(e){return this.positional.at(e)}realloc(e){let{stack:t}=this +if(e>0&&null!==t){let{positional:r,named:n}=this,o=r.base+e +for(let e=r.length+n.length-1;e>=0;e--)t.copy(e+r.base,e+o) +r.base+=e,n.base+=e,t[g][i.$sp]+=e}}capture(){let e=0===this.positional.length?gt:this.positional.capture() +return{named:0===this.named.length?mt:this.named.capture(),positional:e}}clear(){let{stack:e,length:t}=this +t>0&&null!==e&&e.pop(t)}}const tt=(0,n.emptyArray)() +class rt{constructor(){this.base=0,this.length=0,this.stack=null,this._references=null}empty(e,t){this.stack=e,this.base=t,this.length=0,this._references=tt}setup(e,t,r){this.stack=e,this.base=t,this.length=r,this._references=0===r?tt:null}at(e){let{base:n,length:i,stack:o}=this +return e<0||e>=i?r.UNDEFINED_REFERENCE:(0,t.check)(o.get(e,n),Fe)}capture(){return this.references}prepend(e){let t=e.length +if(t>0){let{base:r,length:n,stack:i}=this +this.base=r-=t,this.length=n+t +for(let o=0;o0){let{names:r,length:n,stack:i}=this,o=r.slice() +for(const s of t){-1===o.indexOf(s)&&(n=o.push(s),i.push(e[s]))}this.length=n,this._references=null,this._names=o,this._atNames=null}}get references(){let e=this._references +if(!e){let{base:t,length:r,stack:n}=this +e=this._references=n.slice(t,t+r)}return e}toSyntheticName(e){return e.slice(1)}toAtName(e){return`@${e}`}}function it(e){return`&${e}`}const ot=(0,n.emptyArray)() +class st{constructor(){this.internalValues=null,this._symbolNames=null,this.internalTag=null,this.names=n.EMPTY_STRING_ARRAY,this.length=0,this.base=0}empty(e,t){this.stack=e,this.names=n.EMPTY_STRING_ARRAY,this.base=t,this.length=0,this._symbolNames=null,this.internalTag=l.CONSTANT_TAG,this.internalValues=ot}setup(e,t,r,n){this.stack=e,this.names=n,this.base=t,this.length=r,this._symbolNames=null,0===r?(this.internalTag=l.CONSTANT_TAG,this.internalValues=ot):(this.internalTag=null,this.internalValues=null)}get values(){let e=this.internalValues +if(!e){let{base:t,length:r,stack:n}=this +e=this.internalValues=n.slice(t,t+3*r)}return e}has(e){return-1!==this.names.indexOf(e)}get(e){let r=this.names.indexOf(e) +if(-1===r)return null +let{base:n,stack:i}=this,o=(0,t.check)(i.get(3*r,n),(0,t.CheckOption)(t.CheckBlockSymbolTable)),s=(0,t.check)(i.get(3*r+1,n),(0,t.CheckOption)(Ve)),a=(0,t.check)(i.get(3*r+2,n),(0,t.CheckOption)((0,t.CheckOr)(t.CheckHandle,Ke))) +return null===a?null:[a,s,o]}capture(){return new at(this.names,this.values)}get symbolNames(){let e=this._symbolNames +return null===e&&(e=this._symbolNames=this.names.map(it)),e}}class at{constructor(e,t){this.length=void 0,this.names=e,this.values=t,this.length=e.length}has(e){return-1!==this.names.indexOf(e)}get(e){let t=this.names.indexOf(e) +return-1===t?null:[this.values[3*t+2],this.values[3*t+1],this.values[3*t]]}}function lt(e,t){return{named:e,positional:t}}function ut(e){let t=(0,n.dict)() +for(const[n,i]of Object.entries(e))t[n]=(0,r.valueForRef)(i) +return t}function ct(e){return e.map(r.valueForRef)}const pt=Symbol("ARGUMENT_ERROR") +function dt(e){return null!==e&&"object"==typeof e&&e[pt]}function ht(e){return{[pt]:!0,error:e}}function ft(e){return{named:function(e){let t=(0,n.dict)() +for(const[n,o]of Object.entries(e))try{t[n]=(0,r.valueForRef)(o)}catch(i){t[n]=ht(i)}return t}(e.named),positional:function(e){return e.map((e=>{try{return(0,r.valueForRef)(e)}catch(t){return ht(t)}}))}(e.positional)}}const mt=e.EMPTY_NAMED=Object.freeze(Object.create(null)),gt=e.EMPTY_POSITIONAL=tt,bt=e.EMPTY_ARGS=lt(mt,gt) +function yt(e){return"string"==typeof e?e:"function"!=typeof e.toString?"":String(e)}function vt(e,t){let r,i=(0,a.getInternalHelperManager)(e,!0) +return null===i?r=null:(r="function"==typeof i?i:i.getHelper(e),(0,n.assert)(i,"BUG: expected manager or helper")),r}function _t(e){return(0,n.assert)(Array.isArray(e)||e===r.UNDEFINED_REFERENCE,"a reference other than UNDEFINED_REFERENCE is illegal here"),e===r.UNDEFINED_REFERENCE}ae.add(i.Op.Curry,((e,{op1:o,op2:s})=>{let a=e.stack,l=(0,t.check)(a.pop(),Fe),u=(0,t.check)(a.pop(),$e),c=e.getOwner() +e.runtime.resolver +e.loadValue(i.$v0,function(e,t,o,s,a,l){let u,c +return(0,r.createComputeRef)((()=>{let a=(0,r.valueForRef)(t) +return a===u||(c=me(a,e)?s?ye(e,a,o,s):s:e===i.CurriedTypes.Component&&"string"==typeof a&&a||(0,n.isObject)(a)?ye(e,a,o,s):null,u=a),c}))}(o,l,c,u))})),ae.add(i.Op.DynamicHelper,(e=>{let s,a=e.stack,l=(0,t.check)(a.pop(),Fe),u=(0,t.check)(a.pop(),Be).capture(),c=e.getOwner(),p=(0,r.createComputeRef)((()=>{void 0!==s&&(0,o.destroy)(s) +let e=(0,r.valueForRef)(l) +if(me(e,i.CurriedTypes.Helper)){let{definition:t,owner:r,positional:i,named:a}=be(e),c=vt(t,l) +void 0!==a&&(u.named=(0,n.assign)({},...a,u.named)),void 0!==i&&(u.positional=i.concat(u.positional)),s=c(u,r),(0,o.associateDestroyableChild)(p,s)}else if((0,n.isObject)(e)){let t=vt(e,l) +s=t(u,c),(0,o._hasDestroyableChildren)(s)&&(0,o.associateDestroyableChild)(p,s)}else s=r.UNDEFINED_REFERENCE})),d=(0,r.createComputeRef)((()=>((0,r.valueForRef)(p),(0,r.valueForRef)(s)))) +e.associateDestroyable(p),e.loadValue(i.$v0,d)})),ae.add(i.Op.Helper,((e,{op1:r})=>{let n=e.stack,s=(0,t.check)(e[y].getValue(r),Ue)((0,t.check)(n.pop(),Be).capture(),e.getOwner(),e.dynamicScope());(0,o._hasDestroyableChildren)(s)&&e.associateDestroyable(s),e.loadValue(i.$v0,s)})),ae.add(i.Op.GetVariable,((e,{op1:t})=>{let r=e.referenceForSymbol(t) +e.stack.push(r)})),ae.add(i.Op.SetVariable,((e,{op1:r})=>{let n=(0,t.check)(e.stack.pop(),Fe) +e.scope().bindSymbol(r,n)})),ae.add(i.Op.SetBlock,((e,{op1:r})=>{let n=(0,t.check)(e.stack.pop(),Ke),i=(0,t.check)(e.stack.pop(),Ve),o=(0,t.check)(e.stack.pop(),t.CheckBlockSymbolTable) +e.scope().bindBlock(r,[n,i,o])})),ae.add(i.Op.ResolveMaybeLocal,((e,{op1:t})=>{let n=e[y].getValue(t),i=e.scope().getPartialMap()[n] +void 0===i&&(i=(0,r.childRefFor)(e.getSelf(),n)),e.stack.push(i)})),ae.add(i.Op.RootScope,((e,{op1:t})=>{e.pushRootScope(t,e.getOwner())})),ae.add(i.Op.GetProperty,((e,{op1:n})=>{let i=e[y].getValue(n),o=(0,t.check)(e.stack.pop(),Fe) +e.stack.push((0,r.childRefFor)(o,i))})),ae.add(i.Op.GetBlock,((e,{op1:t})=>{let{stack:r}=e,n=e.scope().getBlock(t) +r.push(n)})),ae.add(i.Op.SpreadBlock,(e=>{let{stack:r}=e,n=(0,t.check)(r.pop(),(0,t.CheckOption)((0,t.CheckOr)(Xe,He))) +if(n&&!_t(n)){let[e,t,i]=n +r.push(i),r.push(t),r.push(e)}else r.push(null),r.push(null),r.push(null)})),ae.add(i.Op.HasBlock,(e=>{let{stack:n}=e,i=(0,t.check)(n.pop(),(0,t.CheckOption)((0,t.CheckOr)(Xe,He))) +i&&!_t(i)?n.push(r.TRUE_REFERENCE):n.push(r.FALSE_REFERENCE)})),ae.add(i.Op.HasBlockParams,(e=>{let n=e.stack.pop(),i=e.stack.pop();(0,t.check)(n,(0,t.CheckMaybe)((0,t.CheckOr)(t.CheckHandle,Ke))),(0,t.check)(i,(0,t.CheckMaybe)(Ve)) +let o=(0,t.check)(e.stack.pop(),(0,t.CheckMaybe)(t.CheckBlockSymbolTable)),s=o&&o.parameters.length +e.stack.push(s?r.TRUE_REFERENCE:r.FALSE_REFERENCE)})),ae.add(i.Op.Concat,((e,{op1:n})=>{let i=new Array(n) +for(let r=n;r>0;r--){i[r-1]=(0,t.check)(e.stack.pop(),Fe)}var o +e.stack.push((o=i,(0,r.createComputeRef)((()=>{const e=[] +for(const t of o){const n=(0,r.valueForRef)(t) +null!=n&&e.push(yt(n))}return e.length>0?e.join(""):null}))))})),ae.add(i.Op.IfInline,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),o=(0,t.check)(e.stack.pop(),Fe) +e.stack.push((0,r.createComputeRef)((()=>!0===(0,s.toBool)((0,r.valueForRef)(n))?(0,r.valueForRef)(i):(0,r.valueForRef)(o))))})),ae.add(i.Op.Not,(e=>{let n=(0,t.check)(e.stack.pop(),Fe) +e.stack.push((0,r.createComputeRef)((()=>!(0,s.toBool)((0,r.valueForRef)(n)))))})),ae.add(i.Op.GetDynamicVar,(e=>{let n=e.dynamicScope(),i=e.stack,o=(0,t.check)(i.pop(),Fe) +i.push((0,r.createComputeRef)((()=>{let e=String((0,r.valueForRef)(o)) +return(0,r.valueForRef)(n.get(e))})))})),ae.add(i.Op.Log,(e=>{let{positional:n}=(0,t.check)(e.stack.pop(),Be).capture() +e.loadValue(i.$v0,(0,r.createComputeRef)((()=>{console.log(...ct(n))})))})) +class Ot{constructor(e,t,r){this.node=e,this.reference=t,this.lastValue=r}evaluate(){let e,t=(0,r.valueForRef)(this.reference),{lastValue:n}=this +if(t!==n&&(e=k(t)?"":S(t)?t:String(t),e!==n)){this.node.nodeValue=this.lastValue=e}}}function wt(e){return function(e){return S(e)||k(e)||"boolean"==typeof e||"number"==typeof e}(e)?i.ContentType.String:me(e,i.CurriedType.Component)||(0,a.hasInternalComponentManager)(e)?i.ContentType.Component:me(e,i.CurriedType.Helper)||(0,a.hasInternalHelperManager)(e)?i.ContentType.Helper:T(e)?i.ContentType.SafeString:function(e){return R(e)&&11===e.nodeType}(e)?i.ContentType.Fragment:R(e)?i.ContentType.Node:i.ContentType.String}function Et(e){return(0,n.isObject)(e)?me(e,i.CurriedType.Component)||(0,a.hasInternalComponentManager)(e)?i.ContentType.Component:i.ContentType.Helper:i.ContentType.String}function Ct(e,t){console.info("Use `context`, and `get()` to debug this template."),t("this")}ae.add(i.Op.ContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) +e.stack.push(wt((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,wt))})),ae.add(i.Op.DynamicContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) +e.stack.push(Et((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,Et))})),ae.add(i.Op.AppendHTML,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=k(i)?"":String(i) +e.elements().appendDynamicHTML(o)})),ae.add(i.Op.AppendSafeHTML,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckSafeString).toHTML(),o=k(i)?"":(0,t.check)(i,t.CheckString) +e.elements().appendDynamicHTML(o)})),ae.add(i.Op.AppendText,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=k(i)?"":String(i),s=e.elements().appendDynamicText(o);(0,r.isConstRef)(n)||e.updateWith(new Ot(s,n,o))})),ae.add(i.Op.AppendDocumentFragment,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckDocumentFragment) +e.elements().appendDynamicFragment(i)})),ae.add(i.Op.AppendNode,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckNode) +e.elements().appendDynamicNode(i)})) +let kt=Ct +class Tt{constructor(e,t,r){this.locals=(0,n.dict)(),this.scope=e +for(const i of r){let r=(0,n.unwrap)(t[i-1]),o=e.getSymbol(i) +this.locals[r]=o}}get(e){let t,{scope:i,locals:o}=this,s=e.split("."),[a,...l]=e.split("."),u=i.getEvalScope() +return"this"===a?t=i.getSelf():o[a]?t=(0,n.unwrap)(o[a]):0===a.indexOf("@")&&u[a]?t=u[a]:(t=this.scope.getSelf(),l=s),l.reduce(((e,t)=>(0,r.childRefFor)(e,t)),t)}}ae.add(i.Op.Debugger,((e,{op1:t,op2:i})=>{let o=e[y].getArray(t),s=e[y].getArray((0,n.decodeHandle)(i)),a=new Tt(e.scope(),o,s) +kt((0,r.valueForRef)(e.getSelf()),(e=>(0,r.valueForRef)(a.get(e))))})),ae.add(i.Op.EnterList,((e,{op1:n,op2:i})=>{let o=e.stack,s=(0,t.check)(o.pop(),Fe),a=(0,t.check)(o.pop(),Fe),l=(0,r.valueForRef)(a),u=null===l?"@identity":String(l),c=(0,r.createIteratorRef)(s,u),p=(0,r.valueForRef)(c) +e.updateWith(new Oe(c,(e=>e.isEmpty()))),!0===p.isEmpty()?e.goto(i+1):(e.enterList(c,n),e.stack.push(p))})),ae.add(i.Op.ExitList,(e=>{e.exitList()})),ae.add(i.Op.Iterate,((e,{op1:r})=>{let n=e.stack,i=(0,t.check)(n.peek(),Le).next() +null!==i?e.registerItem(e.enterItem(i)):e.goto(r)})) +const Rt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +class St{getCapabilities(){return Rt}getDebugName({name:e}){return e}getSelf(){return r.NULL_REFERENCE}getDestroyable(){return null}}e.TemplateOnlyComponentManager=St +const Pt=e.TEMPLATE_ONLY_COMPONENT_MANAGER=new St +class At{constructor(e="@glimmer/component/template-only",t="(unknown template-only component)"){this.moduleName=e,this.name=t}toString(){return this.moduleName}}e.TemplateOnlyComponent=At,(0,a.setInternalComponentManager)(Pt,At.prototype) +const xt={foreignObject:1,desc:1,title:1},Mt=Object.create(null) +class Nt{constructor(e){this.document=e,this.setupUselessElement()}setupUselessElement(){this.uselessElement=this.document.createElement("div")}createElement(e,t){let r,i +if(t?(r=t.namespaceURI===n.NS_SVG||"svg"===e,i=!!xt[t.tagName]):(r="svg"===e,i=!1),r&&!i){if(Mt[e])throw new Error(`Cannot create a ${e} inside an SVG context`) +return this.document.createElementNS(n.NS_SVG,e)}return this.document.createElement(e)}insertBefore(e,t,r){e.insertBefore(t,r)}insertHTMLBefore(e,t,r){if(""===r){const r=this.createComment("") +return e.insertBefore(r,t),new O(e,r,r)}const i=t?t.previousSibling:e.lastChild +let o +if(null===t)e.insertAdjacentHTML(n.INSERT_BEFORE_END,r),o=(0,n.expect)(e.lastChild,"bug in insertAdjacentHTML?") +else if(t instanceof HTMLElement)t.insertAdjacentHTML("beforebegin",r),o=(0,n.expect)(t.previousSibling,"bug in insertAdjacentHTML?") +else{const{uselessElement:i}=this +e.insertBefore(i,t),i.insertAdjacentHTML(n.INSERT_BEFORE_BEGIN,r),o=(0,n.expect)(i.previousSibling,"bug in insertAdjacentHTML?"),e.removeChild(i)}const s=(0,n.expect)(i?i.nextSibling:e.firstChild,"bug in insertAdjacentHTML?") +return new O(e,s,o)}createTextNode(e){return this.document.createTextNode(e)}createComment(e){return this.document.createComment(e)}}function Dt(e,t,r){if(!e)return t +if(!function(e,t){const r=e.createElementNS(t,"svg") +try{r.insertAdjacentHTML(n.INSERT_BEFORE_END,"")}catch(i){}finally{return 1!==r.childNodes.length||(0,n.castToBrowser)((0,n.unwrap)(r.firstChild),"SVG").namespaceURI!==n.NS_SVG}}(e,r))return t +const i=e.createElement("div") +return class extends t{insertHTMLBefore(e,t,o){return""===o||e.namespaceURI!==r?super.insertHTMLBefore(e,t,o):function(e,t,r,i){let o +if((0,n.assert)(""!==r,"html cannot be empty"),"FOREIGNOBJECT"===e.tagName.toUpperCase()){const e=""+r+"";(0,n.clearElement)(t),t.insertAdjacentHTML(n.INSERT_AFTER_BEGIN,e),o=t.firstChild.firstChild}else{const e=""+r+"";(0,n.clearElement)(t),t.insertAdjacentHTML(n.INSERT_AFTER_BEGIN,e),o=t.firstChild}return function(e,t,r){const i=(0,n.expect)(e.firstChild,"source is empty") +let o=i,s=i +for(;s;){const e=s.nextSibling +t.insertBefore(s,r),o=s,s=e}return new O(t,i,o)}(o,e,i)}(e,i,o,t)}}}function jt(e,t){return e&&function(e){const t=e.createElement("div") +if(t.appendChild(e.createTextNode("first")),t.insertAdjacentHTML(n.INSERT_BEFORE_END,"second"),2===t.childNodes.length)return!1 +return!0}(e)?class extends t{constructor(e){super(e),this.uselessComment=void 0,this.uselessComment=e.createComment("")}insertHTMLBefore(e,t,r){if(""===r)return super.insertHTMLBefore(e,t,r) +let n=!1 +const i=t?t.previousSibling:e.lastChild +i&&i instanceof Text&&(n=!0,e.insertBefore(this.uselessComment,t)) +const o=super.insertHTMLBefore(e,t,r) +return n&&e.removeChild(this.uselessComment),o}}:t}const It="undefined"==typeof document?null:(0,n.castToSimple)(document) +let Ft=class extends Nt{createElementNS(e,t){return this.document.createElementNS(e,t)}setAttribute(e,t,r,n=null){n?e.setAttributeNS(n,t,r):e.setAttribute(t,r)}} +Ft=jt(It,Ft),Ft=Dt(It,Ft,n.NS_SVG) +const Lt=e.DOMTreeConstruction=Ft;["b","big","blockquote","body","br","center","code","dd","div","dl","dt","em","embed","h1","h2","h3","h4","h5","h6","head","hr","i","img","li","listing","main","meta","nobr","ol","p","pre","ruby","s","small","span","strong","strike","sub","sup","table","tt","u","ul","var"].forEach((e=>Mt[e]=1)) +const Bt=/[\t\n\v\f\r \xA0\u{1680}\u{180e}\u{2000}-\u{200a}\u{2028}\u{2029}\u{202f}\u{205f}\u{3000}\u{feff}]/u,Ut="undefined"==typeof document?null:(0,n.castToSimple)(document) +class Ht extends Nt{constructor(e){super(e),this.namespace=void 0,this.document=e,this.namespace=null}setAttribute(e,t,r){e.setAttribute(t,r)}removeAttribute(e,t){e.removeAttribute(t)}insertAfter(e,t,r){this.insertBefore(e,t,r.nextSibling)}}e.IDOMChanges=Ht +let $t=Ht +$t=jt(Ut,$t),$t=Dt(Ut,$t,n.NS_SVG) +e.DOMChanges=$t +let Vt=0 +class zt{constructor(e){this.id=Vt++,this.value=void 0,this.value=e}get(){return this.value}release(){this.value=null}toString(){let e=`Ref ${this.id}` +if(null===this.value)return`${e} (released)` +try{return`${e}: ${this.value}`}catch{return e}}}class qt{constructor(){this.stack=new n.Stack,this.refs=new WeakMap,this.roots=new Set,this.nodes=new WeakMap}begin(){this.reset()}create(e,t){let r=(0,n.assign)({},t,{bounds:null,refs:new Set}) +this.nodes.set(e,r),this.appendChild(r,e),this.enter(e)}update(e){this.enter(e)}didRender(e,t){this.nodeFor(e).bounds=t,this.exit()}willDestroy(e){(0,n.expect)(this.refs.get(e),"BUG: missing ref").release()}commit(){this.reset()}capture(){return this.captureRefs(this.roots)}reset(){if(0!==this.stack.size){let e=(0,n.expect)(this.stack.toArray()[0],"expected root state when resetting render tree"),t=this.refs.get(e) +for(void 0!==t&&this.roots.delete(t);!this.stack.isEmpty();)this.stack.pop()}}enter(e){this.stack.push(e)}exit(){this.stack.pop()}nodeFor(e){return(0,n.expect)(this.nodes.get(e),"BUG: missing node")}appendChild(e,t){let r=this.stack.current,n=new zt(t) +if(this.refs.set(t,n),r){let t=this.nodeFor(r) +t.refs.add(n),e.parent=t}else this.roots.add(n)}captureRefs(e){let t=[] +return e.forEach((r=>{let n=r.get() +n?t.push(this.captureNode(`render-node:${r.id}`,n)):e.delete(r)})),t}captureNode(e,t){let r=this.nodeFor(t),{type:n,name:i,args:o,instance:s,refs:a}=r,l=this.captureTemplate(r),u=this.captureBounds(r),c=this.captureRefs(a) +return{id:e,type:n,name:i,args:ft(o),instance:s,template:l,bounds:u,children:c}}captureTemplate({template:e}){return e||null}captureBounds(e){let t=(0,n.expect)(e.bounds,"BUG: missing bounds") +return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}}const Gt=Symbol("TRANSACTION") +class Wt{constructor(){this.scheduledInstallModifiers=[],this.scheduledUpdateModifiers=[],this.createdComponents=[],this.updatedComponents=[]}didCreate(e){this.createdComponents.push(e)}didUpdate(e){this.updatedComponents.push(e)}scheduleInstallModifier(e){this.scheduledInstallModifiers.push(e)}scheduleUpdateModifier(e){this.scheduledUpdateModifiers.push(e)}commit(){let{createdComponents:e,updatedComponents:t}=this +for(const{manager:i,state:o}of e)i.didCreate(o) +for(const{manager:i,state:o}of t)i.didUpdate(o) +let{scheduledInstallModifiers:r,scheduledUpdateModifiers:n}=this +for(const{manager:i,state:o,definition:s}of r){let e=i.getTag(o) +if(null!==e){let t=(0,l.track)((()=>i.install(o)),!1);(0,l.updateTag)(e,t)}else i.install(o)}for(const{manager:i,state:o,definition:s}of n){let e=i.getTag(o) +if(null!==e){let t=(0,l.track)((()=>i.update(o)),!1);(0,l.updateTag)(e,t)}else i.update(o)}}}class Yt{constructor(e,t){this[Gt]=null,this.updateOperations=void 0,this.isInteractive=void 0,this.isArgumentCaptureError=void 0,this.debugRenderTree=void 0,this.delegate=t,this.isInteractive=t.isInteractive,this.debugRenderTree=this.delegate.enableDebugTooling?new qt:void 0,this.isArgumentCaptureError=this.delegate.enableDebugTooling?dt:void 0,e.appendOperations?(this.appendOperations=e.appendOperations,this.updateOperations=e.updateOperations):e.document&&(this.appendOperations=new Lt(e.document),this.updateOperations=new Ht(e.document))}getAppendOperations(){return this.appendOperations}getDOM(){return(0,n.expect)(this.updateOperations,"Attempted to get DOM updateOperations, but they were not provided by the environment. You may be attempting to rerender in an environment which does not support rerendering, such as SSR.")}begin(){(0,n.assert)(!this[Gt],"A glimmer transaction was begun, but one already exists. You may have a nested transaction, possibly caused by an earlier runtime exception while rendering. Please check your console for the stack trace of any prior exceptions."),this.debugRenderTree?.begin(),this[Gt]=new Wt}get transaction(){return(0,n.expect)(this[Gt],"must be in a transaction")}didCreate(e){this.transaction.didCreate(e)}didUpdate(e){this.transaction.didUpdate(e)}scheduleInstallModifier(e){this.isInteractive&&this.transaction.scheduleInstallModifier(e)}scheduleUpdateModifier(e){this.isInteractive&&this.transaction.scheduleUpdateModifier(e)}commit(){let e=this.transaction +this[Gt]=null,e.commit(),this.debugRenderTree?.commit(),this.delegate.onTransactionCommit()}}function Qt(e,t){if(e[Gt])t() +else{e.begin() +try{t()}finally{e.commit()}}}function Kt(e){return(0,a.setInternalHelperManager)(e,{})}e.EnvironmentImpl=Yt +e.array=Kt((({positional:e})=>(0,r.createComputeRef)((()=>ct(e)),null,"array"))) +const Jt=e=>(e=>null==e||"function"!=typeof e.toString)(e)?"":String(e),Xt=(e.concat=Kt((({positional:e})=>(0,r.createComputeRef)((()=>ct(e).map(Jt).join("")),null,"concat"))),(0,n.buildUntouchableThis)("`fn` helper")) +e.fn=Kt((({positional:e})=>{let n=(0,t.check)(e[0],Zt) +return(0,r.createComputeRef)((()=>(...t)=>{let[i,...o]=ct(e) +if((0,r.isInvokableRef)(n)){let e=o.length>0?o[0]:t[0] +return(0,r.updateRef)(n,e)}return i.call(Xt,...o,...t)}),null,"fn")})) +function Zt(e){if(!e||!(0,r.isInvokableRef)(e)&&"function"!=typeof(0,r.valueForRef)(e))throw new Error(`You must pass a function as the \`fn\` helper's first argument, you passed ${e?(0,r.valueForRef)(e):e}. While rendering:\n\n${e?.debugLabel}`)}e.get=Kt((({positional:e})=>{let t=e[0]??r.UNDEFINED_REFERENCE,i=e[1]??r.UNDEFINED_REFERENCE +return(0,r.createComputeRef)((()=>{let e=(0,r.valueForRef)(t) +if((0,n.isDict)(e))return(0,s.getPath)(e,String((0,r.valueForRef)(i)))}),(e=>{let o=(0,r.valueForRef)(t) +if((0,n.isDict)(o))return(0,s.setPath)(o,String((0,r.valueForRef)(i)),e)}),"get")})),e.hash=Kt((({named:e})=>{let t=(0,r.createComputeRef)((()=>ut(e)),null,"hash"),n=new Map +for(let r in e)n.set(r,e[r]) +return t.children=n,t})) +function er(e){return(0,l.getValue)(e.argsCache)}class tr{constructor(e,t=(()=>bt)){this.argsCache=void 0 +let r=(0,l.createCache)((()=>t(e))) +this.argsCache=r}get named(){return er(this).named||mt}get positional(){return er(this).positional||gt}}(0,n.buildUntouchableThis)("`on` modifier") +class rr{constructor(e,t){this.tag=(0,l.createUpdatableTag)(),this.element=void 0,this.args=void 0,this.listener=null,this.element=e,this.args=t,(0,o.registerDestructor)(this,(()=>{let{element:e,listener:t}=this +if(t){let{eventName:r,callback:n,options:i}=t +or(e,r,n,i)}}))}updateListener(){let{element:e,args:i,listener:o}=this;(0,n.assert)(i.positional[0],"You must pass a valid DOM event name as the first argument to the `on` modifier") +let s=(0,t.check)((0,r.valueForRef)(i.positional[0]),t.CheckString,(()=>"You must pass a valid DOM event name as the first argument to the `on` modifier"));(0,n.assert)(i.positional[1],"You must pass a function as the second argument to the `on` modifier") +let a,l,u,c=(0,t.check)((0,r.valueForRef)(i.positional[1]),t.CheckFunction,(e=>`You must pass a function as the second argument to the \`on\` modifier; you passed ${null===e?"null":typeof e}. While rendering:\n\n${i.positional[1]?.debugLabel??"{unlabeled value}"}`)) +{let{once:e,passive:t,capture:n}=i.named +e&&(a=(0,r.valueForRef)(e)),t&&(l=(0,r.valueForRef)(t)),n&&(u=(0,r.valueForRef)(n))}let p,d=!1 +if(d=null===o||(s!==o.eventName||c!==o.userProvidedCallback||a!==o.once||l!==o.passive||u!==o.capture),d&&(void 0===a&&void 0===l&&void 0===u||(p={once:a,passive:l,capture:u})),d){let t=c +0,this.listener={eventName:s,callback:t,userProvidedCallback:c,once:a,passive:l,capture:u,options:p},o&&or(e,o.eventName,o.callback,o.options),function(e,t,r,n){nr++,e.addEventListener(t,r,n)}(e,s,t,p)}}}let nr=0,ir=0 +function or(e,t,r,n){ir++,e.removeEventListener(t,r,n)}e.on=(0,a.setInternalModifierManager)(new class{getDebugName(){return"on"}getDebugInstance(){return null}get counters(){return{adds:nr,removes:ir}}create(e,t,r,n){return new rr(t,n)}getTag({tag:e}){return e}install(e){e.updateListener()}update(e){e.updateListener()}getDestroyable(e){return e}},{}) +class sr{constructor(e,t,r,n,i){this.currentOpSize=0,this.stack=e,this.heap=t,this.program=r,this.externs=n,this.registers=i}fetchRegister(e){return this.registers[e]}loadRegister(e,t){this.registers[e]=t}setPc(e){(0,n.assert)("number"==typeof e&&!isNaN(e),"pc is set to a number"),this.registers[i.$pc]=e}pushFrame(){this.stack.push(this.registers[i.$ra]),this.stack.push(this.registers[i.$fp]),this.registers[i.$fp]=this.registers[i.$sp]-1}popFrame(){this.registers[i.$sp]=this.registers[i.$fp]-1,this.registers[i.$ra]=this.stack.get(0),this.registers[i.$fp]=this.stack.get(1)}pushSmallFrame(){this.stack.push(this.registers[i.$ra])}popSmallFrame(){this.registers[i.$ra]=this.stack.pop()}goto(e){this.setPc(this.target(e))}target(e){return this.registers[i.$pc]+e-this.currentOpSize}call(e){(0,n.assert)(e<4294967295,"Jumping to placeholder address"),this.registers[i.$ra]=this.registers[i.$pc],this.setPc(this.heap.getaddr(e))}returnTo(e){this.registers[i.$ra]=this.target(e)}return(){this.setPc(this.registers[i.$ra])}nextStatement(){let{registers:e,program:t}=this,r=e[i.$pc] +if((0,n.assert)("number"==typeof r,"pc is a number"),-1===r)return null +let o=t.opcode(r),s=this.currentOpSize=o.size +return this.registers[i.$pc]+=s,o}evaluateOuter(e,t){this.evaluateInner(e,t)}evaluateInner(e,t){e.isMachine?this.evaluateMachine(e):this.evaluateSyscall(e,t)}evaluateMachine(e){switch(e.type){case i.MachineOp.PushFrame:return this.pushFrame() +case i.MachineOp.PopFrame:return this.popFrame() +case i.MachineOp.InvokeStatic:return this.call(e.op1) +case i.MachineOp.InvokeVirtual:return this.call(this.stack.pop()) +case i.MachineOp.Jump:return this.goto(e.op1) +case i.MachineOp.Return:return this.return() +case i.MachineOp.ReturnTo:return this.returnTo(e.op1)}}evaluateSyscall(e,t){ae.evaluate(t,e,e.type)}}class ar{constructor(e,{alwaysRevalidate:t=!1}){this.env=void 0,this.dom=void 0,this.alwaysRevalidate=void 0,this.frameStack=new n.Stack,this.env=e,this.dom=e.getDOM(),this.alwaysRevalidate=t}execute(e,t){this._execute(e,t)}_execute(e,t){let{frameStack:r}=this +for(this.try(e,t);!r.isEmpty();){let e=this.frame.nextStatement() +void 0!==e?e.evaluate(this):r.pop()}}get frame(){return(0,n.expect)(this.frameStack.current,"bug: expected a frame")}goto(e){this.frame.goto(e)}try(e,t){this.frameStack.push(new hr(e,t))}throw(){this.frame.handleException(),this.frameStack.pop()}}e.UpdatingVM=ar +class lr{constructor(e,t){this.state=e,this.resumeCallback=t}resume(e,t){return this.resumeCallback(e,this.state,t)}}class ur{constructor(e,t,r,n){this.children=void 0,this.bounds=void 0,this.state=e,this.runtime=t,this.children=n,this.bounds=r}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}evaluate(e){e.try(this.children,null)}}class cr extends ur{constructor(...e){super(...e),this.type="try"}evaluate(e){e.try(this.children,this)}handleException(){let{state:e,bounds:t,runtime:r}=this;(0,o.destroyChildren)(this) +let n=re.resume(r.env,t),i=e.resume(r,n),s=[],a=this.children=[],l=i.execute((e=>{e.pushUpdating(s),e.updateWith(this),e.pushUpdating(a)}));(0,o.associateDestroyableChild)(this,l.drop)}}class pr extends cr{constructor(e,t,r,n,i,o){super(e,t,r,[]),this.retained=!1,this.index=-1,this.key=n,this.memo=i,this.value=o}updateReferences(e){this.retained=!0,(0,r.updateRef)(this.value,e.value),(0,r.updateRef)(this.memo,e.memo)}shouldRemove(){return!this.retained}reset(){this.retained=!1}}class dr extends ur{constructor(e,t,n,i,o){super(e,t,n,i),this.type="list-block",this.opcodeMap=new Map,this.marker=null,this.lastIterator=void 0,this.iterableRef=o,this.lastIterator=(0,r.valueForRef)(o)}initializeChild(e){e.index=this.children.length-1,this.opcodeMap.set(e.key,e)}evaluate(e){let t=(0,r.valueForRef)(this.iterableRef) +if(this.lastIterator!==t){let{bounds:r}=this,{dom:i}=e,o=this.marker=i.createComment("") +i.insertAfter(r.parentElement(),o,(0,n.expect)(r.lastNode(),"can't insert after an empty bounds")),this.sync(t),this.parentElement().removeChild(o),this.marker=null,this.lastIterator=t}super.evaluate(e)}sync(e){let{opcodeMap:t,children:r}=this,i=0,o=0 +for(this.children=this.bounds.boundList=[];;){let s=e.next() +if(null===s)break +let a=r[i],{key:l}=s +for(;void 0!==a&&!0===a.retained;)a=r[++i] +if(void 0!==a&&a.key===l)this.retainItem(a,s),i++ +else if(t.has(l)){let e=t.get(l) +if(e.index{t.pushUpdating() +let n=t.enterItem(e) +n.index=a.length,a.push(n),r.set(l,n),(0,o.associateDestroyableChild)(this,n)}))}moveItem(e,t,n){let i,o,{children:s}=this;(0,r.updateRef)(e.memo,t.memo),(0,r.updateRef)(e.value,t.value),e.retained=!0,void 0===n?w(e,this.marker):(i=e.lastNode().nextSibling,o=n.firstNode(),i!==o&&w(e,o)),e.index=s.length,s.push(e)}deleteItem(e){(0,o.destroy)(e),E(e),this.opcodeMap.delete(e.key)}}class hr{constructor(e,t){this.current=0,this.ops=e,this.exceptionHandler=t}goto(e){this.current=e}nextStatement(){return this.ops[this.current++]}handleException(){this.exceptionHandler&&this.exceptionHandler.handleException()}}class fr{constructor(e,t,r,n){this.env=e,this.updating=t,this.bounds=r,this.drop=n,(0,o.associateDestroyableChild)(this,n),(0,o.registerDestructor)(this,(()=>E(this.bounds)))}rerender({alwaysRevalidate:e=!1}={alwaysRevalidate:!1}){let{env:t,updating:r}=this +new ar(t,{alwaysRevalidate:e}).execute(r,this)}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}handleException(){throw"this should never happen"}}class mr{static restore(e){return new this(e.slice(),[0,-1,e.length-1,0])}constructor(e=[],t){this[g]=void 0,this.stack=e,this[g]=t}push(e){this.stack[++this[g][i.$sp]]=e}dup(e=this[g][i.$sp]){this.stack[++this[g][i.$sp]]=this.stack[e]}copy(e,t){this.stack[t]=this.stack[e]}pop(e=1){let t=this.stack[this[g][i.$sp]] +return this[g][i.$sp]-=e,t}peek(e=0){return this.stack[this[g][i.$sp]-e]}get(e,t=this[g][i.$fp]){return this.stack[t+e]}set(e,t,r=this[g][i.$fp]){this.stack[r+t]=e}slice(e,t){return this.stack.slice(e,t)}capture(e){let t=this[g][i.$sp]+1,r=t-e +return this.stack.slice(r,t)}reset(){this.stack.length=0}toArray(){return this.stack.slice(this[g][i.$fp],this[g][i.$sp]+1)}}class gr{constructor(){this.scope=new n.Stack,this.dynamicScope=new n.Stack,this.updating=new n.Stack,this.cache=new n.Stack,this.list=new n.Stack}}class br{get stack(){return this[h].stack}get pc(){return this[h].fetchRegister(i.$pc)}fetch(e){let t=this.fetchValue(e) +this.stack.push(t)}load(e){let t=this.stack.pop() +this.loadValue(e,t)}fetchValue(e){if((0,i.isLowLevelRegister)(e))return this[h].fetchRegister(e) +switch(e){case i.$s0:return this.s0 +case i.$s1:return this.s1 +case i.$t0:return this.t0 +case i.$t1:return this.t1 +case i.$v0:return this.v0}}loadValue(e,t){switch((0,i.isLowLevelRegister)(e)&&this[h].loadRegister(e,t),e){case i.$s0:this.s0=t +break +case i.$s1:this.s1=t +break +case i.$t0:this.t0=t +break +case i.$t1:this.t1=t +break +case i.$v0:this.v0=t}}pushFrame(){this[h].pushFrame()}popFrame(){this[h].popFrame()}goto(e){this[h].goto(e)}call(e){this[h].call(e)}returnTo(e){this[h].returnTo(e)}return(){this[h].return()}constructor(e,{pc:t,scope:r,dynamicScope:o,stack:s},a,l){this[m]=new gr,this[b]=void 0,this.destructor=void 0,this[f]=new n.Stack,this[y]=void 0,this[v]=void 0,this[h]=void 0,this.s0=null,this.s1=null,this.t0=null,this.t1=null,this.v0=null,this.resume=void 0,this.runtime=e,this.elementStack=a,this.context=l,this.resume=vr(l) +let u=mr.restore(s);(0,n.assert)("number"==typeof t,"pc is a number"),u[g][i.$pc]=t,u[g][i.$sp]=s.length-1,u[g][i.$fp]=-1,this[b]=this.program.heap,this[y]=this.program.constants,this.elementStack=a,this[m].scope.push(r),this[m].dynamicScope.push(o),this[v]=new et,this[h]=new sr(u,this[b],e.program,{debugBefore:e=>ae.debugBefore(this,e),debugAfter:e=>{ae.debugAfter(this,e)}},u[g]),this.destructor={},this[f].push(this.destructor)}static initial(e,t,{handle:r,self:n,dynamicScope:i,treeBuilder:o,numSymbols:s,owner:a}){let l=d.root(n,s,a),u=yr(e.program.heap.getaddr(r),l,i),c=vr(t)(e,u,o) +return c.pushUpdating(),c}static empty(e,{handle:t,treeBuilder:n,dynamicScope:i,owner:o},s){let a=vr(s)(e,yr(e.program.heap.getaddr(t),d.root(r.UNDEFINED_REFERENCE,0,o),i),n) +return a.pushUpdating(),a}compile(e){return(0,n.unwrapHandle)(e.compile(this.context))}get program(){return this.runtime.program}get env(){return this.runtime.env}captureState(e,t=this[h].fetchRegister(i.$pc)){return{pc:t,scope:this.scope(),dynamicScope:this.dynamicScope(),stack:this.stack.capture(e)}}capture(e,t=this[h].fetchRegister(i.$pc)){return new lr(this.captureState(e,t),this.resume)}beginCacheGroup(e){let t=this.updating(),r=new we +t.push(r),t.push(new Ee(e)),this[m].cache.push(r),(0,l.beginTrackFrame)(e)}commitCacheGroup(){let e=this.updating(),t=(0,n.expect)(this[m].cache.pop(),"VM BUG: Expected a cache group"),r=(0,l.endTrackFrame)() +e.push(new Ce(t)),t.finalize(r,e.length)}enter(e){let t=this.capture(e),r=this.elements().pushUpdatableBlock(),n=new cr(t,this.runtime,r,[]) +this.didEnter(n)}enterItem({key:e,value:t,memo:n}){let{stack:i}=this,o=(0,r.createIteratorItemRef)(t),s=(0,r.createIteratorItemRef)(n) +i.push(o),i.push(s) +let a=this.capture(2),l=this.elements().pushUpdatableBlock(),u=new pr(a,this.runtime,l,e,s,o) +return this.didEnter(u),u}registerItem(e){this.listBlock().initializeChild(e)}enterList(e,t){let r=[],n=this[h].target(t),i=this.capture(0,n),o=this.elements().pushBlockList(r),s=new dr(i,this.runtime,o,r,e) +this[m].list.push(s),this.didEnter(s)}didEnter(e){this.associateDestroyable(e),this[f].push(e),this.updateWith(e),this.pushUpdating(e.children)}exit(){this[f].pop(),this.elements().popBlock(),this.popUpdating()}exitList(){this.exit(),this[m].list.pop()}pushUpdating(e=[]){this[m].updating.push(e)}popUpdating(){return(0,n.expect)(this[m].updating.pop(),"can't pop an empty stack")}updateWith(e){this.updating().push(e)}listBlock(){return(0,n.expect)(this[m].list.current,"expected a list block")}associateDestroyable(e){let t=(0,n.expect)(this[f].current,"Expected destructor parent");(0,o.associateDestroyableChild)(t,e)}tryUpdating(){return this[m].updating.current}updating(){return(0,n.expect)(this[m].updating.current,"expected updating opcode on the updating opcode stack")}elements(){return this.elementStack}scope(){return(0,n.expect)(this[m].scope.current,"expected scope on the scope stack")}dynamicScope(){return(0,n.expect)(this[m].dynamicScope.current,"expected dynamic scope on the dynamic scope stack")}pushChildScope(){this[m].scope.push(this.scope().child())}pushDynamicScope(){let e=this.dynamicScope().child() +return this[m].dynamicScope.push(e),e}pushRootScope(e,t){let r=d.sized(e,t) +return this[m].scope.push(r),r}pushScope(e){this[m].scope.push(e)}popScope(){this[m].scope.pop()}popDynamicScope(){this[m].dynamicScope.pop()}getOwner(){return this.scope().owner}getSelf(){return this.scope().getSelf()}referenceForSymbol(e){return this.scope().getSymbol(e)}execute(e){return this._execute(e)}_execute(e){let t +e&&e(this) +do{t=this.next()}while(!t.done) +return t.value}next(){let e,{env:t,elementStack:r}=this,n=this[h].nextStatement() +return null!==n?(this[h].evaluateOuter(n,this),e={done:!1,value:null}):(this.stack.reset(),e={done:!0,value:new fr(t,this.popUpdating(),r.popBlock(),this.destructor)}),e}bindDynamicScope(e){let t=this.dynamicScope() +for(const r of(0,n.reverse)(e))t.set(r,this.stack.pop())}}function yr(e,t,r){return{pc:e,scope:t,dynamicScope:r,stack:[]}}function vr(e){return(t,r,n)=>new br(t,r,n,e)}e.LowLevelVM=br +class _r{constructor(e){this.vm=e}next(){return this.vm.next()}sync(){return this.vm.execute()}}const Or=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" +class wr extends _{constructor(e,t,r){super(e,t),this.candidate=null,this.openBlockDepth=void 0,this.injectedOmittedNode=!1,this.startingBlockDepth=r,this.openBlockDepth=r-1}}class Er extends re{constructor(e,t,r){if(super(e,t,r),this.unmatchedAttributes=null,this.blockDepth=0,this.startingBlockOffset=void 0,r)throw new Error("Rehydration with nextSibling not supported") +let i=this.currentCursor.element.firstChild +for(;null!==i&&!Cr(i);)i=i.nextSibling;(0,n.assert)(i,"Must have opening comment for rehydration."),this.candidate=i +const o=Tr(i) +if(0!==o){const e=o-1,t=this.dom.createComment(`%+b:${e}%`) +i.parentNode.insertBefore(t,this.candidate) +let r=i.nextSibling +for(;null!==r&&(!kr(r)||Tr(r)!==o);)r=r.nextSibling;(0,n.assert)(r,"Must have closing comment for starting block comment") +const s=this.dom.createComment(`%-b:${e}%`) +i.parentNode.insertBefore(s,r.nextSibling),this.candidate=t,this.startingBlockOffset=e}else this.startingBlockOffset=0}get currentCursor(){return this[te].current}get candidate(){return this.currentCursor?this.currentCursor.candidate:null}set candidate(e){this.currentCursor.candidate=e}disableRehydration(e){const t=this.currentCursor +t.candidate=null,t.nextSibling=e}enableRehydration(e){const t=this.currentCursor +t.candidate=e,t.nextSibling=null}pushElement(e,t=null){const r=new wr(e,t,this.blockDepth||0) +null!==this.candidate&&(r.candidate=e.firstChild,this.candidate=e.nextSibling),this[te].push(r)}clearMismatch(e){let t=e +const r=this.currentCursor +if(null!==r){const e=r.openBlockDepth +if(e>=r.startingBlockDepth)for(;t;){if(kr(t)){if(e>=Rr(t,this.startingBlockOffset))break}t=this.remove(t)}else for(;null!==t;)t=this.remove(t) +this.disableRehydration(t)}}__openBlock(){const{currentCursor:e}=this +if(null===e)return +const t=this.blockDepth +this.blockDepth++ +const{candidate:r}=e +if(null===r)return +const{tagName:n}=e.element +Cr(r)&&Rr(r,this.startingBlockOffset)===t?(this.candidate=this.remove(r),e.openBlockDepth=t):"TITLE"!==n&&"SCRIPT"!==n&&"STYLE"!==n&&this.clearMismatch(r)}__closeBlock(){const{currentCursor:e}=this +if(null===e)return +const t=e.openBlockDepth +this.blockDepth-- +const{candidate:r}=e +let n=!1 +if(null!==r)if(n=!0,kr(r)&&Rr(r,this.startingBlockOffset)===t){const t=this.remove(r) +this.candidate=t,e.openBlockDepth--}else this.clearMismatch(r),n=!1 +if(!1===n){const t=e.nextSibling +if(null!==t&&kr(t)&&Rr(t,this.startingBlockOffset)===this.blockDepth){const r=this.remove(t) +this.enableRehydration(r),e.openBlockDepth--}}}__appendNode(e){const{candidate:t}=this +return t||super.__appendNode(e)}__appendHTML(e){const t=this.markerBounds() +if(t){const e=t.firstNode(),r=t.lastNode(),n=new O(this.element,e.nextSibling,r.previousSibling),i=this.remove(e) +return this.remove(r),null!==i&&Ar(i)&&(this.candidate=this.remove(i),null!==this.candidate&&this.clearMismatch(this.candidate)),n}return super.__appendHTML(e)}remove(e){const t=(0,n.expect)(e.parentNode,"cannot remove a detached node"),r=e.nextSibling +return t.removeChild(e),r}markerBounds(){const e=this.candidate +if(e&&Pr(e)){const t=e +let r=(0,n.expect)(t.nextSibling,"BUG: serialization markers must be paired") +for(;r&&!Pr(r);)r=(0,n.expect)(r.nextSibling,"BUG: serialization markers must be paired") +return new O(this.element,t,r)}return null}__appendText(e){const{candidate:t}=this +return t?3===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):function(e){return 8===e.nodeType&&"%|%"===e.nodeValue}(t)||Ar(t)&&""===e?(this.candidate=this.remove(t),this.__appendText(e)):(this.clearMismatch(t),super.__appendText(e)):super.__appendText(e)}__appendComment(e){const t=this.candidate +return t&&8===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):(t&&this.clearMismatch(t),super.__appendComment(e))}__openElement(e){const t=this.candidate +if(t&&Sr(t)&&function(e,t){if(e.namespaceURI===n.NS_SVG)return e.tagName===t +return e.tagName===t.toUpperCase()}(t,e))return this.unmatchedAttributes=[].slice.call(t.attributes),t +if(t){if(Sr(t)&&"TBODY"===t.tagName)return this.pushElement(t,null),this.currentCursor.injectedOmittedNode=!0,this.__openElement(e) +this.clearMismatch(t)}return super.__openElement(e)}__setAttribute(e,t,r){const n=this.unmatchedAttributes +if(n){const r=xr(n,e) +if(r)return r.value!==t&&(r.value=t),void n.splice(n.indexOf(r),1)}return super.__setAttribute(e,t,r)}__setProperty(e,t){const r=this.unmatchedAttributes +if(r){const n=xr(r,e) +if(n)return n.value!==t&&(n.value=t),void r.splice(r.indexOf(n),1)}return super.__setProperty(e,t)}__flushElement(e,t){const{unmatchedAttributes:r}=this +if(r){for(const e of r)this.constructing.removeAttribute(e.name) +this.unmatchedAttributes=null}else super.__flushElement(e,t)}willCloseElement(){const{candidate:e,currentCursor:t}=this +null!==e&&this.clearMismatch(e),t&&t.injectedOmittedNode&&this.popElement(),super.willCloseElement()}getMarker(e,t){const r=e.querySelector(`script[glmr="${t}"]`) +return r?(0,n.castToSimple)(r):null}__pushRemoteElement(e,t,r){const i=this.getMarker((0,n.castToBrowser)(e,"HTML"),t) +if((0,n.assert)(!i||i.parentNode===e,"expected remote element marker's parent node to match remote element"),void 0===r){for(;null!==e.firstChild&&e.firstChild!==i;)this.remove(e.firstChild) +r=null}const o=new wr(e,null,this.blockDepth) +this[te].push(o),null===i?this.disableRehydration(r):this.candidate=this.remove(i) +const s=new ie(e) +return this.pushLiveBlock(s,!0)}didAppendBounds(e){if(super.didAppendBounds(e),this.candidate){const t=e.lastNode() +this.candidate=t&&t.nextSibling}return e}}function Cr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%+b:",0)}function kr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%-b:",0)}function Tr(e){return parseInt(e.nodeValue.slice(4),10)}function Rr(e,t){return Tr(e)-t}function Sr(e){return 1===e.nodeType}function Pr(e){return 8===e.nodeType&&"%glmr%"===e.nodeValue}function Ar(e){return 8===e.nodeType&&"% %"===e.nodeValue}function xr(e,t){for(const r of e)if(r.name===t)return r}e.RehydrateBuilder=Er})),e("@glimmer/tracking/index",["exports","@ember/-internals/metal"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"cached",{enumerable:!0,get:function(){return t.cached}}),Object.defineProperty(e,"tracked",{enumerable:!0,get:function(){return t.tracked}})})),e("@glimmer/tracking/primitives/cache",["exports","@ember/-internals/metal"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return t.createCache}}),Object.defineProperty(e,"getValue",{enumerable:!0,get:function(){return t.getValue}}),Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return t.isConst}})})),e("@glimmer/util",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.TEXT_NODE=e.Stack=e.SERIALIZATION_FIRST_NODE_STRING=e.RAW_NODE=e.NS_XMLNS=e.NS_XML=e.NS_XLINK=e.NS_SVG=e.NS_MATHML=e.NS_HTML=e.LOGGER=e.LOCAL_LOGGER=e.ImmediateConstants=e.INSERT_BEFORE_END=e.INSERT_BEFORE_BEGIN=e.INSERT_AFTER_END=e.INSERT_AFTER_BEGIN=e.EMPTY_STRING_ARRAY=e.EMPTY_NUMBER_ARRAY=e.EMPTY_ARRAY=e.ELEMENT_NODE=e.DOCUMENT_TYPE_NODE=e.DOCUMENT_NODE=e.DOCUMENT_FRAGMENT_NODE=e.COMMENT_NODE=void 0,e.arrayToOption=function(e){return a(e)?e:null},e.asPresentArray=function(e,t="unexpected empty list"){return l(e,t),e},e.assert=function(e,t){if(!e)throw new Error(t||"assertion failure")},e.assertNever=function(e,t="unexpected unreachable branch"){throw R.log("unreachable",e),R.log(`${t} :: ${JSON.stringify(e)} (${e})`),new Error("code reached unreachable")},e.assertPresent=function(e,t){if(!s(e))throw new Error(`Expected present, got ${"string"==typeof e?e:t}`)},e.assertPresentArray=l,e.beginTestSteps=e.assign=void 0,e.buildUntouchableThis=function(e){let t=null +0 +return t},e.castToBrowser=function(e,t){if(null==e)return null +if(void 0===typeof document)throw new Error("Attempted to cast to a browser node in a non-browser context") +if(w(e))return e +if(e.ownerDocument!==document)throw new Error("Attempted to cast to a browser node with a node that was not created from this document") +return C(e,t)},e.castToSimple=function(e){return w(e)||E(e),e},e.checkNode=C,e.clearElement=function(e){let t=e.firstChild +for(;t;){let r=t.nextSibling +e.removeChild(t),t=r}},e.constants=function(...e){return[!1,!0,null,void 0,...e]},e.debugToString=void 0,e.decodeHandle=function(e){return e},e.decodeImmediate=_,e.decodeNegative=g,e.decodePositive=y,e.deprecate=function(e){T.warn(`DEPRECATION: ${e}`)},e.dict=function(){return Object.create(null)},e.emptyArray=r,e.encodeHandle=function(e){return e},e.encodeImmediate=v,e.encodeNegative=m,e.encodePositive=b,e.endTestSteps=void 0,e.entries=function(e){return Object.entries(e)},e.enumerate=n +e.exhausted=function(e){throw new Error(`Exhausted ${String(e)}`)},e.expect=function(e,t){if(null==e)throw new Error(t) +return e},e.extractHandle=function(e){return"number"==typeof e?e:e.handle},e.getFirst=c,e.getLast=u,e.ifPresent=function(e,t,r){return a(e)?t(e):r()},e.intern=function(e){let t={} +t[e]=1 +for(let r in t)if(r===e)return r +return e},e.isDict=function(e){return null!=e},e.isElement=function(e){return e?.nodeType===d&&e instanceof Element},e.isEmptyArray=function(e){return e===t},e.isErrHandle=function(e){return"number"==typeof e},e.isHandle=function(e){return e>=0},e.isNonPrimitiveHandle=function(e){return e>f.ENCODED_UNDEFINED_HANDLE},e.isObject=function(e){return"function"==typeof e||"object"==typeof e&&null!==e},e.isOkHandle=function(e){return"number"==typeof e},e.isPresent=s,e.isPresentArray=a,e.isSerializationFirstNode=function(e){return e.nodeValue===O},e.isSimpleElement=E,e.isSmallInt=function(e){return e%1==0&&e<=f.MAX_INT&&e>=f.MIN_INT},e.keys=function(e){return Object.keys(e)},e.logStep=void 0,e.mapPresentArray=function(e,t){if(null===e)return null +let r=[] +for(let n of e)r.push(t(n)) +return r},e.reverse=function*(e){for(let t=e.length-1;t>=0;t--)yield e[t]},e.strip=function(e,...t){let r="" +for(const[a,l]of n(e)){r+=`${l}${void 0!==t[a]?String(t[a]):""}`}let i=r.split("\n") +for(;a(i)&&/^\s*$/u.test(c(i));)i.shift() +for(;a(i)&&/^\s*$/u.test(u(i));)i.pop() +let o=1/0 +for(let n of i){let e=/^\s*/u.exec(n)[0].length +o=Math.min(o,e)}let s=[] +for(let n of i)s.push(n.slice(o)) +return s.join("\n")},e.tuple=void 0,e.unreachable=o,e.unwrap=i,e.unwrapHandle=function(e){if("number"==typeof e)return e +{let t=e.errors[0] +throw new Error(`Compile Error: ${t.problem} @ ${t.span.start}..${t.span.end}`)}},e.unwrapTemplate=function(e){if("error"===e.result)throw new Error(`Compile Error: ${e.problem} @ ${e.span.start}..${e.span.end}`) +return e} +e.values=function(e){return Object.values(e)},e.verifySteps=void 0 +const t=e.EMPTY_ARRAY=Object.freeze([]) +function r(){return t}e.EMPTY_STRING_ARRAY=r(),e.EMPTY_NUMBER_ARRAY=r() +function*n(e){let t=0 +for(const r of e)yield[t++,r]}function i(e){if(null==e)throw new Error("Expected value to be present") +return e}function o(e="unreachable"){return new Error(e)}function s(e){return null!=e}function a(e){return e.length>0}function l(e,t="unexpected empty list"){if(!a(e))throw new Error(t)}function u(e){return 0===e.length?void 0:e[e.length-1]}function c(e){return 0===e.length?void 0:e[0]}e.tuple=(...e)=>e +e.Stack=class{constructor(e=[]){this.stack=void 0,this.current=null,this.stack=e}get size(){return this.stack.length}push(e){this.current=e,this.stack.push(e)}pop(){let e=this.stack.pop() +return this.current=u(this.stack)??null,void 0===e?null:e}nth(e){let t=this.stack.length +return tf.SIGN_BIT?y(e):g(e)}[1,-1].forEach((e=>_(v(e)))) +const O=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" +e.assign=Object.assign +function w(e){return e.nodeType===h}function E(e){return e?.nodeType===d}function C(e,t){let r=!1 +if(null!==e)if("string"==typeof t)r=k(e,t) +else{if(!Array.isArray(t))throw o() +r=t.some((t=>k(e,t)))}if(r&&e instanceof Node)return e +throw function(e,t){return new Error(`cannot cast a ${e} into ${String(t)}`)}(`SimpleElement(${e?.constructor?.name??"null"})`,t)}function k(e,t){switch(t){case"NODE":return!0 +case"HTML":return e instanceof HTMLElement +case"SVG":return e instanceof SVGElement +case"ELEMENT":return e instanceof Element +default:if(t.toUpperCase()===t)throw new Error("BUG: this code is missing handling for a generic node type") +return e instanceof Element&&e.tagName.toLowerCase()===t}}const T=e.LOCAL_LOGGER=console,R=e.LOGGER=console})),e("@glimmer/validator",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" +function n(e){if(null==e)throw new Error("Expected value to be present") +return e}Object.defineProperty(e,"__esModule",{value:!0}),e.VolatileTag=e.VOLATILE_TAG=e.VOLATILE=e.INITIAL=e.CurrentTag=e.CURRENT_TAG=e.CONSTANT_TAG=e.CONSTANT=e.COMPUTE=e.ALLOW_CYCLES=void 0,e.beginTrackFrame=M,e.beginUntrackFrame=D,e.bump=function(){s++},e.combine=void 0,e.consumeTag=I,e.createCache=function(e,t){0 +let r={[F]:e,[L]:void 0,[B]:void 0,[U]:-1} +0 +return r},e.createTag=function(){return new h(a)},e.createUpdatableTag=g,e.dirtyTag=e.debug=void 0,e.dirtyTagFor=T,e.endTrackFrame=N,e.endUntrackFrame=j,e.getValue=function(e){H(e,"getValue") +let t=e[F],r=e[B],n=e[U] +if(void 0!==r&&p(r,n))I(r) +else{M() +try{e[L]=t()}finally{r=N(),e[B]=r,e[U]=c(r),I(r)}}return e[L]},e.isConst=function(e){H(e,"isConst") +let t=e[B] +return function(e,t){0}(),y(t)},e.isConstTag=y,e.isTracking=function(){return null!==A},e.resetTracking=function(){for(;x.length>0;)x.pop() +A=null,!1},e.tagFor=S,e.tagMetaFor=R,e.track=function(e,t){let r +M(t) +try{e()}finally{r=N()}return r},e.trackedData=function(e,t){let r=new WeakMap,n="function"==typeof t +return{getter:function(i){let o +return I(S(i,e)),n&&!r.has(i)?(o=t.call(i),r.set(i,o)):o=r.get(i),o},setter:function(t,n){T(t,e),r.set(t,n)}}},e.untrack=function(e){D() +try{return e()}finally{j()}},e.updateTag=void 0,e.validateTag=p,e.valueForTag=c +e.debug={} +e.CONSTANT=0 +const i=e.INITIAL=1,o=e.VOLATILE=NaN +let s=i +const a=0,l=1,u=e.COMPUTE=Symbol("TAG_COMPUTE") +function c(e){return e[u]()}function p(e,t){return t>=e[u]()}const d=Symbol("TAG_TYPE") +e.ALLOW_CYCLES=void 0 +class h{static combine(e){switch(e.length){case 0:return b +case 1:return e[0] +default:{let t=new h(2) +return t.subtag=e,t}}}constructor(e){this.revision=i,this.lastChecked=i,this.lastValue=i,this.isUpdating=!1,this.subtag=null,this.subtagBufferCache=null,this[d]=void 0,this[d]=e}[u](){let{lastChecked:e}=this +if(!0===this.isUpdating)this.lastChecked=++s +else if(e!==s){this.isUpdating=!0,this.lastChecked=s +try{let{subtag:e,revision:t}=this +if(null!==e)if(Array.isArray(e))for(const r of e){let e=r[u]() +t=Math.max(e,t)}else{let r=e[u]() +r===this.subtagBufferCache?t=Math.max(t,this.lastValue):(this.subtagBufferCache=null,t=Math.max(t,r))}this.lastValue=t}finally{this.isUpdating=!1}}return this.lastValue}static updateTag(e,t){let r=e,n=t +n===b?r.subtag=null:(r.subtagBufferCache=n[u](),r.subtag=n)}static dirtyTag(e,r){e.revision=++s,(0,t.scheduleRevalidate)()}}const f=e.dirtyTag=h.dirtyTag,m=e.updateTag=h.updateTag +function g(){return new h(l)}const b=e.CONSTANT_TAG=new h(3) +function y(e){return e===b}class v{constructor(){this[d]=100}[u](){return o}}e.VolatileTag=v +e.VOLATILE_TAG=new v +class _{constructor(){this[d]=101}[u](){return s}}e.CurrentTag=_ +e.CURRENT_TAG=new _ +const O=e.combine=h.combine +let w=g(),E=g(),C=g() +c(w),f(w),c(w),m(w,O([E,C])),c(w),f(E),c(w),f(C),c(w),m(w,C),c(w),f(C),c(w) +const k=new WeakMap +function T(e,t,r){let n=void 0===r?k.get(e):r +if(void 0===n)return +let i=n.get(t) +void 0!==i&&f(i,!0)}function R(e){let t=k.get(e) +return void 0===t&&(t=new Map,k.set(e,t)),t}function S(e,t,r){let n=void 0===r?R(e):r,i=n.get(t) +return void 0===i&&(i=g(),n.set(t,i)),i}class P{constructor(){this.tags=new Set,this.last=null}add(e){e!==b&&(this.tags.add(e),this.last=e)}combine(){let{tags:e}=this +return 0===e.size?b:1===e.size?this.last:O(Array.from(this.tags))}}let A=null +const x=[] +function M(e){x.push(A),A=new P}function N(){let e=A +return A=x.pop()||null,n(e).combine()}function D(){x.push(A),A=null}function j(){A=x.pop()||null}function I(e){null!==A&&A.add(e)}const F=Symbol("FN"),L=Symbol("LAST_VALUE"),B=Symbol("TAG"),U=Symbol("SNAPSHOT") +Symbol("DEBUG_LABEL") +function H(e,t){0}const $=Symbol("GLIMMER_VALIDATOR_REGISTRATION"),V=function(){if("undefined"!=typeof globalThis)return globalThis +if("undefined"!=typeof self)return self +if("undefined"!=typeof window)return window +if("undefined"!=typeof global)return global +throw new Error("unable to locate global object")}() +if(!0===V[$])throw new Error("The `@glimmer/validator` library has been included twice in this application. It could be different versions of the package, or the same version included twice by mistake. `@glimmer/validator` depends on having a single copy of the package in use at any time in an application, even if they are the same version. You must dedupe your build to remove the duplicate packages in order to prevent this error.") +V[$]=!0})),e("@glimmer/vm",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.TemporaryRegister=e.TYPE_SIZE=e.TYPE_MASK=e.SavedRegister=e.Op=e.OPERAND_LEN_MASK=e.MachineRegister=e.MachineOp=e.MAX_SIZE=e.MACHINE_MASK=e.InternalComponentCapability=e.InternalComponentCapabilities=e.CurriedTypes=e.CurriedType=e.ContentType=e.ARG_SHIFT=e.$v0=e.$t1=e.$t0=e.$sp=e.$s1=e.$s0=e.$ra=e.$pc=e.$fp=void 0,e.isLowLevelRegister=function(e){return e<=t},e.isMachineOp=function(e){return e>=0&&e<=15},e.isOp=function(e){return e>=16} +e.ContentType={Component:0,Helper:1,String:2,Empty:3,SafeString:4,Fragment:5,Node:6,Other:8},e.CurriedTypes=e.CurriedType={Component:0,Helper:1,Modifier:2},e.InternalComponentCapability=e.InternalComponentCapabilities={Empty:0,dynamicLayout:1,dynamicTag:2,prepareArgs:4,createArgs:8,attributeHook:16,elementHook:32,dynamicScope:64,createCaller:128,updateHook:256,createInstance:512,wrapped:1024,willDestroy:2048,hasSubOwner:4096},e.ARG_SHIFT=8,e.MAX_SIZE=2147483647,e.TYPE_SIZE=255,e.TYPE_MASK=255,e.OPERAND_LEN_MASK=768,e.MACHINE_MASK=1024,e.MachineOp={PushFrame:0,PopFrame:1,InvokeVirtual:2,InvokeStatic:3,Jump:4,Return:5,ReturnTo:6,Size:7},e.Op={Helper:16,SetNamedVariables:17,SetBlocks:18,SetVariable:19,SetBlock:20,GetVariable:21,GetProperty:22,GetBlock:23,SpreadBlock:24,HasBlock:25,HasBlockParams:26,Concat:27,Constant:28,ConstantReference:29,Primitive:30,PrimitiveReference:31,ReifyU32:32,Dup:33,Pop:34,Load:35,Fetch:36,RootScope:37,VirtualRootScope:38,ChildScope:39,PopScope:40,Text:41,Comment:42,AppendHTML:43,AppendSafeHTML:44,AppendDocumentFragment:45,AppendNode:46,AppendText:47,OpenElement:48,OpenDynamicElement:49,PushRemoteElement:50,StaticAttr:51,DynamicAttr:52,ComponentAttr:53,FlushElement:54,CloseElement:55,PopRemoteElement:56,Modifier:57,BindDynamicScope:58,PushDynamicScope:59,PopDynamicScope:60,CompileBlock:61,PushBlockScope:62,PushSymbolTable:63,InvokeYield:64,JumpIf:65,JumpUnless:66,JumpEq:67,AssertSame:68,Enter:69,Exit:70,ToBoolean:71,EnterList:72,ExitList:73,Iterate:74,Main:75,ContentType:76,Curry:77,PushComponentDefinition:78,PushDynamicComponentInstance:79,ResolveDynamicComponent:80,ResolveCurriedComponent:81,PushArgs:82,PushEmptyArgs:83,PopArgs:84,PrepareArgs:85,CaptureArgs:86,CreateComponent:87,RegisterComponentDestructor:88,PutComponentOperations:89,GetComponentSelf:90,GetComponentTagName:91,GetComponentLayout:92,BindEvalScope:93,SetupForEval:94,PopulateLayout:95,InvokeComponentLayout:96,BeginComponentTransaction:97,CommitComponentTransaction:98,DidCreateElement:99,DidRenderLayout:100,ResolveMaybeLocal:102,Debugger:103,Size:104,StaticComponentAttr:105,DynamicContentType:106,DynamicHelper:107,DynamicModifier:108,IfInline:109,Not:110,GetDynamicVar:111,Log:112} +e.$pc=0,e.$ra=1,e.$fp=2 +const t=e.$sp=3 +e.$s0=4,e.$s1=5,e.$t0=6,e.$t1=7,e.$v0=8 +e.MachineRegister=function(e){return e[e.pc=0]="pc",e[e.ra=1]="ra",e[e.fp=2]="fp",e[e.sp=3]="sp",e}({}) +e.SavedRegister=function(e){return e[e.s0=4]="s0",e[e.s1=5]="s1",e}({}),e.TemporaryRegister=function(e){return e[e.t0=6]="t0",e[e.t1=7]="t1",e}({})})),e("@glimmer/wire-format",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.WellKnownTagNames=e.WellKnownAttrNames=e.VariableResolutionContext=e.SexpOpcodes=void 0,e.getStringFromValue=function(e){return e},e.is=r,e.isArgument=function(e){return e[0]===t.StaticArg||e[0]===t.DynamicArg},e.isAttribute=function(e){return e[0]===t.StaticAttr||e[0]===t.DynamicAttr||e[0]===t.TrustingDynamicAttr||e[0]===t.ComponentAttr||e[0]===t.StaticComponentAttr||e[0]===t.TrustingComponentAttr||e[0]===t.AttrSplat||e[0]===t.Modifier},e.isGet=e.isFlushElement=void 0,e.isHelper=function(e){return Array.isArray(e)&&e[0]===t.Call},e.isStringLiteral=function(e){return"string"==typeof e} +const t=e.SexpOpcodes={Append:1,TrustingAppend:2,Comment:3,Modifier:4,StrictModifier:5,Block:6,StrictBlock:7,Component:8,OpenElement:10,OpenElementWithSplat:11,FlushElement:12,CloseElement:13,StaticAttr:14,DynamicAttr:15,ComponentAttr:16,AttrSplat:17,Yield:18,DynamicArg:20,StaticArg:21,TrustingDynamicAttr:22,TrustingComponentAttr:23,StaticComponentAttr:24,Debugger:26,Undefined:27,Call:28,Concat:29,GetSymbol:30,GetLexicalSymbol:32,GetStrictKeyword:31,GetFreeAsComponentOrHelperHead:35,GetFreeAsHelperHead:37,GetFreeAsModifierHead:38,GetFreeAsComponentHead:39,InElement:40,If:41,Each:42,Let:44,WithDynamicVars:45,InvokeComponent:46,HasBlock:48,HasBlockParams:49,Curry:50,Not:51,IfInline:52,GetDynamicVar:53,Log:54} +e.VariableResolutionContext={Strict:0,ResolveAsComponentOrHelperHead:1,ResolveAsHelperHead:5,ResolveAsModifierHead:6,ResolveAsComponentHead:7},e.WellKnownAttrNames={class:0,id:1,value:2,name:3,type:4,style:5,href:6},e.WellKnownTagNames={div:0,span:1,p:2,a:3} +function r(e){return function(t){return Array.isArray(t)&&t[0]===e}}e.isFlushElement=r(t.FlushElement) +e.isGet=r(t.GetSymbol)})),e("@simple-dom/document",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){const e=new d(null,9,"#document",null,"http://www.w3.org/1999/xhtml"),t=new d(e,10,"html",null,"http://www.w3.org/1999/xhtml"),r=new d(e,1,"HTML",null,"http://www.w3.org/1999/xhtml"),n=new d(e,1,"HEAD",null,"http://www.w3.org/1999/xhtml"),i=new d(e,1,"BODY",null,"http://www.w3.org/1999/xhtml") +return r.appendChild(n),r.appendChild(i),e.appendChild(t),e.appendChild(r),e} +const t=[] +function r(e,t,r){for(let n=0;n{} +function n(e){if("function"==typeof Promise){const t=Promise.resolve() +return()=>t.then(e)}if("function"==typeof MutationObserver){let t=0,r=new MutationObserver(e),n=document.createTextNode("") +return r.observe(n,{characterData:!0}),()=>(t=++t%2,n.data=""+t,t)}return()=>t(e,0)}function i(e){let t=r +return{setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),now:()=>Date.now(),next:n(e),clearNext:t}}const o=/\d+/ +function s(e){let t=typeof e +return"number"===t&&e==e||"string"===t&&o.test(e)}function a(e){return e.onError||e.onErrorTarget&&e.onErrorTarget[e.onErrorMethod]}function l(e,t,r){let n=-1 +for(let i=0,o=r.length;i=t[r]?i=r+6:o=r +return e>=t[i]?i+6:i}class d{constructor(e,t={},r={}){this._queueBeingFlushed=[],this.targetQueues=new Map,this.index=0,this._queue=[],this.name=e,this.options=t,this.globalOptions=r}stackFor(e){if(e0){let e=a(this.globalOptions) +o=e?this.invokeWithOnError:this.invoke +for(let s=this.index;s0&&this.flush(!0)}hasWork(){return this._queueBeingFlushed.length>0||this._queue.length>0}cancel({target:e,method:t}){let r=this._queue,n=this.targetQueues.get(e) +void 0!==n&&n.delete(t) +let i=l(e,t,r) +return i>-1?(r[i+1]=null,!0):(r=this._queueBeingFlushed,i=l(e,t,r),i>-1&&(r[i+1]=null,!0))}push(e,t,r,n){return this._queue.push(e,t,r,n),{queue:this,target:e,method:t}}pushUnique(e,t,r,n){let i=this.targetQueues.get(e) +void 0===i&&(i=new Map,this.targetQueues.set(e,i)) +let o=i.get(t) +if(void 0===o){let o=this._queue.push(e,t,r,n)-4 +i.set(t,o)}else{let e=this._queue +e[o+2]=r,e[o+3]=n}return{queue:this,target:e,method:t}}_getDebugInfo(e){if(e){return c(this._queue,4)}}invoke(e,t,r){void 0===r?t.call(e):t.apply(e,r)}invokeWithOnError(e,t,r,n,i){try{void 0===r?t.call(e):t.apply(e,r)}catch(o){n(o,i)}}}class h{constructor(e=[],t){this.queues={},this.queueNameIndex=0,this.queueNames=e,e.reduce((function(e,r){return e[r]=new d(r,t[r],t),e}),this.queues)}schedule(e,t,r,n,i,o){let s=this.queues[e] +if(void 0===s)throw new Error(`You attempted to schedule an action in a queue (${e}) that doesn't exist`) +if(null==r)throw new Error(`You attempted to schedule an action in a queue (${e}) for a method that doesn't exist`) +return this.queueNameIndex=0,i?s.pushUnique(t,r,n,o):s.push(t,r,n,o)}flush(e=!1){let t,r,n=this.queueNames.length +for(;this.queueNameIndexi){let t=n-i +e=new Array(t) +for(let r=0;r{F++,!1!==this._autorun&&(this._autorun=!1,this._autorunStack=null,this._end(!0))} +let r=this.options._buildPlatform||i +this._platform=r(this._boundAutorunEnd)}get counters(){return{begin:_,end:O,events:{begin:w,end:0},autoruns:{created:I,completed:F},run:E,join:C,defer:k,schedule:T,scheduleIterable:R,deferOnce:S,scheduleOnce:P,setTimeout:A,later:x,throttle:M,debounce:N,cancelTimers:D,cancel:j,loops:{total:L,nested:B}}}get defaultQueue(){return this._defaultQueue}begin(){_++ +let e,t=this.options,r=this.currentInstance +return!1!==this._autorun?(e=r,this._cancelAutorun()):(null!==r&&(B++,this.instanceStack.push(r)),L++,e=this.currentInstance=new h(this.queueNames,t),w++,this._trigger("begin",e,r)),this._onBegin(e,r),e}end(){O++,this._end(!1)}on(e,t){if("function"!=typeof t)throw new TypeError("Callback must be a function") +let r=this._eventCallbacks[e] +if(void 0===r)throw new TypeError(`Cannot on() event ${e} because it does not exist`) +r.push(t)}off(e,t){let r=this._eventCallbacks[e] +if(!e||void 0===r)throw new TypeError(`Cannot off() event ${e} because it does not exist`) +let n=!1 +if(t)for(let i=0;i0&&s(r[i-1])&&(n=parseInt(r.pop(),10)) +return[e,t,r,n]}(...arguments) +return this._later(e,t,r,n)}throttle(){M++ +let e,[t,r,n,i,o=!0]=y(...arguments),s=u(t,r,this._timers) +if(-1===s)e=this._later(t,r,o?g:n,i),o&&this._join(t,r,n) +else{e=this._timers[s+1] +let t=s+4 +this._timers[t]!==g&&(this._timers[t]=n)}return e}debounce(){N++ +let e,[t,r,n,i,o=!1]=y(...arguments),s=this._timers,a=u(t,r,s) +if(-1===a)e=this._later(t,r,o?g:n,i),o&&this._join(t,r,n) +else{let o=this._platform.now()+i,l=a+4 +s[l]===g&&(n=g),e=s[a+1] +let u=p(o,s) +if(a+6===u)s[a]=o,s[l]=n +else{let i=this._timers[a+5] +this._timers.splice(u,0,o,e,t,r,n,i),this._timers.splice(a,6)}0===a&&this._reinstallTimerTimeout()}return e}cancelTimers(){D++,this._clearTimerTimeout(),this._timers=[],this._cancelAutorun()}hasTimers(){return this._timers.length>0||this._autorun}cancel(e){if(j++,null==e)return!1 +let t=typeof e +return"number"===t?this._cancelLaterTimer(e):!("object"!==t||!e.queue||!e.method)&&e.queue.cancel(e)}ensureInstance(){this._ensureInstance()}getDebugInfo(){if(this.DEBUG)return{autorun:this._autorunStack,counters:this.counters,timers:c(this._timers,6,2),instanceStack:[this.currentInstance,...this.instanceStack].map((e=>e&&e._getDebugInfo(this.DEBUG)))}}_end(e){let t=this.currentInstance,r=null +if(null===t)throw new Error("end called without begin") +let n,i=!1 +try{n=t.flush(e)}finally{if(!i)if(i=!0,1===n){const e=this.queueNames[t.queueNameIndex] +this._scheduleAutorun(e)}else this.currentInstance=null,this.instanceStack.length>0&&(r=this.instanceStack.pop(),this.currentInstance=r),this._trigger("end",t,r),this._onEnd(t,r)}}_join(e,t,r){return null===this.currentInstance?this._run(e,t,r):void 0===e&&void 0===r?t():t.apply(e,r)}_run(e,t,r){let n=a(this.options) +if(this.begin(),n)try{return t.apply(e,r)}catch(i){n(i)}finally{this.end()}else try{return t.apply(e,r)}finally{this.end()}}_cancelAutorun(){this._autorun&&(this._platform.clearNext(),this._autorun=!1,this._autorunStack=null)}_later(e,t,r,n){let i=this.DEBUG?new Error:void 0,o=this._platform.now()+n,s=v++ +if(0===this._timers.length)this._timers.push(o,s,e,t,r,i),this._installTimerTimeout() +else{let n=p(o,this._timers) +this._timers.splice(n,0,o,s,e,t,r,i),this._reinstallTimerTimeout()}return s}_cancelLaterTimer(e){for(let t=1;t0&&(this.begin(),this._scheduleExpiredTimers(),this.end())}_scheduleExpiredTimers(){let e=this._timers,t=0,r=e.length,n=this._defaultQueue,i=this._platform.now() +for(;ti)break +let r=e[t+4] +if(r!==g){let i=e[t+2],o=e[t+3],s=e[t+5] +this.currentInstance.schedule(n,i,o,r,!1,s)}}e.splice(0,t),this._installTimerTimeout()}_reinstallTimerTimeout(){this._clearTimerTimeout(),this._installTimerTimeout()}_clearTimerTimeout(){null!==this._timerTimeoutId&&(this._platform.clearTimeout(this._timerTimeoutId),this._timerTimeoutId=null)}_installTimerTimeout(){if(0===this._timers.length)return +let e=this._timers[0],t=this._platform.now(),r=Math.max(0,e-t) +this._timerTimeoutId=this._platform.setTimeout(this._boundRunExpiredTimers,r)}_ensureInstance(){let e=this.currentInstance +return null===e&&(this._autorunStack=this.DEBUG?new Error:void 0,e=this.begin(),this._scheduleAutorun(this.queueNames[0])),e}_scheduleAutorun(e){I++ +const t=this._platform.next,r=this.options.flush +r?r(e,t):t(),this._autorun=!0}}U.Queue=d,U.buildPlatform=i,U.buildNext=n +e.default=U})),e("dag-map",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +var t=function(){function e(){this._vertices=new r}return e.prototype.add=function(e,t,r,n){if(!e)throw new Error("argument `key` is required") +var i=this._vertices,o=i.add(e) +if(o.val=t,r)if("string"==typeof r)i.addEdge(o,i.add(r)) +else for(var s=0;s0){var n="cycle detected: "+t +throw this.each(this.path,(function(e){n+=" <- "+e})),new Error(n)}}},e.prototype.reset=function(){this.stack.length=0,this.path.length=0,this.result.length=0 +for(var e=0,t=this.length;e=0){var a=this[s] +if(a.flag)continue +if(a.flag=!0,i.push(s),t===a.key)break +n.push(~s),this.pushIncoming(a)}else i.pop(),o.push(~s)}},e.prototype.pushIncoming=function(e){for(var t=this.stack,r=e.length-1;r>=0;r--){var n=e[r] +this[n].flag||t.push(n)}},e.prototype.each=function(e,t){for(var r=0,n=e.length;r=e.length?{done:!0}:{done:!1,value:e[t++]}} +throw new TypeError("Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return t=e[Symbol.iterator](),t.next.bind(t)},e.createSuper=function(e){return function(){let t,i=r(e) +if(n){let e=r(this).constructor +t=Reflect.construct(i,arguments,e)}else t=i.apply(this,arguments) +return l(this,t)}},e.inheritsLoose=function(e,r){0 +e.prototype=Object.create(null===r?null:r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),null!==r&&t(e,r)},e.objectDestructuringEmpty=function(e){0},e.possibleConstructorReturn=l,e.taggedTemplateLiteralLoose=function(e,t){t||(t=e.slice(0)) +return e.raw=t,e},e.wrapNativeSuper=function(e){if(i.has(e))return i.get(e) +function r(){}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),i.set(e,r),t(r,e)} +const t=Object.setPrototypeOf,r=Object.getPrototypeOf,n="object"==typeof Reflect&&"function"==typeof Reflect.construct,i=new Map +let o=0 +function s(e,t){for(let r=0;re.length)&&(t=e.length) +let r=new Array(t) +for(let n=0;n(te.__emberTemplateCompiler&&(oe.precompile=ie.precompile=te.__emberTemplateCompiler.precompile,oe.compile=ie.compile=te.compileTemplate,Object.defineProperty(re,"HTMLBars",{configurable:!0,writable:!0,enumerable:!0,value:oe}),Object.defineProperty(re,"Handlebars",{configurable:!0,writable:!0,enumerable:!0,value:ie})),"Handlebars"===e?ie:oe)})}function ae(e){Object.defineProperty(re,e,{configurable:!0,enumerable:!0,get(){if(ee._impl){let{Test:t,Adapter:r,QUnitAdapter:n,setupForTesting:i}=ee._impl +return t.Adapter=r,t.QUnitAdapter=n,Object.defineProperty(re,"Test",{configurable:!0,writable:!0,enumerable:!0,value:t}),Object.defineProperty(re,"setupForTesting",{configurable:!0,writable:!0,enumerable:!0,value:i}),"Test"===e?t:i}}})}se("HTMLBars"),se("Handlebars"),ae("Test"),ae("setupForTesting"),(0,S.runLoadHooks)("Ember") +e.default=re})),e("ember/version",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default="5.10.0-alpha.1+a4359032"})) +e("route-recognizer",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +var t=Object.create +function r(){var e=t(null) +return e.__=void 0,delete e.__,e}var n=function(e,t,r){this.path=e,this.matcher=t,this.delegate=r} +n.prototype.to=function(e,t){var r=this.delegate +if(r&&r.willAddRoute&&(e=r.willAddRoute(this.matcher.target,e)),this.matcher.add(this.path,e),t){if(0===t.length)throw new Error("You must have an argument in the function passed to `to`") +this.matcher.addChild(this.path,e,t,this.delegate)}} +var i=function(e){this.routes=r(),this.children=r(),this.target=e} +function o(e,t,r){return function(i,s){var a=e+i +if(!s)return new n(a,t,r) +s(o(a,t,r))}}function s(e,t,r){for(var n=0,i=0;i0&&47===t.charCodeAt(0)&&(t=t.substr(1)) +for(var n=t.split("/"),i=void 0,o=void 0,s=0;s2&&"[]"===o.slice(s-2)&&(a=!0,r[o=o.slice(0,s-2)]||(r[o]=[])),l=i[1]?S(i[1]):""),a?r[o].push(l):r[o]=l}return r},P.prototype.recognize=function(e){var t,r=[this.rootState],n={},i=!1,o=e.indexOf("#");-1!==o&&(e=e.substr(0,o)) +var s=e.indexOf("?") +if(-1!==s){var a=e.substr(s+1,e.length) +e=e.substr(0,s),n=this.parseQueryString(a)}"/"!==e.charAt(0)&&(e="/"+e) +var u=e +P.ENCODE_AND_DECODE_PATH_SEGMENTS?e=l(e):(e=decodeURI(e),u=decodeURI(u)) +var c=e.length +c>1&&"/"===e.charAt(c-1)&&(e=e.substr(0,c-1),u=u.substr(0,u.length-1),i=!0) +for(var p=0;p0){let i=e[n-1] +if(function(e){if(e&&"object"==typeof e){let t=e +return"queryParams"in t&&Object.keys(t.queryParams).every((e=>"string"==typeof e))}return!1}(i))return r=i.queryParams,t=o.call(e,0,n-1),[t,r]}return[e,null]}function u(e){for(let t in e){let r=e[t] +if("number"==typeof r)e[t]=""+r +else if(Array.isArray(r))for(let e=0,t=r.length;e{throw this.router.transitionDidError(e,this)}),m("Handle Abort"))}else this.promise=r.Promise.resolve(this[g]),this[b]={}}then(e,t,r){return this.promise.then(e,t,r)}catch(e,t){return this.promise.catch(e,t)}finally(e,t){return this.promise.finally(e,t)}abort(){this.rollback() +let e=new v(this.router,void 0,void 0,void 0) +return e.to=this.from,e.from=this.from,e.isAborted=!0,this.router.routeWillChange(e),this.router.routeDidChange(e),this}rollback(){this.isAborted||(c(this.router,this.sequence,this.targetName+": transition was aborted"),void 0!==this.intent&&null!==this.intent&&(this.intent.preTransitionState=this.router.state),this.isAborted=!0,this.isActive=!1,this.router.activeTransition=void 0)}redirect(e){this.rollback(),this.router.routeWillChange(e)}retry(){this.abort() +let e=this.router.transitionByIntent(this.intent,!1) +return null!==this.urlMethod&&e.method(this.urlMethod),e}method(e){return this.urlMethod=e,this}send(e=!1,t,r,n,i){this.trigger(e,t,r,n,i)}trigger(e=!1,t,...r){"string"==typeof e&&(t=e,e=!1),this.router.triggerEvent(this[g].routeInfos.slice(0,this.resolveIndex+1),e,t,r)}followRedirects(){let e=this.router +return this.promise.catch((function(t){return e.activeTransition?e.activeTransition.followRedirects():r.Promise.reject(t)}))}toString(){return"Transition (sequence "+this.sequence+")"}log(e){c(this.router,this.sequence,e)}}function _(e){return c(e.router,e.sequence,"detected abort."),n()}function O(e){return"object"==typeof e&&e instanceof v&&e.isTransition}e.InternalTransition=v +let w=new WeakMap +function E(e,t={},r={includeAttributes:!1,localizeMapUpdates:!1}){const n=new WeakMap +return e.map(((i,o)=>{let{name:s,params:a,paramNames:l,context:u,route:c}=i,p=i +if(w.has(p)&&r.includeAttributes){let e=w.get(p) +e=function(e,t){let r={get metadata(){return k(e)}} +if(!Object.isExtensible(t)||t.hasOwnProperty("metadata"))return Object.freeze(Object.assign({},t,r)) +return Object.assign(t,r)}(c,e) +let t=C(e,u) +return n.set(p,e),r.localizeMapUpdates||w.set(p,t),t}const d=r.localizeMapUpdates?n:w +let h={find(t,r){let n,i=[] +3===t.length&&(i=e.map((e=>d.get(e)))) +for(let o=0;e.length>o;o++)if(n=d.get(e[o]),t.call(r,n,o,i))return n},get name(){return s},get paramNames(){return l},get metadata(){return k(i.route)},get parent(){let t=e[o-1] +return void 0===t?null:d.get(t)},get child(){let t=e[o+1] +return void 0===t?null:d.get(t)},get localName(){let e=this.name.split(".") +return e[e.length-1]},get params(){return a},get queryParams(){return t}} +return r.includeAttributes&&(h=C(h,u)),n.set(i,h),r.localizeMapUpdates||w.set(i,h),h}))}function C(e,t){let r={get attributes(){return t}} +return!Object.isExtensible(e)||e.hasOwnProperty("attributes")?Object.freeze(Object.assign({},e,r)):Object.assign(e,r)}function k(e){return null!=e&&void 0!==e.buildRouteInfoMetadata?e.buildRouteInfoMetadata():null}class T{constructor(e,t,r,n){this._routePromise=void 0,this._route=null,this.params={},this.isResolved=!1,this.name=t,this.paramNames=r,this.router=e,n&&this._processRoute(n)}getModel(e){return r.Promise.resolve(this.context)}serialize(e){return this.params||{}}resolve(e){return r.Promise.resolve(this.routePromise).then((t=>(i(e),t))).then((()=>this.runBeforeModelHook(e))).then((()=>i(e))).then((()=>this.getModel(e))).then((t=>(i(e),t))).then((t=>this.runAfterModelHook(e,t))).then((t=>this.becomeResolved(e,t)))}becomeResolved(e,t){let r,n=this.serialize(t) +e&&(this.stashResolvedModel(e,t),e[b]=e[b]||{},e[b][this.name]=n) +let i=t===this.context +!("context"in this)&&i||(r=t) +let o=w.get(this),s=new R(this.router,this.name,this.paramNames,n,this.route,r) +return void 0!==o&&w.set(s,o),s}shouldSupersede(e){if(!e)return!0 +let t=e.context===this.context +return e.name!==this.name||"context"in this&&!t||this.hasOwnProperty("params")&&!function(e,t){if(e===t)return!0 +if(!e||!t)return!1 +for(let r in e)if(e.hasOwnProperty(r)&&e[r]!==t[r])return!1 +return!0}(this.params,e.params)}get route(){return null!==this._route?this._route:this.fetchRoute()}set route(e){this._route=e}get routePromise(){return this._routePromise||this.fetchRoute(),this._routePromise}set routePromise(e){this._routePromise=e}log(e,t){e.log&&e.log(this.name+": "+t)}updateRoute(e){return e._internalName=this.name,this.route=e}runBeforeModelHook(e){let t +return e.trigger&&e.trigger(!0,"willResolveModel",e,this.route),this.route&&void 0!==this.route.beforeModel&&(t=this.route.beforeModel(e)),O(t)&&(t=null),r.Promise.resolve(t)}runAfterModelHook(e,t){let n,i=this.name +var o +return this.stashResolvedModel(e,t),void 0!==this.route&&void 0!==this.route.afterModel&&(n=this.route.afterModel(t,e)),n=O(o=n)?null:o,r.Promise.resolve(n).then((()=>e.resolvedModels[i]))}stashResolvedModel(e,t){e.resolvedModels=e.resolvedModels||{},e.resolvedModels[this.name]=t}fetchRoute(){let e=this.router.getRoute(this.name) +return this._processRoute(e)}_processRoute(e){return this.routePromise=r.Promise.resolve(e),null!==(t=e)&&"object"==typeof t&&"function"==typeof t.then?(this.routePromise=this.routePromise.then((e=>this.updateRoute(e))),this.route=void 0):e?this.updateRoute(e):void 0 +var t}}e.InternalRouteInfo=T +class R extends T{constructor(e,t,r,n,i,o){super(e,t,r,i),this.params=n,this.isResolved=!0,this.context=o}resolve(e){return e&&e.resolvedModels&&(e.resolvedModels[this.name]=this.context),r.Promise.resolve(this)}}class S extends T{constructor(e,t,r,n,i){super(e,t,r,i),this.params={},n&&(this.params=n)}getModel(e){let t=this.params +e&&e[y]&&(t={},a(t,this.params),t.queryParams=e[y]) +let n,i=this.route +return i.deserialize?n=i.deserialize(t,e):i.model&&(n=i.model(t,e)),n&&O(n)&&(n=void 0),r.Promise.resolve(n)}}class P extends T{constructor(e,t,r,n){super(e,t,r),this.context=n,this.serializer=this.router.getSerializer(t)}getModel(e){return void 0!==this.router.log&&this.router.log(this.name+": resolving provided model"),super.getModel(e)}serialize(e){let{paramNames:t,context:r}=this +e||(e=r) +let n={} +if(p(e))return n[t[0]]=e,n +if(this.serializer)return this.serializer.call(null,e,t) +if(void 0!==this.route&&this.route.serialize)return this.route.serialize(e,t) +if(1!==t.length)return +let i=t[0] +return/_id$/.test(i)?n[i]=e.id:n[i]=e,n}}class A{constructor(e,t={}){this.router=e,this.data=t}}function x(e,t,r){let n=e.routeInfos,i=t.resolveIndex>=n.length?n.length-1:t.resolveIndex,o=t.isAborted +throw new j(r,e.routeInfos[i].route,o,e)}function M(e,t){if(t.resolveIndex===e.routeInfos.length)return +let r=e.routeInfos[t.resolveIndex],n=N.bind(null,e,t) +return r.resolve(t).then(n,null,e.promiseLabel("Proceed"))}function N(e,t,r){let n=e.routeInfos[t.resolveIndex].isResolved +if(e.routeInfos[t.resolveIndex++]=r,!n){let{route:e}=r +void 0!==e&&e.redirect&&e.redirect(r.context,t)}return i(t),M(e,t)}class D{constructor(){this.routeInfos=[],this.queryParams={},this.params={}}promiseLabel(e){let t="" +return d(this.routeInfos,(function(e){return""!==t&&(t+="."),t+=e.name,!0})),m("'"+t+"': "+e)}resolve(e){let t=this.params +d(this.routeInfos,(e=>(t[e.name]=e.params||{},!0))),e.resolveIndex=0 +let n=M.bind(null,this,e),i=x.bind(null,this,e) +return r.Promise.resolve(null,this.promiseLabel("Start transition")).then(n,null,this.promiseLabel("Resolve route")).catch(i,this.promiseLabel("Handle error")).then((()=>this))}}e.TransitionState=D +class j{constructor(e,t,r,n){this.error=e,this.route=t,this.wasAborted=r,this.state=n}}e.TransitionError=j +class I extends A{constructor(e,t,r,n=[],i={},o){super(e,o),this.preTransitionState=void 0,this.name=t,this.pivotHandler=r,this.contexts=n,this.queryParams=i}applyToState(e,t){let r=this.router.recognizer.handlersFor(this.name),n=r[r.length-1].handler +return this.applyToHandlers(e,r,n,t,!1)}applyToHandlers(e,t,r,n,i){let o,s,l=new D,u=this.contexts.slice(0),c=t.length +if(this.pivotHandler)for(o=0,s=t.length;o=0;--o){let s=t[o],a=s.handler,p=e.routeInfos[o],d=null +if(d=s.names.length>0?o>=c?this.createParamHandlerInfo(a,s.names,u,p):this.getHandlerInfoForDynamicSegment(a,s.names,u,p,r,o):this.createParamHandlerInfo(a,s.names,u,p),i){d=d.becomeResolved(null,d.context) +let e=p&&p.context +s.names.length>0&&void 0!==p.context&&d.context===e&&(d.params=p&&p.params),d.context=e}let h=p;(o>=c||d.shouldSupersede(p))&&(c=Math.min(o,c),h=d),n&&!i&&(h=h.becomeResolved(null,h.context)),l.routeInfos.unshift(h)}if(u.length>0)throw new Error("More context objects were passed than there are dynamic segments for the route: "+r) +return n||this.invalidateChildren(l.routeInfos,c),a(l.queryParams,this.queryParams||{}),n&&e.queryParams&&a(l.queryParams,e.queryParams),l}invalidateChildren(e,t){for(let r=t,n=e.length;r0){if(s=r[r.length-1],p(s))return this.createParamHandlerInfo(e,t,r,n) +r.pop()}else{if(n&&n.name===e)return n +if(!this.preTransitionState)return n +{let e=this.preTransitionState.routeInfos[o] +s=null==e?void 0:e.context}}return new P(this.router,e,t,s)}createParamHandlerInfo(e,t,r,n){let i={},o=t.length,s=[] +for(;o--;){let a=n&&e===n.name&&n.params||{},l=r[r.length-1],u=t[o] +p(l)?i[u]=""+r.pop():a.hasOwnProperty(u)?i[u]=a[u]:s.push(u)}if(s.length>0)throw new Error(`You didn't provide enough string/numeric parameters to satisfy all of the dynamic segments for route ${e}. Missing params: ${s}`) +return new S(this.router,e,t,i)}}const F=function(){function e(t){let r=Error.call(this,t) +this.name="UnrecognizedURLError",this.message=t||"UnrecognizedURL",Error.captureStackTrace?Error.captureStackTrace(this,e):this.stack=r.stack}return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}() +class L extends A{constructor(e,t,r){super(e,r),this.url=t,this.preTransitionState=void 0}applyToState(e){let t,r,n=new D,i=this.router.recognizer.recognize(this.url) +if(!i)throw new F(this.url) +let o=!1,s=this.url +function l(e){if(e&&e.inaccessibleByURL)throw new F(s) +return e}for(t=0,r=i.length;t=0&&n;--r){let i=t[r],o=i.handler +e.add(t,{as:o}),n="/"===i.path||""===i.path||".index"===o.slice(-6)}}))}hasRoute(e){return this.recognizer.hasRoute(e)}queryParamsTransition(e,t,r,n){if(this.fireQueryParamDidChange(n,e),!t&&this.activeTransition)return this.activeTransition +{let e=new v(this,void 0,void 0) +return e.queryParamsOnly=!0,r.queryParams=this.finalizeQueryParamChange(n.routeInfos,n.queryParams,e),e[y]=n.queryParams,this.toReadOnlyInfos(e,n),this.routeWillChange(e),e.promise=e.promise.then((t=>(e.isAborted||(this._updateURL(e,r),this.didTransition(this.currentRouteInfos),this.toInfos(e,n.routeInfos,!0),this.routeDidChange(e)),t)),null,m("Transition complete")),e}}transitionByIntent(e,t){try{return this.getTransitionByIntent(e,t)}catch(r){return new v(this,e,void 0,r,void 0)}}recognize(e){let t=new L(this,e),r=this.generateNewState(t) +if(null===r)return r +let n=E(r.routeInfos,r.queryParams,{includeAttributes:!1,localizeMapUpdates:!0}) +return n[n.length-1]}recognizeAndLoad(e){let t=new L(this,e),n=this.generateNewState(t) +if(null===n)return r.Promise.reject(`URL ${e} was not recognized`) +let i=new v(this,t,n,void 0) +return i.then((()=>{let e=E(n.routeInfos,i[y],{includeAttributes:!0,localizeMapUpdates:!1}) +return e[e.length-1]}))}generateNewState(e){try{return e.applyToState(this.state,!1)}catch(t){return null}}getTransitionByIntent(e,t){let r,n=!!this.activeTransition,i=n?this.activeTransition[g]:this.state,o=e.applyToState(i,t),s=h(i.queryParams,o.queryParams) +if(B(o.routeInfos,i.routeInfos)){if(s){let e=this.queryParamsTransition(s,n,i,o) +return e.queryParamsOnly=!0,e}return this.activeTransition||new v(this,void 0,void 0)}if(t){let e=new v(this,void 0,o) +return e.isIntermediate=!0,this.toReadOnlyInfos(e,o),this.setupContexts(o,e),this.routeWillChange(e),this.activeTransition}return r=new v(this,e,o,void 0,this.activeTransition),function(e,t){if(e.length!==t.length)return!1 +for(let r=0,n=e.length;rthis.finalizeTransition(r,e)),null,m("Settle transition promise when transition is finalized")),n||this.notifyExistingHandlers(o,r),this.fireQueryParamDidChange(o,s),r}doTransition(e,t=[],r=!1){let n,i=t[t.length-1],o={} +if(i&&Object.prototype.hasOwnProperty.call(i,"queryParams")&&(o=t.pop().queryParams),void 0===e){c(this,"Updating query params") +let{routeInfos:e}=this.state +n=new I(this,e[e.length-1].name,void 0,[],o)}else"/"===e.charAt(0)?(c(this,"Attempting URL transition to "+e),n=new L(this,e)):(c(this,"Attempting transition to "+e),n=new I(this,e,void 0,t,o)) +return this.transitionByIntent(n,r)}finalizeTransition(e,t){try{c(e.router,e.sequence,"Resolved all models on destination route; finalizing transition.") +let n=t.routeInfos +return this.setupContexts(t,e),e.isAborted?(this.state.routeInfos=this.currentRouteInfos,r.Promise.reject(_(e))):(this._updateURL(e,t),e.isActive=!1,this.activeTransition=void 0,this.triggerEvent(this.currentRouteInfos,!0,"didTransition",[]),this.didTransition(this.currentRouteInfos),this.toInfos(e,t.routeInfos,!0),this.routeDidChange(e),c(this,e.sequence,"TRANSITION COMPLETE."),n[n.length-1].route)}catch(i){if("object"!=typeof(n=i)||null===n||"TRANSITION_ABORTED"!==n.code){let t=e[g].routeInfos +e.trigger(!0,"error",i,e,t[t.length-1].route),e.abort()}throw i}var n}setupContexts(e,t){let r,n,i,o=this.partitionRoutes(this.state,e) +for(r=0,n=o.exited.length;r=0;--s){let e=n[s] +a(o,e.params),e.route.inaccessibleByURL&&(r=null)}if(r){o.queryParams=e._visibleQueryParams||t.queryParams +let n=this.recognizer.generate(i,o),s=e.isCausedByInitialTransition,a="replace"===r&&!e.isCausedByAbortingTransition,l=e.queryParamsOnly&&"replace"===r,u="replace"===r&&e.isCausedByAbortingReplaceTransition +s||a||l||u?this.replaceURL(n):this.updateURL(n)}}finalizeQueryParamChange(e,t,r){for(let o in t)t.hasOwnProperty(o)&&null===t[o]&&delete t[o] +let n=[] +this.triggerEvent(e,!0,"finalizeQueryParamChange",[t,n,r]),r&&(r._visibleQueryParams={}) +let i={} +for(let o=0,s=n.length;o0){let r=E(t,Object.assign({},this._lastQueryParams),{includeAttributes:!0,localizeMapUpdates:!1}) +e.from=r[r.length-1]||null}}toInfos(e,t,r=!1){if(void 0!==e&&t.length>0){let n=E(t,Object.assign({},e[y]),{includeAttributes:r,localizeMapUpdates:!1}) +e.to=n[n.length-1]||null}}notifyExistingHandlers(e,t){let r,n,i,o,s=this.state.routeInfos +for(n=s.length,r=0;r{for(let e=0;e{t===r?g(e,r):f(e,r)}),(t=>b(e,t)))}(e,t):"function"==typeof r?function(e,t,r){i.async((e=>{let n=!1,i=function(e,t,r,n){try{e.call(t,r,n)}catch(i){return i}}(r,t,(r=>{n||(n=!0,t===r?g(e,r):f(e,r))}),(t=>{n||(n=!0,b(e,t))}),e._label) +!n&&i&&(n=!0,b(e,i))}),e)}(e,t,r):g(e,t)}function f(e,t){if(e===t)g(e,t) +else if(function(e){let t=typeof e +return null!==e&&("object"===t||"function"===t)}(t)){let n +try{n=t.then}catch(r){return void b(e,r)}h(e,t,n)}else g(e,t)}function m(e){e._onError&&e._onError(e._result),v(e)}function g(e,t){e._state===c&&(e._result=t,e._state=p,0===e._subscribers.length?i.instrument&&a("fulfilled",e):i.async(v,e))}function b(e,t){e._state===c&&(e._state=d,e._result=t,i.async(m,e))}function y(e,t,r,n){let o=e._subscribers,s=o.length +e._onError=null,o[s]=t,o[s+p]=r,o[s+d]=n,0===s&&e._state&&i.async(v,e)}function v(e){let t=e._subscribers,r=e._state +if(i.instrument&&a(r===p?"fulfilled":"rejected",e),0===t.length)return +let n,o,s=e._result +for(let i=0;i_(o,s,r,l)))}return s}class w{constructor(e,t,r,n){this._instanceConstructor=e,this.promise=new e(u,n),this._abortOnReject=r,this._isUsingOwnPromise=e===R,this._isUsingOwnResolve=e.resolve===l,this._init(...arguments)}_init(e,t){let r=t.length||0 +this.length=r,this._remaining=r,this._result=new Array(r),this._enumerate(t)}_enumerate(e){let t=this.length,r=this.promise +for(let n=0;r._state===c&&nt(e))),t,r)}else this._willSettleAt(n.resolve(e),t,r)}_eachEntry(e,t,r){null!==e&&"object"==typeof e?this._settleMaybeThenable(e,t,r):this._setResultAt(p,t,e,r)}_settledAt(e,t,r,n){let i=this.promise +i._state===c&&(this._abortOnReject&&e===d?b(i,r):(this._setResultAt(e,t,r,n),this._checkFullfillment()))}_setResultAt(e,t,r,n){this._remaining--,this._result[t]=r}_willSettleAt(e,t,r){y(e,void 0,(e=>this._settledAt(p,t,e,r)),(e=>this._settledAt(d,t,e,r)))}}function E(e,t,r){this._remaining--,this._result[t]=e===p?{state:"fulfilled",value:r}:{state:"rejected",reason:r}}const C="rsvp_"+Date.now()+"-" +let k=0 +let T=class e{constructor(t,r){this._id=k++,this._label=r,this._state=void 0,this._result=void 0,this._subscribers=[],i.instrument&&a("created",this),u!==t&&("function"!=typeof t&&function(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}(),this instanceof e?function(e,t){let r=!1 +try{t((t=>{r||(r=!0,f(e,t))}),(t=>{r||(r=!0,b(e,t))}))}catch(n){b(e,n)}}(this,t):function(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}())}_onError(e){i.after((()=>{this._onError&&i.trigger("error",e,this._label)}))}catch(e,t){return this.then(void 0,e,t)}finally(e,t){let r=this,n=r.constructor +return"function"==typeof e?r.then((t=>n.resolve(e()).then((()=>t))),(t=>n.resolve(e()).then((()=>{throw t})))):r.then(e,e)}} +T.cast=l,T.all=function(e,t){return Array.isArray(e)?new w(this,e,!0,t).promise:this.reject(new TypeError("Promise.all must be called with an array"),t)},T.race=function(e,t){let r=this,n=new r(u,t) +if(!Array.isArray(e))return b(n,new TypeError("Promise.race must be called with an array")),n +for(let i=0;n._state===c&&if(n,e)),(e=>b(n,e))) +return n},T.resolve=l,T.reject=function(e,t){let r=new this(u,t) +return b(r,e),r},T.prototype._guidKey=C,T.prototype.then=O +var R=e.Promise=T +function S(e,t){return{then:(r,n)=>e.call(t,r,n)}}function P(e,t){let r=function(){let r=arguments.length,n=new Array(r+1),i=!1 +for(let e=0;eA(e,t,r,n)))}(o,n,e,this):A(o,n,e,this)} +return r.__proto__=e,r}function A(e,t,r,n){try{r.apply(n,t)}catch(i){b(e,i)}return e}function x(e,t){return R.all(e,t)}class M extends w{constructor(e,t,r){super(e,t,!1,r)}}function N(e,t){return Array.isArray(e)?new M(R,e,t).promise:R.reject(new TypeError("Promise.allSettled must be called with an array"),t)}function D(e,t){return R.race(e,t)}M.prototype._setResultAt=E +class j extends w{constructor(e,t,r=!0,n){super(e,t,r,n)}_init(e,t){this._result={},this._enumerate(t)}_enumerate(e){let t,r,n=Object.keys(e),i=n.length,o=this.promise +this._remaining=i +for(let s=0;o._state===c&&s{throw e})),e}function U(e){let t={resolve:void 0,reject:void 0} +return t.promise=new R(((e,r)=>{t.resolve=e,t.reject=r}),e),t}F.prototype._setResultAt=E +class H extends w{constructor(e,t,r,n){super(e,t,!0,n,r)}_init(e,t,r,n,i){let o=t.length||0 +this.length=o,this._remaining=o,this._result=new Array(o),this._mapFn=i,this._enumerate(t)}_setResultAt(e,t,r,n){if(n)try{this._eachEntry(this._mapFn(r,t),t,!1)}catch(i){this._settledAt(d,t,i,!1)}else this._remaining--,this._result[t]=r}}function $(e,t,r){return"function"!=typeof t?R.reject(new TypeError("map expects a function as a second argument"),r):R.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("map must be called with an array") +return new H(R,e,t,r).promise}))}function V(e,t){return R.resolve(e,t)}function z(e,t){return R.reject(e,t)}const q={} +class G extends H{_checkFullfillment(){if(0===this._remaining&&null!==this._result){let e=this._result.filter((e=>e!==q)) +g(this.promise,e),this._result=null}}_setResultAt(e,t,r,n){if(n){this._result[t]=r +let e,n=!0 +try{e=this._mapFn(r,t)}catch(i){n=!1,this._settledAt(d,t,i,!1)}n&&this._eachEntry(e,t,!1)}else this._remaining--,r||(this._result[t]=q)}}function W(e,t,r){return"function"!=typeof t?R.reject(new TypeError("filter expects function as a second argument"),r):R.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("filter must be called with an array") +return new G(R,e,t,r).promise}))}let Y,Q=0 +function K(e,t){ne[Q]=e,ne[Q+1]=t,Q+=2,2===Q&&oe()}const J="undefined"!=typeof window?window:void 0,X=J||{},Z=X.MutationObserver||X.WebKitMutationObserver,ee="undefined"==typeof self&&"undefined"!=typeof process&&"[object process]"==={}.toString.call(process),te="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel +function re(){return()=>setTimeout(ie,1)}const ne=new Array(1e3) +function ie(){for(let e=0;ee(ie)}():Z?function(){let e=0,t=new Z(ie),r=document.createTextNode("") +return t.observe(r,{characterData:!0}),()=>r.data=e=++e%2}():te?function(){let e=new MessageChannel +return e.port1.onmessage=ie,()=>e.port2.postMessage(0)}():void 0===J&&"function"==typeof t?function(){try{const e=Function("return this")().require("vertx") +return Y=e.runOnLoop||e.runOnContext,void 0!==Y?function(){Y(ie)}:re()}catch(e){return re()}}():re(),i.async=K,i.after=e=>setTimeout(e,0) +const se=e.cast=V,ae=(e,t)=>i.async(e,t) +function le(){i.on(...arguments)}function ue(){i.off(...arguments)}if(e.async=ae,"undefined"!=typeof window&&"object"==typeof window.__PROMISE_INSTRUMENTATION__){let e=window.__PROMISE_INSTRUMENTATION__ +o("instrument",!0) +for(let t in e)e.hasOwnProperty(t)&&le(t,e[t])}e.default={asap:K,cast:se,Promise:R,EventTarget:n,all:x,allSettled:N,race:D,hash:I,hashSettled:L,rethrow:B,defer:U,denodeify:P,configure:o,on:le,off:ue,resolve:V,reject:z,map:$,async:ae,filter:W}})),"object"==typeof module&&"function"==typeof module.require&&(module.exports=t("ember").default)}(),"undefined"==typeof FastBoot){var preferNative=!1;(function(e){define("fetch",["exports","ember","rsvp"],(function(t,r,n){"use strict" +var i="default"in r?r.default:r,o=("default"in n?n.default:n).Promise,s=["FormData","FileReader","Blob","URLSearchParams","Symbol","ArrayBuffer"],a=s +preferNative&&(a=s.concat(["fetch","Headers","Request","Response","AbortController"])),a.forEach((function(r){e[r]&&Object.defineProperty(t,r,{configurable:!0,get:function(){return e[r]},set:function(t){e[r]=t}})})) +var l=t,u=t;(function(){class e{constructor(){Object.defineProperty(this,"listeners",{value:{},writable:!0,configurable:!0})}addEventListener(e,t,r){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push({callback:t,options:r})}removeEventListener(e,t){if(!(e in this.listeners))return +const r=this.listeners[e] +for(let n=0,i=r.length;n{throw r}))}i.options&&i.options.once&&this.removeEventListener(e.type,i.callback)}return!e.defaultPrevented}}class t extends e{constructor(){super(),this.listeners||e.call(this),Object.defineProperty(this,"aborted",{value:!1,writable:!0,configurable:!0}),Object.defineProperty(this,"onabort",{value:null,writable:!0,configurable:!0}),Object.defineProperty(this,"reason",{value:void 0,writable:!0,configurable:!0})}toString(){return"[object AbortSignal]"}dispatchEvent(e){"abort"===e.type&&(this.aborted=!0,"function"==typeof this.onabort&&this.onabort.call(this,e)),super.dispatchEvent(e)}}class r{constructor(){Object.defineProperty(this,"signal",{value:new t,writable:!0,configurable:!0})}abort(e){let t +try{t=new Event("abort")}catch(n){"undefined"!=typeof document?document.createEvent?(t=document.createEvent("Event"),t.initEvent("abort",!1,!1)):(t=document.createEventObject(),t.type="abort"):t={type:"abort",bubbles:!1,cancelable:!1}}let r=e +if(void 0===r)if("undefined"==typeof document)r=new Error("This operation was aborted"),r.name="AbortError" +else try{r=new DOMException("signal is aborted without reason")}catch(i){r=new Error("This operation was aborted"),r.name="AbortError"}this.signal.reason=r,this.signal.dispatchEvent(t)}toString(){return"[object AbortController]"}}"undefined"!=typeof Symbol&&Symbol.toStringTag&&(r.prototype[Symbol.toStringTag]="AbortController",t.prototype[Symbol.toStringTag]="AbortSignal"),function(e){(function(e){return e.__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL?(console.log("__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL=true is set, will force install polyfill"),!0):"function"==typeof e.Request&&!e.Request.prototype.hasOwnProperty("signal")||!e.AbortController})(e)&&(e.AbortController=r,e.AbortSignal=t)}(void 0!==u?u:global)})();(function(e){var t=void 0!==l&&l||void 0!==u&&u||"undefined"!=typeof global&&global||{},r="URLSearchParams"in t,n="Symbol"in t&&"iterator"in Symbol,i="FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(e){return!1}}(),s="FormData"in t,a="ArrayBuffer"in t +if(a)var c=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],p=ArrayBuffer.isView||function(e){return e&&c.indexOf(Object.prototype.toString.call(e))>-1} +function d(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(e)||""===e)throw new TypeError('Invalid character in header field name: "'+e+'"') +return e.toLowerCase()}function h(e){return"string"!=typeof e&&(e=String(e)),e}function f(e){var t={next:function(){var t=e.shift() +return{done:void 0===t,value:t}}} +return n&&(t[Symbol.iterator]=function(){return t}),t}function m(e){this.map={},e instanceof m?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){if(2!=e.length)throw new TypeError("Headers constructor: expected name/value pair to be length 2, found"+e.length) +this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function g(e){if(!e._noBody)return e.bodyUsed?o.reject(new TypeError("Already read")):void(e.bodyUsed=!0)}function b(e){return new o((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function y(e){var t=new FileReader,r=b(t) +return t.readAsArrayBuffer(e),r}function v(e){if(e.slice)return e.slice(0) +var t=new Uint8Array(e.byteLength) +return t.set(new Uint8Array(e)),t.buffer}function _(){return this.bodyUsed=!1,this._initBody=function(e){var t +this.bodyUsed=this.bodyUsed,this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:i&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:s&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():a&&i&&((t=e)&&DataView.prototype.isPrototypeOf(t))?(this._bodyArrayBuffer=v(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):a&&(ArrayBuffer.prototype.isPrototypeOf(e)||p(e))?this._bodyArrayBuffer=v(e):this._bodyText=e=Object.prototype.toString.call(e):(this._noBody=!0,this._bodyText=""),this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var e=g(this) +if(e)return e +if(this._bodyBlob)return o.resolve(this._bodyBlob) +if(this._bodyArrayBuffer)return o.resolve(new Blob([this._bodyArrayBuffer])) +if(this._bodyFormData)throw new Error("could not read FormData body as blob") +return o.resolve(new Blob([this._bodyText]))}),this.arrayBuffer=function(){if(this._bodyArrayBuffer){var e=g(this) +return e||(ArrayBuffer.isView(this._bodyArrayBuffer)?o.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):o.resolve(this._bodyArrayBuffer))}if(i)return this.blob().then(y) +throw new Error("could not read as ArrayBuffer")},this.text=function(){var e,t,r,n,i,s=g(this) +if(s)return s +if(this._bodyBlob)return e=this._bodyBlob,t=new FileReader,r=b(t),n=/charset=([A-Za-z0-9_-]+)/.exec(e.type),i=n?n[1]:"utf-8",t.readAsText(e,i),r +if(this._bodyArrayBuffer)return o.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?i:n),this.mode=r.mode||this.mode||null,this.signal=r.signal||this.signal||function(){if("AbortController"in t)return(new AbortController).signal}(),this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests") +if(this._initBody(o),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==r.cache&&"no-cache"!==r.cache)){var s=/([?&])_=[^&]*/ +if(s.test(this.url))this.url=this.url.replace(s,"$1_="+(new Date).getTime()) +else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function E(e){var t=new FormData +return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ") +t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function C(e,t){if(!(this instanceof C))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.') +if(t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].") +this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new m(t.headers),this.url=t.url||"",this._initBody(e)}w.prototype.clone=function(){return new w(this,{body:this._bodyInit})},_.call(w.prototype),_.call(C.prototype),C.prototype.clone=function(){return new C(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},C.error=function(){var e=new C(null,{status:200,statusText:""}) +return e.ok=!1,e.status=0,e.type="error",e} +var k=[301,302,303,307,308] +C.redirect=function(e,t){if(-1===k.indexOf(t))throw new RangeError("Invalid status code") +return new C(null,{status:t,headers:{location:e}})},e.DOMException=t.DOMException +try{new e.DOMException}catch(R){e.DOMException=function(e,t){this.message=e,this.name=t +var r=Error(e) +this.stack=r.stack},e.DOMException.prototype=Object.create(Error.prototype),e.DOMException.prototype.constructor=e.DOMException}function T(r,n){return new o((function(o,s){var l=new w(r,n) +if(l.signal&&l.signal.aborted)return s(new e.DOMException("Aborted","AbortError")) +var u=new XMLHttpRequest +function c(){u.abort()}if(u.onload=function(){var e,t,r={statusText:u.statusText,headers:(e=u.getAllResponseHeaders()||"",t=new m,e.replace(/\r?\n[\t ]+/g," ").split("\r").map((function(e){return 0===e.indexOf("\n")?e.substr(1,e.length):e})).forEach((function(e){var r=e.split(":"),n=r.shift().trim() +if(n){var i=r.join(":").trim() +try{t.append(n,i)}catch(o){console.warn("Response "+o.message)}}})),t)} +0===l.url.indexOf("file://")&&(u.status<200||u.status>599)?r.status=200:r.status=u.status,r.url="responseURL"in u?u.responseURL:r.headers.get("X-Request-URL") +var n="response"in u?u.response:u.responseText +setTimeout((function(){o(new C(n,r))}),0)},u.onerror=function(){setTimeout((function(){s(new TypeError("Network request failed"))}),0)},u.ontimeout=function(){setTimeout((function(){s(new TypeError("Network request timed out"))}),0)},u.onabort=function(){setTimeout((function(){s(new e.DOMException("Aborted","AbortError"))}),0)},u.open(l.method,function(e){try{return""===e&&t.location.href?t.location.href:e}catch(r){return e}}(l.url),!0),"include"===l.credentials?u.withCredentials=!0:"omit"===l.credentials&&(u.withCredentials=!1),"responseType"in u&&(i?u.responseType="blob":a&&(u.responseType="arraybuffer")),n&&"object"==typeof n.headers&&!(n.headers instanceof m||t.Headers&&n.headers instanceof t.Headers)){var p=[] +Object.getOwnPropertyNames(n.headers).forEach((function(e){p.push(d(e)),u.setRequestHeader(e,h(n.headers[e]))})),l.headers.forEach((function(e,t){-1===p.indexOf(t)&&u.setRequestHeader(t,e)}))}else l.headers.forEach((function(e,t){u.setRequestHeader(t,e)})) +l.signal&&(l.signal.addEventListener("abort",c),u.onreadystatechange=function(){4===u.readyState&&l.signal.removeEventListener("abort",c)}),u.send(void 0===l._bodyInit?null:l._bodyInit)}))}T.polyfill=!0,t.fetch||(t.fetch=T,t.Headers=m,t.Request=w,t.Response=C),e.Headers=m,e.Request=w,e.Response=C,e.fetch=T})({}) +if(!l.fetch)throw new Error("fetch is not defined - maybe your browser targets are not covering everything you need?") +var c=0 +function p(e){return c--,e}i.Test?(i.Test.registerWaiter((function(){return 0===c})),t.default=function(){return c++,t.fetch.apply(e,arguments).then((function(e){return e.clone().blob().then(p,p),e}),(function(e){throw p(e),e}))}):t.default=t.fetch,s.forEach((function(e){delete t[e]}))}))})("undefined"!=typeof window&&window||"undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||"undefined"!=typeof global&&global)}define("@ember/string/cache",["exports"],(function(e){"use strict" +function t(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +var r=e[Symbol.toPrimitive] +if(void 0!==r){var n=r.call(e,t||"default") +if("object"!=typeof n)return n +throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") +return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{constructor(e,r,n){t(this,"size",0),t(this,"misses",0),t(this,"hits",0),this.limit=e,this.func=r,this.store=n,this.store=n||new Map}get(e){let t=this.store.get(e) +return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,t=this.set(e,this.func(e)),t)}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}}})),define("@ember/string/index",["exports","@ember/string/cache"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.camelize=function(e){return a.get(e)},e.capitalize=function(e){return g.get(e)},e.classify=function(e){return p.get(e)},e.dasherize=function(e){return i.get(e)},e.decamelize=v,e.getString=function(e){return r[e]},e.getStrings=function(){return r},e.htmlSafe=function(e){throw new Error("htmlSafe is not implemented in the `@ember/string` package. Please import from `@ember/template` instead.")},e.isHTMLSafe=function(e){throw new Error("isHTMLSafe is not implemented in the `@ember/string` package. Please import from `@ember/template` instead.")},e.setStrings=function(e){r=e},e.underscore=function(e){return f.get(e)},e.w=function(e){return e.split(/\s+/)} +let r={} +const n=/[ _]/g,i=new t.default(1e3,(e=>v(e).replace(n,"-"))),o=/(\-|\_|\.|\s)+(.)?/g,s=/(^|\/)([A-Z])/g,a=new t.default(1e3,(e=>e.replace(o,((e,t,r)=>r?r.toUpperCase():"")).replace(s,(e=>e.toLowerCase())))),l=/^(\-|_)+(.)?/,u=/(.)(\-|\_|\.|\s)+(.)?/g,c=/(^|\/|\.)([a-z])/g,p=new t.default(1e3,(e=>{const t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/") +for(let i=0;ie.toUpperCase()))})),d=/([a-z\d])([A-Z]+)/g,h=/\-|\s+/g,f=new t.default(1e3,(e=>e.replace(d,"$1_$2").replace(h,"_").toLowerCase())),m=/(^|\/)([a-z\u00C0-\u024F])/g,g=new t.default(1e3,(e=>e.replace(m,(e=>e.toUpperCase())))),b=/([a-z\d])([A-Z])/g,y=new t.default(1e3,(e=>e.replace(b,"$1_$2").toLowerCase())) +function v(e){return y.get(e)}})),define("@ember/test-waiters/build-waiter",["exports","@ember/debug","@ember/test-waiters/token","@ember/test-waiters/waiter-manager"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e._resetWaiterNames=function(){i=new Set},e.default=function(e){0 +return new o(e)} +let i +class o{constructor(e){this.name=e}beginAsync(){return this}endAsync(){}waitUntil(){return!0}debugInfo(){return[]}reset(){}}})),define("@ember/test-waiters/index",["exports","@ember/test-waiters/waiter-manager","@ember/test-waiters/build-waiter","@ember/test-waiters/wait-for-promise","@ember/test-waiters/wait-for"],(function(e,t,r,n,i){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"_reset",{enumerable:!0,get:function(){return t._reset}}),Object.defineProperty(e,"_resetWaiterNames",{enumerable:!0,get:function(){return r._resetWaiterNames}}),Object.defineProperty(e,"buildWaiter",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"getPendingWaiterState",{enumerable:!0,get:function(){return t.getPendingWaiterState}}),Object.defineProperty(e,"getWaiters",{enumerable:!0,get:function(){return t.getWaiters}}),Object.defineProperty(e,"hasPendingWaiters",{enumerable:!0,get:function(){return t.hasPendingWaiters}}),Object.defineProperty(e,"register",{enumerable:!0,get:function(){return t.register}}),Object.defineProperty(e,"unregister",{enumerable:!0,get:function(){return t.unregister}}),Object.defineProperty(e,"waitFor",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"waitForPromise",{enumerable:!0,get:function(){return n.default}})})),define("@ember/test-waiters/token",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{}})),define("@ember/test-waiters/types/index",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0})})),define("@ember/test-waiters/wait-for-promise",["exports","@ember/test-waiters/build-waiter"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){let r=e +0 +return r};(0,t.default)("@ember/test-waiters:promise-waiter")})),define("@ember/test-waiters/wait-for",["exports","@ember/test-waiters/wait-for-promise","@ember/test-waiters/build-waiter"],(function(e,t,r){"use strict" +function n(e,t){return e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(...e){if(e.length<3){let[t,r]=e +return n(t,r)}{let[,,t,r]=e +return t}};(0,r.default)("@ember/test-waiters:generator-waiter")})),define("@ember/test-waiters/waiter-manager",["exports","ember","@ember/test"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e._reset=function(){for(let e of o())e.isRegistered=!1 +n.clear()},e.getPendingWaiterState=s,e.getWaiters=o,e.hasPendingWaiters=a,e.register=function(e){n.set(e.name,e)},e.unregister=function(e){n.delete(e.name)} +const n=function(){let e="TEST_WAITERS",t="undefined"!=typeof Symbol?Symbol.for(e):e,r=i(),n=r[t] +return void 0===n&&(n=r[t]=new Map),n}() +function i(){if("undefined"!=typeof globalThis)return globalThis +if("undefined"!=typeof self)return self +if("undefined"!=typeof window)return window +if("undefined"!=typeof global)return global +throw new Error("unable to locate global object")}function o(){let e=[] +return n.forEach((t=>{e.push(t)})),e}function s(){let e={pending:0,waiters:{}} +return n.forEach((t=>{if(!t.waitUntil()){e.pending++ +let r=t.debugInfo() +e.waiters[t.name]=r||!0}})),e}function a(){return s().pending>0}t.default.Test&&(0,r.registerWaiter)((()=>!a()))})),define("@embroider/macros/es-compat2",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return e?.__esModule?e:{default:e,...e}}})),define("@embroider/macros/runtime",["exports"],(function(e){"use strict" +function t(e){return n.packages[e]}function r(){return n.global}Object.defineProperty(e,"__esModule",{value:!0}),e.config=t,e.each=function(e){if(!Array.isArray(e))throw new Error("the argument to the each() macro must be an array") +return e},e.getGlobalConfig=r,e.isTesting=function(){let e=n.global,t=e&&e["@embroider/macros"] +return Boolean(t&&t.isTesting)},e.macroCondition=function(e){return e} +const n={packages:{},global:{}} +let i="undefined"!=typeof window?window._embroider_macros_runtime_config:void 0 +if(i){let e={config:t,getGlobalConfig:r,setConfig(e,t){n.packages[e]=t},setGlobalConfig(e,t){n.global[e]=t}} +for(let t of i)t(e)}})),define("@glimmer/component/-private/base-component-manager",["exports","@glimmer/component/-private/component"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return class{static create(e){return new this(t(e))}constructor(t){(function(e,t,r){(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +var r=e[Symbol.toPrimitive] +if(void 0!==r){var n=r.call(e,t||"default") +if("object"!=typeof n)return n +throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") +return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})(this,"capabilities",r),e(this,t)}createComponent(e,r){return new e(t(this),r.named)}getContext(e){return e}}}})),define("@glimmer/component/-private/component",["exports","@glimmer/component/-private/owner","@glimmer/component/-private/destroyables"],(function(e,t,r){"use strict" +function n(e,t,r){var n +return(t="symbol"==typeof(n=function(e,t){if("object"!=typeof e||!e)return e +var r=e[Symbol.toPrimitive] +if(void 0!==r){var n=r.call(e,t||"default") +if("object"!=typeof n)return n +throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"))?n:n+"")in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ARGS_SET=void 0 +e.ARGS_SET=void 0 +e.default=class{constructor(e,r){n(this,"args",void 0),this.args=r,(0,t.setOwner)(this,e)}get isDestroying(){return(0,r.isDestroying)(this)}get isDestroyed(){return(0,r.isDestroyed)(this)}willDestroy(){}}})),define("@glimmer/component/-private/destroyables",["exports","ember"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.isDestroying=e.isDestroyed=void 0 +e.isDestroying=t.default._isDestroying,e.isDestroyed=t.default._isDestroyed})),define("@glimmer/component/-private/ember-component-manager",["exports","ember","@ember/object","@ember/application","@ember/component","@ember/runloop","@glimmer/component/-private/base-component-manager","@glimmer/component/-private/destroyables"],(function(e,t,r,n,i,o,s,a){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const{setDestroyed:l,setDestroying:u}=a,c=(0,i.capabilities)("3.13",{destructor:!0,asyncLifecycleCallbacks:!1,updateHook:!1}),p=t.default.destroy,d=t.default._registerDestructor +class h extends((0,s.default)(n.setOwner,n.getOwner,c)){createComponent(e,t){const r=super.createComponent(e,t) +return d(r,(()=>{r.willDestroy()})),r}destroyComponent(e){p(e)}}e.default=h})),define("@glimmer/component/-private/owner",["exports","@ember/application"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"setOwner",{enumerable:!0,get:function(){return t.setOwner}})})),define("@glimmer/component/index",["exports","@ember/component","@glimmer/component/-private/ember-component-manager","@glimmer/component/-private/component"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +let i=n.default;(0,t.setComponentManager)((e=>new r.default(e)),i) +e.default=i})),define("ember-cli-app-version/initializer-factory",["exports","ember"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){let n=!1 +return function(){!n&&e&&t&&(r.register(e,t),n=!0)}} +const{libraries:r}=t.default})),define("ember-cli-app-version/utils/regexp",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.versionRegExp=e.versionExtendedRegExp=e.shaRegExp=void 0 +e.versionRegExp=/\d+[.]\d+[.]\d+/,e.versionExtendedRegExp=/\d+[.]\d+[.]\d+-[a-z]*([.]\d+)?/,e.shaRegExp=/[a-z\d]{8}$/})),define("ember-fetch/errors",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.isAbortError=function(e){return"AbortError"==e.name},e.isBadRequestResponse=function(e){return 400===e.status},e.isConflictResponse=function(e){return 409===e.status},e.isForbiddenResponse=function(e){return 403===e.status},e.isGoneResponse=function(e){return 410===e.status},e.isInvalidResponse=function(e){return 422===e.status},e.isNotFoundResponse=function(e){return 404===e.status},e.isServerErrorResponse=function(e){return e.status>=500&&e.status<600},e.isUnauthorizedResponse=function(e){return 401===e.status}})),define("ember-fetch/types",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.isPlainObject=function(e){return"[object Object]"===Object.prototype.toString.call(e)}})),define("ember-fetch/utils/determine-body-promise",["exports","@ember/debug"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,r){return e.text().then((function(n){let i=n +try{i=JSON.parse(n)}catch(o){if(!(o instanceof SyntaxError))throw o +const s=e.status +!e.ok||204!==s&&205!==s&&"HEAD"!==r.method?(0,t.debug)(`This response was unable to be parsed as json: ${n}`):i=void 0}return i}))}})),define("ember-fetch/utils/mung-options-for-fetch",["exports","@ember/polyfills","ember-fetch/utils/serialize-query-params","ember-fetch/types"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){const i=(0,t.assign)({credentials:"same-origin"},e) +if(i.method=(i.method||i.type||"GET").toUpperCase(),i.data)if("GET"===i.method||"HEAD"===i.method){if(Object.keys(i.data).length){const e=i.url.indexOf("?")>-1?"&":"?" +i.url+=`${e}${(0,r.serializeQueryParams)(i.data)}`}}else(0,n.isPlainObject)(i.data)?i.body=JSON.stringify(i.data):i.body=i.data +return i}})),define("ember-fetch/utils/serialize-query-params",["exports","ember-fetch/types"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.serializeQueryParams=n +const r=/\[\]$/ +function n(e){var n=[] +return function e(o,s){var a,l,u +if(o)if(Array.isArray(s))for(a=0,l=s.length;a1){let e=t[0] +return"component"===e||"helper"===e||"modifier"===e||"template"===e&&0===t[1].indexOf("components/")?e+":"+t[1].replace(/_/g,"-"):e+":"+(0,i.dasherize)(t[1].replace(/\./g,"/"))}return e}pluralize(e){return this.pluralizedTypes[e]||(this.pluralizedTypes[e]=e+"s")}podBasedLookupWithPrefix(e,t){let r=t.fullNameWithoutType +return"template"===t.type&&(r=r.replace(/^components\//,"")),e+"/"+r+"/"+t.type}podBasedModuleName(e){let t=this.namespace.podModulePrefix||this.namespace.modulePrefix +return this.podBasedLookupWithPrefix(t,e)}podBasedComponentsInSubdir(e){let t=this.namespace.podModulePrefix||this.namespace.modulePrefix +if(t+="/components","component"===e.type||/^components/.test(e.fullNameWithoutType))return this.podBasedLookupWithPrefix(t,e)}resolveEngine(e){let t=e.fullNameWithoutType+"/engine" +if(this._moduleRegistry.has(t))return this._extractDefaultExport(t)}resolveRouteMap(e){let t=e.fullNameWithoutType,r=t+"/routes" +if(this._moduleRegistry.has(r)){let e=this._extractDefaultExport(r) +return e}}resolveTemplate(e){let r=this.resolveOther(e) +return null==r&&(r=t.default.TEMPLATES[e.fullNameWithoutType]),r}mainModuleName(e){if("main"===e.fullNameWithoutType)return e.prefix+"/"+e.type}defaultModuleName(e){return e.prefix+"/"+this.pluralize(e.type)+"/"+e.fullNameWithoutType}nestedColocationComponentModuleName(e){if("component"===e.type)return e.prefix+"/"+this.pluralize(e.type)+"/"+e.fullNameWithoutType+"/index"}prefix(e){let t=this.namespace.modulePrefix +return this.namespace[e.type+"Prefix"]&&(t=this.namespace[e.type+"Prefix"]),t}findModuleName(e,t){let r,n=this.moduleNameLookupPatterns +for(let i=0,o=n.length;i60?".":new Array(60-r.fullName.length).join("."),n||(n=this.lookupDescription(r)),console&&console.info&&console.info(o,r.fullName,i,n)}knownForType(e){let t=this._moduleRegistry.moduleNames(),r=Object.create(null) +for(let n=0,i=t.length;nn.length+i.length)return e+":"+t.slice(o+n.length,s) +let a=r+"/"+this.pluralize(e)+"/" +return 0===t.indexOf(a)&&t.length>a.length?e+":"+t.slice(a.length):void 0}_extractDefaultExport(e){let t=this._moduleRegistry.get(e,null,null,!0) +return t&&t.default&&(t=t.default),t}}s(l,"moduleBasedResolver",!0) +e.default=l})),define("ember-resolver/string/cache",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{constructor(e,t,r){this.limit=e,this.func=t,this.store=r,this.size=0,this.misses=0,this.hits=0,this.store=r||new Map}get(e){let t=this.store.get(e) +return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,t=this.set(e,this.func(e)),t)}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}}})),define("ember-resolver/string/index",["exports","ember-resolver/string/cache"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.classify=function(e){return l.get(e)},e.dasherize=function(e){return i.get(e)},e.decamelize=f,e.getString=function(e){return r[e]},e.getStrings=function(){return r},e.setStrings=function(e){r=e},e.underscore=function(e){return p.get(e)} +let r={} +const n=/[ _]/g,i=new t.default(1e3,(e=>f(e).replace(n,"-"))),o=/^(\-|_)+(.)?/,s=/(.)(\-|\_|\.|\s)+(.)?/g,a=/(^|\/|\.)([a-z])/g,l=new t.default(1e3,(e=>{const t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/") +for(let i=0;ie.toUpperCase()))})),u=/([a-z\d])([A-Z]+)/g,c=/\-|\s+/g,p=new t.default(1e3,(e=>e.replace(u,"$1_$2").replace(c,"_").toLowerCase())),d=/([a-z\d])([A-Z])/g,h=new t.default(1e3,(e=>e.replace(d,"$1_$2").toLowerCase())) +function f(e){return h.get(e)}})) +define("ember-resolver/utils/class-factory",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return{create:t=>"function"==typeof e.extend?e.extend(t):e}}})),define("ember-test-waiters/index",["exports","@ember/debug","@ember/test-waiters"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.keys(r).forEach((function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===r[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return r[t]}}))}))})),define("ember-tracked-storage-polyfill/index",["exports","@glimmer/tracking","@ember/debug"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.createStorage=function(e,t=o){return new i(e,t)},e.getValue=function(e){return e._value},e.setValue=function(e,t){const{_isEqual:r,_lastValue:n}=e +r(t,n)||(e._value=e._lastValue=t)} +var n=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +class i{constructor(e,t){this._value=this._lastValue=e,this._isEqual=t}}function o(e,t){return e===t}n([t.tracked],i.prototype,"_value",void 0)})) diff --git a/ember/ember-5.8.0.template-compiler.js b/ember/ember-git-02-a4359032.template-compiler.js similarity index 90% rename from ember/ember-5.8.0.template-compiler.js rename to ember/ember-git-02-a4359032.template-compiler.js index 5fcfa58..323f723 100644 --- a/ember/ember-5.8.0.template-compiler.js +++ b/ember/ember-git-02-a4359032.template-compiler.js @@ -6,7 +6,7 @@ * Portions Copyright 2008-2011 Apple Inc. All rights reserved. * @license Licensed under MIT license * See https://raw.github.com/emberjs/ember.js/master/LICENSE - * @version 5.8.0 + * @version 5.10.0-alpha.1+a4359032 */ /* eslint-disable no-var */ @@ -270,6 +270,28 @@ define("@ember/-internals/environment/index", ["exports"], function (_exports) { @private */ _DEBUG_RENDER_TREE: true /* DEBUG */, + /** + Whether to force all deprecations to be enabled. This is used internally by + Ember to enable deprecations in tests. It is not intended to be set in + projects. + @property _ALL_DEPRECATIONS_ENABLED + @for EmberENV + @type Boolean + @default false + @private + */ + _ALL_DEPRECATIONS_ENABLED: false, + /** + Override the version of ember-source used to determine when deprecations "break". + This is used internally by Ember to test with deprecated features "removed". + This is never intended to be set by projects. + @property _OVERRIDE_DEPRECATION_VERSION + @for EmberENV + @type string | null + @default null + @private + */ + _OVERRIDE_DEPRECATION_VERSION: null, /** Whether the app defaults to using async observers. This is not intended to be set directly, as the implementation may change in @@ -317,6 +339,8 @@ define("@ember/-internals/environment/index", ["exports"], function (_exports) { ENV[flag] = EmberENV[flag] !== false; } else if (defaultValue === false) { ENV[flag] = EmberENV[flag] === true; + } else { + ENV[flag] = EmberENV[flag]; } } let { @@ -1010,6 +1034,7 @@ define("@ember/canary-features/index", ["exports", "@ember/-internals/environmen // } // return value; // } + // // export const FLAG_NAME = featureValue(FEATURES.FLAG_NAME); }); define("@ember/debug/container-debug-adapter", ["exports", "@ember/-internals/string", "@ember/object", "@ember/utils", "@ember/-internals/owner", "@ember/application/namespace"], function (_exports, _string, _object, _utils, _owner, _namespace) { @@ -1971,7 +1996,6 @@ define("@ember/debug/lib/deprecate", ["exports", "@ember/-internals/environment" let updatedMessage = formatMessage(message, options); console.warn("DEPRECATION: " + updatedMessage); // eslint-disable-line no-console }); - let captureErrorForStack; if (new Error().stack) { captureErrorForStack = () => new Error(); @@ -2310,7 +2334,6 @@ define("@ember/debug/lib/warn", ["exports", "@ember/debug/index", "@ember/debug/ console.warn("WARNING: " + message); /* eslint-enable no-console */ }); - _exports.missingOptionsDeprecation = missingOptionsDeprecation = 'When calling `warn` you ' + 'must provide an `options` hash as the third parameter. ' + '`options` should include an `id` property.'; _exports.missingOptionsIdDeprecation = missingOptionsIdDeprecation = 'When calling `warn` you must provide `id` in options.'; /** @@ -3147,7 +3170,7 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } = normalized; let builtParams = params ? buildParams(params, symbols) : null; let builtHash = hash ? buildHash(hash, symbols) : null; - let builtExpr = buildCallHead(path, trusted ? _wireFormat.VariableResolutionContext.AmbiguousInvoke : _wireFormat.VariableResolutionContext.AmbiguousAppendInvoke, symbols); + let builtExpr = buildCallHead(path, trusted ? _wireFormat.VariableResolutionContext.ResolveAsHelperHead : _wireFormat.VariableResolutionContext.ResolveAsComponentOrHelperHead, symbols); return [[trusted ? _wireFormat.SexpOpcodes.TrustingAppend : _wireFormat.SexpOpcodes.Append, [_wireFormat.SexpOpcodes.Call, builtExpr, builtParams, builtHash]]]; } case HeadKind.Literal: @@ -3207,8 +3230,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", let block = buildBlock(normalized.blocks['default'], childSymbols, childSymbols.paramSymbols); let inverse = normalized.blocks['else'] ? buildBlock(normalized.blocks['else'], symbols, []) : null; switch (name) { - case 'with': - return [_wireFormat.SexpOpcodes.With, (0, _util.expect)(params, 'with requires params')[0], block, inverse]; + case 'let': + return [_wireFormat.SexpOpcodes.Let, (0, _util.expect)(params, 'let requires params'), block]; case 'if': return [_wireFormat.SexpOpcodes.If, (0, _util.expect)(params, 'if requires params')[0], block, inverse]; case 'each': @@ -3387,15 +3410,15 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", if (context === 'Strict') { op = _wireFormat.SexpOpcodes.GetStrictKeyword; } else if (context === 'AppendBare') { - op = _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback; + op = _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead; } else if (context === 'AppendInvoke') { op = _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead; } else if (context === 'TrustedAppendBare') { - op = _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback; + op = _wireFormat.SexpOpcodes.GetFreeAsHelperHead; } else if (context === 'TrustedAppendInvoke') { op = _wireFormat.SexpOpcodes.GetFreeAsHelperHead; } else if (context === 'AttrValueBare') { - op = _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback; + op = _wireFormat.SexpOpcodes.GetFreeAsHelperHead; } else if (context === 'AttrValueInvoke') { op = _wireFormat.SexpOpcodes.GetFreeAsHelperHead; } else if (context === 'SubExpression') { @@ -3412,6 +3435,7 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", if (path === undefined || path.length === 0) { return [op, sym]; } else { + (0, _util.assert)(op !== _wireFormat.SexpOpcodes.GetStrictKeyword, '[BUG] keyword with a path'); return [op, sym, path]; } } @@ -3433,13 +3457,9 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", switch (context) { case _wireFormat.VariableResolutionContext.Strict: return _wireFormat.SexpOpcodes.GetStrictKeyword; - case _wireFormat.VariableResolutionContext.AmbiguousAppend: - return _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback; - case _wireFormat.VariableResolutionContext.AmbiguousAppendInvoke: + case _wireFormat.VariableResolutionContext.ResolveAsComponentOrHelperHead: return _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead; - case _wireFormat.VariableResolutionContext.AmbiguousInvoke: - return _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback; - case _wireFormat.VariableResolutionContext.ResolveAsCallHead: + case _wireFormat.VariableResolutionContext.ResolveAsHelperHead: return _wireFormat.SexpOpcodes.GetFreeAsHelperHead; case _wireFormat.VariableResolutionContext.ResolveAsModifierHead: return _wireFormat.SexpOpcodes.GetFreeAsModifierHead; @@ -3491,7 +3511,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", class If extends (0, _syntax.node)('If').fields() {} class IfInline extends (0, _syntax.node)('IfInline').fields() {} class Each extends (0, _syntax.node)('Each').fields() {} - class With extends (0, _syntax.node)('With').fields() {} class Let extends (0, _syntax.node)('Let').fields() {} class WithDynamicVars extends (0, _syntax.node)('WithDynamicVars').fields() {} class GetDynamicVar extends (0, _syntax.node)('GetDynamicVar').fields() {} @@ -3499,7 +3518,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", class InvokeComponent extends (0, _syntax.node)('InvokeComponent').fields() {} class NamedBlocks extends (0, _syntax.node)('NamedBlocks').fields() {} class NamedBlock extends (0, _syntax.node)('NamedBlock').fields() {} - class EndBlock extends (0, _syntax.node)('EndBlock').fields() {} class AppendTrustedHTML extends (0, _syntax.node)('AppendTrustedHTML').fields() {} class AppendTextNode extends (0, _syntax.node)('AppendTextNode').fields() {} class AppendComment extends (0, _syntax.node)('AppendComment').fields() {} @@ -3511,16 +3529,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", class Yield extends (0, _syntax.node)('Yield').fields() {} class Debugger extends (0, _syntax.node)('Debugger').fields() {} class CallExpression extends (0, _syntax.node)('CallExpression').fields() {} - class DeprecatedCallExpression extends (0, _syntax.node)('DeprecatedCallExpression').fields() {} class Modifier extends (0, _syntax.node)('Modifier').fields() {} class InvokeBlock extends (0, _syntax.node)('InvokeBlock').fields() {} class SplatAttr extends (0, _syntax.node)('SplatAttr').fields() {} class PathExpression extends (0, _syntax.node)('PathExpression').fields() {} - class GetWithResolver extends (0, _syntax.node)('GetWithResolver').fields() {} - class GetSymbol extends (0, _syntax.node)('GetSymbol').fields() {} - class GetFreeWithContext extends (0, _syntax.node)('GetFreeWithContext').fields() {} - /** strict mode */ - class GetFree extends (0, _syntax.node)('GetFree').fields() {} class Missing extends (0, _syntax.node)('Missing').fields() {} class InterpolateExpression extends (0, _syntax.node)('InterpolateExpression').fields() {} class HasBlock extends (0, _syntax.node)('HasBlock').fields() {} @@ -3696,75 +3708,13 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return this.toArray().mapOk(arr => OptionalList(arr)); } } - function hasPath(node) { - return node.callee.type === 'Path'; - } - function isHelperInvocation(node) { - if (!hasPath(node)) { - return false; - } - return !node.args.isEmpty(); - } - function isSimplePath(path) { - if (path.type === 'Path') { - let { - ref: head, - tail: parts - } = path; - return head.type === 'Free' && !_syntax.ASTv2.isStrictResolution(head.resolution) && parts.length === 0; - } else { - return false; - } - } - function isStrictHelper(expr) { - if (expr.callee.type !== 'Path') { - return true; - } - if (expr.callee.ref.type !== 'Free') { - return true; - } - return _syntax.ASTv2.isStrictResolution(expr.callee.ref.resolution); - } - function assertIsValidModifier(helper) { - if (isStrictHelper(helper) || isSimplePath(helper.callee)) { - return; - } - throw (0, _syntax.generateSyntaxError)("`" + printPath(helper.callee) + "` is not a valid name for a modifier", helper.loc); - } - function printPath(path) { - switch (path.type) { - case 'Literal': - return JSON.stringify(path.value); - case 'Path': - { - let printedPath = [printPathHead(path.ref)]; - printedPath.push(...path.tail.map(t => t.chars)); - return printedPath.join('.'); - } - case 'Call': - return "(" + printPath(path.callee) + " ...)"; - case 'DeprecatedCall': - return "" + path.callee.name; - case 'Interpolate': - throw (0, _util.unreachable)('a concat statement cannot appear as the head of an expression'); - } - } - function printPathHead(head) { - switch (head.type) { - case 'Arg': - return head.name.chars; - case 'Free': - case 'Local': - return head.name; - case 'This': - return 'this'; - } - } class NormalizeExpressions { visit(node, state) { switch (node.type) { case 'Literal': return Ok(this.Literal(node)); + case 'Keyword': + return Ok(this.Keyword(node)); case 'Interpolate': return this.Interpolate(node, state); case 'Path': @@ -3777,8 +3727,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } return this.CallExpression(node, state); } - case 'DeprecatedCall': - return this.DeprecaedCallExpression(node, state); } } visitList(nodes, state) { @@ -3816,6 +3764,9 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", Literal(literal) { return literal; } + Keyword(keyword) { + return keyword; + } Interpolate(expr, state) { let parts = expr.parts.map(convertPathToCallIfKeyword); return VISIT_EXPRS.visitList(parts, state).mapOk(parts => new InterpolateExpression({ @@ -3824,8 +3775,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", })); } CallExpression(expr, state) { - if (!hasPath(expr)) { - throw new Error("unimplemented subexpression at the head of a subexpression"); + if (expr.callee.type === 'Call') { + throw new Error("unimplemented: subexpression at the head of a subexpression"); } else { return Result.all(VISIT_EXPRS.visit(expr.callee, state), VISIT_EXPRS.Args(expr.args, state)).mapOk(_ref4 => { let [callee, args] = _ref4; @@ -3837,26 +3788,14 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }); } } - DeprecaedCallExpression(_ref5, _state) { - let { - arg, - callee, - loc - } = _ref5; - return Ok(new DeprecatedCallExpression({ - loc, - arg, - callee - })); - } - Args(_ref6, state) { + Args(_ref5, state) { let { positional, named, loc - } = _ref6; - return Result.all(this.Positional(positional, state), this.NamedArguments(named, state)).mapOk(_ref7 => { - let [positional, named] = _ref7; + } = _ref5; + return Result.all(this.Positional(positional, state), this.NamedArguments(named, state)).mapOk(_ref6 => { + let [positional, named] = _ref6; return new Args({ loc, positional, @@ -3913,13 +3852,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } let path = getCalleeExpression(node); if (path !== null && path.type === 'Path' && path.ref.type === 'Free') { - if (path.tail.length > 0) { - if (path.ref.resolution.serialize() === 'Loose') { - // cannot be a keyword reference, keywords do not allow paths (must be - // relying on implicit this fallback) - return false; - } - } return path.ref.name === this.keyword; } else { return false; @@ -4110,18 +4042,18 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", function keywords(type) { return new Keywords(type); } - function toAppend(_ref8) { + function toAppend(_ref7) { let { assert, translate - } = _ref8; + } = _ref7; return { assert, - translate(_ref9, value) { + translate(_ref8, value) { let { node, state - } = _ref9; + } = _ref8; let result = translate({ node, state @@ -4171,19 +4103,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }; } function translateCurryKeyword(curriedType) { - return (_ref10, _ref11) => { + return (_ref9, _ref10) => { let { node, state - } = _ref10; + } = _ref9; let { definition, args - } = _ref11; + } = _ref10; let definitionResult = VISIT_EXPRS.visit(definition, state); let argsResult = VISIT_EXPRS.Args(args, state); - return Result.all(definitionResult, argsResult).mapOk(_ref12 => { - let [definition, args] = _ref12; + return Result.all(definitionResult, argsResult).mapOk(_ref11 => { + let [definition, args] = _ref11; return new Curry({ loc: node.loc, curriedType, @@ -4215,11 +4147,11 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } return Ok(varName); } - function translateGetDynamicVarKeyword(_ref13, name) { + function translateGetDynamicVarKeyword(_ref12, name) { let { node, state - } = _ref13; + } = _ref12; return VISIT_EXPRS.visit(name, state).mapOk(name => new GetDynamicVar({ name, loc: node.loc @@ -4252,13 +4184,13 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }; } function translateHasBlockKeyword(type) { - return (_ref14, target) => { + return (_ref13, target) => { let { node, state: { scope } - } = _ref14; + } = _ref13; let block = type === 'has-block' ? new HasBlock({ loc: node.loc, target, @@ -4308,21 +4240,21 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } function translateIfUnlessInlineKeyword(type) { let inverted = type === 'unless'; - return (_ref15, _ref16) => { + return (_ref14, _ref15) => { let { node, state - } = _ref15; + } = _ref14; let { condition, truthy, falsy - } = _ref16; + } = _ref15; let conditionResult = VISIT_EXPRS.visit(condition, state); let truthyResult = VISIT_EXPRS.visit(truthy, state); let falsyResult = falsy ? VISIT_EXPRS.visit(falsy, state) : Ok(null); - return Result.all(conditionResult, truthyResult, falsyResult).mapOk(_ref17 => { - let [condition, truthy, falsy] = _ref17; + return Result.all(conditionResult, truthyResult, falsyResult).mapOk(_ref16 => { + let [condition, truthy, falsy] = _ref16; if (inverted) { condition = new Not({ value: condition, @@ -4356,11 +4288,11 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } return Ok(positional); } - function translateLogKeyword(_ref18, positional) { + function translateLogKeyword(_ref17, positional) { let { node, state - } = _ref18; + } = _ref17; return VISIT_EXPRS.Positional(positional, state).mapOk(positional => new Log({ positional, loc: node.loc @@ -4395,15 +4327,15 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } } }, - translate(_ref19, _ref20) { + translate(_ref18, _ref19) { let { node, state - } = _ref19; + } = _ref18; let { target, positional - } = _ref20; + } = _ref19; return VISIT_EXPRS.Positional(positional, state).mapOk(positional => new Yield({ loc: node.loc, target, @@ -4429,13 +4361,13 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } } }, - translate(_ref21) { + translate(_ref20) { let { node, state: { scope } - } = _ref21; + } = _ref20; scope.setHasDebugger(); return Ok(new Debugger({ loc: node.loc, @@ -4444,19 +4376,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } }).kw('component', { assert: assertCurryKeyword(_vm.CurriedTypes.Component), - translate(_ref22, _ref23) { + translate(_ref21, _ref22) { let { node, state - } = _ref22; + } = _ref21; let { definition, args - } = _ref23; + } = _ref22; let definitionResult = VISIT_EXPRS.visit(definition, state); let argsResult = VISIT_EXPRS.Args(args, state); - return Result.all(definitionResult, argsResult).mapOk(_ref24 => { - let [definition, args] = _ref24; + return Result.all(definitionResult, argsResult).mapOk(_ref23 => { + let [definition, args] = _ref23; return new InvokeComponent({ loc: node.loc, definition, @@ -4467,19 +4399,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } }).kw('helper', { assert: assertCurryKeyword(_vm.CurriedTypes.Helper), - translate(_ref25, _ref26) { + translate(_ref24, _ref25) { let { node, state - } = _ref25; + } = _ref24; let { definition, args - } = _ref26; + } = _ref25; let definitionResult = VISIT_EXPRS.visit(definition, state); let argsResult = VISIT_EXPRS.Args(args, state); - return Result.all(definitionResult, argsResult).mapOk(_ref27 => { - let [definition, args] = _ref27; + return Result.all(definitionResult, argsResult).mapOk(_ref26 => { + let [definition, args] = _ref26; let text = new CallExpression({ callee: definition, args, @@ -4514,20 +4446,20 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", destination }); }, - translate(_ref28, _ref29) { + translate(_ref27, _ref28) { let { node, state - } = _ref28; + } = _ref27; let { insertBefore, destination - } = _ref29; + } = _ref28; let named = node.blocks.get('default'); let body = VISIT_STMTS.NamedBlock(named, state); let destinationResult = VISIT_EXPRS.visit(destination, state); - return Result.all(body, destinationResult).andThen(_ref30 => { - let [body, destination] = _ref30; + return Result.all(body, destinationResult).andThen(_ref29 => { + let [body, destination] = _ref29; if (insertBefore) { return VISIT_EXPRS.visit(insertBefore, state).mapOk(insertBefore => ({ body, @@ -4543,12 +4475,12 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }) }); } - }).mapOk(_ref31 => { + }).mapOk(_ref30 => { let { body, destination, insertBefore - } = _ref31; + } = _ref30; return new InElement({ loc: node.loc, block: body, @@ -4577,21 +4509,21 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", condition }); }, - translate(_ref32, _ref33) { + translate(_ref31, _ref32) { let { node, state - } = _ref32; + } = _ref31; let { condition - } = _ref33; + } = _ref32; let block = node.blocks.get('default'); let inverse = node.blocks.get('else'); let conditionResult = VISIT_EXPRS.visit(condition, state); let blockResult = VISIT_STMTS.NamedBlock(block, state); let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); - return Result.all(conditionResult, blockResult, inverseResult).mapOk(_ref34 => { - let [condition, block, inverse] = _ref34; + return Result.all(conditionResult, blockResult, inverseResult).mapOk(_ref33 => { + let [condition, block, inverse] = _ref33; return new If({ loc: node.loc, condition, @@ -4619,21 +4551,21 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", condition }); }, - translate(_ref35, _ref36) { + translate(_ref34, _ref35) { let { node, state - } = _ref35; + } = _ref34; let { condition - } = _ref36; + } = _ref35; let block = node.blocks.get('default'); let inverse = node.blocks.get('else'); let conditionResult = VISIT_EXPRS.visit(condition, state); let blockResult = VISIT_STMTS.NamedBlock(block, state); let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); - return Result.all(conditionResult, blockResult, inverseResult).mapOk(_ref37 => { - let [condition, block, inverse] = _ref37; + return Result.all(conditionResult, blockResult, inverseResult).mapOk(_ref36 => { + let [condition, block, inverse] = _ref36; return new If({ loc: node.loc, condition: new Not({ @@ -4666,23 +4598,23 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", key }); }, - translate(_ref38, _ref39) { + translate(_ref37, _ref38) { let { node, state - } = _ref38; + } = _ref37; let { value, key - } = _ref39; + } = _ref38; let block = node.blocks.get('default'); let inverse = node.blocks.get('else'); let valueResult = VISIT_EXPRS.visit(value, state); let keyResult = key ? VISIT_EXPRS.visit(key, state) : Ok(null); let blockResult = VISIT_STMTS.NamedBlock(block, state); let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); - return Result.all(valueResult, keyResult, blockResult, inverseResult).mapOk(_ref40 => { - let [value, key, block, inverse] = _ref40; + return Result.all(valueResult, keyResult, blockResult, inverseResult).mapOk(_ref39 => { + let [value, key, block, inverse] = _ref39; return new Each({ loc: node.loc, value, @@ -4692,48 +4624,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }); }); } - }).kw('with', { - assert(node) { - let { - args - } = node; - if (!args.named.isEmpty()) { - return Err((0, _syntax.generateSyntaxError)("{{#with}} cannot receive named parameters, received " + args.named.entries.map(e => e.name.chars).join(', '), args.named.loc)); - } - if (args.positional.size > 1) { - return Err((0, _syntax.generateSyntaxError)("{{#with}} can only receive one positional parameter. Received " + args.positional.size + " parameters", args.positional.loc)); - } - let value = args.nth(0); - if (value === null) { - return Err((0, _syntax.generateSyntaxError)("{{#with}} requires a value as its first positional parameter, did not receive any parameters", args.loc)); - } - return Ok({ - value - }); - }, - translate(_ref41, _ref42) { - let { - node, - state - } = _ref41; - let { - value - } = _ref42; - let block = node.blocks.get('default'); - let inverse = node.blocks.get('else'); - let valueResult = VISIT_EXPRS.visit(value, state); - let blockResult = VISIT_STMTS.NamedBlock(block, state); - let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); - return Result.all(valueResult, blockResult, inverseResult).mapOk(_ref43 => { - let [value, block, inverse] = _ref43; - return new With({ - loc: node.loc, - value, - block, - inverse - }); - }); - } }).kw('let', { assert(node) { let { @@ -4752,19 +4642,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", positional: args.positional }); }, - translate(_ref44, _ref45) { + translate(_ref40, _ref41) { let { node, state - } = _ref44; + } = _ref40; let { positional - } = _ref45; + } = _ref41; let block = node.blocks.get('default'); let positionalResult = VISIT_EXPRS.Positional(positional, state); let blockResult = VISIT_STMTS.NamedBlock(block, state); - return Result.all(positionalResult, blockResult).mapOk(_ref46 => { - let [positional, block] = _ref46; + return Result.all(positionalResult, blockResult).mapOk(_ref42 => { + let [positional, block] = _ref42; return new Let({ loc: node.loc, positional, @@ -4778,19 +4668,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", named: node.args.named }); }, - translate(_ref47, _ref48) { + translate(_ref43, _ref44) { let { node, state - } = _ref47; + } = _ref43; let { named - } = _ref48; + } = _ref44; let block = node.blocks.get('default'); let namedResult = VISIT_EXPRS.NamedArguments(named, state); let blockResult = VISIT_STMTS.NamedBlock(block, state); - return Result.all(namedResult, blockResult).mapOk(_ref49 => { - let [named, block] = _ref49; + return Result.all(namedResult, blockResult).mapOk(_ref45 => { + let [named, block] = _ref45; return new WithDynamicVars({ loc: node.loc, named, @@ -4800,20 +4690,20 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } }).kw('component', { assert: assertCurryKeyword(_vm.CurriedTypes.Component), - translate(_ref50, _ref51) { + translate(_ref46, _ref47) { let { node, state - } = _ref50; + } = _ref46; let { definition, args - } = _ref51; + } = _ref47; let definitionResult = VISIT_EXPRS.visit(definition, state); let argsResult = VISIT_EXPRS.Args(args, state); let blocksResult = VISIT_STMTS.NamedBlocks(node.blocks, state); - return Result.all(definitionResult, argsResult, blocksResult).mapOk(_ref52 => { - let [definition, args, blocks] = _ref52; + return Result.all(definitionResult, argsResult, blocksResult).mapOk(_ref48 => { + let [definition, args, blocks] = _ref48; return new InvokeComponent({ loc: node.loc, definition, @@ -4931,17 +4821,14 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }); } modifier(modifier) { - if (isHelperInvocation(modifier)) { - assertIsValidModifier(modifier); - } let translated = MODIFIER_KEYWORDS.translate(modifier, this.state); if (translated !== null) { return translated; } let head = VISIT_EXPRS.visit(modifier.callee, this.state); let args = VISIT_EXPRS.Args(modifier.args, this.state); - return Result.all(head, args).mapOk(_ref53 => { - let [head, args] = _ref53; + return Result.all(head, args).mapOk(_ref49 => { + let [head, args] = _ref49; return new Modifier({ loc: modifier.loc, callee: head, @@ -4979,8 +4866,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", if (typeAttr) { attrs.add(this.attr(typeAttr)); } - return Result.all(args.toArray(), attrs.toArray()).mapOk(_ref54 => { - let [args, attrs] = _ref54; + return Result.all(args.toArray(), attrs.toArray()).mapOk(_ref50 => { + let [args, attrs] = _ref50; return { attrs, args: new NamedArguments({ @@ -4993,8 +4880,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", prepare() { let attrs = this.attrs(); let modifiers = new ResultArray(this.element.modifiers.map(m => this.modifier(m))).toArray(); - return Result.all(attrs, modifiers).mapOk(_ref55 => { - let [result, modifiers] = _ref55; + return Result.all(attrs, modifiers).mapOk(_ref51 => { + let [result, modifiers] = _ref51; let { attrs, args @@ -5011,11 +4898,11 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }); } } - function hasDynamicFeatures(_ref56) { + function hasDynamicFeatures(_ref52) { let { attrs, modifiers - } = _ref56; + } = _ref52; // ElementModifier needs the special ComponentOperations if (modifiers.length > 0) { return true; @@ -5030,10 +4917,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", this.tag = tag; this.element = element; } - arg(attr, _ref57) { + arg(attr, _ref53) { let { state - } = _ref57; + } = _ref53; let name = attr.name; return VISIT_EXPRS.visit(convertPathToCallIfKeyword(attr.value), state).mapOk(value => new NamedArgument({ loc: attr.loc, @@ -5041,11 +4928,11 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", value })); } - toStatement(component, _ref58) { + toStatement(component, _ref54) { let { args, params - } = _ref58; + } = _ref54; let { element, state @@ -5072,10 +4959,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", arg(attr) { return Err((0, _syntax.generateSyntaxError)(attr.name.chars + " is not a valid attribute name. @arguments are only allowed on components, but the tag for this element (`" + this.tag.chars + "`) is a regular, non-component HTML element.", attr.loc)); } - toStatement(classified, _ref59) { + toStatement(classified, _ref55) { let { params - } = _ref59; + } = _ref55; let { state, element @@ -5119,8 +5006,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } let head = VISIT_EXPRS.visit(node.callee, state); let args = VISIT_EXPRS.Args(node.args, state); - return Result.all(head, args).andThen(_ref60 => { - let [head, args] = _ref60; + return Result.all(head, args).andThen(_ref56 => { + let [head, args] = _ref56; return this.NamedBlocks(node.blocks, state).mapOk(blocks => new InvokeBlock({ loc: node.loc, head, @@ -5217,71 +5104,365 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } } } + var ResolutionType = /*#__PURE__*/function (ResolutionType) { + ResolutionType["Value"] = "value"; + ResolutionType["Component"] = "component"; + ResolutionType["Helper"] = "helper"; + ResolutionType["Modifier"] = "modifier"; + ResolutionType["ComponentOrHelper"] = "component or helper"; + return ResolutionType; + }(ResolutionType || {}); + class StrictModeValidationPass { + // This is done at the end of all the keyword normalizations + // At this point any free variables that isn't a valid keyword + // in its context should be considered a syntax error. We + // probably had various opportunities to do this inline in the + // earlier passes, but this aims to produce a better syntax + // error as we don't always have the right loc-context to do + // so in the other spots. + static validate(template) { + return new this(template).validate(); + } + constructor(template) { + this.template = template; + } + validate() { + return this.Statements(this.template.body).mapOk(() => this.template); + } + Statements(statements) { + let result = Ok(null); + for (let statement of statements) { + result = result.andThen(() => this.Statement(statement)); + } + return result; + } + NamedBlocks(_ref57) { + let { + blocks + } = _ref57; + let result = Ok(null); + for (let block of blocks.toArray()) { + result = result.andThen(() => this.NamedBlock(block)); + } + return result; + } + NamedBlock(block) { + return this.Statements(block.body); + } + Statement(statement) { + switch (statement.type) { + case 'InElement': + return this.InElement(statement); + case 'Debugger': + return Ok(null); + case 'Yield': + return this.Yield(statement); + case 'AppendTrustedHTML': + return this.AppendTrustedHTML(statement); + case 'AppendTextNode': + return this.AppendTextNode(statement); + case 'Component': + return this.Component(statement); + case 'SimpleElement': + return this.SimpleElement(statement); + case 'InvokeBlock': + return this.InvokeBlock(statement); + case 'AppendComment': + return Ok(null); + case 'If': + return this.If(statement); + case 'Each': + return this.Each(statement); + case 'Let': + return this.Let(statement); + case 'WithDynamicVars': + return this.WithDynamicVars(statement); + case 'InvokeComponent': + return this.InvokeComponent(statement); + } + } + Expressions(expressions) { + let result = Ok(null); + for (let expression of expressions) { + result = result.andThen(() => this.Expression(expression)); + } + return result; + } + Expression(expression, span, resolution) { + if (span === void 0) { + span = expression; + } + switch (expression.type) { + case 'Literal': + case 'Keyword': + case 'Missing': + case 'This': + case 'Arg': + case 'Local': + case 'HasBlock': + case 'HasBlockParams': + case 'GetDynamicVar': + return Ok(null); + case 'PathExpression': + return this.Expression(expression.head, span, resolution); + case 'Free': + return this.errorFor(expression.name, span, resolution); + case 'InterpolateExpression': + return this.InterpolateExpression(expression, span, resolution); + case 'CallExpression': + return this.CallExpression(expression, span, resolution != null ? resolution : ResolutionType.Helper); + case 'Not': + return this.Expression(expression.value, span, resolution); + case 'IfInline': + return this.IfInline(expression); + case 'Curry': + return this.Curry(expression); + case 'Log': + return this.Log(expression); + } + } + Args(args) { + return this.Positional(args.positional).andThen(() => this.NamedArguments(args.named)); + } + Positional(positional, span) { + let result = Ok(null); + let expressions = positional.list.toArray(); - /** - * Normalize the AST from @glimmer/syntax into the HIR. The HIR has special - * instructions for keywords like `{{yield}}`, `(has-block)` and - * `{{#in-element}}`. - * - * Most importantly, it also classifies HTML element syntax into: - * - * 1. simple HTML element (with optional splattributes) - * 2. component invocation - * - * Because the @glimmer/syntax AST gives us a string for an element's tag, - * this pass also normalizes that string into an expression. - * - * ``` - * // normalized into a path expression whose head is `this` and tail is - * // `["x"]` - * - * - * {{#let expr as |t|}} - * // `"t"` is normalized into a variable lookup. - * - * - * // normalized into a path expression whose head is the variable lookup - * // `t` and tail is `["input"]`. - * - * {{/let}} - * - * // normalized into a free variable lookup for `SomeComponent` (with the - * // context `ComponentHead`). - * - * - * // normalized into a path expression whose head is the free variable - * // `notInScope` (with the context `Expression`), and whose tail is - * // `["SomeComponent"]`. In resolver mode, this path will be rejected later, - * // since it cannot serve as an input to the resolver. - * - * ``` - */ - function normalize(source, root, isStrict) { - // create a new context for the normalization pass - let state = new NormalizationState(root.table, isStrict); - let body = VISIT_STMTS.visitList(root.body, state); - return body.mapOk(body => new Template({ - loc: root.loc, - scope: root.table, - body: body.toArray() - })); - } - class WireFormatDebugger { - constructor(_ref61) { - let [_statements, symbols, _hasEval, upvars] = _ref61; - this.upvars = void 0; - this.symbols = void 0; - this.upvars = upvars; - this.symbols = symbols; + // For cases like {{yield foo}}, when there is only a single argument, it + // makes for a slightly better error to report that entire span. However, + // when there are more than one, we need to be specific. + if (expressions.length === 1) { + result = this.Expression(expressions[0], span); + } else { + result = this.Expressions(expressions); + } + return result; } - format(program) { - let out = []; - for (let statement of program[0]) { - out.push(this.formatOpcode(statement)); + NamedArguments(_ref58) { + let { + entries + } = _ref58; + let result = Ok(null); + for (let arg of entries.toArray()) { + result = result.andThen(() => this.NamedArgument(arg)); } - return out; + return result; } - formatOpcode(opcode) { + NamedArgument(arg) { + if (arg.value.type === 'CallExpression') { + return this.Expression(arg.value, arg, ResolutionType.Helper); + } else { + return this.Expression(arg.value, arg); + } + } + ElementParameters(_ref59) { + let { + body + } = _ref59; + let result = Ok(null); + for (let param of body.toArray()) { + result = result.andThen(() => this.ElementParameter(param)); + } + return result; + } + ElementParameter(param) { + switch (param.type) { + case 'StaticAttr': + return Ok(null); + case 'DynamicAttr': + return this.DynamicAttr(param); + case 'Modifier': + return this.Modifier(param); + case 'SplatAttr': + return Ok(null); + } + } + DynamicAttr(attr) { + if (attr.value.type === 'CallExpression') { + return this.Expression(attr.value, attr, ResolutionType.Helper); + } else { + return this.Expression(attr.value, attr); + } + } + Modifier(modifier) { + return this.Expression(modifier.callee, modifier, ResolutionType.Modifier).andThen(() => this.Args(modifier.args)); + } + InElement(inElement) { + return this.Expression(inElement.destination) + // Unfortunately we lost the `insertBefore=` part of the span + .andThen(() => this.Expression(inElement.insertBefore)).andThen(() => this.NamedBlock(inElement.block)); + } + Yield(statement) { + return this.Positional(statement.positional, statement); + } + AppendTrustedHTML(statement) { + return this.Expression(statement.html, statement); + } + AppendTextNode(statement) { + if (statement.text.type === 'CallExpression') { + return this.Expression(statement.text, statement, ResolutionType.ComponentOrHelper); + } else { + return this.Expression(statement.text, statement); + } + } + Component(statement) { + return this.Expression(statement.tag, statement, ResolutionType.Component).andThen(() => this.ElementParameters(statement.params)).andThen(() => this.NamedArguments(statement.args)).andThen(() => this.NamedBlocks(statement.blocks)); + } + SimpleElement(statement) { + return this.ElementParameters(statement.params).andThen(() => this.Statements(statement.body)); + } + InvokeBlock(statement) { + return this.Expression(statement.head, statement.head, ResolutionType.Component).andThen(() => this.Args(statement.args)).andThen(() => this.NamedBlocks(statement.blocks)); + } + If(statement) { + return this.Expression(statement.condition, statement).andThen(() => this.NamedBlock(statement.block)).andThen(() => { + if (statement.inverse) { + return this.NamedBlock(statement.inverse); + } else { + return Ok(null); + } + }); + } + Each(statement) { + return this.Expression(statement.value, statement).andThen(() => { + if (statement.key) { + return this.Expression(statement.key, statement); + } else { + return Ok(null); + } + }).andThen(() => this.NamedBlock(statement.block)).andThen(() => { + if (statement.inverse) { + return this.NamedBlock(statement.inverse); + } else { + return Ok(null); + } + }); + } + Let(statement) { + return this.Positional(statement.positional).andThen(() => this.NamedBlock(statement.block)); + } + WithDynamicVars(statement) { + return this.NamedArguments(statement.named).andThen(() => this.NamedBlock(statement.block)); + } + InvokeComponent(statement) { + return this.Expression(statement.definition, statement, ResolutionType.Component).andThen(() => this.Args(statement.args)).andThen(() => { + if (statement.blocks) { + return this.NamedBlocks(statement.blocks); + } else { + return Ok(null); + } + }); + } + InterpolateExpression(expression, span, resolution) { + let expressions = expression.parts.toArray(); + if (expressions.length === 1) { + return this.Expression(expressions[0], span, resolution); + } else { + return this.Expressions(expressions); + } + } + CallExpression(expression, span, resolution) { + return this.Expression(expression.callee, span, resolution).andThen(() => this.Args(expression.args)); + } + IfInline(expression) { + return this.Expression(expression.condition).andThen(() => this.Expression(expression.truthy)).andThen(() => { + if (expression.falsy) { + return this.Expression(expression.falsy); + } else { + return Ok(null); + } + }); + } + Curry(expression) { + let resolution; + if (expression.curriedType === _vm.CurriedTypes.Component) { + resolution = ResolutionType.Component; + } else if (expression.curriedType === _vm.CurriedTypes.Helper) { + resolution = ResolutionType.Helper; + } else { + resolution = ResolutionType.Modifier; + } + return this.Expression(expression.definition, expression, resolution).andThen(() => this.Args(expression.args)); + } + Log(expression) { + return this.Positional(expression.positional, expression); + } + errorFor(name, span, type) { + if (type === void 0) { + type = ResolutionType.Value; + } + return Err((0, _syntax.generateSyntaxError)("Attempted to resolve a " + type + " in a strict mode template, but that value was not in scope: " + name, (0, _syntax.loc)(span))); + } + } + + /** + * Normalize the AST from @glimmer/syntax into the HIR. The HIR has special + * instructions for keywords like `{{yield}}`, `(has-block)` and + * `{{#in-element}}`. + * + * Most importantly, it also classifies HTML element syntax into: + * + * 1. simple HTML element (with optional splattributes) + * 2. component invocation + * + * Because the @glimmer/syntax AST gives us a string for an element's tag, + * this pass also normalizes that string into an expression. + * + * ``` + * // normalized into a path expression whose head is `this` and tail is + * // `["x"]` + * + * + * {{#let expr as |t|}} + * // `"t"` is normalized into a variable lookup. + * + * + * // normalized into a path expression whose head is the variable lookup + * // `t` and tail is `["input"]`. + * + * {{/let}} + * + * // normalized into a free variable lookup for `SomeComponent` (with the + * // context `ComponentHead`). + * + * + * // normalized into a path expression whose head is the free variable + * // `notInScope` (with the context `Expression`), and whose tail is + * // `["SomeComponent"]`. In resolver mode, this path will be rejected later, + * // since it cannot serve as an input to the resolver. + * + * ``` + */ + function normalize(source, root, isStrict) { + // create a new context for the normalization pass + let state = new NormalizationState(root.table, isStrict); + let body = VISIT_STMTS.visitList(root.body, state); + let template = body.mapOk(body => new Template({ + loc: root.loc, + scope: root.table, + body: body.toArray() + })); + if (isStrict) { + template = template.andThen(template => StrictModeValidationPass.validate(template)); + } + return template; + } + class WireFormatDebugger { + constructor(_ref60) { + let [_statements, symbols, _hasEval, upvars] = _ref60; + this.upvars = void 0; + this.symbols = void 0; + this.upvars = upvars; + this.symbols = symbols; + } + format(program) { + let out = []; + for (let statement of program[0]) { + out.push(this.formatOpcode(statement)); + } + return out; + } + formatOpcode(opcode) { if (Array.isArray(opcode)) { switch (opcode[0]) { case _wireFormat.SexpOpcodes.Append: @@ -5341,15 +5522,9 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", case _wireFormat.SexpOpcodes.Concat: return ['concat', this.formatParams(opcode[1])]; case _wireFormat.SexpOpcodes.GetStrictKeyword: - return ['get-strict-free', this.upvars[opcode[1]], opcode[2]]; - case _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback: - return ['GetFreeAsComponentOrHelperHeadOrThisFallback', this.upvars[opcode[1]], opcode[2]]; + return ['get-strict-free', this.upvars[opcode[1]]]; case _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead: return ['GetFreeAsComponentOrHelperHead', this.upvars[opcode[1]], opcode[2]]; - case _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback: - return ['GetFreeAsHelperHeadOrThisFallback', this.upvars[opcode[1]], opcode[2]]; - case _wireFormat.SexpOpcodes.GetFreeAsDeprecatedHelperHeadOrThisFallback: - return ['GetFreeAsDeprecatedHelperHeadOrThisFallback', this.upvars[opcode[1]]]; case _wireFormat.SexpOpcodes.GetFreeAsHelperHead: return ['GetFreeAsHelperHead', this.upvars[opcode[1]], opcode[2]]; case _wireFormat.SexpOpcodes.GetFreeAsComponentHead: @@ -5376,8 +5551,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return ['not']; case _wireFormat.SexpOpcodes.Each: return ['each', this.formatOpcode(opcode[1]), opcode[2] ? this.formatOpcode(opcode[2]) : null, this.formatBlock(opcode[3]), opcode[4] ? this.formatBlock(opcode[4]) : null]; - case _wireFormat.SexpOpcodes.With: - return ['with', this.formatOpcode(opcode[1]), this.formatBlock(opcode[2]), opcode[3] ? this.formatBlock(opcode[3]) : null]; case _wireFormat.SexpOpcodes.Let: return ['let', this.formatParams(opcode[1]), this.formatBlock(opcode[2])]; case _wireFormat.SexpOpcodes.Log: @@ -5442,10 +5615,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return undefined; case 'Literal': return this.Literal(expr); + case 'Keyword': + return this.Keyword(expr); case 'CallExpression': return this.CallExpression(expr); - case 'DeprecatedCallExpression': - return this.DeprecatedCallExpression(expr); case 'PathExpression': return this.PathExpression(expr); case 'Arg': @@ -5474,10 +5647,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return this.Log(expr); } } - Literal(_ref62) { + Literal(_ref61) { let { value - } = _ref62; + } = _ref61; if (value === undefined) { return [_wireFormat.SexpOpcodes.Undefined]; } else { @@ -5487,97 +5660,91 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", Missing() { return undefined; } - HasBlock(_ref63) { + HasBlock(_ref62) { let { symbol - } = _ref63; + } = _ref62; return [_wireFormat.SexpOpcodes.HasBlock, [_wireFormat.SexpOpcodes.GetSymbol, symbol]]; } - HasBlockParams(_ref64) { + HasBlockParams(_ref63) { let { symbol - } = _ref64; + } = _ref63; return [_wireFormat.SexpOpcodes.HasBlockParams, [_wireFormat.SexpOpcodes.GetSymbol, symbol]]; } - Curry(_ref65) { + Curry(_ref64) { let { definition, curriedType, args - } = _ref65; + } = _ref64; return [_wireFormat.SexpOpcodes.Curry, EXPR.expr(definition), curriedType, EXPR.Positional(args.positional), EXPR.NamedArguments(args.named)]; } - Local(_ref66) { + Local(_ref65) { let { isTemplateLocal, symbol - } = _ref66; + } = _ref65; return [isTemplateLocal ? _wireFormat.SexpOpcodes.GetLexicalSymbol : _wireFormat.SexpOpcodes.GetSymbol, symbol]; } - GetWithResolver(_ref67) { + Keyword(_ref66) { let { symbol - } = _ref67; - return [_wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback, symbol]; + } = _ref66; + return [_wireFormat.SexpOpcodes.GetStrictKeyword, symbol]; } - PathExpression(_ref68) { + PathExpression(_ref67) { let { head, tail - } = _ref68; + } = _ref67; let getOp = EXPR.expr(head); + (0, _util.assert)(getOp[0] !== _wireFormat.SexpOpcodes.GetStrictKeyword, '[BUG] keyword in a PathExpression'); return [...getOp, EXPR.Tail(tail)]; } - InterpolateExpression(_ref69) { + InterpolateExpression(_ref68) { let { parts - } = _ref69; + } = _ref68; return [_wireFormat.SexpOpcodes.Concat, parts.map(e => EXPR.expr(e)).toArray()]; } - CallExpression(_ref70) { + CallExpression(_ref69) { let { callee, args - } = _ref70; + } = _ref69; return [_wireFormat.SexpOpcodes.Call, EXPR.expr(callee), ...EXPR.Args(args)]; } - DeprecatedCallExpression(_ref71) { - let { - arg, - callee - } = _ref71; - return [_wireFormat.SexpOpcodes.GetFreeAsDeprecatedHelperHeadOrThisFallback, callee.symbol, [arg.chars]]; - } - Tail(_ref72) { + Tail(_ref70) { let { members - } = _ref72; + } = _ref70; return (0, _util.mapPresentArray)(members, member => member.chars); } - Args(_ref73) { + Args(_ref71) { let { positional, named - } = _ref73; + } = _ref71; return [this.Positional(positional), this.NamedArguments(named)]; } - Positional(_ref74) { + Positional(_ref72) { let { list - } = _ref74; + } = _ref72; return list.map(l => EXPR.expr(l)).toPresentArray(); } - NamedArgument(_ref75) { + NamedArgument(_ref73) { let { key, value - } = _ref75; + } = _ref73; return [key.chars, EXPR.expr(value)]; } - NamedArguments(_ref76) { + NamedArguments(_ref74) { let { entries: pairs - } = _ref76; + } = _ref74; let list = pairs.toArray(); if ((0, _util.isPresentArray)(list)) { let names = []; @@ -5594,34 +5761,34 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return null; } } - Not(_ref77) { + Not(_ref75) { let { value - } = _ref77; + } = _ref75; return [_wireFormat.SexpOpcodes.Not, EXPR.expr(value)]; } - IfInline(_ref78) { + IfInline(_ref76) { let { condition, truthy, falsy - } = _ref78; + } = _ref76; let expr = [_wireFormat.SexpOpcodes.IfInline, EXPR.expr(condition), EXPR.expr(truthy)]; if (falsy) { expr.push(EXPR.expr(falsy)); } return expr; } - GetDynamicVar(_ref79) { + GetDynamicVar(_ref77) { let { name - } = _ref79; + } = _ref77; return [_wireFormat.SexpOpcodes.GetDynamicVar, EXPR.expr(name)]; } - Log(_ref80) { + Log(_ref78) { let { positional - } = _ref80; + } = _ref78; return [_wireFormat.SexpOpcodes.Log, this.Positional(positional)]; } } @@ -5674,8 +5841,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return this.If(stmt); case 'Each': return this.Each(stmt); - case 'With': - return this.With(stmt); case 'Let': return this.Let(stmt); case 'WithDynamicVars': @@ -5686,20 +5851,20 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return (0, _util.exhausted)(stmt); } } - Yield(_ref81) { + Yield(_ref79) { let { to, positional - } = _ref81; + } = _ref79; return [_wireFormat.SexpOpcodes.Yield, to, EXPR.Positional(positional)]; } - InElement(_ref82) { + InElement(_ref80) { let { guid, insertBefore, destination, block - } = _ref82; + } = _ref80; let wireBlock = CONTENT.NamedBlock(block)[1]; // let guid = args.guid; let wireDestination = EXPR.expr(destination); @@ -5710,59 +5875,59 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return [_wireFormat.SexpOpcodes.InElement, wireBlock, guid, wireDestination, wireInsertBefore]; } } - InvokeBlock(_ref83) { + InvokeBlock(_ref81) { let { head, args, blocks - } = _ref83; + } = _ref81; return [_wireFormat.SexpOpcodes.Block, EXPR.expr(head), ...EXPR.Args(args), CONTENT.NamedBlocks(blocks)]; } - AppendTrustedHTML(_ref84) { + AppendTrustedHTML(_ref82) { let { html - } = _ref84; + } = _ref82; return [_wireFormat.SexpOpcodes.TrustingAppend, EXPR.expr(html)]; } - AppendTextNode(_ref85) { + AppendTextNode(_ref83) { let { text - } = _ref85; + } = _ref83; return [_wireFormat.SexpOpcodes.Append, EXPR.expr(text)]; } - AppendComment(_ref86) { + AppendComment(_ref84) { let { value - } = _ref86; + } = _ref84; return [_wireFormat.SexpOpcodes.Comment, value.chars]; } - SimpleElement(_ref87) { + SimpleElement(_ref85) { let { tag, params, body, dynamicFeatures - } = _ref87; + } = _ref85; let op = dynamicFeatures ? _wireFormat.SexpOpcodes.OpenElementWithSplat : _wireFormat.SexpOpcodes.OpenElement; return new WireStatements([[op, deflateTagName(tag.chars)], ...CONTENT.ElementParameters(params).toArray(), [_wireFormat.SexpOpcodes.FlushElement], ...CONTENT.list(body), [_wireFormat.SexpOpcodes.CloseElement]]); } - Component(_ref88) { + Component(_ref86) { let { tag, params, args, blocks - } = _ref88; + } = _ref86; let wireTag = EXPR.expr(tag); let wirePositional = CONTENT.ElementParameters(params); let wireNamed = EXPR.NamedArguments(args); let wireNamedBlocks = CONTENT.NamedBlocks(blocks); return [_wireFormat.SexpOpcodes.Component, wireTag, wirePositional.toPresentArray(), wireNamed, wireNamedBlocks]; } - ElementParameters(_ref89) { + ElementParameters(_ref87) { let { body - } = _ref89; + } = _ref87; return body.map(p => CONTENT.ElementParameter(p)); } ElementParameter(param) { @@ -5777,10 +5942,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return [_wireFormat.SexpOpcodes.Modifier, EXPR.expr(param.callee), ...EXPR.Args(param.args)]; } } - NamedBlocks(_ref90) { + NamedBlocks(_ref88) { let { blocks - } = _ref90; + } = _ref88; let names = []; let serializedBlocks = []; for (let block of blocks.toArray()) { @@ -5790,85 +5955,77 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } return names.length > 0 ? [names, serializedBlocks] : null; } - NamedBlock(_ref91) { + NamedBlock(_ref89) { let { name, body, scope - } = _ref91; + } = _ref89; let nameChars = name.chars; if (nameChars === 'inverse') { nameChars = 'else'; } return [nameChars, [CONTENT.list(body), scope.slots]]; } - If(_ref92) { + If(_ref90) { let { condition, block, inverse - } = _ref92; + } = _ref90; return [_wireFormat.SexpOpcodes.If, EXPR.expr(condition), CONTENT.NamedBlock(block)[1], inverse ? CONTENT.NamedBlock(inverse)[1] : null]; } - Each(_ref93) { + Each(_ref91) { let { value, key, block, inverse - } = _ref93; + } = _ref91; return [_wireFormat.SexpOpcodes.Each, EXPR.expr(value), key ? EXPR.expr(key) : null, CONTENT.NamedBlock(block)[1], inverse ? CONTENT.NamedBlock(inverse)[1] : null]; } - With(_ref94) { - let { - value, - block, - inverse - } = _ref94; - return [_wireFormat.SexpOpcodes.With, EXPR.expr(value), CONTENT.NamedBlock(block)[1], inverse ? CONTENT.NamedBlock(inverse)[1] : null]; - } - Let(_ref95) { + Let(_ref92) { let { positional, block - } = _ref95; + } = _ref92; return [_wireFormat.SexpOpcodes.Let, EXPR.Positional(positional), CONTENT.NamedBlock(block)[1]]; } - WithDynamicVars(_ref96) { + WithDynamicVars(_ref93) { let { named, block - } = _ref96; + } = _ref93; return [_wireFormat.SexpOpcodes.WithDynamicVars, EXPR.NamedArguments(named), CONTENT.NamedBlock(block)[1]]; } - InvokeComponent(_ref97) { + InvokeComponent(_ref94) { let { definition, args, blocks - } = _ref97; + } = _ref94; return [_wireFormat.SexpOpcodes.InvokeComponent, EXPR.expr(definition), EXPR.Positional(args.positional), EXPR.NamedArguments(args.named), blocks ? CONTENT.NamedBlocks(blocks) : null]; } } const CONTENT = new ContentEncoder(); - function staticAttr(_ref98) { + function staticAttr(_ref95) { let { name, value, namespace - } = _ref98; + } = _ref95; let out = [deflateAttrName(name.chars), value.chars]; if (namespace) { out.push(namespace); } return out; } - function dynamicAttr(_ref99) { + function dynamicAttr(_ref96) { let { name, value, namespace - } = _ref99; + } = _ref96; let out = [deflateAttrName(name.chars), EXPR.expr(value)]; if (namespace) { out.push(namespace); @@ -6156,7 +6313,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba switch (node.type) { case 'MustacheStatement': case 'BlockStatement': - case 'PartialStatement': case 'MustacheCommentStatement': case 'CommentStatement': case 'TextNode': @@ -6173,8 +6329,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba case 'PathExpression': case 'SubExpression': return this.Expression(node); - case 'Program': - return this.Block(node); case 'ConcatStatement': // should have an AttrNode parent return this.ConcatStatement(node); @@ -6220,8 +6374,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return this.MustacheStatement(statement); case 'BlockStatement': return this.BlockStatement(statement); - case 'PartialStatement': - return this.PartialStatement(statement); case 'MustacheCommentStatement': return this.MustacheCommentStatement(statement); case 'CommentStatement': @@ -6231,13 +6383,17 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba case 'ElementNode': return this.ElementNode(statement); case 'Block': - case 'Template': return this.Block(statement); + case 'Template': + return this.Template(statement); case 'AttrNode': // should have element return this.AttrNode(statement); } } + Template(template) { + this.TopLevelStatements(template.body); + } Block(block) { /* When processing a template like: @@ -6358,7 +6514,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if (this.handledByOverride(mustache)) { return; } - this.buffer += mustache.escaped ? '{{' : '{{{'; + this.buffer += mustache.trusting ? '{{{' : '{{'; if (mustache.strip.open) { this.buffer += '~'; } @@ -6368,7 +6524,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if (mustache.strip.close) { this.buffer += '~'; } - this.buffer += mustache.escaped ? '}}' : '}}}'; + this.buffer += mustache.trusting ? '}}}' : '}}'; } BlockStatement(block) { if (this.handledByOverride(block)) { @@ -6409,16 +6565,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba BlockParams(blockParams) { this.buffer += " as |" + blockParams.join(' ') + "|"; } - PartialStatement(partial) { - if (this.handledByOverride(partial)) { - return; - } - this.buffer += '{{>'; - this.Expression(partial.name); - this.Params(partial.params); - this.Hash(partial.hash); - this.buffer += '}}'; - } ConcatStatement(concat) { if (this.handledByOverride(concat)) { return; @@ -6555,8 +6701,18 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba let printer = new Printer(options); return printer.print(ast); } - function isKeyword(word) { - return word in KEYWORDS_TYPES; + function isKeyword(word, type) { + if (word in KEYWORDS_TYPES) { + if (type === undefined) { + return true; + } else { + let types = KEYWORDS_TYPES[word]; + // This seems like a TypeScript bug – it inferred types as never[]? + return types.includes(type); + } + } else { + return false; + } } /** @@ -6564,6 +6720,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * language, and where their valid usages are. */ const KEYWORDS_TYPES = _exports.KEYWORDS_TYPES = { + action: ['Call', 'Modifier'], component: ['Call', 'Append', 'Block'], debugger: ['Append'], 'each-in': ['Block'], @@ -6574,17 +6731,14 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if: ['Call', 'Append', 'Block'], 'in-element': ['Block'], let: ['Block'], - 'link-to': ['Append', 'Block'], log: ['Call', 'Append'], - modifier: ['Call'], + modifier: ['Call', 'Modifier'], mount: ['Append'], mut: ['Call', 'Append'], outlet: ['Append'], - 'query-params': ['Call'], readonly: ['Call', 'Append'], unbound: ['Call', 'Append'], unless: ['Call', 'Append', 'Block'], - with: ['Block'], yield: ['Append'] }; const UNKNOWN_POSITION = Object.freeze({ @@ -6695,6 +6849,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // This big block is the bulk of the heavy lifting in this file. It facilitates exhaustiveness // checking so that matchers can ensure they've actually covered all the cases (and TypeScript // will treat it as an exhaustive match). + when(left, right, callback) { this._whens.get(left, () => new When()).add(right, callback); return this; @@ -7680,13 +7835,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // ensure stays in sync with typing // ParentNode and ChildKey types are derived from VisitorKeysMap const visitorKeys = _exports.visitorKeys = { - Program: ['body'], Template: ['body'], Block: ['body'], MustacheStatement: ['path', 'params', 'hash'], BlockStatement: ['path', 'params', 'hash', 'program', 'inverse'], ElementModifierStatement: ['path', 'params', 'hash'], - PartialStatement: ['name', 'params', 'hash'], CommentStatement: [], MustacheCommentStatement: [], ElementNode: ['attributes', 'modifiers', 'children', 'comments'], @@ -7695,18 +7848,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba ConcatStatement: ['parts'], SubExpression: ['path', 'params', 'hash'], PathExpression: [], - PathHead: [], StringLiteral: [], BooleanLiteral: [], NumberLiteral: [], NullLiteral: [], UndefinedLiteral: [], Hash: ['pairs'], - HashPair: ['value'], - // v2 new nodes - NamedBlock: ['attributes', 'modifiers', 'children', 'comments'], - SimpleElement: ['attributes', 'modifiers', 'children', 'comments'], - Component: ['head', 'attributes', 'modifiers', 'children', 'comments'] + HashPair: ['value'] }; const TraversalError = function () { TraversalError.prototype = Object.create(Error.prototype); @@ -7803,8 +7951,9 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return keyVisitor.All; } function getNodeHandler(visitor, nodeType) { - if (nodeType === 'Template' || nodeType === 'Block') { - if (visitor.Program) { + if (visitor.Program) { + if (nodeType === 'Template' && !visitor.Template || nodeType === 'Block' && !visitor.Block) { + (0, _util.deprecate)("The 'Program' visitor node is deprecated. Use 'Template' or 'Block' instead (node was '" + nodeType + "') "); return visitor.Program; } } @@ -7967,88 +8116,26 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba switch (node.type) { case 'Block': case 'Template': - return visitors.Program(this, node, callback); + walkBody(this, node.body, callback); + return; case 'ElementNode': - return visitors.ElementNode(this, node, callback); + walkBody(this, node.children, callback); + return; case 'BlockStatement': - return visitors.BlockStatement(this, node, callback); + this.visit(node.program, callback); + this.visit(node.inverse || null, callback); + return; default: return; } } } _exports.Walker = _exports.Path = Walker; - const visitors = { - Program(walker, node, callback) { - walkBody(walker, node.body, callback); - }, - Template(walker, node, callback) { - walkBody(walker, node.body, callback); - }, - Block(walker, node, callback) { - walkBody(walker, node.body, callback); - }, - ElementNode(walker, node, callback) { - walkBody(walker, node.children, callback); - }, - BlockStatement(walker, node, callback) { - walker.visit(node.program, callback); - walker.visit(node.inverse || null, callback); - } - }; function walkBody(walker, body, callback) { for (const child of body) { walker.visit(child, callback); } } - - // Regex to validate the identifier for block parameters. - // Based on the ID validation regex in Handlebars. - - let ID_INVERSE_PATTERN = /[!"#%&'()*+./;<=>@[\\\]^`{|}~]/u; - - // Checks the element's attributes to see if it uses block params. - // If it does, registers the block params with the program and - // removes the corresponding attributes from the element. - - function parseElementBlockParams(element) { - let params = parseBlockParams(element); - if (params) element.blockParams = params; - } - function parseBlockParams(element) { - let l = element.attributes.length; - let attrNames = []; - for (let i = 0; i < l; i++) { - attrNames.push((0, _util.unwrap)(element.attributes[i]).name); - } - let asIndex = attrNames.indexOf('as'); - if (asIndex === -1 && attrNames.length > 0 && (0, _util.unwrap)(attrNames[attrNames.length - 1]).charAt(0) === '|') { - throw generateSyntaxError('Block parameters must be preceded by the `as` keyword, detected block parameters without `as`', element.loc); - } - if (asIndex !== -1 && l > asIndex && (0, _util.unwrap)(attrNames[asIndex + 1]).charAt(0) === '|') { - // Some basic validation, since we're doing the parsing ourselves - let paramsString = attrNames.slice(asIndex).join(' '); - if (paramsString.charAt(paramsString.length - 1) !== '|' || (0, _util.expect)(paramsString.match(/\|/gu), "block params must exist here").length !== 2) { - throw generateSyntaxError("Invalid block parameters syntax, '" + paramsString + "'", element.loc); - } - let params = []; - for (let i = asIndex + 1; i < l; i++) { - let param = (0, _util.unwrap)(attrNames[i]).replace(/\|/gu, ''); - if (param !== '') { - if (ID_INVERSE_PATTERN.test(param)) { - throw generateSyntaxError("Invalid identifier for block parameters, '" + param + "'", element.loc); - } - params.push(param); - } - } - if (params.length === 0) { - throw generateSyntaxError('Cannot use zero block parameters', element.loc); - } - element.attributes = element.attributes.slice(0, asIndex); - return params; - } - return null; - } function childrenFor(node) { switch (node.type) { case 'Block': @@ -8090,109 +8177,94 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // const SOURCE = new Source('', '(tests)'); // Statements - function buildMustache(path, params, hash, raw, loc, strip) { - if (typeof path === 'string') { - path = buildPath(path); + + function buildMustache(path, params, hash, trusting, loc, strip) { + if (params === void 0) { + params = []; } - return { - type: 'MustacheStatement', - path, - params: params || [], - hash: hash || buildHash([]), - escaped: !raw, - trusting: !!raw, - loc: buildLoc(loc || null), - strip: strip || { - open: false, - close: false - } - }; - } - function buildBlock(path, params, hash, _defaultBlock, _elseBlock, loc, openStrip, inverseStrip, closeStrip) { - let defaultBlock; - let elseBlock; + if (hash === void 0) { + hash = buildHash([]); + } + if (trusting === void 0) { + trusting = false; + } + return b.mustache({ + path: buildPath(path), + params, + hash, + trusting, + strip, + loc: buildLoc(loc || null) + }); + } + function buildBlock(path, params, hash, _defaultBlock, _elseBlock, loc, openStrip, inverseStrip, closeStrip) { + var _elseBlock2; + if (_elseBlock === void 0) { + _elseBlock = null; + } + let defaultBlock; + let elseBlock = null; if (_defaultBlock.type === 'Template') { - defaultBlock = (0, _util.assign)({}, _defaultBlock, { - type: 'Block' + (0, _util.deprecate)("b.program is deprecated. Use b.blockItself instead."); + defaultBlock = b.blockItself({ + params: buildBlockParams(_defaultBlock.blockParams), + body: _defaultBlock.body, + loc: _defaultBlock.loc }); } else { defaultBlock = _defaultBlock; } - if (_elseBlock !== undefined && _elseBlock !== null && _elseBlock.type === 'Template') { - elseBlock = (0, _util.assign)({}, _elseBlock, { - type: 'Block' + if (((_elseBlock2 = _elseBlock) == null ? void 0 : _elseBlock2.type) === 'Template') { + (0, _util.deprecate)("b.program is deprecated. Use b.blockItself instead."); + (0, _util.assert)(_elseBlock.blockParams.length === 0, '{{else}} block cannot have block params'); + elseBlock = b.blockItself({ + params: [], + body: _elseBlock.body, + loc: _elseBlock.loc }); } else { elseBlock = _elseBlock; } - return { - type: 'BlockStatement', + return b.block({ path: buildPath(path), params: params || [], hash: hash || buildHash([]), - program: defaultBlock || null, - inverse: elseBlock || null, + defaultBlock, + elseBlock, loc: buildLoc(loc || null), - openStrip: openStrip || { - open: false, - close: false - }, - inverseStrip: inverseStrip || { - open: false, - close: false - }, - closeStrip: closeStrip || { - open: false, - close: false - } - }; + openStrip, + inverseStrip, + closeStrip + }); } function buildElementModifier(path, params, hash, loc) { - return { - type: 'ElementModifierStatement', + return b.elementModifier({ path: buildPath(path), params: params || [], hash: hash || buildHash([]), loc: buildLoc(loc || null) - }; - } - function buildPartial(name, params, hash, indent, loc) { - return { - type: 'PartialStatement', - name: name, - params: params || [], - hash: hash || buildHash([]), - indent: indent || '', - strip: { - open: false, - close: false - }, - loc: buildLoc(loc || null) - }; + }); } function buildComment(value, loc) { - return { - type: 'CommentStatement', + return b.comment({ value: value, loc: buildLoc(loc || null) - }; + }); } function buildMustacheComment(value, loc) { - return { - type: 'MustacheCommentStatement', + return b.mustacheComment({ value: value, loc: buildLoc(loc || null) - }; + }); } function buildConcat(parts, loc) { if (!(0, _util.isPresentArray)(parts)) { throw new Error("b.concat requires at least one part"); } - return { - type: 'ConcatStatement', - parts: parts || [], + return b.concat({ + parts, loc: buildLoc(loc || null) - }; + }); } // Nodes @@ -8207,235 +8279,247 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba modifiers, comments, children, + openTag, + closeTag: _closeTag, loc } = options; - let tagName; // this is used for backwards compat, prior to `selfClosing` being part of the ElementNode AST - let selfClosing = false; - if (typeof tag === 'object') { + let path; + let selfClosing; + if (typeof tag === 'string') { + if (tag.endsWith('/')) { + path = buildPath(tag.slice(0, -1)); + selfClosing = true; + } else { + path = buildPath(tag); + } + } else if ('type' in tag) { + (0, _util.assert)(tag.type === 'PathExpression', "Invalid tag type " + tag.type); + path = tag; + } else if ('path' in tag) { + (0, _util.assert)(tag.path.type === 'PathExpression', "Invalid tag type " + tag.path.type); + path = tag.path; selfClosing = tag.selfClosing; - tagName = tag.name; - } else if (tag.slice(-1) === '/') { - tagName = tag.slice(0, -1); - selfClosing = true; } else { - tagName = tag; + path = buildPath(tag.name); + selfClosing = tag.selfClosing; } - return { - type: 'ElementNode', - tag: tagName, - selfClosing: selfClosing, + if (selfClosing) { + (0, _util.assert)(_closeTag === null || _closeTag === undefined, 'Cannot build a self-closing tag with a closeTag source location'); + } + let params = blockParams == null ? void 0 : blockParams.map(param => { + if (typeof param === 'string') { + return buildVar(param); + } else { + return param; + } + }); + let closeTag = null; + if (_closeTag) { + closeTag = buildLoc(_closeTag || null); + } else if (_closeTag === undefined) { + closeTag = selfClosing || isVoidTag(path.original) ? null : buildLoc(null); + } + return b.element({ + path, + selfClosing: selfClosing || false, attributes: attrs || [], - blockParams: blockParams || [], + params: params || [], modifiers: modifiers || [], comments: comments || [], children: children || [], + openTag: buildLoc(openTag || null), + closeTag, loc: buildLoc(loc || null) - }; + }); } function buildAttr(name, value, loc) { - return { - type: 'AttrNode', + return b.attr({ name: name, value: value, loc: buildLoc(loc || null) - }; + }); } function buildText(chars, loc) { - return { - type: 'TextNode', - chars: chars || '', + if (chars === void 0) { + chars = ''; + } + return b.text({ + chars, loc: buildLoc(loc || null) - }; + }); } // Expressions function buildSexpr(path, params, hash, loc) { - return { - type: 'SubExpression', + if (params === void 0) { + params = []; + } + if (hash === void 0) { + hash = buildHash([]); + } + return b.sexpr({ path: buildPath(path), - params: params || [], - hash: hash || buildHash([]), + params, + hash, loc: buildLoc(loc || null) - }; - } - function headToString$1(head) { - switch (head.type) { - case 'AtHead': - return { - original: head.name, - parts: [head.name] - }; - case 'ThisHead': - return { - original: "this", - parts: [] - }; - case 'VarHead': - return { - original: head.name, - parts: [head.name] - }; - } + }); } function buildHead(original, loc) { let [head, ...tail] = (0, _util.asPresentArray)(original.split('.')); - let headNode; - if (head === 'this') { - headNode = { - type: 'ThisHead', - loc: buildLoc(loc || null) - }; - } else if (head[0] === '@') { - headNode = { - type: 'AtHead', - name: head, - loc: buildLoc(loc || null) - }; - } else { - headNode = { - type: 'VarHead', - name: head, - loc: buildLoc(loc || null) - }; - } - return { + let headNode = b.head({ + original: head, + loc: buildLoc(loc || null) + }); + return b.path({ head: headNode, - tail - }; + tail, + loc: buildLoc(loc || null) + }); } function buildThis(loc) { - return { - type: 'ThisHead', + return b.this({ loc: buildLoc(loc || null) - }; + }); } function buildAtName(name, loc) { - // the `@` should be included so we have a complete source range - (0, _util.assert)(name[0] === '@', "call builders.at() with a string that starts with '@'"); - return { - type: 'AtHead', + return b.atName({ name, loc: buildLoc(loc || null) - }; + }); } function buildVar(name, loc) { - (0, _util.assert)(name !== 'this', "You called builders.var() with 'this'. Call builders.this instead"); - (0, _util.assert)(name[0] !== '@', "You called builders.var() with '" + name + "'. Call builders.at('" + name + "') instead"); - return { - type: 'VarHead', + return b.var({ name, loc: buildLoc(loc || null) - }; - } - function buildHeadFromString(head, loc) { - if (head[0] === '@') { - return buildAtName(head, loc); - } else if (head === 'this') { - return buildThis(loc); - } else { - return buildVar(head, loc); - } + }); } - function buildNamedBlockName(name, loc) { - return { - type: 'NamedBlockName', - name, + function buildHeadFromString(original, loc) { + return b.head({ + original, loc: buildLoc(loc || null) - }; + }); } function buildCleanPath(head, tail, loc) { - let { - original: originalHead, - parts: headParts - } = headToString$1(head); - let parts = [...headParts, ...tail]; - let original = [...originalHead, ...parts].join('.'); - return new PathExpressionImplV1(original, head, tail, buildLoc(loc || null)); + if (tail === void 0) { + tail = []; + } + return b.path({ + head, + tail, + loc: buildLoc(loc || null) + }); } function buildPath(path, loc) { + let span = buildLoc(loc || null); if (typeof path !== 'string') { if ('type' in path) { return path; } else { + (0, _util.assert)(path.head.indexOf('.') === -1, "builder.path({ head, tail }) should not be called with a head with dots in it"); let { head, tail - } = buildHead(path.head, SourceSpan.broken()); - (0, _util.assert)(tail.length === 0, "builder.path({ head, tail }) should not be called with a head with dots in it"); - let { - original: originalHead - } = headToString$1(head); - return new PathExpressionImplV1([originalHead, ...tail].join('.'), head, tail, buildLoc(loc || null)); + } = path; + return b.path({ + head: b.head({ + original: head, + loc: span.sliceStartChars({ + chars: head.length + }) + }), + tail, + loc: buildLoc(loc || null) + }); } } let { head, tail - } = buildHead(path, SourceSpan.broken()); - return new PathExpressionImplV1(path, head, tail, buildLoc(loc || null)); + } = buildHead(path, span); + return b.path({ + head, + tail, + loc: span + }); } function buildLiteral(type, value, loc) { - return { + return b.literal({ type, value, - original: value, loc: buildLoc(loc || null) - }; + }); } // Miscellaneous function buildHash(pairs, loc) { - return { - type: 'Hash', - pairs: pairs || [], + if (pairs === void 0) { + pairs = []; + } + return b.hash({ + pairs, loc: buildLoc(loc || null) - }; + }); } function buildPair(key, value, loc) { - return { - type: 'HashPair', - key: key, + return b.pair({ + key, value, loc: buildLoc(loc || null) - }; + }); } function buildProgram(body, blockParams, loc) { - return { - type: 'Template', - body: body || [], - blockParams: blockParams || [], - loc: buildLoc(loc || null) - }; + (0, _util.deprecate)("b.program is deprecated. Use b.template or b.blockItself instead."); + if (blockParams && blockParams.length) { + return buildBlockItself(body, blockParams, false, loc); + } else { + return buildTemplate(body, [], loc); + } + } + function buildBlockParams(params) { + return params.map(p => typeof p === 'string' ? b.var({ + name: p, + loc: SourceSpan.synthetic(p) + }) : p); } - function buildBlockItself(body, blockParams, chained, loc) { + function buildBlockItself(body, params, chained, loc) { + if (body === void 0) { + body = []; + } + if (params === void 0) { + params = []; + } if (chained === void 0) { chained = false; } - return { - type: 'Block', - body: body || [], - blockParams: blockParams || [], + return b.blockItself({ + body, + params: buildBlockParams(params), chained, loc: buildLoc(loc || null) - }; + }); } function buildTemplate(body, blockParams, loc) { - return { - type: 'Template', - body: body || [], - blockParams: blockParams || [], + if (body === void 0) { + body = []; + } + if (blockParams === void 0) { + blockParams = []; + } + return b.template({ + body, + blockParams, loc: buildLoc(loc || null) - }; + }); } function buildPosition(line, column) { - return { + return b.pos({ line, column - }; + }); } function buildLoc() { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { @@ -8457,8 +8541,8 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba column: startColumn }, end: { - line: endLine, - column: endColumn + line: endLine || startLine, + column: endColumn || startColumn } }); } @@ -8466,7 +8550,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba var publicBuilder = _exports.builders = { mustache: buildMustache, block: buildBlock, - partial: buildPartial, comment: buildComment, mustacheComment: buildMustacheComment, element: buildElement, @@ -8489,7 +8572,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba at: buildAtName, var: buildVar, this: buildThis, - blockName: buildNamedBlockName, string: literal('StringLiteral'), boolean: literal('BooleanLiteral'), number: literal('NumberLiteral'), @@ -8505,48 +8587,127 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return buildLiteral(type, value, loc); }; } - class PathExpressionImplV1 { - constructor(original, head, tail, loc) { - this.type = 'PathExpression'; - this.parts = void 0; - this.this = false; - this.data = false; - // Cache for the head value. - this._head = undefined; - this.original = original; - this.loc = loc; - let parts = tail.slice(); - if (head.type === 'ThisHead') { - this.this = true; - } else if (head.type === 'AtHead') { - this.data = true; - parts.unshift(head.name.slice(1)); - } else { - parts.unshift(head.name); + function buildLegacyMustache(_ref13) { + let { + path, + params, + hash, + trusting, + strip, + loc + } = _ref13; + const node = { + type: 'MustacheStatement', + path, + params, + hash, + trusting, + strip, + loc + }; + Object.defineProperty(node, 'escaped', { + enumerable: false, + get() { + (0, _util.deprecate)("The escaped property on mustache nodes is deprecated, use trusting instead"); + return !this.trusting; + }, + set(value) { + (0, _util.deprecate)("The escaped property on mustache nodes is deprecated, use trusting instead"); + this.trusting = !value; } - this.parts = parts; - } - get head() { - if (this._head) { - return this._head; + }); + return node; + } + function buildLegacyPath(_ref14) { + let { + head, + tail, + loc + } = _ref14; + const node = { + type: 'PathExpression', + head, + tail, + get original() { + return [this.head.original, ...this.tail].join('.'); + }, + set original(value) { + let [head, ...tail] = (0, _util.asPresentArray)(value.split('.')); + this.head = publicBuilder.head(head, this.head.loc); + this.tail = tail; + }, + loc + }; + Object.defineProperty(node, 'parts', { + enumerable: false, + get() { + (0, _util.deprecate)("The parts property on path nodes is deprecated, use head and tail instead"); + let parts = (0, _util.asPresentArray)(this.original.split('.')); + if (parts[0] === 'this') { + // parts does not include `this` + parts.shift(); + } else if (parts[0].startsWith('@')) { + // parts does not include leading `@` + parts[0] = parts[0].slice(1); + } + return Object.freeze(parts); + }, + set(values) { + var _parts$; + (0, _util.deprecate)("The parts property on mustache nodes is deprecated, use head and tail instead"); + let parts = [...values]; + + // you are not supposed to already have `this` or `@` in the parts, but since this is + // deprecated anyway, we will infer what you meant and allow it + if (parts[0] !== 'this' && !((_parts$ = parts[0]) != null && _parts$.startsWith('@'))) { + if (this.head.type === 'ThisHead') { + parts.unshift('this'); + } else if (this.head.type === 'AtHead') { + parts[0] = "@" + parts[0]; + } + } + this.original = parts.join('.'); } - let firstPart; - if (this.this) { - firstPart = 'this'; - } else if (this.data) { - firstPart = "@" + (0, _util.getFirst)((0, _util.asPresentArray)(this.parts)); - } else { - (0, _util.assertPresentArray)(this.parts); - firstPart = (0, _util.getFirst)(this.parts); + }); + Object.defineProperty(node, 'this', { + enumerable: false, + get() { + (0, _util.deprecate)("The this property on path nodes is deprecated, use head.type instead"); + return this.head.type === 'ThisHead'; } - let firstPartLoc = this.loc.collapse('start').sliceStartChars({ - chars: firstPart.length - }).loc; - return this._head = publicBuilder.head(firstPart, firstPartLoc); - } - get tail() { - return this.this ? this.parts : this.parts.slice(1); - } + }); + Object.defineProperty(node, 'data', { + enumerable: false, + get() { + (0, _util.deprecate)("The data property on path nodes is deprecated, use head.type instead"); + return this.head.type === 'AtHead'; + } + }); + return node; + } + function buildLegacyLiteral(_ref15) { + let { + type, + value, + loc + } = _ref15; + const node = { + type, + value, + loc + }; + Object.defineProperty(node, 'original', { + enumerable: false, + get() { + (0, _util.deprecate)("The original property on literal nodes is deprecated, use value instead"); + return this.value; + }, + set(value) { + (0, _util.deprecate)("The original property on literal nodes is deprecated, use value instead"); + this.value = value; + } + }); + return node; } const DEFAULT_STRIP = { close: false, @@ -8560,41 +8721,56 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * 2. Mandating source locations */ class Builders { - pos(line, column) { + pos(_ref16) { + let { + line, + column + } = _ref16; return { line, column }; } - blockItself(_ref13) { + blockItself(_ref17) { let { - body = [], - blockParams = [], + body, + params, chained = false, loc - } = _ref13; + } = _ref17; return { type: 'Block', - body: body, - blockParams: blockParams, + body, + params, + get blockParams() { + return this.params.map(p => p.name); + }, + set blockParams(params) { + this.params = params.map(name => { + return b.var({ + name, + loc: SourceSpan.synthetic(name) + }); + }); + }, chained, loc }; } - template(_ref14) { + template(_ref18) { let { body, blockParams, loc - } = _ref14; + } = _ref18; return { type: 'Template', - body: body || [], - blockParams: blockParams || [], + body, + blockParams, loc }; } - mustache(_ref15) { + mustache(_ref19) { let { path, params, @@ -8602,22 +8778,17 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba trusting, loc, strip = DEFAULT_STRIP - } = _ref15; - return { - type: 'MustacheStatement', + } = _ref19; + return buildLegacyMustache({ path, params, hash, - escaped: !trusting, trusting, - loc, - strip: strip || { - open: false, - close: false - } - }; + strip, + loc + }); } - block(_ref16) { + block(_ref20) { let { path, params, @@ -8628,7 +8799,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba openStrip = DEFAULT_STRIP, inverseStrip = DEFAULT_STRIP, closeStrip = DEFAULT_STRIP - } = _ref16; + } = _ref20; return { type: 'BlockStatement', path: path, @@ -8636,63 +8807,107 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba hash, program: defaultBlock, inverse: elseBlock, - loc: loc, - openStrip: openStrip, - inverseStrip: inverseStrip, - closeStrip: closeStrip + loc, + openStrip, + inverseStrip, + closeStrip }; } - comment(value, loc) { + comment(_ref21) { + let { + value, + loc + } = _ref21; return { type: 'CommentStatement', - value: value, + value, loc }; } - mustacheComment(value, loc) { + mustacheComment(_ref22) { + let { + value, + loc + } = _ref22; return { type: 'MustacheCommentStatement', - value: value, + value, loc }; } - concat(parts, loc) { + concat(_ref23) { + let { + parts, + loc + } = _ref23; return { type: 'ConcatStatement', parts, loc }; } - element(_ref17) { + element(_ref24) { let { - tag, + path, selfClosing, - attrs, - blockParams, + attributes, modifiers, + params, comments, children, + openTag, + closeTag, loc - } = _ref17; + } = _ref24; + let _selfClosing = selfClosing; return { type: 'ElementNode', - tag, - selfClosing: selfClosing, - attributes: attrs || [], - blockParams: blockParams || [], - modifiers: modifiers || [], - comments: comments || [], - children: children || [], - loc + path, + attributes, + modifiers, + params, + comments, + children, + openTag, + closeTag, + loc, + get tag() { + return this.path.original; + }, + set tag(name) { + this.path.original = name; + }, + get blockParams() { + return this.params.map(p => p.name); + }, + set blockParams(params) { + this.params = params.map(name => { + return b.var({ + name, + loc: SourceSpan.synthetic(name) + }); + }); + }, + get selfClosing() { + return _selfClosing; + }, + set selfClosing(selfClosing) { + _selfClosing = selfClosing; + if (selfClosing) { + this.closeTag = null; + } else { + this.closeTag = SourceSpan.synthetic(""); + } + } }; } - elementModifier(_ref18) { + elementModifier(_ref25) { let { path, params, hash, loc - } = _ref18; + } = _ref25; return { type: 'ElementModifierStatement', path, @@ -8701,12 +8916,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }; } - attr(_ref19) { + attr(_ref26) { let { name, value, loc - } = _ref19; + } = _ref26; return { type: 'AttrNode', name: name, @@ -8714,24 +8929,24 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }; } - text(_ref20) { + text(_ref27) { let { chars, loc - } = _ref20; + } = _ref27; return { type: 'TextNode', chars, loc }; } - sexpr(_ref21) { + sexpr(_ref28) { let { path, params, hash, loc - } = _ref21; + } = _ref28; return { type: 'SubExpression', path, @@ -8740,143 +8955,149 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }; } - path(_ref22) { + path(_ref29) { let { head, tail, loc - } = _ref22; + } = _ref29; + return buildLegacyPath({ + head, + tail, + loc + }); + } + head(_ref30) { let { - original: originalHead - } = headToString(head); - let original = [...originalHead, ...tail].join('.'); - return new PathExpressionImplV1(original, head, tail, loc); - } - head(head, loc) { - if (head[0] === '@') { - return this.atName(head, loc); - } else if (head === 'this') { - return this.this(loc); + original, + loc + } = _ref30; + if (original === 'this') { + return this.this({ + loc + }); + } + if (original[0] === '@') { + return this.atName({ + name: original, + loc + }); } else { - return this.var(head, loc); + return this.var({ + name: original, + loc + }); } } - this(loc) { + this(_ref31) { + let { + loc + } = _ref31; return { type: 'ThisHead', + get original() { + return 'this'; + }, loc }; } - atName(name, loc) { - // the `@` should be included so we have a complete source range - (0, _util.assert)(name[0] === '@', "call builders.at() with a string that starts with '@'"); - return { - type: 'AtHead', + atName(_ref32) { + let { name, loc + } = _ref32; + let _name = ''; + const node = { + type: 'AtHead', + get name() { + return _name; + }, + set name(value) { + (0, _util.assert)(value[0] === '@', "call builders.at() with a string that starts with '@'"); + (0, _util.assert)(value.indexOf('.') === -1, "builder.at() should not be called with a name with dots in it"); + _name = value; + }, + get original() { + return this.name; + }, + set original(value) { + this.name = value; + }, + loc }; + + // trigger the assertions + node.name = name; + return node; } - var(name, loc) { - (0, _util.assert)(name !== 'this', "You called builders.var() with 'this'. Call builders.this instead"); - (0, _util.assert)(name[0] !== '@', "You called builders.var() with '" + name + "'. Call builders.at('" + name + "') instead"); - return { - type: 'VarHead', + var(_ref33) { + let { name, loc + } = _ref33; + let _name = ''; + const node = { + type: 'VarHead', + get name() { + return _name; + }, + set name(value) { + (0, _util.assert)(value !== 'this', "You called builders.var() with 'this'. Call builders.this instead"); + (0, _util.assert)(value[0] !== '@', "You called builders.var() with '" + name + "'. Call builders.at('" + name + "') instead"); + (0, _util.assert)(value.indexOf('.') === -1, "builder.var() should not be called with a name with dots in it"); + _name = value; + }, + get original() { + return this.name; + }, + set original(value) { + this.name = value; + }, + loc }; + + // trigger the assertions + node.name = name; + return node; } - hash(pairs, loc) { + hash(_ref34) { + let { + pairs, + loc + } = _ref34; return { type: 'Hash', - pairs: pairs || [], + pairs, loc }; } - pair(_ref23) { + pair(_ref35) { let { key, value, loc - } = _ref23; + } = _ref35; return { type: 'HashPair', - key: key, + key, value, loc }; } - literal(_ref24) { + literal(_ref36) { let { type, value, loc - } = _ref24; - return { + } = _ref36; + return buildLegacyLiteral({ type, value, - original: value, - loc - }; - } - undefined() { - return this.literal({ - type: 'UndefinedLiteral', - value: undefined - }); - } - null() { - return this.literal({ - type: 'NullLiteral', - value: null - }); - } - string(value, loc) { - return this.literal({ - type: 'StringLiteral', - value, - loc - }); - } - boolean(value, loc) { - return this.literal({ - type: 'BooleanLiteral', - value, - loc - }); - } - number(value, loc) { - return this.literal({ - type: 'NumberLiteral', - value, loc }); } } - - // Nodes - - // Expressions - - function headToString(head) { - switch (head.type) { - case 'AtHead': - return { - original: head.name, - parts: [head.name] - }; - case 'ThisHead': - return { - original: "this", - parts: [] - }; - case 'VarHead': - return { - original: head.name, - parts: [head.name] - }; - } - } - var b = new Builders(); + const b = new Builders(); class Parser { constructor(source, entityParser, mode) { if (entityParser === void 0) { @@ -8902,21 +9123,20 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } = this.tokenizer; return this.source.offsetFor(line, column); } - pos(_ref25) { + pos(_ref37) { let { line, column - } = _ref25; + } = _ref37; return this.source.offsetFor(line, column); } finish(node) { return (0, _util.assign)({}, node, { - loc: node.loc.until(this.offset()) + loc: node.start.until(this.offset()) }); // node.loc = node.loc.withEnd(end); } - get currentAttr() { return (0, _util.expect)(this.currentAttribute, 'expected attribute'); } @@ -8945,9 +9165,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba (0, _util.assert)(node && node.type === 'TextNode', 'expected a text node'); return node; } - acceptTemplate(node) { - return this[node.type](node); - } acceptNode(node) { return this[node.type](node); } @@ -8990,45 +9207,76 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba const BEFORE_ATTRIBUTE_NAME = 'beforeAttributeName'; const ATTRIBUTE_VALUE_UNQUOTED = 'attributeValueUnquoted'; class HandlebarsNodeVisitors extends Parser { - get isTopLevel() { - return this.elementStack.length === 0; - } - Program(program) { - const body = []; - let node; - if (this.isTopLevel) { - node = b.template({ - body, - blockParams: program.blockParams, - loc: this.source.spanFor(program.loc) - }); - } else { - node = b.blockItself({ - body, - blockParams: program.blockParams, - chained: program.chained, - loc: this.source.spanFor(program.loc) - }); - } - let i, - l = program.body.length; - this.elementStack.push(node); - if (l === 0) { - return this.elementStack.pop(); + constructor() { + super(...arguments); + // Because we interleave the HTML and HBS parsing, sometimes the HTML + // tokenizer can run out of tokens when we switch into {{...}} or reached + // EOF. There are positions where neither of these are expected, and it would + // like to generate an error, but there is no span to attach the error to. + // This allows the HTML tokenization to stash an error message and the next + // mustache visitor will attach the message to the appropriate span and throw + // the error. + this.pendingError = null; + } + parse(program, blockParams) { + var _this$pendingError; + let node = b.template({ + body: [], + blockParams, + loc: this.source.spanFor(program.loc) + }); + let template = this.parseProgram(node, program); + + // TODO: we really need to verify that the tokenizer is in an acceptable + // state when we are "done" parsing. For example, right now, `= limit) { + nameStart = -1; + } else { + nameStart = content.indexOf(name, skipStart); + } + if (nameStart === -1 || nameStart + name.length > limit) { + skipStart = limit; + loc = this.source.spanFor(NON_EXISTENT_LOCATION); + } else { + skipStart = nameStart; + loc = span.sliceStartChars({ + skipStart, + chars: name.length + }); + skipStart += name.length; + } + blockParams.push(b.var({ + name, + loc + })); + } + } // These are bugs in Handlebars upstream if (!block.program.loc) { @@ -9049,8 +9357,8 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if (block.inverse && !block.inverse.loc) { block.inverse.loc = NON_EXISTENT_LOCATION; } - const program = this.Program(block.program); - const inverse = block.inverse ? this.Program(block.inverse) : null; + const program = this.Program(block.program, blockParams); + const inverse = block.inverse ? this.Program(block.inverse, []) : null; const node = b.block({ path, params, @@ -9066,6 +9374,8 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba appendChild(parentProgram, node); } MustacheStatement(rawMustache) { + var _this$pendingError2; + (_this$pendingError2 = this.pendingError) == null || _this$pendingError2.mustache(this.source.spanFor(rawMustache.loc)); const { tokenizer } = this; @@ -9079,11 +9389,17 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc, strip } = rawMustache; + if ('original' in rawMustache.path && rawMustache.path.original === '...attributes') { + throw generateSyntaxError('Illegal use of ...attributes', this.source.spanFor(rawMustache.loc)); + } if (isHBSLiteral(rawMustache.path)) { mustache = b.mustache({ path: this.acceptNode(rawMustache.path), params: [], - hash: b.hash([], this.source.spanFor(rawMustache.path.loc).collapse('end')), + hash: b.hash({ + pairs: [], + loc: this.source.spanFor(rawMustache.path.loc).collapse('end') + }), trusting: !escaped, loc: this.source.spanFor(loc), strip @@ -9176,7 +9492,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba value, loc } = rawComment; - const comment = b.mustacheComment(value, this.source.spanFor(loc)); + const comment = b.mustacheComment({ + value, + loc: this.source.spanFor(loc) + }); switch (tokenizer.state) { case 'beforeAttributeName': case 'afterAttributeName': @@ -9254,50 +9573,51 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } let pathHead; if (thisHead) { - pathHead = { - type: 'ThisHead', - loc: { + pathHead = b.this({ + loc: this.source.spanFor({ start: path.loc.start, end: { line: path.loc.start.line, column: path.loc.start.column + 4 } - } - }; + }) + }); } else if (path.data) { const head = parts.shift(); if (head === undefined) { throw generateSyntaxError("Attempted to parse a path expression, but it was not valid. Paths beginning with @ must start with a-z.", this.source.spanFor(path.loc)); } - pathHead = { - type: 'AtHead', + pathHead = b.atName({ name: "@" + head, - loc: { + loc: this.source.spanFor({ start: path.loc.start, end: { line: path.loc.start.line, column: path.loc.start.column + head.length + 1 } - } - }; + }) + }); } else { const head = parts.shift(); if (head === undefined) { throw generateSyntaxError("Attempted to parse a path expression, but it was not valid. Paths must start with a-z or A-Z.", this.source.spanFor(path.loc)); } - pathHead = { - type: 'VarHead', + pathHead = b.var({ name: head, - loc: { + loc: this.source.spanFor({ start: path.loc.start, end: { line: path.loc.start.line, column: path.loc.start.column + head.length } - } - }; + }) + }); } - return new PathExpressionImplV1(path.original, pathHead, parts, this.source.spanFor(path.loc)); + return b.path({ + head: pathHead, + tail: parts, + loc: this.source.spanFor(path.loc) + }); } Hash(hash) { const pairs = hash.pairs.map(pair => b.pair({ @@ -9305,41 +9625,44 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba value: this.acceptNode(pair.value), loc: this.source.spanFor(pair.loc) })); - return b.hash(pairs, this.source.spanFor(hash.loc)); + return b.hash({ + pairs, + loc: this.source.spanFor(hash.loc) + }); } StringLiteral(string) { return b.literal({ type: 'StringLiteral', value: string.value, - loc: string.loc + loc: this.source.spanFor(string.loc) }); } BooleanLiteral(boolean) { return b.literal({ type: 'BooleanLiteral', value: boolean.value, - loc: boolean.loc + loc: this.source.spanFor(boolean.loc) }); } NumberLiteral(number) { return b.literal({ type: 'NumberLiteral', value: number.value, - loc: number.loc + loc: this.source.spanFor(number.loc) }); } UndefinedLiteral(undef) { return b.literal({ type: 'UndefinedLiteral', value: undefined, - loc: undef.loc + loc: this.source.spanFor(undef.loc) }); } NullLiteral(nul) { return b.literal({ type: 'NullLiteral', value: null, - loc: nul.loc + loc: this.source.spanFor(nul.loc) }); } } @@ -9377,33 +9700,44 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba tokenizer.column = column; } function acceptCallNodes(compiler, node) { - if (node.path.type.endsWith('Literal')) { - const path = node.path; - let value = ''; - if (path.type === 'BooleanLiteral') { - value = path.original.toString(); - } else if (path.type === 'StringLiteral') { - value = "\"" + path.original + "\""; - } else if (path.type === 'NullLiteral') { - value = 'null'; - } else if (path.type === 'NumberLiteral') { - value = path.value.toString(); - } else { - value = 'undefined'; - } - throw generateSyntaxError(path.type + " \"" + (path.type === 'StringLiteral' ? path.original : value) + "\" cannot be called as a sub-expression, replace (" + value + ") with " + value, compiler.source.spanFor(path.loc)); + let path; + switch (node.path.type) { + case 'PathExpression': + path = compiler.PathExpression(node.path); + break; + case 'SubExpression': + path = compiler.SubExpression(node.path); + break; + case 'StringLiteral': + case 'UndefinedLiteral': + case 'NullLiteral': + case 'NumberLiteral': + case 'BooleanLiteral': + { + let value; + if (node.path.type === 'BooleanLiteral') { + value = node.path.original.toString(); + } else if (node.path.type === 'StringLiteral') { + value = "\"" + node.path.original + "\""; + } else if (node.path.type === 'NullLiteral') { + value = 'null'; + } else if (node.path.type === 'NumberLiteral') { + value = node.path.value.toString(); + } else { + value = 'undefined'; + } + throw generateSyntaxError(node.path.type + " \"" + (node.path.type === 'StringLiteral' ? node.path.original : value) + "\" cannot be called as a sub-expression, replace (" + value + ") with " + value, compiler.source.spanFor(node.path.loc)); + } } - const path = node.path.type === 'PathExpression' ? compiler.PathExpression(node.path) : compiler.SubExpression(node.path); const params = node.params ? node.params.map(e => compiler.acceptNode(e)) : []; // if there is no hash, position it as a collapsed node immediately after the last param (or the // path, if there are also no params) const end = (0, _util.isPresentArray)(params) ? (0, _util.getLast)(params).loc : path.loc; - const hash = node.hash ? compiler.Hash(node.hash) : { - type: 'Hash', + const hash = node.hash ? compiler.Hash(node.hash) : b.hash({ pairs: [], loc: compiler.source.spanFor(end).collapse('end') - }; + }); return { path, params, @@ -9430,6 +9764,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba }); element.modifiers.push(modifier); } + + // vendored from simple-html-tokenizer because it's unexported + function isSpace(char) { + return /[\t\n\f ]/u.test(char); + } class TokenizerEventHandlers extends HandlebarsNodeVisitors { constructor() { super(...arguments); @@ -9443,29 +9782,33 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // Comment beginComment() { - this.currentNode = b.comment('', this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn)); + this.currentNode = { + type: 'CommentStatement', + value: '', + start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) + }; } appendToCommentData(char) { this.currentComment.value += char; } finishComment() { - appendChild(this.currentElement(), this.finish(this.currentComment)); + appendChild(this.currentElement(), b.comment(this.finish(this.currentComment))); } // Data beginData() { - this.currentNode = b.text({ + this.currentNode = { + type: 'TextNode', chars: '', - loc: this.offset().collapsed() - }); + start: this.offset() + }; } appendToData(char) { this.currentData.chars += char; } finishData() { - this.currentData.loc = this.currentData.loc.withEnd(this.offset()); - appendChild(this.currentElement(), this.currentData); + appendChild(this.currentElement(), b.text(this.finish(this.currentData))); } // Tags - basic @@ -9478,22 +9821,21 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba this.currentNode = { type: 'StartTag', name: '', + nameStart: null, + nameEnd: null, attributes: [], modifiers: [], comments: [], + params: [], selfClosing: false, - loc: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) + start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) }; } beginEndTag() { this.currentNode = { type: 'EndTag', name: '', - attributes: [], - modifiers: [], - comments: [], - selfClosing: false, - loc: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) + start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) }; } finishTag() { @@ -9502,7 +9844,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba this.finishStartTag(); if (tag.name === ':') { throw generateSyntaxError('Invalid named block named detected, you may have created a named block without a name, or you may have began your name with a number. Named blocks must have names that are at least one character long, and begin with a lower case letter', this.source.spanFor({ - start: this.currentTag.loc.toJSON(), + start: this.currentTag.start.toJSON(), end: this.offset().toJSON() })); } @@ -9516,41 +9858,93 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba finishStartTag() { let { name, - attributes: attrs, + nameStart, + nameEnd + } = this.currentStartTag; + + // <> should probably be a syntax error, but s-h-t is currently broken for that case + (0, _util.assert)(name !== '', 'tag name cannot be empty'); + (0, _util.assert)(nameStart !== null, 'nameStart unexpectedly null'); + (0, _util.assert)(nameEnd !== null, 'nameEnd unexpectedly null'); + let nameLoc = nameStart.until(nameEnd); + let [head, ...tail] = (0, _util.asPresentArray)(name.split('.')); + let path = b.path({ + head: b.head({ + original: head, + loc: nameLoc.sliceStartChars({ + chars: head.length + }) + }), + tail, + loc: nameLoc + }); + let { + attributes, modifiers, comments, + params, selfClosing, loc } = this.finish(this.currentStartTag); let element = b.element({ - tag: name, + path, selfClosing, - attrs, + attributes, modifiers, comments, + params, children: [], - blockParams: [], + openTag: loc, + closeTag: selfClosing ? null : SourceSpan.broken(), loc }); this.elementStack.push(element); } finishEndTag(isVoid) { + let { + start: closeTagStart + } = this.currentTag; let tag = this.finish(this.currentTag); let element = this.elementStack.pop(); this.validateEndTag(tag, element, isVoid); let parent = this.currentElement(); + if (isVoid) { + element.closeTag = null; + } else if (element.selfClosing) { + (0, _util.assert)(element.closeTag === null, 'element.closeTag unexpectedly present'); + } else { + element.closeTag = closeTagStart.until(this.offset()); + } element.loc = element.loc.withEnd(this.offset()); - parseElementBlockParams(element); - appendChild(parent, element); + appendChild(parent, b.element(element)); } markTagAsSelfClosing() { - this.currentTag.selfClosing = true; + let tag = this.currentTag; + if (tag.type === 'StartTag') { + tag.selfClosing = true; + } else { + throw generateSyntaxError("Invalid end tag: closing tag must not be self-closing", this.source.spanFor({ + start: tag.start.toJSON(), + end: this.offset().toJSON() + })); + } } // Tags - name appendToTagName(char) { - this.currentTag.name += char; + let tag = this.currentTag; + tag.name += char; + if (tag.type === 'StartTag') { + let offset = this.offset(); + if (tag.nameStart === null) { + (0, _util.assert)(tag.nameEnd === null, 'nameStart and nameEnd must both be null'); + + // Note that the tokenizer already consumed the token here + tag.nameStart = offset.move(-1); + } + tag.nameEnd = offset; + } } // Tags - attributes @@ -9569,6 +9963,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } appendToAttributeName(char) { this.currentAttr.name += char; + + // The block params parsing code can actually handle peek=non-space just + // fine, but this check was added as an optimization, as there is a little + // bit of setup overhead for the parsing logic just to immediately bail + if (this.currentAttr.name === 'as') { + this.parsePossibleBlockParams(); + } } beginAttributeValue(isQuoted) { this.currentAttr.isQuoted = isQuoted; @@ -9606,7 +10007,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba let tokenizerPos = this.offset(); if (tag.type === 'EndTag') { throw generateSyntaxError("Invalid end tag: closing tag must not have attributes", this.source.spanFor({ - start: tag.loc.toJSON(), + start: tag.start.toJSON(), end: tokenizerPos.toJSON() })); } @@ -9618,6 +10019,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba isDynamic, valueSpan } = this.currentAttr; + + // Just trying to be helpful with `` rather than letting it through as an attribute + if (name.startsWith('|') && parts.length === 0 && !isQuoted && !isDynamic) { + throw generateSyntaxError('Invalid block parameters syntax: block parameters must be preceded by the `as` keyword', start.until(start.move(name.length))); + } let value = this.assembleAttributeValue(parts, isQuoted, isDynamic, start.until(tokenizerPos)); value.loc = valueSpan.withEnd(tokenizerPos); let attribute = b.attr({ @@ -9627,6 +10033,195 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba }); this.currentStartTag.attributes.push(attribute); } + parsePossibleBlockParams() { + // const enums that we can't use directly + const BEFORE_ATTRIBUTE_NAME = 'beforeAttributeName'; + const ATTRIBUTE_NAME = 'attributeName'; + const AFTER_ATTRIBUTE_NAME = 'afterAttributeName'; + + // Regex to validate the identifier for block parameters. + // Based on the ID validation regex in Handlebars. + const ID_INVERSE_PATTERN = /[!"#%&'()*+./;<=>@[\\\]^`{|}~]/u; + (0, _util.assert)(this.tokenizer.state === ATTRIBUTE_NAME, 'must be in TokenizerState.attributeName'); + const element = this.currentStartTag; + const as = this.currentAttr; + let state = { + state: 'PossibleAs' + }; + const handlers = { + PossibleAs: next => { + (0, _util.assert)(state.state === 'PossibleAs', 'bug in block params parser'); + if (isSpace(next)) { + // " as ..." + state = { + state: 'BeforeStartPipe' + }; + this.tokenizer.transitionTo(AFTER_ATTRIBUTE_NAME); + this.tokenizer.consume(); + } else if (next === '|') { + // " as|..." + // Following Handlebars and require a space between "as" and the pipe + throw generateSyntaxError("Invalid block parameters syntax: expecting at least one space character between \"as\" and \"|\"", as.start.until(this.offset().move(1))); + } else { + // " as{{...", " async...", " as=...", " as>...", " as/>..." + // Don't consume, let the normal tokenizer code handle the next steps + state = { + state: 'Done' + }; + } + }, + BeforeStartPipe: next => { + (0, _util.assert)(state.state === 'BeforeStartPipe', 'bug in block params parser'); + if (isSpace(next)) { + this.tokenizer.consume(); + } else if (next === '|') { + state = { + state: 'BeforeBlockParamName' + }; + this.tokenizer.transitionTo(BEFORE_ATTRIBUTE_NAME); + this.tokenizer.consume(); + } else { + // " as {{...", " as bs...", " as =...", " as ...", " as/>..." + // Don't consume, let the normal tokenizer code handle the next steps + state = { + state: 'Done' + }; + } + }, + BeforeBlockParamName: next => { + (0, _util.assert)(state.state === 'BeforeBlockParamName', 'bug in block params parser'); + if (isSpace(next)) { + this.tokenizer.consume(); + } else if (next === '') { + // The HTML tokenizer ran out of characters, so we are either + // encountering mustache or + state = { + state: 'Done' + }; + this.pendingError = { + mustache(loc) { + throw generateSyntaxError("Invalid block parameters syntax: mustaches cannot be used inside parameters list", loc); + }, + eof(loc) { + throw generateSyntaxError("Invalid block parameters syntax: expecting the tag to be closed with \">\" or \"/>\" after parameters list", as.start.until(loc)); + } + }; + } else if (next === '|') { + if (element.params.length === 0) { + // Following Handlebars and treat empty block params a syntax error + throw generateSyntaxError("Invalid block parameters syntax: empty parameters list, expecting at least one identifier", as.start.until(this.offset().move(1))); + } else { + state = { + state: 'AfterEndPipe' + }; + this.tokenizer.consume(); + } + } else if (next === '>' || next === '/') { + throw generateSyntaxError("Invalid block parameters syntax: incomplete parameters list, expecting \"|\" but the tag was closed prematurely", as.start.until(this.offset().move(1))); + } else { + // slurp up anything else into the name, validate later + state = { + state: 'BlockParamName', + name: next, + start: this.offset() + }; + this.tokenizer.consume(); + } + }, + BlockParamName: next => { + (0, _util.assert)(state.state === 'BlockParamName', 'bug in block params parser'); + if (next === '') { + // The HTML tokenizer ran out of characters, so we are either + // encountering mustache or , HBS side will attach the error + // to the next span + state = { + state: 'Done' + }; + this.pendingError = { + mustache(loc) { + throw generateSyntaxError("Invalid block parameters syntax: mustaches cannot be used inside parameters list", loc); + }, + eof(loc) { + throw generateSyntaxError("Invalid block parameters syntax: expecting the tag to be closed with \">\" or \"/>\" after parameters list", as.start.until(loc)); + } + }; + } else if (next === '|' || isSpace(next)) { + let loc = state.start.until(this.offset()); + if (state.name === 'this' || ID_INVERSE_PATTERN.test(state.name)) { + throw generateSyntaxError("Invalid block parameters syntax: invalid identifier name `" + state.name + "`", loc); + } + element.params.push(b.var({ + name: state.name, + loc + })); + state = next === '|' ? { + state: 'AfterEndPipe' + } : { + state: 'BeforeBlockParamName' + }; + this.tokenizer.consume(); + } else if (next === '>' || next === '/') { + throw generateSyntaxError("Invalid block parameters syntax: expecting \"|\" but the tag was closed prematurely", as.start.until(this.offset().move(1))); + } else { + // slurp up anything else into the name, validate later + state.name += next; + this.tokenizer.consume(); + } + }, + AfterEndPipe: next => { + (0, _util.assert)(state.state === 'AfterEndPipe', 'bug in block params parser'); + if (isSpace(next)) { + this.tokenizer.consume(); + } else if (next === '') { + // The HTML tokenizer ran out of characters, so we are either + // encountering mustache or , HBS side will attach the error + // to the next span + state = { + state: 'Done' + }; + this.pendingError = { + mustache(loc) { + throw generateSyntaxError("Invalid block parameters syntax: modifiers cannot follow parameters list", loc); + }, + eof(loc) { + throw generateSyntaxError("Invalid block parameters syntax: expecting the tag to be closed with \">\" or \"/>\" after parameters list", as.start.until(loc)); + } + }; + } else if (next === '>' || next === '/') { + // Don't consume, let the normal tokenizer code handle the next steps + state = { + state: 'Done' + }; + } else { + // Slurp up the next "token" for the error span + state = { + state: 'Error', + message: 'Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list', + start: this.offset() + }; + this.tokenizer.consume(); + } + }, + Error: next => { + (0, _util.assert)(state.state === 'Error', 'bug in block params parser'); + if (next === '' || next === '/' || next === '>' || isSpace(next)) { + throw generateSyntaxError(state.message, state.start.until(this.offset())); + } else { + // Slurp up the next "token" for the error span + this.tokenizer.consume(); + } + }, + Done: () => { + (0, _util.assert)(false, 'This should never be called'); + } + }; + let next; + do { + next = this.tokenizer.peek(); + handlers[state.state](next); + } while (state.state !== 'Done' && next !== ''); + (0, _util.assert)(state.state === 'Done', 'bug in block params parser'); + } reportSyntaxError(message) { throw generateSyntaxError(message, this.offset().collapsed()); } @@ -9639,7 +10234,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba (0, _util.assertPresentArray)(parts, "the concatenation parts of an element should not be empty"); let first = (0, _util.getFirst)(parts); let last = (0, _util.getLast)(parts); - return b.concat(parts, this.source.spanFor(first.loc).extend(this.source.spanFor(last.loc))); + return b.concat({ + parts, + loc: this.source.spanFor(first.loc).extend(this.source.spanFor(last.loc)) + }); } validateEndTag(tag, element, selfClosing) { if (voidMap.has(tag.name) && !selfClosing) { @@ -9699,6 +10297,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } } function preprocess(input, options) { + var _options$locals, _options; if (options === void 0) { options = {}; } @@ -9735,12 +10334,8 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba start: offsets.startPosition, end: offsets.endPosition }; - let program = new TokenizerEventHandlers(source, entityParser, mode).acceptTemplate(ast); - if (options.strictMode) { - var _options$locals; - program.blockParams = (_options$locals = options.locals) != null ? _options$locals : []; - } - if (options && options.plugins && options.plugins.ast) { + let template = new TokenizerEventHandlers(source, entityParser, mode).parse(ast, (_options$locals = options.locals) != null ? _options$locals : []); + if ((_options = options) != null && (_options = _options.plugins) != null && _options.ast) { for (const transform of options.plugins.ast) { let env = (0, _util.assign)({}, options, { syntax @@ -9748,10 +10343,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba plugins: undefined }); let pluginResult = transform(env); - traverse(program, pluginResult.visitor); + traverse(template, pluginResult.visitor); } } - return program; + return template; } /** @@ -9816,7 +10411,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * optionally. */ function getTemplateLocals(html, options) { - var _options; + var _options2; if (options === void 0) { options = { includeHtmlElements: false, @@ -9828,18 +10423,18 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba const scopedTokens = []; traverse(ast, { Block: { - enter(_ref26) { + enter(_ref38) { let { blockParams - } = _ref26; + } = _ref38; blockParams.forEach(param => { scopedTokens.push(param); }); }, - exit(_ref27) { + exit(_ref39) { let { blockParams - } = _ref27; + } = _ref39; blockParams.forEach(() => { scopedTokens.pop(); }); @@ -9852,10 +10447,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba }); addTokens(tokensSet, node, scopedTokens, options); }, - exit(_ref28) { + exit(_ref40) { let { blockParams - } = _ref28; + } = _ref40; blockParams.forEach(() => { scopedTokens.pop(); }); @@ -9867,7 +10462,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba }); let tokens = []; tokensSet.forEach(s => tokens.push(s)); - if (!((_options = options) != null && _options.includeKeywords)) { + if (!((_options2 = options) != null && _options2.includeKeywords)) { tokens = tokens.filter(token => !isKeyword(token)); } return tokens; @@ -10165,7 +10760,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba /** * Returns true if an input {@see ExpressionNode} is a literal. */ - function isLiteral(node, kind) { + function isLiteral$1(node, kind) { if (node.type === 'Literal') { if (kind === undefined) { return true; @@ -10193,6 +10788,14 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba */ class PathExpression extends node('Path').fields() {} + /** + * Corresponds to a known strict-mode keyword. It behaves similarly to a + * PathExpression with a FreeVarReference, but implies StrictResolution and + * is guaranteed to not have a tail, since `{{outlet.foo}}` would have been + * illegal. + */ + class KeywordExpression extends node('Keyword').fields() {} + /** * Corresponds to a parenthesized call expression. * @@ -10205,21 +10808,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba */ class CallExpression extends node('Call').fields() {} - /** - * Corresponds to a possible deprecated helper call. Must be: - * - * 1. A free variable (not this.foo, not @foo, not local). - * 2. Argument-less. - * 3. In a component invocation's named argument position. - * 4. Not parenthesized (not @bar={{(helper)}}). - * 5. Not interpolated (not @bar="{{helper}}"). - * - * ```hbs - * - * ``` - */ - class DeprecatedCallExpression extends node('DeprecatedCall').fields() {} - /** * Corresponds to an interpolation in attribute value position. * @@ -10298,14 +10886,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * * 1. Strict resolution * 2. Namespaced resolution - * 3. Fallback resolution */ /** * Strict resolution is used: * * 1. in a strict mode template - * 2. in an unambiguous invocation with dot paths + * 2. in an local variable invocation with dot paths */ const STRICT_RESOLUTION = { resolution: () => _wireFormat.SexpOpcodes.GetStrictKeyword, @@ -10321,13 +10908,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } /** - * A `LooseModeResolution` includes: - * - * - 0 or more namespaces to resolve the variable in - * - optional fallback behavior + * A `LooseModeResolution` includes one or more namespaces to resolve the variable in * * In practice, there are a limited number of possible combinations of these degrees of freedom, - * and they are captured by the `Ambiguity` union below. + * and they are captured by the `Namespaces` union below. */ class LooseModeResolution { /** @@ -10337,166 +10921,78 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * 2. `{{#block}}` (namespace: `Component`) * 3. `` (namespace: `Modifier`) * 4. `` (namespace: `Component`) - * - * @see {NamespacedAmbiguity} */ static namespaced(namespace, isAngleBracket) { if (isAngleBracket === void 0) { isAngleBracket = false; } - return new LooseModeResolution({ - namespaces: [namespace], - fallback: false - }, isAngleBracket); - } - - /** - * Fallback resolution is used when no namespaced resolutions are possible, but fallback - * resolution is still allowed. - * - * ```hbs - * {{x.y}} - * ``` - * - * @see {FallbackAmbiguity} - */ - static fallback() { - return new LooseModeResolution({ - namespaces: [], - fallback: true - }); + return new LooseModeResolution([namespace], isAngleBracket); } /** * Append resolution is used when the variable should be resolved in both the `component` and - * `helper` namespaces. Fallback resolution is optional. + * `helper` namespaces. * * ```hbs * {{x}} * ``` * - * ^ `x` should be resolved in the `component` and `helper` namespaces with fallback resolution. - * * ```hbs * {{x y}} * ``` * - * ^ `x` should be resolved in the `component` and `helper` namespaces without fallback - * resolution. - * - * @see {ComponentOrHelperAmbiguity} + * ^ In either case, `x` should be resolved in the `component` and `helper` namespaces. */ - static append(_ref29) { - let { - invoke - } = _ref29; - return new LooseModeResolution({ - namespaces: [FreeVarNamespace.Component, FreeVarNamespace.Helper], - fallback: !invoke - }); + static append() { + return new LooseModeResolution([FreeVarNamespace.Component, FreeVarNamespace.Helper]); } /** - * Trusting append resolution is used when the variable should be resolved in both the `component` and - * `helper` namespaces. Fallback resolution is optional. + * Trusting append resolution is used when the variable should be resolved only in the + * `helper` namespaces. * * ```hbs * {{{x}}} * ``` * - * ^ `x` should be resolved in the `component` and `helper` namespaces with fallback resolution. - * * ```hbs * {{{x y}}} * ``` * - * ^ `x` should be resolved in the `component` and `helper` namespaces without fallback - * resolution. - * - * @see {HelperAmbiguity} - */ - static trustingAppend(_ref30) { - let { - invoke - } = _ref30; - return new LooseModeResolution({ - namespaces: [FreeVarNamespace.Helper], - fallback: !invoke - }); - } - - /** - * Attribute resolution is used when the variable should be resolved as a `helper` with fallback - * resolution. - * - * ```hbs - * - * - * ``` - * - * ^ resolved in the `helper` namespace with fallback - * - * @see {HelperAmbiguity} + * ^ In either case, `x` should be resolved in the `helper` namespace. */ - static attr() { - return new LooseModeResolution({ - namespaces: [FreeVarNamespace.Helper], - fallback: true - }); + static trustingAppend() { + return this.namespaced(FreeVarNamespace.Helper); } - constructor(ambiguity, isAngleBracket) { + constructor(namespaces, isAngleBracket) { if (isAngleBracket === void 0) { isAngleBracket = false; } - this.ambiguity = ambiguity; + this.namespaces = namespaces; this.isAngleBracket = isAngleBracket; } resolution() { - if (this.ambiguity.namespaces.length === 0) { - return _wireFormat.SexpOpcodes.GetStrictKeyword; - } else if (this.ambiguity.namespaces.length === 1) { - if (this.ambiguity.fallback) { - // simple namespaced resolution with fallback must be attr={{x}} - return _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback; - } else { - // simple namespaced resolution without fallback - switch (this.ambiguity.namespaces[0]) { - case FreeVarNamespace.Helper: - return _wireFormat.SexpOpcodes.GetFreeAsHelperHead; - case FreeVarNamespace.Modifier: - return _wireFormat.SexpOpcodes.GetFreeAsModifierHead; - case FreeVarNamespace.Component: - return _wireFormat.SexpOpcodes.GetFreeAsComponentHead; - } + if (this.namespaces.length === 1) { + switch (this.namespaces[0]) { + case FreeVarNamespace.Helper: + return _wireFormat.SexpOpcodes.GetFreeAsHelperHead; + case FreeVarNamespace.Modifier: + return _wireFormat.SexpOpcodes.GetFreeAsModifierHead; + case FreeVarNamespace.Component: + return _wireFormat.SexpOpcodes.GetFreeAsComponentHead; } - } else if (this.ambiguity.fallback) { - // component or helper + fallback ({{something}}) - return _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback; } else { - // component or helper without fallback ({{something something}}) return _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead; } } serialize() { - if (this.ambiguity.namespaces.length === 0) { - return 'Loose'; - } else if (this.ambiguity.namespaces.length === 1) { - if (this.ambiguity.fallback) { - // simple namespaced resolution with fallback must be attr={{x}} - return ['ambiguous', SerializedAmbiguity.Attr]; - } else { - return ['ns', this.ambiguity.namespaces[0]]; - } - } else if (this.ambiguity.fallback) { - // component or helper + fallback ({{something}}) - return ['ambiguous', SerializedAmbiguity.Append]; + if (this.namespaces.length === 1) { + return this.namespaces[0]; } else { - // component or helper without fallback ({{something something}}) - return ['ambiguous', SerializedAmbiguity.Invoke]; + return 'ComponentOrHelper'; } } } - const ARGUMENT_RESOLUTION = LooseModeResolution.fallback(); let FreeVarNamespace = /*#__PURE__*/function (FreeVarNamespace) { FreeVarNamespace["Helper"] = "Helper"; FreeVarNamespace["Modifier"] = "Modifier"; @@ -10508,91 +11004,40 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba const COMPONENT_NAMESPACE = FreeVarNamespace.Component; /** - * A `ComponentOrHelperAmbiguity` might be a component or a helper, with an optional fallback - * - * ```hbs - * {{x}} - * ``` - * - * ^ `x` is resolved in the `component` and `helper` namespaces, with fallback - * - * ```hbs - * {{x y}} - * ``` - * - * ^ `x` is resolved in the `component` and `helper` namespaces, without fallback - */ - - /** - * A `HelperAmbiguity` must be a helper, but it has fallback. If it didn't have fallback, it would - * be a `NamespacedAmbiguity`. - * - * ```hbs - * - * - * ``` - * - * ^ `x` is resolved in the `helper` namespace with fallback - */ - - /** - * A `NamespacedAmbiguity` must be resolved in a particular namespace, without fallback. + * A `Namespaced` must be resolved in one or more namespaces. * * ```hbs * * ``` * - * ^ `X` is resolved in the `component` namespace without fallback + * ^ `X` is resolved in the `component` namespace * * ```hbs * (x) * ``` * - * ^ `x` is resolved in the `helper` namespace without fallback + * ^ `x` is resolved in the `helper` namespace * * ```hbs * * ``` * - * ^ `x` is resolved in the `modifier` namespace without fallback + * ^ `x` is resolved in the `modifier` namespace */ + // Serialization - var SerializedAmbiguity = /*#__PURE__*/function (SerializedAmbiguity) { - SerializedAmbiguity["Append"] = "Append"; - SerializedAmbiguity["Attr"] = "Attr"; - SerializedAmbiguity["Invoke"] = "Invoke"; - return SerializedAmbiguity; - }(SerializedAmbiguity || {}); + function loadResolution(resolution) { - if (typeof resolution === 'string') { - switch (resolution) { - case 'Loose': - return LooseModeResolution.fallback(); - case 'Strict': - return STRICT_RESOLUTION; - } - } - switch (resolution[0]) { - case 'ambiguous': - switch (resolution[1]) { - case SerializedAmbiguity.Append: - return LooseModeResolution.append({ - invoke: false - }); - case SerializedAmbiguity.Attr: - return LooseModeResolution.attr(); - case SerializedAmbiguity.Invoke: - return LooseModeResolution.append({ - invoke: true - }); - } - case 'ns': - return LooseModeResolution.namespaced(resolution[1]); + if (resolution === 'Strict') { + return STRICT_RESOLUTION; + } else if (resolution === 'ComponentOrHelper') { + return LooseModeResolution.append(); + } else { + return LooseModeResolution.namespaced(resolution); } } var api$1 = _exports.ASTv2 = /*#__PURE__*/Object.freeze({ __proto__: null, - ARGUMENT_RESOLUTION: ARGUMENT_RESOLUTION, AppendContent: AppendContent, ArgReference: ArgReference, Args: Args, @@ -10600,7 +11045,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba COMPONENT_NAMESPACE: COMPONENT_NAMESPACE, CallExpression: CallExpression, ComponentArg: ComponentArg, - DeprecatedCallExpression: DeprecatedCallExpression, ElementModifier: ElementModifier, FreeVarNamespace: FreeVarNamespace, FreeVarReference: FreeVarReference, @@ -10613,6 +11057,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba InterpolateExpression: InterpolateExpression, InvokeBlock: InvokeBlock, InvokeComponent: InvokeComponent, + KeywordExpression: KeywordExpression, LiteralExpression: LiteralExpression, LocalVarReference: LocalVarReference, LooseModeResolution: LooseModeResolution, @@ -10628,14 +11073,14 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba SplatAttr: SplatAttr, Template: Template, ThisReference: ThisReference, - isLiteral: isLiteral, + isLiteral: isLiteral$1, isStrictResolution: isStrictResolution, loadResolution: loadResolution, node: node }); class SymbolTable { - static top(locals, options) { - return new ProgramSymbolTable(locals, options); + static top(locals, keywords, options) { + return new ProgramSymbolTable(locals, keywords, options); } child(locals) { let symbols = locals.map(name => this.allocate(name)); @@ -10645,7 +11090,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba _exports.SymbolTable = SymbolTable; var _hasDebugger = /*#__PURE__*/(0, _emberBabel.classPrivateFieldLooseKey)("hasDebugger"); class ProgramSymbolTable extends SymbolTable { - constructor(templateLocals, options) { + constructor(templateLocals, keywords, options) { super(); this.symbols = []; this.upvars = []; @@ -10658,13 +11103,17 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba value: false }); this.templateLocals = templateLocals; + this.keywords = keywords; this.options = options; } hasLexical(name) { return this.options.lexicalScope(name); } - getLexical(name) { - return this.allocateFree(name, HTML_RESOLUTION); + hasKeyword(name) { + return this.keywords.includes(name); + } + getKeyword(name) { + return this.allocateFree(name, STRICT_RESOLUTION); } getUsedTemplateLocals() { return this.usedTemplateLocals; @@ -10744,12 +11193,15 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba get locals() { return this.symbols; } - getLexical(name) { - return this.parent.getLexical(name); - } hasLexical(name) { return this.parent.hasLexical(name); } + getKeyword(name) { + return this.parent.getKeyword(name); + } + hasKeyword(name) { + return this.parent.hasKeyword(name); + } has(name) { return this.symbols.indexOf(name) !== -1 || this.parent.has(name); } @@ -10859,12 +11311,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba entries }); } - attr(_ref31, loc) { + attr(_ref41, loc) { let { name, value, trusting - } = _ref31; + } = _ref41; return new HtmlAttr({ loc, name, @@ -10878,12 +11330,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }); } - arg(_ref32, loc) { + arg(_ref42, loc) { let { name, value, trusting - } = _ref32; + } = _ref42; return new ComponentArg({ name, value, @@ -10901,6 +11353,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba tail }); } + keyword(name, symbol, loc) { + return new KeywordExpression({ + loc, + name, + symbol + }); + } self(loc) { return new ThisReference({ loc @@ -10918,13 +11377,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba symbol }); } - freeVar(_ref33) { + freeVar(_ref43) { let { name, context, symbol, loc - } = _ref33; + } = _ref43; (0, _util.assert)(name !== 'this', "You called builders.freeVar() with 'this'. Call builders.this instead"); (0, _util.assert)(name[0] !== '@', "You called builders.freeVar() with '" + name + "'. Call builders.at('" + name + "') instead"); return new FreeVarReference({ @@ -10951,13 +11410,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba args: parts.args }); } - deprecatedCall(arg, callee, loc) { - return new DeprecatedCallExpression({ - loc, - arg, - callee - }); - } interpolate(parts, loc) { (0, _util.assertPresentArray)(parts); return new InterpolateExpression({ @@ -10974,12 +11426,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // STATEMENTS // - append(_ref34, loc) { + append(_ref44, loc) { let { table, trusting, value - } = _ref34; + } = _ref44; return new AppendContent({ table, trusting, @@ -10987,11 +11439,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }); } - modifier(_ref35, loc) { + modifier(_ref45, loc) { let { callee, args - } = _ref35; + } = _ref45; return new ElementModifier({ loc, callee, @@ -11004,12 +11456,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba blocks }); } - blockStatement(_ref36, loc) { + blockStatement(_ref46, loc) { let { program, inverse = null, ...call - } = _ref36; + } = _ref46; let blocksLoc = program.loc; let blocks = [this.namedBlock(SourceSlice.synthetic('default'), program, program.loc)]; if (inverse) { @@ -11099,50 +11551,43 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if (isSimpleCallee(node)) { return LooseModeResolution.namespaced(COMPONENT_NAMESPACE); } else { - return LooseModeResolution.fallback(); + return null; } } function ComponentSyntaxContext(node) { if (isSimplePath(node)) { - return LooseModeResolution.namespaced(FreeVarNamespace.Component, true); + return LooseModeResolution.namespaced(COMPONENT_NAMESPACE, true); } else { return null; } } /** - * This corresponds to append positions (text curlies or attribute - * curlies). In strict mode, this also corresponds to arg curlies. + * This corresponds to attribute curlies (). + * In strict mode, this also corresponds to arg curlies. */ function AttrValueSyntaxContext(node) { - let isSimple = isSimpleCallee(node); - let isInvoke = isInvokeNode(node); - if (isSimple) { - return isInvoke ? LooseModeResolution.namespaced(FreeVarNamespace.Helper) : LooseModeResolution.attr(); + if (isSimpleCallee(node)) { + return LooseModeResolution.namespaced(HELPER_NAMESPACE); } else { - return isInvoke ? STRICT_RESOLUTION : LooseModeResolution.fallback(); + return null; } } /** - * This corresponds to append positions (text curlies or attribute - * curlies). In strict mode, this also corresponds to arg curlies. + * This corresponds to append positions text curlies. */ function AppendSyntaxContext(node) { let isSimple = isSimpleCallee(node); - let isInvoke = isInvokeNode(node); let trusting = node.trusting; if (isSimple) { - return trusting ? LooseModeResolution.trustingAppend({ - invoke: isInvoke - }) : LooseModeResolution.append({ - invoke: isInvoke - }); + return trusting ? LooseModeResolution.trustingAppend() : LooseModeResolution.append(); } else { - return LooseModeResolution.fallback(); + return null; } } // UTILITIES + /** * A call node has a simple callee if its head is: * @@ -11169,8 +11614,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * ``` */ function isSimpleCallee(node) { - let path = node.path; - return isSimplePath(path); + return isSimplePath(node.path); } function isSimplePath(node) { if (node.type === 'PathExpression' && node.head.type === 'VarHead') { @@ -11179,15 +11623,8 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return false; } } - - /** - * The call expression has at least one argument. - */ - function isInvokeNode(node) { - return node.params.length > 0 || node.hash.pairs.length > 0; - } function normalize(source, options) { - var _options$customizeCom; + var _options$keywords, _options$customizeCom; if (options === void 0) { options = { lexicalScope: () => false @@ -11196,10 +11633,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba let ast = preprocess(source, options); let normalizeOptions = { strictMode: false, - locals: [], - ...options + ...options, + locals: ast.blockParams, + keywords: (_options$keywords = options.keywords) != null ? _options$keywords : [] }; - let top = SymbolTable.top(normalizeOptions.locals, { + let top = SymbolTable.top(normalizeOptions.locals, normalizeOptions.keywords, { customizeComponentName: (_options$customizeCom = options.customizeComponentName) != null ? _options$customizeCom : name => name, lexicalScope: options.lexicalScope }); @@ -11262,6 +11700,9 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba isLexicalVar(variable) { return this.table.hasLexical(variable); } + isKeyword(name) { + return this.strict && !this.table.hasLexical(name) && this.table.hasKeyword(name); + } isFreeVar(callee) { if (callee.type === 'PathExpression') { if (callee.head.type !== 'VarHead') { @@ -11315,9 +11756,14 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba case 'UndefinedLiteral': return this.block.builder.literal(expr.value, this.block.loc(expr.loc)); case 'PathExpression': + (0, _util.assert)(resolution, '[BUG] resolution is required'); return this.path(expr, resolution); case 'SubExpression': { + // expr.path used to incorrectly have the type ASTv1.Expression + if (isLiteral(expr.path)) { + assertIllegalLiteral(expr.path, expr.loc); + } let resolution = this.block.resolutionFor(expr, SexpSyntaxContext); if (resolution.result === 'error') { throw generateSyntaxError("You attempted to invoke a path (`" + resolution.path + "`) but " + resolution.head + " was not in scope", expr.loc); @@ -11327,6 +11773,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } } path(expr, resolution) { + let loc = this.block.loc(expr.loc); + if (expr.head.type === 'VarHead' && expr.tail.length === 0 && this.block.isKeyword(expr.head.name)) { + return this.block.builder.keyword(expr.head.name, this.block.table.getKeyword(expr.head.name), loc); + } let headOffsets = this.block.loc(expr.head.loc); let tail = []; @@ -11342,7 +11792,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba chars: part })); } - return this.block.builder.path(this.ref(expr.head, resolution), tail, this.block.loc(expr.loc)); + return this.block.builder.path(this.ref(expr.head, resolution), tail, loc); } /** @@ -11353,15 +11803,24 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba let { path, params, - hash + hash, + loc } = parts; let callee = this.normalize(path, context); - let paramList = params.map(p => this.normalize(p, ARGUMENT_RESOLUTION)); + let paramList = params.map(p => this.normalize(p, STRICT_RESOLUTION)); let paramLoc = SpanList.range(paramList, callee.loc.collapse('end')); let namedLoc = this.block.loc(hash.loc); let argsLoc = SpanList.range([paramLoc, namedLoc]); - let positional = this.block.builder.positional(params.map(p => this.normalize(p, ARGUMENT_RESOLUTION)), paramLoc); + let positional = this.block.builder.positional(params.map(p => this.normalize(p, STRICT_RESOLUTION)), paramLoc); let named = this.block.builder.named(hash.pairs.map(p => this.namedArgument(p)), this.block.loc(hash.loc)); + switch (callee.type) { + case 'Literal': + throw generateSyntaxError("Invalid invocation of a literal value (`" + callee.value + "`)", loc); + + // This really shouldn't be possible, something has gone pretty wrong + case 'Interpolate': + throw generateSyntaxError("Invalid invocation of a interpolated string", loc); + } return { callee, args: this.block.builder.args(positional, named, argsLoc) @@ -11375,7 +11834,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return this.block.builder.namedArgument(new SourceSlice({ chars: pair.key, loc: keyOffsets - }), this.normalize(pair.value, ARGUMENT_RESOLUTION)); + }), this.normalize(pair.value, STRICT_RESOLUTION)); } /** @@ -11434,8 +11893,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } normalize(node) { switch (node.type) { - case 'PartialStatement': - throw new Error("Handlebars partial syntax ({{> ...}}) is not allowed in Glimmer"); case 'BlockStatement': return this.BlockStatement(node); case 'ElementNode': @@ -11489,20 +11946,37 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba */ MustacheStatement(mustache) { let { - escaped + path, + params, + hash, + trusting } = mustache; let loc = this.block.loc(mustache.loc); + let value; + if (isLiteral(path)) { + if (params.length === 0 && hash.pairs.length === 0) { + value = this.expr.normalize(path); + } else { + assertIllegalLiteral(path, loc); + } + } else { + let resolution = this.block.resolutionFor(mustache, AppendSyntaxContext); + if (resolution.result === 'error') { + throw generateSyntaxError("You attempted to render a path (`{{" + resolution.path + "}}`), but " + resolution.head + " was not in scope", loc); + } - // Normalize the call parts in AppendSyntaxContext - let callParts = this.expr.callParts({ - path: mustache.path, - params: mustache.params, - hash: mustache.hash - }, AppendSyntaxContext(mustache)); - let value = callParts.args.isEmpty() ? callParts.callee : this.block.builder.sexp(callParts, loc); + // Normalize the call parts in AppendSyntaxContext + let callParts = this.expr.callParts({ + path, + params, + hash, + loc + }, resolution.result); + value = callParts.args.isEmpty() ? callParts.callee : this.block.builder.sexp(callParts, loc); + } return this.block.builder.append({ table: this.block.table, - trusting: !escaped, + trusting, value }, loc); } @@ -11516,6 +11990,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba inverse } = block; let loc = this.block.loc(block.loc); + + // block.path used to incorrectly have the type ASTv1.Expression + if (isLiteral(block.path)) { + assertIllegalLiteral(block.path, loc); + } let resolution = this.block.resolutionFor(block, BlockSyntaxContext); if (resolution.result === 'error') { throw generateSyntaxError("You attempted to invoke a path (`{{#" + resolution.path + "}}`) but " + resolution.head + " was not in scope", loc); @@ -11527,12 +12006,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba inverse: inverse ? this.Block(inverse) : null }, callParts), loc); } - Block(_ref37) { + Block(_ref47) { let { body, loc, blockParams - } = _ref37; + } = _ref47; let child = this.block.child(blockParams); let normalizer = new StatementNormalizer(child); return new BlockChildren(this.block.loc(loc), body.map(b => normalizer.normalize(b)), this.block).assertBlock(child.table); @@ -11609,9 +12088,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } } modifier(m) { + // modifier.path used to incorrectly have the type ASTv1.Expression + if (isLiteral(m.path)) { + assertIllegalLiteral(m.path, m.loc); + } let resolution = this.ctx.resolutionFor(m, ModifierSyntaxContext); if (resolution.result === 'error') { - throw generateSyntaxError("You attempted to invoke a path (`{{#" + resolution.path + "}}`) as a modifier, but " + resolution.head + " was not in scope. Try adding `this` to the beginning of the path", m.loc); + throw generateSyntaxError("You attempted to invoke a path (`{{" + resolution.path + "}}`) as a modifier, but " + resolution.head + " was not in scope", m.loc); } let callParts = this.expr.callParts(m, resolution.result); return this.ctx.builder.modifier(callParts, this.ctx.loc(m.loc)); @@ -11627,8 +12110,26 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * ``` */ mustacheAttr(mustache) { + let { + path, + params, + hash, + loc + } = mustache; + if (isLiteral(path)) { + if (params.length === 0 && hash.pairs.length === 0) { + return this.expr.normalize(path); + } else { + assertIllegalLiteral(path, loc); + } + } + // Normalize the call parts in AttrValueSyntaxContext - let sexp = this.ctx.builder.sexp(this.expr.callParts(mustache, AttrValueSyntaxContext(mustache)), this.ctx.loc(mustache.loc)); + let resolution = this.ctx.resolutionFor(mustache, AttrValueSyntaxContext); + if (resolution.result === 'error') { + throw generateSyntaxError("You attempted to render a path (`{{" + resolution.path + "}}`), but " + resolution.head + " was not in scope", mustache.loc); + } + let sexp = this.ctx.builder.sexp(this.expr.callParts(mustache, resolution.result), this.ctx.loc(mustache.loc)); // If there are no params or hash, just return the function part as its own expression if (sexp.args.isEmpty()) { @@ -11647,7 +12148,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba case 'MustacheStatement': return { expr: this.mustacheAttr(part), - trusting: !part.escaped + trusting: part.trusting }; case 'TextNode': return { @@ -11686,56 +12187,46 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba trusting: value.trusting }, offsets); } - maybeDeprecatedCall(arg, part) { - if (this.ctx.strict) { - return null; + + // An arg curly is the same as an attribute curly for + // our purposes, except that in loose mode is an error: + checkArgCall(arg) { + let { + value + } = arg; + if (value.type !== 'MustacheStatement') { + return; } - if (part.type !== 'MustacheStatement') { - return null; + if (value.params.length !== 0 || value.hash.pairs.length !== 0) { + return; } let { path - } = part; + } = value; if (path.type !== 'PathExpression') { - return null; - } - if (path.head.type !== 'VarHead') { - return null; - } - let { - name - } = path.head; - if (name === 'has-block' || name === 'has-block-params') { - return null; - } - if (this.ctx.hasBinding(name)) { - return null; + return; } - if (path.tail.length !== 0) { - return null; + if (path.tail.length > 0) { + return; } - if (part.params.length !== 0 || part.hash.pairs.length !== 0) { + let resolution = this.ctx.resolutionFor(path, () => { + // We deliberately don't want this to resolve anything. The purpose of + // calling `resolutionFor` here is to check for strict mode, in-scope + // local variables, etc. return null; - } - let context = LooseModeResolution.attr(); - let callee = this.ctx.builder.freeVar({ - name, - context, - symbol: this.ctx.table.allocateFree(name, context), - loc: path.loc }); - return { - expr: this.ctx.builder.deprecatedCall(arg, callee, part.loc), - trusting: false - }; + if (resolution.result === 'error' && resolution.path !== 'has-block') { + throw generateSyntaxError("You attempted to pass a path as argument (`" + arg.name + "={{" + resolution.path + "}}`) but " + resolution.head + " was not in scope. Try:\n" + ("* `" + arg.name + "={{this." + resolution.path + "}}` if this is meant to be a property lookup, or\n") + ("* `" + arg.name + "={{(" + resolution.path + ")}}` if this is meant to invoke the resolved helper, or\n") + ("* `" + arg.name + "={{helper \"" + resolution.path + "\"}}` if this is meant to pass the resolved helper by value"), arg.loc); + } } arg(arg) { (0, _util.assert)(arg.name[0] === '@', 'An arg name must start with `@`'); + this.checkArgCall(arg); let offsets = this.ctx.loc(arg.loc); let nameSlice = offsets.sliceStartChars({ chars: arg.name.length }).toSlice(arg.name); - let value = this.maybeDeprecatedCall(nameSlice, arg.value) || this.attrValue(arg.value); + let value = this.attrValue(arg.value); return this.ctx.builder.arg({ name: nameSlice, value: value.expr, @@ -11783,7 +12274,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba let pathLoc = variableLoc.withEnd(pathEnd); if (isComponent) { let path = b.path({ - head: b.head(variable, variableLoc), + head: b.head({ + original: variable, + loc: variableLoc + }), tail, loc: pathLoc }); @@ -11874,7 +12368,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } assertElement(name, hasBlockParams) { if (hasBlockParams) { - throw generateSyntaxError("Unexpected block params in <" + name + ">: simple elements cannot have block params", this.loc); + throw generateSyntaxError("Unexpected block params in <" + name.chars + ">: simple elements cannot have block params", this.loc); } if ((0, _util.isPresentArray)(this.namedBlocks)) { let names = this.namedBlocks.map(b => b.name); @@ -11912,6 +12406,22 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } } } + function isLiteral(node) { + switch (node.type) { + case 'StringLiteral': + case 'BooleanLiteral': + case 'NumberLiteral': + case 'UndefinedLiteral': + case 'NullLiteral': + return true; + default: + return false; + } + } + function assertIllegalLiteral(node, loc) { + let value = node.type === 'StringLiteral' ? JSON.stringify(node.value) : String(node.value); + throw generateSyntaxError("Unexpected literal `" + value + "`", loc); + } function printPath(node) { if (node.type !== 'PathExpression' && node.path.type === 'PathExpression') { return printPath(node.path); @@ -11923,13 +12433,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } function printHead(node) { if (node.type === 'PathExpression') { - switch (node.head.type) { - case 'AtHead': - case 'VarHead': - return node.head.name; - case 'ThisHead': - return 'this'; - } + return node.head.original; } else if (node.path.type === 'PathExpression') { return printHead(node.path); } else { @@ -12419,8 +12923,10 @@ define("@glimmer/util", ["exports"], function (_exports) { // If we don't know what this is, but the check requires it to be an element, // the cast will mandate that it's a browser element + // Finally, if it's a more generic check, the cast will mandate that it's a // browser node and return a BrowserNodeUtils corresponding to the check + function castToBrowser(node, sugaryCheck) { if (node === null || node === undefined) { return null; @@ -12837,17 +13343,13 @@ define("@glimmer/wire-format", ["exports"], function (_exports) { GetSymbol: 30, GetLexicalSymbol: 32, GetStrictKeyword: 31, - GetFreeAsComponentOrHelperHeadOrThisFallback: 34, GetFreeAsComponentOrHelperHead: 35, - GetFreeAsHelperHeadOrThisFallback: 36, - GetFreeAsDeprecatedHelperHeadOrThisFallback: 99, GetFreeAsHelperHead: 37, GetFreeAsModifierHead: 38, GetFreeAsComponentHead: 39, InElement: 40, If: 41, Each: 42, - With: 43, Let: 44, WithDynamicVars: 45, InvokeComponent: 46, @@ -12864,10 +13366,8 @@ define("@glimmer/wire-format", ["exports"], function (_exports) { const resolution = _exports.VariableResolutionContext = { Strict: 0, - AmbiguousAppend: 1, - AmbiguousAppendInvoke: 2, - AmbiguousInvoke: 3, - ResolveAsCallHead: 5, + ResolveAsComponentOrHelperHead: 1, + ResolveAsHelperHead: 5, ResolveAsModifierHead: 6, ResolveAsComponentHead: 7 }; @@ -14592,7 +15092,6 @@ define("@handlebars/parser/index", ["exports"], function (_exports) { } return false; // rule action called reject() implying the next rule should be tested instead. } - return false; }, // return next match in input @@ -15489,7 +15988,15 @@ define("ember-template-compiler/lib/plugins/assert-against-attrs", ["exports", " return { name: 'assert-against-attrs', visitor: { - Program: { + Template: { + enter(node) { + updateBlockParamsStack(node.blockParams); + }, + exit() { + stack.pop(); + } + }, + Block: { enter(node) { updateBlockParamsStack(node.blockParams); }, @@ -15531,12 +16038,10 @@ define("ember-template-compiler/lib/plugins/assert-against-attrs", ["exports", " }; } function isAttrs(node, symbols) { - let name = node.parts[0]; - return node.head.type === 'VarHead' && name === 'attrs' && symbols.indexOf(name) === -1; + return node.head.type === 'VarHead' && node.head.name === 'attrs' && symbols.indexOf(node.head.name) === -1; } function isThisDotAttrs(node) { - let name = node.parts[0]; - return node.head.type === 'ThisHead' && name === 'attrs'; + return node.head.type === 'ThisHead' && node.tail[0] === 'attrs'; } }); define("ember-template-compiler/lib/plugins/assert-against-named-outlets", ["exports", "@ember/debug", "ember-template-compiler/lib/system/calculate-location-display"], function (_exports, _debug, _calculateLocationDisplay) { @@ -15652,48 +16157,25 @@ define("ember-template-compiler/lib/plugins/assert-reserved-named-arguments", [" return "'" + name + "' is reserved."; } }); -define("ember-template-compiler/lib/plugins/assert-splattribute-expression", ["exports", "@ember/debug", "ember-template-compiler/lib/system/calculate-location-display"], function (_exports, _debug, _calculateLocationDisplay) { - "use strict"; - - Object.defineProperty(_exports, "__esModule", { - value: true - }); - _exports.default = assertSplattributeExpressions; - function assertSplattributeExpressions(env) { - var _env$meta; - let moduleName = (_env$meta = env.meta) == null ? void 0 : _env$meta.moduleName; - return { - name: 'assert-splattribute-expressions', - visitor: { - PathExpression(_ref) { - let { - original, - loc - } = _ref; - if (original === '...attributes') { - (true && !(false) && (0, _debug.assert)(errorMessage() + " " + (0, _calculateLocationDisplay.default)(moduleName, loc))); - } - } - } - }; - } - function errorMessage() { - return '`...attributes` can only be used in the element position e.g. `
`. It cannot be used as a path.'; - } -}); -define("ember-template-compiler/lib/plugins/index", ["exports", "ember-template-compiler/lib/plugins/assert-against-attrs", "ember-template-compiler/lib/plugins/assert-against-named-outlets", "ember-template-compiler/lib/plugins/assert-input-helper-without-block", "ember-template-compiler/lib/plugins/assert-reserved-named-arguments", "ember-template-compiler/lib/plugins/assert-splattribute-expression", "ember-template-compiler/lib/plugins/transform-action-syntax", "ember-template-compiler/lib/plugins/transform-each-in-into-each", "ember-template-compiler/lib/plugins/transform-each-track-array", "ember-template-compiler/lib/plugins/transform-in-element", "ember-template-compiler/lib/plugins/transform-quoted-bindings-into-just-bindings", "ember-template-compiler/lib/plugins/transform-resolutions", "ember-template-compiler/lib/plugins/transform-wrap-mount-and-outlet"], function (_exports, _assertAgainstAttrs, _assertAgainstNamedOutlets, _assertInputHelperWithoutBlock, _assertReservedNamedArguments, _assertSplattributeExpression, _transformActionSyntax, _transformEachInIntoEach, _transformEachTrackArray, _transformInElement, _transformQuotedBindingsIntoJustBindings, _transformResolutions, _transformWrapMountAndOutlet) { +define("ember-template-compiler/lib/plugins/index", ["exports", "ember-template-compiler/lib/plugins/assert-against-attrs", "ember-template-compiler/lib/plugins/assert-against-named-outlets", "ember-template-compiler/lib/plugins/assert-input-helper-without-block", "ember-template-compiler/lib/plugins/assert-reserved-named-arguments", "ember-template-compiler/lib/plugins/transform-action-syntax", "ember-template-compiler/lib/plugins/transform-each-in-into-each", "ember-template-compiler/lib/plugins/transform-each-track-array", "ember-template-compiler/lib/plugins/transform-in-element", "ember-template-compiler/lib/plugins/transform-quoted-bindings-into-just-bindings", "ember-template-compiler/lib/plugins/transform-resolutions", "ember-template-compiler/lib/plugins/transform-wrap-mount-and-outlet"], function (_exports, _assertAgainstAttrs, _assertAgainstNamedOutlets, _assertInputHelperWithoutBlock, _assertReservedNamedArguments, _transformActionSyntax, _transformEachInIntoEach, _transformEachTrackArray, _transformInElement, _transformQuotedBindingsIntoJustBindings, _transformResolutions, _transformWrapMountAndOutlet) { "use strict"; Object.defineProperty(_exports, "__esModule", { value: true }); - _exports.STRICT_MODE_TRANSFORMS = _exports.RESOLUTION_MODE_TRANSFORMS = void 0; + _exports.STRICT_MODE_TRANSFORMS = _exports.STRICT_MODE_KEYWORDS = _exports.RESOLUTION_MODE_TRANSFORMS = void 0; // order of plugins is important - const RESOLUTION_MODE_TRANSFORMS = _exports.RESOLUTION_MODE_TRANSFORMS = Object.freeze([_transformQuotedBindingsIntoJustBindings.default, _assertReservedNamedArguments.default, _transformActionSyntax.default, _assertAgainstAttrs.default, _transformEachInIntoEach.default, _assertInputHelperWithoutBlock.default, _transformInElement.default, _assertSplattributeExpression.default, _transformEachTrackArray.default, _assertAgainstNamedOutlets.default, _transformWrapMountAndOutlet.default, _transformResolutions.default].filter(notNull)); - const STRICT_MODE_TRANSFORMS = _exports.STRICT_MODE_TRANSFORMS = Object.freeze([_transformQuotedBindingsIntoJustBindings.default, _assertReservedNamedArguments.default, _transformActionSyntax.default, _transformEachInIntoEach.default, _transformInElement.default, _assertSplattributeExpression.default, _transformEachTrackArray.default, _assertAgainstNamedOutlets.default, _transformWrapMountAndOutlet.default].filter(notNull)); - function notNull(value) { - return value !== null; - } + const RESOLUTION_MODE_TRANSFORMS = _exports.RESOLUTION_MODE_TRANSFORMS = Object.freeze([_transformQuotedBindingsIntoJustBindings.default, _assertReservedNamedArguments.default, _transformActionSyntax.default, _assertAgainstAttrs.default, _transformEachInIntoEach.default, _assertInputHelperWithoutBlock.default, _transformInElement.default, _transformEachTrackArray.default, _assertAgainstNamedOutlets.default, _transformWrapMountAndOutlet.default, _transformResolutions.default]); + const STRICT_MODE_TRANSFORMS = _exports.STRICT_MODE_TRANSFORMS = Object.freeze([_transformQuotedBindingsIntoJustBindings.default, _assertReservedNamedArguments.default, _transformActionSyntax.default, _transformEachInIntoEach.default, _transformInElement.default, _transformEachTrackArray.default, _assertAgainstNamedOutlets.default, _transformWrapMountAndOutlet.default]); + const STRICT_MODE_KEYWORDS = _exports.STRICT_MODE_KEYWORDS = Object.freeze(['action', 'mut', 'readonly', 'unbound', + // TransformEachInIntoEach + '-each-in', + // TransformInElement + '-in-el-null', + // TransformEachTrackArray + '-track-array', + // TransformWrapMountAndOutlet + '-mount', '-outlet']); }); define("ember-template-compiler/lib/plugins/transform-action-syntax", ["exports", "ember-template-compiler/lib/plugins/utils"], function (_exports, _utils) { "use strict"; @@ -16076,7 +16558,7 @@ define("ember-template-compiler/lib/plugins/transform-resolutions", ["exports", }; } function isLocalVariable(node, hasLocal) { - return !node.this && node.parts.length === 1 && hasLocal(node.parts[0]); + return !(node.head.type === 'ThisHead') && node.tail.length === 1 && hasLocal(node.head.original); } function transformParams(b, params, type, moduleName, loc) { let [first, ...rest] = params; @@ -16139,8 +16621,9 @@ define("ember-template-compiler/lib/plugins/transform-wrap-mount-and-outlet", [" return { name: 'transform-wrap-mount-and-outlet', visitor: { - Program: node, + Template: node, ElementNode: node, + Block: node, MustacheStatement(node) { if ((0, _utils.isPath)(node.path) && (node.path.original === 'mount' || node.path.original === 'outlet') && !hasLocal(node.path.original)) { let subexpression = b.sexpr(b.path("-" + node.path.original), node.params, node.hash, node.loc); @@ -16170,22 +16653,33 @@ define("ember-template-compiler/lib/plugins/utils", ["exports"], function (_expo function isStringLiteral(node) { return node.type === 'StringLiteral'; } + function getLocalName(node) { + if (typeof node === 'string') { + return node; + } else { + return node.original; + } + } function trackLocals() { let locals = new Map(); let node = { enter(node) { - for (let param of node.blockParams) { + let params = 'params' in node ? node.params : node.blockParams; + for (let param of params) { + let name = getLocalName(param); let value = locals.get(param) || 0; - locals.set(param, value + 1); + locals.set(name, value + 1); } }, exit(node) { - for (let param of node.blockParams) { - let value = locals.get(param) - 1; + let params = 'params' in node ? node.params : node.blockParams; + for (let param of params) { + let name = getLocalName(param); + let value = locals.get(name) - 1; if (value === 0) { - locals.delete(param); + locals.delete(name); } else { - locals.set(param, value); + locals.set(name, value); } } } @@ -16409,6 +16903,9 @@ define("ember-template-compiler/lib/system/compile-options", ["exports", "@ember (true && !(meta) && (0, _debug.assert)('has meta', meta)); // We just set it meta.moduleName = options.moduleName; } + if (options.strictMode) { + options.keywords = _index.STRICT_MODE_KEYWORDS; + } return options; } function transformsFor(options) { @@ -16587,7 +17084,7 @@ define("ember/version", ["exports"], function (_exports) { value: true }); _exports.default = void 0; - var _default = _exports.default = "5.8.0"; + var _default = _exports.default = "5.10.0-alpha.1+a4359032"; }); define("simple-html-tokenizer", ["exports"], function (_exports) { "use strict"; @@ -18853,7 +19350,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeDoctypeName" /* beforeDoctypeName */); } }, - beforeDoctypeName: function () { var char = this.consume(); if (isSpace(char)) { @@ -18900,7 +19396,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { } } }, - afterDoctypePublicKeyword: function () { var char = this.peek(); if (isSpace(char)) { @@ -18918,7 +19413,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeData" /* beforeData */); } }, - doctypePublicIdentifierDoubleQuoted: function () { var char = this.consume(); if (char === '"') { @@ -18954,7 +19448,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("doctypeSystemIdentifierSingleQuoted" /* doctypeSystemIdentifierSingleQuoted */); } }, - betweenDoctypePublicAndSystemIdentifiers: function () { var char = this.consume(); if (isSpace(char)) { @@ -18968,7 +19461,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("doctypeSystemIdentifierSingleQuoted" /* doctypeSystemIdentifierSingleQuoted */); } }, - doctypeSystemIdentifierDoubleQuoted: function () { var char = this.consume(); if (char === '"') { @@ -19000,7 +19492,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeData" /* beforeData */); } }, - commentStart: function () { var char = this.consume(); if (char === '-') { @@ -19013,7 +19504,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("comment" /* comment */); } }, - commentStartDash: function () { var char = this.consume(); if (char === '-') { @@ -19026,7 +19516,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("comment" /* comment */); } }, - comment: function () { var char = this.consume(); if (char === '-') { @@ -19044,7 +19533,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("comment" /* comment */); } }, - commentEnd: function () { var char = this.consume(); if (char === '>') { @@ -19055,7 +19543,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("comment" /* comment */); } }, - tagName: function () { var char = this.consume(); if (isSpace(char)) { @@ -19250,7 +19737,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeAttributeName" /* beforeAttributeName */); } }, - selfClosingStartTag: function () { var char = this.peek(); if (char === '>') { @@ -19262,7 +19748,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeAttributeName" /* beforeAttributeName */); } }, - endTagOpen: function () { var char = this.consume(); if (char === '@' || char === ':' || isAlpha(char)) { @@ -19312,7 +19797,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeData" /* beforeData */); } }; - EventedTokenizer.prototype.peek = function () { return this.input.charAt(this.index); }; diff --git a/ember/ember-5.8.0.prod.js b/ember/ember-git-03-f9cfada9.prod.js similarity index 86% rename from ember/ember-5.8.0.prod.js rename to ember/ember-git-03-f9cfada9.prod.js index 0e32b36..eeb293a 100644 --- a/ember/ember-5.8.0.prod.js +++ b/ember/ember-git-03-f9cfada9.prod.js @@ -33,7 +33,7 @@ if(!r||"new"===r.state)return(r=new s(e,[],a,null)).module.exports=t,r.state="fi * Portions Copyright 2008-2011 Apple Inc. All rights reserved. * @license Licensed under MIT license * See https://raw.github.com/emberjs/ember.js/master/LICENSE - * @version 5.8.0 + * @version 5.10.0-alpha.1+f9cfada9 */ var e,t;(function(){var r="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:null if(null===r)throw new Error("unable to locate global object") @@ -97,14 +97,19 @@ if(void 0!==r&&void 0!==r[t])return r[t] let n=e.split(":")[0] return r=this._typeOptions[n],r&&void 0!==r[t]?r[t]:null!==this.fallback?this.fallback.getOption(e,t):void 0}knownForType(e){let r,n,i=(0,t.dictionary)(null),o=Object.keys(this.registrations) for(let t of o){t.split(":")[0]===e&&(i[t]=!0)}return null!==this.fallback&&(r=this.fallback.knownForType(e)),null!==this.resolver&&this.resolver.knownForType&&(n=this.resolver.knownForType(e)),Object.assign({},r,i,n)}isValidFullName(e){return h.test(e)}}e.Registry=f -const m=(0,t.dictionary)(null),g=`${Math.random()}${Date.now()}`.replace(".","")})),e("@ember/-internals/environment/index",["exports"],(function(e){"use strict" +const m=(0,t.dictionary)(null),g=`${Math.random()}${Date.now()}`.replace(".","")})),e("@ember/-internals/deprecations/index",["exports","@ember/-internals/environment","@ember/version","@ember/debug"],(function(e,t,r,n){"use strict" +function i(e){return Object.hasOwnProperty.call(e.since,"enabled")||t.ENV._ALL_DEPRECATIONS_ENABLED}Object.defineProperty(e,"__esModule",{value:!0}),e.DEPRECATIONS=void 0,e.deprecateUntil=function(e,t){const{options:r}=t +if(t.isRemoved)throw new Error(`The API deprecated by ${r.id} was removed in ember-source ${r.until}. The message was: ${e}. Please see ${r.url} for more details.`)},e.emberVersionGte=s,e.isRemoved=a +let o=parseFloat(t.ENV._OVERRIDE_DEPRECATION_VERSION??r.VERSION) +function s(e,t=o){let r=e.replace(/(\.0+)/g,"") +return t>=parseFloat(r)}function a(e){return s(e.until)}function l(e){return{options:e,test:!i(e),isEnabled:i(e)||a(e),isRemoved:a(e)}}e.DEPRECATIONS={DEPRECATE_IMPLICIT_ROUTE_MODEL:l({id:"deprecate-implicit-route-model",for:"ember-source",since:{available:"5.3.0",enabled:"5.3.0"},until:"6.0.0",url:"https://deprecations.emberjs.com/v5.x/#toc_deprecate-implicit-route-model"}),DEPRECATE_TEMPLATE_ACTION:l({id:"template-action",url:"https://deprecations.emberjs.com/id/template-action",until:"6.0.0",for:"ember-source",since:{available:"5.9.0"}})}})),e("@ember/-internals/environment/index",["exports"],(function(e){"use strict" function t(e){return e&&e.Object===Object?e:void 0}Object.defineProperty(e,"__esModule",{value:!0}),e.context=e.ENV=void 0,e.getENV=function(){return o},e.getLookup=function(){return i.lookup},e.global=void 0,e.setLookup=function(e){i.lookup=e} var r,n=e.global=t((r="object"==typeof global&&global)&&void 0===r.nodeType?r:void 0)||t("object"==typeof self&&self)||t("object"==typeof window&&window)||"undefined"!=typeof mainContext&&mainContext||new Function("return this")() const i=e.context=function(e,t){return void 0===t?{imports:e,exports:e,lookup:e}:{imports:t.imports||e,exports:t.exports||e,lookup:t.lookup||e}}(n,n.Ember) -const o=e.ENV={ENABLE_OPTIONAL_FEATURES:!1,EXTEND_PROTOTYPES:{Array:!0},LOG_STACKTRACE_ON_DEPRECATION:!0,LOG_VERSION:!0,RAISE_ON_DEPRECATION:!1,STRUCTURED_PROFILE:!1,_APPLICATION_TEMPLATE_WRAPPER:!0,_TEMPLATE_ONLY_GLIMMER_COMPONENTS:!1,_DEBUG_RENDER_TREE:!1,_DEFAULT_ASYNC_OBSERVERS:!1,_NO_IMPLICIT_ROUTE_MODEL:!1,_RERENDER_LOOP_LIMIT:1e3,EMBER_LOAD_HOOKS:{},FEATURES:{}};(e=>{if("object"!=typeof e||null===e)return +const o=e.ENV={ENABLE_OPTIONAL_FEATURES:!1,EXTEND_PROTOTYPES:{Array:!0},LOG_STACKTRACE_ON_DEPRECATION:!0,LOG_VERSION:!0,RAISE_ON_DEPRECATION:!1,STRUCTURED_PROFILE:!1,_TEMPLATE_ONLY_GLIMMER_COMPONENTS:!1,_DEBUG_RENDER_TREE:!1,_ALL_DEPRECATIONS_ENABLED:!1,_OVERRIDE_DEPRECATION_VERSION:null,_DEFAULT_ASYNC_OBSERVERS:!1,_NO_IMPLICIT_ROUTE_MODEL:!1,_RERENDER_LOOP_LIMIT:1e3,EMBER_LOAD_HOOKS:{},FEATURES:{}};(e=>{if("object"!=typeof e||null===e)return for(let i in e){if(!Object.prototype.hasOwnProperty.call(e,i)||"EXTEND_PROTOTYPES"===i||"EMBER_LOAD_HOOKS"===i)continue let t=o[i] -!0===t?o[i]=!1!==e[i]:!1===t&&(o[i]=!0===e[i])}let{EXTEND_PROTOTYPES:t}=e +o[i]=!0===t?!1!==e[i]:!1===t?!0===e[i]:e[i]}let{EXTEND_PROTOTYPES:t}=e void 0!==t&&(o.EXTEND_PROTOTYPES.Array="object"==typeof t&&null!==t?!1!==t.Array:!1!==t) let{EMBER_LOAD_HOOKS:r}=e if("object"==typeof r&&null!==r)for(let i in r){if(!Object.prototype.hasOwnProperty.call(r,i))continue @@ -114,60 +119,60 @@ if("object"==typeof n&&null!==n)for(let i in n)Object.prototype.hasOwnProperty.c let t Object.defineProperty(e,"__esModule",{value:!0}),e.getDispatchOverride=function(){return r},e.getOnerror=function(){return t},e.onErrorTarget=void 0,e.setDispatchOverride=function(e){r=e},e.setOnerror=function(e){t=e} e.onErrorTarget={get onerror(){return t}} -let r=null})),e("@ember/-internals/glimmer/index",["exports","@glimmer/opcode-compiler","@ember/-internals/browser-environment","@ember/debug","@ember/object","@glimmer/reference","@glimmer/validator","@ember/modifier","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/utils","@glimmer/manager","@ember/-internals/views","@ember/engine","@ember/engine/instance","@ember/instrumentation","@ember/service","@ember/-internals/runtime","@glimmer/runtime","@glimmer/util","@ember/-internals/string","@glimmer/destroyable","@ember/runloop","@ember/object/-internals","@ember/-internals/container","@ember/-internals/environment","@glimmer/vm","@glimmer/program","rsvp","@glimmer/node","@glimmer/global-context","@ember/array/-internals","@ember/-internals/glimmer","@ember/array","@ember/routing/-internals","@ember/template-factory"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v,_,O,w,C,E,k,T,S,R,P,x,A,M,N,j,D){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.Component=void 0,Object.defineProperty(e,"DOMChanges",{enumerable:!0,get:function(){return y.DOMChanges}}),Object.defineProperty(e,"DOMTreeConstruction",{enumerable:!0,get:function(){return y.DOMTreeConstruction}}),e.LinkTo=e.Input=e.Helper=void 0,Object.defineProperty(e,"NodeDOMTreeConstruction",{enumerable:!0,get:function(){return P.NodeDOMTreeConstruction}}),e.Textarea=e.SafeString=e.RootTemplate=e.Renderer=e.OutletView=void 0,e._resetRenderers=function(){lr.length=0},e.componentCapabilities=void 0,e.escapeExpression=function(e){let t -if("string"!=typeof e){if(lt(e))return e.toHTML() +let r=null})),e("@ember/-internals/glimmer/index",["exports","@glimmer/opcode-compiler","@ember/-internals/browser-environment","@ember/debug","@ember/object","@glimmer/reference","@glimmer/validator","@ember/modifier","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/utils","@glimmer/manager","@ember/-internals/views","@ember/engine","@ember/engine/instance","@ember/instrumentation","@ember/service","@ember/-internals/runtime","@glimmer/runtime","@glimmer/util","@ember/-internals/string","@glimmer/destroyable","@ember/-internals/deprecations","@ember/runloop","@ember/object/-internals","@ember/-internals/container","@ember/-internals/environment","@glimmer/vm","@glimmer/program","rsvp","@glimmer/node","@glimmer/global-context","@ember/array/-internals","@ember/-internals/glimmer","@ember/array","@ember/routing/-internals","@ember/template-factory"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v,_,O,w,E,C,k,T,R,S,P,x,A,M,N,D,j,I){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.Component=void 0,Object.defineProperty(e,"DOMChanges",{enumerable:!0,get:function(){return y.DOMChanges}}),Object.defineProperty(e,"DOMTreeConstruction",{enumerable:!0,get:function(){return y.DOMTreeConstruction}}),e.LinkTo=e.Input=e.Helper=void 0,Object.defineProperty(e,"NodeDOMTreeConstruction",{enumerable:!0,get:function(){return x.NodeDOMTreeConstruction}}),e.Textarea=e.SafeString=e.RootTemplate=e.Renderer=e.OutletView=void 0,e._resetRenderers=function(){lr.length=0},e.componentCapabilities=void 0,e.escapeExpression=function(e){let t +if("string"!=typeof e){if(ut(e))return e.toHTML() if(null==e)return"" if(!e)return String(e) t=String(e)}else t=e -if(!ot.test(t))return t -return t.replace(st,at)},e.getTemplate=function(e){if(Object.prototype.hasOwnProperty.call(hr,e))return hr[e]},e.getTemplates=function(){return hr},e.hasTemplate=function(e){return Object.prototype.hasOwnProperty.call(hr,e)},e.helper=rt,e.htmlSafe=function(e){null==e?e="":"string"!=typeof e&&(e=String(e)) -return new nt(e)},e.isHTMLSafe=lt,Object.defineProperty(e,"isSerializationFirstNode",{enumerable:!0,get:function(){return y.isSerializationFirstNode}}),e.modifierCapabilities=void 0,e.renderSettled=function(){null===cr&&(cr=R.default.defer(),(0,w._getCurrentRunLoop)()||w._backburner.schedule("actions",null,sr)) +if(!st.test(t))return t +return t.replace(at,lt)},e.getTemplate=function(e){if(Object.prototype.hasOwnProperty.call(hr,e))return hr[e]},e.getTemplates=function(){return hr},e.hasTemplate=function(e){return Object.prototype.hasOwnProperty.call(hr,e)},e.helper=nt,e.htmlSafe=function(e){null==e?e="":"string"!=typeof e&&(e=String(e)) +return new it(e)},e.isHTMLSafe=ut,Object.defineProperty(e,"isSerializationFirstNode",{enumerable:!0,get:function(){return y.isSerializationFirstNode}}),e.modifierCapabilities=void 0,e.renderSettled=function(){null===cr&&(cr=P.default.defer(),(0,E._getCurrentRunLoop)()||E._backburner.schedule("actions",null,sr)) return cr.promise},e.setComponentManager=function(e,t){return(0,p.setComponentManager)(e,t)},e.setTemplate=function(e,t){return hr[e]=t},e.setTemplates=function(e){hr=e},e.setupApplicationRegistry=function(e){e.register("service:-dom-builder",{create(e){let t=(0,u.getOwner)(e) -switch(t.lookup("-environment:main")._renderMode){case"serialize":return P.serializeBuilder.bind(null) +switch(t.lookup("-environment:main")._renderMode){case"serialize":return x.serializeBuilder.bind(null) case"rehydrate":return y.rehydrationBuilder.bind(null) -default:return y.clientBuilder.bind(null)}}}),e.register(E.privatize`template:-root`,I),e.register("renderer:-dom",dr)},e.setupEngineRegistry=function(e){e.optionsForType("template",{instantiate:!1}),e.register("view:-outlet",ir),e.register("template:-outlet",fr),e.optionsForType("helper",{instantiate:!1}),e.register("component:input",te),e.register("component:link-to",de),e.register("component:textarea",ge),k.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS||e.register(E.privatize`component:-default`,We)},Object.defineProperty(e,"template",{enumerable:!0,get:function(){return t.templateFactory}}),Object.defineProperty(e,"templateCacheCounters",{enumerable:!0,get:function(){return t.templateCacheCounters}}),e.uniqueId=Bt -var I=e.RootTemplate=(0,D.createTemplateFactory)({id:"tjANIXCV",block:'[[[46,[30,0],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/root.hbs",isStrictMode:!0}),F=(0,D.createTemplateFactory)({id:"4z3DuGQ3",block:'[[[11,"input"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,4,[30,0,["type"]]],[16,"checked",[30,0,["checked"]]],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/input.hbs",scope:()=>[a.on],isStrictMode:!0}) -function L(){}class B{static toString(){return"internal component"}constructor(e,t,r){this.owner=e,this.args=t,this.caller=r,(0,u.setOwner)(this,e)}get id(){return(0,c.guidFor)(this)}get class(){return"ember-view"}validateArguments(){for(let e of Object.keys(this.args.named))this.isSupportedArgument(e)||this.onUnsupportedArgument(e)}named(e){let t=this.args.named[e] +default:return y.clientBuilder.bind(null)}}}),e.register(k.privatize`template:-root`,F),e.register("renderer:-dom",dr)},e.setupEngineRegistry=function(e){e.optionsForType("template",{instantiate:!1}),e.register("view:-outlet",ir),e.register("template:-outlet",fr),e.optionsForType("helper",{instantiate:!1}),e.register("component:input",re),e.register("component:link-to",he),e.register("component:textarea",be),T.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS||e.register(k.privatize`component:-default`,Ye)},Object.defineProperty(e,"template",{enumerable:!0,get:function(){return t.templateFactory}}),Object.defineProperty(e,"templateCacheCounters",{enumerable:!0,get:function(){return t.templateCacheCounters}}),e.uniqueId=Bt +var F=e.RootTemplate=(0,I.createTemplateFactory)({id:"tjANIXCV",block:'[[[46,[30,0],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/root.hbs",isStrictMode:!0}),L=(0,I.createTemplateFactory)({id:"4z3DuGQ3",block:'[[[11,"input"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,4,[30,0,["type"]]],[16,"checked",[30,0,["checked"]]],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/input.hbs",scope:()=>[a.on],isStrictMode:!0}) +function B(){}class U{static toString(){return"internal component"}constructor(e,t,r){this.owner=e,this.args=t,this.caller=r,(0,u.setOwner)(this,e)}get id(){return(0,c.guidFor)(this)}get class(){return"ember-view"}validateArguments(){for(let e of Object.keys(this.args.named))this.isSupportedArgument(e)||this.onUnsupportedArgument(e)}named(e){let t=this.args.named[e] return t?(0,o.valueForRef)(t):void 0}positional(e){let t=this.args.positional[e] return t?(0,o.valueForRef)(t):void 0}listenerFor(e){let t=this.named(e) -return t||L}isSupportedArgument(e){return!1}onUnsupportedArgument(e){}toString(){return`<${this.constructor}:${(0,c.guidFor)(this)}>`}}const U=new WeakMap -function H(e,t){let r={create(){throw(0,n.assert)("Use constructor instead of create")},toString:()=>e.toString()} -return U.set(r,e),(0,p.setInternalComponentManager)(V,r),(0,p.setComponentTemplate)(t,r),r}const $={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!1,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -const V=new class{getCapabilities(){return $}create(e,t,r,n,i,a){var l -let u=new(l=t,U.get(l))(e,r.capture(),(0,o.valueForRef)(a)) +return t||B}isSupportedArgument(e){return!1}onUnsupportedArgument(e){}toString(){return`<${this.constructor}:${(0,c.guidFor)(this)}>`}}const H=new WeakMap +function $(e,t){let r={create(){throw(0,n.assert)("Use constructor instead of create")},toString:()=>e.toString()} +return H.set(r,e),(0,p.setInternalComponentManager)(z,r),(0,p.setComponentTemplate)(t,r),r}const V={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!1,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +const z=new class{getCapabilities(){return V}create(e,t,r,n,i,a){var l +let u=new(l=t,H.get(l))(e,r.capture(),(0,o.valueForRef)(a)) return(0,s.untrack)(u.validateArguments.bind(u)),u}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}getDebugName(e){return e.toString()}getSelf(e){return(0,o.createConstRef)(e,"this")}getDestroyable(e){return e}} -var z=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +var q=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -const q=Object.freeze({}) -function G(e){return function(e){return e.target}(e).value}function W(e){return void 0===e?new Y(void 0):(0,o.isConstRef)(e)?new Y((0,o.valueForRef)(e)):(0,o.isUpdatableRef)(e)?new Q(e):new K(e)}class Y{constructor(e){this.value=e}get(){return this.value}set(e){this.value=e}}z([l.tracked],Y.prototype,"value",void 0) -class Q{constructor(e){this.reference=e}get(){return(0,o.valueForRef)(this.reference)}set(e){(0,o.updateRef)(this.reference,e)}}class K{constructor(e){this.lastUpstreamValue=q,this.upstream=new Q(e)}get(){let e=this.upstream.get() -return e!==this.lastUpstreamValue&&(this.lastUpstreamValue=e,this.local=new Y(e)),this.local.get()}set(e){this.local.set(e)}}class J extends B{constructor(){super(...arguments),this._value=W(this.args.named.value)}validateArguments(){super.validateArguments()}get value(){return this._value.get()}set value(e){this._value.set(e)}valueDidChange(e){this.value=G(e)}change(e){this.valueDidChange(e)}input(e){this.valueDidChange(e)}keyUp(e){switch(e.key){case"Enter":this.listenerFor("enter")(e),this.listenerFor("insert-newline")(e) +const G=Object.freeze({}) +function W(e){return function(e){return e.target}(e).value}function Y(e){return void 0===e?new Q(void 0):(0,o.isConstRef)(e)?new Q((0,o.valueForRef)(e)):(0,o.isUpdatableRef)(e)?new K(e):new J(e)}class Q{constructor(e){this.value=e}get(){return this.value}set(e){this.value=e}}q([l.tracked],Q.prototype,"value",void 0) +class K{constructor(e){this.reference=e}get(){return(0,o.valueForRef)(this.reference)}set(e){(0,o.updateRef)(this.reference,e)}}class J{constructor(e){this.lastUpstreamValue=G,this.upstream=new K(e)}get(){let e=this.upstream.get() +return e!==this.lastUpstreamValue&&(this.lastUpstreamValue=e,this.local=new Q(e)),this.local.get()}set(e){this.local.set(e)}}class X extends U{constructor(){super(...arguments),this._value=Y(this.args.named.value)}validateArguments(){super.validateArguments()}get value(){return this._value.get()}set value(e){this._value.set(e)}valueDidChange(e){this.value=W(e)}change(e){this.valueDidChange(e)}input(e){this.valueDidChange(e)}keyUp(e){switch(e.key){case"Enter":this.listenerFor("enter")(e),this.listenerFor("insert-newline")(e) break case"Escape":this.listenerFor("escape-press")(e)}}listenerFor(e){let t=super.listenerFor(e) -return this.isVirtualEventListener(e,t)?(r=t,e=>r(G(e),e)):t -var r}isVirtualEventListener(e,t){return-1!==["enter","insert-newline","escape-press"].indexOf(e)}}z([i.action],J.prototype,"valueDidChange",null),z([i.action],J.prototype,"keyUp",null) -var X=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +return this.isVirtualEventListener(e,t)?(r=t,e=>r(W(e),e)):t +var r}isVirtualEventListener(e,t){return-1!==["enter","insert-newline","escape-press"].indexOf(e)}}q([i.action],X.prototype,"valueDidChange",null),q([i.action],X.prototype,"keyUp",null) +var Z=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -let Z +let ee if(r.hasDOM){const e=Object.create(null),t=document.createElement("input") -e[""]=!1,e.text=!0,e.checkbox=!0,Z=r=>{let n=e[r] -if(void 0===n){try{t.type=r,n=t.type===r}catch(i){n=!1}finally{t.type="text"}e[r]=n}return n}}else Z=e=>""!==e -class ee extends J{constructor(){super(...arguments),this._checked=W(this.args.named.checked)}static toString(){return"Input"}get class(){return this.isCheckbox?"ember-checkbox ember-view":"ember-text-field ember-view"}get type(){let e=this.named("type") -return null==e?"text":Z(e)?e:"text"}get isCheckbox(){return"checkbox"===this.named("type")}get checked(){return this.isCheckbox?this._checked.get():void 0}set checked(e){this._checked.set(e)}change(e){this.isCheckbox?this.checkedDidChange(e):super.change(e)}input(e){this.isCheckbox||super.input(e)}checkedDidChange(e){let t=e.target -this.checked=t.checked}isSupportedArgument(e){return-1!==["type","value","checked","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}X([i.action],ee.prototype,"change",null),X([i.action],ee.prototype,"input",null),X([i.action],ee.prototype,"checkedDidChange",null) -const te=e.Input=H(ee,F) -var re=(0,D.createTemplateFactory)({id:"Ub0nir+H",block:'[[[11,3],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[16,"role",[30,0,["role"]]],[16,"title",[30,0,["title"]]],[16,"rel",[30,0,["rel"]]],[16,"tabindex",[30,0,["tabindex"]]],[16,"target",[30,0,["target"]]],[17,1],[16,6,[30,0,["href"]]],[4,[32,0],["click",[30,0,["click"]]],null],[12],[18,2,null],[13]],["&attrs","&default"],false,["yield"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/link-to.hbs",scope:()=>[a.on],isStrictMode:!0}),ne=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +e[""]=!1,e.text=!0,e.checkbox=!0,ee=r=>{let n=e[r] +if(void 0===n){try{t.type=r,n=t.type===r}catch(i){n=!1}finally{t.type="text"}e[r]=n}return n}}else ee=e=>""!==e +class te extends X{constructor(){super(...arguments),this._checked=Y(this.args.named.checked)}static toString(){return"Input"}get class(){return this.isCheckbox?"ember-checkbox ember-view":"ember-text-field ember-view"}get type(){let e=this.named("type") +return null==e?"text":ee(e)?e:"text"}get isCheckbox(){return"checkbox"===this.named("type")}get checked(){return this.isCheckbox?this._checked.get():void 0}set checked(e){this._checked.set(e)}change(e){this.isCheckbox?this.checkedDidChange(e):super.change(e)}input(e){this.isCheckbox||super.input(e)}checkedDidChange(e){let t=e.target +this.checked=t.checked}isSupportedArgument(e){return-1!==["type","value","checked","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}Z([i.action],te.prototype,"change",null),Z([i.action],te.prototype,"input",null),Z([i.action],te.prototype,"checkedDidChange",null) +const re=e.Input=$(te,L) +var ne=(0,I.createTemplateFactory)({id:"Ub0nir+H",block:'[[[11,3],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[16,"role",[30,0,["role"]]],[16,"title",[30,0,["title"]]],[16,"rel",[30,0,["rel"]]],[16,"tabindex",[30,0,["tabindex"]]],[16,"target",[30,0,["target"]]],[17,1],[16,6,[30,0,["href"]]],[4,[32,0],["click",[30,0,["click"]]],null],[12],[18,2,null],[13]],["&attrs","&default"],false,["yield"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/link-to.hbs",scope:()=>[a.on],isStrictMode:!0}),ie=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -const ie=[],oe={} -function se(e){return null==e}function ae(e){return!se(e)}function le(e){return"object"==typeof e&&null!==e&&!0===e.isQueryParams}(0,n.debugFreeze)(ie),(0,n.debugFreeze)(oe) -class ue extends B{constructor(){super(...arguments),this.currentRouteCache=(0,s.createCache)((()=>((0,s.consumeTag)((0,s.tagFor)(this.routing,"currentState")),(0,s.untrack)((()=>this.routing.currentRouteName)))))}static toString(){return"LinkTo"}validateArguments(){super.validateArguments()}get class(){let e="ember-view" +const oe=[],se={} +function ae(e){return null==e}function le(e){return!ae(e)}function ue(e){return"object"==typeof e&&null!==e&&!0===e.isQueryParams}(0,n.debugFreeze)(oe),(0,n.debugFreeze)(se) +class ce extends U{constructor(){super(...arguments),this.currentRouteCache=(0,s.createCache)((()=>((0,s.consumeTag)((0,s.tagFor)(this.routing,"currentState")),(0,s.untrack)((()=>this.routing.currentRouteName)))))}static toString(){return"LinkTo"}validateArguments(){super.validateArguments()}get class(){let e="ember-view" return this.isActive?(e+=this.classFor("active"),!1===this.willBeActive&&(e+=" ember-transitioning-out")):this.willBeActive&&(e+=" ember-transitioning-in"),this.isLoading&&(e+=this.classFor("loading")),this.isDisabled&&(e+=this.classFor("disabled")),e}get href(){if(this.isLoading)return"#" let{routing:e,route:t,models:r,query:n}=this return(0,s.consumeTag)((0,s.tagFor)(e,"currentState")),e.generateURL(t,r,n)}click(e){if(!(0,d.isSimpleClick)(e))return @@ -177,77 +182,78 @@ if(this.preventDefault(e),this.isDisabled)return if(this.isLoading)return let{routing:r,route:n,models:i,query:o,replace:s}=this,a={routeName:n,queryParams:o,transition:void 0};(0,m.flaggedInstrument)("interaction.link-to",a,(()=>{a.transition=r.transitionTo(n,i,o,s)}))}get route(){if("route"in this.args.named){let e=this.named("route") return e&&this.namespaceRoute(e)}return this.currentRoute}get currentRoute(){return(0,s.getValue)(this.currentRouteCache)}get models(){if("models"in this.args.named){let e=this.named("models") -return e}return"model"in this.args.named?[this.named("model")]:ie}get query(){if("query"in this.args.named){let e=this.named("query") -return{...e}}return oe}get replace(){return!0===this.named("replace")}get isActive(){return this.isActiveForState(this.routing.currentState)}get willBeActive(){let e=this.routing.currentState,t=this.routing.targetState -return e===t?null:this.isActiveForState(t)}get isLoading(){return se(this.route)||this.models.some((e=>se(e)))}get isDisabled(){return Boolean(this.named("disabled"))}get isEngine(){let e=this.owner +return e}return"model"in this.args.named?[this.named("model")]:oe}get query(){if("query"in this.args.named){let e=this.named("query") +return{...e}}return se}get replace(){return!0===this.named("replace")}get isActive(){return this.isActiveForState(this.routing.currentState)}get willBeActive(){let e=this.routing.currentState,t=this.routing.targetState +return e===t?null:this.isActiveForState(t)}get isLoading(){return ae(this.route)||this.models.some((e=>ae(e)))}get isDisabled(){return Boolean(this.named("disabled"))}get isEngine(){let e=this.owner return e instanceof f.default&&void 0!==(0,h.getEngineParent)(e)}get engineMountPoint(){let e=this.owner return e instanceof f.default?e.mountPoint:void 0}classFor(e){let t=this.named(`${e}Class`) -return!0===t||se(t)?` ${e}`:t?` ${t}`:""}namespaceRoute(e){let{engineMountPoint:t}=this -return void 0===t?e:"application"===e?t:`${t}.${e}`}isActiveForState(e){if(!ae(e))return!1 +return!0===t||ae(t)?` ${e}`:t?` ${t}`:""}namespaceRoute(e){let{engineMountPoint:t}=this +return void 0===t?e:"application"===e?t:`${t}.${e}`}isActiveForState(e){if(!le(e))return!1 if(this.isLoading)return!1 let t=this.named("current-when") if("boolean"==typeof t)return t if("string"==typeof t){let{models:r,routing:n}=this return t.split(" ").some((t=>n.isActiveForRoute(r,void 0,this.namespaceRoute(t),e)))}{let{route:t,models:r,query:n,routing:i}=this -return i.isActiveForRoute(r,n,t,e)}}preventDefault(e){e.preventDefault()}isSupportedArgument(e){return-1!==["route","model","models","query","replace","disabled","current-when","activeClass","loadingClass","disabledClass"].indexOf(e)||super.isSupportedArgument(e)}}ne([(0,g.service)("-routing")],ue.prototype,"routing",void 0),ne([i.action],ue.prototype,"click",null) -let{prototype:ce}=ue,pe=(e,t)=>e?Object.getOwnPropertyDescriptor(e,t)||pe(Object.getPrototypeOf(e),t):null -{let e=ce.onUnsupportedArgument -Object.defineProperty(ce,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"href"===t||e.call(this,t)}})}{let e=pe(ce,"models"),t=e.get -Object.defineProperty(ce,"models",{configurable:!0,enumerable:!1,get:function(){let e=t.call(this) -return e.length>0&&!("query"in this.args.named)&&le(e[e.length-1])&&(e=e.slice(0,-1)),e}}) -let r=pe(ce,"query"),n=r.get -Object.defineProperty(ce,"query",{configurable:!0,enumerable:!1,get:function(){if("query"in this.args.named){let e=n.call(this) -return le(e)?e.values??oe:e}{let e=t.call(this) +return i.isActiveForRoute(r,n,t,e)}}preventDefault(e){e.preventDefault()}isSupportedArgument(e){return-1!==["route","model","models","query","replace","disabled","current-when","activeClass","loadingClass","disabledClass"].indexOf(e)||super.isSupportedArgument(e)}}ie([(0,g.service)("-routing")],ce.prototype,"routing",void 0),ie([i.action],ce.prototype,"click",null) +let{prototype:pe}=ce,de=(e,t)=>e?Object.getOwnPropertyDescriptor(e,t)||de(Object.getPrototypeOf(e),t):null +{let e=pe.onUnsupportedArgument +Object.defineProperty(pe,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"href"===t||e.call(this,t)}})}{let e=de(pe,"models"),t=e.get +Object.defineProperty(pe,"models",{configurable:!0,enumerable:!1,get:function(){let e=t.call(this) +return e.length>0&&!("query"in this.args.named)&&ue(e[e.length-1])&&(e=e.slice(0,-1)),e}}) +let r=de(pe,"query"),n=r.get +Object.defineProperty(pe,"query",{configurable:!0,enumerable:!1,get:function(){if("query"in this.args.named){let e=n.call(this) +return ue(e)?e.values??se:e}{let e=t.call(this) if(e.length>0){let t=e[e.length-1] -if(le(t)&&null!==t.values)return t.values}return oe}}})}{let e=ce.onUnsupportedArgument -Object.defineProperty(ce,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"params"!==t&&e.call(this,t)}})}const de=e.LinkTo=H(ue,re) -var he=(0,D.createTemplateFactory)({id:"112WKCh2",block:'[[[11,"textarea"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/textarea.hbs",scope:()=>[a.on],isStrictMode:!0}),fe=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if(ue(t)&&null!==t.values)return t.values}return se}}})}{let e=pe.onUnsupportedArgument +Object.defineProperty(pe,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"params"!==t&&e.call(this,t)}})}const he=e.LinkTo=$(ce,ne) +var fe=(0,I.createTemplateFactory)({id:"112WKCh2",block:'[[[11,"textarea"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/textarea.hbs",scope:()=>[a.on],isStrictMode:!0}),me=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -class me extends J{static toString(){return"Textarea"}get class(){return"ember-text-area ember-view"}change(e){super.change(e)}input(e){super.input(e)}isSupportedArgument(e){return-1!==["type","value","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}fe([i.action],me.prototype,"change",null),fe([i.action],me.prototype,"input",null) -const ge=e.Textarea=H(me,he) -function be(e){return"function"==typeof e}function ye(e,t){return"attrs"===t[0]&&(t.shift(),1===t.length)?(0,o.childRefFor)(e,t[0]):(0,o.childRefFromParts)(e,t)}function ve(e){let t=e.indexOf(":") +class ge extends X{static toString(){return"Textarea"}get class(){return"ember-text-area ember-view"}change(e){super.change(e)}input(e){super.input(e)}isSupportedArgument(e){return-1!==["type","value","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}me([i.action],ge.prototype,"change",null),me([i.action],ge.prototype,"input",null) +const be=e.Textarea=$(ge,fe) +function ye(e){return"function"==typeof e}function ve(e,t){return"attrs"===t[0]&&(t.shift(),1===t.length)?(0,o.childRefFor)(e,t[0]):(0,o.childRefFromParts)(e,t)}function _e(e){let t=e.indexOf(":") if(-1===t)return[e,e,!0] {let r=e.substring(0,t),n=e.substring(t+1) -return[r,n,!1]}}function _e(e,t,r,n){let[i,s,a]=r +return[r,n,!1]}}function Oe(e,t,r,n){let[i,s,a]=r if("id"===s){let t=(0,l.get)(e,i) null==t&&(t=e.elementId) let r=(0,o.createPrimitiveRef)(t) -return void n.setAttribute("id",r,!0,null)}let u=i.indexOf(".")>-1,c=u?ye(t,i.split(".")):(0,o.childRefFor)(t,i) -n.setAttribute(s,c,!1,null)}function Oe(e,t,r){let n=t.split(":"),[i,s,a]=n +return void n.setAttribute("id",r,!0,null)}let u=i.indexOf(".")>-1,c=u?ve(t,i.split(".")):(0,o.childRefFor)(t,i) +n.setAttribute(s,c,!1,null)}function we(e,t,r){let n=t.split(":"),[i,s,a]=n if(""===i)r.setAttribute("class",(0,o.createPrimitiveRef)(s),!0,null) -else{let t,n=i.indexOf(".")>-1,l=n?i.split("."):[],u=n?ye(e,l):(0,o.childRefFor)(e,i) -t=void 0===s?we(u,n?l[l.length-1]:i):function(e,t,r){return(0,o.createComputeRef)((()=>(0,o.valueForRef)(e)?t:r))}(u,s,a),r.setAttribute("class",t,!1,null)}}function we(e,t){let r +else{let t,n=i.indexOf(".")>-1,l=n?i.split("."):[],u=n?ve(e,l):(0,o.childRefFor)(e,i) +t=void 0===s?Ee(u,n?l[l.length-1]:i):function(e,t,r){return(0,o.createComputeRef)((()=>(0,o.valueForRef)(e)?t:r))}(u,s,a),r.setAttribute("class",t,!1,null)}}function Ee(e,t){let r return(0,o.createComputeRef)((()=>{let n=(0,o.valueForRef)(e) -return!0===n?r||(r=(0,_.dasherize)(t)):n||0===n?String(n):null}))}function Ce(){}class Ee{constructor(e,t,r,n,i,a){this.component=e,this.args=t,this.argsTag=r,this.finalizer=n,this.hasWrappedElement=i,this.isInteractive=a,this.classRef=null,this.classRef=null,this.argsRevision=null===t?0:(0,s.valueForTag)(r),this.rootRef=(0,o.createConstRef)(e,"this"),(0,O.registerDestructor)(this,(()=>this.willDestroy()),!0),(0,O.registerDestructor)(this,(()=>this.component.destroy()))}willDestroy(){let{component:e,isInteractive:t}=this +return!0===n?r||(r=(0,_.dasherize)(t)):n||0===n?String(n):null}))}function Ce(){}class ke{constructor(e,t,r,n,i,a){this.component=e,this.args=t,this.argsTag=r,this.finalizer=n,this.hasWrappedElement=i,this.isInteractive=a,this.classRef=null,this.classRef=null,this.argsRevision=null===t?0:(0,s.valueForTag)(r),this.rootRef=(0,o.createConstRef)(e,"this"),(0,O.registerDestructor)(this,(()=>this.willDestroy()),!0),(0,O.registerDestructor)(this,(()=>this.component.destroy()))}willDestroy(){let{component:e,isInteractive:t}=this if(t){(0,s.beginUntrackFrame)(),e.trigger("willDestroyElement"),e.trigger("willClearRender"),(0,s.endUntrackFrame)() let t=(0,d.getViewElement)(e) t&&((0,d.clearElementView)(t),(0,d.clearViewElement)(e))}e.renderer.unregister(e)}finalize(){let{finalizer:e}=this -e(),this.finalizer=Ce}}function ke(e){return(0,p.setInternalHelperManager)(e,{})}const Te=new WeakSet -var Se=ke((e=>{let t,{named:r,positional:n}=e,[i,s,...a]=n,u=s.debugLabel,c="target"in r?r.target:i,p=function(e,t){let r,n +e(),this.finalizer=Ce}}function Te(e){return(0,p.setInternalHelperManager)(e,{})}const Re=new WeakSet +var Se=Te((e=>{(0,w.deprecateUntil)("Usage of the `(action)` helper is deprecated. Migrate to native functions and function invocation.",w.DEPRECATIONS.DEPRECATE_TEMPLATE_ACTION) +let t,{named:r,positional:n}=e,[i,s,...a]=n,u=s.debugLabel,c="target"in r?r.target:i,p=function(e,t){let r,n t.length>0&&(r=e=>t.map(o.valueForRef).concat(e)) e&&(n=t=>{let r=(0,o.valueForRef)(e) return r&&t.length>0&&(t[0]=(0,l.get)(t[0],r)),t}) -return r&&n?e=>n(r(e)):r||n||Re}("value"in r&&r.value||!1,a) -return t=(0,o.isInvokableRef)(s)?Pe(s,s,xe,p,u):function(e,t,r,n,i){const s=(0,o.valueForRef)(r) +return r&&n?e=>n(r(e)):r||n||Pe}("value"in r&&r.value||!1,a) +return t=(0,o.isInvokableRef)(s)?xe(s,s,Ae,p,u):function(e,t,r,n,i){const s=(0,o.valueForRef)(r) 0 -return(...r)=>Pe(e,(0,o.valueForRef)(t),s,n,i)(...r)}((0,o.valueForRef)(i),c,s,p,u),Te.add(t),(0,o.createUnboundRef)(t,"(result of an `action` helper)")})) -function Re(e){return e}function Pe(e,t,r,n,i){let o,s +return(...r)=>xe(e,(0,o.valueForRef)(t),s,n,i)(...r)}((0,o.valueForRef)(i),c,s,p,u),Re.add(t),(0,o.createUnboundRef)(t,"(result of an `action` helper)")})) +function Pe(e){return e}function xe(e,t,r,n,i){let o,s if("string"==typeof r){o=t let e=t.actions?.[r] s=e}else"function"==typeof r&&(o=e,s=r) return(...e)=>{let t={target:o,args:e,label:"@glimmer/closure-action"} -return(0,m.flaggedInstrument)("interaction.ember-action",t,(()=>(0,w.join)(o,s,...n(e))))}}function xe(e){(0,o.updateRef)(this,e)}function Ae(e){let t=Object.create(null),r=Object.create(null) +return(0,m.flaggedInstrument)("interaction.ember-action",t,(()=>(0,E.join)(o,s,...n(e))))}}function Ae(e){(0,o.updateRef)(this,e)}function Me(e){let t=Object.create(null),r=Object.create(null) r[je]=e -for(let n in e){let i=e[n],s=(0,o.valueForRef)(i),a="function"==typeof s&&Te.has(s);(0,o.isUpdatableRef)(i)&&!a?t[n]=new Ne(i,s):t[n]=s,r[n]=s}return r.attrs=t,r}const Me=Symbol("REF") -class Ne{constructor(e,t){this[d.MUTABLE_CELL]=!0,this[Me]=e,this.value=t}update(e){(0,o.updateRef)(this[Me],e)}}const je=(0,c.enumerableSymbol)("ARGS"),De=(0,c.enumerableSymbol)("HAS_BLOCK"),Ie=Symbol("DIRTY_TAG"),Fe=Symbol("IS_DISPATCHING_ATTRS"),Le=Symbol("BOUNDS"),Be=(0,o.createPrimitiveRef)("ember-view");(0,n.debugFreeze)([]) -class Ue{templateFor(e){let t,{layout:r,layoutName:n}=e,i=(0,u.getOwner)(e) +for(let n in e){let i=e[n],s=(0,o.valueForRef)(i),a="function"==typeof s&&Re.has(s);(0,o.isUpdatableRef)(i)&&!a?t[n]=new De(i,s):t[n]=s,r[n]=s}return r.attrs=t,r}const Ne=Symbol("REF") +class De{constructor(e,t){this[d.MUTABLE_CELL]=!0,this[Ne]=e,this.value=t}update(e){(0,o.updateRef)(this[Ne],e)}}const je=(0,c.enumerableSymbol)("ARGS"),Ie=(0,c.enumerableSymbol)("HAS_BLOCK"),Fe=Symbol("DIRTY_TAG"),Le=Symbol("IS_DISPATCHING_ATTRS"),Be=Symbol("BOUNDS"),Ue=(0,o.createPrimitiveRef)("ember-view");(0,n.debugFreeze)([]) +class He{templateFor(e){let t,{layout:r,layoutName:n}=e,i=(0,u.getOwner)(e) if(void 0===r){if(void 0===n)return null {let e=i.lookup(`template:${n}`) -t=e}}else{if(!be(r))return null +t=e}}else{if(!ye(r))return null t=r}return(0,v.unwrapTemplate)(t(i)).asWrappedLayout()}getDynamicLayout(e){return this.templateFor(e.component)}getTagName(e){let{component:t,hasWrappedElement:r}=e -return r?t&&t.tagName||"div":null}getCapabilities(){return Ve}prepareArgs(e,t){if(t.named.has("__ARGS__")){let{__ARGS__:e,...r}=t.named.capture(),n=(0,o.valueForRef)(e) +return r?t&&t.tagName||"div":null}getCapabilities(){return ze}prepareArgs(e,t){if(t.named.has("__ARGS__")){let{__ARGS__:e,...r}=t.named.capture(),n=(0,o.valueForRef)(e) return{positional:n.positional,named:{...r,...n.named}}}const{positionalParams:r}=e.class??e if(null==r||0===t.positional.length)return null let n @@ -257,68 +263,68 @@ n={[r]:(0,o.createComputeRef)((()=>(0,y.reifyPositional)(e)))},Object.assign(n,t n={},Object.assign(n,t.named.capture()) for(let i=0;i{a.setAttribute("class",(0,o.createPrimitiveRef)(e),!1,null)})),p&&p.length&&p.forEach((e=>{Oe(n,e,a)})),a.setAttribute("class",Be,!1,null),"ariaRole"in e&&a.setAttribute("role",(0,o.childRefFor)(n,"ariaRole"),!1,null),e._transitionTo("hasElement"),r&&((0,s.beginUntrackFrame)(),e.trigger("willInsertElement"),(0,s.endUntrackFrame)())}didRenderLayout(e,t){e.component[Le]=t,e.finalize()}didCreate({component:e,isInteractive:t}){t&&(e._transitionTo("inDOM"),e.trigger("didInsertElement"),e.trigger("didRender"))}update(e){let{component:t,args:r,argsTag:n,argsRevision:i,isInteractive:o}=e -if(e.finalizer=(0,m._instrumentStart)("render.component",$e,t),(0,s.beginUntrackFrame)(),null!==r&&!(0,s.validateTag)(n,i)){(0,s.beginTrackFrame)() -let i=Ae(r) -n=e.argsTag=(0,s.endTrackFrame)(),e.argsRevision=(0,s.valueForTag)(n),t[Fe]=!0,t.setProperties(i),t[Fe]=!1,t.trigger("didUpdateAttrs"),t.trigger("didReceiveAttrs")}o&&(t.trigger("willUpdate"),t.trigger("willRender")),(0,s.endUntrackFrame)(),(0,s.consumeTag)(n),(0,s.consumeTag)(t[Ie])}didUpdateLayout(e){e.finalize()}didUpdate({component:e,isInteractive:t}){t&&(e.trigger("didUpdate"),e.trigger("didRender"))}getDestroyable(e){return e}}function He(e){return e.instrumentDetails({initialRender:!0})}function $e(e){return e.instrumentDetails({initialRender:!1})}const Ve={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!0,hasSubOwner:!1},ze=new Ue -function qe(e){return e===ze}let Ge=new WeakMap -class We extends(d.CoreView.extend(d.ChildViewsSupport,d.ViewStateSupport,d.ClassNamesSupport,b.TargetActionSupport,d.ActionSupport,d.ViewMixin,{didReceiveAttrs(){},didRender(){},didUpdate(){},didUpdateAttrs(){},willRender(){},willUpdate(){}})){constructor(){super(...arguments),this.isComponent=!0}init(e){super.init(e),this._superRerender=this.rerender,this.rerender=this._rerender,this[Fe]=!1,this[Ie]=(0,s.createTag)(),this[Le]=null +a.setAttribute("id",(0,o.createPrimitiveRef)(t),!1,null)}if(t){const e=Ee(t) +a.setAttribute("class",e,!1,null)}u&&u.length&&u.forEach((e=>{a.setAttribute("class",(0,o.createPrimitiveRef)(e),!1,null)})),p&&p.length&&p.forEach((e=>{we(n,e,a)})),a.setAttribute("class",Ue,!1,null),"ariaRole"in e&&a.setAttribute("role",(0,o.childRefFor)(n,"ariaRole"),!1,null),e._transitionTo("hasElement"),r&&((0,s.beginUntrackFrame)(),e.trigger("willInsertElement"),(0,s.endUntrackFrame)())}didRenderLayout(e,t){e.component[Be]=t,e.finalize()}didCreate({component:e,isInteractive:t}){t&&(e._transitionTo("inDOM"),e.trigger("didInsertElement"),e.trigger("didRender"))}update(e){let{component:t,args:r,argsTag:n,argsRevision:i,isInteractive:o}=e +if(e.finalizer=(0,m._instrumentStart)("render.component",Ve,t),(0,s.beginUntrackFrame)(),null!==r&&!(0,s.validateTag)(n,i)){(0,s.beginTrackFrame)() +let i=Me(r) +n=e.argsTag=(0,s.endTrackFrame)(),e.argsRevision=(0,s.valueForTag)(n),t[Le]=!0,t.setProperties(i),t[Le]=!1,t.trigger("didUpdateAttrs"),t.trigger("didReceiveAttrs")}o&&(t.trigger("willUpdate"),t.trigger("willRender")),(0,s.endUntrackFrame)(),(0,s.consumeTag)(n),(0,s.consumeTag)(t[Fe])}didUpdateLayout(e){e.finalize()}didUpdate({component:e,isInteractive:t}){t&&(e.trigger("didUpdate"),e.trigger("didRender"))}getDestroyable(e){return e}}function $e(e){return e.instrumentDetails({initialRender:!0})}function Ve(e){return e.instrumentDetails({initialRender:!1})}const ze={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!0,hasSubOwner:!1},qe=new He +function Ge(e){return e===qe}let We=new WeakMap +class Ye extends(d.CoreView.extend(d.ChildViewsSupport,d.ViewStateSupport,d.ClassNamesSupport,b.TargetActionSupport,d.ActionSupport,d.ViewMixin,{didReceiveAttrs(){},didRender(){},didUpdate(){},didUpdateAttrs(){},willRender(){},willUpdate(){}})){constructor(){super(...arguments),this.isComponent=!0}init(e){super.init(e),this._superRerender=this.rerender,this.rerender=this._rerender,this[Le]=!1,this[Fe]=(0,s.createTag)(),this[Be]=null const t=this._dispatcher -if(t){let e=Ge.get(t) -e||(e=new WeakSet,Ge.set(t,e)) +if(t){let e=We.get(t) +e||(e=new WeakSet,We.set(t,e)) let r=Object.getPrototypeOf(this) if(!e.has(r)){t.lazyEvents.forEach(((e,r)=>{null!==e&&"function"==typeof this[e]&&t.setupHandlerForBrowserEvent(r)})),e.add(r)}}}get _dispatcher(){if(void 0===this.__dispatcher){let e=(0,u.getOwner)(this) if(e.lookup("-environment:main").isInteractive){let t=e.lookup("event_dispatcher:main") -this.__dispatcher=t}else this.__dispatcher=null}return this.__dispatcher}on(e,t,r){return this._dispatcher?.setupHandlerForEmberEvent(e),super.on(e,t,r)}_rerender(){(0,s.dirtyTag)(this[Ie]),this._superRerender()}[l.PROPERTY_DID_CHANGE](e,t){if(this[Fe])return +this.__dispatcher=t}else this.__dispatcher=null}return this.__dispatcher}on(e,t,r){return this._dispatcher?.setupHandlerForEmberEvent(e),super.on(e,t,r)}_rerender(){(0,s.dirtyTag)(this[Fe]),this._superRerender()}[l.PROPERTY_DID_CHANGE](e,t){if(this[Le])return let r=this[je],n=void 0!==r?r[e]:void 0 void 0!==n&&(0,o.isUpdatableRef)(n)&&(0,o.updateRef)(n,2===arguments.length?t:(0,l.get)(this,e))}getAttr(e){return this.get(e)}readDOMAttr(e){let t=(0,d.getViewElement)(this),r=t,n="http://www.w3.org/2000/svg"===r.namespaceURI,{type:i,normalized:o}=(0,y.normalizeProperty)(r,e) -return n||"attr"===i?r.getAttribute(o):r[o]}static toString(){return"@ember/component"}}var Ye -e.Component=We,We.isComponentFactory=!0,We.reopenClass({positionalParams:[]}),(0,p.setInternalComponentManager)(ze,We) -const Qe=Symbol("RECOMPUTE_TAG"),Ke=Symbol("IS_CLASSIC_HELPER") -class Je extends C.FrameworkObject{init(e){super.init(e),this[Qe]=(0,s.createTag)()}recompute(){(0,w.join)((()=>(0,s.dirtyTag)(this[Qe])))}}e.Helper=Je,Ye=Ke,Je.isHelperFactory=!0,Je[Ye]=!0,Je.helper=rt -class Xe{constructor(e){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0,hasDestroyable:!0}) +return n||"attr"===i?r.getAttribute(o):r[o]}static toString(){return"@ember/component"}}var Qe +e.Component=Ye,Ye.isComponentFactory=!0,Ye.reopenClass({positionalParams:[]}),(0,p.setInternalComponentManager)(qe,Ye) +const Ke=Symbol("RECOMPUTE_TAG"),Je=Symbol("IS_CLASSIC_HELPER") +class Xe extends C.FrameworkObject{init(e){super.init(e),this[Ke]=(0,s.createTag)()}recompute(){(0,E.join)((()=>(0,s.dirtyTag)(this[Ke])))}}e.Helper=Xe,Qe=Je,Xe.isHelperFactory=!0,Xe[Qe]=!0,Xe.helper=nt +class Ze{constructor(e){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0,hasDestroyable:!0}) let t={};(0,u.setOwner)(t,e),this.ownerInjection=t}createHelper(e,t){let r=null!=(n=e)&&"class"in n?e.create():e.create(this.ownerInjection) var n return{instance:r,args:t}}getDestroyable({instance:e}){return e}getValue({instance:e,args:t}){let{positional:r,named:n}=t,i=e.compute(r,n) -return(0,s.consumeTag)(e[Qe]),i}getDebugName(e){return(0,c.getDebugName)((e.class||e).prototype)}}(0,p.setHelperManager)((e=>new Xe(e)),Je) -const Ze=(0,p.getInternalHelperManager)(Je) -class et{constructor(e){this.compute=e,this.isHelperFactory=!0}create(){return{compute:this.compute}}}const tt=new class{constructor(){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0})}createHelper(e,t){return()=>e.compute.call(null,t.positional,t.named)}getValue(e){return e()}getDebugName(e){return(0,c.getDebugName)(e.compute)}} -function rt(e){return new et(e)}(0,p.setHelperManager)((()=>tt),et.prototype) -class nt{constructor(e){this.__string=e}toString(){return`${this.__string}`}toHTML(){return this.toString()}}e.SafeString=nt -const it={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},ot=/[&<>"'`=]/,st=/[&<>"'`=]/g -function at(e){return it[e]}function lt(e){return null!==e&&"object"==typeof e&&"toHTML"in e&&"function"==typeof e.toHTML}function ut(e){return{object:`${e.name}:main`}}const ct={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class pt{create(e,t,r,n,i){let s=i.get("outletState"),a=t.ref +return(0,s.consumeTag)(e[Ke]),i}getDebugName(e){return(0,c.getDebugName)((e.class||e).prototype)}}(0,p.setHelperManager)((e=>new Ze(e)),Xe) +const et=(0,p.getInternalHelperManager)(Xe) +class tt{constructor(e){this.compute=e,this.isHelperFactory=!0}create(){return{compute:this.compute}}}const rt=new class{constructor(){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0})}createHelper(e,t){return()=>e.compute.call(null,t.positional,t.named)}getValue(e){return e()}getDebugName(e){return(0,c.getDebugName)(e.compute)}} +function nt(e){return new tt(e)}(0,p.setHelperManager)((()=>rt),tt.prototype) +class it{constructor(e){this.__string=e}toString(){return`${this.__string}`}toHTML(){return this.toString()}}e.SafeString=it +const ot={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},st=/[&<>"'`=]/,at=/[&<>"'`=]/g +function lt(e){return ot[e]}function ut(e){return null!==e&&"object"==typeof e&&"toHTML"in e&&"function"==typeof e.toHTML}function ct(e){return{object:`${e.name}:main`}}const pt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +const dt=new class{create(e,t,r,n,i){let s=i.get("outletState"),a=t.ref i.set("outletState",a) -let l={self:(0,o.createConstRef)(t.controller,"this"),finalize:(0,m._instrumentStart)("render.outlet",ut,t)} +let l={self:(0,o.createConstRef)(t.controller,"this"),finalize:(0,m._instrumentStart)("render.outlet",ct,t)} if(void 0!==n.debugRenderTree){l.outletBucket={} let e=(0,o.valueForRef)(s),t=e&&e.render&&e.render.owner,r=(0,o.valueForRef)(a).render.owner if(t&&t!==r){let e=r.mountPoint l.engine=r,e&&(l.engineBucket={mountPoint:e})}}return l}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r){let n=[] -return n.push({bucket:t.outletBucket,type:"outlet",name:"main",args:y.EMPTY_ARGS,instance:void 0,template:void 0}),t.engineBucket&&n.push({bucket:t.engineBucket,type:"engine",name:t.engineBucket.mountPoint,args:y.EMPTY_ARGS,instance:t.engine,template:void 0}),n.push({bucket:t,type:"route-template",name:e.name,args:r,instance:e.controller,template:(0,v.unwrapTemplate)(e.template).moduleName}),n}getCapabilities(){return ct}getSelf({self:e}){return e}didCreate(){}didUpdate(){}didRenderLayout(e){e.finalize()}didUpdateLayout(){}getDestroyable(){return null}}const dt=new pt +return n.push({bucket:t.outletBucket,type:"outlet",name:"main",args:y.EMPTY_ARGS,instance:void 0,template:void 0}),t.engineBucket&&n.push({bucket:t.engineBucket,type:"engine",name:t.engineBucket.mountPoint,args:y.EMPTY_ARGS,instance:t.engine,template:void 0}),n.push({bucket:t,type:"route-template",name:e.name,args:r,instance:e.controller,template:(0,v.unwrapTemplate)(e.template).moduleName}),n}getCapabilities(){return pt}getSelf({self:e}){return e}didCreate(){}didUpdate(){}didRenderLayout(e){e.finalize()}didUpdateLayout(){}getDestroyable(){return null}} class ht{constructor(e,t=dt){this.state=e,this.manager=t,this.handle=-1 let r=t.getCapabilities() -this.capabilities=(0,p.capabilityFlagsFrom)(r),this.compilable=r.wrapped?(0,v.unwrapTemplate)(e.template).asWrappedLayout():(0,v.unwrapTemplate)(e.template).asLayout(),this.resolvedName=e.name}}class ft extends Ue{constructor(e){super(),this.component=e}create(e,t,r,{isInteractive:n},i){let o=this.component,a=(0,m._instrumentStart)("render.component",He,o) +this.capabilities=(0,p.capabilityFlagsFrom)(r),this.compilable=r.wrapped?(0,v.unwrapTemplate)(e.template).asWrappedLayout():(0,v.unwrapTemplate)(e.template).asLayout(),this.resolvedName=e.name}}class ft extends He{constructor(e){super(),this.component=e}create(e,t,r,{isInteractive:n},i){let o=this.component,a=(0,m._instrumentStart)("render.component",$e,o) i.view=o let l=""!==o.tagName l||(n&&o.trigger("willRender"),o._transitionTo("hasElement"),n&&o.trigger("willInsertElement")) -let u=new Ee(o,null,s.CONSTANT_TAG,a,l,n) -return(0,s.consumeTag)(o[Ie]),u}}const mt={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!1,createArgs:!1,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!1,hasSubOwner:!1} +let u=new ke(o,null,s.CONSTANT_TAG,a,l,n) +return(0,s.consumeTag)(o[Fe]),u}}const mt={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!1,createArgs:!1,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!1,hasSubOwner:!1} class gt{constructor(e){this.handle=-1,this.resolvedName="-top-level",this.capabilities=(0,p.capabilityFlagsFrom)(mt),this.compilable=null,this.manager=new ft(e) -let t=(0,E.getFactoryFor)(e) -this.state=t}}class bt{constructor(e){this.inner=e}}var yt=ke((({positional:e})=>{const t=e[0] +let t=(0,k.getFactoryFor)(e) +this.state=t}}class bt{constructor(e){this.inner=e}}var yt=Te((({positional:e})=>{const t=e[0] return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(t) return(0,s.consumeTag)((0,l.tagForObject)(e)),(0,c.isProxy)(e)&&(e=(0,b._contentFor)(e)),new bt(e)}))})) class vt{constructor(e){this.length=e,this.position=0}isEmpty(){return!1}memoFor(e){return e}next(){let{length:e,position:t}=this @@ -330,28 +336,28 @@ if(0===t.length)return null {let r=[] for(let n of t){let t t=e[n],(0,s.isTracking)()&&((0,s.consumeTag)((0,s.tagFor)(e,n)),Array.isArray(t)&&(0,s.consumeTag)((0,s.tagFor)(t,"[]"))),r.push(t)}return new this(t,r)}}static fromForEachable(e){let t=[],r=[],n=0,i=!1 -return e.forEach((function(e,o){i=i||arguments.length>=2,i&&t.push(o),r.push(e),n++})),0===n?null:i?new this(t,r):new _t(r)}constructor(e,t){super(t.length),this.keys=e,this.values=t}valueFor(e){return this.values[e]}memoFor(e){return this.keys[e]}}class Ct{static from(e){let t=e[Symbol.iterator](),r=t.next(),{done:n}=r +return e.forEach((function(e,o){i=i||arguments.length>=2,i&&t.push(o),r.push(e),n++})),0===n?null:i?new this(t,r):new _t(r)}constructor(e,t){super(t.length),this.keys=e,this.values=t}valueFor(e){return this.values[e]}memoFor(e){return this.keys[e]}}class Et{static from(e){let t=e[Symbol.iterator](),r=t.next(),{done:n}=r return n?null:new this(t,r)}constructor(e,t){this.iterable=e,this.result=t,this.position=0}isEmpty(){return!1}next(){let{iterable:e,result:t,position:r}=this if(t.done)return null let n=this.valueFor(t,r),i=this.memoFor(t,r) -return this.position++,this.result=e.next(),{value:n,memo:i}}}class Et extends Ct{valueFor(e){return e.value}memoFor(e,t){return t}}class kt extends Ct{valueFor(e){return e.value[1]}memoFor(e){return e.value[0]}}function Tt(e){return null!=e&&"function"==typeof e.forEach}function St(e){return null!=e&&"function"==typeof e[Symbol.iterator]}(0,x.default)({FEATURES:{DEFAULT_HELPER_MANAGER:!0},scheduleRevalidate(){w._backburner.ensureInstance()},toBool:function(e){return(0,c.isProxy)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"content")),Boolean((0,l.get)(e,"isTruthy"))):(0,N.isArray)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),0!==e.length):(0,M.isHTMLSafe)(e)?Boolean(e.toString()):Boolean(e)},toIterator:function(e){return e instanceof bt?function(e){if(t=e,null===t||"object"!=typeof t&&"function"!=typeof t)return null +return this.position++,this.result=e.next(),{value:n,memo:i}}}class Ct extends Et{valueFor(e){return e.value}memoFor(e,t){return t}}class kt extends Et{valueFor(e){return e.value[1]}memoFor(e){return e.value[0]}}function Tt(e){return null!=e&&"function"==typeof e.forEach}function Rt(e){return null!=e&&"function"==typeof e[Symbol.iterator]}(0,A.default)({FEATURES:{DEFAULT_HELPER_MANAGER:!0},scheduleRevalidate(){E._backburner.ensureInstance()},toBool:function(e){return(0,c.isProxy)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"content")),Boolean((0,l.get)(e,"isTruthy"))):(0,D.isArray)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),0!==e.length):(0,N.isHTMLSafe)(e)?Boolean(e.toString()):Boolean(e)},toIterator:function(e){return e instanceof bt?function(e){if(t=e,null===t||"object"!=typeof t&&"function"!=typeof t)return null var t -return Array.isArray(e)||(0,A.isEmberArray)(e)?wt.fromIndexable(e):St(e)?kt.from(e):Tt(e)?wt.fromForEachable(e):wt.fromIndexable(e)}(e.inner):function(e){if(!(0,c.isObject)(e))return null -return Array.isArray(e)?_t.from(e):(0,A.isEmberArray)(e)?Ot.from(e):St(e)?Et.from(e):Tt(e)?_t.fromForEachable(e):null}(e)},getProp:l._getProp,setProp:l._setProp,getPath:l.get,setPath:l.set,scheduleDestroy(e,t){(0,w.schedule)("actions",null,t,e)},scheduleDestroyed(e){(0,w.schedule)("destroy",null,e)},warnIfStyleNotTrusted(e){},assert(e,t,r){0},deprecate(e,t,r){0}}) -class Rt{constructor(e,t){this.owner=e,this.isInteractive=t,this.enableDebugTooling=k.ENV._DEBUG_RENDER_TREE}onTransactionCommit(){}}var Pt=ke((({positional:e,named:t})=>{const r=e[0] +return Array.isArray(e)||(0,M.isEmberArray)(e)?wt.fromIndexable(e):Rt(e)?kt.from(e):Tt(e)?wt.fromForEachable(e):wt.fromIndexable(e)}(e.inner):function(e){if(!(0,c.isObject)(e))return null +return Array.isArray(e)?_t.from(e):(0,M.isEmberArray)(e)?Ot.from(e):Rt(e)?Ct.from(e):Tt(e)?_t.fromForEachable(e):null}(e)},getProp:l._getProp,setProp:l._setProp,getPath:l.get,setPath:l.set,scheduleDestroy(e,t){(0,E.schedule)("actions",null,t,e)},scheduleDestroyed(e){(0,E.schedule)("destroy",null,e)},warnIfStyleNotTrusted(e){},assert(e,t,r){0},deprecate(e,t,r){0}}) +class St{constructor(e,t){this.owner=e,this.isInteractive=t,this.enableDebugTooling=T.ENV._DEBUG_RENDER_TREE}onTransactionCommit(){}}var Pt=Te((({positional:e,named:t})=>{const r=e[0] let n=t.type,i=t.loc,s=t.original;(0,o.valueForRef)(n),(0,o.valueForRef)(i),(0,o.valueForRef)(s) return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(r) return e}))})) let xt xt=e=>{let t=e.positional[0] return t} -var At=ke(xt),Mt=ke((({positional:e})=>(0,o.createComputeRef)((()=>{let t=e[0],r=e[1],n=(0,o.valueForRef)(t).split("."),i=n[n.length-1],s=(0,o.valueForRef)(r) -return!0===s?(0,_.dasherize)(i):s||0===s?String(s):""})))),Nt=ke((({positional:e},t)=>{let r=e[0],n=(0,o.valueForRef)(r) -return(0,o.createConstRef)(t.factoryFor(n)?.class,`(-resolve "${n}")`)})),jt=ke((({positional:e})=>{const t=e[0] +var At=Te(xt),Mt=Te((({positional:e})=>(0,o.createComputeRef)((()=>{let t=e[0],r=e[1],n=(0,o.valueForRef)(t).split("."),i=n[n.length-1],s=(0,o.valueForRef)(r) +return!0===s?(0,_.dasherize)(i):s||0===s?String(s):""})))),Nt=Te((({positional:e},t)=>{let r=e[0],n=(0,o.valueForRef)(r) +return(0,o.createConstRef)(t.factoryFor(n)?.class,`(-resolve "${n}")`)})),Dt=Te((({positional:e})=>{const t=e[0] return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(t) -return(0,c.isObject)(e)&&(0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),e}))})),Dt=ke((({positional:e})=>{let t=e[0] -return(0,o.createInvokableRef)(t)})),It=ke((({positional:e})=>{let t=e[0] -return(0,o.createReadOnlyRef)(t)})),Ft=ke((({positional:e,named:t})=>(0,o.createUnboundRef)((0,o.valueForRef)(e[0]),"(result of an `unbound` helper)"))),Lt=ke((()=>(0,o.createConstRef)(Bt(),"unique-id"))) +return(0,c.isObject)(e)&&(0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),e}))})),jt=Te((({positional:e})=>{let t=e[0] +return(0,o.createInvokableRef)(t)})),It=Te((({positional:e})=>{let t=e[0] +return(0,o.createReadOnlyRef)(t)})),Ft=Te((({positional:e,named:t})=>(0,o.createUnboundRef)((0,o.valueForRef)(e[0]),"(result of an `unbound` helper)"))),Lt=Te((()=>(0,o.createConstRef)(Bt(),"unique-id"))) function Bt(){return([3e7]+-1e3+-4e3+-2e3+-1e11).replace(/[0-3]/g,(e=>(4*e^16*Math.random()>>(2&e)).toString(16)))}const Ut=["alt","shift","meta","ctrl"],Ht=/^click|mouse|touch/ let $t={registeredActions:d.ActionManager.registeredActions,registerAction(e){let{actionId:t}=e return d.ActionManager.registeredActions[t]=e,t},unregisterAction(e){let{actionId:t}=e @@ -364,10 +370,11 @@ return void 0!==r?(0,o.valueForRef)(r):(0,o.valueForRef)(e)}handler(e){let{actio return!function(e,t){if(null==t){if(Ht.test(e.type))return(0,d.isSimpleClick)(e) t=""}if(t.indexOf("any")>=0)return!0 for(let r=0;r{let e=this.getActionArgs(),r={args:e,target:c,name:null};(0,o.isInvokableRef)(t)?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{(0,o.updateRef)(t,e[0])})):"function"!=typeof t?(r.name=t,c.send?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c.send.apply(c,[t,...e])})):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c[t].apply(c,e)}))):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{t.apply(c,e)}))})),p)}}const zt=new class{create(e,t,r,{named:n,positional:i}){let o=[] +return!0}(e,u)||(!1!==l&&e.preventDefault(),p||e.stopPropagation(),(0,E.join)((()=>{let e=this.getActionArgs(),r={args:e,target:c,name:null};(0,o.isInvokableRef)(t)?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{(0,o.updateRef)(t,e[0])})):"function"!=typeof t?(r.name=t,c.send?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c.send.apply(c,[t,...e])})):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c[t].apply(c,e)}))):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{t.apply(c,e)}))})),p)}}const zt=new class{create(e,t,r,{named:n,positional:i}){let o=[] for(let a=2;a1&&(n=a[0],r=a[1],t=(0,o.isInvokableRef)(r)?r:(0,o.valueForRef)(r)),e.actionName=t,e.implicitTarget=n,this.ensureEventSetup(e),$t.registerAction(e),i.setAttribute("data-ember-action",""),i.setAttribute(`data-ember-action-${s}`,String(s))}update(e){let{positional:t}=e,r=t[1];(0,o.isInvokableRef)(r)||(e.actionName=(0,o.valueForRef)(r)),e.getEventName()!==e.eventName&&(this.ensureEventSetup(e),e.eventName=e.getEventName())}ensureEventSetup(e){let t=e.owner.lookup("event_dispatcher:main") t?.setupHandlerForEmberEvent(e.eventName)}getTag(e){return e.tag}getDestroyable(e){return e}} var qt=(0,p.setInternalModifierManager)(zt,{}) @@ -380,25 +387,25 @@ if(r.named.has("model")&&(u=r.named.get("model")),void 0===u)s=c.create(),a=(0,o else{let e=(0,o.valueForRef)(u) s=c.create({model:e}),a=(0,o.createConstRef)(s,"this"),l={engine:i,controller:s,self:a,modelRef:u}}return n.debugRenderTree&&(0,O.associateDestroyableChild)(i,s),l}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r,n){return[{bucket:t.engine,instance:t.engine,type:"engine",name:e.name,args:r},{bucket:t.controller,instance:t.controller,type:"route-template",name:"application",args:r,template:n}]}getSelf({self:e}){return e}getDestroyable(e){return e.engine}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}update(e){let{controller:t,modelRef:r}=e void 0!==r&&t.set("model",(0,o.valueForRef)(r))}} -class Yt{constructor(e){this.resolvedName=e,this.handle=-1,this.manager=Wt,this.compilable=null,this.capabilities=(0,p.capabilityFlagsFrom)(Gt),this.state={name:e}}}const Qt=ke(((e,t)=>{let r,n,i,s=e.positional[0] +class Yt{constructor(e){this.resolvedName=e,this.handle=-1,this.manager=Wt,this.compilable=null,this.capabilities=(0,p.capabilityFlagsFrom)(Gt),this.state={name:e}}}const Qt=Te(((e,t)=>{let r,n,i,s=e.positional[0] return r=(0,y.createCapturedArgs)(e.named,y.EMPTY_POSITIONAL),(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(s) -return"string"==typeof e?(n===e||(n=e,i=(0,y.curry)(T.CurriedType.Component,new Yt(e),t,r,!0)),i):(i=null,n=null,null)}))})),Kt=ke(((e,t,r)=>{let n=(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(r.get("outletState")) +return"string"==typeof e?(n===e||(n=e,i=(0,y.curry)(R.CurriedType.Component,new Yt(e),t,r,!0)),i):(i=null,n=null,null)}))})),Kt=Te(((e,t,r)=>{let n=(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(r.get("outletState")) return e?.outlets?.main})),i=null,s=null return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(n),r=function(e,t){if(void 0===t)return null let r=t.render if(void 0===r)return null let n=r.template if(void 0===n)return null -be(n)&&(n=n(r.owner)) +ye(n)&&(n=n(r.owner)) return{ref:e,name:r.name,template:n,controller:r.controller,model:r.model}}(n,e) if(!function(e,t){if(null===e)return null===t if(null===t)return!1 return e.template===t.template&&e.controller===t.controller}(r,i))if(i=r,null!==r){let a=(0,v.dict)(),l=(0,o.childRefFromParts)(n,["render","model"]),u=(0,o.valueForRef)(l) a.model=(0,o.createComputeRef)((()=>(i===r&&(u=(0,o.valueForRef)(l)),u))) let c=(0,y.createCapturedArgs)(a,y.EMPTY_POSITIONAL) -s=(0,y.curry)(T.CurriedType.Component,new ht(r),e?.render?.owner??t,c,!0)}else s=null +s=(0,y.curry)(R.CurriedType.Component,new ht(r),e?.render?.owner??t,c,!0)}else s=null return s}))})) -function Jt(e){return{object:`component:${e}`}}const Xt={action:Se,mut:Dt,readonly:It,unbound:Ft,"-hash":y.hash,"-each-in":yt,"-normalize-class":Mt,"-resolve":Nt,"-track-array":jt,"-mount":Qt,"-outlet":Kt,"-in-el-null":At},Zt={...Xt,array:y.array,concat:y.concat,fn:y.fn,get:y.get,hash:y.hash,"unique-id":Lt} +function Jt(e){return{object:`component:${e}`}}const Xt={action:Se,mut:jt,readonly:It,unbound:Ft,"-hash":y.hash,"-each-in":yt,"-normalize-class":Mt,"-resolve":Nt,"-track-array":Dt,"-mount":Qt,"-outlet":Kt,"-in-el-null":At},Zt={...Xt,array:y.array,concat:y.concat,fn:y.fn,get:y.get,hash:y.hash,"unique-id":Lt} Zt["-disallow-dynamic-resolution"]=Pt const er={action:qt},tr={...er,on:y.on} new WeakSet @@ -407,7 +414,7 @@ if(void 0!==r)return r let n=t.factoryFor(`helper:${e}`) if(void 0===n)return null let i=n.class -return void 0===i?null:"function"==typeof i&&!0===i[Ke]?((0,p.setInternalHelperManager)(Ze,n),n):i}lookupBuiltInHelper(e){return Xt[e]??null}lookupModifier(e,t){let r=tr[e] +return void 0===i?null:"function"==typeof i&&!0===i[Je]?((0,p.setInternalHelperManager)(et,n),n):i}lookupBuiltInHelper(e){return Xt[e]??null}lookupModifier(e,t){let r=tr[e] if(void 0!==r)return r let n=t.factoryFor(`modifier:${e}`) return void 0===n?null:n.class||null}lookupBuiltInModifier(e){return er[e]??null}lookupComponent(e,t){let r=function(e,t,r){let n=function(e,t){let r=`component:${e}` @@ -423,16 +430,16 @@ let o=this.componentDefinitionCache.get(n) if(void 0!==o)return o null===i&&null!==r.layout&&(i=r.layout(t)) let s=(0,m._instrumentStart)("render.getComponentDefinition",Jt,e),a=null -if(null===r.component)if(k.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS)a={state:(0,y.templateOnlyComponent)(void 0,e),manager:y.TEMPLATE_ONLY_COMPONENT_MANAGER,template:i} -else{let e=t.factoryFor(E.privatize`component:-default`) +if(null===r.component)if(T.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS)a={state:(0,y.templateOnlyComponent)(void 0,e),manager:y.TEMPLATE_ONLY_COMPONENT_MANAGER,template:i} +else{let e=t.factoryFor(k.privatize`component:-default`) a={state:e,manager:(0,p.getInternalComponentManager)(e.class),template:i}}else{let e=r.component,t=e.class,n=(0,p.getInternalComponentManager)(t) -a={state:qe(n)?e:t,manager:n,template:i}}return s(),this.componentDefinitionCache.set(n,a),a}}const nr="-top-level" +a={state:Ge(n)?e:t,manager:n,template:i}}return s(),this.componentDefinitionCache.set(n,a),a}}const nr="-top-level" class ir{static extend(e){return class extends ir{static create(t){return t?super.create(Object.assign({},e,t)):super.create(e)}}}static reopenClass(e){Object.assign(this,e)}static create(e){let{environment:t,application:r,template:n}=e,i=(0,u.getOwner)(e),o=n(i) return new ir(t,i,o,r)}constructor(e,t,r,n){this._environment=e,this.owner=t,this.template=r,this.namespace=n let i=(0,s.createTag)(),a={outlets:{main:void 0},render:{owner:t,into:void 0,outlet:"main",name:nr,controller:void 0,model:void 0,template:r}},l=this.ref=(0,o.createComputeRef)((()=>((0,s.consumeTag)(i),a)),(e=>{(0,s.dirtyTag)(i),a.outlets.main=e})) this.state={ref:l,name:nr,template:r,controller:void 0,model:void 0}}appendTo(e){let t t=this._environment.hasDOM&&"string"==typeof e?document.querySelector(e):e -let r=this.owner.lookup("renderer:-dom");(0,w.schedule)("render",r,"appendOutletView",this,t)}rerender(){}setOutletState(e){(0,o.updateRef)(this.ref,e)}destroy(){}}e.OutletView=ir +let r=this.owner.lookup("renderer:-dom");(0,E.schedule)("render",r,"appendOutletView",this,t)}rerender(){}setOutletState(e){(0,o.updateRef)(this.ref,e)}destroy(){}}e.OutletView=ir class or{constructor(e,t){this.view=e,this.outletState=t}child(){return new or(this.view,this.outletState)}get(e){return this.outletState}set(e,t){return this.outletState=t,t}}const sr=()=>{} class ar{constructor(e,t,r,n,i,o,s,a,l){this.root=e,this.runtime=t,this.id=e instanceof ir?(0,c.guidFor)(e):(0,d.getViewId)(e),this.result=void 0,this.destroyed=!1,this.render=()=>{let e=(0,v.unwrapTemplate)(i).asLayout(),u=(0,y.renderMain)(t,r,n,o,l(t.env,{element:s,nextSibling:null}),e,a),c=this.result=u.sync() this.render=()=>c.rerender({alwaysRevalidate:!1})}}isFor(e){return this.root===e}destroy(){let{result:e,runtime:{env:t}}=this @@ -440,25 +447,24 @@ this.destroyed=!0,this.runtime=void 0,this.root=null,this.result=void 0,this.ren function ur(e){let t=lr.indexOf(e) lr.splice(t,1)}let cr=null let pr=0 -w._backburner.on("begin",(function(){for(let e of lr)e._scheduleRevalidate()})),w._backburner.on("end",(function(){for(let e of lr)if(!e._isValid()){if(pr>k.ENV._RERENDER_LOOP_LIMIT)throw pr=0,e.destroy(),new Error("infinite rendering invalidation detected") -return pr++,w._backburner.join(null,sr)}pr=0,function(){if(null!==cr){let e=cr.resolve -cr=null,w._backburner.join(null,e)}}()})) -class dr{static create(e){let{_viewRegistry:t}=e,r=(0,u.getOwner)(e),n=r.lookup("service:-document"),i=r.lookup("-environment:main"),o=r.lookup(E.privatize`template:-root`),s=r.lookup("service:-dom-builder") +E._backburner.on("begin",(function(){for(let e of lr)e._scheduleRevalidate()})),E._backburner.on("end",(function(){for(let e of lr)if(!e._isValid()){if(pr>T.ENV._RERENDER_LOOP_LIMIT)throw pr=0,e.destroy(),new Error("infinite rendering invalidation detected") +return pr++,E._backburner.join(null,sr)}pr=0,function(){if(null!==cr){let e=cr.resolve +cr=null,E._backburner.join(null,e)}}()})) +class dr{static create(e){let{_viewRegistry:t}=e,r=(0,u.getOwner)(e),n=r.lookup("service:-document"),i=r.lookup("-environment:main"),o=r.lookup(k.privatize`template:-root`),s=r.lookup("service:-dom-builder") return new this(r,n,i,o,t,s)}constructor(e,r,n,i,o,s=y.clientBuilder){this._inRenderTransaction=!1,this._lastRevision=-1,this._destroyed=!1,this._owner=e,this._rootTemplate=i(e),this._viewRegistry=o||e.lookup("-view-registry:main"),this._roots=[],this._removedRoots=[],this._builder=s,this._isInteractive=n.isInteractive let a=this._runtimeResolver=new rr,l=(0,S.artifacts)() this._context=(0,t.programCompilationContext)(l,a,(e=>new S.RuntimeOpImpl(e))) -let u=new Rt(e,n.isInteractive) -this._runtime=(0,y.runtimeContext)({appendOperations:n.hasDOM?new y.DOMTreeConstruction(r):new P.NodeDOMTreeConstruction(r),updateOperations:new y.DOMChanges(r)},u,l,a)}get debugRenderTree(){let{debugRenderTree:e}=this._runtime.env -return e}appendOutletView(e,t){let r=function(e){if(k.ENV._APPLICATION_TEMPLATE_WRAPPER){const t=Object.assign({},ct,{dynamicTag:!0,elementHook:!0,wrapped:!0}),r=new class extends pt{getTagName(){return"div"}getCapabilities(){return t}didCreateElement(e,t){t.setAttribute("class","ember-view"),t.setAttribute("id",(0,c.guidFor)(e))}} -return new ht(e.state,r)}return new ht(e.state)}(e) -this._appendDefinition(e,(0,y.curry)(T.CurriedType.Component,r,e.owner,null,!0),t)}appendTo(e,t){let r=new gt(e) -this._appendDefinition(e,(0,y.curry)(T.CurriedType.Component,r,this._owner,null,!0),t)}_appendDefinition(e,t,r){let n=(0,o.createConstRef)(t,"this"),i=new or(null,o.UNDEFINED_REFERENCE),s=new ar(e,this._runtime,this._context,this._owner,this._rootTemplate,n,r,i,this._builder) +let u=new St(e,n.isInteractive) +this._runtime=(0,y.runtimeContext)({appendOperations:n.hasDOM?new y.DOMTreeConstruction(r):new x.NodeDOMTreeConstruction(r),updateOperations:new y.DOMChanges(r)},u,l,a)}get debugRenderTree(){let{debugRenderTree:e}=this._runtime.env +return e}appendOutletView(e,t){let r=new ht(e.state) +this._appendDefinition(e,(0,y.curry)(R.CurriedType.Component,r,e.owner,null,!0),t)}appendTo(e,t){let r=new gt(e) +this._appendDefinition(e,(0,y.curry)(R.CurriedType.Component,r,this._owner,null,!0),t)}_appendDefinition(e,t,r){let n=(0,o.createConstRef)(t,"this"),i=new or(null,o.UNDEFINED_REFERENCE),s=new ar(e,this._runtime,this._context,this._owner,this._rootTemplate,n,r,i,this._builder) this._renderRoot(s)}rerender(){this._scheduleRevalidate()}register(e){let t=(0,d.getViewId)(e) this._viewRegistry[t]=e}unregister(e){delete this._viewRegistry[(0,d.getViewId)(e)]}remove(e){e._transitionTo("destroying"),this.cleanupRootFor(e),this._isInteractive&&e.trigger("didDestroyElement")}cleanupRootFor(e){if(this._destroyed)return let t=this._roots,r=this._roots.length for(;r--;){let n=t[r] n.isFor(e)&&(n.destroy(),t.splice(r,1))}}destroy(){this._destroyed||(this._destroyed=!0,this._clearAllRoots())}getElement(e){if(this._isInteractive)return(0,d.getViewElement)(e) -throw new Error("Accessing `this.element` is not allowed in non-interactive environments (such as FastBoot).")}getBounds(e){let t=e[Le] +throw new Error("Accessing `this.element` is not allowed in non-interactive environments (such as FastBoot).")}getBounds(e){let t=e[Be] return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}createElement(e){return this._runtime.env.getAppendOperations().createElement(e)}_renderRoot(e){let{_roots:t}=this var r t.push(e),1===t.length&&(r=this,lr.push(r)),this._renderRootsTransaction()}_renderRoots(){let e,{_roots:t,_runtime:r,_removedRoots:n}=this @@ -470,9 +476,9 @@ this._inRenderTransaction=!0 let e=!1 try{this._renderRoots(),e=!0}finally{e||(this._lastRevision=(0,s.valueForTag)(s.CURRENT_TAG)),this._inRenderTransaction=!1}}_clearAllRoots(){let e=this._roots for(let t of e)t.destroy() -this._removedRoots.length=0,this._roots=[],e.length&&ur(this)}_scheduleRevalidate(){w._backburner.scheduleOnce("render",this,this._revalidate)}_isValid(){return this._destroyed||0===this._roots.length||(0,s.validateTag)(s.CURRENT_TAG,this._lastRevision)}_revalidate(){this._isValid()||this._renderRootsTransaction()}}e.Renderer=dr +this._removedRoots.length=0,this._roots=[],e.length&&ur(this)}_scheduleRevalidate(){E._backburner.scheduleOnce("render",this,this._revalidate)}_isValid(){return this._destroyed||0===this._roots.length||(0,s.validateTag)(s.CURRENT_TAG,this._lastRevision)}_revalidate(){this._isValid()||this._renderRootsTransaction()}}e.Renderer=dr let hr={} -var fr=(0,D.createTemplateFactory)({id:"2c6+lAmT",block:'[[[46,[28,[32,0],null,null],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/outlet.hbs",scope:()=>[Kt],isStrictMode:!0}) +var fr=(0,I.createTemplateFactory)({id:"2c6+lAmT",block:'[[[46,[28,[32,0],null,null],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/outlet.hbs",scope:()=>[Kt],isStrictMode:!0}) e.componentCapabilities=p.componentCapabilities,e.modifierCapabilities=p.modifierCapabilities})),e("@ember/-internals/meta/index",["exports","@ember/-internals/meta/lib/meta"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Meta",{enumerable:!0,get:function(){return t.Meta}}),Object.defineProperty(e,"UNDEFINED",{enumerable:!0,get:function(){return t.UNDEFINED}}),Object.defineProperty(e,"counters",{enumerable:!0,get:function(){return t.counters}}),Object.defineProperty(e,"meta",{enumerable:!0,get:function(){return t.meta}}),Object.defineProperty(e,"peekMeta",{enumerable:!0,get:function(){return t.peekMeta}}),Object.defineProperty(e,"setMeta",{enumerable:!0,get:function(){return t.setMeta}})})),e("@ember/-internals/meta/lib/meta",["exports","@ember/-internals/utils","@ember/debug","@glimmer/destroyable"],(function(e,t,r,n){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.meta=e.counters=e.UNDEFINED=e.Meta=void 0,e.peekMeta=d,e.setMeta=p @@ -523,7 +529,7 @@ let r=new l(e) return p(e,r),r} function f(e,t,r,n){for(let i=e.length-1;i>=0;i--){let o=e[i] if(o.event===t&&o.target===r&&o.method===n)return i}return-1}})),e("@ember/-internals/metal/index",["exports","@ember/-internals/meta","@ember/-internals/utils","@ember/debug","@glimmer/destroyable","@glimmer/validator","@ember/-internals/environment","@ember/runloop","@glimmer/manager","@ember/array/-internals","ember/version","@ember/-internals/owner"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.TrackedDescriptor=e.SYNC_OBSERVERS=e.PROXY_CONTENT=e.PROPERTY_DID_CHANGE=e.NAMESPACES_BY_ID=e.NAMESPACES=e.Libraries=e.DEBUG_INJECTION_FUNCTIONS=e.ComputedProperty=e.ComputedDescriptor=e.ASYNC_OBSERVERS=void 0,e._getPath=Ee,e._getProp=Ce,e._setProp=Se,e.activateObserver=w,e.addArrayObserver=function(e,t,r){return q(e,t,r,d)},e.addListener=d,e.addNamespace=function(e){Be.unprocessedNamespaces=!0,He.push(e)},e.addObserver=_,e.alias=function(e){return re(new Pe(e),Re)},e.arrayContentDidChange=U,e.arrayContentWillChange=B,e.autoComputed=function(...e){return re(new he(e),fe)},e.beginPropertyChanges=I,e.cached=void 0,e.changeProperties=L,e.computed=me,Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return o.createCache}}),e.defineDecorator=be,e.defineProperty=ge,e.defineValue=ye,e.deprecateProperty=function(e,t,r,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,set(e){Te(this,r,e)},get(){return we(this,r)}})},e.descriptorForDecorator=oe,e.descriptorForProperty=ie,e.eachProxyArrayDidChange=function(e,t,r,n){let i=Me.get(e) +Object.defineProperty(e,"__esModule",{value:!0}),e.TrackedDescriptor=e.SYNC_OBSERVERS=e.PROXY_CONTENT=e.PROPERTY_DID_CHANGE=e.NAMESPACES_BY_ID=e.NAMESPACES=e.Libraries=e.DEBUG_INJECTION_FUNCTIONS=e.ComputedProperty=e.ComputedDescriptor=e.ASYNC_OBSERVERS=void 0,e._getPath=Ce,e._getProp=Ee,e._setProp=Re,e.activateObserver=w,e.addArrayObserver=function(e,t,r){return q(e,t,r,d)},e.addListener=d,e.addNamespace=function(e){Be.unprocessedNamespaces=!0,He.push(e)},e.addObserver=_,e.alias=function(e){return re(new Pe(e),Se)},e.arrayContentDidChange=U,e.arrayContentWillChange=B,e.autoComputed=function(...e){return re(new he(e),fe)},e.beginPropertyChanges=I,e.cached=void 0,e.changeProperties=L,e.computed=me,Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return o.createCache}}),e.defineDecorator=be,e.defineProperty=ge,e.defineValue=ye,e.deprecateProperty=function(e,t,r,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,set(e){Te(this,r,e)},get(){return we(this,r)}})},e.descriptorForDecorator=oe,e.descriptorForProperty=ie,e.eachProxyArrayDidChange=function(e,t,r,n){let i=Me.get(e) void 0!==i&&i.arrayDidChange(e,t,r,n)},e.eachProxyArrayWillChange=function(e,t,r,n){let i=Me.get(e) void 0!==i&&i.arrayWillChange(e,t,r,n)},e.endPropertyChanges=F,e.expandProperties=ue,e.findNamespace=function(e){Le||qe() return $e[e]} @@ -535,8 +541,8 @@ if(!s)continue a&&h(e,r,o,s),o||(o=e) let l=typeof s "string"!==l&&"symbol"!==l||(s=o[s]),s.apply(o,n)}return!0}e.findNamespaces=Ve,e.flushAsyncObservers=function(e=!0){let r=(0,o.valueForTag)(o.CURRENT_TAG) -if(S===r)return -S=r,v.forEach(((r,n)=>{let i=(0,t.peekMeta)(n) +if(R===r)return +R=r,v.forEach(((r,n)=>{let i=(0,t.peekMeta)(n) r.forEach(((r,s)=>{if(!(0,o.validateTag)(r.tag,r.lastRevision)){let l=()=>{try{f(n,s,[n,r.path],void 0,i)}finally{r.tag=Q(n,r.path,(0,o.tagMetaFor)(n),(0,t.peekMeta)(n)),r.lastRevision=(0,o.valueForTag)(r.tag)}} e?(0,a.schedule)("actions",l):l()}}))}))},e.get=we,e.getCachedValueFor=function(e,r){let n=(0,t.peekMeta)(e) return n?n.valueFor(r):void 0},e.getProperties=function(e,t){let r,n={},i=1 @@ -552,7 +558,7 @@ return r.lookup(`${e}:${n||t}`)} 0 let o=me({get:i,set(e,t){ge(this,e,null,t)}}) return r?o(r[0],r[1],r[2]):o},e.isClassicDecorator=se,e.isComputed=function(e,t){return Boolean(ie(e,t))},Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return o.isConst}}),e.isElementDescriptor=J,e.isNamespaceSearchDisabled=function(){return Le},e.libraries=void 0,e.makeComputedDecorator=re,e.markObjectAsDirty=M,e.nativeDescDecorator=function(e){let t=function(){return e} -return ae(t),t},e.notifyPropertyChange=D,e.objectAt=$,e.on=function(...e){let t=e.pop(),n=e +return ae(t),t},e.notifyPropertyChange=j,e.objectAt=$,e.on=function(...e){let t=e.pop(),n=e return(0,r.setListeners)(t,n),t},e.processAllNamespaces=qe,e.processNamespace=ze,e.removeArrayObserver=function(e,t,r){return q(e,t,r,h)},e.removeListener=h,e.removeNamespace=function(e){let t=(0,r.getName)(e) delete $e[t],He.splice(He.indexOf(e),1),t in s.context.lookup&&e===s.context.lookup[t]&&(s.context.lookup[t]=void 0)},e.removeObserver=function(e,r,n,i,o=b){let s=g(r),a=(0,t.peekMeta)(e) null!==a&&(a.isPrototypeMeta(e)||a.isInitializing())||k(e,s,o) @@ -561,7 +567,7 @@ var i},e.replaceInNativeArray=z,e.revalidateObservers=T e.sendEvent=f,e.set=Te,e.setClassicDecorator=ae,e.setNamespaceSearchDisabled=function(e){Le=Boolean(e)},e.setProperties=function(e,t){if(null===t||"object"!=typeof t)return t return L((()=>{let r=Object.keys(t) for(let n of r)Te(e,n,t[n])})),t},e.setUnprocessedMixins=function(){Ue=!0},e.tagForObject=function(e){if((0,r.isObject)(e))return(0,o.tagFor)(e,x) -return o.CONSTANT_TAG},e.tagForProperty=A,e.tracked=je,e.trySet=function(e,t,r){return Te(e,t,r,!0)} +return o.CONSTANT_TAG},e.tagForProperty=A,e.tracked=De,e.trySet=function(e,t,r){return Te(e,t,r,!0)} const m=":change" function g(e){return e+m}const b=!s.ENV._DEFAULT_ASYNC_OBSERVERS,y=e.SYNC_OBSERVERS=new Map,v=e.ASYNC_OBSERVERS=new Map function _(e,r,n,i,o=b){let s=g(r) @@ -572,12 +578,12 @@ return r.has(e)||(r.set(e,new Map),(0,i.registerDestructor)(e,(()=>function(e){y v.size>0&&v.delete(e)}(e)),!0)),r.get(e)}function w(e,r,n=!1){let i=O(e,n) if(i.has(r))i.get(r).count++ else{let n=r.substring(0,r.lastIndexOf(":")),s=Q(e,n,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)) -i.set(r,{count:1,path:n,tag:s,lastRevision:(0,o.valueForTag)(s),suspended:!1})}}let C=!1,E=[] -function k(e,t,r=!1){if(!0===C)return void E.push([e,t,r]) +i.set(r,{count:1,path:n,tag:s,lastRevision:(0,o.valueForTag)(s),suspended:!1})}}let E=!1,C=[] +function k(e,t,r=!1){if(!0===E)return void C.push([e,t,r]) let n=!0===r?y:v,i=n.get(e) if(void 0!==i){let r=i.get(t) -r.count--,0===r.count&&(i.delete(t),0===i.size&&n.delete(e))}}function T(e){v.has(e)&&v.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)})),y.has(e)&&y.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)}))}let S=0 -function R(){y.forEach(((e,r)=>{let n=(0,t.peekMeta)(r) +r.count--,0===r.count&&(i.delete(t),0===i.size&&n.delete(e))}}function T(e){v.has(e)&&v.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)})),y.has(e)&&y.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)}))}let R=0 +function S(){y.forEach(((e,r)=>{let n=(0,t.peekMeta)(r) e.forEach(((e,i)=>{if(!e.suspended&&!(0,o.validateTag)(e.tag,e.lastRevision))try{e.suspended=!0,f(r,i,[r,e.path],void 0,n)}finally{e.tag=Q(r,e.path,(0,o.tagMetaFor)(r),(0,t.peekMeta)(r)),e.lastRevision=(0,o.valueForTag)(e.tag),e.suspended=!1}}))}))}function P(e,t,r){let n=y.get(e) if(!n)return let i=n.get(g(t)) @@ -586,15 +592,15 @@ function A(e,t,r=!1,n){let i=(0,l.getCustomTagFor)(e) if(void 0!==i)return i(e,t,r) let s=(0,o.tagFor)(e,t,n) return s}function M(e,t){(0,o.dirtyTagFor)(e,t),(0,o.dirtyTagFor)(e,x)}const N=e.PROPERTY_DID_CHANGE=Symbol("PROPERTY_DID_CHANGE") -let j=0 -function D(e,r,n,i){let o=void 0===n?(0,t.peekMeta)(e):n -null!==o&&(o.isInitializing()||o.isPrototypeMeta(e))||(M(e,r),j<=0&&R(),N in e&&(4===arguments.length?e[N](r,i):e[N](r)))}function I(){j++,C=!0}function F(){j--,j<=0&&(R(),function(){C=!1 -for(let[e,t,r]of E)k(e,t,r) -E=[]}())}function L(e){I() +let D=0 +function j(e,r,n,i){let o=void 0===n?(0,t.peekMeta)(e):n +null!==o&&(o.isInitializing()||o.isPrototypeMeta(e))||(M(e,r),D<=0&&S(),N in e&&(4===arguments.length?e[N](r,i):e[N](r)))}function I(){D++,E=!0}function F(){D--,D<=0&&(S(),function(){E=!1 +for(let[e,t,r]of C)k(e,t,r) +C=[]}())}function L(e){I() try{e()}finally{F()}}function B(e,t,r,n){return void 0===t?(t=0,r=n=-1):(void 0===r&&(r=-1),void 0===n&&(n=-1)),f(e,"@array:before",[e,t,r,n]),e}function U(e,r,n,i,o=!0){void 0===r?(r=0,n=i=-1):(void 0===n&&(n=-1),void 0===i&&(i=-1)) let s=(0,t.peekMeta)(e) -if(o&&((i<0||n<0||i-n!=0)&&D(e,"length",s),D(e,"[]",s)),f(e,"@array:change",[e,r,n,i]),null!==s){let t=-1===n?0:n,o=e.length-((-1===i?0:i)-t),a=r<0?o+r:r -if(void 0!==s.revisionFor("firstObject")&&0===a&&D(e,"firstObject",s),void 0!==s.revisionFor("lastObject")){o-1{n=t.call(e,r)}));(0,o.updateTag)(a,s),i.setValueFor(r,n),i.setRevisionFor(r,(0,o.valueForTag)(a)),W(i,r,n)}return(0,o.consumeTag)(a),Array.isArray(n)&&(0,o.consumeTag)((0,o.tagFor)(n,"[]",s)),n}}class fe extends Function{readOnly(){let e=oe(this) @@ -661,19 +667,19 @@ return 0===arguments.length?t._meta||{}:(t._meta=e,this)}get _getter(){return oe l&&a.teardown(e,r,s),se(n)?be(e,r,n,s):null==n?ye(e,r,i,l,!0):Object.defineProperty(e,r,n),s.isPrototypeMeta(e)||T(e)}function be(e,t,r,n){let i return i=r(e,t,void 0,n),Object.defineProperty(e,t,i),r}function ye(e,t,r,n,i=!0){return!0===n||!1===i?Object.defineProperty(e,t,{configurable:!0,enumerable:i,writable:!0,value:r}):e[t]=r,r}const ve=new r.Cache(1e3,(e=>e.indexOf("."))) function _e(e){return"string"==typeof e&&-1!==ve.get(e)}e.PROXY_CONTENT=(0,r.symbol)("PROXY_CONTENT") -function Oe(e){return"object"==typeof e&&null!==e&&"function"==typeof e.unknownProperty}function we(e,t){return _e(t)?Ee(e,t):Ce(e,t)}function Ce(e,t){if(null==e)return +function Oe(e){return"object"==typeof e&&null!==e&&"function"==typeof e.unknownProperty}function we(e,t){return _e(t)?Ce(e,t):Ee(e,t)}function Ee(e,t){if(null==e)return let r -return"object"==typeof e||"function"==typeof e?(r=e[t],void 0===r&&"object"==typeof e&&!(t in e)&&Oe(e)&&(r=e.unknownProperty(t)),(0,o.isTracking)()&&((0,o.consumeTag)((0,o.tagFor)(e,t)),(Array.isArray(r)||(0,u.isEmberArray)(r))&&(0,o.consumeTag)((0,o.tagFor)(r,"[]")))):r=e[t],r}function Ee(e,t,r){let n="string"==typeof t?t.split("."):t +return"object"==typeof e||"function"==typeof e?(r=e[t],void 0===r&&"object"==typeof e&&!(t in e)&&Oe(e)&&(r=e.unknownProperty(t)),(0,o.isTracking)()&&((0,o.consumeTag)((0,o.tagFor)(e,t)),(Array.isArray(r)||(0,u.isEmberArray)(r))&&(0,o.consumeTag)((0,o.tagFor)(r,"[]")))):r=e[t],r}function Ce(e,t,r){let n="string"==typeof t?t.split("."):t for(let i of n){if(null==e||e.isDestroyed)return if(r&&("__proto__"===i||"constructor"===i))return -e=Ce(e,i)}return e}Ce("foo","a"),Ce("foo",1),Ce({},"a"),Ce({},1),Ce({unknownProperty(){}},"a"),Ce({unknownProperty(){}},1),we({},"foo"),we({},"foo.bar") +e=Ee(e,i)}return e}Ee("foo","a"),Ee("foo",1),Ee({},"a"),Ee({},1),Ee({unknownProperty(){}},"a"),Ee({unknownProperty(){}},1),we({},"foo"),we({},"foo.bar") let ke={} function Te(e,t,r,n){return e.isDestroyed?r:_e(t)?function(e,t,r,n){let i=t.split("."),o=i.pop() -let s=Ee(e,i,!0) +let s=Ce(e,i,!0) if(null!=s)return Te(s,o,r) -if(!n)throw new Error(`Property set failed: object in path "${i.join(".")}" could not be found.`)}(e,t,r,n):Se(e,t,r)}function Se(e,t,n){let i,o=(0,r.lookupDescriptor)(e,t) -return null!==o&&te.has(o.set)?(e[t]=n,n):(i=e[t],void 0!==i||"object"!=typeof e||t in e||"function"!=typeof e.setUnknownProperty?(e[t]=n,i!==n&&D(e,t)):e.setUnknownProperty(t,n),n)}(0,r.setProxy)(ke),(0,o.track)((()=>Ce({},"a"))),(0,o.track)((()=>Ce({},1))),(0,o.track)((()=>Ce({a:[]},"a"))),(0,o.track)((()=>Ce({a:ke},"a"))) -class Re extends Function{readOnly(){return oe(this).readOnly(),this}oneWay(){return oe(this).oneWay(),this}meta(e){let t=oe(this) +if(!n)throw new Error(`Property set failed: object in path "${i.join(".")}" could not be found.`)}(e,t,r,n):Re(e,t,r)}function Re(e,t,n){let i,o=(0,r.lookupDescriptor)(e,t) +return null!==o&&te.has(o.set)?(e[t]=n,n):(i=e[t],void 0!==i||"object"!=typeof e||t in e||"function"!=typeof e.setUnknownProperty?(e[t]=n,i!==n&&j(e,t)):e.setUnknownProperty(t,n),n)}(0,r.setProxy)(ke),(0,o.track)((()=>Ee({},"a"))),(0,o.track)((()=>Ee({},1))),(0,o.track)((()=>Ee({a:[]},"a"))),(0,o.track)((()=>Ee({a:ke},"a"))) +class Se extends Function{readOnly(){return oe(this).readOnly(),this}oneWay(){return oe(this).oneWay(),this}meta(e){let t=oe(this) if(0===arguments.length)return t._meta||{} t._meta=e}}class Pe extends X{constructor(e){super(),this.altKey=e}setup(e,t,r,n){super.setup(e,t,r,n),G.add(this)}get(e,r){let n,i=(0,t.meta)(e),s=(0,o.tagMetaFor)(e),a=(0,o.tagFor)(e,r,s);(0,o.untrack)((()=>{n=we(e,this.altKey)})) let l=i.revisionFor(r) @@ -683,10 +689,10 @@ for(let r of t)if(r.name===e)return r}register(e,t,r){let n=this._registry.lengt this._getLibraryByName(e)||(r&&(n=this._coreLibIndex++),this._registry.splice(n,0,{name:e,version:t}))}registerCoreLibrary(e,t){this.register(e,t,!0)}deRegister(e){let t,r=this._getLibraryByName(e) r&&(t=this._registry.indexOf(r),this._registry.splice(t,1))}}e.Libraries=Ne;(e.libraries=new Ne).registerCoreLibrary("Ember",c.default) e.DEBUG_INJECTION_FUNCTIONS=void 0 -function je(...e){if(!J(e)){let t=e[0] +function De(...e){if(!J(e)){let t=e[0] 0 -let r=t?t.initializer:void 0,n=t?t.value:void 0,i=function(e,t,i,o,s){return De([e,t,{initializer:r||(()=>n)}])} -return ae(i),i}return De(e)}function De([e,r,n]){let{getter:i,setter:s}=(0,o.trackedData)(r,n?n.initializer:void 0) +let r=t?t.initializer:void 0,n=t?t.value:void 0,i=function(e,t,i,o,s){return je([e,t,{initializer:r||(()=>n)}])} +return ae(i),i}return je(e)}function je([e,r,n]){let{getter:i,setter:s}=(0,o.trackedData)(r,n?n.initializer:void 0) function a(){let e=i(this) return(Array.isArray(e)||(0,u.isEmberArray)(e))&&(0,o.consumeTag)((0,o.tagFor)(e,"[]")),e}function l(e){s(this,e),(0,o.dirtyTagFor)(this,x)}let c={enumerable:!0,configurable:!0,isTracked:!0,get:a,set:l} return te.add(l),(0,t.meta)(e).writeDescriptors(r,new Ie(a,l)),c}class Ie{constructor(e,t){this._get=e,this._set=t,G.add(this)}get(e){return this._get.call(e)}set(e,t,r){this._set.call(e,r)}}e.TrackedDescriptor=Ie @@ -782,11 +788,11 @@ return t._dict=null,delete t._dict,t},e.enumerableSymbol=function(e){let t=u+Mat 0 return n},e.generateGuid=function(e,t=s){let r=t+o().toString() n(e)&&a.set(e,r) -return r},e.getDebugName=void 0,e.getName=function(e){return E.get(e)},e.guidFor=function(e){let t +return r},e.getDebugName=void 0,e.getName=function(e){return C.get(e)},e.guidFor=function(e){let t if(n(e))t=a.get(e),void 0===t&&(t=`${s}${o()}`,a.set(e,t)) else if(t=l.get(e),void 0===t){let r=typeof e -t="string"===r?`st${o()}`:"number"===r?`nu${o()}`:"symbol"===r?`sy${o()}`:`(${e})`,l.set(e,t)}return t},e.intern=r,e.isInternalSymbol=function(e){return-1!==c.indexOf(e)},e.isObject=n,e.isProxy=function(e){if(n(e))return S.has(e) -return!1},e.lookupDescriptor=C,e.observerListenerMetaFor=function(e){return v.get(e)},e.setListeners=function(e,t){_(e).listeners=t},e.setName=function(e,t){n(e)&&E.set(e,t)},e.setObservers=function(e,t){_(e).observers=t},e.setProxy=function(e){n(e)&&S.add(e)},e.teardownMandatorySetter=e.symbol=e.setupMandatorySetter=e.setWithMandatorySetter=void 0,e.toString=function e(t){if("string"==typeof t)return t +t="string"===r?`st${o()}`:"number"===r?`nu${o()}`:"symbol"===r?`sy${o()}`:`(${e})`,l.set(e,t)}return t},e.intern=r,e.isInternalSymbol=function(e){return-1!==c.indexOf(e)},e.isObject=n,e.isProxy=function(e){if(n(e))return R.has(e) +return!1},e.lookupDescriptor=E,e.observerListenerMetaFor=function(e){return v.get(e)},e.setListeners=function(e,t){_(e).listeners=t},e.setName=function(e,t){n(e)&&C.set(e,t)},e.setObservers=function(e,t){_(e).observers=t},e.setProxy=function(e){n(e)&&R.add(e)},e.teardownMandatorySetter=e.symbol=e.setupMandatorySetter=e.setWithMandatorySetter=void 0,e.toString=function e(t){if("string"==typeof t)return t if(null===t)return"null" if(void 0===t)return"undefined" if(Array.isArray(t)){let r="" @@ -812,13 +818,13 @@ this._super=t let n=e.apply(this,arguments) return this._super=r,n}O.add(r) let n=v.get(e) -return void 0!==n&&v.set(r,n),r}function C(e,t){let r=e +return void 0!==n&&v.set(r,n),r}function E(e,t){let r=e do{let e=Object.getOwnPropertyDescriptor(r,t) if(void 0!==e)return e r=Object.getPrototypeOf(r)}while(null!==r) -return null}const E=new WeakMap +return null}const C=new WeakMap const k=Object.prototype.toString -function T(e){return null==e}const S=new WeakSet +function T(e){return null==e}const R=new WeakSet e.Cache=class{constructor(e,t,r=new Map){this.limit=e,this.func=t,this.store=r,this.size=0,this.misses=0,this.hits=0}get(e){return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,this.set(e,this.func(e)))}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}} e.setupMandatorySetter=void 0,e.teardownMandatorySetter=void 0,e.setWithMandatorySetter=void 0})),e("@ember/-internals/views/index",["exports","@ember/-internals/views/lib/system/utils","@ember/-internals/views/lib/system/event_dispatcher","@ember/-internals/views/lib/component_lookup","@ember/-internals/views/lib/views/core_view","@ember/-internals/views/lib/mixins/class_names_support","@ember/-internals/views/lib/mixins/child_views_support","@ember/-internals/views/lib/mixins/view_state_support","@ember/-internals/views/lib/mixins/view_support","@ember/-internals/views/lib/mixins/action_support","@ember/-internals/views/lib/compat/attrs","@ember/-internals/views/lib/system/action_manager"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ActionManager",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(e,"ActionSupport",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(e,"ChildViewsSupport",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"ClassNamesSupport",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"ComponentLookup",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"CoreView",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"EventDispatcher",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"MUTABLE_CELL",{enumerable:!0,get:function(){return c.MUTABLE_CELL}}),Object.defineProperty(e,"ViewMixin",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"ViewStateSupport",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"addChildView",{enumerable:!0,get:function(){return t.addChildView}}),Object.defineProperty(e,"clearElementView",{enumerable:!0,get:function(){return t.clearElementView}}),Object.defineProperty(e,"clearViewElement",{enumerable:!0,get:function(){return t.clearViewElement}}),Object.defineProperty(e,"constructStyleDeprecationMessage",{enumerable:!0,get:function(){return t.constructStyleDeprecationMessage}}),Object.defineProperty(e,"getChildViews",{enumerable:!0,get:function(){return t.getChildViews}}),Object.defineProperty(e,"getElementView",{enumerable:!0,get:function(){return t.getElementView}}),Object.defineProperty(e,"getRootViews",{enumerable:!0,get:function(){return t.getRootViews}}),Object.defineProperty(e,"getViewBoundingClientRect",{enumerable:!0,get:function(){return t.getViewBoundingClientRect}}),Object.defineProperty(e,"getViewBounds",{enumerable:!0,get:function(){return t.getViewBounds}}),Object.defineProperty(e,"getViewClientRects",{enumerable:!0,get:function(){return t.getViewClientRects}}),Object.defineProperty(e,"getViewElement",{enumerable:!0,get:function(){return t.getViewElement}}),Object.defineProperty(e,"getViewId",{enumerable:!0,get:function(){return t.getViewId}}),Object.defineProperty(e,"isSimpleClick",{enumerable:!0,get:function(){return t.isSimpleClick}}),Object.defineProperty(e,"setElementView",{enumerable:!0,get:function(){return t.setElementView}}),Object.defineProperty(e,"setViewElement",{enumerable:!0,get:function(){return t.setViewElement}})})),e("@ember/-internals/views/lib/compat/attrs",["exports"],(function(e){"use strict" @@ -840,12 +846,12 @@ const i=r.default.create({childViews:(0,t.nativeDescDecorator)({configurable:!1, e.default=i})),e("@ember/-internals/views/lib/mixins/class_names_support",["exports","@ember/-internals/metal","@ember/object/mixin","@ember/debug"],(function(e,t,r,n){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const i=Object.freeze([]),o=r.default.create({concatenatedProperties:["classNames","classNameBindings"],init(){this._super(...arguments)},classNames:i,classNameBindings:i}) -e.default=o})),e("@ember/-internals/views/lib/mixins/view_state_support",["exports","@ember/object/mixin"],(function(e,t){"use strict" +e.default=o})) +e("@ember/-internals/views/lib/mixins/view_state_support",["exports","@ember/object/mixin"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const r=t.default.create({_transitionTo(e){let t=this._currentState,r=this._currentState=this._states[e] this._state=e,t&&t.exit&&t.exit(this),r.enter&&r.enter(this)}}) -e.default=r})) -e("@ember/-internals/views/lib/mixins/view_support",["exports","@ember/-internals/utils","@ember/-internals/metal","@ember/object/mixin","@ember/debug","@ember/-internals/browser-environment","@ember/-internals/views/lib/system/utils"],(function(e,t,r,n,i,o,s){"use strict" +e.default=r})),e("@ember/-internals/views/lib/mixins/view_support",["exports","@ember/-internals/utils","@ember/-internals/metal","@ember/object/mixin","@ember/debug","@ember/-internals/browser-environment","@ember/-internals/views/lib/system/utils"],(function(e,t,r,n,i,o,s){"use strict" function a(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const l=n.default.create({concatenatedProperties:["attributeBindings"],nearestOfType(e){let t=this.parentView,r=e instanceof n.default?t=>e.detect(t):t=>e.detect(t.constructor) for(;t;){if(r(t))return t @@ -950,7 +956,7 @@ return void 0===i&&(i=(0,n.guidFor)(this),(0,n.setName)(this,i)),i}nameClasses() e.default=o})),e("@ember/array/-internals",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.isEmberArray=function(e){return t.has(e)},e.setEmberArray=function(e){t.add(e)} const t=new WeakSet})),e("@ember/array/index",["exports","@ember/-internals/metal","@ember/object","@ember/object/mixin","@ember/debug","@ember/enumerable","@ember/enumerable/mutable","@ember/utils","@ember/-internals/environment","@ember/object/observable","@ember/array/-internals","@ember/array/lib/make-array"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.NativeArray=e.MutableArray=e.A=void 0,e.isArray=C,Object.defineProperty(e,"makeArray",{enumerable:!0,get:function(){return p.default}}),e.removeAt=O,e.uniqBy=f +Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.NativeArray=e.MutableArray=e.A=void 0,e.isArray=E,Object.defineProperty(e,"makeArray",{enumerable:!0,get:function(){return p.default}}),e.removeAt=O,e.uniqBy=f const d=Object.freeze([]),h=e=>e function f(e,t=h){let n=x(),i=new Set,o="function"==typeof t?t:e=>(0,r.get)(e,t) return e.forEach((e=>{let t=o(e) @@ -959,13 +965,13 @@ return t?e=>i===(0,r.get)(e,n):e=>Boolean((0,r.get)(e,n))}function g(e,r,n){let for(let o=n;o!n(e,t,r)),0)}function _(e,t,r=0,n){let i=e.length -return r<0&&(r+=i),g(e,n&&t!=t?e=>e!=e:e=>e===t,r)}function O(e,r,n){return(0,t.replace)(e,r,n??1,d),e}function w(e,r,n){return(0,t.replace)(e,r,0,[n]),n}function C(e){if(!e||e.setInterval)return!1 +return r<0&&(r+=i),g(e,n&&t!=t?e=>e!=e:e=>e===t,r)}function O(e,r,n){return(0,t.replace)(e,r,n??1,d),e}function w(e,r,n){return(0,t.replace)(e,r,0,[n]),n}function E(e){if(!e||e.setInterval)return!1 if(Array.isArray(e)||T.detect(e))return!0 let t=(0,a.typeOf)(e) if("array"===t)return!0 let r=e.length -return"number"==typeof r&&r==r&&"object"===t}function E(e){let r=(0,t.computed)(e) -return r.enumerable=!1,r}function k(e){return this.map((t=>(0,r.get)(t,e)))}const T=n.default.create(o.default,{init(){this._super(...arguments),(0,c.setEmberArray)(this)},objectsAt(e){return e.map((e=>(0,t.objectAt)(this,e)))},"[]":E({get(){return this},set(e,t){return this.replace(0,this.length,t),this}}),firstObject:E((function(){return(0,t.objectAt)(this,0)})).readOnly(),lastObject:E((function(){return(0,t.objectAt)(this,this.length-1)})).readOnly(),slice(e=0,r){let n,i=x(),o=this.length +return"number"==typeof r&&r==r&&"object"===t}function C(e){let r=(0,t.computed)(e) +return r.enumerable=!1,r}function k(e){return this.map((t=>(0,r.get)(t,e)))}const T=n.default.create(o.default,{init(){this._super(...arguments),(0,c.setEmberArray)(this)},objectsAt(e){return e.map((e=>(0,t.objectAt)(this,e)))},"[]":C({get(){return this},set(e,t){return this.replace(0,this.length,t),this}}),firstObject:C((function(){return(0,t.objectAt)(this,0)})).readOnly(),lastObject:C((function(){return(0,t.objectAt)(this,this.length-1)})).readOnly(),slice(e=0,r){let n,i=x(),o=this.length for(e<0&&(e=o+e),n=void 0===r||r>o?o:r<0?o+r:r;e=n)&&(r=n-1),r<0&&(r+=n) for(let i=r;i>=0;i--)if((0,t.objectAt)(this,i)===e)return i @@ -979,7 +985,7 @@ return this.forEach((n=>r.push(n[e]?.(...t)))),r},toArray(){return this.map((e=> return this.toArray().sort(((t,n)=>{for(let i=0;it!==e:e=>e==e -return this.filter(t)}}),S=e.MutableArray=n.default.create(T,s.default,{clear(){let e=this.length +return this.filter(t)}}),R=e.MutableArray=n.default.create(T,s.default,{clear(){let e=this.length return 0===e||this.replace(0,e,d),this},insertAt(e,t){return w(this,e,t),this},removeAt(e,t){return O(this,e,t)},pushObject(e){return w(this,this.length,e)},pushObjects(e){return this.replace(this.length,0,e),this},popObject(){let e=this.length if(0===e)return null let r=(0,t.objectAt)(this,e-1) @@ -994,11 +1000,11 @@ return this.replace(0,t,e),this},removeObject(e){let r=this.length||0 for(;--r>=0;){(0,t.objectAt)(this,r)===e&&this.removeAt(r)}return this},removeObjects(e){(0,t.beginPropertyChanges)() for(let t=e.length-1;t>=0;t--)this.removeObject(e[t]) return(0,t.endPropertyChanges)(),this},addObject(e){return this.includes(e)||this.pushObject(e),this},addObjects(e){return(0,t.beginPropertyChanges)(),e.forEach((e=>this.addObject(e))),(0,t.endPropertyChanges)(),this}}) -let R=e.NativeArray=n.default.create(S,u.default,{objectAt(e){return this[e]},replace(e,r,n=d){return(0,t.replaceInNativeArray)(this,e,r,n),this}}) +let S=e.NativeArray=n.default.create(R,u.default,{objectAt(e){return this[e]},replace(e,r,n=d){return(0,t.replaceInNativeArray)(this,e,r,n),this}}) const P=["length"] -R.keys().forEach((e=>{Array.prototype[e]&&P.push(e)})),e.NativeArray=R=R.without(...P) +S.keys().forEach((e=>{Array.prototype[e]&&P.push(e)})),e.NativeArray=S=S.without(...P) let x=e.A=void 0 -l.ENV.EXTEND_PROTOTYPES.Array?(R.apply(Array.prototype,!0),e.A=x=function(e){return e||[]}):e.A=x=function(e){return(0,c.isEmberArray)(e)?e:R.apply(e??[])} +l.ENV.EXTEND_PROTOTYPES.Array?(S.apply(Array.prototype,!0),e.A=x=function(e){return e||[]}):e.A=x=function(e){return(0,c.isEmberArray)(e)?e:S.apply(e??[])} e.default=T})),e("@ember/array/lib/make-array",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const{isArray:t}=Array @@ -1107,10 +1113,10 @@ let n=()=>{} e.registerHandler=n let i=()=>{} e.missingOptionsDeprecation=void 0,e.missingOptionsIdDeprecation=void 0 -e.default=i})),e("@ember/deprecated-features/index",["exports"],(function(e){"use strict" +e.default=i})) +e("@ember/deprecated-features/index",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.ASSIGN=void 0 -e.ASSIGN=!0})) -e("@ember/destroyable/index",["exports","@glimmer/destroyable"],(function(e,t){"use strict" +e.ASSIGN=!0})),e("@ember/destroyable/index",["exports","@glimmer/destroyable"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"assertDestroyablesDestroyed",{enumerable:!0,get:function(){return t.assertDestroyablesDestroyed}}),Object.defineProperty(e,"associateDestroyableChild",{enumerable:!0,get:function(){return t.associateDestroyableChild}}),Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return t.destroy}}),Object.defineProperty(e,"enableDestroyableTracking",{enumerable:!0,get:function(){return t.enableDestroyableTracking}}),Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return t.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return t.isDestroying}}),e.registerDestructor=function(e,r){return(0,t.registerDestructor)(e,r)},e.unregisterDestructor=function(e,r){return(0,t.unregisterDestructor)(e,r)}})),e("@ember/engine/index",["exports","@ember/engine/lib/engine-parent","@ember/-internals/utils","@ember/controller","@ember/application/namespace","@ember/-internals/container","dag-map","@ember/debug","@ember/debug/container-debug-adapter","@ember/object","@ember/engine/instance","@ember/routing/-internals","@ember/-internals/views","@ember/-internals/glimmer","@ember/-internals/runtime"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.buildInitializerMethod=b,e.default=void 0,Object.defineProperty(e,"getEngineParent",{enumerable:!0,get:function(){return t.getEngineParent}}),Object.defineProperty(e,"setEngineParent",{enumerable:!0,get:function(){return t.setEngineParent}}) class m extends(i.default.extend(f.RegistryProxyMixin)){constructor(){super(...arguments),this._initializersRan=!1}static buildRegistry(e){let t=new o.Registry({resolver:g(e)}) @@ -1340,15 +1346,15 @@ return this.mixins=this.mixins.concat(O(e)),this}apply(e,t=!1){return y(e,[this] if(v.has(e))return w(e,this) let t=(0,r.peekMeta)(e) return null!==t&&t.hasMixin(this)}without(...e){let t=new _([this]) -return t._without=e,t}keys(){let e=C(this) +return t._without=e,t}keys(){let e=E(this) return e}toString(){return"(unknown mixin)"}}function O(e){let t,r=e&&e.length||0 if(r>0){t=new Array(r) for(let n=0;nw(e,t,r)))}function C(e,t=new Set,r=new Set){if(!r.has(e)){if(r.add(e),e.properties){let r=Object.keys(e.properties) -for(let e of r)t.add(e)}else e.mixins&&e.mixins.forEach((e=>C(e,t,r))) +return!!n&&n.some((e=>w(e,t,r)))}function E(e,t=new Set,r=new Set){if(!r.has(e)){if(r.add(e),e.properties){let r=Object.keys(e.properties) +for(let e of r)t.add(e)}else e.mixins&&e.mixins.forEach((e=>E(e,t,r))) return t}}e.default=_})),e("@ember/object/observable",["exports","@ember/-internals/meta","@ember/-internals/metal","@ember/object","@ember/object/mixin","@ember/debug"],(function(e,t,r,n,i,o){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const s=i.default.create({get(e){return(0,n.get)(this,e)},getProperties(...e){return(0,n.getProperties)(this,...e)},set(e,t){return(0,n.set)(this,e,t)},setProperties(e){return(0,n.setProperties)(this,e)},beginPropertyChanges(){return(0,r.beginPropertyChanges)(),this},endPropertyChanges(){return(0,r.endPropertyChanges)(),this},notifyPropertyChange(e){return(0,r.notifyPropertyChange)(this,e),this},addObserver(e,t,n,i){return(0,r.addObserver)(this,e,t,n,i),this},removeObserver(e,t,n,i){return(0,r.removeObserver)(this,e,t,n,i),this},hasObserverFor(e){return(0,r.hasListeners)(this,`${e}:change`)},incrementProperty(e,t=1){return(0,n.set)(this,e,(parseFloat((0,n.get)(this,e))||0)+t)},decrementProperty(e,t=1){return(0,n.set)(this,e,((0,n.get)(this,e)||0)-t)},toggleProperty(e){return(0,n.set)(this,e,!(0,n.get)(this,e))},cacheFor(e){let r=(0,t.peekMeta)(this) @@ -1385,9 +1391,9 @@ e=this.formatURL(e),t&&t.path===e||this.pushState(e)}replaceURL(e){let{state:t}= e=this.formatURL(e),t&&t.path===e||this.replaceState(e)}pushState(e){let t={path:e,uuid:o()} this.history.pushState(t,"",e),this._previousURL=this.getURL()}replaceState(e){let t={path:e,uuid:o()} this.history.replaceState(t,"",e),this._previousURL=this.getURL()}onUpdateURL(e){this._removeEventListener(),this._popstateHandler=()=>{(i||(i=!0,this.getURL()!==this._previousURL))&&e(this.getURL())},window.addEventListener("popstate",this._popstateHandler)}formatURL(e){let{rootURL:t,baseURL:r}=this -return""!==e?(t=t.replace(/\/$/,""),r=r.replace(/\/$/,"")):"/"===r[0]&&"/"===t[0]&&(r=r.replace(/\/$/,"")),r+t+e}willDestroy(){this._removeEventListener()}_removeEventListener(){this._popstateHandler&&window.removeEventListener("popstate",this._popstateHandler)}}e.default=s})),e("@ember/routing/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"LinkTo",{enumerable:!0,get:function(){return t.LinkTo}})})) -e("@ember/routing/lib/cache",["exports"],(function(e){"use strict" +return""!==e?(t=t.replace(/\/$/,""),r=r.replace(/\/$/,"")):"/"===r[0]&&"/"===t[0]&&(r=r.replace(/\/$/,"")),r+t+e}willDestroy(){this._removeEventListener()}_removeEventListener(){this._popstateHandler&&window.removeEventListener("popstate",this._popstateHandler)}}e.default=s})) +e("@ember/routing/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"LinkTo",{enumerable:!0,get:function(){return t.LinkTo}})})),e("@ember/routing/lib/cache",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 e.default=class{constructor(){this.cache=new Map}has(e){return this.cache.has(e)}stash(e,t,r){let n=this.cache.get(e) void 0===n&&(n=new Map,this.cache.set(e,n)),n.set(t,r)}lookup(e,t,r){if(!this.has(e))return r @@ -1479,61 +1485,61 @@ class n extends t.default{initState(){this._super(...arguments) let{rootURL:e}=this}getURL(){let{path:e,rootURL:t}=this return t=t.replace(/\/$/,""),e.replace(new RegExp(`^${t}(?=/|$)`),"")}setURL(e){this.path=e}onUpdateURL(e){this.updateCallback=e}handleURL(e){this.path=e,this.updateCallback&&this.updateCallback(e)}formatURL(e){let{rootURL:t}=this return""!==e&&(t=t.replace(/\/$/,"")),t+e}}e.default=n,n.reopen({path:"",rootURL:"/"})})),e("@ember/routing/route-info",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/routing/route",["exports","@ember/-internals/container","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/environment","@ember/routing/-internals","@ember/object","@ember/object/evented","@ember/array","@ember/-internals/runtime","@ember/utils","@ember/-internals/utils","@ember/controller","@ember/debug","@ember/engine/instance","@ember/object/compat","@ember/runloop","router_js","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.defaultSerialize=e.default=void 0,e.getFullQueryParams=k,e.getRenderState=function(e){return e[C]},e.hasDefaultSerialize=function(e){return e.serialize===P} -var _,O=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/routing/route",["exports","@ember/-internals/container","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/environment","@ember/routing/-internals","@ember/object","@ember/object/evented","@ember/array","@ember/-internals/runtime","@ember/utils","@ember/-internals/utils","@ember/controller","@ember/debug","@ember/-internals/deprecations","@ember/engine/instance","@ember/object/compat","@ember/runloop","router_js","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v,_){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.defaultSerialize=e.default=void 0,e.getFullQueryParams=T,e.getRenderState=function(e){return e[C]},e.hasDefaultSerialize=function(e){return e.serialize===x} +var O,w=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -const w=Symbol("render"),C=Symbol("render-state") -class E extends(s.default.extend(u.ActionHandler,a.default)){constructor(e){if(super(e),this.context={},this[_]=void 0,e){let r=e.lookup("router:main"),n=e.lookup(t.privatize`-bucket-cache:main`) +const E=Symbol("render"),C=Symbol("render-state") +class k extends(s.default.extend(u.ActionHandler,a.default)){constructor(e){if(super(e),this.context={},this[O]=void 0,e){let r=e.lookup("router:main"),n=e.lookup(t.privatize`-bucket-cache:main`) this._router=r,this._bucketCache=n,this._topLevelViewTemplate=e.lookup("template:-outlet"),this._environment=e.lookup("-environment:main")}}serialize(e,t){if(t.length<1||!e)return let r={} if(1===t.length){let[n]=t "object"==typeof e&&n in e?r[n]=(0,s.get)(e,n):/_id$/.test(n)?r[n]=(0,s.get)(e,"id"):(0,p.isProxy)(e)&&(r[n]=(0,s.get)(e,n))}else r=(0,s.getProperties)(e,t) return r}_setRouteName(e){this.routeName=e let t=(0,n.getOwner)(this) -this.fullRouteName=R(t,e)}_stashNames(e,t){if(this._names)return +this.fullRouteName=P(t,e)}_stashNames(e,t){if(this._names)return let r=this._names=e._names r.length||(r=(e=t)&&e._names||[]) let n=(0,s.get)(this,"_qp").qps,i=new Array(r.length) for(let o=0;o(e[t]=r,e)),a)}serializeQueryParamKey(e){return e}serializeQueryParam(e,t,r){return this._router._serializeQueryParam(e,r)}deserializeQueryParam(e,t,r){return this._router._deserializeQueryParam(e,r)}_optionsForQueryParam(e){const t=(0,s.get)(this,"queryParams") return(0,s.get)(t,e.urlKey)||(0,s.get)(t,e.prop)||t[e.urlKey]||t[e.prop]||{}}resetController(e,t,r){return this}exit(e){this.deactivate(e),this.trigger("deactivate",e),this.teardownViews()}_internalReset(e,t){let r=this.controller -r._qpDelegate=(0,s.get)(this,"_qp").states.inactive,this.resetController(r,e,t)}enter(e){this[C]=void 0,this.activate(e),this.trigger("activate",e)}deactivate(e){}activate(e){}intermediateTransitionTo(...e){let[t,...r]=(0,v.prefixRouteNameArg)(this,e) +r._qpDelegate=(0,s.get)(this,"_qp").states.inactive,this.resetController(r,e,t)}enter(e){this[C]=void 0,this.activate(e),this.trigger("activate",e)}deactivate(e){}activate(e){}intermediateTransitionTo(...e){let[t,...r]=(0,_.prefixRouteNameArg)(this,e) this._router.intermediateTransitionTo(t,...r)}refresh(){return this._router._routerMicrolib.refresh(this)}setup(e,t){let n=this.controllerName||this.routeName,i=this.controllerFor(n,!0)??this.generateController(n),o=(0,s.get)(this,"_qp") if(!this.controller){let e=o.propertyNames;(function(e,t){t.forEach((t=>{if(void 0===(0,r.descriptorForProperty)(e,t)){let n=(0,p.lookupDescriptor)(e,t) -null===n||"function"!=typeof n.get&&"function"!=typeof n.set||(0,r.defineProperty)(e,t,(0,m.dependentKeyCompat)({get:n.get,set:n.set}))}(0,r.addObserver)(e,`${t}.[]`,e,e._qpChanged,!1)}))})(i,e),this.controller=i}let a=o.states -if(i._qpDelegate=a.allowOverrides,t){(0,v.stashParamNames)(this._router,t[b.STATE_SYMBOL].routeInfos) -let e=this._bucketCache,r=t[b.PARAMS_SYMBOL] +null===n||"function"!=typeof n.get&&"function"!=typeof n.set||(0,r.defineProperty)(e,t,(0,g.dependentKeyCompat)({get:n.get,set:n.set}))}(0,r.addObserver)(e,`${t}.[]`,e,e._qpChanged,!1)}))})(i,e),this.controller=i}let a=o.states +if(i._qpDelegate=a.allowOverrides,t){(0,_.stashParamNames)(this._router,t[y.STATE_SYMBOL].routeInfos) +let e=this._bucketCache,r=t[y.PARAMS_SYMBOL] o.propertyNames.forEach((t=>{let n=o.map[t] n.values=r -let a=(0,v.calculateCacheKey)(n.route.fullRouteName,n.parts,n.values),l=e.lookup(a,t,n.undecoratedDefaultValue);(0,s.set)(i,t,l)})) -let n=T(this,t[b.STATE_SYMBOL]);(0,s.setProperties)(i,n)}this.setupController(i,e,t),this._environment.options.shouldRender&&this[w](),(0,r.flushAsyncObservers)(!1)}_qpChanged(e,t,r){if(!r)return -let n=this._bucketCache,i=(0,v.calculateCacheKey)(r.route.fullRouteName,r.parts,r.values) +let a=(0,_.calculateCacheKey)(n.route.fullRouteName,n.parts,n.values),l=e.lookup(a,t,n.undecoratedDefaultValue);(0,s.set)(i,t,l)})) +let n=R(this,t[y.STATE_SYMBOL]);(0,s.setProperties)(i,n)}this.setupController(i,e,t),this._environment.options.shouldRender&&this[E](),(0,r.flushAsyncObservers)(!1)}_qpChanged(e,t,r){if(!r)return +let n=this._bucketCache,i=(0,_.calculateCacheKey)(r.route.fullRouteName,r.parts,r.values) n.stash(i,e,t)}beforeModel(e){}afterModel(e,t){}redirect(e,t){}contextDidChange(){this.currentModel=this.context}model(e,t){let r,n,i,o=(0,s.get)(this,"_qp").map for(let s in e){if("queryParams"===s||o&&s in o)continue let t=s.match(/^(.*)_id$/) null!==t&&(r=t[1],i=e[s]),n=!0}if(!r){if(n)return Object.assign({},e) if(t.resolveIndex<1)return -return t[b.STATE_SYMBOL].routeInfos[t.resolveIndex-1].context}return this.findModel(r,i)}deserialize(e,t){return this.model(this._paramsFor(this.routeName,e),t)}findModel(e,t){if(i.ENV._NO_IMPLICIT_ROUTE_MODEL)return +return t[y.STATE_SYMBOL].routeInfos[t.resolveIndex-1].context}return this.findModel(r,i)}deserialize(e,t){return this.model(this._paramsFor(this.routeName,e),t)}findModel(e,t){if(i.ENV._NO_IMPLICIT_ROUTE_MODEL)return;(0,f.deprecateUntil)(`The implicit model loading behavior for routes is deprecated. Please define an explicit model hook for ${this.fullRouteName}.`,f.DEPRECATIONS.DEPRECATE_IMPLICIT_ROUTE_MODEL) const r="store"in this?this.store:(0,s.get)(this,"_store") return r.find(e,t)}setupController(e,t,r){e&&void 0!==t&&(0,s.set)(e,"model",t)}controllerFor(e,t=!1){let r=(0,n.getOwner)(this),i=r.lookup(`route:${e}`) i&&i.controllerName&&(e=i.controllerName) let o=r.lookup(`controller:${e}`) return o}generateController(e){let t=(0,n.getOwner)(this) return(0,o.generateController)(t,e)}modelFor(e){let t,r=(0,n.getOwner)(this),i=this._router&&this._router._routerMicrolib?this._router._routerMicrolib.activeTransition:void 0 -t=r.routable&&void 0!==i?R(r,e):e +t=r.routable&&void 0!==i?P(r,e):e let o=r.lookup(`route:${t}`) if(null!=i){let e=o&&o.routeName||t -if(Object.prototype.hasOwnProperty.call(i.resolvedModels,e))return i.resolvedModels[e]}return o?.currentModel}[(_=C,w)](){this[C]=function(e){let t=(0,n.getOwner)(e) +if(Object.prototype.hasOwnProperty.call(i.resolvedModels,e))return i.resolvedModels[e]}return o?.currentModel}[(O=C,E)](){this[C]=function(e){let t=(0,n.getOwner)(e) let r=e.routeName,i=t.lookup(`controller:${e.controllerName||r}`) let o=e.currentModel,s=t.lookup(`template:${e.templateName||r}`),a={owner:t,into:void 0,outlet:"main",name:r,controller:i,model:o,template:s?.(t)??e._topLevelViewTemplate(t)} 0 -return a}(this),(0,g.once)(this._router,"_setOutlets")}willDestroy(){this.teardownViews()}teardownViews(){this[C]&&(this[C]=void 0,(0,g.once)(this._router,"_setOutlets"))}buildRouteInfoMetadata(){}_paramsFor(e,t){return void 0!==this._router._routerMicrolib.activeTransition?this.paramsFor(e):t}get _store(){const e=(0,n.getOwner)(this) +return a}(this),(0,b.once)(this._router,"_setOutlets")}willDestroy(){this.teardownViews()}teardownViews(){this[C]&&(this[C]=void 0,(0,b.once)(this._router,"_setOutlets"))}buildRouteInfoMetadata(){}_paramsFor(e,t){return void 0!==this._router._routerMicrolib.activeTransition?this.paramsFor(e):t}get _store(){const e=(0,n.getOwner)(this) this.routeName return{find(t,r){let n=e.factoryFor(`model:${t}`) if(n)return n=n.class,n.find(r)}}}get _qp(){let e={},t=this.controllerName||this.routeName,r=(0,n.getOwner)(this),i=r.lookup(`controller:${t}`),a=(0,s.get)(this,"queryParams"),l=Object.keys(a).length>0 @@ -1541,7 +1547,7 @@ if(i){let t=(0,s.get)(i,"queryParams")||[] e=function(e,t){let r={},n={defaultValue:!0,type:!0,scope:!0,as:!0} for(let i in e)Object.prototype.hasOwnProperty.call(e,i)&&(r[i]={...e[i],...t[i]},n[i]=!0) for(let i in t)Object.prototype.hasOwnProperty.call(t,i)&&!n[i]&&(r[i]={...t[i],...e[i]}) -return r}((0,v.normalizeControllerQueryParams)(t),a)}else l&&(i=(0,o.generateController)(r,t),e=a) +return r}((0,_.normalizeControllerQueryParams)(t),a)}else l&&(i=(0,o.generateController)(r,t),e=a) let u=[],p={},d=[] for(let n in e){if(!Object.prototype.hasOwnProperty.call(e,n))continue if("unknownProperty"===n||"_super"===n)continue @@ -1553,17 +1559,17 @@ let f=o.type||(0,c.typeOf)(h),m=this.serializeQueryParam(h,l,f),g=`${t}:${n}`,b= p[n]=p[l]=p[g]=b,u.push(b),d.push(n)}return{qps:u,map:p,propertyNames:d,states:{inactive:(e,t)=>{let r=p[e] this._qpChanged(e,t,r)},active:(e,t)=>{let r=p[e] return this._qpChanged(e,t,r),this._activeQPChanged(r,t)},allowOverrides:(e,t)=>{let r=p[e] -return this._qpChanged(e,t,r),this._updatingQPChanged(r)}}}}}function k(e,t){if(t.fullQueryParams)return t.fullQueryParams +return this._qpChanged(e,t,r),this._updatingQPChanged(r)}}}}}function T(e,t){if(t.fullQueryParams)return t.fullQueryParams let r=t.routeInfos.every((e=>e.route)),n={...t.queryParams} -return e._deserializeQueryParams(t.routeInfos,n),r&&(t.fullQueryParams=n),n}function T(e,t){t.queryParamsFor=t.queryParamsFor||{} +return e._deserializeQueryParams(t.routeInfos,n),r&&(t.fullQueryParams=n),n}function R(e,t){t.queryParamsFor=t.queryParamsFor||{} let r=e.fullRouteName,n=t.queryParamsFor[r] if(n)return n -let i=k(e._router,t),o=t.queryParamsFor[r]={},a=(0,s.get)(e,"_qp").qps +let i=T(e._router,t),o=t.queryParamsFor[r]={},a=(0,s.get)(e,"_qp").qps for(let s of a){let e=s.prop in i -o[s.prop]=e?i[s.prop]:S(s.defaultValue)}return o}function S(e){return Array.isArray(e)?(0,l.A)(e.slice()):e}function R(e,t){if(e.routable){let r=e.mountPoint -return"application"===t?r:`${r}.${t}`}return t}E.isRouteFactory=!0,O([s.computed],E.prototype,"_store",null),O([s.computed],E.prototype,"_qp",null) -const P=e.defaultSerialize=E.prototype.serialize -E.reopen({mergedProperties:["queryParams"],queryParams:{},templateName:null,controllerName:null,send(...e){if(this._router&&this._router._routerMicrolib||!(0,h.isTesting)())this._router.send(...e) +o[s.prop]=e?i[s.prop]:S(s.defaultValue)}return o}function S(e){return Array.isArray(e)?(0,l.A)(e.slice()):e}function P(e,t){if(e.routable){let r=e.mountPoint +return"application"===t?r:`${r}.${t}`}return t}k.isRouteFactory=!0,w([s.computed],k.prototype,"_store",null),w([s.computed],k.prototype,"_qp",null) +const x=e.defaultSerialize=k.prototype.serialize +k.reopen({mergedProperties:["queryParams"],queryParams:{},templateName:null,controllerName:null,send(...e){if(this._router&&this._router._routerMicrolib||!(0,h.isTesting)())this._router.send(...e) else{let t=e.shift(),r=this.actions[t] if(r)return r.apply(this,e)}},actions:{queryParamsDidChange(e,t,r){let n=(0,s.get)(this,"_qp").map,i=Object.keys(e).concat(Object.keys(r)) for(let o of i){let e=n[o] @@ -1571,12 +1577,12 @@ if(e){let t=this._optionsForQueryParam(e) if((0,s.get)(t,"refreshModel")&&this._router.currentState){this.refresh() break}}}return!0},finalizeQueryParamChange(e,t,n){if("application"!==this.fullRouteName)return!0 if(!n)return -let i,o=n[b.STATE_SYMBOL].routeInfos,a=this._router,l=a._queryParamsFor(o),u=a._qpUpdates,c=!1;(0,v.stashParamNames)(a,o) +let i,o=n[y.STATE_SYMBOL].routeInfos,a=this._router,l=a._queryParamsFor(o),u=a._qpUpdates,c=!1;(0,_.stashParamNames)(a,o) for(let r of l.qps){let o,a,l=r.route,p=l.controller,d=r.urlKey in e&&r.urlKey if(u.has(r.urlKey)?(o=(0,s.get)(p,r.prop),a=l.serializeQueryParam(o,r.urlKey,r.type)):d?(a=e[d],void 0!==a&&(o=l.deserializeQueryParam(a,r.urlKey,r.type))):(a=r.serializedDefaultValue,o=S(r.defaultValue)),p._qpDelegate=(0,s.get)(l,"_qp").states.inactive,a!==r.serializedValue){if(n.queryParamsOnly&&!1!==i){let e=l._optionsForQueryParam(r),t=(0,s.get)(e,"replace") t?i=!0:!1===t&&(i=!1)}(0,s.set)(p,r.prop,o),c=!0}r.serializedValue=a,r.serializedDefaultValue===a||t.push({value:a,visible:!0,key:d||r.urlKey})}!0===c&&(0,r.flushAsyncObservers)(!1),i&&n.method("replace"),l.qps.forEach((e=>{let t=(0,s.get)(e.route,"_qp") e.route.controller._qpDelegate=(0,s.get)(t,"states.active")})),a._qpUpdates.clear()}}}) -e.default=E})),e("@ember/routing/router-service",["exports","@ember/-internals/owner","@ember/object/evented","@ember/debug","@ember/object/computed","@ember/service","@glimmer/validator","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,o,s,a,l){"use strict" +e.default=k})),e("@ember/routing/router-service",["exports","@ember/-internals/owner","@ember/object/evented","@ember/debug","@ember/object/computed","@ember/service","@glimmer/validator","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,o,s,a,l){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ROUTER=void 0 var u=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) @@ -1600,7 +1606,7 @@ let t=p(e,this.rootURL) return this._router._routerMicrolib.recognizeAndLoad(t)}refresh(e){if(!e)return this._router._routerMicrolib.refresh() let r=(0,t.getOwner)(this),n=r.lookup(`route:${e}`) return this._router._routerMicrolib.refresh(n)}}e.default=d,u([(0,i.readOnly)("_router.currentRouteName")],d.prototype,"currentRouteName",void 0),u([(0,i.readOnly)("_router.currentURL")],d.prototype,"currentURL",void 0),u([(0,i.readOnly)("_router.location")],d.prototype,"location",void 0),u([(0,i.readOnly)("_router.rootURL")],d.prototype,"rootURL",void 0),u([(0,i.readOnly)("_router.currentRoute")],d.prototype,"currentRoute",void 0)})),e("@ember/routing/router",["exports","@ember/-internals/container","@ember/object","@ember/owner","@ember/routing/-internals","@ember/routing/lib/utils","@ember/array","@ember/utils","@ember/object/evented","@ember/debug","@ember/runloop","@ember/routing/route","router_js","@ember/engine/instance"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h){"use strict" -function f(e){T(this),this._cancelSlowTransitionTimer(),this.notifyPropertyChange("url"),this.set("currentState",this.targetState)}function m(e,t){0}function g(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.triggerEvent=E +function f(e){T(this),this._cancelSlowTransitionTimer(),this.notifyPropertyChange("url"),this.set("currentState",this.targetState)}function m(e,t){0}function g(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.triggerEvent=C const{slice:b}=Array.prototype class y extends(r.default.extend(l.default)){static map(e){return this.dslCallbacks||(this.dslCallbacks=[],this.reopenClass({dslCallbacks:this.dslCallbacks})),this.dslCallbacks.push(e),this}static _routePath(e){let t,r,n,i=[] function o(e,t){for(let r=0;r{e.setURL(n),(0,r.set)(t,"currentURL",n)}))}didTransition(e){t.didTransition(e)}willTransition(e,r){t.willTransition(e,r)}triggerEvent(e,r,n,i){return E.bind(t)(e,r,n,i)}routeWillChange(e){t.trigger("routeWillChange",e),t._routerService.trigger("routeWillChange",e),e.isIntermediate&&t.set("currentRoute",e.to)}routeDidChange(e){t.set("currentRoute",e.to),(0,c.once)((()=>{t.trigger("routeDidChange",e),t._routerService.trigger("routeDidChange",e)}))}transitionDidError(e,r){return e.wasAborted||r.isAborted?(0,d.logAbort)(r):(r.trigger(!1,"error",e.error,r,e.route),t._isErrorHandled(e.error)?(r.rollback(),this.routeDidChange(r),e.error):(r.abort(),e.error))}replaceURL(n){if(e.replaceURL){let i=()=>{e.replaceURL(n),(0,r.set)(t,"currentURL",n)};(0,c.once)(i)}else this.updateURL(n)}}let a=this._routerMicrolib=new s,l=this.constructor.dslCallbacks||[g],u=this._buildDSL() +if(r)return r.serializeMethod||p.defaultSerialize}updateURL(n){(0,c.once)((()=>{e.setURL(n),(0,r.set)(t,"currentURL",n)}))}didTransition(e){t.didTransition(e)}willTransition(e,r){t.willTransition(e,r)}triggerEvent(e,r,n,i){return C.bind(t)(e,r,n,i)}routeWillChange(e){t.trigger("routeWillChange",e),t._routerService.trigger("routeWillChange",e),e.isIntermediate&&t.set("currentRoute",e.to)}routeDidChange(e){t.set("currentRoute",e.to),(0,c.once)((()=>{t.trigger("routeDidChange",e),t._routerService.trigger("routeDidChange",e)}))}transitionDidError(e,r){return e.wasAborted||r.isAborted?(0,d.logAbort)(r):(r.trigger(!1,"error",e.error,r,e.route),t._isErrorHandled(e.error)?(r.rollback(),this.routeDidChange(r),e.error):(r.abort(),e.error))}replaceURL(n){if(e.replaceURL){let i=()=>{e.replaceURL(n),(0,r.set)(t,"currentURL",n)};(0,c.once)(i)}else this.updateURL(n)}}let a=this._routerMicrolib=new s,l=this.constructor.dslCallbacks||[g],u=this._buildDSL() u.route("application",{path:"/",resetNamespace:!0,overrideNameAssertion:!0},(function(){for(let e=0;er.factoryFor(`route-map:${e}`),addRouteForEngine(e,r){t._engineInfoByRoute[e]||(t._engineInfoByRoute[e]=r)}} @@ -1644,7 +1650,7 @@ let a=e.lookup("-application-instance:main") a&&a.didCreateRootView(this._toplevelView)}}handleURL(e){let t=e.split(/#(.+)?/)[0] return this._doURLTransition("handleURL",t)}_doURLTransition(e,t){this._initialTransitionStarted=!0 let r=this._routerMicrolib[e](t||"/") -return S(r,this),r}transitionTo(...e){if((0,o.resemblesURL)(e[0]))return this._doURLTransition("transitionTo",e[0]) +return R(r,this),r}transitionTo(...e){if((0,o.resemblesURL)(e[0]))return this._doURLTransition("transitionTo",e[0]) let{routeName:t,models:r,queryParams:n}=(0,o.extractRouteArgs)(e) return this._doTransition(t,r,n)}intermediateTransitionTo(e,...t){this._routerMicrolib.intermediateTransitionTo(e,...t),T(this)}replaceWith(...e){return this.transitionTo(...e).method("replace")}generate(e,...t){let r=this._routerMicrolib.generate(e,...t) return this.location.formatURL(r)}isActive(e){return this._routerMicrolib.isActive(e)}isActiveIntent(e,t,r){return this.currentState.isActiveIntent(e,t,r)}send(e,...t){this._routerMicrolib.trigger(e,...t)}hasRoute(e){return this._routerMicrolib.hasRoute(e)}reset(){this._didSetupRouter=!1,this._initialTransitionStarted=!1,this._routerMicrolib&&this._routerMicrolib.reset()}willDestroy(){this._toplevelView&&(this._toplevelView.destroy(),this._toplevelView=null),super.willDestroy(),this.reset() @@ -1652,16 +1658,16 @@ let e=this._engineInstances for(let t in e){let r=e[t] for(let e in r){let t=r[e];(0,c.run)(t,"destroy")}}}_activeQPChanged(e,t){this._queuedQPChanges[e]=t,(0,c.once)(this,this._fireQueryParamTransition)}_updatingQPChanged(e){this._qpUpdates.add(e)}_fireQueryParamTransition(){this.transitionTo({queryParams:this._queuedQPChanges}),this._resetQueuedQueryParameterChanges()}_setupLocation(){let e=this.location,t=this.rootURL,i=(0,n.getOwner)(this) if("string"==typeof e){let t=i.lookup(`location:${e}`) -e=(0,r.set)(this,"location",t)}null!==e&&"object"==typeof e&&(t&&(0,r.set)(e,"rootURL",t),"function"==typeof e.initState&&e.initState())}_serializeQueryParams(e,t){R(this,e,t,((e,r,n)=>{if(n)delete t[e],t[n.urlKey]=n.route.serializeQueryParam(r,n.urlKey,n.type) +e=(0,r.set)(this,"location",t)}null!==e&&"object"==typeof e&&(t&&(0,r.set)(e,"rootURL",t),"function"==typeof e.initState&&e.initState())}_serializeQueryParams(e,t){S(this,e,t,((e,r,n)=>{if(n)delete t[e],t[n.urlKey]=n.route.serializeQueryParam(r,n.urlKey,n.type) else{if(void 0===r)return -t[e]=this._serializeQueryParam(r,(0,a.typeOf)(r))}}))}_serializeQueryParam(e,t){return null==e?e:"array"===t?JSON.stringify(e):`${e}`}_deserializeQueryParams(e,t){R(this,e,t,((e,r,n)=>{n&&(delete t[e],t[n.prop]=n.route.deserializeQueryParam(r,n.urlKey,n.type))}))}_deserializeQueryParam(e,t){return null==e?e:"boolean"===t?"true"===e:"number"===t?Number(e).valueOf():"array"===t?(0,s.A)(JSON.parse(e)):e}_pruneDefaultQueryParamValues(e,t){let r=this._queryParamsFor(e) +t[e]=this._serializeQueryParam(r,(0,a.typeOf)(r))}}))}_serializeQueryParam(e,t){return null==e?e:"array"===t?JSON.stringify(e):`${e}`}_deserializeQueryParams(e,t){S(this,e,t,((e,r,n)=>{n&&(delete t[e],t[n.prop]=n.route.deserializeQueryParam(r,n.urlKey,n.type))}))}_deserializeQueryParam(e,t){return null==e?e:"boolean"===t?"true"===e:"number"===t?Number(e).valueOf():"array"===t?(0,s.A)(JSON.parse(e)):e}_pruneDefaultQueryParamValues(e,t){let r=this._queryParamsFor(e) for(let n in t){let e=r.map[n] e&&e.serializedDefaultValue===t[n]&&delete t[n]}}_doTransition(e,t,r,n){let i=e||(0,o.getActiveTargetName)(this._routerMicrolib) this._initialTransitionStarted=!0 let s={} this._processActiveTransitionQueryParams(i,t,s,r),Object.assign(s,r),this._prepareQueryParams(i,t,s,Boolean(n)) let a=this._routerMicrolib.transitionTo(i,...t,{queryParams:s}) -return S(a,this),a}_processActiveTransitionQueryParams(e,t,r,n){if(!this._routerMicrolib.activeTransition)return +return R(a,this),a}_processActiveTransitionQueryParams(e,t,r,n){if(!this._routerMicrolib.activeTransition)return let i={},o=this._qpUpdates,s=(0,p.getFullQueryParams)(this,this._routerMicrolib.activeTransition[d.STATE_SYMBOL]) for(let a in s)o.has(a)||(i[a]=s[a]) this._fullyScopeQueryParams(e,t,n),this._fullyScopeQueryParams(e,t,i),Object.assign(r,i)}_prepareQueryParams(e,t,r,n){let i=k(this,e,t) @@ -1696,9 +1702,9 @@ v(e,((e,i)=>{if(i!==n){let t=w(e,"loading") if(t)return r.intermediateTransitionTo(t),!1}let o=O(e,"loading") return o?(r.intermediateTransitionTo(o),!1):t.pivotHandler!==e}))}} function O(e,t){let r=(0,n.getOwner)(e),{routeName:i,fullRouteName:o,_router:s}=e,a=`${o}_${t}` -return C(r,s,`${i}_${t}`,a)?a:""}function w(e,t){let r=(0,n.getOwner)(e),{routeName:i,fullRouteName:o,_router:s}=e,a="application"===o?t:`${o}.${t}` -return C(r,s,"application"===i?t:`${i}.${t}`,a)?a:""}function C(e,t,r,n){let i=t.hasRoute(n),o=e.factoryFor(`template:${r}`)||e.factoryFor(`route:${r}`) -return i&&o}function E(e,t,r,n){if(!e){if(t)return +return E(r,s,`${i}_${t}`,a)?a:""}function w(e,t){let r=(0,n.getOwner)(e),{routeName:i,fullRouteName:o,_router:s}=e,a="application"===o?t:`${o}.${t}` +return E(r,s,"application"===i?t:`${i}.${t}`,a)?a:""}function E(e,t,r,n){let i=t.hasRoute(n),o=e.factoryFor(`template:${r}`)||e.factoryFor(`route:${r}`) +return i&&o}function C(e,t,r,n){if(!e){if(t)return throw new Error(`Can't trigger action '${r}' because your app hasn't finished transitioning into its first route. To trigger an action on destination routes during a transition, you can call \`.send()\` on the \`Transition\` object passed to the \`model/beforeModel/afterModel\` hooks.`)}let i,o,s,a=!1 for(let u=e.length-1;u>=0;u--)if(i=e[u],o=i.route,s=o&&o.actions&&o.actions[r],s){if(!0!==s.apply(o,n))return void("error"===r&&o._router._markErrorAsHandled(n[0])) a=!0}let l=_[r] @@ -1707,9 +1713,9 @@ else if(!a&&!t)throw new Error(`Nothing handled the action '${r}'. If you did ha for(let s of i)s.isResolved?o[s.name]=s.params:o[s.name]=s.serialize(s.context) return n}function T(e){let t=e._routerMicrolib.currentRouteInfos if(0===t.length)return -let n=y._routePath(t),i=t[t.length-1],o=i.name,s=e.location,a=s.getURL();(0,r.set)(e,"currentPath",n),(0,r.set)(e,"currentRouteName",o),(0,r.set)(e,"currentURL",a)}function S(e,t){let r=new i.RouterState(t,t._routerMicrolib,e[d.STATE_SYMBOL]) +let n=y._routePath(t),i=t[t.length-1],o=i.name,s=e.location,a=s.getURL();(0,r.set)(e,"currentPath",n),(0,r.set)(e,"currentRouteName",o),(0,r.set)(e,"currentURL",a)}function R(e,t){let r=new i.RouterState(t,t._routerMicrolib,e[d.STATE_SYMBOL]) t.currentState||t.set("currentState",r),t.set("targetState",r),e.promise=e.catch((e=>{if(!t._isErrorHandled(e))throw e -t._clearHandledError(e)}),"Transition Error")}function R(e,t,r,n){let i=e._queryParamsFor(t) +t._clearHandledError(e)}),"Transition Error")}function S(e,t,r,n){let i=e._queryParamsFor(t) for(let o in r){if(!Object.prototype.hasOwnProperty.call(r,o))continue n(o,r[o],i.map[o])}}y.reopen({didTransition:f,willTransition:m,rootURL:"/",location:"hash",url:(0,r.computed)((function(){let e=(0,r.get)(this,"location") if("string"!=typeof e)return e.getURL()}))}) @@ -1754,9 +1760,9 @@ const i={undefined:0,null:1,boolean:2,number:3,string:4,array:5,object:6,instanc function o(e,t){return Math.sign(e-t)}function s(e){return r.Comparable.detect(e)}})),e("@ember/utils/lib/is-equal",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){if(e&&"function"==typeof e.isEqual)return e.isEqual(t) if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime() -return e===t}})),e("@ember/utils/lib/is_blank",["exports","@ember/utils/lib/is_empty"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return(0,t.default)(e)||"string"==typeof e&&!1===/\S/.test(e)}})) -e("@ember/utils/lib/is_empty",["exports","@ember/object","@ember/-internals/metal"],(function(e,t,r){"use strict" +return e===t}})) +e("@ember/utils/lib/is_blank",["exports","@ember/utils/lib/is_empty"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return(0,t.default)(e)||"string"==typeof e&&!1===/\S/.test(e)}})),e("@ember/utils/lib/is_empty",["exports","@ember/object","@ember/-internals/metal"],(function(e,t,r){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){if(null==e)return!0 if(!(0,r.hasUnknownProperty)(e)&&"number"==typeof e.size)return!e.size if("object"==typeof e){let r=(0,t.get)(e,"size") @@ -1773,7 +1779,7 @@ let i=r[n.call(e)]||"object" return i} const r={"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object AsyncFunction]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regexp","[object Object]":"object","[object FileList]":"filelist"},{toString:n}=Object.prototype})),e("@ember/version/index",["exports","ember/version"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"VERSION",{enumerable:!0,get:function(){return t.default}})})),e("@glimmer/debug",["exports","@glimmer/util","@glimmer/vm"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.CheckArray=E,e.CheckBoolean=e.CheckBlockSymbolTable=void 0,e.CheckDict=function(e){return new w(e)},e.CheckHandle=e.CheckFunction=e.CheckElement=e.CheckDocumentFragment=void 0,e.CheckInstanceof=function(e){return new m(e)},e.CheckInterface=C,e.CheckMaybe=function(e){return new b(e)},e.CheckObject=e.CheckNumber=e.CheckNull=e.CheckNode=void 0,e.CheckOption=function(e){return new g(e,null)},e.CheckOr=function(e,t){return new y(e,t)},e.CheckUnknown=e.CheckString=e.CheckSafeString=e.CheckProgramSymbolTable=e.CheckPrimitive=void 0,e.CheckValue=A,e.OPERAND_TYPES=e.META_KIND=void 0,e.buildEnum=function(e,t,r,n){let i,o=[`export enum ${e} {`] +Object.defineProperty(e,"__esModule",{value:!0}),e.CheckArray=C,e.CheckBoolean=e.CheckBlockSymbolTable=void 0,e.CheckDict=function(e){return new w(e)},e.CheckHandle=e.CheckFunction=e.CheckElement=e.CheckDocumentFragment=void 0,e.CheckInstanceof=function(e){return new m(e)},e.CheckInterface=E,e.CheckMaybe=function(e){return new b(e)},e.CheckObject=e.CheckNumber=e.CheckNull=e.CheckNode=void 0,e.CheckOption=function(e){return new g(e,null)},e.CheckOr=function(e,t){return new y(e,t)},e.CheckUnknown=e.CheckUndefined=e.CheckString=e.CheckSafeString=e.CheckProgramSymbolTable=e.CheckPrimitive=void 0,e.CheckValue=A,e.OPERAND_TYPES=e.META_KIND=void 0,e.buildEnum=function(e,t,r,n){let i,o=[`export enum ${e} {`] Object.values(t).forEach(((e,t)=>{o.push(` ${e.name} = ${r+t},`),i=t})),o.push(` Size = ${i+r+1},`),o.push("}") let s,a=o.join("\n") s=n?p` @@ -1827,11 +1833,11 @@ for(let n of Object.keys(e))r.push(`${" ".repeat(t+2)}${n}: ${h(e[n],t+2)},`) return r.push(`${" ".repeat(t)}}`),r.join("\n")}class f{constructor(e){this.expectedType=e}validate(e){return typeof e===this.expectedType}expected(){return`typeof ${this.expectedType}`}}class m{constructor(e){this.Class=e}validate(e){return!!e&&e instanceof this.Class}expected(){return`an instance of ${this.Class.name}`}}class g{constructor(e,t){this.checker=e,this.emptyValue=t}validate(e){return e===this.emptyValue||this.checker.validate(e)}expected(){return`${this.checker.expected()} or null`}}class b{constructor(e){this.checker=e}validate(e){return null==e||this.checker.validate(e)}expected(){return`${this.checker.expected()} or null or undefined`}}class y{constructor(e,t){this.left=e,this.right=t}validate(e){return this.left.validate(e)||this.right.validate(e)}expected(){return`${this.left.expected()} or ${this.right.expected()}`}}class v{constructor(e,t){this.value=e,this.desc=t}validate(e){return e===this.value}expected(){return this.desc}}class _{constructor(e){this.checkers=e}validate(e){return"object"==typeof e&&(null!=e&&Object.entries(this.checkers).every((([t,r])=>t in e&&r.validate(e[t]))))}expected(){return`{ ${Object.entries(this.checkers).map((([e,t])=>`${e}: ${t.expected()}`)).join(",")} }`}}class O{constructor(e){this.checker=e}validate(e){return null!=e&&(!!Array.isArray(e)&&e.every((e=>this.checker.validate(e))))}expected(){return`Array<${this.checker.expected()}>`}}class w{constructor(e){this.checker=e}validate(e){if(!("object"==typeof e&&null!==e&&null===Object.getPrototypeOf(e)))return!1 let{checker:t}=this for(let r in e)if(!t.validate(e[r]))return!1 -return!0}expected(){return"a primitive"}}function C(e){return new _(e)}function E(e){return new O(e)}function k(e,t){return`Got ${e}, expected:\n${t}`}let T=0 +return!0}expected(){return"a primitive"}}function E(e){return new _(e)}function C(e){return new O(e)}function k(e,t){return`Got ${e}, expected:\n${t}`}let T=0 e.CheckPrimitive=new class{validate(e){return"string"!=typeof e||"number"==typeof e||"string"==typeof e||null==e}expected(){return"a primitive"}},e.CheckFunction=new f("function") -const S=e.CheckNumber=new f("number"),R=e.CheckBoolean=new f("boolean"),P=(e.CheckHandle=S,e.CheckString=new f("string")),x=(e.CheckNull=new class{validate(e){return null===e}expected(){return"null"}},e.CheckUnknown=new class{constructor(){this.type=void 0}validate(e){return!0}expected(){return"any"}}) +const R=e.CheckNumber=new f("number"),S=e.CheckBoolean=new f("boolean"),P=(e.CheckHandle=R,e.CheckString=new f("string")),x=(e.CheckNull=new class{validate(e){return null===e}expected(){return"null"}},e.CheckUndefined=new class{validate(e){return void 0===e}expected(){return"undefined"}},e.CheckUnknown=new class{constructor(){this.type=void 0}validate(e){return!0}expected(){return"any"}}) e.CheckSafeString=new class{validate(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}expected(){return"SafeString"}},e.CheckObject=new class{validate(e){return"function"==typeof e||"object"==typeof e&&null!==e}expected(){return"an object or function (valid WeakMap key)"}} -function A(e,t=String(e)){return new v(e,t)}e.CheckBlockSymbolTable=C({parameters:E(S)}),e.CheckProgramSymbolTable=C({hasEval:R,symbols:E(P)}),e.CheckElement=C({nodeType:A(1),tagName:P,nextSibling:x}),e.CheckDocumentFragment=C({nodeType:A(11),nextSibling:x}),e.CheckNode=C({nodeType:S,nextSibling:x})})),e("@glimmer/destroyable",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" +function A(e,t=String(e)){return new v(e,t)}e.CheckBlockSymbolTable=E({parameters:C(R)}),e.CheckProgramSymbolTable=E({hasEval:S,symbols:C(P)}),e.CheckElement=E({nodeType:A(1),tagName:P,nextSibling:x}),e.CheckDocumentFragment=E({nodeType:A(11),nextSibling:x}),e.CheckNode=E({nodeType:R,nextSibling:x})})),e("@glimmer/destroyable",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e._hasDestroyableChildren=function(e){let t=i.get(e) return void 0!==t&&null!==t.children},e.assertDestroyablesDestroyed=void 0,e.associateDestroyableChild=function(e,t){0 let r=l(e),n=l(t) @@ -1877,7 +1883,7 @@ const r=k(_,e) if(void 0===r&&!0===t)return null return r},e.getInternalHelperManager=function(e,t){0 let r=k(w,e) -void 0===r&&"function"==typeof e&&(r=R) +void 0===r&&"function"==typeof e&&(r=S) if(r)return r if(!0===t)return null return null},e.getInternalModifierManager=function(e,t){0 @@ -1889,7 +1895,7 @@ return r},e.hasCapability=function(e,t){return(0,o.check)(e,o.CheckNumber),!!(e& return h({hasValue:Boolean(t.hasValue),hasDestroyable:Boolean(t.hasDestroyable),hasScheduledEffect:Boolean(t.hasScheduledEffect)})},e.managerHasCapability=function(e,t,r){return(0,o.check)(t,o.CheckNumber),!!(t&r)},e.modifierCapabilities=function(e,t={}){0 return h({disableAutoTracking:Boolean(t.disableAutoTracking)})},e.setComponentManager=function(e,t){return P(new N(e),t)},e.setComponentTemplate=function(e,t){0 0 -return I.set(t,e),t},e.setCustomTagFor=l,e.setHelperManager=function(e,t){return S(new y(e),t)},e.setInternalComponentManager=P,e.setInternalHelperManager=S,e.setInternalModifierManager=T,e.setModifierManager=function(e,t){return T(new D(e),t)} +return I.set(t,e),t},e.setCustomTagFor=l,e.setHelperManager=function(e,t){return R(new y(e),t)},e.setInternalComponentManager=P,e.setInternalHelperManager=R,e.setInternalModifierManager=T,e.setModifierManager=function(e,t){return T(new j(e),t)} const a=new WeakMap function l(e,t){a.set(e,t)}function u(e){if("symbol"==typeof e)return null const t=Number(e) @@ -1914,26 +1920,26 @@ const s=d(t),a=o.createHelper(e,s) if(g(o)){let e=(0,n.createComputeRef)((()=>o.getValue(a)),null,!1) return b(o)&&(0,r.associateDestroyableChild)(e,o.getDestroyable(a)),e}if(b(o)){let e=(0,n.createConstRef)(void 0,!1) return(0,r.associateDestroyableChild)(e,o.getDestroyable(a)),e}return n.UNDEFINED_REFERENCE}}}e.CustomHelperManager=y -class v{constructor(){this.capabilities={hasValue:!0,hasDestroyable:!1,hasScheduledEffect:!1}}createHelper(e,t){return{fn:e,args:t}}getValue({fn:e,args:t}){if(Object.keys(t.named).length>0){return e(...[...t.positional,t.named])}return e(...t.positional)}getDebugName(e){return e.name?`(helper function ${e.name})`:"(anonymous helper function)"}}const _=new WeakMap,O=new WeakMap,w=new WeakMap,C=Object.getPrototypeOf -function E(e,t,r){return e.set(r,t),r}function k(e,t){let r=t +class v{constructor(){this.capabilities={hasValue:!0,hasDestroyable:!1,hasScheduledEffect:!1}}createHelper(e,t){return{fn:e,args:t}}getValue({fn:e,args:t}){if(Object.keys(t.named).length>0){return e(...[...t.positional,t.named])}return e(...t.positional)}getDebugName(e){return e.name?`(helper function ${e.name})`:"(anonymous helper function)"}}const _=new WeakMap,O=new WeakMap,w=new WeakMap,E=Object.getPrototypeOf +function C(e,t,r){return e.set(r,t),r}function k(e,t){let r=t for(;null!=r;){const t=e.get(r) if(void 0!==t)return t -r=C(r)}}function T(e,t){return E(O,e,t)}function S(e,t){return E(w,e,t)}const R=new y((()=>new v)) -function P(e,t){return E(_,e,t)}const x={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +r=E(r)}}function T(e,t){return C(O,e,t)}function R(e,t){return C(w,e,t)}const S=new y((()=>new v)) +function P(e,t){return C(_,e,t)}const x={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} function A(e){return e.capabilities.asyncLifeCycleCallbacks}function M(e){return e.capabilities.updateHook}class N{constructor(e){this.componentManagerDelegates=new WeakMap,this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) if(void 0===r){let{factory:n}=this r=n(e),t.set(e,r)}return r}create(e,t,r){let n=this.getDelegateFor(e),i=d(r.capture()),o=n.createComponent(t,i) -return new j(o,n,i)}getDebugName(e){return"function"==typeof e?e.name:e.toString()}update(e){let{delegate:t}=e +return new D(o,n,i)}getDebugName(e){return"function"==typeof e?e.name:e.toString()}update(e){let{delegate:t}=e if(M(t)){let{component:r,args:n}=e t.updateComponent(r,n)}}didCreate({component:e,delegate:t}){A(t)&&t.didCreateComponent(e)}didUpdate({component:e,delegate:t}){(function(e){return A(e)&&M(e)})(t)&&t.didUpdateComponent(e)}didRenderLayout(){}didUpdateLayout(){}getSelf({component:e,delegate:t}){return(0,n.createConstRef)(t.getContext(e),"this")}getDestroyable(e){const{delegate:t}=e if(function(e){return e.capabilities.destructor}(t)){const{component:n}=e return(0,r.registerDestructor)(e,(()=>t.destroyComponent(n))),e}return null}getCapabilities(){return x}}e.CustomComponentManager=N -class j{constructor(e,t,r){this.component=e,this.delegate=t,this.args=r}}class D{constructor(e){this.componentManagerDelegates=new WeakMap,this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) +class D{constructor(e,t,r){this.component=e,this.delegate=t,this.args=r}}class j{constructor(e){this.componentManagerDelegates=new WeakMap,this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) if(void 0===r){let{factory:n}=this r=n(e),t.set(e,r)}return r}create(e,t,n,o){let s,a=this.getDelegateFor(e),l=d(o),u=a.createModifier(n,l) -return s={tag:(0,i.createUpdatableTag)(),element:t,delegate:a,args:l,modifier:u},(0,r.registerDestructor)(s,(()=>a.destroyModifier(u,l))),s}getDebugName({debugName:e}){return e}getTag({tag:e}){return e}install({element:e,args:r,modifier:n,delegate:o}){let{capabilities:s}=o +return s={tag:(0,i.createUpdatableTag)(),element:t,delegate:a,args:l,modifier:u},(0,r.registerDestructor)(s,(()=>a.destroyModifier(u,l))),s}getDebugName(e){return"function"==typeof e?e.name||e.toString():""}getDebugInstance({modifier:e}){return e}getTag({tag:e}){return e}install({element:e,args:r,modifier:n,delegate:o}){let{capabilities:s}=o !0===s.disableAutoTracking?(0,i.untrack)((()=>o.installModifier(n,(0,t.castToBrowser)(e,"ELEMENT"),r))):o.installModifier(n,(0,t.castToBrowser)(e,"ELEMENT"),r)}update({args:e,modifier:t,delegate:r}){let{capabilities:n}=r -!0===n.disableAutoTracking?(0,i.untrack)((()=>r.updateModifier(t,e))):r.updateModifier(t,e)}getDestroyable(e){return e}}e.CustomModifierManager=D +!0===n.disableAutoTracking?(0,i.untrack)((()=>r.updateModifier(t,e))):r.updateModifier(t,e)}getDestroyable(e){return e}}e.CustomModifierManager=j const I=new WeakMap,F=Object.getPrototypeOf})),e("@glimmer/node",["exports","@glimmer/runtime","@simple-dom/document"],(function(e,t,r){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.NodeDOMTreeConstruction=void 0,e.serializeBuilder=function(e,t){return o.forInitialRender(e,t)} class n extends t.DOMTreeConstruction{constructor(e){super(e||(0,r.default)())}setupUselessElement(){}insertHTMLBefore(e,r,n){let i=this.document.createRawHTMLSection(n) @@ -1952,52 +1958,48 @@ let i=this.__appendComment("%glmr%") return new t.ConcreteBounds(this.element,n,i)}__appendText(e){let{tagName:t}=this.element,r=function(e){let{element:t,nextSibling:r}=e return null===r?t.lastChild:r.previousSibling}(this) return"TITLE"===t||"SCRIPT"===t||"STYLE"===t?super.__appendText(e):""===e?this.__appendComment("% %"):(r&&3===r.nodeType&&this.__appendComment("%|%"),super.__appendText(e))}closeElement(){return i.has(this.element)&&(i.delete(this.element),super.closeElement()),super.closeElement()}openElement(e){return"tr"===e&&"TBODY"!==this.element.tagName&&"THEAD"!==this.element.tagName&&"TFOOT"!==this.element.tagName&&(this.openElement("tbody"),i.set(this.constructing,!0),this.flushElement(null)),super.openElement(e)}pushRemoteElement(e,t,r=null){let{dom:n}=this,i=n.createElement("script") -return i.setAttribute("glmr",t),n.insertBefore(e,i,r),super.pushRemoteElement(e,t,r)}}})),e("@glimmer/opcode-compiler",["exports","@glimmer/util","@glimmer/debug","@glimmer/vm","@glimmer/encoder","@glimmer/wire-format","@glimmer/manager","@glimmer/global-context"],(function(e,t,r,n,i,o,s,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.WrappedBuilder=e.StdLib=e.MINIMAL_CAPABILITIES=e.EMPTY_BLOCKS=e.DEFAULT_CAPABILITIES=e.CompileTimeCompilationContextImpl=void 0,e.compilable=ye,e.compileStatements=ve,e.compileStd=se,e.debugCompiler=void 0,e.invokeStaticBlock=W,e.invokeStaticBlockWithStack=Y,e.meta=V,e.programCompilationContext=function(e,t,r){return new ue(e,t,r)},e.templateCacheCounters=void 0,e.templateCompilationContext=ce,e.templateFactory=function({id:e,moduleName:t,block:r,scope:n,isStrictMode:i}){let o,s=e||"client-"+Oe++,a=null,l=new WeakMap,u=e=>{if(void 0===o&&(o=JSON.parse(r)),void 0===e)return null===a?(we.cacheMiss++,a=new Ce({id:s,block:o,moduleName:t,owner:null,scope:n,isStrictMode:i})):we.cacheHit++,a +return i.setAttribute("glmr",t),n.insertBefore(e,i,r),super.pushRemoteElement(e,t,r)}}})),e("@glimmer/opcode-compiler",["exports","@glimmer/util","@glimmer/debug","@glimmer/vm","@glimmer/encoder","@glimmer/wire-format","@glimmer/manager"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.WrappedBuilder=e.StdLib=e.MINIMAL_CAPABILITIES=e.EMPTY_BLOCKS=e.DEFAULT_CAPABILITIES=e.CompileTimeCompilationContextImpl=void 0,e.compilable=fe,e.compileStatements=me,e.compileStd=re,e.debugCompiler=void 0,e.invokeStaticBlock=V,e.invokeStaticBlockWithStack=z,e.meta=B,e.programCompilationContext=function(e,t,r){return new oe(e,t,r)},e.templateCacheCounters=void 0,e.templateCompilationContext=se,e.templateFactory=function({id:e,moduleName:t,block:r,scope:n,isStrictMode:i}){let o,s=e||"client-"+be++,a=null,l=new WeakMap,u=e=>{if(void 0===o&&(o=JSON.parse(r)),void 0===e)return null===a?(ye.cacheMiss++,a=new ve({id:s,block:o,moduleName:t,owner:null,scope:n,isStrictMode:i})):ye.cacheHit++,a let u=l.get(e) -return void 0===u?(we.cacheMiss++,u=new Ce({id:s,block:o,moduleName:t,owner:e,scope:n,isStrictMode:i}),l.set(e,u)):we.cacheHit++,u} +return void 0===u?(ye.cacheMiss++,u=new ve({id:s,block:o,moduleName:t,owner:e,scope:n,isStrictMode:i}),l.set(e,u)):ye.cacheHit++,u} return u.__id=s,u.__meta={moduleName:t},u} e.debugCompiler=void 0 -function l(e){return t=>{if(!function(e){return Array.isArray(e)&&2===e.length}(t))return!1 +function a(e){return t=>{if(!function(e){return Array.isArray(e)&&2===e.length}(t))return!1 let r=t[0] -return r===o.SexpOpcodes.GetStrictKeyword||r===o.SexpOpcodes.GetLexicalSymbol||r===e}}const u=l(o.SexpOpcodes.GetFreeAsComponentHead),c=l(o.SexpOpcodes.GetFreeAsModifierHead),p=l(o.SexpOpcodes.GetFreeAsHelperHead),d=l(o.SexpOpcodes.GetFreeAsComponentOrHelperHead),h=l(o.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback) -const f=l(o.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback) -function m(e,r,n,[,i,{ifHelper:s}]){var a;(0,t.assert)(h(i)||(a=i,Array.isArray(a)&&a[0]===o.SexpOpcodes.GetFreeAsDeprecatedHelperHeadOrThisFallback),"Attempted to resolve a helper with incorrect opcode") -let{upvars:l,owner:u}=n,c=(0,t.unwrap)(l[i[1]]),p=e.lookupHelper(c,u) -p&&s(r.helper(p,c),c,n.moduleName)}function g(e,r,n,i,o){let{upvars:s}=n,a=(0,t.unwrap)(s[e[1]]),l=r.lookupBuiltInHelper(a) -return i.helper(l,a)}const b={Modifier:1003,Component:1004,Helper:1005,OptionalHelper:1006,ComponentOrHelper:1007,OptionalComponentOrHelper:1008,Free:1009,Local:1010,TemplateLocal:1011},y={Label:1e3,StartLabels:1001,StopLabels:1002,Start:1e3,End:1002},v={Label:1,IsStrictMode:2,DebugSymbols:3,Block:4,StdLib:5,NonSmallInt:6,SymbolTable:7,Layout:8} -function _(e){return{type:v.Label,value:e}}function O(){return{type:v.IsStrictMode,value:void 0}}function w(e){return{type:v.StdLib,value:e}}function C(e){return{type:v.SymbolTable,value:e}}function E(e){return{type:v.Layout,value:e}}class k{constructor(){this.labels=(0,t.dict)(),this.targets=[]}label(e,t){this.labels[e]=t}target(e,t){this.targets.push({at:e,target:t})}patch(e){let{targets:r,labels:n}=this -for(const{at:i,target:o}of r){let r=n[o]-i;(0,t.assert)(-1===e.getbyaddr(i),"Expected heap to contain a placeholder, but it did not"),e.setbyaddr(i,r)}}}function T(e,r,n,i,s){if(function(e){return e=0;a--){let r=(0,t.unwrap)(o[a]) -e(y.Label,r.label),e(n.Op.Pop,1),r.callback(),0!==a&&e(n.MachineOp.Jump,_("END"))}e(y.Label,"END"),e(y.StopLabels),e(n.Op.Exit)}function J(e,t,r){e(y.StartLabels),e(n.MachineOp.PushFrame),e(n.MachineOp.ReturnTo,_("ENDINITIAL")) +e(f.Label,r.label),e(n.Op.Pop,1),r.callback(),0!==a&&e(n.MachineOp.Jump,g("END"))}e(f.Label,"END"),e(f.StopLabels),e(n.Op.Exit)}function W(e,t,r){e(f.StartLabels),e(n.MachineOp.PushFrame),e(n.MachineOp.ReturnTo,g("ENDINITIAL")) let i=t() -e(n.Op.Enter,i),r(),e(y.Label,"FINALLY"),e(n.Op.Exit),e(n.MachineOp.Return),e(y.Label,"ENDINITIAL"),e(n.MachineOp.PopFrame),e(y.StopLabels)}function X(e,t,r,i){return J(e,t,(()=>{e(n.Op.JumpUnless,_("ELSE")),r(),e(n.MachineOp.Jump,_("FINALLY")),e(y.Label,"ELSE"),void 0!==i&&i()}))}L.add(o.SexpOpcodes.Concat,((e,[,t])=>{for(let r of t)U(e,r) -e(n.Op.Concat,t.length)})),L.add(o.SexpOpcodes.Call,((e,[,t,r,n])=>{p(t)?e(b.Helper,t,(t=>{j(e,t,r,n)})):(U(e,t),D(e,r,n))})),L.add(o.SexpOpcodes.Curry,((e,[,t,r,n,i])=>{I(e,r,t,n,i)})),L.add(o.SexpOpcodes.GetSymbol,((e,[,t,r])=>{e(n.Op.GetVariable,t),B(e,r)})),L.add(o.SexpOpcodes.GetLexicalSymbol,((e,[,t,r])=>{e(b.TemplateLocal,t,(t=>{e(n.Op.ConstantReference,t),B(e,r)}))})),L.add(o.SexpOpcodes.GetStrictKeyword,((e,[,t,r])=>{e(b.Free,t,(e=>{}))})),L.add(o.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback,(()=>{throw new Error("unimplemented opcode")})),L.add(o.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback,((e,t)=>{e(b.Local,t[1],(r=>{e(b.OptionalHelper,t,{ifHelper:t=>{j(e,t,null,null)}})}))})),L.add(o.SexpOpcodes.GetFreeAsDeprecatedHelperHeadOrThisFallback,((e,t)=>{e(b.Local,t[1],(r=>{e(b.OptionalHelper,t,{ifHelper:(r,n,i)=>{t[2][0] -j(e,r,null,null)}})}))})),L.add(o.SexpOpcodes.Undefined,(e=>M(e,void 0))),L.add(o.SexpOpcodes.HasBlock,((e,[,t])=>{U(e,t),e(n.Op.HasBlock)})),L.add(o.SexpOpcodes.HasBlockParams,((e,[,t])=>{U(e,t),e(n.Op.SpreadBlock),e(n.Op.CompileBlock),e(n.Op.HasBlockParams)})),L.add(o.SexpOpcodes.IfInline,((e,[,t,r,i])=>{U(e,i),U(e,r),U(e,t),e(n.Op.IfInline)})),L.add(o.SexpOpcodes.Not,((e,[,t])=>{U(e,t),e(n.Op.Not)})),L.add(o.SexpOpcodes.GetDynamicVar,((e,[,t])=>{U(e,t),e(n.Op.GetDynamicVar)})),L.add(o.SexpOpcodes.Log,((e,[,t])=>{e(n.MachineOp.PushFrame),H(e,t,null,!1),e(n.Op.Log),e(n.MachineOp.PopFrame),e(n.Op.Fetch,n.$v0)})) -const Z="&attrs" -function ee(e,r,i,o,a,l){let{compilable:u,capabilities:c,handle:p}=r,d=i?[i,[]]:null,h=Array.isArray(l)||null===l?A(l):l +e(n.Op.Enter,i),r(),e(f.Label,"FINALLY"),e(n.Op.Exit),e(n.MachineOp.Return),e(f.Label,"ENDINITIAL"),e(n.MachineOp.PopFrame),e(f.StopLabels)}function Y(e,t,r,i){return W(e,t,(()=>{e(n.Op.JumpUnless,g("ELSE")),r(),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"ELSE"),void 0!==i&&i()}))}D.add(o.SexpOpcodes.Concat,((e,[,t])=>{for(let r of t)I(e,r) +e(n.Op.Concat,t.length)})),D.add(o.SexpOpcodes.Call,((e,[,t,r,n])=>{c(t)?e(h.Helper,t,(t=>{x(e,t,r,n)})):(I(e,t),A(e,r,n))})),D.add(o.SexpOpcodes.Curry,((e,[,t,r,n,i])=>{M(e,r,t,n,i)})),D.add(o.SexpOpcodes.GetSymbol,((e,[,t,r])=>{e(n.Op.GetVariable,t),j(e,r)})),D.add(o.SexpOpcodes.GetLexicalSymbol,((e,[,t,r])=>{e(h.TemplateLocal,t,(t=>{e(n.Op.ConstantReference,t),j(e,r)}))})),D.add(o.SexpOpcodes.GetStrictKeyword,((e,t)=>{e(h.Local,t[1],(r=>{e(h.Helper,t,(t=>{x(e,t,null,null)}))}))})),D.add(o.SexpOpcodes.GetFreeAsHelperHead,((e,t)=>{e(h.Local,t[1],(r=>{e(h.Helper,t,(t=>{x(e,t,null,null)}))}))})),D.add(o.SexpOpcodes.Undefined,(e=>S(e,void 0))),D.add(o.SexpOpcodes.HasBlock,((e,[,t])=>{I(e,t),e(n.Op.HasBlock)})),D.add(o.SexpOpcodes.HasBlockParams,((e,[,t])=>{I(e,t),e(n.Op.SpreadBlock),e(n.Op.CompileBlock),e(n.Op.HasBlockParams)})),D.add(o.SexpOpcodes.IfInline,((e,[,t,r,i])=>{I(e,i),I(e,r),I(e,t),e(n.Op.IfInline)})),D.add(o.SexpOpcodes.Not,((e,[,t])=>{I(e,t),e(n.Op.Not)})),D.add(o.SexpOpcodes.GetDynamicVar,((e,[,t])=>{I(e,t),e(n.Op.GetDynamicVar)})),D.add(o.SexpOpcodes.Log,((e,[,t])=>{e(n.MachineOp.PushFrame),F(e,t,null,!1),e(n.Op.Log),e(n.MachineOp.PopFrame),e(n.Op.Fetch,n.$v0)})) +const Q="&attrs" +function K(e,r,i,o,a,l){let{compilable:u,capabilities:c,handle:p}=r,d=i?[i,[]]:null,h=Array.isArray(l)||null===l?R(l):l u?(e(n.Op.PushComponentDefinition,p),function(e,{capabilities:r,layout:i,elementBlock:o,positional:a,named:l,blocks:u}){let{symbolTable:c}=i,p=c.hasEval||(0,s.hasCapability)(r,n.InternalComponentCapabilities.prepareArgs) -if(p)return void re(e,{capabilities:r,elementBlock:o,positional:a,named:l,atNames:!0,blocks:u,layout:i}) +if(p)return void X(e,{capabilities:r,elementBlock:o,positional:a,named:l,atNames:!0,blocks:u,layout:i}) e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame) let{symbols:d}=c,h=[],f=[],m=[],g=u.names -if(null!==o){let t=d.indexOf(Z);-1!==t&&(G(e,o),h.push(t))}for(const t of g){let r=d.indexOf(`&${t}`);-1!==r&&(G(e,u.get(t)),h.push(r))}if((0,s.hasCapability)(r,n.InternalComponentCapabilities.createArgs)){let r=$(e,a)<<4 +if(null!==o){let t=d.indexOf(Q);-1!==t&&($(e,o),h.push(t))}for(const t of g){let r=d.indexOf(`&${t}`);-1!==r&&($(e,u.get(t)),h.push(r))}if((0,s.hasCapability)(r,n.InternalComponentCapabilities.createArgs)){let r=L(e,a)<<4 r|=8 let i=t.EMPTY_STRING_ARRAY if(null!==l){i=l[0] let r=l[1] for(let n=0;n0?1:0),e(n.Op.SetVariable,0) for(const s of(0,t.reverse)(f))-1===s?e(n.Op.Pop,1):e(n.Op.SetVariable,s+1) null!==a&&e(n.Op.Pop,a.length) for(const s of(0,t.reverse)(h))e(n.Op.SetBlock,s+1) -e(n.Op.Constant,E(i)),e(n.Op.CompileBlock),e(n.MachineOp.InvokeVirtual),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),(0,s.hasCapability)(r,n.InternalComponentCapabilities.dynamicScope)&&e(n.Op.PopDynamicScope) -e(n.Op.CommitComponentTransaction),e(n.Op.Load,n.$s0)}(e,{capabilities:c,layout:u,elementBlock:d,positional:o,named:a,blocks:h})):(e(n.Op.PushComponentDefinition,p),re(e,{capabilities:c,elementBlock:d,positional:o,named:a,atNames:!0,blocks:h}))}function te(e,t,r,i,o,s,a,l){let u=r?[r,[]]:null,c=Array.isArray(s)||null===s?A(s):s -J(e,(()=>(U(e,t),e(n.Op.Dup,n.$sp,0),2)),(()=>{e(n.Op.JumpUnless,_("ELSE")),l?e(n.Op.ResolveCurriedComponent):e(n.Op.ResolveDynamicComponent,O()),e(n.Op.PushDynamicComponentInstance),re(e,{capabilities:!0,elementBlock:u,positional:i,named:o,atNames:a,blocks:c}),e(y.Label,"ELSE")}))}function re(e,{capabilities:r,elementBlock:i,positional:o,named:a,atNames:l,blocks:u,layout:c}){let p=!!u,d=!0===r||(0,s.hasCapability)(r,n.InternalComponentCapabilities.prepareArgs)||!(!a||0===a[0].length),h=u.with("attrs",i) +e(n.Op.Constant,_(i)),e(n.Op.CompileBlock),e(n.MachineOp.InvokeVirtual),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),(0,s.hasCapability)(r,n.InternalComponentCapabilities.dynamicScope)&&e(n.Op.PopDynamicScope) +e(n.Op.CommitComponentTransaction),e(n.Op.Load,n.$s0)}(e,{capabilities:c,layout:u,elementBlock:d,positional:o,named:a,blocks:h})):(e(n.Op.PushComponentDefinition,p),X(e,{capabilities:c,elementBlock:d,positional:o,named:a,atNames:!0,blocks:h}))}function J(e,t,r,i,o,s,a,l){let u=r?[r,[]]:null,c=Array.isArray(s)||null===s?R(s):s +W(e,(()=>(I(e,t),e(n.Op.Dup,n.$sp,0),2)),(()=>{e(n.Op.JumpUnless,g("ELSE")),l?e(n.Op.ResolveCurriedComponent):e(n.Op.ResolveDynamicComponent,b()),e(n.Op.PushDynamicComponentInstance),X(e,{capabilities:!0,elementBlock:u,positional:i,named:o,atNames:a,blocks:c}),e(f.Label,"ELSE")}))}function X(e,{capabilities:r,elementBlock:i,positional:o,named:a,atNames:l,blocks:u,layout:c}){let p=!!u,d=!0===r||(0,s.hasCapability)(r,n.InternalComponentCapabilities.prepareArgs)||!(!a||0===a[0].length),h=u.with("attrs",i) e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame),function(e,r,i,o,s){let a=o.names -for(const t of a)G(e,o.get(t)) -let l=$(e,r)<<4 +for(const t of a)$(e,o.get(t)) +let l=L(e,r)<<4 s&&(l|=8),o&&(l|=7) let u=t.EMPTY_ARRAY if(i){u=i[0] let t=i[1] -for(let r=0;r{c?(e(n.Op.PushSymbolTable,C(c.symbolTable)),e(n.Op.Constant,E(c)),e(n.Op.CompileBlock)):e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}function ne(e,t,r){e(y.StartLabels),function(e,t,r){e(n.Op.Fetch,t),r(),e(n.Op.Load,t)}(e,n.$s1,(()=>{e(n.Op.GetComponentTagName,n.$s0),e(n.Op.PrimitiveReference),e(n.Op.Dup,n.$sp,0)})),e(n.Op.JumpUnless,_("BODY")),e(n.Op.Fetch,n.$s1),e(n.Op.PutComponentOperations),e(n.Op.OpenDynamicElement),e(n.Op.DidCreateElement,n.$s0),q(e,r,null),e(n.Op.FlushElement),e(y.Label,"BODY"),W(e,[t.block[0],[]]),e(n.Op.Fetch,n.$s1),e(n.Op.JumpUnless,_("END")),e(n.Op.CloseElement),e(y.Label,"END"),e(n.Op.Load,n.$s1),e(y.StopLabels)}function ie(e,t,r,i,o=null){e(n.Op.BeginComponentTransaction,n.$s0),e(n.Op.PushDynamicScope),e(n.Op.CreateComponent,0|t,n.$s0),o&&o(),e(n.Op.RegisterComponentDestructor,n.$s0),e(n.Op.GetComponentSelf,n.$s0),e(n.Op.VirtualRootScope,n.$s0),e(n.Op.SetVariable,0),e(n.Op.SetupForEval,n.$s0),i&&e(n.Op.SetNamedVariables,n.$s0),r&&e(n.Op.SetBlocks,n.$s0),e(n.Op.Pop,1),e(n.Op.InvokeComponentLayout,n.$s0),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),e(n.Op.PopDynamicScope),e(n.Op.CommitComponentTransaction)}function oe(e,t,r){K(e,(()=>e(n.Op.ContentType)),(i=>{i(n.ContentType.String,(()=>{t?(e(n.Op.AssertSame),e(n.Op.AppendHTML)):e(n.Op.AppendText)})),"number"==typeof r?(i(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),function(e){e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame),e(n.Op.PushEmptyArgs),e(n.Op.PrepareArgs,n.$s0),ie(e,!1,!1,!0,(()=>{e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}(e)})),i(n.ContentType.Helper,(()=>{D(e,null,null,(()=>{e(n.MachineOp.InvokeStatic,r)}))}))):(i(n.ContentType.Component,(()=>{e(n.Op.AppendText)})),i(n.ContentType.Helper,(()=>{e(n.Op.AppendText)}))),i(n.ContentType.SafeString,(()=>{e(n.Op.AssertSame),e(n.Op.AppendSafeHTML)})),i(n.ContentType.Fragment,(()=>{e(n.Op.AssertSame),e(n.Op.AppendDocumentFragment)})),i(n.ContentType.Node,(()=>{e(n.Op.AssertSame),e(n.Op.AppendNode)}))}))}function se(e){let t=le(e,(e=>function(e){e(n.Op.Main,n.$s0),ie(e,!1,!1,!0)}(e))),r=le(e,(e=>oe(e,!0,null))),i=le(e,(e=>oe(e,!1,null))),o=le(e,(e=>oe(e,!0,r))),s=le(e,(e=>oe(e,!1,i))) -return new R(t,o,s,r,i)}const ae={evalSymbols:null,upvars:null,moduleName:"stdlib",scopeValues:null,isStrictMode:!0,owner:null,size:0} -function le(e,t){let{constants:r,heap:n,resolver:i}=e,o=new S(n,ae) -t((function(...e){T(o,r,i,ae,e)})) +for(let r=0;r{c?(e(n.Op.PushSymbolTable,v(c.symbolTable)),e(n.Op.Constant,_(c)),e(n.Op.CompileBlock)):e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}function Z(e,t,r){e(f.StartLabels),function(e,t,r){e(n.Op.Fetch,t),r(),e(n.Op.Load,t)}(e,n.$s1,(()=>{e(n.Op.GetComponentTagName,n.$s0),e(n.Op.PrimitiveReference),e(n.Op.Dup,n.$sp,0)})),e(n.Op.JumpUnless,g("BODY")),e(n.Op.Fetch,n.$s1),e(n.Op.PutComponentOperations),e(n.Op.OpenDynamicElement),e(n.Op.DidCreateElement,n.$s0),H(e,r,null),e(n.Op.FlushElement),e(f.Label,"BODY"),V(e,[t.block[0],[]]),e(n.Op.Fetch,n.$s1),e(n.Op.JumpUnless,g("END")),e(n.Op.CloseElement),e(f.Label,"END"),e(n.Op.Load,n.$s1),e(f.StopLabels)}function ee(e,t,r,i,o=null){e(n.Op.BeginComponentTransaction,n.$s0),e(n.Op.PushDynamicScope),e(n.Op.CreateComponent,0|t,n.$s0),o&&o(),e(n.Op.RegisterComponentDestructor,n.$s0),e(n.Op.GetComponentSelf,n.$s0),e(n.Op.VirtualRootScope,n.$s0),e(n.Op.SetVariable,0),e(n.Op.SetupForEval,n.$s0),i&&e(n.Op.SetNamedVariables,n.$s0),r&&e(n.Op.SetBlocks,n.$s0),e(n.Op.Pop,1),e(n.Op.InvokeComponentLayout,n.$s0),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),e(n.Op.PopDynamicScope),e(n.Op.CommitComponentTransaction)}function te(e,t,r){G(e,(()=>e(n.Op.ContentType)),(i=>{i(n.ContentType.String,(()=>{t?(e(n.Op.AssertSame),e(n.Op.AppendHTML)):e(n.Op.AppendText)})),"number"==typeof r?(i(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),function(e){e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame),e(n.Op.PushEmptyArgs),e(n.Op.PrepareArgs,n.$s0),ee(e,!1,!1,!0,(()=>{e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}(e)})),i(n.ContentType.Helper,(()=>{A(e,null,null,(()=>{e(n.MachineOp.InvokeStatic,r)}))}))):(i(n.ContentType.Component,(()=>{e(n.Op.AppendText)})),i(n.ContentType.Helper,(()=>{e(n.Op.AppendText)}))),i(n.ContentType.SafeString,(()=>{e(n.Op.AssertSame),e(n.Op.AppendSafeHTML)})),i(n.ContentType.Fragment,(()=>{e(n.Op.AssertSame),e(n.Op.AppendDocumentFragment)})),i(n.ContentType.Node,(()=>{e(n.Op.AssertSame),e(n.Op.AppendNode)}))}))}function re(e){let t=ie(e,(e=>function(e){e(n.Op.Main,n.$s0),ee(e,!1,!1,!0)}(e))),r=ie(e,(e=>te(e,!0,null))),i=ie(e,(e=>te(e,!1,null))),o=ie(e,(e=>te(e,!0,r))),s=ie(e,(e=>te(e,!1,i))) +return new C(t,o,s,r,i)}const ne={evalSymbols:null,upvars:null,moduleName:"stdlib",scopeValues:null,isStrictMode:!0,owner:null,size:0} +function ie(e,t){let{constants:r,heap:n,resolver:i}=e,o=new E(n,ne) +t((function(...e){w(o,r,i,ne,e)})) let s=o.commit(0) if("number"!=typeof s)throw new Error("Unexpected errors compiling std") -return s}class ue{constructor({constants:e,heap:t},r,n){this.constants=void 0,this.heap=void 0,this.stdlib=void 0,this.resolver=r,this.createOp=n,this.constants=e,this.heap=t,this.stdlib=se(this)}}function ce(e,t){return{program:e,encoder:new S(e.heap,t,e.stdlib),meta:t}}e.CompileTimeCompilationContextImpl=ue -const pe=new F,de=["class","id","value","name","type","style","href"],he=["div","span","p","a"] -function fe(e){return"string"==typeof e?e:he[e]}function me(e){return"string"==typeof e?e:de[e]}function ge(e){if(null===e)return null -return[e[0].map((e=>`@${e}`)),e[1]]}pe.add(o.SexpOpcodes.Comment,((e,t)=>e(n.Op.Comment,t[1]))),pe.add(o.SexpOpcodes.CloseElement,(e=>e(n.Op.CloseElement))),pe.add(o.SexpOpcodes.FlushElement,(e=>e(n.Op.FlushElement))),pe.add(o.SexpOpcodes.Modifier,((e,[,t,r,i])=>{c(t)?e(b.Modifier,t,(t=>{e(n.MachineOp.PushFrame),H(e,r,i,!1),e(n.Op.Modifier,t),e(n.MachineOp.PopFrame)})):(U(e,t),e(n.MachineOp.PushFrame),H(e,r,i,!1),e(n.Op.Dup,n.$fp,1),e(n.Op.DynamicModifier),e(n.MachineOp.PopFrame))})),pe.add(o.SexpOpcodes.StaticAttr,((e,[,t,r,i])=>{e(n.Op.StaticAttr,me(t),r,i??null)})),pe.add(o.SexpOpcodes.StaticComponentAttr,((e,[,t,r,i])=>{e(n.Op.StaticComponentAttr,me(t),r,i??null)})),pe.add(o.SexpOpcodes.DynamicAttr,((e,[,t,r,i])=>{U(e,r),e(n.Op.DynamicAttr,me(t),!1,i??null)})),pe.add(o.SexpOpcodes.TrustingDynamicAttr,((e,[,t,r,i])=>{U(e,r),e(n.Op.DynamicAttr,me(t),!0,i??null)})),pe.add(o.SexpOpcodes.ComponentAttr,((e,[,t,r,i])=>{U(e,r),e(n.Op.ComponentAttr,me(t),!1,i??null)})),pe.add(o.SexpOpcodes.TrustingComponentAttr,((e,[,t,r,i])=>{U(e,r),e(n.Op.ComponentAttr,me(t),!0,i??null)})),pe.add(o.SexpOpcodes.OpenElement,((e,[,t])=>{e(n.Op.OpenElement,fe(t))})),pe.add(o.SexpOpcodes.OpenElementWithSplat,((e,[,t])=>{e(n.Op.PutComponentOperations),e(n.Op.OpenElement,fe(t))})),pe.add(o.SexpOpcodes.Component,((e,[,t,r,n,i])=>{u(t)?e(b.Component,t,(t=>{ee(e,t,r,null,n,i)})):te(e,t,r,null,n,i,!0,!0)})),pe.add(o.SexpOpcodes.Yield,((e,[,t,r])=>q(e,t,r))),pe.add(o.SexpOpcodes.AttrSplat,((e,[,t])=>q(e,t,null))),pe.add(o.SexpOpcodes.Debugger,((e,[,t])=>e(n.Op.Debugger,{type:v.DebugSymbols,value:void 0},t))),pe.add(o.SexpOpcodes.Append,((e,[,t])=>{if(Array.isArray(t))if(f(t))e(b.OptionalComponentOrHelper,t,{ifComponent(t){ee(e,t,null,null,null,null)},ifHelper(t){e(n.MachineOp.PushFrame),j(e,t,null,null),e(n.MachineOp.InvokeStatic,w("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)},ifValue(t){e(n.MachineOp.PushFrame),e(n.Op.ConstantReference,t),e(n.MachineOp.InvokeStatic,w("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}) +return s}class oe{constructor({constants:e,heap:t},r,n){this.constants=void 0,this.heap=void 0,this.stdlib=void 0,this.resolver=r,this.createOp=n,this.constants=e,this.heap=t,this.stdlib=re(this)}}function se(e,t){return{program:e,encoder:new E(e.heap,t,e.stdlib),meta:t}}e.CompileTimeCompilationContextImpl=oe +const ae=new N,le=["class","id","value","name","type","style","href"],ue=["div","span","p","a"] +function ce(e){return"string"==typeof e?e:ue[e]}function pe(e){return"string"==typeof e?e:le[e]}function de(e){if(null===e)return null +return[e[0].map((e=>`@${e}`)),e[1]]}ae.add(o.SexpOpcodes.Comment,((e,t)=>e(n.Op.Comment,t[1]))),ae.add(o.SexpOpcodes.CloseElement,(e=>e(n.Op.CloseElement))),ae.add(o.SexpOpcodes.FlushElement,(e=>e(n.Op.FlushElement))),ae.add(o.SexpOpcodes.Modifier,((e,[,t,r,i])=>{u(t)?e(h.Modifier,t,(t=>{e(n.MachineOp.PushFrame),F(e,r,i,!1),e(n.Op.Modifier,t),e(n.MachineOp.PopFrame)})):(I(e,t),e(n.MachineOp.PushFrame),F(e,r,i,!1),e(n.Op.Dup,n.$fp,1),e(n.Op.DynamicModifier),e(n.MachineOp.PopFrame))})),ae.add(o.SexpOpcodes.StaticAttr,((e,[,t,r,i])=>{e(n.Op.StaticAttr,pe(t),r,i??null)})),ae.add(o.SexpOpcodes.StaticComponentAttr,((e,[,t,r,i])=>{e(n.Op.StaticComponentAttr,pe(t),r,i??null)})),ae.add(o.SexpOpcodes.DynamicAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.DynamicAttr,pe(t),!1,i??null)})),ae.add(o.SexpOpcodes.TrustingDynamicAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.DynamicAttr,pe(t),!0,i??null)})),ae.add(o.SexpOpcodes.ComponentAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.ComponentAttr,pe(t),!1,i??null)})),ae.add(o.SexpOpcodes.TrustingComponentAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.ComponentAttr,pe(t),!0,i??null)})),ae.add(o.SexpOpcodes.OpenElement,((e,[,t])=>{e(n.Op.OpenElement,ce(t))})),ae.add(o.SexpOpcodes.OpenElementWithSplat,((e,[,t])=>{e(n.Op.PutComponentOperations),e(n.Op.OpenElement,ce(t))})),ae.add(o.SexpOpcodes.Component,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,r,null,n,i)})):J(e,t,r,null,n,i,!0,!0)})),ae.add(o.SexpOpcodes.Yield,((e,[,t,r])=>H(e,t,r))),ae.add(o.SexpOpcodes.AttrSplat,((e,[,t])=>H(e,t,null))),ae.add(o.SexpOpcodes.Debugger,((e,[,t])=>e(n.Op.Debugger,{type:m.DebugSymbols,value:void 0},t))),ae.add(o.SexpOpcodes.Append,((e,[,t])=>{if(Array.isArray(t))if(p(t))e(h.OptionalComponentOrHelper,t,{ifComponent(t){K(e,t,null,null,null,null)},ifHelper(t){e(n.MachineOp.PushFrame),x(e,t,null,null),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)},ifValue(t){e(n.MachineOp.PushFrame),e(n.Op.ConstantReference,t),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}) else if(t[0]===o.SexpOpcodes.Call){let[,r,i,o]=t -d(r)?e(b.ComponentOrHelper,r,{ifComponent(t){ee(e,t,null,i,ge(o),null)},ifHelper(t){e(n.MachineOp.PushFrame),j(e,t,i,o),e(n.MachineOp.InvokeStatic,w("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}):K(e,(()=>{U(e,r),e(n.Op.DynamicContentType)}),(t=>{t(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),re(e,{capabilities:!0,elementBlock:null,positional:i,named:o,atNames:!1,blocks:A(null)})})),t(n.ContentType.Helper,(()=>{D(e,i,o,(()=>{e(n.MachineOp.InvokeStatic,w("cautious-non-dynamic-append"))}))}))}))}else e(n.MachineOp.PushFrame),U(e,t),e(n.MachineOp.InvokeStatic,w("cautious-append")),e(n.MachineOp.PopFrame) -else e(n.Op.Text,null==t?"":String(t))})),pe.add(o.SexpOpcodes.TrustingAppend,((e,[,t])=>{Array.isArray(t)?(e(n.MachineOp.PushFrame),U(e,t),e(n.MachineOp.InvokeStatic,w("trusting-append")),e(n.MachineOp.PopFrame)):e(n.Op.Text,null==t?"":String(t))})),pe.add(o.SexpOpcodes.Block,((e,[,t,r,n,i])=>{u(t)?e(b.Component,t,(t=>{ee(e,t,null,r,ge(n),i)})):te(e,t,null,r,n,i,!1,!1)})),pe.add(o.SexpOpcodes.InElement,((e,[,t,r,i,o])=>{X(e,(()=>(U(e,r),void 0===o?M(e,void 0):U(e,o),U(e,i),e(n.Op.Dup,n.$sp,0),4)),(()=>{e(n.Op.PushRemoteElement),W(e,t),e(n.Op.PopRemoteElement)}))})),pe.add(o.SexpOpcodes.If,((e,[,t,r,i])=>X(e,(()=>(U(e,t),e(n.Op.ToBoolean),1)),(()=>{W(e,r)}),i?()=>{W(e,i)}:void 0))),pe.add(o.SexpOpcodes.Each,((e,[,t,r,i,o])=>J(e,(()=>(r?U(e,r):M(e,null),U(e,t),2)),(()=>{e(n.Op.EnterList,_("BODY"),_("ELSE")),e(n.MachineOp.PushFrame),e(n.Op.Dup,n.$fp,1),e(n.MachineOp.ReturnTo,_("ITER")),e(y.Label,"ITER"),e(n.Op.Iterate,_("BREAK")),e(y.Label,"BODY"),Y(e,i,2),e(n.Op.Pop,2),e(n.MachineOp.Jump,_("FINALLY")),e(y.Label,"BREAK"),e(n.MachineOp.PopFrame),e(n.Op.ExitList),e(n.MachineOp.Jump,_("FINALLY")),e(y.Label,"ELSE"),o&&W(e,o)})))),pe.add(o.SexpOpcodes.With,((e,[,t,r,i])=>{X(e,(()=>(U(e,t),e(n.Op.Dup,n.$sp,0),e(n.Op.ToBoolean),2)),(()=>{Y(e,r,1)}),(()=>{i&&W(e,i)}))})),pe.add(o.SexpOpcodes.Let,((e,[,t,r])=>{Y(e,r,$(e,t))})),pe.add(o.SexpOpcodes.WithDynamicVars,((e,[,t,r])=>{if(t){let[i,o]=t -$(e,o),function(e,t,r){e(n.Op.PushDynamicScope),e(n.Op.BindDynamicScope,t),r(),e(n.Op.PopDynamicScope)}(e,i,(()=>{W(e,r)}))}else W(e,r)})),pe.add(o.SexpOpcodes.InvokeComponent,((e,[,t,r,n,i])=>{u(t)?e(b.Component,t,(t=>{ee(e,t,null,r,ge(n),i)})):te(e,t,null,r,n,i,!1,!1)})) -class be{constructor(e,t,r,n="plain block"){this.compiled=null,this.statements=e,this.meta=t,this.symbolTable=r,this.moduleName=n}compile(e){return function(e,t){if(null!==e.compiled)return e.compiled +p(r)?e(h.ComponentOrHelper,r,{ifComponent(t){K(e,t,null,i,de(o),null)},ifHelper(t){e(n.MachineOp.PushFrame),x(e,t,i,o),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}):G(e,(()=>{I(e,r),e(n.Op.DynamicContentType)}),(t=>{t(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),X(e,{capabilities:!0,elementBlock:null,positional:i,named:o,atNames:!1,blocks:R(null)})})),t(n.ContentType.Helper,(()=>{A(e,i,o,(()=>{e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append"))}))}))}))}else e(n.MachineOp.PushFrame),I(e,t),e(n.MachineOp.InvokeStatic,y("cautious-append")),e(n.MachineOp.PopFrame) +else e(n.Op.Text,null==t?"":String(t))})),ae.add(o.SexpOpcodes.TrustingAppend,((e,[,t])=>{Array.isArray(t)?(e(n.MachineOp.PushFrame),I(e,t),e(n.MachineOp.InvokeStatic,y("trusting-append")),e(n.MachineOp.PopFrame)):e(n.Op.Text,null==t?"":String(t))})),ae.add(o.SexpOpcodes.Block,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,null,r,de(n),i)})):J(e,t,null,r,n,i,!1,!1)})),ae.add(o.SexpOpcodes.InElement,((e,[,t,r,i,o])=>{Y(e,(()=>(I(e,r),void 0===o?S(e,void 0):I(e,o),I(e,i),e(n.Op.Dup,n.$sp,0),4)),(()=>{e(n.Op.PushRemoteElement),V(e,t),e(n.Op.PopRemoteElement)}))})),ae.add(o.SexpOpcodes.If,((e,[,t,r,i])=>Y(e,(()=>(I(e,t),e(n.Op.ToBoolean),1)),(()=>{V(e,r)}),i?()=>{V(e,i)}:void 0))),ae.add(o.SexpOpcodes.Each,((e,[,t,r,i,o])=>W(e,(()=>(r?I(e,r):S(e,null),I(e,t),2)),(()=>{e(n.Op.EnterList,g("BODY"),g("ELSE")),e(n.MachineOp.PushFrame),e(n.Op.Dup,n.$fp,1),e(n.MachineOp.ReturnTo,g("ITER")),e(f.Label,"ITER"),e(n.Op.Iterate,g("BREAK")),e(f.Label,"BODY"),z(e,i,2),e(n.Op.Pop,2),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"BREAK"),e(n.MachineOp.PopFrame),e(n.Op.ExitList),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"ELSE"),o&&V(e,o)})))),ae.add(o.SexpOpcodes.Let,((e,[,t,r])=>{z(e,r,L(e,t))})),ae.add(o.SexpOpcodes.WithDynamicVars,((e,[,t,r])=>{if(t){let[i,o]=t +L(e,o),function(e,t,r){e(n.Op.PushDynamicScope),e(n.Op.BindDynamicScope,t),r(),e(n.Op.PopDynamicScope)}(e,i,(()=>{V(e,r)}))}else V(e,r)})),ae.add(o.SexpOpcodes.InvokeComponent,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,null,r,de(n),i)})):J(e,t,null,r,n,i,!1,!1)})) +class he{constructor(e,t,r,n="plain block"){this.compiled=null,this.statements=e,this.meta=t,this.symbolTable=r,this.moduleName=n}compile(e){return function(e,t){if(null!==e.compiled)return e.compiled e.compiled=-1 -let{statements:r,meta:n}=e,i=ve(r,n,t) -return e.compiled=i,i}(this,e)}}function ye(e,t){let[r,n,i]=e.block -return new be(r,V(e),{symbols:n,hasEval:i},t)}function ve(e,t,r){let n=pe,i=ce(r,t),{encoder:o,program:{constants:s,resolver:a}}=i -function l(...e){T(o,s,a,t,e)}for(const u of e)n.compile(l,u) +let{statements:r,meta:n}=e,i=me(r,n,t) +return e.compiled=i,i}(this,e)}}function fe(e,t){let[r,n,i]=e.block +return new he(r,B(e),{symbols:n,hasEval:i},t)}function me(e,t,r){let n=ae,i=se(r,t),{encoder:o,program:{constants:s,resolver:a}}=i +function l(...e){w(o,s,a,t,e)}for(const u of e)n.compile(l,u) return i.encoder.commit(t.size)}e.DEFAULT_CAPABILITIES={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!1,elementHook:!1,dynamicScope:!0,createCaller:!1,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1},e.MINIMAL_CAPABILITIES={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,dynamicScope:!1,createCaller:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class _e{constructor(e,t){this.symbolTable=void 0,this.compiled=null,this.attrsBlockNumber=void 0,this.layout=e,this.moduleName=t +class ge{constructor(e,t){this.symbolTable=void 0,this.compiled=null,this.attrsBlockNumber=void 0,this.layout=e,this.moduleName=t let{block:r}=e,[,n,i]=r n=n.slice() -let o=n.indexOf(Z) -this.attrsBlockNumber=-1===o?n.push(Z):o+1,this.symbolTable={hasEval:i,symbols:n}}compile(e){if(null!==this.compiled)return this.compiled -let t=V(this.layout),r=ce(e,t),{encoder:n,program:{constants:i,resolver:o}}=r -ne((function(...e){T(n,i,o,t,e)}),this.layout,this.attrsBlockNumber) +let o=n.indexOf(Q) +this.attrsBlockNumber=-1===o?n.push(Q):o+1,this.symbolTable={hasEval:i,symbols:n}}compile(e){if(null!==this.compiled)return this.compiled +let t=B(this.layout),r=se(e,t),{encoder:n,program:{constants:i,resolver:o}}=r +Z((function(...e){w(n,i,o,t,e)}),this.layout,this.attrsBlockNumber) let s=r.encoder.commit(t.size) -return"number"!=typeof s||(this.compiled=s),s}}e.WrappedBuilder=_e -let Oe=0,we=e.templateCacheCounters={cacheHit:0,cacheMiss:0} -class Ce{constructor(e){this.result="ok",this.layout=null,this.wrappedLayout=null,this.parsedLayout=e}get moduleName(){return this.parsedLayout.moduleName}get id(){return this.parsedLayout.id}get referrer(){return{moduleName:this.parsedLayout.moduleName,owner:this.parsedLayout.owner}}asLayout(){return this.layout?this.layout:this.layout=ye((0,t.assign)({},this.parsedLayout),this.moduleName)}asWrappedLayout(){return this.wrappedLayout?this.wrappedLayout:this.wrappedLayout=new _e((0,t.assign)({},this.parsedLayout),this.moduleName)}}})),e("@glimmer/owner",["exports"],(function(e){"use strict" +return"number"!=typeof s||(this.compiled=s),s}}e.WrappedBuilder=ge +let be=0,ye=e.templateCacheCounters={cacheHit:0,cacheMiss:0} +class ve{constructor(e){this.result="ok",this.layout=null,this.wrappedLayout=null,this.parsedLayout=e}get moduleName(){return this.parsedLayout.moduleName}get id(){return this.parsedLayout.id}get referrer(){return{moduleName:this.parsedLayout.moduleName,owner:this.parsedLayout.owner}}asLayout(){return this.layout?this.layout:this.layout=fe((0,t.assign)({},this.parsedLayout),this.moduleName)}asWrappedLayout(){return this.wrappedLayout?this.wrappedLayout:this.wrappedLayout=new ge((0,t.assign)({},this.parsedLayout),this.moduleName)}}})),e("@glimmer/owner",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.OWNER=void 0,e.getOwner=function(e){return e[t]},e.setOwner=function(e,r){e[t]=r} const t=e.OWNER=Symbol("OWNER")})),e("@glimmer/program",["exports","@glimmer/manager","@glimmer/opcode-compiler","@glimmer/util","@glimmer/vm","@glimmer/wire-format"],(function(e,t,r,n,i,o){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.RuntimeProgramImpl=e.RuntimeOpImpl=e.RuntimeHeapImpl=e.RuntimeConstantsImpl=e.HeapImpl=e.ConstantsImpl=e.CompileTimeConstantImpl=void 0,e.artifacts=function(){return{constants:new d,heap:new b}},e.hydrateHeap=function(e){return new g(e)} @@ -2175,11 +2174,11 @@ return r},e.createComputeRef=h,e.createConstRef=function(e,t){const r=new u(o) r.lastValue=e,r.tag=n.CONSTANT_TAG,!1 return r},e.createDebugAliasRef=void 0,e.createInvokableRef=function(e){const t=h((()=>m(e)),(t=>g(e,t))) return t.debugLabel=e.debugLabel,t[i]=l,t},e.createIteratorItemRef=function(e){let t=e,r=(0,n.createTag)() -return h((()=>((0,n.consumeTag)(r),t)),(e=>{t!==e&&(t=e,(0,n.dirtyTag)(r))}))},e.createIteratorRef=function(e,n){return h((()=>{let i=m(e),o=function(e){switch(e){case"@key":return E(v) -case"@index":return E(_) -case"@identity":return E(O) +return h((()=>((0,n.consumeTag)(r),t)),(e=>{t!==e&&(t=e,(0,n.dirtyTag)(r))}))},e.createIteratorRef=function(e,n){return h((()=>{let i=m(e),o=function(e){switch(e){case"@key":return C(v) +case"@index":return C(_) +case"@identity":return C(O) default:return function(e){0 -return E((r=>(0,t.getPath)(r,e)))}(e)}}(n) +return C((r=>(0,t.getPath)(r,e)))}(e)}}(n) if(Array.isArray(i))return new T(i,o) let s=(0,t.toIterator)(i) return null===s?new T(r.EMPTY_ARRAY,(()=>null)):new k(s,o)}))},e.createPrimitiveRef=c,e.createReadOnlyRef=function(e){return f(e)?h((()=>m(e)),null,e.debugLabel):e},e.createUnboundRef=d,e.isConstRef=function(e){return e.tag===n.CONSTANT_TAG},e.isInvokableRef=function(e){return e[i]===l},e.isUpdatableRef=f,e.updateRef=g,e.valueForRef=m @@ -2206,11 +2205,11 @@ if((0,r.isDict)(e))return(0,t.getProp)(e,n)}),(e=>{const i=m(o) if((0,r.isDict)(i))return(0,t.setProp)(i,n,e)})) return u.set(n,l),l}e.createDebugAliasRef=void 0 const y={},v=(e,t)=>t,_=(e,t)=>String(t),O=e=>null===e?y:e -class w{constructor(){this._weakMap=void 0,this._primitiveMap=void 0}get weakMap(){return void 0===this._weakMap&&(this._weakMap=new WeakMap),this._weakMap}get primitiveMap(){return void 0===this._primitiveMap&&(this._primitiveMap=new Map),this._primitiveMap}set(e,t){(0,r.isObject)(e)?this.weakMap.set(e,t):this.primitiveMap.set(e,t)}get(e){return(0,r.isObject)(e)?this.weakMap.get(e):this.primitiveMap.get(e)}}const C=new w -function E(e){let t=new w +class w{constructor(){this._weakMap=void 0,this._primitiveMap=void 0}get weakMap(){return void 0===this._weakMap&&(this._weakMap=new WeakMap),this._weakMap}get primitiveMap(){return void 0===this._primitiveMap&&(this._primitiveMap=new Map),this._primitiveMap}set(e,t){(0,r.isObject)(e)?this.weakMap.set(e,t):this.primitiveMap.set(e,t)}get(e){return(0,r.isObject)(e)?this.weakMap.get(e):this.primitiveMap.get(e)}}const E=new w +function C(e){let t=new w return(r,n)=>{let i=e(r,n),o=t.get(i)||0 -return t.set(i,o+1),0===o?i:function(e,t){let r=C.get(e) -void 0===r&&(r=[],C.set(e,r)) +return t.set(i,o+1),0===o?i:function(e,t){let r=E.get(e) +void 0===r&&(r=[],E.set(e,r)) let n=r[t] return void 0===n&&(n={value:e,count:t},r[t]=n),n}(i,o)}}class k{constructor(e,t){this.inner=e,this.keyFor=t}isEmpty(){return this.inner.isEmpty()}next(){let e=this.inner.next() return null!==e&&(e.key=this.keyFor(e.value,e.memo)),e}}class T{constructor(e,t){this.current=void 0,this.pos=0,this.iterator=e,this.keyFor=t,0===e.length?this.current={kind:"empty"}:this.current={kind:"first",value:e[this.pos]}}isEmpty(){return"empty"===this.current.kind}next(){let e,t=this.current @@ -2218,25 +2217,25 @@ if("first"===t.kind)this.current={kind:"progress"},e=t.value else{if(this.pos>=this.iterator.length-1)return null e=this.iterator[++this.pos]}let{keyFor:r}=this return{key:r(e,this.pos),value:e,memo:this.pos}}}})),e("@glimmer/runtime",["exports","@glimmer/debug","@glimmer/reference","@glimmer/util","@glimmer/vm","@glimmer/destroyable","@glimmer/global-context","@glimmer/manager","@glimmer/validator","@glimmer/program","@glimmer/owner"],(function(e,t,r,n,i,o,s,a,l,u,c){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.array=e.UpdatingVM=e.UpdatableBlockImpl=e.TemplateOnlyComponentManager=e.TemplateOnlyComponent=e.TEMPLATE_ONLY_COMPONENT_MANAGER=e.SimpleDynamicAttribute=e.SERIALIZATION_FIRST_NODE_STRING=e.RemoteLiveBlock=e.RehydrateBuilder=e.PartialScopeImpl=e.NewElementBuilder=e.LowLevelVM=e.IDOMChanges=e.EnvironmentImpl=e.EMPTY_POSITIONAL=e.EMPTY_NAMED=e.EMPTY_ARGS=e.DynamicScopeImpl=e.DynamicAttribute=e.DOMTreeConstruction=e.DOMChanges=e.CursorImpl=e.CurriedValue=e.ConcreteBounds=void 0,e.clear=C,e.clientBuilder=function(e,t){return re.forInitialRender(e,t)},e.concat=void 0,e.createCapturedArgs=lt,e.curry=ye,Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return o.destroy}}),e.dynamicAttribute=V,e.hash=e.get=e.fn=void 0,e.inTransaction=Gt,e.invokeHelper=function(e,t,r){0 +Object.defineProperty(e,"__esModule",{value:!0}),e.array=e.UpdatingVM=e.UpdatableBlockImpl=e.TemplateOnlyComponentManager=e.TemplateOnlyComponent=e.TEMPLATE_ONLY_COMPONENT_MANAGER=e.SimpleDynamicAttribute=e.SERIALIZATION_FIRST_NODE_STRING=e.RemoteLiveBlock=e.RehydrateBuilder=e.PartialScopeImpl=e.NewElementBuilder=e.LowLevelVM=e.IDOMChanges=e.EnvironmentImpl=e.EMPTY_POSITIONAL=e.EMPTY_NAMED=e.EMPTY_ARGS=e.DynamicScopeImpl=e.DynamicAttribute=e.DOMTreeConstruction=e.DOMChanges=e.CursorImpl=e.CurriedValue=e.ConcreteBounds=void 0,e.clear=E,e.clientBuilder=function(e,t){return re.forInitialRender(e,t)},e.concat=void 0,e.createCapturedArgs=lt,e.curry=ye,Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return o.destroy}}),e.dynamicAttribute=V,e.hash=e.get=e.fn=void 0,e.inTransaction=Qt,e.invokeHelper=function(e,t,r){0 const n=(0,c.getOwner)(e),i=(0,a.getInternalHelperManager)(t) 0 0 const s=i.getDelegateFor(n) -let u,p=new Xt(e,r),d=s.createHelper(t,p) +let u,p=new tr(e,r),d=s.createHelper(t,p) if(!(0,a.hasValue)(s))throw new Error("TODO: unreachable, to be implemented with hasScheduledEffect") u=(0,l.createCache)((()=>s.getValue(d))),(0,o.associateDestroyableChild)(e,u) -if((0,a.hasDestroyable)(s)){let e=s.getDestroyable(d);(0,o.associateDestroyableChild)(u,e)}return u},Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return o.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return o.isDestroying}}),e.isSerializationFirstNode=function(e){return e.nodeValue===vr},e.isWhitespace=function(e){return It.test(e)},e.normalizeProperty=P,e.on=void 0,Object.defineProperty(e,"registerDestructor",{enumerable:!0,get:function(){return o.registerDestructor}}),e.rehydrationBuilder=function(e,t){return Or.forInitialRender(e,t)},e.reifyArgs=pt,e.reifyNamed=ut,e.reifyPositional=ct,e.renderComponent=function(e,t,i,o,s,a={},l=new p){let u=mr.empty(e,{treeBuilder:t,handle:i.stdlib.main,dynamicScope:l,owner:o},i) +if((0,a.hasDestroyable)(s)){let e=s.getDestroyable(d);(0,o.associateDestroyableChild)(u,e)}return u},Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return o.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return o.isDestroying}}),e.isSerializationFirstNode=function(e){return e.nodeValue===Or},e.isWhitespace=function(e){return Bt.test(e)},e.normalizeProperty=P,e.on=void 0,Object.defineProperty(e,"registerDestructor",{enumerable:!0,get:function(){return o.registerDestructor}}),e.rehydrationBuilder=function(e,t){return Er.forInitialRender(e,t)},e.reifyArgs=function(e){return{named:ut(e.named),positional:ct(e.positional)}},e.reifyNamed=ut,e.reifyPositional=ct,e.renderComponent=function(e,t,i,o,s,a={},l=new p){let u=br.empty(e,{treeBuilder:t,handle:i.stdlib.main,dynamicScope:l,owner:o},i) return function(e,t,r,i,o){const s=Object.keys(o).map((e=>[e,o[e]])),a=["main","else","attrs"],l=s.map((([e])=>`@${e}`)) let u=e[y].component(i,r) e.pushFrame() for(let n=0;n<3*a.length;n++)e.stack.push(null) e.stack.push(null),s.forEach((([,t])=>{e.stack.push(t)})),e[v].setup(e.stack,l,a,0,!0) const c=(0,n.expect)(u.compilable,"BUG: Expected the root component rendered with renderComponent to have an associated template, set with setComponentTemplate"),p=(0,n.unwrapHandle)(c.compile(t)),d={handle:p,symbolTable:c.symbolTable} -return e.stack.push(e[v]),e.stack.push(d),e.stack.push(u),new yr(e)}(u,i,o,s,function(e){const t=(0,r.createConstRef)(e,"args") -return Object.keys(e).reduce(((e,n)=>(e[n]=(0,r.childRefFor)(t,n),e)),{})}(a))},e.renderMain=function(e,t,r,i,o,s,a=new p){let l=(0,n.unwrapHandle)(s.compile(t)),u=s.symbolTable.symbols.length,c=mr.initial(e,t,{self:i,dynamicScope:a,treeBuilder:o,handle:l,numSymbols:u,owner:r}) -return new yr(c)},e.renderSync=function(e,t){let r -return Gt(e,(()=>r=t.sync())),r},e.resetDebuggerCallback=function(){wt=Ot},e.runtimeContext=function(e,t,r,n){return{env:new qt(e,t),program:new u.RuntimeProgramImpl(r.constants,r.heap),resolver:n}},e.setDebuggerCallback=function(e){wt=e},e.templateOnlyComponent=function(e,t){return new St(e,t)} +return e.stack.push(e[v]),e.stack.push(d),e.stack.push(u),new _r(e)}(u,i,o,s,function(e){const t=(0,r.createConstRef)(e,"args") +return Object.keys(e).reduce(((e,n)=>(e[n]=(0,r.childRefFor)(t,n),e)),{})}(a))},e.renderMain=function(e,t,r,i,o,s,a=new p){let l=(0,n.unwrapHandle)(s.compile(t)),u=s.symbolTable.symbols.length,c=br.initial(e,t,{self:i,dynamicScope:a,treeBuilder:o,handle:l,numSymbols:u,owner:r}) +return new _r(c)},e.renderSync=function(e,t){let r +return Qt(e,(()=>r=t.sync())),r},e.resetDebuggerCallback=function(){kt=Ct},e.runtimeContext=function(e,t,r,n){return{env:new Yt(e,t),program:new u.RuntimeProgramImpl(r.constants,r.heap),resolver:n}},e.setDebuggerCallback=function(e){kt=e},e.templateOnlyComponent=function(e,t){return new xt(e,t)} class p{constructor(e){this.bucket=void 0,this.bucket=e?(0,n.assign)({},e):{}}get(e){return(0,n.unwrap)(this.bucket[e])}set(e,t){return this.bucket[e]=t}child(){return new p(this.bucket)}}e.DynamicScopeImpl=p class d{static root(e,t=0,n){let i=new Array(t+1).fill(r.UNDEFINED_REFERENCE) return new d(i,n,null,null,null).init({self:e})}static sized(e=0,t){let n=new Array(e+1).fill(r.UNDEFINED_REFERENCE) @@ -2249,17 +2248,17 @@ class _{constructor(e,t){this.element=e,this.nextSibling=t}}e.CursorImpl=_ class O{constructor(e,t,r){this.parentNode=e,this.first=t,this.last=r}parentElement(){return this.parentNode}firstNode(){return this.first}lastNode(){return this.last}}function w(e,t){let r=e.parentElement(),i=e.firstNode(),o=e.lastNode(),s=i for(;;){let e=s.nextSibling if(r.insertBefore(s,t),s===o)return e -s=(0,n.expect)(e,"invalid bounds")}}function C(e){let t=e.parentElement(),r=e.firstNode(),i=e.lastNode(),o=r +s=(0,n.expect)(e,"invalid bounds")}}function E(e){let t=e.parentElement(),r=e.firstNode(),i=e.lastNode(),o=r for(;;){let e=o.nextSibling if(t.removeChild(o),o===i)return e -o=(0,n.expect)(e,"invalid bounds")}}function E(e){return k(e)?"":String(e)}function k(e){return null==e||"function"!=typeof e.toString}function T(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}function S(e){return"object"==typeof e&&null!==e&&"number"==typeof e.nodeType}function R(e){return"string"==typeof e}function P(e,t){let r,n +o=(0,n.expect)(e,"invalid bounds")}}function C(e){return k(e)?"":String(e)}function k(e){return null==e||"function"!=typeof e.toString}function T(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}function R(e){return"object"==typeof e&&null!==e&&"number"==typeof e.nodeType}function S(e){return"string"==typeof e}function P(e,t){let r,n if(t in e)n=t,r="prop" else{let i=t.toLowerCase() i in e?(r="prop",n=i):(r="attr",n=t)}return"prop"!==r||"style"!==n.toLowerCase()&&!function(e,t){let r=x[e.toUpperCase()] return r&&r[t.toLowerCase()]||!1}(e.tagName,n)||(r="attr"),{normalized:n,type:r}}e.ConcreteBounds=O const x={INPUT:{form:!0,autocorrect:!0,list:!0},SELECT:{form:!0},OPTION:{form:!0},TEXTAREA:{form:!0},LABEL:{form:!0},FIELDSET:{form:!0},LEGEND:{form:!0},OBJECT:{form:!0},OUTPUT:{form:!0},BUTTON:{form:!0}} -const A=["javascript:","vbscript:"],M=["A","BODY","LINK","IMG","IFRAME","BASE","FORM"],N=["EMBED"],j=["href","src","background","action"],D=["src"] -function I(e,t){return-1!==e.indexOf(t)}function F(e,t){return(null===e||I(M,e))&&I(j,t)}function L(e,t){return null!==e&&(I(N,e)&&I(D,t))}function B(e,t){return F(e,t)||L(e,t)}let U +const A=["javascript:","vbscript:"],M=["A","BODY","LINK","IMG","IFRAME","BASE","FORM"],N=["EMBED"],D=["href","src","background","action"],j=["src"] +function I(e,t){return-1!==e.indexOf(t)}function F(e,t){return(null===e||I(M,e))&&I(D,t)}function L(e,t){return null!==e&&(I(N,e)&&I(j,t))}function B(e,t){return F(e,t)||L(e,t)}let U function H(e){return U||(U=function(){if("object"==typeof URL&&null!==URL&&"function"==typeof URL.parse){let e=URL return t=>{let r=null return"string"==typeof t&&(r=e.parse(t).protocol),null===r?":":r}}if("function"==typeof URL)return e=>{try{return new URL(e).protocol}catch(t){return":"}} @@ -2267,7 +2266,7 @@ throw new Error('@glimmer/runtime needs a valid "globalThis.URL"')}()),U(e)}func if(null==r)return r if(T(r))return r.toHTML() n=e?e.tagName.toUpperCase():null -let i=E(r) +let i=C(r) if(F(n,t)){let e=H(i) if(I(A,e))return`unsafe:${i}`}return L(n,t)?`unsafe:${i}`:i}function V(e,t,r,i=!1){const{tagName:o,namespaceURI:s}=e,a={element:e,name:t,namespace:r} if(s===n.NS_SVG)return z(o,t,a) @@ -2286,7 +2285,7 @@ t?e.removeAttributeNS(t,this.normalizedName):e.removeAttribute(this.normalizedNa super.set(e,o,r)}update(e,t){const{element:r,name:n}=this.attribute,i=$(r,n,e) super.update(i,t)}}class Q extends G{set(e,t,r){const{element:n,name:i}=this.attribute,o=$(n,i,t) super.set(e,o,r)}update(e,t){const{element:r,name:n}=this.attribute,i=$(r,n,e) -super.update(i,t)}}class K extends W{set(e,t){e.__setProperty("value",E(t))}update(e){const t=(0,n.castToBrowser)(this.attribute.element,["input","textarea"]),r=t.value,i=E(e) +super.update(i,t)}}class K extends W{set(e,t){e.__setProperty("value",C(t))}update(e){const t=(0,n.castToBrowser)(this.attribute.element,["input","textarea"]),r=t.value,i=C(e) r!==i&&(t.value=i)}}class J extends W{set(e,t){null!=t&&!1!==t&&e.__setProperty("selected",!0)}update(e){const t=(0,n.castToBrowser)(this.attribute.element,"option") t.selected=!!e}}function X(e){return!1===e||null==e||void 0===e.toString?null:!0===e?"":"function"==typeof e?null:String(e)}class Z{constructor(e){this.node=e}firstNode(){return this.node}}class ee{constructor(e){this.node=e}lastNode(){return this.node}}const te=Symbol("CURSOR_STACK") class re{static forInitialRender(e,t){return new this(e,t.element,t.nextSibling).initialize()}static resume(e,t){let r=new this(e,t.parentElement(),t.reset(e)).initialize() @@ -2295,7 +2294,8 @@ return null!==r&&(t||r.didAppendBounds(e)),this.__openBlock(),this.blockStack.pu return this.constructing=t,t}__openElement(e){return this.dom.createElement(e,this.element)}flushElement(e){let t=this.element,r=(0,n.expect)(this.constructing,"flushElement should only be called when constructing an element") this.__flushElement(t,r),this.constructing=null,this.operations=null,this.pushModifiers(e),this.pushElement(r,null),this.didOpenElement(r)}__flushElement(e,t){this.dom.insertBefore(e,t,this.nextSibling)}closeElement(){return this.willCloseElement(),this.popElement(),this.popModifiers()}pushRemoteElement(e,t,r){return this.__pushRemoteElement(e,t,r)}__pushRemoteElement(e,t,r){if(this.pushElement(e,r),void 0===r)for(;e.lastChild;)e.removeChild(e.lastChild) let n=new ie(e) -return this.pushLiveBlock(n,!0)}popRemoteElement(){this.popBlock(),this.popElement()}pushElement(e,t=null){this[te].push(new _(e,t))}pushModifiers(e){this.modifierStack.push(e)}popModifiers(){return this.modifierStack.pop()}didAppendBounds(e){return this.block().didAppendBounds(e),e}didAppendNode(e){return this.block().didAppendNode(e),e}didOpenElement(e){return this.block().openElement(e),e}willCloseElement(){this.block().closeElement()}appendText(e){return this.didAppendNode(this.__appendText(e))}__appendText(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createTextNode(e) +return this.pushLiveBlock(n,!0)}popRemoteElement(){const e=this.popBlock() +return(0,n.assert)(e instanceof ie,"[BUG] expecting a RemoteLiveBlock"),this.popElement(),e}pushElement(e,t=null){this[te].push(new _(e,t))}pushModifiers(e){this.modifierStack.push(e)}popModifiers(){return this.modifierStack.pop()}didAppendBounds(e){return this.block().didAppendBounds(e),e}didAppendNode(e){return this.block().didAppendNode(e),e}didOpenElement(e){return this.block().openElement(e),e}willCloseElement(){this.block().closeElement()}appendText(e){return this.didAppendNode(this.__appendText(e))}__appendText(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createTextNode(e) return t.insertBefore(r,i,n),i}__appendNode(e){return this.dom.insertBefore(this.element,e,this.nextSibling),e}__appendFragment(e){let t=e.firstChild if(t){let r=new O(this.element,t,e.lastChild) return this.dom.insertBefore(this.element,e,this.nextSibling),r}{const e=this.__appendComment("") @@ -2306,9 +2306,9 @@ this.didAppendBounds(t)}appendDynamicNode(e){let t=this.__appendNode(e),r=new O( this.didAppendBounds(r)}trustedContent(e){return this.__appendHTML(e)}untrustedContent(e){return this.__appendText(e)}appendComment(e){return this.didAppendNode(this.__appendComment(e))}__appendComment(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createComment(e) return t.insertBefore(r,i,n),i}__setAttribute(e,t,r){this.dom.setAttribute(this.constructing,e,t,r)}__setProperty(e,t){this.constructing[e]=t}setStaticAttribute(e,t,r){this.__setAttribute(e,t,r)}setDynamicAttribute(e,t,r,n){let i=V(this.constructing,e,n,r) return i.set(this,t,this.env),i}}e.NewElementBuilder=re -class ne{constructor(e){this.first=null,this.last=null,this.nesting=0,this.parent=e}parentElement(){return this.parent}firstNode(){return(0,n.expect)(this.first,"cannot call `firstNode()` while `SimpleLiveBlock` is still initializing").firstNode()}lastNode(){return(0,n.expect)(this.last,"cannot call `lastNode()` while `SimpleLiveBlock` is still initializing").lastNode()}openElement(e){this.didAppendNode(e),this.nesting++}closeElement(){this.nesting--}didAppendNode(e){0===this.nesting&&(this.first||(this.first=new Z(e)),this.last=new ee(e))}didAppendBounds(e){0===this.nesting&&(this.first||(this.first=e),this.last=e)}finalize(e){null===this.first&&e.appendComment("")}}class ie extends ne{constructor(e){super(e),(0,o.registerDestructor)(this,(()=>{this.parentElement()===this.firstNode().parentNode&&C(this)}))}}e.RemoteLiveBlock=ie +class ne{constructor(e){this.first=null,this.last=null,this.nesting=0,this.parent=e}parentElement(){return this.parent}firstNode(){return(0,n.expect)(this.first,"cannot call `firstNode()` while `SimpleLiveBlock` is still initializing").firstNode()}lastNode(){return(0,n.expect)(this.last,"cannot call `lastNode()` while `SimpleLiveBlock` is still initializing").lastNode()}openElement(e){this.didAppendNode(e),this.nesting++}closeElement(){this.nesting--}didAppendNode(e){0===this.nesting&&(this.first||(this.first=new Z(e)),this.last=new ee(e))}didAppendBounds(e){0===this.nesting&&(this.first||(this.first=e),this.last=e)}finalize(e){null===this.first&&e.appendComment("")}}class ie extends ne{constructor(e){super(e),(0,o.registerDestructor)(this,(()=>{this.parentElement()===this.firstNode().parentNode&&E(this)}))}}e.RemoteLiveBlock=ie class oe extends ne{reset(){(0,o.destroy)(this) -let e=C(this) +let e=E(this) return this.first=null,this.last=null,this.nesting=0,e}}e.UpdatableBlockImpl=oe class se{constructor(e,t){this.parent=e,this.boundList=t,this.parent=e,this.boundList=t}parentElement(){return this.parent}firstNode(){return(0,n.expect)(this.boundList[0],"cannot call `firstNode()` while `LiveBlockList` is still initializing").firstNode()}lastNode(){let e=this.boundList return(0,n.expect)(e[e.length-1],"cannot call `lastNode()` while `LiveBlockList` is still initializing").lastNode()}openElement(e){(0,n.assert)(!1,"Cannot openElement directly inside a block list")}closeElement(){(0,n.assert)(!1,"Cannot closeElement directly inside a block list")}didAppendNode(e){(0,n.assert)(!1,"Cannot create a new node directly inside a block list")}didAppendBounds(e){}finalize(e){(0,n.assert)(this.boundList.length>0,"boundsList cannot be empty")}}const ae=new class{constructor(){this.evaluateOpcode=new Array(i.Op.Size).fill(null)}add(e,t,r="syscall"){this.evaluateOpcode[e]={syscall:"machine"!==r,evaluate:t}}debugBefore(e,r){let n,o @@ -2336,34 +2336,36 @@ n.push((0,r.createComputeRef)((()=>(0,s.toBool)((0,r.valueForRef)(i)))))})) class _e{constructor(e){this.last=void 0,this.ref=e,this.last=(0,r.valueForRef)(e)}evaluate(e){let{last:t,ref:n}=this t!==(0,r.valueForRef)(n)&&e.throw()}}class Oe{constructor(e,t){this.last=void 0,this.ref=e,this.filter=t,this.last=t((0,r.valueForRef)(e))}evaluate(e){let{last:t,ref:n,filter:i}=this t!==i((0,r.valueForRef)(n))&&e.throw()}}class we{constructor(){this.tag=l.CONSTANT_TAG,this.lastRevision=l.INITIAL,this.target=void 0}finalize(e,t){this.target=t,this.didModify(e)}evaluate(e){let{tag:t,target:r,lastRevision:i}=this -!e.alwaysRevalidate&&(0,l.validateTag)(t,i)&&((0,l.consumeTag)(t),e.goto((0,n.expect)(r,"VM BUG: Target must be set before attempting to jump")))}didModify(e){this.tag=e,this.lastRevision=(0,l.valueForTag)(this.tag),(0,l.consumeTag)(e)}}class Ce{constructor(e){this.debugLabel=e}evaluate(){(0,l.beginTrackFrame)(this.debugLabel)}}class Ee{constructor(e){this.target=e}evaluate(){let e=(0,l.endTrackFrame)() +!e.alwaysRevalidate&&(0,l.validateTag)(t,i)&&((0,l.consumeTag)(t),e.goto((0,n.expect)(r,"VM BUG: Target must be set before attempting to jump")))}didModify(e){this.tag=e,this.lastRevision=(0,l.valueForTag)(this.tag),(0,l.consumeTag)(e)}}class Ee{constructor(e){this.debugLabel=e}evaluate(){(0,l.beginTrackFrame)(this.debugLabel)}}class Ce{constructor(e){this.target=e}evaluate(){let e=(0,l.endTrackFrame)() this.target.didModify(e)}}ae.add(i.Op.Text,((e,{op1:t})=>{e.elements().appendText(e[y].getValue(t))})),ae.add(i.Op.Comment,((e,{op1:t})=>{e.elements().appendComment(e[y].getValue(t))})),ae.add(i.Op.OpenElement,((e,{op1:t})=>{e.elements().openElement(e[y].getValue(t))})),ae.add(i.Op.OpenDynamicElement,(e=>{let n=(0,t.check)((0,r.valueForRef)((0,t.check)(e.stack.pop(),Fe)),t.CheckString) -e.elements().openElement(n)})),ae.add(i.Op.PushRemoteElement,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),o=(0,t.check)(e.stack.pop(),Fe),s=(0,t.check)((0,r.valueForRef)(n),t.CheckElement),a=(0,t.check)((0,r.valueForRef)(i),(0,t.CheckMaybe)((0,t.CheckOption)(t.CheckNode))),l=(0,r.valueForRef)(o);(0,r.isConstRef)(n)||e.updateWith(new _e(n)),void 0===a||(0,r.isConstRef)(i)||e.updateWith(new _e(i)) -let u=e.elements().pushRemoteElement(s,l,a) -u&&e.associateDestroyable(u)})),ae.add(i.Op.PopRemoteElement,(e=>{e.elements().popRemoteElement()})),ae.add(i.Op.FlushElement,(e=>{let r=(0,t.check)(e.fetchValue(i.$t0),Ie),n=null +e.elements().openElement(n)})),ae.add(i.Op.PushRemoteElement,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),s=(0,t.check)(e.stack.pop(),Fe),a=(0,t.check)((0,r.valueForRef)(n),t.CheckElement),l=(0,t.check)((0,r.valueForRef)(i),(0,t.CheckMaybe)((0,t.CheckOption)(t.CheckNode))),u=(0,r.valueForRef)(s);(0,r.isConstRef)(n)||e.updateWith(new _e(n)),void 0===l||(0,r.isConstRef)(i)||e.updateWith(new _e(i)) +let c=e.elements().pushRemoteElement(a,u,l) +if(c&&e.associateDestroyable(c),void 0!==e.env.debugRenderTree){let t=lt(void 0===l?{}:{insertBefore:i},[n]) +e.env.debugRenderTree.create(c,{type:"keyword",name:"in-element",args:t,instance:null}),(0,o.registerDestructor)(c,(()=>{e.env.debugRenderTree?.willDestroy(c)}))}})),ae.add(i.Op.PopRemoteElement,(e=>{let t=e.elements().popRemoteElement() +void 0!==e.env.debugRenderTree&&e.env.debugRenderTree.didRender(t,t)})),ae.add(i.Op.FlushElement,(e=>{let r=(0,t.check)(e.fetchValue(i.$t0),Ie),n=null r&&(n=r.flush(e),e.loadValue(i.$t0,null)),e.elements().flushElement(n)})),ae.add(i.Op.CloseElement,(e=>{let t=e.elements().closeElement() null!==t&&t.forEach((t=>{e.env.scheduleInstallModifier(t) const r=t.manager.getDestroyable(t.state) null!==r&&e.associateDestroyable(r)}))})),ae.add(i.Op.Modifier,((e,{op1:r})=>{if(!1===e.env.isInteractive)return -let o=e.getOwner(),s=(0,t.check)(e.stack.pop(),Be),a=e[y].getValue(r),{manager:u}=a,{constructing:c}=e.elements(),p=u.create(o,(0,n.expect)(c,"BUG: ElementModifier could not find the element it applies to"),a.state,s.capture()),d={manager:u,state:p,definition:a};(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(d) -let h=u.getTag(p) -return null!==h?((0,l.consumeTag)(h),e.updateWith(new ke(h,d))):void 0})),ae.add(i.Op.DynamicModifier,(e=>{if(!1===e.env.isInteractive)return -let{stack:o}=e,s=(0,t.check)(o.pop(),Fe),u=(0,t.check)(o.pop(),Be).capture(),{constructing:c}=e.elements(),p=e.getOwner(),d=(0,r.createComputeRef)((()=>{let e,t,o=(0,r.valueForRef)(s) +let o=e.getOwner(),s=(0,t.check)(e.stack.pop(),Be),a=e[y].getValue(r),{manager:u}=a,{constructing:c}=e.elements(),p=s.capture(),d=u.create(o,(0,n.expect)(c,"BUG: ElementModifier could not find the element it applies to"),a.state,p),h={manager:u,state:d,definition:a};(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(e,h,p) +let f=u.getTag(d) +return null!==f?((0,l.consumeTag)(f),e.updateWith(new ke(f,h))):void 0})),ae.add(i.Op.DynamicModifier,(e=>{if(!1===e.env.isInteractive)return +let{stack:o}=e,s=(0,t.check)(o.pop(),Fe),u=(0,t.check)(o.pop(),Be).capture(),{positional:c,named:p}=u,{constructing:d}=e.elements(),h=e.getOwner(),f=(0,r.createComputeRef)((()=>{let e,t,o=(0,r.valueForRef)(s) if(!(0,n.isObject)(o))return -if(me(o,i.CurriedTypes.Modifier)){let{definition:r,owner:i,positional:s,named:a}=be(o) -t=r,e=i,void 0!==s&&(u.positional=s.concat(u.positional)),void 0!==a&&(u.named=(0,n.assign)({},...a,u.named))}else t=o,e=p +if(me(o,i.CurriedTypes.Modifier)){let{definition:r,owner:n,positional:i,named:s}=be(o) +t=r,e=n,void 0!==i&&(u.positional=i.concat(c)),void 0!==s&&(u.named=Object.assign({},...s,p))}else t=o,e=h let l=(0,a.getInternalModifierManager)(t,!0) if(null===l)throw new Error("BUG: modifier manager expected") -let d={resolvedName:null,manager:l,state:t},h=l.create(e,(0,n.expect)(c,"BUG: ElementModifier could not find the element it applies to"),d.state,u) -return{manager:l,state:h,definition:d}})),h=(0,r.valueForRef)(d),f=null -if(void 0!==h){(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(h),f=h.manager.getTag(h.state),null!==f&&(0,l.consumeTag)(f)}return!(0,r.isConstRef)(s)||f?e.updateWith(new Te(f,h,d)):void 0})) +let f={resolvedName:null,manager:l,state:t},m=l.create(e,(0,n.expect)(d,"BUG: ElementModifier could not find the element it applies to"),f.state,u) +return{manager:l,state:m,definition:f}})),m=(0,r.valueForRef)(f),g=null +if(void 0!==m){(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(e,m,u),g=m.manager.getTag(m.state),null!==g&&(0,l.consumeTag)(g)}return!(0,r.isConstRef)(s)||g?e.updateWith(new Te(g,m,f)):void 0})) class ke{constructor(e,t){this.lastUpdated=void 0,this.tag=e,this.modifier=t,this.lastUpdated=(0,l.valueForTag)(e)}evaluate(e){let{modifier:t,tag:r,lastUpdated:n}=this;(0,l.consumeTag)(r),(0,l.validateTag)(r,n)||(e.env.scheduleUpdateModifier(t),this.lastUpdated=(0,l.valueForTag)(r))}}class Te{constructor(e,t,r){this.lastUpdated=void 0,this.tag=e,this.instance=t,this.instanceRef=r,this.lastUpdated=(0,l.valueForTag)(e??l.CURRENT_TAG)}evaluate(e){let{tag:t,lastUpdated:n,instance:i,instanceRef:s}=this,a=(0,r.valueForRef)(s) if(a!==i){if(void 0!==i){let e=i.manager.getDestroyable(i.state) null!==e&&(0,o.destroy)(e)}if(void 0!==a){let{manager:r,state:n}=a,i=r.getDestroyable(n) null!==i&&(0,o.associateDestroyableChild)(this,i),t=r.getTag(n),null!==t&&(this.lastUpdated=(0,l.valueForTag)(t)),this.tag=t,e.env.scheduleInstallModifier(a)}this.instance=a}else null===t||(0,l.validateTag)(t,n)||(e.env.scheduleUpdateModifier(i),this.lastUpdated=(0,l.valueForTag)(t)) null!==t&&(0,l.consumeTag)(t)}}ae.add(i.Op.StaticAttr,((e,{op1:t,op2:r,op3:n})=>{let i=e[y].getValue(t),o=e[y].getValue(r),s=n?e[y].getValue(n):null -e.elements().setStaticAttribute(i,o,s)})),ae.add(i.Op.DynamicAttr,((e,{op1:n,op2:i,op3:o})=>{let s=e[y].getValue(n),a=e[y].getValue(i),l=(0,t.check)(e.stack.pop(),Fe),u=(0,r.valueForRef)(l),c=o?e[y].getValue(o):null,p=e.elements().setDynamicAttribute(s,u,a,c);(0,r.isConstRef)(l)||e.updateWith(new Se(l,p,e.env))})) -class Se{constructor(e,t,n){this.updateRef=void 0 +e.elements().setStaticAttribute(i,o,s)})),ae.add(i.Op.DynamicAttr,((e,{op1:n,op2:i,op3:o})=>{let s=e[y].getValue(n),a=e[y].getValue(i),l=(0,t.check)(e.stack.pop(),Fe),u=(0,r.valueForRef)(l),c=o?e[y].getValue(o):null,p=e.elements().setDynamicAttribute(s,u,a,c);(0,r.isConstRef)(l)||e.updateWith(new Re(l,p,e.env))})) +class Re{constructor(e,t,n){this.updateRef=void 0 let i=!1 this.updateRef=(0,r.createComputeRef)((()=>{let o=(0,r.valueForRef)(e) !0===i?t.update(o,n):i=!0})),(0,r.valueForRef)(this.updateRef)}evaluate(){(0,r.valueForRef)(this.updateRef)}}ae.add(i.Op.PushComponentDefinition,((e,{op1:t})=>{let r=e[y].getValue(t);(0,n.assert)(!!r,`Missing component for ${t}`) @@ -2403,25 +2405,29 @@ let h=null;(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.create let f=l.create(e.getOwner(),s.state,d,e.env,c,h,!!p) o.state=f,(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.updateHook)&&e.updateWith(new Me(f,l,c))})),ae.add(i.Op.RegisterComponentDestructor,((e,{op1:r})=>{let{manager:n,state:i,capabilities:o}=(0,t.check)(e.fetchValue(r),Ge),s=n.getDestroyable(i) s&&e.associateDestroyable(s)})),ae.add(i.Op.BeginComponentTransaction,((e,{op1:t})=>{let r -e.beginCacheGroup(r),e.elements().pushSimpleBlock()})),ae.add(i.Op.PutComponentOperations,(e=>{e.loadValue(i.$t0,new Re)})),ae.add(i.Op.ComponentAttr,((e,{op1:r,op2:n,op3:o})=>{let s=e[y].getValue(r),a=e[y].getValue(n),l=(0,t.check)(e.stack.pop(),Fe),u=o?e[y].getValue(o):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Re)).setAttribute(s,l,a,u)})),ae.add(i.Op.StaticComponentAttr,((e,{op1:r,op2:n,op3:o})=>{let s=e[y].getValue(r),a=e[y].getValue(n),l=o?e[y].getValue(o):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Re)).setStaticAttribute(s,a,l)})) -class Re{constructor(){this.attributes=(0,n.dict)(),this.classes=[],this.modifiers=[]}setAttribute(e,t,r,n){let i={value:t,namespace:n,trusting:r} +e.beginCacheGroup(r),e.elements().pushSimpleBlock()})),ae.add(i.Op.PutComponentOperations,(e=>{e.loadValue(i.$t0,new Se)})),ae.add(i.Op.ComponentAttr,((e,{op1:r,op2:n,op3:o})=>{let s=e[y].getValue(r),a=e[y].getValue(n),l=(0,t.check)(e.stack.pop(),Fe),u=o?e[y].getValue(o):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)).setAttribute(s,l,a,u)})),ae.add(i.Op.StaticComponentAttr,((e,{op1:r,op2:n,op3:o})=>{let s=e[y].getValue(r),a=e[y].getValue(n),l=o?e[y].getValue(o):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)).setStaticAttribute(s,a,l)})) +class Se{constructor(){this.attributes=(0,n.dict)(),this.classes=[],this.modifiers=[]}setAttribute(e,t,r,n){let i={value:t,namespace:n,trusting:r} "class"===e&&this.classes.push(t),this.attributes[e]=i}setStaticAttribute(e,t,r){let n={value:t,namespace:r} -"class"===e&&this.classes.push(t),this.attributes[e]=n}addModifier(e){this.modifiers.push(e)}flush(e){let t,r=this.attributes +"class"===e&&this.classes.push(t),this.attributes[e]=n}addModifier(e,t,r){if(this.modifiers.push(t),void 0!==e.env.debugRenderTree){const{manager:i,definition:s,state:a}=t +if(null===a||"object"!=typeof a&&"function"!=typeof a)return +let{element:l,constructing:u}=e.elements(),c=i.getDebugName(s.state),p=i.getDebugInstance(a);(0,n.assert)(u,"Expected a constructing element in addModifier") +let d=new O(l,u,u) +e.env.debugRenderTree.create(a,{type:"modifier",name:c,args:r,instance:p}),e.env.debugRenderTree.didRender(a,d),e.associateDestroyable(a),e.updateWith(new De(a)),e.updateWith(new je(a,d)),(0,o.registerDestructor)(a,(()=>{e.env.debugRenderTree?.willDestroy(a)}))}}flush(e){let t,r=this.attributes for(let i in this.attributes){if("type"===i){t=r[i] continue}let o=(0,n.unwrap)(this.attributes[i]) "class"===i?xe(e,"class",Pe(this.classes),o.namespace,o.trusting):xe(e,i,o.value,o.namespace,o.trusting)}return void 0!==t&&xe(e,"type",t.value,t.namespace,t.trusting),this.modifiers}}function Pe(e){return 0===e.length?"":1===e.length?(0,n.unwrap)(e[0]):function(e){return e.every((e=>"string"==typeof e))}(e)?e.join(" "):(t=e,(0,r.createComputeRef)((()=>{let e=[] -for(const n of t){let t=E("string"==typeof n?n:(0,r.valueForRef)(n)) +for(const n of t){let t=C("string"==typeof n?n:(0,r.valueForRef)(n)) t&&e.push(t)}return 0===e.length?null:e.join(" ")}))) var t}function xe(e,t,n,i,o=!1){if("string"==typeof n)e.elements().setStaticAttribute(t,n,i) -else{let s=e.elements().setDynamicAttribute(t,(0,r.valueForRef)(n),o,i);(0,r.isConstRef)(n)||e.updateWith(new Se(n,s,e.env))}}function Ae(e,t,r,n,i){let o=r.table.symbols.indexOf(e),s=n.get(t);-1!==o&&i.scope().bindBlock(o+1,s),r.lookup&&(r.lookup[e]=s)}ae.add(i.Op.DidCreateElement,((e,{op1:r})=>{let{definition:o,state:s}=(0,t.check)(e.fetchValue(r),Ge),{manager:a}=o,l=(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Re)) +else{let s=e.elements().setDynamicAttribute(t,(0,r.valueForRef)(n),o,i);(0,r.isConstRef)(n)||e.updateWith(new Re(n,s,e.env))}}function Ae(e,t,r,n,i){let o=r.table.symbols.indexOf(e),s=n.get(t);-1!==o&&i.scope().bindBlock(o+1,s),r.lookup&&(r.lookup[e]=s)}ae.add(i.Op.DidCreateElement,((e,{op1:r})=>{let{definition:o,state:s}=(0,t.check)(e.fetchValue(r),Ge),{manager:a}=o,l=(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)) a.didCreateElement(s,(0,n.expect)(e.elements().constructing,"Expected a constructing element in DidCreateOpcode"),l)})),ae.add(i.Op.GetComponentSelf,((e,{op1:s,op2:l})=>{let u=(0,t.check)(e.fetchValue(s),Ge),{definition:c,state:p}=u,{manager:d}=c,h=d.getSelf(p) if(void 0!==e.env.debugRenderTree){let u,c,d=(0,t.check)(e.fetchValue(s),Ge),{definition:f,manager:m}=d if(e.stack.peek()===e[v])u=e[v].capture() else{let t=e[y].getArray(l) e[v].setup(e.stack,t,[],0,!0),u=e[v].capture()}let g=f.compilable if(null===g?((0,n.assert)((0,a.managerHasCapability)(m,d.capabilities,i.InternalComponentCapabilities.dynamicLayout),"BUG: No template was found for this component, and the component did not have the dynamic layout capability"),g=m.getDynamicLayout(p,e.runtime.resolver),c=null!==g?g.moduleName:"__default__.hbs"):c=g.moduleName,e.associateDestroyable(d),ve(m)){m.getDebugCustomRenderTree(d.definition.state,d.state,u,c).forEach((t=>{let{bucket:r}=t -e.env.debugRenderTree.create(r,t),(0,o.registerDestructor)(d,(()=>{e.env.debugRenderTree?.willDestroy(r)})),e.updateWith(new je(r))}))}else{let t=f.resolvedName??m.getDebugName(f.state) -e.env.debugRenderTree.create(d,{type:"component",name:t,args:u,template:c,instance:(0,r.valueForRef)(h)}),e.associateDestroyable(d),(0,o.registerDestructor)(d,(()=>{e.env.debugRenderTree?.willDestroy(d)})),e.updateWith(new je(d))}}e.stack.push(h)})),ae.add(i.Op.GetComponentTagName,((e,{op1:r})=>{let{definition:n,state:i}=(0,t.check)(e.fetchValue(r),Ge),{manager:o}=n,s=o.getTagName(i) +e.env.debugRenderTree.create(r,t),(0,o.registerDestructor)(d,(()=>{e.env.debugRenderTree?.willDestroy(r)})),e.updateWith(new De(r))}))}else{let t=f.resolvedName??m.getDebugName(f.state) +e.env.debugRenderTree.create(d,{type:"component",name:t,args:u,template:c,instance:(0,r.valueForRef)(h)}),(0,o.registerDestructor)(d,(()=>{e.env.debugRenderTree?.willDestroy(d)})),e.updateWith(new De(d))}}e.stack.push(h)})),ae.add(i.Op.GetComponentTagName,((e,{op1:r})=>{let{definition:n,state:i}=(0,t.check)(e.fetchValue(r),Ge),{manager:o}=n,s=o.getTagName(i) e.stack.push(s)})),ae.add(i.Op.GetComponentLayout,((e,{op1:r})=>{let o=(0,t.check)(e.fetchValue(r),Ge),{manager:s,definition:l}=o,{stack:u}=e,{compilable:c}=l if(null===c){let{capabilities:t}=o;(0,n.assert)((0,a.managerHasCapability)(s,t,i.InternalComponentCapabilities.dynamicLayout),"BUG: No template was found for this component, and the component did not have the dynamic layout capability"),c=s.getDynamicLayout(o.state,e.runtime.resolver),null===c&&(c=(0,a.managerHasCapability)(s,t,i.InternalComponentCapabilities.wrapped)?(0,n.unwrapTemplate)(e[y].defaultTemplate).asWrappedLayout():(0,n.unwrapTemplate)(e[y].defaultTemplate).asLayout())}let p=c.compile(e.context) u.push(c.symbolTable),u.push(p)})),ae.add(i.Op.Main,((e,{op1:r})=>{let n=(0,t.check)(e.stack.pop(),Ze),i=(0,t.check)(e.stack.pop(),Ye),{manager:o,capabilities:s}=n,a={definition:n,manager:o,capabilities:s,state:null,handle:i.handle,table:i.symbolTable,lookup:null} @@ -2432,13 +2438,13 @@ e.scope().bindEvalScope(t)}})),ae.add(i.Op.SetNamedVariables,((e,{op1:r})=>{let for(let t=a.length-1;t>=0;t--){let e=(0,n.unwrap)(a[t]),r=i.table.symbols.indexOf(e),l=s.named.get(e,!0);-1!==r&&o.bindSymbol(r+1,l),i.lookup&&(i.lookup[e]=l)}})),ae.add(i.Op.SetBlocks,((e,{op1:r})=>{let i=(0,t.check)(e.fetchValue(r),Qe),{blocks:o}=(0,t.check)(e.stack.peek(),Be) for(const[t]of(0,n.enumerate)(o.names))Ae((0,n.unwrap)(o.symbolNames[t]),(0,n.unwrap)(o.names[t]),i,o,e)})),ae.add(i.Op.InvokeComponentLayout,((e,{op1:r})=>{let n=(0,t.check)(e.fetchValue(r),Qe) e.call(n.handle)})),ae.add(i.Op.DidRenderLayout,((e,{op1:r})=>{let n=(0,t.check)(e.fetchValue(r),Ge),{manager:o,state:s,capabilities:l}=n,u=e.elements().popBlock() -if(void 0!==e.env.debugRenderTree)if(ve(o)){o.getDebugCustomRenderTree(n.definition.state,s,ft).reverse().forEach((t=>{let{bucket:r}=t -e.env.debugRenderTree.didRender(r,u),e.updateWith(new De(r,u))}))}else e.env.debugRenderTree.didRender(n,u),e.updateWith(new De(n,u)) +if(void 0!==e.env.debugRenderTree)if(ve(o)){o.getDebugCustomRenderTree(n.definition.state,s,bt).reverse().forEach((t=>{let{bucket:r}=t +e.env.debugRenderTree.didRender(r,u),e.updateWith(new je(r,u))}))}else e.env.debugRenderTree.didRender(n,u),e.updateWith(new je(n,u)) if((0,a.managerHasCapability)(o,l,i.InternalComponentCapabilities.createInstance)){(0,t.check)(o,(0,t.CheckInterface)({didRenderLayout:t.CheckFunction})).didRenderLayout(s,u),e.env.didCreate(n),e.updateWith(new Ne(n,u))}})),ae.add(i.Op.CommitComponentTransaction,(e=>{e.commitCacheGroup()})) class Me{constructor(e,t,r){this.component=e,this.manager=t,this.dynamicScope=r}evaluate(e){let{component:t,manager:r,dynamicScope:n}=this r.update(t,n)}}class Ne{constructor(e,t){this.component=e,this.bounds=t}evaluate(e){let{component:t,bounds:r}=this,{manager:n,state:i}=t -n.didUpdateLayout(i,r),e.env.didUpdate(t)}}class je{constructor(e){this.bucket=e}evaluate(e){e.env.debugRenderTree?.update(this.bucket)}}class De{constructor(e,t){this.bucket=e,this.bounds=t}evaluate(e){e.env.debugRenderTree?.didRender(this.bucket,this.bounds)}}(0,t.CheckInterface)({[l.COMPUTE]:t.CheckFunction}) -const Ie=(0,t.wrap)((()=>(0,t.CheckOption)((0,t.CheckInstanceof)(Re)))) +n.didUpdateLayout(i,r),e.env.didUpdate(t)}}class De{constructor(e){this.bucket=e}evaluate(e){e.env.debugRenderTree?.update(this.bucket)}}class je{constructor(e,t){this.bucket=e,this.bounds=t}evaluate(e){e.env.debugRenderTree?.didRender(this.bucket,this.bounds)}}(0,t.CheckInterface)({[l.COMPUTE]:t.CheckFunction}) +const Ie=(0,t.wrap)((()=>(0,t.CheckOption)((0,t.CheckInstanceof)(Se)))) const Fe=new class{validate(e){return"object"==typeof e&&null!==e&&r.REFERENCE in e}expected(){return"Reference"}},Le=(0,t.CheckInterface)({next:t.CheckFunction,isEmpty:t.CheckFunction}),Be=(0,t.wrap)((()=>(0,t.CheckInstanceof)(et))),Ue=t.CheckFunction const He=new class{validate(e){return e===r.UNDEFINED_REFERENCE}expected(){return"undefined"}},$e=(0,t.CheckInterface)({positional:(0,t.wrap)((()=>(0,t.CheckArray)(Fe))),named:(0,t.wrap)((()=>(0,t.CheckDict)(Fe)))}),Ve=(0,t.wrap)((()=>(0,t.CheckInstanceof)(d))),ze=(0,t.CheckInterface)({getCapabilities:t.CheckFunction}),qe=t.CheckNumber,Ge=(0,t.CheckInterface)({definition:t.CheckUnknown,state:t.CheckUnknown,handle:t.CheckUnknown,table:t.CheckUnknown}),We=(0,t.CheckOr)(t.CheckObject,t.CheckFunction),Ye=(0,t.CheckInterface)({handle:t.CheckNumber,symbolTable:t.CheckProgramSymbolTable});(0,t.CheckInterface)({setAttribute:t.CheckFunction}) const Qe=(0,t.CheckInterface)({definition:t.CheckUnknown,state:t.CheckUnknown,handle:t.CheckHandle,table:t.CheckProgramSymbolTable}),Ke=(0,t.CheckInterface)({compile:t.CheckFunction,symbolTable:t.CheckBlockSymbolTable}),Je=(0,t.CheckInterface)({compile:t.CheckFunction,symbolTable:t.CheckProgramSymbolTable}),Xe=(0,t.CheckInterface)({0:Ke,1:Ve,2:t.CheckBlockSymbolTable}),Ze=(0,t.CheckInterface)({resolvedName:(0,t.CheckOption)(t.CheckString),handle:t.CheckNumber,state:(0,t.CheckOr)(t.CheckObject,t.CheckFunction),manager:ze,capabilities:qe,compilable:Je}) @@ -2452,8 +2458,8 @@ let c=this.blocks,p=r.length,d=u-3*p c.setup(e,d,p,r)}get base(){return this.blocks.base}get length(){return this.positional.length+this.named.length+3*this.blocks.length}at(e){return this.positional.at(e)}realloc(e){let{stack:t}=this if(e>0&&null!==t){let{positional:r,named:n}=this,o=r.base+e for(let e=r.length+n.length-1;e>=0;e--)t.copy(e+r.base,e+o) -r.base+=e,n.base+=e,t[g][i.$sp]+=e}}capture(){let e=0===this.positional.length?ht:this.positional.capture() -return{named:0===this.named.length?dt:this.named.capture(),positional:e}}clear(){let{stack:e,length:t}=this +r.base+=e,n.base+=e,t[g][i.$sp]+=e}}capture(){let e=0===this.positional.length?gt:this.positional.capture() +return{named:0===this.named.length?mt:this.named.capture(),positional:e}}clear(){let{stack:e,length:t}=this t>0&&null!==e&&e.pop(t)}}const tt=(0,n.emptyArray)() class rt{constructor(){this.base=0,this.length=0,this.stack=null,this._references=null}empty(e,t){this.stack=e,this.base=t,this.length=0,this._references=tt}setup(e,t,r){this.stack=e,this.base=t,this.length=r,this._references=0===r?tt:null}at(e){let{base:n,length:i,stack:o}=this return e<0||e>=i?r.UNDEFINED_REFERENCE:(0,t.check)(o.get(e,n),Fe)}capture(){return this.references}prepend(e){let t=e.length @@ -2483,16 +2489,18 @@ return null===a?null:[a,s,o]}capture(){return new at(this.names,this.values)}get return null===e&&(e=this._symbolNames=this.names.map(it)),e}}class at{constructor(e,t){this.length=void 0,this.names=e,this.values=t,this.length=e.length}has(e){return-1!==this.names.indexOf(e)}get(e){let t=this.names.indexOf(e) return-1===t?null:[this.values[3*t+2],this.values[3*t+1],this.values[3*t]]}}function lt(e,t){return{named:e,positional:t}}function ut(e){let t=(0,n.dict)() for(const[n,i]of Object.entries(e))t[n]=(0,r.valueForRef)(i) -return t}function ct(e){return e.map(r.valueForRef)}function pt(e){return{named:ut(e.named),positional:ct(e.positional)}}const dt=e.EMPTY_NAMED=Object.freeze(Object.create(null)),ht=e.EMPTY_POSITIONAL=tt,ft=e.EMPTY_ARGS=lt(dt,ht) -function mt(e){return"string"==typeof e?e:"function"!=typeof e.toString?"":String(e)}function gt(e,t){let r,i=(0,a.getInternalHelperManager)(e,!0) -return null===i?r=null:(r="function"==typeof i?i:i.getHelper(e),(0,n.assert)(i,"BUG: expected manager or helper")),r}function bt(e){return(0,n.assert)(Array.isArray(e)||e===r.UNDEFINED_REFERENCE,"a reference other than UNDEFINED_REFERENCE is illegal here"),e===r.UNDEFINED_REFERENCE}ae.add(i.Op.Curry,((e,{op1:o,op2:s})=>{let a=e.stack,l=(0,t.check)(a.pop(),Fe),u=(0,t.check)(a.pop(),$e),c=e.getOwner() +return t}function ct(e){return e.map(r.valueForRef)}const pt=Symbol("ARGUMENT_ERROR") +function dt(e){return null!==e&&"object"==typeof e&&e[pt]}function ht(e){return{[pt]:!0,error:e}}function ft(e){return{named:function(e){let t=(0,n.dict)() +for(const[n,o]of Object.entries(e))try{t[n]=(0,r.valueForRef)(o)}catch(i){t[n]=ht(i)}return t}(e.named),positional:function(e){return e.map((e=>{try{return(0,r.valueForRef)(e)}catch(t){return ht(t)}}))}(e.positional)}}const mt=e.EMPTY_NAMED=Object.freeze(Object.create(null)),gt=e.EMPTY_POSITIONAL=tt,bt=e.EMPTY_ARGS=lt(mt,gt) +function yt(e){return"string"==typeof e?e:"function"!=typeof e.toString?"":String(e)}function vt(e,t){let r,i=(0,a.getInternalHelperManager)(e,!0) +return null===i?r=null:(r="function"==typeof i?i:i.getHelper(e),(0,n.assert)(i,"BUG: expected manager or helper")),r}function _t(e){return(0,n.assert)(Array.isArray(e)||e===r.UNDEFINED_REFERENCE,"a reference other than UNDEFINED_REFERENCE is illegal here"),e===r.UNDEFINED_REFERENCE}ae.add(i.Op.Curry,((e,{op1:o,op2:s})=>{let a=e.stack,l=(0,t.check)(a.pop(),Fe),u=(0,t.check)(a.pop(),$e),c=e.getOwner() e.runtime.resolver e.loadValue(i.$v0,function(e,t,o,s,a,l){let u,c return(0,r.createComputeRef)((()=>{let a=(0,r.valueForRef)(t) return a===u||(c=me(a,e)?s?ye(e,a,o,s):s:e===i.CurriedTypes.Component&&"string"==typeof a&&a||(0,n.isObject)(a)?ye(e,a,o,s):null,u=a),c}))}(o,l,c,u))})),ae.add(i.Op.DynamicHelper,(e=>{let s,a=e.stack,l=(0,t.check)(a.pop(),Fe),u=(0,t.check)(a.pop(),Be).capture(),c=e.getOwner(),p=(0,r.createComputeRef)((()=>{void 0!==s&&(0,o.destroy)(s) let e=(0,r.valueForRef)(l) -if(me(e,i.CurriedTypes.Helper)){let{definition:t,owner:r,positional:i,named:a}=be(e),c=gt(t,l) -void 0!==a&&(u.named=(0,n.assign)({},...a,u.named)),void 0!==i&&(u.positional=i.concat(u.positional)),s=c(u,r),(0,o.associateDestroyableChild)(p,s)}else if((0,n.isObject)(e)){let t=gt(e,l) +if(me(e,i.CurriedTypes.Helper)){let{definition:t,owner:r,positional:i,named:a}=be(e),c=vt(t,l) +void 0!==a&&(u.named=(0,n.assign)({},...a,u.named)),void 0!==i&&(u.positional=i.concat(u.positional)),s=c(u,r),(0,o.associateDestroyableChild)(p,s)}else if((0,n.isObject)(e)){let t=vt(e,l) s=t(u,c),(0,o._hasDestroyableChildren)(s)&&(0,o.associateDestroyableChild)(p,s)}else s=r.UNDEFINED_REFERENCE})),d=(0,r.createComputeRef)((()=>((0,r.valueForRef)(p),(0,r.valueForRef)(s)))) e.associateDestroyable(p),e.loadValue(i.$v0,d)})),ae.add(i.Op.Helper,((e,{op1:r})=>{let n=e.stack,s=(0,t.check)(e[y].getValue(r),Ue)((0,t.check)(n.pop(),Be).capture(),e.getOwner(),e.dynamicScope());(0,o._hasDestroyableChildren)(s)&&e.associateDestroyable(s),e.loadValue(i.$v0,s)})),ae.add(i.Op.GetVariable,((e,{op1:t})=>{let r=e.referenceForSymbol(t) e.stack.push(r)})),ae.add(i.Op.SetVariable,((e,{op1:r})=>{let n=(0,t.check)(e.stack.pop(),Fe) @@ -2501,43 +2509,43 @@ e.scope().bindBlock(r,[n,i,o])})),ae.add(i.Op.ResolveMaybeLocal,((e,{op1:t})=>{l void 0===i&&(i=(0,r.childRefFor)(e.getSelf(),n)),e.stack.push(i)})),ae.add(i.Op.RootScope,((e,{op1:t})=>{e.pushRootScope(t,e.getOwner())})),ae.add(i.Op.GetProperty,((e,{op1:n})=>{let i=e[y].getValue(n),o=(0,t.check)(e.stack.pop(),Fe) e.stack.push((0,r.childRefFor)(o,i))})),ae.add(i.Op.GetBlock,((e,{op1:t})=>{let{stack:r}=e,n=e.scope().getBlock(t) r.push(n)})),ae.add(i.Op.SpreadBlock,(e=>{let{stack:r}=e,n=(0,t.check)(r.pop(),(0,t.CheckOption)((0,t.CheckOr)(Xe,He))) -if(n&&!bt(n)){let[e,t,i]=n +if(n&&!_t(n)){let[e,t,i]=n r.push(i),r.push(t),r.push(e)}else r.push(null),r.push(null),r.push(null)})),ae.add(i.Op.HasBlock,(e=>{let{stack:n}=e,i=(0,t.check)(n.pop(),(0,t.CheckOption)((0,t.CheckOr)(Xe,He))) -i&&!bt(i)?n.push(r.TRUE_REFERENCE):n.push(r.FALSE_REFERENCE)})),ae.add(i.Op.HasBlockParams,(e=>{let n=e.stack.pop(),i=e.stack.pop();(0,t.check)(n,(0,t.CheckMaybe)((0,t.CheckOr)(t.CheckHandle,Ke))),(0,t.check)(i,(0,t.CheckMaybe)(Ve)) +i&&!_t(i)?n.push(r.TRUE_REFERENCE):n.push(r.FALSE_REFERENCE)})),ae.add(i.Op.HasBlockParams,(e=>{let n=e.stack.pop(),i=e.stack.pop();(0,t.check)(n,(0,t.CheckMaybe)((0,t.CheckOr)(t.CheckHandle,Ke))),(0,t.check)(i,(0,t.CheckMaybe)(Ve)) let o=(0,t.check)(e.stack.pop(),(0,t.CheckMaybe)(t.CheckBlockSymbolTable)),s=o&&o.parameters.length e.stack.push(s?r.TRUE_REFERENCE:r.FALSE_REFERENCE)})),ae.add(i.Op.Concat,((e,{op1:n})=>{let i=new Array(n) for(let r=n;r>0;r--){i[r-1]=(0,t.check)(e.stack.pop(),Fe)}var o e.stack.push((o=i,(0,r.createComputeRef)((()=>{const e=[] for(const t of o){const n=(0,r.valueForRef)(t) -null!=n&&e.push(mt(n))}return e.length>0?e.join(""):null}))))})),ae.add(i.Op.IfInline,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),o=(0,t.check)(e.stack.pop(),Fe) +null!=n&&e.push(yt(n))}return e.length>0?e.join(""):null}))))})),ae.add(i.Op.IfInline,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),o=(0,t.check)(e.stack.pop(),Fe) e.stack.push((0,r.createComputeRef)((()=>!0===(0,s.toBool)((0,r.valueForRef)(n))?(0,r.valueForRef)(i):(0,r.valueForRef)(o))))})),ae.add(i.Op.Not,(e=>{let n=(0,t.check)(e.stack.pop(),Fe) e.stack.push((0,r.createComputeRef)((()=>!(0,s.toBool)((0,r.valueForRef)(n)))))})),ae.add(i.Op.GetDynamicVar,(e=>{let n=e.dynamicScope(),i=e.stack,o=(0,t.check)(i.pop(),Fe) i.push((0,r.createComputeRef)((()=>{let e=String((0,r.valueForRef)(o)) return(0,r.valueForRef)(n.get(e))})))})),ae.add(i.Op.Log,(e=>{let{positional:n}=(0,t.check)(e.stack.pop(),Be).capture() e.loadValue(i.$v0,(0,r.createComputeRef)((()=>{console.log(...ct(n))})))})) -class yt{constructor(e,t,r){this.node=e,this.reference=t,this.lastValue=r}evaluate(){let e,t=(0,r.valueForRef)(this.reference),{lastValue:n}=this -if(t!==n&&(e=k(t)?"":R(t)?t:String(t),e!==n)){this.node.nodeValue=this.lastValue=e}}}function vt(e){return function(e){return R(e)||k(e)||"boolean"==typeof e||"number"==typeof e}(e)?i.ContentType.String:me(e,i.CurriedType.Component)||(0,a.hasInternalComponentManager)(e)?i.ContentType.Component:me(e,i.CurriedType.Helper)||(0,a.hasInternalHelperManager)(e)?i.ContentType.Helper:T(e)?i.ContentType.SafeString:function(e){return S(e)&&11===e.nodeType}(e)?i.ContentType.Fragment:S(e)?i.ContentType.Node:i.ContentType.String}function _t(e){return(0,n.isObject)(e)?me(e,i.CurriedType.Component)||(0,a.hasInternalComponentManager)(e)?i.ContentType.Component:i.ContentType.Helper:i.ContentType.String}function Ot(e,t){console.info("Use `context`, and `get()` to debug this template."),t("this")}ae.add(i.Op.ContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) -e.stack.push(vt((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,vt))})),ae.add(i.Op.DynamicContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) -e.stack.push(_t((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,_t))})),ae.add(i.Op.AppendHTML,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=k(i)?"":String(i) +class Ot{constructor(e,t,r){this.node=e,this.reference=t,this.lastValue=r}evaluate(){let e,t=(0,r.valueForRef)(this.reference),{lastValue:n}=this +if(t!==n&&(e=k(t)?"":S(t)?t:String(t),e!==n)){this.node.nodeValue=this.lastValue=e}}}function wt(e){return function(e){return S(e)||k(e)||"boolean"==typeof e||"number"==typeof e}(e)?i.ContentType.String:me(e,i.CurriedType.Component)||(0,a.hasInternalComponentManager)(e)?i.ContentType.Component:me(e,i.CurriedType.Helper)||(0,a.hasInternalHelperManager)(e)?i.ContentType.Helper:T(e)?i.ContentType.SafeString:function(e){return R(e)&&11===e.nodeType}(e)?i.ContentType.Fragment:R(e)?i.ContentType.Node:i.ContentType.String}function Et(e){return(0,n.isObject)(e)?me(e,i.CurriedType.Component)||(0,a.hasInternalComponentManager)(e)?i.ContentType.Component:i.ContentType.Helper:i.ContentType.String}function Ct(e,t){console.info("Use `context`, and `get()` to debug this template."),t("this")}ae.add(i.Op.ContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) +e.stack.push(wt((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,wt))})),ae.add(i.Op.DynamicContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) +e.stack.push(Et((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,Et))})),ae.add(i.Op.AppendHTML,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=k(i)?"":String(i) e.elements().appendDynamicHTML(o)})),ae.add(i.Op.AppendSafeHTML,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckSafeString).toHTML(),o=k(i)?"":(0,t.check)(i,t.CheckString) -e.elements().appendDynamicHTML(o)})),ae.add(i.Op.AppendText,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=k(i)?"":String(i),s=e.elements().appendDynamicText(o);(0,r.isConstRef)(n)||e.updateWith(new yt(s,n,o))})),ae.add(i.Op.AppendDocumentFragment,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckDocumentFragment) +e.elements().appendDynamicHTML(o)})),ae.add(i.Op.AppendText,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=k(i)?"":String(i),s=e.elements().appendDynamicText(o);(0,r.isConstRef)(n)||e.updateWith(new Ot(s,n,o))})),ae.add(i.Op.AppendDocumentFragment,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckDocumentFragment) e.elements().appendDynamicFragment(i)})),ae.add(i.Op.AppendNode,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckNode) e.elements().appendDynamicNode(i)})) -let wt=Ot -class Ct{constructor(e,t,r){this.locals=(0,n.dict)(),this.scope=e +let kt=Ct +class Tt{constructor(e,t,r){this.locals=(0,n.dict)(),this.scope=e for(const i of r){let r=(0,n.unwrap)(t[i-1]),o=e.getSymbol(i) this.locals[r]=o}}get(e){let t,{scope:i,locals:o}=this,s=e.split("."),[a,...l]=e.split("."),u=i.getEvalScope() -return"this"===a?t=i.getSelf():o[a]?t=(0,n.unwrap)(o[a]):0===a.indexOf("@")&&u[a]?t=u[a]:(t=this.scope.getSelf(),l=s),l.reduce(((e,t)=>(0,r.childRefFor)(e,t)),t)}}ae.add(i.Op.Debugger,((e,{op1:t,op2:i})=>{let o=e[y].getArray(t),s=e[y].getArray((0,n.decodeHandle)(i)),a=new Ct(e.scope(),o,s) -wt((0,r.valueForRef)(e.getSelf()),(e=>(0,r.valueForRef)(a.get(e))))})),ae.add(i.Op.EnterList,((e,{op1:n,op2:i})=>{let o=e.stack,s=(0,t.check)(o.pop(),Fe),a=(0,t.check)(o.pop(),Fe),l=(0,r.valueForRef)(a),u=null===l?"@identity":String(l),c=(0,r.createIteratorRef)(s,u),p=(0,r.valueForRef)(c) +return"this"===a?t=i.getSelf():o[a]?t=(0,n.unwrap)(o[a]):0===a.indexOf("@")&&u[a]?t=u[a]:(t=this.scope.getSelf(),l=s),l.reduce(((e,t)=>(0,r.childRefFor)(e,t)),t)}}ae.add(i.Op.Debugger,((e,{op1:t,op2:i})=>{let o=e[y].getArray(t),s=e[y].getArray((0,n.decodeHandle)(i)),a=new Tt(e.scope(),o,s) +kt((0,r.valueForRef)(e.getSelf()),(e=>(0,r.valueForRef)(a.get(e))))})),ae.add(i.Op.EnterList,((e,{op1:n,op2:i})=>{let o=e.stack,s=(0,t.check)(o.pop(),Fe),a=(0,t.check)(o.pop(),Fe),l=(0,r.valueForRef)(a),u=null===l?"@identity":String(l),c=(0,r.createIteratorRef)(s,u),p=(0,r.valueForRef)(c) e.updateWith(new Oe(c,(e=>e.isEmpty()))),!0===p.isEmpty()?e.goto(i+1):(e.enterList(c,n),e.stack.push(p))})),ae.add(i.Op.ExitList,(e=>{e.exitList()})),ae.add(i.Op.Iterate,((e,{op1:r})=>{let n=e.stack,i=(0,t.check)(n.peek(),Le).next() null!==i?e.registerItem(e.enterItem(i)):e.goto(r)})) -const Et={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class kt{getCapabilities(){return Et}getDebugName({name:e}){return e}getSelf(){return r.NULL_REFERENCE}getDestroyable(){return null}}e.TemplateOnlyComponentManager=kt -const Tt=e.TEMPLATE_ONLY_COMPONENT_MANAGER=new kt -class St{constructor(e="@glimmer/component/template-only",t="(unknown template-only component)"){this.moduleName=e,this.name=t}toString(){return this.moduleName}}e.TemplateOnlyComponent=St,(0,a.setInternalComponentManager)(Tt,St.prototype) -const Rt={foreignObject:1,desc:1,title:1},Pt=Object.create(null) -class xt{constructor(e){this.document=e,this.setupUselessElement()}setupUselessElement(){this.uselessElement=this.document.createElement("div")}createElement(e,t){let r,i -if(t?(r=t.namespaceURI===n.NS_SVG||"svg"===e,i=!!Rt[t.tagName]):(r="svg"===e,i=!1),r&&!i){if(Pt[e])throw new Error(`Cannot create a ${e} inside an SVG context`) +const Rt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +class St{getCapabilities(){return Rt}getDebugName({name:e}){return e}getSelf(){return r.NULL_REFERENCE}getDestroyable(){return null}}e.TemplateOnlyComponentManager=St +const Pt=e.TEMPLATE_ONLY_COMPONENT_MANAGER=new St +class xt{constructor(e="@glimmer/component/template-only",t="(unknown template-only component)"){this.moduleName=e,this.name=t}toString(){return this.moduleName}}e.TemplateOnlyComponent=xt,(0,a.setInternalComponentManager)(Pt,xt.prototype) +const At={foreignObject:1,desc:1,title:1},Mt=Object.create(null) +class Nt{constructor(e){this.document=e,this.setupUselessElement()}setupUselessElement(){this.uselessElement=this.document.createElement("div")}createElement(e,t){let r,i +if(t?(r=t.namespaceURI===n.NS_SVG||"svg"===e,i=!!At[t.tagName]):(r="svg"===e,i=!1),r&&!i){if(Mt[e])throw new Error(`Cannot create a ${e} inside an SVG context`) return this.document.createElementNS(n.NS_SVG,e)}return this.document.createElement(e)}insertBefore(e,t,r){e.insertBefore(t,r)}insertHTMLBefore(e,t,r){if(""===r){const r=this.createComment("") return e.insertBefore(r,t),new O(e,r,r)}const i=t?t.previousSibling:e.lastChild let o @@ -2545,7 +2553,7 @@ if(null===t)e.insertAdjacentHTML(n.INSERT_BEFORE_END,r),o=(0,n.expect)(e.lastChi else if(t instanceof HTMLElement)t.insertAdjacentHTML("beforebegin",r),o=(0,n.expect)(t.previousSibling,"bug in insertAdjacentHTML?") else{const{uselessElement:i}=this e.insertBefore(i,t),i.insertAdjacentHTML(n.INSERT_BEFORE_BEGIN,r),o=(0,n.expect)(i.previousSibling,"bug in insertAdjacentHTML?"),e.removeChild(i)}const s=(0,n.expect)(i?i.nextSibling:e.firstChild,"bug in insertAdjacentHTML?") -return new O(e,s,o)}createTextNode(e){return this.document.createTextNode(e)}createComment(e){return this.document.createComment(e)}}function At(e,t,r){if(!e)return t +return new O(e,s,o)}createTextNode(e){return this.document.createTextNode(e)}createComment(e){return this.document.createComment(e)}}function Dt(e,t,r){if(!e)return t if(!function(e,t){const r=e.createElementNS(t,"svg") try{r.insertAdjacentHTML(n.INSERT_BEFORE_END,"")}catch(i){}finally{return 1!==r.childNodes.length||(0,n.castToBrowser)((0,n.unwrap)(r.firstChild),"SVG").namespaceURI!==n.NS_SVG}}(e,r))return t const i=e.createElement("div") @@ -2553,75 +2561,70 @@ return class extends t{insertHTMLBefore(e,t,o){return""===o||e.namespaceURI!==r? if((0,n.assert)(""!==r,"html cannot be empty"),"FOREIGNOBJECT"===e.tagName.toUpperCase()){const e=""+r+"";(0,n.clearElement)(t),t.insertAdjacentHTML(n.INSERT_AFTER_BEGIN,e),o=t.firstChild.firstChild}else{const e=""+r+"";(0,n.clearElement)(t),t.insertAdjacentHTML(n.INSERT_AFTER_BEGIN,e),o=t.firstChild}return function(e,t,r){const i=(0,n.expect)(e.firstChild,"source is empty") let o=i,s=i for(;s;){const e=s.nextSibling -t.insertBefore(s,r),o=s,s=e}return new O(t,i,o)}(o,e,i)}(e,i,o,t)}}}function Mt(e,t){return e&&function(e){const t=e.createElement("div") +t.insertBefore(s,r),o=s,s=e}return new O(t,i,o)}(o,e,i)}(e,i,o,t)}}}function jt(e,t){return e&&function(e){const t=e.createElement("div") if(t.appendChild(e.createTextNode("first")),t.insertAdjacentHTML(n.INSERT_BEFORE_END,"second"),2===t.childNodes.length)return!1 return!0}(e)?class extends t{constructor(e){super(e),this.uselessComment=void 0,this.uselessComment=e.createComment("")}insertHTMLBefore(e,t,r){if(""===r)return super.insertHTMLBefore(e,t,r) let n=!1 const i=t?t.previousSibling:e.lastChild i&&i instanceof Text&&(n=!0,e.insertBefore(this.uselessComment,t)) const o=super.insertHTMLBefore(e,t,r) -return n&&e.removeChild(this.uselessComment),o}}:t}const Nt="undefined"==typeof document?null:(0,n.castToSimple)(document) -let jt=class extends xt{createElementNS(e,t){return this.document.createElementNS(e,t)}setAttribute(e,t,r,n=null){n?e.setAttributeNS(n,t,r):e.setAttribute(t,r)}} -jt=Mt(Nt,jt),jt=At(Nt,jt,n.NS_SVG) -const Dt=e.DOMTreeConstruction=jt;["b","big","blockquote","body","br","center","code","dd","div","dl","dt","em","embed","h1","h2","h3","h4","h5","h6","head","hr","i","img","li","listing","main","meta","nobr","ol","p","pre","ruby","s","small","span","strong","strike","sub","sup","table","tt","u","ul","var"].forEach((e=>Pt[e]=1)) -const It=/[\t\n\v\f\r \xA0\u{1680}\u{180e}\u{2000}-\u{200a}\u{2028}\u{2029}\u{202f}\u{205f}\u{3000}\u{feff}]/u,Ft="undefined"==typeof document?null:(0,n.castToSimple)(document) -class Lt extends xt{constructor(e){super(e),this.namespace=void 0,this.document=e,this.namespace=null}setAttribute(e,t,r){e.setAttribute(t,r)}removeAttribute(e,t){e.removeAttribute(t)}insertAfter(e,t,r){this.insertBefore(e,t,r.nextSibling)}}e.IDOMChanges=Lt -let Bt=Lt -Bt=Mt(Ft,Bt),Bt=At(Ft,Bt,n.NS_SVG) -e.DOMChanges=Bt -let Ut=0 -class Ht{constructor(e){this.id=Ut++,this.value=void 0,this.value=e}get(){return this.value}release(){this.value=null}toString(){let e=`Ref ${this.id}` +return n&&e.removeChild(this.uselessComment),o}}:t}const It="undefined"==typeof document?null:(0,n.castToSimple)(document) +let Ft=class extends Nt{createElementNS(e,t){return this.document.createElementNS(e,t)}setAttribute(e,t,r,n=null){n?e.setAttributeNS(n,t,r):e.setAttribute(t,r)}} +Ft=jt(It,Ft),Ft=Dt(It,Ft,n.NS_SVG) +const Lt=e.DOMTreeConstruction=Ft;["b","big","blockquote","body","br","center","code","dd","div","dl","dt","em","embed","h1","h2","h3","h4","h5","h6","head","hr","i","img","li","listing","main","meta","nobr","ol","p","pre","ruby","s","small","span","strong","strike","sub","sup","table","tt","u","ul","var"].forEach((e=>Mt[e]=1)) +const Bt=/[\t\n\v\f\r \xA0\u{1680}\u{180e}\u{2000}-\u{200a}\u{2028}\u{2029}\u{202f}\u{205f}\u{3000}\u{feff}]/u,Ut="undefined"==typeof document?null:(0,n.castToSimple)(document) +class Ht extends Nt{constructor(e){super(e),this.namespace=void 0,this.document=e,this.namespace=null}setAttribute(e,t,r){e.setAttribute(t,r)}removeAttribute(e,t){e.removeAttribute(t)}insertAfter(e,t,r){this.insertBefore(e,t,r.nextSibling)}}e.IDOMChanges=Ht +let $t=Ht +$t=jt(Ut,$t),$t=Dt(Ut,$t,n.NS_SVG) +e.DOMChanges=$t +let Vt=0 +class zt{constructor(e){this.id=Vt++,this.value=void 0,this.value=e}get(){return this.value}release(){this.value=null}toString(){let e=`Ref ${this.id}` if(null===this.value)return`${e} (released)` -try{return`${e}: ${this.value}`}catch{return e}}}class $t{constructor(){this.stack=new n.Stack,this.refs=new WeakMap,this.roots=new Set,this.nodes=new WeakMap}begin(){this.reset()}create(e,t){let r=(0,n.assign)({},t,{bounds:null,refs:new Set}) +try{return`${e}: ${this.value}`}catch{return e}}}class qt{constructor(){this.stack=new n.Stack,this.refs=new WeakMap,this.roots=new Set,this.nodes=new WeakMap}begin(){this.reset()}create(e,t){let r=(0,n.assign)({},t,{bounds:null,refs:new Set}) this.nodes.set(e,r),this.appendChild(r,e),this.enter(e)}update(e){this.enter(e)}didRender(e,t){this.nodeFor(e).bounds=t,this.exit()}willDestroy(e){(0,n.expect)(this.refs.get(e),"BUG: missing ref").release()}commit(){this.reset()}capture(){return this.captureRefs(this.roots)}reset(){if(0!==this.stack.size){let e=(0,n.expect)(this.stack.toArray()[0],"expected root state when resetting render tree"),t=this.refs.get(e) -for(void 0!==t&&this.roots.delete(t);!this.stack.isEmpty();)this.stack.pop()}}enter(e){this.stack.push(e)}exit(){this.stack.pop()}nodeFor(e){return(0,n.expect)(this.nodes.get(e),"BUG: missing node")}appendChild(e,t){let r=this.stack.current,n=new Ht(t) +for(void 0!==t&&this.roots.delete(t);!this.stack.isEmpty();)this.stack.pop()}}enter(e){this.stack.push(e)}exit(){this.stack.pop()}nodeFor(e){return(0,n.expect)(this.nodes.get(e),"BUG: missing node")}appendChild(e,t){let r=this.stack.current,n=new zt(t) if(this.refs.set(t,n),r){let t=this.nodeFor(r) t.refs.add(n),e.parent=t}else this.roots.add(n)}captureRefs(e){let t=[] return e.forEach((r=>{let n=r.get() n?t.push(this.captureNode(`render-node:${r.id}`,n)):e.delete(r)})),t}captureNode(e,t){let r=this.nodeFor(t),{type:n,name:i,args:o,instance:s,refs:a}=r,l=this.captureTemplate(r),u=this.captureBounds(r),c=this.captureRefs(a) -return{id:e,type:n,name:i,args:pt(o),instance:s,template:l,bounds:u,children:c}}captureTemplate({template:e}){return e||null}captureBounds(e){let t=(0,n.expect)(e.bounds,"BUG: missing bounds") -return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}}const Vt=Symbol("TRANSACTION") -class zt{constructor(){this.scheduledInstallModifiers=[],this.scheduledUpdateModifiers=[],this.createdComponents=[],this.updatedComponents=[]}didCreate(e){this.createdComponents.push(e)}didUpdate(e){this.updatedComponents.push(e)}scheduleInstallModifier(e){this.scheduledInstallModifiers.push(e)}scheduleUpdateModifier(e){this.scheduledUpdateModifiers.push(e)}commit(){let{createdComponents:e,updatedComponents:t}=this +return{id:e,type:n,name:i,args:ft(o),instance:s,template:l,bounds:u,children:c}}captureTemplate({template:e}){return e||null}captureBounds(e){let t=(0,n.expect)(e.bounds,"BUG: missing bounds") +return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}}const Gt=Symbol("TRANSACTION") +class Wt{constructor(){this.scheduledInstallModifiers=[],this.scheduledUpdateModifiers=[],this.createdComponents=[],this.updatedComponents=[]}didCreate(e){this.createdComponents.push(e)}didUpdate(e){this.updatedComponents.push(e)}scheduleInstallModifier(e){this.scheduledInstallModifiers.push(e)}scheduleUpdateModifier(e){this.scheduledUpdateModifiers.push(e)}commit(){let{createdComponents:e,updatedComponents:t}=this for(const{manager:i,state:o}of e)i.didCreate(o) for(const{manager:i,state:o}of t)i.didUpdate(o) let{scheduledInstallModifiers:r,scheduledUpdateModifiers:n}=this for(const{manager:i,state:o,definition:s}of r){let e=i.getTag(o) if(null!==e){let t=(0,l.track)((()=>i.install(o)),!1);(0,l.updateTag)(e,t)}else i.install(o)}for(const{manager:i,state:o,definition:s}of n){let e=i.getTag(o) -if(null!==e){let t=(0,l.track)((()=>i.update(o)),!1);(0,l.updateTag)(e,t)}else i.update(o)}}}class qt{constructor(e,t){this[Vt]=null,this.updateOperations=void 0,this.isInteractive=void 0,this.debugRenderTree=void 0,this.delegate=t,this.isInteractive=t.isInteractive,this.debugRenderTree=this.delegate.enableDebugTooling?new $t:void 0,e.appendOperations?(this.appendOperations=e.appendOperations,this.updateOperations=e.updateOperations):e.document&&(this.appendOperations=new Dt(e.document),this.updateOperations=new Lt(e.document))}getAppendOperations(){return this.appendOperations}getDOM(){return(0,n.expect)(this.updateOperations,"Attempted to get DOM updateOperations, but they were not provided by the environment. You may be attempting to rerender in an environment which does not support rerendering, such as SSR.")}begin(){(0,n.assert)(!this[Vt],"A glimmer transaction was begun, but one already exists. You may have a nested transaction, possibly caused by an earlier runtime exception while rendering. Please check your console for the stack trace of any prior exceptions."),this.debugRenderTree?.begin(),this[Vt]=new zt}get transaction(){return(0,n.expect)(this[Vt],"must be in a transaction")}didCreate(e){this.transaction.didCreate(e)}didUpdate(e){this.transaction.didUpdate(e)}scheduleInstallModifier(e){this.isInteractive&&this.transaction.scheduleInstallModifier(e)}scheduleUpdateModifier(e){this.isInteractive&&this.transaction.scheduleUpdateModifier(e)}commit(){let e=this.transaction -this[Vt]=null,e.commit(),this.debugRenderTree?.commit(),this.delegate.onTransactionCommit()}}function Gt(e,t){if(e[Vt])t() +if(null!==e){let t=(0,l.track)((()=>i.update(o)),!1);(0,l.updateTag)(e,t)}else i.update(o)}}}class Yt{constructor(e,t){this[Gt]=null,this.updateOperations=void 0,this.isInteractive=void 0,this.isArgumentCaptureError=void 0,this.debugRenderTree=void 0,this.delegate=t,this.isInteractive=t.isInteractive,this.debugRenderTree=this.delegate.enableDebugTooling?new qt:void 0,this.isArgumentCaptureError=this.delegate.enableDebugTooling?dt:void 0,e.appendOperations?(this.appendOperations=e.appendOperations,this.updateOperations=e.updateOperations):e.document&&(this.appendOperations=new Lt(e.document),this.updateOperations=new Ht(e.document))}getAppendOperations(){return this.appendOperations}getDOM(){return(0,n.expect)(this.updateOperations,"Attempted to get DOM updateOperations, but they were not provided by the environment. You may be attempting to rerender in an environment which does not support rerendering, such as SSR.")}begin(){(0,n.assert)(!this[Gt],"A glimmer transaction was begun, but one already exists. You may have a nested transaction, possibly caused by an earlier runtime exception while rendering. Please check your console for the stack trace of any prior exceptions."),this.debugRenderTree?.begin(),this[Gt]=new Wt}get transaction(){return(0,n.expect)(this[Gt],"must be in a transaction")}didCreate(e){this.transaction.didCreate(e)}didUpdate(e){this.transaction.didUpdate(e)}scheduleInstallModifier(e){this.isInteractive&&this.transaction.scheduleInstallModifier(e)}scheduleUpdateModifier(e){this.isInteractive&&this.transaction.scheduleUpdateModifier(e)}commit(){let e=this.transaction +this[Gt]=null,e.commit(),this.debugRenderTree?.commit(),this.delegate.onTransactionCommit()}}function Qt(e,t){if(e[Gt])t() else{e.begin() -try{t()}finally{e.commit()}}}function Wt(e){return(0,a.setInternalHelperManager)(e,{})}e.EnvironmentImpl=qt -e.array=Wt((({positional:e})=>(0,r.createComputeRef)((()=>ct(e)),null,"array"))) -const Yt=e=>(e=>null==e||"function"!=typeof e.toString)(e)?"":String(e),Qt=(e.concat=Wt((({positional:e})=>(0,r.createComputeRef)((()=>ct(e).map(Yt).join("")),null,"concat"))),(0,n.buildUntouchableThis)("`fn` helper")) -e.fn=Wt((({positional:e})=>{let n=(0,t.check)(e[0],Kt) +try{t()}finally{e.commit()}}}function Kt(e){return(0,a.setInternalHelperManager)(e,{})}e.EnvironmentImpl=Yt +e.array=Kt((({positional:e})=>(0,r.createComputeRef)((()=>ct(e)),null,"array"))) +const Jt=e=>(e=>null==e||"function"!=typeof e.toString)(e)?"":String(e),Xt=(e.concat=Kt((({positional:e})=>(0,r.createComputeRef)((()=>ct(e).map(Jt).join("")),null,"concat"))),(0,n.buildUntouchableThis)("`fn` helper")) +e.fn=Kt((({positional:e})=>{let n=(0,t.check)(e[0],Zt) return(0,r.createComputeRef)((()=>(...t)=>{let[i,...o]=ct(e) if((0,r.isInvokableRef)(n)){let e=o.length>0?o[0]:t[0] -return(0,r.updateRef)(n,e)}return i.call(Qt,...o,...t)}),null,"fn")})) -function Kt(e){if(!e||!(0,r.isInvokableRef)(e)&&"function"!=typeof(0,r.valueForRef)(e))throw new Error(`You must pass a function as the \`fn\` helper's first argument, you passed ${e?(0,r.valueForRef)(e):e}. While rendering:\n\n${e?.debugLabel}`)}e.get=Wt((({positional:e})=>{let t=e[0]??r.UNDEFINED_REFERENCE,i=e[1]??r.UNDEFINED_REFERENCE +return(0,r.updateRef)(n,e)}return i.call(Xt,...o,...t)}),null,"fn")})) +function Zt(e){if(!e||!(0,r.isInvokableRef)(e)&&"function"!=typeof(0,r.valueForRef)(e))throw new Error(`You must pass a function as the \`fn\` helper's first argument, you passed ${e?(0,r.valueForRef)(e):e}. While rendering:\n\n${e?.debugLabel}`)}e.get=Kt((({positional:e})=>{let t=e[0]??r.UNDEFINED_REFERENCE,i=e[1]??r.UNDEFINED_REFERENCE return(0,r.createComputeRef)((()=>{let e=(0,r.valueForRef)(t) if((0,n.isDict)(e))return(0,s.getPath)(e,String((0,r.valueForRef)(i)))}),(e=>{let o=(0,r.valueForRef)(t) -if((0,n.isDict)(o))return(0,s.setPath)(o,String((0,r.valueForRef)(i)),e)}),"get")})) -e.hash=Wt((({named:e})=>{let t=(0,r.createComputeRef)((()=>{let t=ut(e) -return t}),null,"hash"),n=new Map +if((0,n.isDict)(o))return(0,s.setPath)(o,String((0,r.valueForRef)(i)),e)}),"get")})),e.hash=Kt((({named:e})=>{let t=(0,r.createComputeRef)((()=>ut(e)),null,"hash"),n=new Map for(let r in e)n.set(r,e[r]) return t.children=n,t})) -function Jt(e){return(0,l.getValue)(e.argsCache)}class Xt{constructor(e,t=(()=>ft)){this.argsCache=void 0 +function er(e){return(0,l.getValue)(e.argsCache)}class tr{constructor(e,t=(()=>bt)){this.argsCache=void 0 let r=(0,l.createCache)((()=>t(e))) -this.argsCache=r}get named(){return Jt(this).named||dt}get positional(){return Jt(this).positional||ht}}(0,n.buildUntouchableThis)("`on` modifier") -class Zt{constructor(e,t){this.tag=(0,l.createUpdatableTag)(),this.element=void 0,this.args=void 0,this.once=void 0,this.passive=void 0,this.capture=void 0,this.options=void 0,this.shouldUpdate=!0,this.element=e,this.args=t}updateFromArgs(){let{args:e}=this,{once:i,passive:o,capture:s}=ut(e.named) -i!==this.once&&(this.once=i,this.shouldUpdate=!0),o!==this.passive&&(this.passive=o,this.shouldUpdate=!0),s!==this.capture&&(this.capture=s,this.shouldUpdate=!0),this.options=void 0!==i||void 0!==o||void 0!==s?{once:i,passive:o,capture:s}:void 0 -let a=(0,n.expect)(e.positional[0],"You must pass a valid DOM event name as the first argument to the `on` modifier"),l=(0,t.check)((0,r.valueForRef)(a),t.CheckString,(()=>"You must pass a valid DOM event name as the first argument to the `on` modifier")) -l!==this.eventName&&(this.eventName=l,this.shouldUpdate=!0) -const u=(0,n.expect)(e.positional[1],"You must pass a function as the second argument to the `on` modifier"),c=(0,t.check)((0,r.valueForRef)(u),t.CheckFunction,(e=>`You must pass a function as the second argument to the \`on\` modifier; you passed ${null===e?"null":typeof e}. While rendering:\n\n${u.debugLabel??"{unlabeled value}"}`)) -c!==this.userProvidedCallback&&(this.userProvidedCallback=c,this.shouldUpdate=!0) -this.shouldUpdate&&(this.callback=c)}}let er=0,tr=0 -function rr(e,t,r,n){tr++,e.removeEventListener(t,r,n)}function nr(e,t,r,n){er++,e.addEventListener(t,r,n)}e.on=(0,a.setInternalModifierManager)(new class{getDebugName(){return"on"}get counters(){return{adds:er,removes:tr}}create(e,t,r,n){return new Zt(t,n)}getTag(e){return null===e?null:e.tag}install(e){if(null===e)return -e.updateFromArgs() -let{element:t,eventName:r,callback:n,options:i}=e -nr(t,r,n,i),(0,o.registerDestructor)(e,(()=>rr(t,r,n,i))),e.shouldUpdate=!1}update(e){if(null===e)return -let{element:t,eventName:r,callback:n,options:i}=e -e.updateFromArgs(),e.shouldUpdate&&(rr(t,r,n,i),nr(e.element,e.eventName,e.callback,e.options),e.shouldUpdate=!1)}getDestroyable(e){return e}},{}) -class ir{constructor(e,t,r,n,i){this.currentOpSize=0,this.stack=e,this.heap=t,this.program=r,this.externs=n,this.registers=i}fetchRegister(e){return this.registers[e]}loadRegister(e,t){this.registers[e]=t}setPc(e){(0,n.assert)("number"==typeof e&&!isNaN(e),"pc is set to a number"),this.registers[i.$pc]=e}pushFrame(){this.stack.push(this.registers[i.$ra]),this.stack.push(this.registers[i.$fp]),this.registers[i.$fp]=this.registers[i.$sp]-1}popFrame(){this.registers[i.$sp]=this.registers[i.$fp]-1,this.registers[i.$ra]=this.stack.get(0),this.registers[i.$fp]=this.stack.get(1)}pushSmallFrame(){this.stack.push(this.registers[i.$ra])}popSmallFrame(){this.registers[i.$ra]=this.stack.pop()}goto(e){this.setPc(this.target(e))}target(e){return this.registers[i.$pc]+e-this.currentOpSize}call(e){(0,n.assert)(e<4294967295,"Jumping to placeholder address"),this.registers[i.$ra]=this.registers[i.$pc],this.setPc(this.heap.getaddr(e))}returnTo(e){this.registers[i.$ra]=this.target(e)}return(){this.setPc(this.registers[i.$ra])}nextStatement(){let{registers:e,program:t}=this,r=e[i.$pc] +this.argsCache=r}get named(){return er(this).named||mt}get positional(){return er(this).positional||gt}}(0,n.buildUntouchableThis)("`on` modifier") +class rr{constructor(e,t){this.tag=(0,l.createUpdatableTag)(),this.element=void 0,this.args=void 0,this.listener=null,this.element=e,this.args=t,(0,o.registerDestructor)(this,(()=>{let{element:e,listener:t}=this +if(t){let{eventName:r,callback:n,options:i}=t +or(e,r,n,i)}}))}updateListener(){let{element:e,args:i,listener:o}=this;(0,n.assert)(i.positional[0],"You must pass a valid DOM event name as the first argument to the `on` modifier") +let s=(0,t.check)((0,r.valueForRef)(i.positional[0]),t.CheckString,(()=>"You must pass a valid DOM event name as the first argument to the `on` modifier"));(0,n.assert)(i.positional[1],"You must pass a function as the second argument to the `on` modifier") +let a,l,u,c=(0,t.check)((0,r.valueForRef)(i.positional[1]),t.CheckFunction,(e=>`You must pass a function as the second argument to the \`on\` modifier; you passed ${null===e?"null":typeof e}. While rendering:\n\n${i.positional[1]?.debugLabel??"{unlabeled value}"}`)) +{let{once:e,passive:t,capture:n}=i.named +e&&(a=(0,r.valueForRef)(e)),t&&(l=(0,r.valueForRef)(t)),n&&(u=(0,r.valueForRef)(n))}let p,d=!1 +if(d=null===o||(s!==o.eventName||c!==o.userProvidedCallback||a!==o.once||l!==o.passive||u!==o.capture),d&&(void 0===a&&void 0===l&&void 0===u||(p={once:a,passive:l,capture:u})),d){let t=c +0,this.listener={eventName:s,callback:t,userProvidedCallback:c,once:a,passive:l,capture:u,options:p},o&&or(e,o.eventName,o.callback,o.options),function(e,t,r,n){nr++,e.addEventListener(t,r,n)}(e,s,t,p)}}}let nr=0,ir=0 +function or(e,t,r,n){ir++,e.removeEventListener(t,r,n)}e.on=(0,a.setInternalModifierManager)(new class{getDebugName(){return"on"}getDebugInstance(){return null}get counters(){return{adds:nr,removes:ir}}create(e,t,r,n){return new rr(t,n)}getTag({tag:e}){return e}install(e){e.updateListener()}update(e){e.updateListener()}getDestroyable(e){return e}},{}) +class sr{constructor(e,t,r,n,i){this.currentOpSize=0,this.stack=e,this.heap=t,this.program=r,this.externs=n,this.registers=i}fetchRegister(e){return this.registers[e]}loadRegister(e,t){this.registers[e]=t}setPc(e){(0,n.assert)("number"==typeof e&&!isNaN(e),"pc is set to a number"),this.registers[i.$pc]=e}pushFrame(){this.stack.push(this.registers[i.$ra]),this.stack.push(this.registers[i.$fp]),this.registers[i.$fp]=this.registers[i.$sp]-1}popFrame(){this.registers[i.$sp]=this.registers[i.$fp]-1,this.registers[i.$ra]=this.stack.get(0),this.registers[i.$fp]=this.stack.get(1)}pushSmallFrame(){this.stack.push(this.registers[i.$ra])}popSmallFrame(){this.registers[i.$ra]=this.stack.pop()}goto(e){this.setPc(this.target(e))}target(e){return this.registers[i.$pc]+e-this.currentOpSize}call(e){(0,n.assert)(e<4294967295,"Jumping to placeholder address"),this.registers[i.$ra]=this.registers[i.$pc],this.setPc(this.heap.getaddr(e))}returnTo(e){this.registers[i.$ra]=this.target(e)}return(){this.setPc(this.registers[i.$ra])}nextStatement(){let{registers:e,program:t}=this,r=e[i.$pc] if((0,n.assert)("number"==typeof r,"pc is a number"),-1===r)return null let o=t.opcode(r),s=this.currentOpSize=o.size return this.registers[i.$pc]+=s,o}evaluateOuter(e,t){this.evaluateInner(e,t)}evaluateInner(e,t){e.isMachine?this.evaluateMachine(e):this.evaluateSyscall(e,t)}evaluateMachine(e){switch(e.type){case i.MachineOp.PushFrame:return this.pushFrame() @@ -2630,11 +2633,11 @@ case i.MachineOp.InvokeStatic:return this.call(e.op1) case i.MachineOp.InvokeVirtual:return this.call(this.stack.pop()) case i.MachineOp.Jump:return this.goto(e.op1) case i.MachineOp.Return:return this.return() -case i.MachineOp.ReturnTo:return this.returnTo(e.op1)}}evaluateSyscall(e,t){ae.evaluate(t,e,e.type)}}class or{constructor(e,{alwaysRevalidate:t=!1}){this.env=void 0,this.dom=void 0,this.alwaysRevalidate=void 0,this.frameStack=new n.Stack,this.env=e,this.dom=e.getDOM(),this.alwaysRevalidate=t}execute(e,t){this._execute(e,t)}_execute(e,t){let{frameStack:r}=this +case i.MachineOp.ReturnTo:return this.returnTo(e.op1)}}evaluateSyscall(e,t){ae.evaluate(t,e,e.type)}}class ar{constructor(e,{alwaysRevalidate:t=!1}){this.env=void 0,this.dom=void 0,this.alwaysRevalidate=void 0,this.frameStack=new n.Stack,this.env=e,this.dom=e.getDOM(),this.alwaysRevalidate=t}execute(e,t){this._execute(e,t)}_execute(e,t){let{frameStack:r}=this for(this.try(e,t);!r.isEmpty();){let e=this.frame.nextStatement() -void 0!==e?e.evaluate(this):r.pop()}}get frame(){return(0,n.expect)(this.frameStack.current,"bug: expected a frame")}goto(e){this.frame.goto(e)}try(e,t){this.frameStack.push(new pr(e,t))}throw(){this.frame.handleException(),this.frameStack.pop()}}e.UpdatingVM=or -class sr{constructor(e,t){this.state=e,this.resumeCallback=t}resume(e,t){return this.resumeCallback(e,this.state,t)}}class ar{constructor(e,t,r,n){this.children=void 0,this.bounds=void 0,this.state=e,this.runtime=t,this.children=n,this.bounds=r}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}evaluate(e){e.try(this.children,null)}}class lr extends ar{constructor(...e){super(...e),this.type="try"}evaluate(e){e.try(this.children,this)}handleException(){let{state:e,bounds:t,runtime:r}=this;(0,o.destroyChildren)(this) -let n=re.resume(r.env,t),i=e.resume(r,n),s=[],a=this.children=[],l=i.execute((e=>{e.pushUpdating(s),e.updateWith(this),e.pushUpdating(a)}));(0,o.associateDestroyableChild)(this,l.drop)}}class ur extends lr{constructor(e,t,r,n,i,o){super(e,t,r,[]),this.retained=!1,this.index=-1,this.key=n,this.memo=i,this.value=o}updateReferences(e){this.retained=!0,(0,r.updateRef)(this.value,e.value),(0,r.updateRef)(this.memo,e.memo)}shouldRemove(){return!this.retained}reset(){this.retained=!1}}class cr extends ar{constructor(e,t,n,i,o){super(e,t,n,i),this.type="list-block",this.opcodeMap=new Map,this.marker=null,this.lastIterator=void 0,this.iterableRef=o,this.lastIterator=(0,r.valueForRef)(o)}initializeChild(e){e.index=this.children.length-1,this.opcodeMap.set(e.key,e)}evaluate(e){let t=(0,r.valueForRef)(this.iterableRef) +void 0!==e?e.evaluate(this):r.pop()}}get frame(){return(0,n.expect)(this.frameStack.current,"bug: expected a frame")}goto(e){this.frame.goto(e)}try(e,t){this.frameStack.push(new hr(e,t))}throw(){this.frame.handleException(),this.frameStack.pop()}}e.UpdatingVM=ar +class lr{constructor(e,t){this.state=e,this.resumeCallback=t}resume(e,t){return this.resumeCallback(e,this.state,t)}}class ur{constructor(e,t,r,n){this.children=void 0,this.bounds=void 0,this.state=e,this.runtime=t,this.children=n,this.bounds=r}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}evaluate(e){e.try(this.children,null)}}class cr extends ur{constructor(...e){super(...e),this.type="try"}evaluate(e){e.try(this.children,this)}handleException(){let{state:e,bounds:t,runtime:r}=this;(0,o.destroyChildren)(this) +let n=re.resume(r.env,t),i=e.resume(r,n),s=[],a=this.children=[],l=i.execute((e=>{e.pushUpdating(s),e.updateWith(this),e.pushUpdating(a)}));(0,o.associateDestroyableChild)(this,l.drop)}}class pr extends cr{constructor(e,t,r,n,i,o){super(e,t,r,[]),this.retained=!1,this.index=-1,this.key=n,this.memo=i,this.value=o}updateReferences(e){this.retained=!0,(0,r.updateRef)(this.value,e.value),(0,r.updateRef)(this.memo,e.memo)}shouldRemove(){return!this.retained}reset(){this.retained=!1}}class dr extends ur{constructor(e,t,n,i,o){super(e,t,n,i),this.type="list-block",this.opcodeMap=new Map,this.marker=null,this.lastIterator=void 0,this.iterableRef=o,this.lastIterator=(0,r.valueForRef)(o)}initializeChild(e){e.index=this.children.length-1,this.opcodeMap.set(e.key,e)}evaluate(e){let t=(0,r.valueForRef)(this.iterableRef) if(this.lastIterator!==t){let{bounds:r}=this,{dom:i}=e,o=this.marker=i.createComment("") i.insertAfter(r.parentElement(),o,(0,n.expect)(r.lastNode(),"can't insert after an empty bounds")),this.sync(t),this.parentElement().removeChild(o),this.marker=null,this.lastIterator=t}super.evaluate(e)}sync(e){let{opcodeMap:t,children:r}=this,i=0,o=0 for(this.children=this.bounds.boundList=[];;){let s=e.next() @@ -2650,10 +2653,10 @@ for(let e=i+1;e{t.pushUpdating() let n=t.enterItem(e) -n.index=a.length,a.push(n),r.set(l,n),(0,o.associateDestroyableChild)(this,n)}))}moveItem(e,t,n){let i,o,{children:s}=this;(0,r.updateRef)(e.memo,t.memo),(0,r.updateRef)(e.value,t.value),e.retained=!0,void 0===n?w(e,this.marker):(i=e.lastNode().nextSibling,o=n.firstNode(),i!==o&&w(e,o)),e.index=s.length,s.push(e)}deleteItem(e){(0,o.destroy)(e),C(e),this.opcodeMap.delete(e.key)}}class pr{constructor(e,t){this.current=0,this.ops=e,this.exceptionHandler=t}goto(e){this.current=e}nextStatement(){return this.ops[this.current++]}handleException(){this.exceptionHandler&&this.exceptionHandler.handleException()}}class dr{constructor(e,t,r,n){this.env=e,this.updating=t,this.bounds=r,this.drop=n,(0,o.associateDestroyableChild)(this,n),(0,o.registerDestructor)(this,(()=>C(this.bounds)))}rerender({alwaysRevalidate:e=!1}={alwaysRevalidate:!1}){let{env:t,updating:r}=this -new or(t,{alwaysRevalidate:e}).execute(r,this)}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}handleException(){throw"this should never happen"}}class hr{static restore(e){return new this(e.slice(),[0,-1,e.length-1,0])}constructor(e=[],t){this[g]=void 0,this.stack=e,this[g]=t}push(e){this.stack[++this[g][i.$sp]]=e}dup(e=this[g][i.$sp]){this.stack[++this[g][i.$sp]]=this.stack[e]}copy(e,t){this.stack[t]=this.stack[e]}pop(e=1){let t=this.stack[this[g][i.$sp]] +n.index=a.length,a.push(n),r.set(l,n),(0,o.associateDestroyableChild)(this,n)}))}moveItem(e,t,n){let i,o,{children:s}=this;(0,r.updateRef)(e.memo,t.memo),(0,r.updateRef)(e.value,t.value),e.retained=!0,void 0===n?w(e,this.marker):(i=e.lastNode().nextSibling,o=n.firstNode(),i!==o&&w(e,o)),e.index=s.length,s.push(e)}deleteItem(e){(0,o.destroy)(e),E(e),this.opcodeMap.delete(e.key)}}class hr{constructor(e,t){this.current=0,this.ops=e,this.exceptionHandler=t}goto(e){this.current=e}nextStatement(){return this.ops[this.current++]}handleException(){this.exceptionHandler&&this.exceptionHandler.handleException()}}class fr{constructor(e,t,r,n){this.env=e,this.updating=t,this.bounds=r,this.drop=n,(0,o.associateDestroyableChild)(this,n),(0,o.registerDestructor)(this,(()=>E(this.bounds)))}rerender({alwaysRevalidate:e=!1}={alwaysRevalidate:!1}){let{env:t,updating:r}=this +new ar(t,{alwaysRevalidate:e}).execute(r,this)}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}handleException(){throw"this should never happen"}}class mr{static restore(e){return new this(e.slice(),[0,-1,e.length-1,0])}constructor(e=[],t){this[g]=void 0,this.stack=e,this[g]=t}push(e){this.stack[++this[g][i.$sp]]=e}dup(e=this[g][i.$sp]){this.stack[++this[g][i.$sp]]=this.stack[e]}copy(e,t){this.stack[t]=this.stack[e]}pop(e=1){let t=this.stack[this[g][i.$sp]] return this[g][i.$sp]-=e,t}peek(e=0){return this.stack[this[g][i.$sp]-e]}get(e,t=this[g][i.$fp]){return this.stack[t+e]}set(e,t,r=this[g][i.$fp]){this.stack[r+t]=e}slice(e,t){return this.stack.slice(e,t)}capture(e){let t=this[g][i.$sp]+1,r=t-e -return this.stack.slice(r,t)}reset(){this.stack.length=0}toArray(){return this.stack.slice(this[g][i.$fp],this[g][i.$sp]+1)}}class fr{constructor(){this.scope=new n.Stack,this.dynamicScope=new n.Stack,this.updating=new n.Stack,this.cache=new n.Stack,this.list=new n.Stack}}class mr{get stack(){return this[h].stack}get pc(){return this[h].fetchRegister(i.$pc)}fetch(e){let t=this.fetchValue(e) +return this.stack.slice(r,t)}reset(){this.stack.length=0}toArray(){return this.stack.slice(this[g][i.$fp],this[g][i.$sp]+1)}}class gr{constructor(){this.scope=new n.Stack,this.dynamicScope=new n.Stack,this.updating=new n.Stack,this.cache=new n.Stack,this.list=new n.Stack}}class br{get stack(){return this[h].stack}get pc(){return this[h].fetchRegister(i.$pc)}fetch(e){let t=this.fetchValue(e) this.stack.push(t)}load(e){let t=this.stack.pop() this.loadValue(e,t)}fetchValue(e){if((0,i.isLowLevelRegister)(e))return this[h].fetchRegister(e) switch(e){case i.$s0:return this.s0 @@ -2668,41 +2671,41 @@ case i.$t0:this.t0=t break case i.$t1:this.t1=t break -case i.$v0:this.v0=t}}pushFrame(){this[h].pushFrame()}popFrame(){this[h].popFrame()}goto(e){this[h].goto(e)}call(e){this[h].call(e)}returnTo(e){this[h].returnTo(e)}return(){this[h].return()}constructor(e,{pc:t,scope:r,dynamicScope:o,stack:s},a,l){this[m]=new fr,this[b]=void 0,this.destructor=void 0,this[f]=new n.Stack,this[y]=void 0,this[v]=void 0,this[h]=void 0,this.s0=null,this.s1=null,this.t0=null,this.t1=null,this.v0=null,this.resume=void 0,this.runtime=e,this.elementStack=a,this.context=l,this.resume=br(l) -let u=hr.restore(s);(0,n.assert)("number"==typeof t,"pc is a number"),u[g][i.$pc]=t,u[g][i.$sp]=s.length-1,u[g][i.$fp]=-1,this[b]=this.program.heap,this[y]=this.program.constants,this.elementStack=a,this[m].scope.push(r),this[m].dynamicScope.push(o),this[v]=new et,this[h]=new ir(u,this[b],e.program,{debugBefore:e=>ae.debugBefore(this,e),debugAfter:e=>{ae.debugAfter(this,e)}},u[g]),this.destructor={},this[f].push(this.destructor)}static initial(e,t,{handle:r,self:n,dynamicScope:i,treeBuilder:o,numSymbols:s,owner:a}){let l=d.root(n,s,a),u=gr(e.program.heap.getaddr(r),l,i),c=br(t)(e,u,o) -return c.pushUpdating(),c}static empty(e,{handle:t,treeBuilder:n,dynamicScope:i,owner:o},s){let a=br(s)(e,gr(e.program.heap.getaddr(t),d.root(r.UNDEFINED_REFERENCE,0,o),i),n) -return a.pushUpdating(),a}compile(e){return(0,n.unwrapHandle)(e.compile(this.context))}get program(){return this.runtime.program}get env(){return this.runtime.env}captureState(e,t=this[h].fetchRegister(i.$pc)){return{pc:t,scope:this.scope(),dynamicScope:this.dynamicScope(),stack:this.stack.capture(e)}}capture(e,t=this[h].fetchRegister(i.$pc)){return new sr(this.captureState(e,t),this.resume)}beginCacheGroup(e){let t=this.updating(),r=new we -t.push(r),t.push(new Ce(e)),this[m].cache.push(r),(0,l.beginTrackFrame)(e)}commitCacheGroup(){let e=this.updating(),t=(0,n.expect)(this[m].cache.pop(),"VM BUG: Expected a cache group"),r=(0,l.endTrackFrame)() -e.push(new Ee(t)),t.finalize(r,e.length)}enter(e){let t=this.capture(e),r=this.elements().pushUpdatableBlock(),n=new lr(t,this.runtime,r,[]) +case i.$v0:this.v0=t}}pushFrame(){this[h].pushFrame()}popFrame(){this[h].popFrame()}goto(e){this[h].goto(e)}call(e){this[h].call(e)}returnTo(e){this[h].returnTo(e)}return(){this[h].return()}constructor(e,{pc:t,scope:r,dynamicScope:o,stack:s},a,l){this[m]=new gr,this[b]=void 0,this.destructor=void 0,this[f]=new n.Stack,this[y]=void 0,this[v]=void 0,this[h]=void 0,this.s0=null,this.s1=null,this.t0=null,this.t1=null,this.v0=null,this.resume=void 0,this.runtime=e,this.elementStack=a,this.context=l,this.resume=vr(l) +let u=mr.restore(s);(0,n.assert)("number"==typeof t,"pc is a number"),u[g][i.$pc]=t,u[g][i.$sp]=s.length-1,u[g][i.$fp]=-1,this[b]=this.program.heap,this[y]=this.program.constants,this.elementStack=a,this[m].scope.push(r),this[m].dynamicScope.push(o),this[v]=new et,this[h]=new sr(u,this[b],e.program,{debugBefore:e=>ae.debugBefore(this,e),debugAfter:e=>{ae.debugAfter(this,e)}},u[g]),this.destructor={},this[f].push(this.destructor)}static initial(e,t,{handle:r,self:n,dynamicScope:i,treeBuilder:o,numSymbols:s,owner:a}){let l=d.root(n,s,a),u=yr(e.program.heap.getaddr(r),l,i),c=vr(t)(e,u,o) +return c.pushUpdating(),c}static empty(e,{handle:t,treeBuilder:n,dynamicScope:i,owner:o},s){let a=vr(s)(e,yr(e.program.heap.getaddr(t),d.root(r.UNDEFINED_REFERENCE,0,o),i),n) +return a.pushUpdating(),a}compile(e){return(0,n.unwrapHandle)(e.compile(this.context))}get program(){return this.runtime.program}get env(){return this.runtime.env}captureState(e,t=this[h].fetchRegister(i.$pc)){return{pc:t,scope:this.scope(),dynamicScope:this.dynamicScope(),stack:this.stack.capture(e)}}capture(e,t=this[h].fetchRegister(i.$pc)){return new lr(this.captureState(e,t),this.resume)}beginCacheGroup(e){let t=this.updating(),r=new we +t.push(r),t.push(new Ee(e)),this[m].cache.push(r),(0,l.beginTrackFrame)(e)}commitCacheGroup(){let e=this.updating(),t=(0,n.expect)(this[m].cache.pop(),"VM BUG: Expected a cache group"),r=(0,l.endTrackFrame)() +e.push(new Ce(t)),t.finalize(r,e.length)}enter(e){let t=this.capture(e),r=this.elements().pushUpdatableBlock(),n=new cr(t,this.runtime,r,[]) this.didEnter(n)}enterItem({key:e,value:t,memo:n}){let{stack:i}=this,o=(0,r.createIteratorItemRef)(t),s=(0,r.createIteratorItemRef)(n) i.push(o),i.push(s) -let a=this.capture(2),l=this.elements().pushUpdatableBlock(),u=new ur(a,this.runtime,l,e,s,o) -return this.didEnter(u),u}registerItem(e){this.listBlock().initializeChild(e)}enterList(e,t){let r=[],n=this[h].target(t),i=this.capture(0,n),o=this.elements().pushBlockList(r),s=new cr(i,this.runtime,o,r,e) +let a=this.capture(2),l=this.elements().pushUpdatableBlock(),u=new pr(a,this.runtime,l,e,s,o) +return this.didEnter(u),u}registerItem(e){this.listBlock().initializeChild(e)}enterList(e,t){let r=[],n=this[h].target(t),i=this.capture(0,n),o=this.elements().pushBlockList(r),s=new dr(i,this.runtime,o,r,e) this[m].list.push(s),this.didEnter(s)}didEnter(e){this.associateDestroyable(e),this[f].push(e),this.updateWith(e),this.pushUpdating(e.children)}exit(){this[f].pop(),this.elements().popBlock(),this.popUpdating()}exitList(){this.exit(),this[m].list.pop()}pushUpdating(e=[]){this[m].updating.push(e)}popUpdating(){return(0,n.expect)(this[m].updating.pop(),"can't pop an empty stack")}updateWith(e){this.updating().push(e)}listBlock(){return(0,n.expect)(this[m].list.current,"expected a list block")}associateDestroyable(e){let t=(0,n.expect)(this[f].current,"Expected destructor parent");(0,o.associateDestroyableChild)(t,e)}tryUpdating(){return this[m].updating.current}updating(){return(0,n.expect)(this[m].updating.current,"expected updating opcode on the updating opcode stack")}elements(){return this.elementStack}scope(){return(0,n.expect)(this[m].scope.current,"expected scope on the scope stack")}dynamicScope(){return(0,n.expect)(this[m].dynamicScope.current,"expected dynamic scope on the dynamic scope stack")}pushChildScope(){this[m].scope.push(this.scope().child())}pushDynamicScope(){let e=this.dynamicScope().child() return this[m].dynamicScope.push(e),e}pushRootScope(e,t){let r=d.sized(e,t) return this[m].scope.push(r),r}pushScope(e){this[m].scope.push(e)}popScope(){this[m].scope.pop()}popDynamicScope(){this[m].dynamicScope.pop()}getOwner(){return this.scope().owner}getSelf(){return this.scope().getSelf()}referenceForSymbol(e){return this.scope().getSymbol(e)}execute(e){return this._execute(e)}_execute(e){let t e&&e(this) do{t=this.next()}while(!t.done) return t.value}next(){let e,{env:t,elementStack:r}=this,n=this[h].nextStatement() -return null!==n?(this[h].evaluateOuter(n,this),e={done:!1,value:null}):(this.stack.reset(),e={done:!0,value:new dr(t,this.popUpdating(),r.popBlock(),this.destructor)}),e}bindDynamicScope(e){let t=this.dynamicScope() -for(const r of(0,n.reverse)(e))t.set(r,this.stack.pop())}}function gr(e,t,r){return{pc:e,scope:t,dynamicScope:r,stack:[]}}function br(e){return(t,r,n)=>new mr(t,r,n,e)}e.LowLevelVM=mr -class yr{constructor(e){this.vm=e}next(){return this.vm.next()}sync(){return this.vm.execute()}}const vr=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" -class _r extends _{constructor(e,t,r){super(e,t),this.candidate=null,this.openBlockDepth=void 0,this.injectedOmittedNode=!1,this.startingBlockDepth=r,this.openBlockDepth=r-1}}class Or extends re{constructor(e,t,r){if(super(e,t,r),this.unmatchedAttributes=null,this.blockDepth=0,this.startingBlockOffset=void 0,r)throw new Error("Rehydration with nextSibling not supported") +return null!==n?(this[h].evaluateOuter(n,this),e={done:!1,value:null}):(this.stack.reset(),e={done:!0,value:new fr(t,this.popUpdating(),r.popBlock(),this.destructor)}),e}bindDynamicScope(e){let t=this.dynamicScope() +for(const r of(0,n.reverse)(e))t.set(r,this.stack.pop())}}function yr(e,t,r){return{pc:e,scope:t,dynamicScope:r,stack:[]}}function vr(e){return(t,r,n)=>new br(t,r,n,e)}e.LowLevelVM=br +class _r{constructor(e){this.vm=e}next(){return this.vm.next()}sync(){return this.vm.execute()}}const Or=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" +class wr extends _{constructor(e,t,r){super(e,t),this.candidate=null,this.openBlockDepth=void 0,this.injectedOmittedNode=!1,this.startingBlockDepth=r,this.openBlockDepth=r-1}}class Er extends re{constructor(e,t,r){if(super(e,t,r),this.unmatchedAttributes=null,this.blockDepth=0,this.startingBlockOffset=void 0,r)throw new Error("Rehydration with nextSibling not supported") let i=this.currentCursor.element.firstChild -for(;null!==i&&!wr(i);)i=i.nextSibling;(0,n.assert)(i,"Must have opening comment for rehydration."),this.candidate=i -const o=Er(i) +for(;null!==i&&!Cr(i);)i=i.nextSibling;(0,n.assert)(i,"Must have opening comment for rehydration."),this.candidate=i +const o=Tr(i) if(0!==o){const e=o-1,t=this.dom.createComment(`%+b:${e}%`) i.parentNode.insertBefore(t,this.candidate) let r=i.nextSibling -for(;null!==r&&(!Cr(r)||Er(r)!==o);)r=r.nextSibling;(0,n.assert)(r,"Must have closing comment for starting block comment") +for(;null!==r&&(!kr(r)||Tr(r)!==o);)r=r.nextSibling;(0,n.assert)(r,"Must have closing comment for starting block comment") const s=this.dom.createComment(`%-b:${e}%`) i.parentNode.insertBefore(s,r.nextSibling),this.candidate=t,this.startingBlockOffset=e}else this.startingBlockOffset=0}get currentCursor(){return this[te].current}get candidate(){return this.currentCursor?this.currentCursor.candidate:null}set candidate(e){this.currentCursor.candidate=e}disableRehydration(e){const t=this.currentCursor t.candidate=null,t.nextSibling=e}enableRehydration(e){const t=this.currentCursor -t.candidate=e,t.nextSibling=null}pushElement(e,t=null){const r=new _r(e,t,this.blockDepth||0) +t.candidate=e,t.nextSibling=null}pushElement(e,t=null){const r=new wr(e,t,this.blockDepth||0) null!==this.candidate&&(r.candidate=e.firstChild,this.candidate=e.nextSibling),this[te].push(r)}clearMismatch(e){let t=e const r=this.currentCursor if(null!==r){const e=r.openBlockDepth -if(e>=r.startingBlockDepth)for(;t;){if(Cr(t)){if(e>=kr(t,this.startingBlockOffset))break}t=this.remove(t)}else for(;null!==t;)t=this.remove(t) +if(e>=r.startingBlockDepth)for(;t;){if(kr(t)){if(e>=Rr(t,this.startingBlockOffset))break}t=this.remove(t)}else for(;null!==t;)t=this.remove(t) this.disableRehydration(t)}}__openBlock(){const{currentCursor:e}=this if(null===e)return const t=this.blockDepth @@ -2710,61 +2713,61 @@ this.blockDepth++ const{candidate:r}=e if(null===r)return const{tagName:n}=e.element -wr(r)&&kr(r,this.startingBlockOffset)===t?(this.candidate=this.remove(r),e.openBlockDepth=t):"TITLE"!==n&&"SCRIPT"!==n&&"STYLE"!==n&&this.clearMismatch(r)}__closeBlock(){const{currentCursor:e}=this +Cr(r)&&Rr(r,this.startingBlockOffset)===t?(this.candidate=this.remove(r),e.openBlockDepth=t):"TITLE"!==n&&"SCRIPT"!==n&&"STYLE"!==n&&this.clearMismatch(r)}__closeBlock(){const{currentCursor:e}=this if(null===e)return const t=e.openBlockDepth this.blockDepth-- const{candidate:r}=e let n=!1 -if(null!==r)if(n=!0,Cr(r)&&kr(r,this.startingBlockOffset)===t){const t=this.remove(r) +if(null!==r)if(n=!0,kr(r)&&Rr(r,this.startingBlockOffset)===t){const t=this.remove(r) this.candidate=t,e.openBlockDepth--}else this.clearMismatch(r),n=!1 if(!1===n){const t=e.nextSibling -if(null!==t&&Cr(t)&&kr(t,this.startingBlockOffset)===this.blockDepth){const r=this.remove(t) +if(null!==t&&kr(t)&&Rr(t,this.startingBlockOffset)===this.blockDepth){const r=this.remove(t) this.enableRehydration(r),e.openBlockDepth--}}}__appendNode(e){const{candidate:t}=this return t||super.__appendNode(e)}__appendHTML(e){const t=this.markerBounds() if(t){const e=t.firstNode(),r=t.lastNode(),n=new O(this.element,e.nextSibling,r.previousSibling),i=this.remove(e) -return this.remove(r),null!==i&&Rr(i)&&(this.candidate=this.remove(i),null!==this.candidate&&this.clearMismatch(this.candidate)),n}return super.__appendHTML(e)}remove(e){const t=(0,n.expect)(e.parentNode,"cannot remove a detached node"),r=e.nextSibling +return this.remove(r),null!==i&&xr(i)&&(this.candidate=this.remove(i),null!==this.candidate&&this.clearMismatch(this.candidate)),n}return super.__appendHTML(e)}remove(e){const t=(0,n.expect)(e.parentNode,"cannot remove a detached node"),r=e.nextSibling return t.removeChild(e),r}markerBounds(){const e=this.candidate -if(e&&Sr(e)){const t=e +if(e&&Pr(e)){const t=e let r=(0,n.expect)(t.nextSibling,"BUG: serialization markers must be paired") -for(;r&&!Sr(r);)r=(0,n.expect)(r.nextSibling,"BUG: serialization markers must be paired") +for(;r&&!Pr(r);)r=(0,n.expect)(r.nextSibling,"BUG: serialization markers must be paired") return new O(this.element,t,r)}return null}__appendText(e){const{candidate:t}=this -return t?3===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):function(e){return 8===e.nodeType&&"%|%"===e.nodeValue}(t)||Rr(t)&&""===e?(this.candidate=this.remove(t),this.__appendText(e)):(this.clearMismatch(t),super.__appendText(e)):super.__appendText(e)}__appendComment(e){const t=this.candidate +return t?3===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):function(e){return 8===e.nodeType&&"%|%"===e.nodeValue}(t)||xr(t)&&""===e?(this.candidate=this.remove(t),this.__appendText(e)):(this.clearMismatch(t),super.__appendText(e)):super.__appendText(e)}__appendComment(e){const t=this.candidate return t&&8===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):(t&&this.clearMismatch(t),super.__appendComment(e))}__openElement(e){const t=this.candidate -if(t&&Tr(t)&&function(e,t){if(e.namespaceURI===n.NS_SVG)return e.tagName===t +if(t&&Sr(t)&&function(e,t){if(e.namespaceURI===n.NS_SVG)return e.tagName===t return e.tagName===t.toUpperCase()}(t,e))return this.unmatchedAttributes=[].slice.call(t.attributes),t -if(t){if(Tr(t)&&"TBODY"===t.tagName)return this.pushElement(t,null),this.currentCursor.injectedOmittedNode=!0,this.__openElement(e) +if(t){if(Sr(t)&&"TBODY"===t.tagName)return this.pushElement(t,null),this.currentCursor.injectedOmittedNode=!0,this.__openElement(e) this.clearMismatch(t)}return super.__openElement(e)}__setAttribute(e,t,r){const n=this.unmatchedAttributes -if(n){const r=Pr(n,e) +if(n){const r=Ar(n,e) if(r)return r.value!==t&&(r.value=t),void n.splice(n.indexOf(r),1)}return super.__setAttribute(e,t,r)}__setProperty(e,t){const r=this.unmatchedAttributes -if(r){const n=Pr(r,e) +if(r){const n=Ar(r,e) if(n)return n.value!==t&&(n.value=t),void r.splice(r.indexOf(n),1)}return super.__setProperty(e,t)}__flushElement(e,t){const{unmatchedAttributes:r}=this if(r){for(const e of r)this.constructing.removeAttribute(e.name) this.unmatchedAttributes=null}else super.__flushElement(e,t)}willCloseElement(){const{candidate:e,currentCursor:t}=this null!==e&&this.clearMismatch(e),t&&t.injectedOmittedNode&&this.popElement(),super.willCloseElement()}getMarker(e,t){const r=e.querySelector(`script[glmr="${t}"]`) return r?(0,n.castToSimple)(r):null}__pushRemoteElement(e,t,r){const i=this.getMarker((0,n.castToBrowser)(e,"HTML"),t) if((0,n.assert)(!i||i.parentNode===e,"expected remote element marker's parent node to match remote element"),void 0===r){for(;null!==e.firstChild&&e.firstChild!==i;)this.remove(e.firstChild) -r=null}const o=new _r(e,null,this.blockDepth) +r=null}const o=new wr(e,null,this.blockDepth) this[te].push(o),null===i?this.disableRehydration(r):this.candidate=this.remove(i) const s=new ie(e) return this.pushLiveBlock(s,!0)}didAppendBounds(e){if(super.didAppendBounds(e),this.candidate){const t=e.lastNode() -this.candidate=t&&t.nextSibling}return e}}function wr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%+b:",0)}function Cr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%-b:",0)}function Er(e){return parseInt(e.nodeValue.slice(4),10)}function kr(e,t){return Er(e)-t}function Tr(e){return 1===e.nodeType}function Sr(e){return 8===e.nodeType&&"%glmr%"===e.nodeValue}function Rr(e){return 8===e.nodeType&&"% %"===e.nodeValue}function Pr(e,t){for(const r of e)if(r.name===t)return r}e.RehydrateBuilder=Or})),e("@glimmer/tracking/index",["exports","@ember/-internals/metal"],(function(e,t){"use strict" +this.candidate=t&&t.nextSibling}return e}}function Cr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%+b:",0)}function kr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%-b:",0)}function Tr(e){return parseInt(e.nodeValue.slice(4),10)}function Rr(e,t){return Tr(e)-t}function Sr(e){return 1===e.nodeType}function Pr(e){return 8===e.nodeType&&"%glmr%"===e.nodeValue}function xr(e){return 8===e.nodeType&&"% %"===e.nodeValue}function Ar(e,t){for(const r of e)if(r.name===t)return r}e.RehydrateBuilder=Er})),e("@glimmer/tracking/index",["exports","@ember/-internals/metal"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"cached",{enumerable:!0,get:function(){return t.cached}}),Object.defineProperty(e,"tracked",{enumerable:!0,get:function(){return t.tracked}})})),e("@glimmer/tracking/primitives/cache",["exports","@ember/-internals/metal"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return t.createCache}}),Object.defineProperty(e,"getValue",{enumerable:!0,get:function(){return t.getValue}}),Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return t.isConst}})})),e("@glimmer/util",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.TEXT_NODE=e.Stack=e.SERIALIZATION_FIRST_NODE_STRING=e.RAW_NODE=e.NS_XMLNS=e.NS_XML=e.NS_XLINK=e.NS_SVG=e.NS_MATHML=e.NS_HTML=e.LOGGER=e.LOCAL_LOGGER=e.ImmediateConstants=e.INSERT_BEFORE_END=e.INSERT_BEFORE_BEGIN=e.INSERT_AFTER_END=e.INSERT_AFTER_BEGIN=e.EMPTY_STRING_ARRAY=e.EMPTY_NUMBER_ARRAY=e.EMPTY_ARRAY=e.ELEMENT_NODE=e.DOCUMENT_TYPE_NODE=e.DOCUMENT_NODE=e.DOCUMENT_FRAGMENT_NODE=e.COMMENT_NODE=void 0,e.arrayToOption=function(e){return a(e)?e:null},e.asPresentArray=function(e,t="unexpected empty list"){return l(e,t),e},e.assert=function(e,t){if(!e)throw new Error(t||"assertion failure")},e.assertNever=function(e,t="unexpected unreachable branch"){throw S.log("unreachable",e),S.log(`${t} :: ${JSON.stringify(e)} (${e})`),new Error("code reached unreachable")},e.assertPresent=function(e,t){if(!s(e))throw new Error(`Expected present, got ${"string"==typeof e?e:t}`)},e.assertPresentArray=l,e.beginTestSteps=e.assign=void 0,e.buildUntouchableThis=function(e){let t=null +Object.defineProperty(e,"__esModule",{value:!0}),e.TEXT_NODE=e.Stack=e.SERIALIZATION_FIRST_NODE_STRING=e.RAW_NODE=e.NS_XMLNS=e.NS_XML=e.NS_XLINK=e.NS_SVG=e.NS_MATHML=e.NS_HTML=e.LOGGER=e.LOCAL_LOGGER=e.ImmediateConstants=e.INSERT_BEFORE_END=e.INSERT_BEFORE_BEGIN=e.INSERT_AFTER_END=e.INSERT_AFTER_BEGIN=e.EMPTY_STRING_ARRAY=e.EMPTY_NUMBER_ARRAY=e.EMPTY_ARRAY=e.ELEMENT_NODE=e.DOCUMENT_TYPE_NODE=e.DOCUMENT_NODE=e.DOCUMENT_FRAGMENT_NODE=e.COMMENT_NODE=void 0,e.arrayToOption=function(e){return a(e)?e:null},e.asPresentArray=function(e,t="unexpected empty list"){return l(e,t),e},e.assert=function(e,t){if(!e)throw new Error(t||"assertion failure")},e.assertNever=function(e,t="unexpected unreachable branch"){throw R.log("unreachable",e),R.log(`${t} :: ${JSON.stringify(e)} (${e})`),new Error("code reached unreachable")},e.assertPresent=function(e,t){if(!s(e))throw new Error(`Expected present, got ${"string"==typeof e?e:t}`)},e.assertPresentArray=l,e.beginTestSteps=e.assign=void 0,e.buildUntouchableThis=function(e){let t=null 0 return t},e.castToBrowser=function(e,t){if(null==e)return null if(void 0===typeof document)throw new Error("Attempted to cast to a browser node in a non-browser context") if(w(e))return e if(e.ownerDocument!==document)throw new Error("Attempted to cast to a browser node with a node that was not created from this document") -return E(e,t)},e.castToSimple=function(e){return w(e)||C(e),e},e.checkNode=E,e.clearElement=function(e){let t=e.firstChild +return C(e,t)},e.castToSimple=function(e){return w(e)||E(e),e},e.checkNode=C,e.clearElement=function(e){let t=e.firstChild for(;t;){let r=t.nextSibling e.removeChild(t),t=r}},e.constants=function(...e){return[!1,!0,null,void 0,...e]},e.debugToString=void 0,e.decodeHandle=function(e){return e},e.decodeImmediate=_,e.decodeNegative=g,e.decodePositive=y,e.deprecate=function(e){T.warn(`DEPRECATION: ${e}`)},e.dict=function(){return Object.create(null)},e.emptyArray=r,e.encodeHandle=function(e){return e},e.encodeImmediate=v,e.encodeNegative=m,e.encodePositive=b,e.endTestSteps=void 0,e.entries=function(e){return Object.entries(e)},e.enumerate=n e.exhausted=function(e){throw new Error(`Exhausted ${String(e)}`)},e.expect=function(e,t){if(null==e)throw new Error(t) return e},e.extractHandle=function(e){return"number"==typeof e?e:e.handle},e.getFirst=c,e.getLast=u,e.ifPresent=function(e,t,r){return a(e)?t(e):r()},e.intern=function(e){let t={} t[e]=1 for(let r in t)if(r===e)return r -return e},e.isDict=function(e){return null!=e},e.isElement=function(e){return e?.nodeType===d&&e instanceof Element},e.isEmptyArray=function(e){return e===t},e.isErrHandle=function(e){return"number"==typeof e},e.isHandle=function(e){return e>=0},e.isNonPrimitiveHandle=function(e){return e>f.ENCODED_UNDEFINED_HANDLE},e.isObject=function(e){return"function"==typeof e||"object"==typeof e&&null!==e},e.isOkHandle=function(e){return"number"==typeof e},e.isPresent=s,e.isPresentArray=a,e.isSerializationFirstNode=function(e){return e.nodeValue===O},e.isSimpleElement=C,e.isSmallInt=function(e){return e%1==0&&e<=f.MAX_INT&&e>=f.MIN_INT},e.keys=function(e){return Object.keys(e)},e.logStep=void 0,e.mapPresentArray=function(e,t){if(null===e)return null +return e},e.isDict=function(e){return null!=e},e.isElement=function(e){return e?.nodeType===d&&e instanceof Element},e.isEmptyArray=function(e){return e===t},e.isErrHandle=function(e){return"number"==typeof e},e.isHandle=function(e){return e>=0},e.isNonPrimitiveHandle=function(e){return e>f.ENCODED_UNDEFINED_HANDLE},e.isObject=function(e){return"function"==typeof e||"object"==typeof e&&null!==e},e.isOkHandle=function(e){return"number"==typeof e},e.isPresent=s,e.isPresentArray=a,e.isSerializationFirstNode=function(e){return e.nodeValue===O},e.isSimpleElement=E,e.isSmallInt=function(e){return e%1==0&&e<=f.MAX_INT&&e>=f.MIN_INT},e.keys=function(e){return Object.keys(e)},e.logStep=void 0,e.mapPresentArray=function(e,t){if(null===e)return null let r=[] for(let n of e)r.push(t(n)) return r},e.reverse=function*(e){for(let t=e.length-1;t>=0;t--)yield e[t]},e.strip=function(e,...t){let r="" @@ -2798,7 +2801,7 @@ let f=e.ImmediateConstants=function(e){return e[e.MAX_SMI=1073741823]="MAX_SMI", function m(e){return e&f.SIGN_BIT}function g(e){return e|~f.SIGN_BIT}function b(e){return~e}function y(e){return~e}function v(e){return(e|=0)<0?m(e):b(e)}function _(e){return(e|=0)>f.SIGN_BIT?y(e):g(e)}[1,-1].forEach((e=>_(v(e)))) const O=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" e.assign=Object.assign -function w(e){return e.nodeType===h}function C(e){return e?.nodeType===d}function E(e,t){let r=!1 +function w(e){return e.nodeType===h}function E(e){return e?.nodeType===d}function C(e,t){let r=!1 if(null!==e)if("string"==typeof t)r=k(e,t) else{if(!Array.isArray(t))throw o() r=t.some((t=>k(e,t)))}if(r&&e instanceof Node)return e @@ -2807,24 +2810,24 @@ case"HTML":return e instanceof HTMLElement case"SVG":return e instanceof SVGElement case"ELEMENT":return e instanceof Element default:if(t.toUpperCase()===t)throw new Error("BUG: this code is missing handling for a generic node type") -return e instanceof Element&&e.tagName.toLowerCase()===t}}const T=e.LOCAL_LOGGER=console,S=e.LOGGER=console})),e("@glimmer/validator",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" +return e instanceof Element&&e.tagName.toLowerCase()===t}}const T=e.LOCAL_LOGGER=console,R=e.LOGGER=console})),e("@glimmer/validator",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" function n(e){if(null==e)throw new Error("Expected value to be present") -return e}Object.defineProperty(e,"__esModule",{value:!0}),e.VolatileTag=e.VOLATILE_TAG=e.VOLATILE=e.INITIAL=e.CurrentTag=e.CURRENT_TAG=e.CONSTANT_TAG=e.CONSTANT=e.COMPUTE=e.ALLOW_CYCLES=void 0,e.beginTrackFrame=M,e.beginUntrackFrame=j,e.bump=function(){s++},e.combine=void 0,e.consumeTag=I,e.createCache=function(e,t){0 +return e}Object.defineProperty(e,"__esModule",{value:!0}),e.VolatileTag=e.VOLATILE_TAG=e.VOLATILE=e.INITIAL=e.CurrentTag=e.CURRENT_TAG=e.CONSTANT_TAG=e.CONSTANT=e.COMPUTE=e.ALLOW_CYCLES=void 0,e.beginTrackFrame=M,e.beginUntrackFrame=D,e.bump=function(){s++},e.combine=void 0,e.consumeTag=I,e.createCache=function(e,t){0 let r={[F]:e,[L]:void 0,[B]:void 0,[U]:-1} 0 -return r},e.createTag=function(){return new h(a)},e.createUpdatableTag=g,e.dirtyTag=e.debug=void 0,e.dirtyTagFor=T,e.endTrackFrame=N,e.endUntrackFrame=D,e.getValue=function(e){H(e,"getValue") +return r},e.createTag=function(){return new h(a)},e.createUpdatableTag=g,e.dirtyTag=e.debug=void 0,e.dirtyTagFor=T,e.endTrackFrame=N,e.endUntrackFrame=j,e.getValue=function(e){H(e,"getValue") let t=e[F],r=e[B],n=e[U] if(void 0!==r&&p(r,n))I(r) else{M() try{e[L]=t()}finally{r=N(),e[B]=r,e[U]=c(r),I(r)}}return e[L]},e.isConst=function(e){H(e,"isConst") let t=e[B] return function(e,t){0}(),y(t)},e.isConstTag=y,e.isTracking=function(){return null!==x},e.resetTracking=function(){for(;A.length>0;)A.pop() -x=null,!1},e.tagFor=R,e.tagMetaFor=S,e.track=function(e,t){let r +x=null,!1},e.tagFor=S,e.tagMetaFor=R,e.track=function(e,t){let r M(t) try{e()}finally{r=N()}return r},e.trackedData=function(e,t){let r=new WeakMap,n="function"==typeof t return{getter:function(i){let o -return I(R(i,e)),n&&!r.has(i)?(o=t.call(i),r.set(i,o)):o=r.get(i),o},setter:function(t,n){T(t,e),r.set(t,n)}}},e.untrack=function(e){j() -try{return e()}finally{D()}},e.updateTag=void 0,e.validateTag=p,e.valueForTag=c +return I(S(i,e)),n&&!r.has(i)?(o=t.call(i),r.set(i,o)):o=r.get(i),o},setter:function(t,n){T(t,e),r.set(t,n)}}},e.untrack=function(e){D() +try{return e()}finally{j()}},e.updateTag=void 0,e.validateTag=p,e.valueForTag=c e.debug={} e.CONSTANT=0 const i=e.INITIAL=1,o=e.VOLATILE=NaN @@ -2839,10 +2842,9 @@ return t.subtag=e,t}}}constructor(e){this.revision=i,this.lastChecked=i,this.las if(!0===this.isUpdating)this.lastChecked=++s else if(e!==s){this.isUpdating=!0,this.lastChecked=s try{let{subtag:e,revision:t}=this -if(null!==e)if(Array.isArray(e))t=e.reduce(((e,t)=>{let r=t[u]() -return r>e?r:e}),t) -else{let r=e[u]() -r===this.subtagBufferCache?t=t>this.lastValue?t:this.lastValue:(this.subtagBufferCache=null,t=t>r?t:r)}this.lastValue=t}finally{this.isUpdating=!1}}return this.lastValue}static updateTag(e,t){let r=e,n=t +if(null!==e)if(Array.isArray(e))for(const r of e){let e=r[u]() +t=Math.max(e,t)}else{let r=e[u]() +r===this.subtagBufferCache?t=Math.max(t,this.lastValue):(this.subtagBufferCache=null,t=Math.max(t,r))}this.lastValue=t}finally{this.isUpdating=!1}}return this.lastValue}static updateTag(e,t){let r=e,n=t n===b?r.subtag=null:(r.subtagBufferCache=n[u](),r.subtag=n)}static dirtyTag(e,r){e.revision=++s,(0,t.scheduleRevalidate)()}}const f=e.dirtyTag=h.dirtyTag,m=e.updateTag=h.updateTag function g(){return new h(l)}const b=e.CONSTANT_TAG=new h(3) function y(e){return e===b}class v{constructor(){this[d]=100}[u](){return o}}e.VolatileTag=v @@ -2850,19 +2852,19 @@ e.VOLATILE_TAG=new v class _{constructor(){this[d]=101}[u](){return s}}e.CurrentTag=_ e.CURRENT_TAG=new _ const O=e.combine=h.combine -let w=g(),C=g(),E=g() -c(w),f(w),c(w),m(w,O([C,E])),c(w),f(C),c(w),f(E),c(w),m(w,E),c(w),f(E),c(w) +let w=g(),E=g(),C=g() +c(w),f(w),c(w),m(w,O([E,C])),c(w),f(E),c(w),f(C),c(w),m(w,C),c(w),f(C),c(w) const k=new WeakMap function T(e,t,r){let n=void 0===r?k.get(e):r if(void 0===n)return let i=n.get(t) -void 0!==i&&f(i,!0)}function S(e){let t=k.get(e) -return void 0===t&&(t=new Map,k.set(e,t)),t}function R(e,t,r){let n=void 0===r?S(e):r,i=n.get(t) +void 0!==i&&f(i,!0)}function R(e){let t=k.get(e) +return void 0===t&&(t=new Map,k.set(e,t)),t}function S(e,t,r){let n=void 0===r?R(e):r,i=n.get(t) return void 0===i&&(i=g(),n.set(t,i)),i}class P{constructor(){this.tags=new Set,this.last=null}add(e){e!==b&&(this.tags.add(e),this.last=e)}combine(){let{tags:e}=this return 0===e.size?b:1===e.size?this.last:O(Array.from(this.tags))}}let x=null const A=[] function M(e){A.push(x),x=new P}function N(){let e=x -return x=A.pop()||null,n(e).combine()}function j(){A.push(x),x=null}function D(){x=A.pop()||null}function I(e){null!==x&&x.add(e)}const F=Symbol("FN"),L=Symbol("LAST_VALUE"),B=Symbol("TAG"),U=Symbol("SNAPSHOT") +return x=A.pop()||null,n(e).combine()}function D(){A.push(x),x=null}function j(){x=A.pop()||null}function I(e){null!==x&&x.add(e)}const F=Symbol("FN"),L=Symbol("LAST_VALUE"),B=Symbol("TAG"),U=Symbol("SNAPSHOT") Symbol("DEBUG_LABEL") function H(e,t){0}const $=Symbol("GLIMMER_VALIDATOR_REGISTRATION"),V=function(){if("undefined"!=typeof globalThis)return globalThis if("undefined"!=typeof self)return self @@ -2879,8 +2881,8 @@ e.$s0=4,e.$s1=5,e.$t0=6,e.$t1=7,e.$v0=8 e.MachineRegister=function(e){return e[e.pc=0]="pc",e[e.ra=1]="ra",e[e.fp=2]="fp",e[e.sp=3]="sp",e}({}) e.SavedRegister=function(e){return e[e.s0=4]="s0",e[e.s1=5]="s1",e}({}),e.TemporaryRegister=function(e){return e[e.t0=6]="t0",e[e.t1=7]="t1",e}({})})),e("@glimmer/wire-format",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.WellKnownTagNames=e.WellKnownAttrNames=e.VariableResolutionContext=e.SexpOpcodes=void 0,e.getStringFromValue=function(e){return e},e.is=r,e.isArgument=function(e){return e[0]===t.StaticArg||e[0]===t.DynamicArg},e.isAttribute=function(e){return e[0]===t.StaticAttr||e[0]===t.DynamicAttr||e[0]===t.TrustingDynamicAttr||e[0]===t.ComponentAttr||e[0]===t.StaticComponentAttr||e[0]===t.TrustingComponentAttr||e[0]===t.AttrSplat||e[0]===t.Modifier},e.isGet=e.isFlushElement=void 0,e.isHelper=function(e){return Array.isArray(e)&&e[0]===t.Call},e.isStringLiteral=function(e){return"string"==typeof e} -const t=e.SexpOpcodes={Append:1,TrustingAppend:2,Comment:3,Modifier:4,StrictModifier:5,Block:6,StrictBlock:7,Component:8,OpenElement:10,OpenElementWithSplat:11,FlushElement:12,CloseElement:13,StaticAttr:14,DynamicAttr:15,ComponentAttr:16,AttrSplat:17,Yield:18,DynamicArg:20,StaticArg:21,TrustingDynamicAttr:22,TrustingComponentAttr:23,StaticComponentAttr:24,Debugger:26,Undefined:27,Call:28,Concat:29,GetSymbol:30,GetLexicalSymbol:32,GetStrictKeyword:31,GetFreeAsComponentOrHelperHeadOrThisFallback:34,GetFreeAsComponentOrHelperHead:35,GetFreeAsHelperHeadOrThisFallback:36,GetFreeAsDeprecatedHelperHeadOrThisFallback:99,GetFreeAsHelperHead:37,GetFreeAsModifierHead:38,GetFreeAsComponentHead:39,InElement:40,If:41,Each:42,With:43,Let:44,WithDynamicVars:45,InvokeComponent:46,HasBlock:48,HasBlockParams:49,Curry:50,Not:51,IfInline:52,GetDynamicVar:53,Log:54} -e.VariableResolutionContext={Strict:0,AmbiguousAppend:1,AmbiguousAppendInvoke:2,AmbiguousInvoke:3,ResolveAsCallHead:5,ResolveAsModifierHead:6,ResolveAsComponentHead:7},e.WellKnownAttrNames={class:0,id:1,value:2,name:3,type:4,style:5,href:6},e.WellKnownTagNames={div:0,span:1,p:2,a:3} +const t=e.SexpOpcodes={Append:1,TrustingAppend:2,Comment:3,Modifier:4,StrictModifier:5,Block:6,StrictBlock:7,Component:8,OpenElement:10,OpenElementWithSplat:11,FlushElement:12,CloseElement:13,StaticAttr:14,DynamicAttr:15,ComponentAttr:16,AttrSplat:17,Yield:18,DynamicArg:20,StaticArg:21,TrustingDynamicAttr:22,TrustingComponentAttr:23,StaticComponentAttr:24,Debugger:26,Undefined:27,Call:28,Concat:29,GetSymbol:30,GetLexicalSymbol:32,GetStrictKeyword:31,GetFreeAsComponentOrHelperHead:35,GetFreeAsHelperHead:37,GetFreeAsModifierHead:38,GetFreeAsComponentHead:39,InElement:40,If:41,Each:42,Let:44,WithDynamicVars:45,InvokeComponent:46,HasBlock:48,HasBlockParams:49,Curry:50,Not:51,IfInline:52,GetDynamicVar:53,Log:54} +e.VariableResolutionContext={Strict:0,ResolveAsComponentOrHelperHead:1,ResolveAsHelperHead:5,ResolveAsModifierHead:6,ResolveAsComponentHead:7},e.WellKnownAttrNames={class:0,id:1,value:2,name:3,type:4,style:5,href:6},e.WellKnownTagNames={div:0,span:1,p:2,a:3} function r(e){return function(t){return Array.isArray(t)&&t[0]===e}}e.isFlushElement=r(t.FlushElement) e.isGet=r(t.GetSymbol)})),e("@simple-dom/document",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){const e=new d(null,9,"#document",null,"http://www.w3.org/1999/xhtml"),t=new d(e,10,"html",null,"http://www.w3.org/1999/xhtml"),r=new d(e,1,"HTML",null,"http://www.w3.org/1999/xhtml"),n=new d(e,1,"HEAD",null,"http://www.w3.org/1999/xhtml"),i=new d(e,1,"BODY",null,"http://www.w3.org/1999/xhtml") @@ -2978,10 +2980,10 @@ else{let i=2,o=arguments[0],s=arguments[1],a=typeof s if("function"===a?(r=o,t=s):null!==o&&"string"===a&&s in o?(r=o,t=r[s]):"function"==typeof o&&(i=1,r=null,t=o),n>i){let t=n-i e=new Array(t) for(let r=0;r{F++,!1!==this._autorun&&(this._autorun=!1,this._autorunStack=null,this._end(!0))} let r=this.options._buildPlatform||i -this._platform=r(this._boundAutorunEnd)}get counters(){return{begin:_,end:O,events:{begin:w,end:0},autoruns:{created:I,completed:F},run:C,join:E,defer:k,schedule:T,scheduleIterable:S,deferOnce:R,scheduleOnce:P,setTimeout:x,later:A,throttle:M,debounce:N,cancelTimers:j,cancel:D,loops:{total:L,nested:B}}}get defaultQueue(){return this._defaultQueue}begin(){_++ +this._platform=r(this._boundAutorunEnd)}get counters(){return{begin:_,end:O,events:{begin:w,end:0},autoruns:{created:I,completed:F},run:E,join:C,defer:k,schedule:T,scheduleIterable:R,deferOnce:S,scheduleOnce:P,setTimeout:x,later:A,throttle:M,debounce:N,cancelTimers:D,cancel:j,loops:{total:L,nested:B}}}get defaultQueue(){return this._defaultQueue}begin(){_++ let e,t=this.options,r=this.currentInstance return!1!==this._autorun?(e=r,this._cancelAutorun()):(null!==r&&(B++,this.instanceStack.push(r)),L++,e=this.currentInstance=new h(this.queueNames,t),w++,this._trigger("begin",e,r)),this._onBegin(e,r),e}end(){O++,this._end(!1)}on(e,t){if("function"!=typeof t)throw new TypeError("Callback must be a function") let r=this._eventCallbacks[e] @@ -2990,15 +2992,15 @@ r.push(t)}off(e,t){let r=this._eventCallbacks[e] if(!e||void 0===r)throw new TypeError(`Cannot off() event ${e} because it does not exist`) let n=!1 if(t)for(let i=0;i0||this._autorun}cancel(e){if(D++,null==e)return!1 +this._timers.splice(u,0,o,e,t,r,n,i),this._timers.splice(a,6)}0===a&&this._reinstallTimerTimeout()}return e}cancelTimers(){D++,this._clearTimerTimeout(),this._timers=[],this._cancelAutorun()}hasTimers(){return this._timers.length>0||this._autorun}cancel(e){if(j++,null==e)return!1 let t=typeof e return"number"===t?this._cancelLaterTimer(e):!("object"!==t||!e.queue||!e.method)&&e.queue.cancel(e)}ensureInstance(){this._ensureInstance()}getDebugInfo(){if(this.DEBUG)return{autorun:this._autorunStack,counters:this.counters,timers:c(this._timers,6,2),instanceStack:[this.currentInstance,...this.instanceStack].map((e=>e&&e._getDebugInfo(this.DEBUG)))}}_end(e){let t=this.currentInstance,r=null if(null===t)throw new Error("end called without begin") @@ -3086,20 +3088,21 @@ function s(e,t){for(let r=0;re.length)&&(t=e.length) let r=new Array(t) for(let n=0;n(te.__emberTemplateCompiler&&(oe.precompile=ie.precompile=te.__emberTemplateCompiler.precompile,oe.compile=ie.compile=te.compileTemplate,Object.defineProperty(re,"HTMLBars",{configurable:!0,writable:!0,enumerable:!0,value:oe}),Object.defineProperty(re,"Handlebars",{configurable:!0,writable:!0,enumerable:!0,value:ie})),"Handlebars"===e?ie:oe)})}function ae(e){Object.defineProperty(re,e,{configurable:!0,enumerable:!0,get(){if(ee._impl){let{Test:t,Adapter:r,QUnitAdapter:n,setupForTesting:i}=ee._impl -return t.Adapter=r,t.QUnitAdapter=n,Object.defineProperty(re,"Test",{configurable:!0,writable:!0,enumerable:!0,value:t}),Object.defineProperty(re,"setupForTesting",{configurable:!0,writable:!0,enumerable:!0,value:i}),"Test"===e?t:i}}})}se("HTMLBars"),se("Handlebars"),ae("Test"),ae("setupForTesting"),(0,R.runLoadHooks)("Ember") +return t.Adapter=r,t.QUnitAdapter=n,Object.defineProperty(re,"Test",{configurable:!0,writable:!0,enumerable:!0,value:t}),Object.defineProperty(re,"setupForTesting",{configurable:!0,writable:!0,enumerable:!0,value:i}),"Test"===e?t:i}}})}se("HTMLBars"),se("Handlebars"),ae("Test"),ae("setupForTesting"),(0,S.runLoadHooks)("Ember") e.default=re})),e("ember/version",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default="5.8.0"})),e("route-recognizer",["exports"],(function(e){"use strict" +e.default="5.10.0-alpha.1+f9cfada9"})) +e("route-recognizer",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 var t=Object.create function r(){var e=t(null) @@ -3137,26 +3140,26 @@ return P.ENCODE_AND_DECODE_PATH_SEGMENTS?d(r):r},v[2]=function(e,t){return g(t,e var _=Object.freeze({}),O=Object.freeze([]) function w(e,t,r){t.length>0&&47===t.charCodeAt(0)&&(t=t.substr(1)) for(var n=t.split("/"),i=void 0,o=void 0,s=0;s2&&"[]"===o.slice(s-2)&&(a=!0,r[o=o.slice(0,s-2)]||(r[o]=[])),l=i[1]?R(i[1]):""),a?r[o].push(l):r[o]=l}return r},P.prototype.recognize=function(e){var t,r=[this.rootState],n={},i=!1,o=e.indexOf("#");-1!==o&&(e=e.substr(0,o)) +t.push(l)}else s+="="+encodeURIComponent(o),t.push(s)}}return 0===t.length?"":"?"+t.join("&")},P.prototype.parseQueryString=function(e){for(var t=e.split("&"),r={},n=0;n2&&"[]"===o.slice(s-2)&&(a=!0,r[o=o.slice(0,s-2)]||(r[o]=[])),l=i[1]?S(i[1]):""),a?r[o].push(l):r[o]=l}return r},P.prototype.recognize=function(e){var t,r=[this.rootState],n={},i=!1,o=e.indexOf("#");-1!==o&&(e=e.substr(0,o)) var s=e.indexOf("?") if(-1!==s){var a=e.substr(s+1,e.length) e=e.substr(0,s),n=this.parseQueryString(a)}"/"!==e.charAt(0)&&(e="/"+e) @@ -3187,15 +3190,14 @@ if(i!==l)return l-i}return i!==l?i-l:n!==a?a-n:0}))}(d) var f=d[0] return f&&f.handlers&&(i&&f.pattern&&"(.+)$"===f.pattern.slice(-5)&&(u+="/"),t=function(e,t,r){var n=e.handlers,i=e.regex() if(!i||!n)throw new Error("state not initialized") -var o=t.match(i),s=1,a=new S(r) +var o=t.match(i),s=1,a=new R(r) a.length=n.length for(var l=0;l{let{name:o,params:s,paramNames:a,context:l,route:u}=n,c=n -if(w.has(c)&&r){let e=w.get(c) +function E(e,t={},r={includeAttributes:!1,localizeMapUpdates:!1}){const n=new WeakMap +return e.map(((i,o)=>{let{name:s,params:a,paramNames:l,context:u,route:c}=i,p=i +if(w.has(p)&&r.includeAttributes){let e=w.get(p) e=function(e,t){let r={get metadata(){return k(e)}} if(!Object.isExtensible(t)||t.hasOwnProperty("metadata"))return Object.freeze(Object.assign({},t,r)) -return Object.assign(t,r)}(u,e) -let t=E(e,l) -return w.set(c,t),t}let p={find(t,r){let n,i=[] -3===t.length&&(i=e.map((e=>w.get(e)))) -for(let o=0;e.length>o;o++)if(n=w.get(e[o]),t.call(r,n,o,i))return n},get name(){return o},get paramNames(){return a},get metadata(){return k(n.route)},get parent(){let t=e[i-1] -return void 0===t?null:w.get(t)},get child(){let t=e[i+1] -return void 0===t?null:w.get(t)},get localName(){let e=this.name.split(".") -return e[e.length-1]},get params(){return s},get queryParams(){return t}} -return r&&(p=E(p,l)),w.set(n,p),p}))}function E(e,t){let r={get attributes(){return t}} +return Object.assign(t,r)}(c,e) +let t=C(e,u) +return n.set(p,e),r.localizeMapUpdates||w.set(p,t),t}const d=r.localizeMapUpdates?n:w +let h={find(t,r){let n,i=[] +3===t.length&&(i=e.map((e=>d.get(e)))) +for(let o=0;e.length>o;o++)if(n=d.get(e[o]),t.call(r,n,o,i))return n},get name(){return s},get paramNames(){return l},get metadata(){return k(i.route)},get parent(){let t=e[o-1] +return void 0===t?null:d.get(t)},get child(){let t=e[o+1] +return void 0===t?null:d.get(t)},get localName(){let e=this.name.split(".") +return e[e.length-1]},get params(){return a},get queryParams(){return t}} +return r.includeAttributes&&(h=C(h,u)),n.set(i,h),r.localizeMapUpdates||w.set(i,h),h}))}function C(e,t){let r={get attributes(){return t}} return!Object.isExtensible(e)||e.hasOwnProperty("attributes")?Object.freeze(Object.assign({},e,r)):Object.assign(e,r)}function k(e){return null!=e&&void 0!==e.buildRouteInfoMetadata?e.buildRouteInfoMetadata():null}class T{constructor(e,t,r,n){this._routePromise=void 0,this._route=null,this.params={},this.isResolved=!1,this.name=t,this.paramNames=r,this.router=e,n&&this._processRoute(n)}getModel(e){return r.Promise.resolve(this.context)}serialize(e){return this.params||{}}resolve(e){return r.Promise.resolve(this.routePromise).then((t=>(i(e),t))).then((()=>this.runBeforeModelHook(e))).then((()=>i(e))).then((()=>this.getModel(e))).then((t=>(i(e),t))).then((t=>this.runAfterModelHook(e,t))).then((t=>this.becomeResolved(e,t)))}becomeResolved(e,t){let r,n=this.serialize(t) e&&(this.stashResolvedModel(e,t),e[b]=e[b]||{},e[b][this.name]=n) let i=t===this.context !("context"in this)&&i||(r=t) -let o=w.get(this),s=new S(this.router,this.name,this.paramNames,n,this.route,r) +let o=w.get(this),s=new R(this.router,this.name,this.paramNames,n,this.route,r) return void 0!==o&&w.set(s,o),s}shouldSupersede(e){if(!e)return!0 let t=e.context===this.context return e.name!==this.name||"context"in this&&!t||this.hasOwnProperty("params")&&!function(e,t){if(e===t)return!0 @@ -3257,7 +3261,7 @@ var o return this.stashResolvedModel(e,t),void 0!==this.route&&void 0!==this.route.afterModel&&(n=this.route.afterModel(t,e)),n=O(o=n)?null:o,r.Promise.resolve(n).then((()=>e.resolvedModels[i]))}stashResolvedModel(e,t){e.resolvedModels=e.resolvedModels||{},e.resolvedModels[this.name]=t}fetchRoute(){let e=this.router.getRoute(this.name) return this._processRoute(e)}_processRoute(e){return this.routePromise=r.Promise.resolve(e),null!==(t=e)&&"object"==typeof t&&"function"==typeof t.then?(this.routePromise=this.routePromise.then((e=>this.updateRoute(e))),this.route=void 0):e?this.updateRoute(e):void 0 var t}}e.InternalRouteInfo=T -class S extends T{constructor(e,t,r,n,i,o){super(e,t,r,i),this.params=n,this.isResolved=!0,this.context=o}resolve(e){return e&&e.resolvedModels&&(e.resolvedModels[this.name]=this.context),r.Promise.resolve(this)}}class R extends T{constructor(e,t,r,n,i){super(e,t,r,i),this.params={},n&&(this.params=n)}getModel(e){let t=this.params +class R extends T{constructor(e,t,r,n,i,o){super(e,t,r,i),this.params=n,this.isResolved=!0,this.context=o}resolve(e){return e&&e.resolvedModels&&(e.resolvedModels[this.name]=this.context),r.Promise.resolve(this)}}class S extends T{constructor(e,t,r,n,i){super(e,t,r,i),this.params={},n&&(this.params=n)}getModel(e){let t=this.params e&&e[y]&&(t={},a(t,this.params),t.queryParams=e[y]) let n,i=this.route return i.deserialize?n=i.deserialize(t,e):i.model&&(n=i.model(t,e)),n&&O(n)&&(n=void 0),r.Promise.resolve(n)}}class P extends T{constructor(e,t,r,n){super(e,t,r),this.context=n,this.serializer=this.router.getSerializer(t)}getModel(e){return void 0!==this.router.log&&this.router.log(this.name+": resolving provided model"),super.getModel(e)}serialize(e){let{paramNames:t,context:r}=this @@ -3269,25 +3273,25 @@ if(void 0!==this.route&&this.route.serialize)return this.route.serialize(e,t) if(1!==t.length)return let i=t[0] return/_id$/.test(i)?n[i]=e.id:n[i]=e,n}}class x{constructor(e,t={}){this.router=e,this.data=t}}function A(e,t,r){let n=e.routeInfos,i=t.resolveIndex>=n.length?n.length-1:t.resolveIndex,o=t.isAborted -throw new D(r,e.routeInfos[i].route,o,e)}function M(e,t){if(t.resolveIndex===e.routeInfos.length)return +throw new j(r,e.routeInfos[i].route,o,e)}function M(e,t){if(t.resolveIndex===e.routeInfos.length)return let r=e.routeInfos[t.resolveIndex],n=N.bind(null,e,t) return r.resolve(t).then(n,null,e.promiseLabel("Proceed"))}function N(e,t,r){let n=e.routeInfos[t.resolveIndex].isResolved if(e.routeInfos[t.resolveIndex++]=r,!n){let{route:e}=r -void 0!==e&&e.redirect&&e.redirect(r.context,t)}return i(t),M(e,t)}class j{constructor(){this.routeInfos=[],this.queryParams={},this.params={}}promiseLabel(e){let t="" +void 0!==e&&e.redirect&&e.redirect(r.context,t)}return i(t),M(e,t)}class D{constructor(){this.routeInfos=[],this.queryParams={},this.params={}}promiseLabel(e){let t="" return d(this.routeInfos,(function(e){return""!==t&&(t+="."),t+=e.name,!0})),m("'"+t+"': "+e)}resolve(e){let t=this.params d(this.routeInfos,(e=>(t[e.name]=e.params||{},!0))),e.resolveIndex=0 let n=M.bind(null,this,e),i=A.bind(null,this,e) -return r.Promise.resolve(null,this.promiseLabel("Start transition")).then(n,null,this.promiseLabel("Resolve route")).catch(i,this.promiseLabel("Handle error")).then((()=>this))}}e.TransitionState=j -class D{constructor(e,t,r,n){this.error=e,this.route=t,this.wasAborted=r,this.state=n}}e.TransitionError=D +return r.Promise.resolve(null,this.promiseLabel("Start transition")).then(n,null,this.promiseLabel("Resolve route")).catch(i,this.promiseLabel("Handle error")).then((()=>this))}}e.TransitionState=D +class j{constructor(e,t,r,n){this.error=e,this.route=t,this.wasAborted=r,this.state=n}}e.TransitionError=j class I extends x{constructor(e,t,r,n=[],i={},o){super(e,o),this.preTransitionState=void 0,this.name=t,this.pivotHandler=r,this.contexts=n,this.queryParams=i}applyToState(e,t){let r=this.router.recognizer.handlersFor(this.name),n=r[r.length-1].handler -return this.applyToHandlers(e,r,n,t,!1)}applyToHandlers(e,t,r,n,i){let o,s,l=new j,u=this.contexts.slice(0),c=t.length +return this.applyToHandlers(e,r,n,t,!1)}applyToHandlers(e,t,r,n,i){let o,s,l=new D,u=this.contexts.slice(0),c=t.length if(this.pivotHandler)for(o=0,s=t.length;o=0;--o){let s=t[o],a=s.handler,p=e.routeInfos[o],d=null if(d=s.names.length>0?o>=c?this.createParamHandlerInfo(a,s.names,u,p):this.getHandlerInfoForDynamicSegment(a,s.names,u,p,r,o):this.createParamHandlerInfo(a,s.names,u,p),i){d=d.becomeResolved(null,d.context) let e=p&&p.context s.names.length>0&&void 0!==p.context&&d.context===e&&(d.params=p&&p.params),d.context=e}let h=p;(o>=c||d.shouldSupersede(p))&&(c=Math.min(o,c),h=d),n&&!i&&(h=h.becomeResolved(null,h.context)),l.routeInfos.unshift(h)}if(u.length>0)throw new Error("More context objects were passed than there are dynamic segments for the route: "+r) return n||this.invalidateChildren(l.routeInfos,c),a(l.queryParams,this.queryParams||{}),n&&e.queryParams&&a(l.queryParams,e.queryParams),l}invalidateChildren(e,t){for(let r=t,n=e.length;r0){if(s=r[r.length-1],p(s))return this.createParamHandlerInfo(e,t,r,n) r.pop()}else{if(n&&n.name===e)return n if(!this.preTransitionState)return n @@ -3295,15 +3299,15 @@ if(!this.preTransitionState)return n s=null==e?void 0:e.context}}return new P(this.router,e,t,s)}createParamHandlerInfo(e,t,r,n){let i={},o=t.length,s=[] for(;o--;){let a=n&&e===n.name&&n.params||{},l=r[r.length-1],u=t[o] p(l)?i[u]=""+r.pop():a.hasOwnProperty(u)?i[u]=a[u]:s.push(u)}if(s.length>0)throw new Error(`You didn't provide enough string/numeric parameters to satisfy all of the dynamic segments for route ${e}. Missing params: ${s}`) -return new R(this.router,e,t,i)}}const F=function(){function e(t){let r=Error.call(this,t) +return new S(this.router,e,t,i)}}const F=function(){function e(t){let r=Error.call(this,t) this.name="UnrecognizedURLError",this.message=t||"UnrecognizedURL",Error.captureStackTrace?Error.captureStackTrace(this,e):this.stack=r.stack}return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}() -class L extends x{constructor(e,t,r){super(e,r),this.url=t,this.preTransitionState=void 0}applyToState(e){let t,r,n=new j,i=this.router.recognizer.recognize(this.url) +class L extends x{constructor(e,t,r){super(e,r),this.url=t,this.preTransitionState=void 0}applyToState(e){let t,r,n=new D,i=this.router.recognizer.recognize(this.url) if(!i)throw new F(this.url) let o=!1,s=this.url function l(e){if(e&&e.inaccessibleByURL)throw new F(s) return e}for(t=0,r=i.length;t(e.isAborted||(this._updateURL(e,r),this.didTransition(this.currentRouteInfos),this.toInfos(e,n.routeInfos,!0),this.routeDidChange(e)),t)),null,m("Transition complete")),e}}transitionByIntent(e,t){try{return this.getTransitionByIntent(e,t)}catch(r){return new v(this,e,void 0,r,void 0)}}recognize(e){let t=new L(this,e),r=this.generateNewState(t) if(null===r)return r -let n=C(r.routeInfos,r.queryParams) +let n=E(r.routeInfos,r.queryParams,{includeAttributes:!1,localizeMapUpdates:!0}) return n[n.length-1]}recognizeAndLoad(e){let t=new L(this,e),n=this.generateNewState(t) if(null===n)return r.Promise.reject(`URL ${e} was not recognized`) let i=new v(this,t,n,void 0) -return i.then((()=>{let e=C(n.routeInfos,i[y],!0) +return i.then((()=>{let e=E(n.routeInfos,i[y],{includeAttributes:!0,localizeMapUpdates:!1}) return e[e.length-1]}))}generateNewState(e){try{return e.applyToState(this.state,!1)}catch(t){return null}}getTransitionByIntent(e,t){let r,n=!!this.activeTransition,i=n?this.activeTransition[g]:this.state,o=e.applyToState(i,t),s=h(i.queryParams,o.queryParams) if(B(o.routeInfos,i.routeInfos)){if(s){let e=this.queryParamsTransition(s,n,i,o) return e.queryParamsOnly=!0,e}return this.activeTransition||new v(this,void 0,void 0)}if(t){let e=new v(this,void 0,o) @@ -3358,12 +3362,12 @@ this.triggerEvent(e,!0,"finalizeQueryParamChange",[t,n,r]),r&&(r._visibleQueryPa let i={} for(let o=0,s=n.length;o0){let r=C(t,Object.assign({},this._lastQueryParams),!0) -e.from=r[r.length-1]||null}}toInfos(e,t,r=!1){if(void 0!==e&&t.length>0){let n=C(t,Object.assign({},e[y]),r) +this.fromInfos(e,r),this.toInfos(e,t.routeInfos),this._lastQueryParams=t.queryParams}fromInfos(e,t){if(void 0!==e&&t.length>0){let r=E(t,Object.assign({},this._lastQueryParams),{includeAttributes:!0,localizeMapUpdates:!1}) +e.from=r[r.length-1]||null}}toInfos(e,t,r=!1){if(void 0!==e&&t.length>0){let n=E(t,Object.assign({},e[y]),{includeAttributes:r,localizeMapUpdates:!1}) e.to=n[n.length-1]||null}}notifyExistingHandlers(e,t){let r,n,i,o,s=this.state.routeInfos for(n=s.length,r=0;r_(o,s,r,l)))}return s}class w{constructor(e,t,r,n){this._instanceConstructor=e,this.promise=new e(u,n),this._abortOnReject=r,this._isUsingOwnPromise=e===S,this._isUsingOwnResolve=e.resolve===l,this._init(...arguments)}_init(e,t){let r=t.length||0 +i.async((()=>_(o,s,r,l)))}return s}class w{constructor(e,t,r,n){this._instanceConstructor=e,this.promise=new e(u,n),this._abortOnReject=r,this._isUsingOwnPromise=e===R,this._isUsingOwnResolve=e.resolve===l,this._init(...arguments)}_init(e,t){let r=t.length||0 this.length=r,this._remaining=r,this._result=new Array(r),this._enumerate(t)}_enumerate(e){let t=this.length,r=this.promise for(let n=0;r._state===c&&nt(e))),t,r)}else this._willSettleAt(n.resolve(e),t,r)}_eachEntry(e,t,r){null!==e&&"object"==typeof e?this._settleMaybeThenable(e,t,r):this._setResultAt(p,t,e,r)}_settledAt(e,t,r,n){let i=this.promise -i._state===c&&(this._abortOnReject&&e===d?b(i,r):(this._setResultAt(e,t,r,n),this._checkFullfillment()))}_setResultAt(e,t,r,n){this._remaining--,this._result[t]=r}_willSettleAt(e,t,r){y(e,void 0,(e=>this._settledAt(p,t,e,r)),(e=>this._settledAt(d,t,e,r)))}}function C(e,t,r){this._remaining--,this._result[t]=e===p?{state:"fulfilled",value:r}:{state:"rejected",reason:r}}const E="rsvp_"+Date.now()+"-" +i._state===c&&(this._abortOnReject&&e===d?b(i,r):(this._setResultAt(e,t,r,n),this._checkFullfillment()))}_setResultAt(e,t,r,n){this._remaining--,this._result[t]=r}_willSettleAt(e,t,r){y(e,void 0,(e=>this._settledAt(p,t,e,r)),(e=>this._settledAt(d,t,e,r)))}}function E(e,t,r){this._remaining--,this._result[t]=e===p?{state:"fulfilled",value:r}:{state:"rejected",reason:r}}const C="rsvp_"+Date.now()+"-" let k=0 let T=class e{constructor(t,r){this._id=k++,this._label=r,this._state=void 0,this._result=void 0,this._subscribers=[],i.instrument&&a("created",this),u!==t&&("function"!=typeof t&&function(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}(),this instanceof e?function(e,t){let r=!1 try{t((t=>{r||(r=!0,f(e,t))}),(t=>{r||(r=!0,b(e,t))}))}catch(n){b(e,n)}}(this,t):function(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}())}_onError(e){i.after((()=>{this._onError&&i.trigger("error",e,this._label)}))}catch(e,t){return this.then(void 0,e,t)}finally(e,t){let r=this,n=r.constructor @@ -3435,36 +3439,36 @@ T.cast=l,T.all=function(e,t){return Array.isArray(e)?new w(this,e,!0,t).promise: if(!Array.isArray(e))return b(n,new TypeError("Promise.race must be called with an array")),n for(let i=0;n._state===c&&if(n,e)),(e=>b(n,e))) return n},T.resolve=l,T.reject=function(e,t){let r=new this(u,t) -return b(r,e),r},T.prototype._guidKey=E,T.prototype.then=O -var S=e.Promise=T -function R(e,t){return{then:(r,n)=>e.call(t,r,n)}}function P(e,t){let r=function(){let r=arguments.length,n=new Array(r+1),i=!1 +return b(r,e),r},T.prototype._guidKey=C,T.prototype.then=O +var R=e.Promise=T +function S(e,t){return{then:(r,n)=>e.call(t,r,n)}}function P(e,t){let r=function(){let r=arguments.length,n=new Array(r+1),i=!1 for(let e=0;ex(e,t,r,n)))}(o,n,e,this):x(o,n,e,this)} -return r.__proto__=e,r}function x(e,t,r,n){try{r.apply(n,t)}catch(i){b(e,i)}return e}function A(e,t){return S.all(e,t)}class M extends w{constructor(e,t,r){super(e,t,!1,r)}}function N(e,t){return Array.isArray(e)?new M(S,e,t).promise:S.reject(new TypeError("Promise.allSettled must be called with an array"),t)}function j(e,t){return S.race(e,t)}M.prototype._setResultAt=C -class D extends w{constructor(e,t,r=!0,n){super(e,t,r,n)}_init(e,t){this._result={},this._enumerate(t)}_enumerate(e){let t,r,n=Object.keys(e),i=n.length,o=this.promise +return r}(arguments,t)):f(o,r)},i?function(e,t,r,n){return R.all(t).then((t=>x(e,t,r,n)))}(o,n,e,this):x(o,n,e,this)} +return r.__proto__=e,r}function x(e,t,r,n){try{r.apply(n,t)}catch(i){b(e,i)}return e}function A(e,t){return R.all(e,t)}class M extends w{constructor(e,t,r){super(e,t,!1,r)}}function N(e,t){return Array.isArray(e)?new M(R,e,t).promise:R.reject(new TypeError("Promise.allSettled must be called with an array"),t)}function D(e,t){return R.race(e,t)}M.prototype._setResultAt=E +class j extends w{constructor(e,t,r=!0,n){super(e,t,r,n)}_init(e,t){this._result={},this._enumerate(t)}_enumerate(e){let t,r,n=Object.keys(e),i=n.length,o=this.promise this._remaining=i for(let s=0;o._state===c&&s{throw e})),e}function U(e){let t={resolve:void 0,reject:void 0} -return t.promise=new S(((e,r)=>{t.resolve=e,t.reject=r}),e),t}F.prototype._setResultAt=C +this._checkFullfillment()}}function I(e,t){return R.resolve(e,t).then((function(e){if(null===e||"object"!=typeof e)throw new TypeError("Promise.hash must be called with an object") +return new j(R,e,t).promise}))}class F extends j{constructor(e,t,r){super(e,t,!1,r)}}function L(e,t){return R.resolve(e,t).then((function(e){if(null===e||"object"!=typeof e)throw new TypeError("hashSettled must be called with an object") +return new F(R,e,!1,t).promise}))}function B(e){throw setTimeout((()=>{throw e})),e}function U(e){let t={resolve:void 0,reject:void 0} +return t.promise=new R(((e,r)=>{t.resolve=e,t.reject=r}),e),t}F.prototype._setResultAt=E class H extends w{constructor(e,t,r,n){super(e,t,!0,n,r)}_init(e,t,r,n,i){let o=t.length||0 -this.length=o,this._remaining=o,this._result=new Array(o),this._mapFn=i,this._enumerate(t)}_setResultAt(e,t,r,n){if(n)try{this._eachEntry(this._mapFn(r,t),t,!1)}catch(i){this._settledAt(d,t,i,!1)}else this._remaining--,this._result[t]=r}}function $(e,t,r){return"function"!=typeof t?S.reject(new TypeError("map expects a function as a second argument"),r):S.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("map must be called with an array") -return new H(S,e,t,r).promise}))}function V(e,t){return S.resolve(e,t)}function z(e,t){return S.reject(e,t)}const q={} +this.length=o,this._remaining=o,this._result=new Array(o),this._mapFn=i,this._enumerate(t)}_setResultAt(e,t,r,n){if(n)try{this._eachEntry(this._mapFn(r,t),t,!1)}catch(i){this._settledAt(d,t,i,!1)}else this._remaining--,this._result[t]=r}}function $(e,t,r){return"function"!=typeof t?R.reject(new TypeError("map expects a function as a second argument"),r):R.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("map must be called with an array") +return new H(R,e,t,r).promise}))}function V(e,t){return R.resolve(e,t)}function z(e,t){return R.reject(e,t)}const q={} class G extends H{_checkFullfillment(){if(0===this._remaining&&null!==this._result){let e=this._result.filter((e=>e!==q)) g(this.promise,e),this._result=null}}_setResultAt(e,t,r,n){if(n){this._result[t]=r let e,n=!0 -try{e=this._mapFn(r,t)}catch(i){n=!1,this._settledAt(d,t,i,!1)}n&&this._eachEntry(e,t,!1)}else this._remaining--,r||(this._result[t]=q)}}function W(e,t,r){return"function"!=typeof t?S.reject(new TypeError("filter expects function as a second argument"),r):S.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("filter must be called with an array") -return new G(S,e,t,r).promise}))}let Y,Q=0 +try{e=this._mapFn(r,t)}catch(i){n=!1,this._settledAt(d,t,i,!1)}n&&this._eachEntry(e,t,!1)}else this._remaining--,r||(this._result[t]=q)}}function W(e,t,r){return"function"!=typeof t?R.reject(new TypeError("filter expects function as a second argument"),r):R.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("filter must be called with an array") +return new G(R,e,t,r).promise}))}let Y,Q=0 function K(e,t){ne[Q]=e,ne[Q+1]=t,Q+=2,2===Q&&oe()}const J="undefined"!=typeof window?window:void 0,X=J||{},Z=X.MutationObserver||X.WebKitMutationObserver,ee="undefined"==typeof self&&"undefined"!=typeof process&&"[object process]"==={}.toString.call(process),te="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel function re(){return()=>setTimeout(ie,1)}const ne=new Array(1e3) function ie(){for(let e=0;ei.async(e,t) function le(){i.on(...arguments)}function ue(){i.off(...arguments)}if(e.async=ae,"undefined"!=typeof window&&"object"==typeof window.__PROMISE_INSTRUMENTATION__){let e=window.__PROMISE_INSTRUMENTATION__ o("instrument",!0) -for(let t in e)e.hasOwnProperty(t)&&le(t,e[t])}e.default={asap:K,cast:se,Promise:S,EventTarget:n,all:A,allSettled:N,race:j,hash:I,hashSettled:L,rethrow:B,defer:U,denodeify:P,configure:o,on:le,off:ue,resolve:V,reject:z,map:$,async:ae,filter:W}})),"object"==typeof module&&"function"==typeof module.require&&(module.exports=t("ember").default)}(),"undefined"==typeof FastBoot){var preferNative=!1;(function(e){define("fetch",["exports","ember","rsvp"],(function(t,r,n){"use strict" +for(let t in e)e.hasOwnProperty(t)&&le(t,e[t])}e.default={asap:K,cast:se,Promise:R,EventTarget:n,all:A,allSettled:N,race:D,hash:I,hashSettled:L,rethrow:B,defer:U,denodeify:P,configure:o,on:le,off:ue,resolve:V,reject:z,map:$,async:ae,filter:W}})),"object"==typeof module&&"function"==typeof module.require&&(module.exports=t("ember").default)}(),"undefined"==typeof FastBoot){var preferNative=!1;(function(e){define("fetch",["exports","ember","rsvp"],(function(t,r,n){"use strict" var i="default"in r?r.default:r,o=("default"in n?n.default:n).Promise,s=["FormData","FileReader","Blob","URLSearchParams","Symbol","ArrayBuffer"],a=s preferNative&&(a=s.concat(["fetch","Headers","Request","Response","AbortController"])),a.forEach((function(r){e[r]&&Object.defineProperty(t,r,{configurable:!0,get:function(){return e[r]},set:function(t){e[r]=t}})})) var l=t,u=t;(function(){class e{constructor(){Object.defineProperty(this,"listeners",{value:{},writable:!0,configurable:!0})}addEventListener(e,t,r){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push({callback:t,options:r})}removeEventListener(e,t){if(!(e in this.listeners))return @@ -3510,7 +3514,7 @@ if(this._bodyBlob)return e=this._bodyBlob,t=new FileReader,r=b(t),n=/charset=([A if(this._bodyArrayBuffer)return o.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?i:n),this.mode=r.mode||this.mode||null,this.signal=r.signal||this.signal||function(){if("AbortController"in t)return(new AbortController).signal}(),this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests") if(this._initBody(o),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==r.cache&&"no-cache"!==r.cache)){var s=/([?&])_=[^&]*/ if(s.test(this.url))this.url=this.url.replace(s,"$1_="+(new Date).getTime()) -else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function C(e){var t=new FormData +else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function E(e){var t=new FormData return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ") -t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function E(e,t){if(!(this instanceof E))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.') +t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function C(e,t){if(!(this instanceof C))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.') if(t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].") -this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new m(t.headers),this.url=t.url||"",this._initBody(e)}w.prototype.clone=function(){return new w(this,{body:this._bodyInit})},_.call(w.prototype),_.call(E.prototype),E.prototype.clone=function(){return new E(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},E.error=function(){var e=new E(null,{status:200,statusText:""}) +this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new m(t.headers),this.url=t.url||"",this._initBody(e)}w.prototype.clone=function(){return new w(this,{body:this._bodyInit})},_.call(w.prototype),_.call(C.prototype),C.prototype.clone=function(){return new C(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},C.error=function(){var e=new C(null,{status:200,statusText:""}) return e.ok=!1,e.status=0,e.type="error",e} var k=[301,302,303,307,308] -E.redirect=function(e,t){if(-1===k.indexOf(t))throw new RangeError("Invalid status code") -return new E(null,{status:t,headers:{location:e}})},e.DOMException=t.DOMException -try{new e.DOMException}catch(S){e.DOMException=function(e,t){this.message=e,this.name=t +C.redirect=function(e,t){if(-1===k.indexOf(t))throw new RangeError("Invalid status code") +return new C(null,{status:t,headers:{location:e}})},e.DOMException=t.DOMException +try{new e.DOMException}catch(R){e.DOMException=function(e,t){this.message=e,this.name=t var r=Error(e) this.stack=r.stack},e.DOMException.prototype=Object.create(Error.prototype),e.DOMException.prototype.constructor=e.DOMException}function T(r,n){return new o((function(o,s){var l=new w(r,n) if(l.signal&&l.signal.aborted)return s(new e.DOMException("Aborted","AbortError")) @@ -3543,9 +3547,9 @@ if(n){var i=r.join(":").trim() try{t.append(n,i)}catch(o){console.warn("Response "+o.message)}}})),t)} 0===l.url.indexOf("file://")&&(u.status<200||u.status>599)?r.status=200:r.status=u.status,r.url="responseURL"in u?u.responseURL:r.headers.get("X-Request-URL") var n="response"in u?u.response:u.responseText -setTimeout((function(){o(new E(n,r))}),0)},u.onerror=function(){setTimeout((function(){s(new TypeError("Network request failed"))}),0)},u.ontimeout=function(){setTimeout((function(){s(new TypeError("Network request timed out"))}),0)},u.onabort=function(){setTimeout((function(){s(new e.DOMException("Aborted","AbortError"))}),0)},u.open(l.method,function(e){try{return""===e&&t.location.href?t.location.href:e}catch(r){return e}}(l.url),!0),"include"===l.credentials?u.withCredentials=!0:"omit"===l.credentials&&(u.withCredentials=!1),"responseType"in u&&(i?u.responseType="blob":a&&(u.responseType="arraybuffer")),n&&"object"==typeof n.headers&&!(n.headers instanceof m||t.Headers&&n.headers instanceof t.Headers)){var p=[] +setTimeout((function(){o(new C(n,r))}),0)},u.onerror=function(){setTimeout((function(){s(new TypeError("Network request failed"))}),0)},u.ontimeout=function(){setTimeout((function(){s(new TypeError("Network request timed out"))}),0)},u.onabort=function(){setTimeout((function(){s(new e.DOMException("Aborted","AbortError"))}),0)},u.open(l.method,function(e){try{return""===e&&t.location.href?t.location.href:e}catch(r){return e}}(l.url),!0),"include"===l.credentials?u.withCredentials=!0:"omit"===l.credentials&&(u.withCredentials=!1),"responseType"in u&&(i?u.responseType="blob":a&&(u.responseType="arraybuffer")),n&&"object"==typeof n.headers&&!(n.headers instanceof m||t.Headers&&n.headers instanceof t.Headers)){var p=[] Object.getOwnPropertyNames(n.headers).forEach((function(e){p.push(d(e)),u.setRequestHeader(e,h(n.headers[e]))})),l.headers.forEach((function(e,t){-1===p.indexOf(t)&&u.setRequestHeader(t,e)}))}else l.headers.forEach((function(e,t){u.setRequestHeader(t,e)})) -l.signal&&(l.signal.addEventListener("abort",c),u.onreadystatechange=function(){4===u.readyState&&l.signal.removeEventListener("abort",c)}),u.send(void 0===l._bodyInit?null:l._bodyInit)}))}T.polyfill=!0,t.fetch||(t.fetch=T,t.Headers=m,t.Request=w,t.Response=E),e.Headers=m,e.Request=w,e.Response=E,e.fetch=T})({}) +l.signal&&(l.signal.addEventListener("abort",c),u.onreadystatechange=function(){4===u.readyState&&l.signal.removeEventListener("abort",c)}),u.send(void 0===l._bodyInit?null:l._bodyInit)}))}T.polyfill=!0,t.fetch||(t.fetch=T,t.Headers=m,t.Request=w,t.Response=C),e.Headers=m,e.Request=w,e.Response=C,e.fetch=T})({}) if(!l.fetch)throw new Error("fetch is not defined - maybe your browser targets are not covering everything you need?") var c=0 function p(e){return c--,e}i.Test?(i.Test.registerWaiter((function(){return 0===c})),t.default=function(){return c++,t.fetch.apply(e,arguments).then((function(e){return e.clone().blob().then(p,p),e}),(function(e){throw p(e),e}))}):t.default=t.fetch,s.forEach((function(e){delete t[e]}))}))})("undefined"!=typeof window&&window||"undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||"undefined"!=typeof global&&global)}define("@ember/string/cache",["exports"],(function(e){"use strict" @@ -3598,19 +3602,18 @@ const n={packages:{},global:{}} let i="undefined"!=typeof window?window._embroider_macros_runtime_config:void 0 if(i){let e={config:t,getGlobalConfig:r,setConfig(e,t){n.packages[e]=t},setGlobalConfig(e,t){n.global[e]=t}} for(let t of i)t(e)}})),define("@glimmer/component/-private/base-component-manager",["exports","@glimmer/component/-private/component"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return class{static create(e){return new this(t(e))}constructor(t){var n,i,o -n=this,o=r,(i=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return class{static create(e){return new this(t(e))}constructor(t){(function(e,t,r){(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e var r=e[Symbol.toPrimitive] if(void 0!==r){var n=r.call(e,t||"default") if("object"!=typeof n)return n throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(i="capabilities"))in n?Object.defineProperty(n,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[i]=o,e(this,t)}createComponent(e,r){return new e(t(this),r.named)}getContext(e){return e}}}})),define("@glimmer/component/-private/component",["exports","@glimmer/component/-private/owner","@glimmer/component/-private/destroyables"],(function(e,t,r){"use strict" -function n(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})(this,"capabilities",r),e(this,t)}createComponent(e,r){return new e(t(this),r.named)}getContext(e){return e}}}})),define("@glimmer/component/-private/component",["exports","@glimmer/component/-private/owner","@glimmer/component/-private/destroyables"],(function(e,t,r){"use strict" +function n(e,t,r){var n +return(t="symbol"==typeof(n=function(e,t){if("object"!=typeof e||!e)return e var r=e[Symbol.toPrimitive] if(void 0!==r){var n=r.call(e,t||"default") if("object"!=typeof n)return n -throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ARGS_SET=void 0 +throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"))?n:n+"")in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ARGS_SET=void 0 e.ARGS_SET=void 0 e.default=class{constructor(e,r){n(this,"args",void 0),this.args=r,(0,t.setOwner)(this,e)}get isDestroying(){return(0,r.isDestroying)(this)}get isDestroyed(){return(0,r.isDestroyed)(this)}willDestroy(){}}})),define("@glimmer/component/-private/destroyables",["exports","ember"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.isDestroying=e.isDestroyed=void 0 diff --git a/ember/ember-5.7.0.template-compiler.js b/ember/ember-git-03-f9cfada9.template-compiler.js similarity index 90% rename from ember/ember-5.7.0.template-compiler.js rename to ember/ember-git-03-f9cfada9.template-compiler.js index 84dc847..ab48b77 100644 --- a/ember/ember-5.7.0.template-compiler.js +++ b/ember/ember-git-03-f9cfada9.template-compiler.js @@ -6,7 +6,7 @@ * Portions Copyright 2008-2011 Apple Inc. All rights reserved. * @license Licensed under MIT license * See https://raw.github.com/emberjs/ember.js/master/LICENSE - * @version 5.7.0 + * @version 5.10.0-alpha.1+f9cfada9 */ /* eslint-disable no-var */ @@ -222,18 +222,6 @@ define("@ember/-internals/environment/index", ["exports"], function (_exports) { LOG_VERSION: true, RAISE_ON_DEPRECATION: false, STRUCTURED_PROFILE: false, - /** - Whether to insert a `
` wrapper around the - application template. See RFC #280. - This is not intended to be set directly, as the implementation may change in - the future. Use `@ember/optional-features` instead. - @property _APPLICATION_TEMPLATE_WRAPPER - @for EmberENV - @type Boolean - @default true - @private - */ - _APPLICATION_TEMPLATE_WRAPPER: true, /** Whether to use Glimmer Component semantics (as opposed to the classic "Curly" components semantics) for template-only components. See RFC #278. @@ -270,6 +258,28 @@ define("@ember/-internals/environment/index", ["exports"], function (_exports) { @private */ _DEBUG_RENDER_TREE: true /* DEBUG */, + /** + Whether to force all deprecations to be enabled. This is used internally by + Ember to enable deprecations in tests. It is not intended to be set in + projects. + @property _ALL_DEPRECATIONS_ENABLED + @for EmberENV + @type Boolean + @default false + @private + */ + _ALL_DEPRECATIONS_ENABLED: false, + /** + Override the version of ember-source used to determine when deprecations "break". + This is used internally by Ember to test with deprecated features "removed". + This is never intended to be set by projects. + @property _OVERRIDE_DEPRECATION_VERSION + @for EmberENV + @type string | null + @default null + @private + */ + _OVERRIDE_DEPRECATION_VERSION: null, /** Whether the app defaults to using async observers. This is not intended to be set directly, as the implementation may change in @@ -317,6 +327,8 @@ define("@ember/-internals/environment/index", ["exports"], function (_exports) { ENV[flag] = EmberENV[flag] !== false; } else if (defaultValue === false) { ENV[flag] = EmberENV[flag] === true; + } else { + ENV[flag] = EmberENV[flag]; } } let { @@ -1010,6 +1022,7 @@ define("@ember/canary-features/index", ["exports", "@ember/-internals/environmen // } // return value; // } + // // export const FLAG_NAME = featureValue(FEATURES.FLAG_NAME); }); define("@ember/debug/container-debug-adapter", ["exports", "@ember/-internals/string", "@ember/object", "@ember/utils", "@ember/-internals/owner", "@ember/application/namespace"], function (_exports, _string, _object, _utils, _owner, _namespace) { @@ -1971,7 +1984,6 @@ define("@ember/debug/lib/deprecate", ["exports", "@ember/-internals/environment" let updatedMessage = formatMessage(message, options); console.warn("DEPRECATION: " + updatedMessage); // eslint-disable-line no-console }); - let captureErrorForStack; if (new Error().stack) { captureErrorForStack = () => new Error(); @@ -2310,7 +2322,6 @@ define("@ember/debug/lib/warn", ["exports", "@ember/debug/index", "@ember/debug/ console.warn("WARNING: " + message); /* eslint-enable no-console */ }); - _exports.missingOptionsDeprecation = missingOptionsDeprecation = 'When calling `warn` you ' + 'must provide an `options` hash as the third parameter. ' + '`options` should include an `id` property.'; _exports.missingOptionsIdDeprecation = missingOptionsIdDeprecation = 'When calling `warn` you must provide `id` in options.'; /** @@ -3147,7 +3158,7 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } = normalized; let builtParams = params ? buildParams(params, symbols) : null; let builtHash = hash ? buildHash(hash, symbols) : null; - let builtExpr = buildCallHead(path, trusted ? _wireFormat.VariableResolutionContext.AmbiguousInvoke : _wireFormat.VariableResolutionContext.AmbiguousAppendInvoke, symbols); + let builtExpr = buildCallHead(path, trusted ? _wireFormat.VariableResolutionContext.ResolveAsHelperHead : _wireFormat.VariableResolutionContext.ResolveAsComponentOrHelperHead, symbols); return [[trusted ? _wireFormat.SexpOpcodes.TrustingAppend : _wireFormat.SexpOpcodes.Append, [_wireFormat.SexpOpcodes.Call, builtExpr, builtParams, builtHash]]]; } case HeadKind.Literal: @@ -3207,8 +3218,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", let block = buildBlock(normalized.blocks['default'], childSymbols, childSymbols.paramSymbols); let inverse = normalized.blocks['else'] ? buildBlock(normalized.blocks['else'], symbols, []) : null; switch (name) { - case 'with': - return [_wireFormat.SexpOpcodes.With, (0, _util.expect)(params, 'with requires params')[0], block, inverse]; + case 'let': + return [_wireFormat.SexpOpcodes.Let, (0, _util.expect)(params, 'let requires params'), block]; case 'if': return [_wireFormat.SexpOpcodes.If, (0, _util.expect)(params, 'if requires params')[0], block, inverse]; case 'each': @@ -3387,15 +3398,15 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", if (context === 'Strict') { op = _wireFormat.SexpOpcodes.GetStrictKeyword; } else if (context === 'AppendBare') { - op = _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback; + op = _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead; } else if (context === 'AppendInvoke') { op = _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead; } else if (context === 'TrustedAppendBare') { - op = _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback; + op = _wireFormat.SexpOpcodes.GetFreeAsHelperHead; } else if (context === 'TrustedAppendInvoke') { op = _wireFormat.SexpOpcodes.GetFreeAsHelperHead; } else if (context === 'AttrValueBare') { - op = _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback; + op = _wireFormat.SexpOpcodes.GetFreeAsHelperHead; } else if (context === 'AttrValueInvoke') { op = _wireFormat.SexpOpcodes.GetFreeAsHelperHead; } else if (context === 'SubExpression') { @@ -3412,6 +3423,7 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", if (path === undefined || path.length === 0) { return [op, sym]; } else { + (0, _util.assert)(op !== _wireFormat.SexpOpcodes.GetStrictKeyword, '[BUG] keyword with a path'); return [op, sym, path]; } } @@ -3433,13 +3445,9 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", switch (context) { case _wireFormat.VariableResolutionContext.Strict: return _wireFormat.SexpOpcodes.GetStrictKeyword; - case _wireFormat.VariableResolutionContext.AmbiguousAppend: - return _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback; - case _wireFormat.VariableResolutionContext.AmbiguousAppendInvoke: + case _wireFormat.VariableResolutionContext.ResolveAsComponentOrHelperHead: return _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead; - case _wireFormat.VariableResolutionContext.AmbiguousInvoke: - return _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback; - case _wireFormat.VariableResolutionContext.ResolveAsCallHead: + case _wireFormat.VariableResolutionContext.ResolveAsHelperHead: return _wireFormat.SexpOpcodes.GetFreeAsHelperHead; case _wireFormat.VariableResolutionContext.ResolveAsModifierHead: return _wireFormat.SexpOpcodes.GetFreeAsModifierHead; @@ -3491,7 +3499,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", class If extends (0, _syntax.node)('If').fields() {} class IfInline extends (0, _syntax.node)('IfInline').fields() {} class Each extends (0, _syntax.node)('Each').fields() {} - class With extends (0, _syntax.node)('With').fields() {} class Let extends (0, _syntax.node)('Let').fields() {} class WithDynamicVars extends (0, _syntax.node)('WithDynamicVars').fields() {} class GetDynamicVar extends (0, _syntax.node)('GetDynamicVar').fields() {} @@ -3499,7 +3506,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", class InvokeComponent extends (0, _syntax.node)('InvokeComponent').fields() {} class NamedBlocks extends (0, _syntax.node)('NamedBlocks').fields() {} class NamedBlock extends (0, _syntax.node)('NamedBlock').fields() {} - class EndBlock extends (0, _syntax.node)('EndBlock').fields() {} class AppendTrustedHTML extends (0, _syntax.node)('AppendTrustedHTML').fields() {} class AppendTextNode extends (0, _syntax.node)('AppendTextNode').fields() {} class AppendComment extends (0, _syntax.node)('AppendComment').fields() {} @@ -3511,16 +3517,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", class Yield extends (0, _syntax.node)('Yield').fields() {} class Debugger extends (0, _syntax.node)('Debugger').fields() {} class CallExpression extends (0, _syntax.node)('CallExpression').fields() {} - class DeprecatedCallExpression extends (0, _syntax.node)('DeprecatedCallExpression').fields() {} class Modifier extends (0, _syntax.node)('Modifier').fields() {} class InvokeBlock extends (0, _syntax.node)('InvokeBlock').fields() {} class SplatAttr extends (0, _syntax.node)('SplatAttr').fields() {} class PathExpression extends (0, _syntax.node)('PathExpression').fields() {} - class GetWithResolver extends (0, _syntax.node)('GetWithResolver').fields() {} - class GetSymbol extends (0, _syntax.node)('GetSymbol').fields() {} - class GetFreeWithContext extends (0, _syntax.node)('GetFreeWithContext').fields() {} - /** strict mode */ - class GetFree extends (0, _syntax.node)('GetFree').fields() {} class Missing extends (0, _syntax.node)('Missing').fields() {} class InterpolateExpression extends (0, _syntax.node)('InterpolateExpression').fields() {} class HasBlock extends (0, _syntax.node)('HasBlock').fields() {} @@ -3696,75 +3696,13 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return this.toArray().mapOk(arr => OptionalList(arr)); } } - function hasPath(node) { - return node.callee.type === 'Path'; - } - function isHelperInvocation(node) { - if (!hasPath(node)) { - return false; - } - return !node.args.isEmpty(); - } - function isSimplePath(path) { - if (path.type === 'Path') { - let { - ref: head, - tail: parts - } = path; - return head.type === 'Free' && !_syntax.ASTv2.isStrictResolution(head.resolution) && parts.length === 0; - } else { - return false; - } - } - function isStrictHelper(expr) { - if (expr.callee.type !== 'Path') { - return true; - } - if (expr.callee.ref.type !== 'Free') { - return true; - } - return _syntax.ASTv2.isStrictResolution(expr.callee.ref.resolution); - } - function assertIsValidModifier(helper) { - if (isStrictHelper(helper) || isSimplePath(helper.callee)) { - return; - } - throw (0, _syntax.generateSyntaxError)("`" + printPath(helper.callee) + "` is not a valid name for a modifier", helper.loc); - } - function printPath(path) { - switch (path.type) { - case 'Literal': - return JSON.stringify(path.value); - case 'Path': - { - let printedPath = [printPathHead(path.ref)]; - printedPath.push(...path.tail.map(t => t.chars)); - return printedPath.join('.'); - } - case 'Call': - return "(" + printPath(path.callee) + " ...)"; - case 'DeprecatedCall': - return "" + path.callee.name; - case 'Interpolate': - throw (0, _util.unreachable)('a concat statement cannot appear as the head of an expression'); - } - } - function printPathHead(head) { - switch (head.type) { - case 'Arg': - return head.name.chars; - case 'Free': - case 'Local': - return head.name; - case 'This': - return 'this'; - } - } class NormalizeExpressions { visit(node, state) { switch (node.type) { case 'Literal': return Ok(this.Literal(node)); + case 'Keyword': + return Ok(this.Keyword(node)); case 'Interpolate': return this.Interpolate(node, state); case 'Path': @@ -3777,8 +3715,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } return this.CallExpression(node, state); } - case 'DeprecatedCall': - return this.DeprecaedCallExpression(node, state); } } visitList(nodes, state) { @@ -3816,6 +3752,9 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", Literal(literal) { return literal; } + Keyword(keyword) { + return keyword; + } Interpolate(expr, state) { let parts = expr.parts.map(convertPathToCallIfKeyword); return VISIT_EXPRS.visitList(parts, state).mapOk(parts => new InterpolateExpression({ @@ -3824,8 +3763,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", })); } CallExpression(expr, state) { - if (!hasPath(expr)) { - throw new Error("unimplemented subexpression at the head of a subexpression"); + if (expr.callee.type === 'Call') { + throw new Error("unimplemented: subexpression at the head of a subexpression"); } else { return Result.all(VISIT_EXPRS.visit(expr.callee, state), VISIT_EXPRS.Args(expr.args, state)).mapOk(_ref4 => { let [callee, args] = _ref4; @@ -3837,26 +3776,14 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }); } } - DeprecaedCallExpression(_ref5, _state) { - let { - arg, - callee, - loc - } = _ref5; - return Ok(new DeprecatedCallExpression({ - loc, - arg, - callee - })); - } - Args(_ref6, state) { + Args(_ref5, state) { let { positional, named, loc - } = _ref6; - return Result.all(this.Positional(positional, state), this.NamedArguments(named, state)).mapOk(_ref7 => { - let [positional, named] = _ref7; + } = _ref5; + return Result.all(this.Positional(positional, state), this.NamedArguments(named, state)).mapOk(_ref6 => { + let [positional, named] = _ref6; return new Args({ loc, positional, @@ -3913,13 +3840,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } let path = getCalleeExpression(node); if (path !== null && path.type === 'Path' && path.ref.type === 'Free') { - if (path.tail.length > 0) { - if (path.ref.resolution.serialize() === 'Loose') { - // cannot be a keyword reference, keywords do not allow paths (must be - // relying on implicit this fallback) - return false; - } - } return path.ref.name === this.keyword; } else { return false; @@ -4110,18 +4030,18 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", function keywords(type) { return new Keywords(type); } - function toAppend(_ref8) { + function toAppend(_ref7) { let { assert, translate - } = _ref8; + } = _ref7; return { assert, - translate(_ref9, value) { + translate(_ref8, value) { let { node, state - } = _ref9; + } = _ref8; let result = translate({ node, state @@ -4171,19 +4091,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }; } function translateCurryKeyword(curriedType) { - return (_ref10, _ref11) => { + return (_ref9, _ref10) => { let { node, state - } = _ref10; + } = _ref9; let { definition, args - } = _ref11; + } = _ref10; let definitionResult = VISIT_EXPRS.visit(definition, state); let argsResult = VISIT_EXPRS.Args(args, state); - return Result.all(definitionResult, argsResult).mapOk(_ref12 => { - let [definition, args] = _ref12; + return Result.all(definitionResult, argsResult).mapOk(_ref11 => { + let [definition, args] = _ref11; return new Curry({ loc: node.loc, curriedType, @@ -4215,11 +4135,11 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } return Ok(varName); } - function translateGetDynamicVarKeyword(_ref13, name) { + function translateGetDynamicVarKeyword(_ref12, name) { let { node, state - } = _ref13; + } = _ref12; return VISIT_EXPRS.visit(name, state).mapOk(name => new GetDynamicVar({ name, loc: node.loc @@ -4252,13 +4172,13 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }; } function translateHasBlockKeyword(type) { - return (_ref14, target) => { + return (_ref13, target) => { let { node, state: { scope } - } = _ref14; + } = _ref13; let block = type === 'has-block' ? new HasBlock({ loc: node.loc, target, @@ -4308,21 +4228,21 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } function translateIfUnlessInlineKeyword(type) { let inverted = type === 'unless'; - return (_ref15, _ref16) => { + return (_ref14, _ref15) => { let { node, state - } = _ref15; + } = _ref14; let { condition, truthy, falsy - } = _ref16; + } = _ref15; let conditionResult = VISIT_EXPRS.visit(condition, state); let truthyResult = VISIT_EXPRS.visit(truthy, state); let falsyResult = falsy ? VISIT_EXPRS.visit(falsy, state) : Ok(null); - return Result.all(conditionResult, truthyResult, falsyResult).mapOk(_ref17 => { - let [condition, truthy, falsy] = _ref17; + return Result.all(conditionResult, truthyResult, falsyResult).mapOk(_ref16 => { + let [condition, truthy, falsy] = _ref16; if (inverted) { condition = new Not({ value: condition, @@ -4356,11 +4276,11 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } return Ok(positional); } - function translateLogKeyword(_ref18, positional) { + function translateLogKeyword(_ref17, positional) { let { node, state - } = _ref18; + } = _ref17; return VISIT_EXPRS.Positional(positional, state).mapOk(positional => new Log({ positional, loc: node.loc @@ -4395,15 +4315,15 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } } }, - translate(_ref19, _ref20) { + translate(_ref18, _ref19) { let { node, state - } = _ref19; + } = _ref18; let { target, positional - } = _ref20; + } = _ref19; return VISIT_EXPRS.Positional(positional, state).mapOk(positional => new Yield({ loc: node.loc, target, @@ -4429,13 +4349,13 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } } }, - translate(_ref21) { + translate(_ref20) { let { node, state: { scope } - } = _ref21; + } = _ref20; scope.setHasDebugger(); return Ok(new Debugger({ loc: node.loc, @@ -4444,19 +4364,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } }).kw('component', { assert: assertCurryKeyword(_vm.CurriedTypes.Component), - translate(_ref22, _ref23) { + translate(_ref21, _ref22) { let { node, state - } = _ref22; + } = _ref21; let { definition, args - } = _ref23; + } = _ref22; let definitionResult = VISIT_EXPRS.visit(definition, state); let argsResult = VISIT_EXPRS.Args(args, state); - return Result.all(definitionResult, argsResult).mapOk(_ref24 => { - let [definition, args] = _ref24; + return Result.all(definitionResult, argsResult).mapOk(_ref23 => { + let [definition, args] = _ref23; return new InvokeComponent({ loc: node.loc, definition, @@ -4467,19 +4387,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } }).kw('helper', { assert: assertCurryKeyword(_vm.CurriedTypes.Helper), - translate(_ref25, _ref26) { + translate(_ref24, _ref25) { let { node, state - } = _ref25; + } = _ref24; let { definition, args - } = _ref26; + } = _ref25; let definitionResult = VISIT_EXPRS.visit(definition, state); let argsResult = VISIT_EXPRS.Args(args, state); - return Result.all(definitionResult, argsResult).mapOk(_ref27 => { - let [definition, args] = _ref27; + return Result.all(definitionResult, argsResult).mapOk(_ref26 => { + let [definition, args] = _ref26; let text = new CallExpression({ callee: definition, args, @@ -4514,20 +4434,20 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", destination }); }, - translate(_ref28, _ref29) { + translate(_ref27, _ref28) { let { node, state - } = _ref28; + } = _ref27; let { insertBefore, destination - } = _ref29; + } = _ref28; let named = node.blocks.get('default'); let body = VISIT_STMTS.NamedBlock(named, state); let destinationResult = VISIT_EXPRS.visit(destination, state); - return Result.all(body, destinationResult).andThen(_ref30 => { - let [body, destination] = _ref30; + return Result.all(body, destinationResult).andThen(_ref29 => { + let [body, destination] = _ref29; if (insertBefore) { return VISIT_EXPRS.visit(insertBefore, state).mapOk(insertBefore => ({ body, @@ -4543,12 +4463,12 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }) }); } - }).mapOk(_ref31 => { + }).mapOk(_ref30 => { let { body, destination, insertBefore - } = _ref31; + } = _ref30; return new InElement({ loc: node.loc, block: body, @@ -4577,21 +4497,21 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", condition }); }, - translate(_ref32, _ref33) { + translate(_ref31, _ref32) { let { node, state - } = _ref32; + } = _ref31; let { condition - } = _ref33; + } = _ref32; let block = node.blocks.get('default'); let inverse = node.blocks.get('else'); let conditionResult = VISIT_EXPRS.visit(condition, state); let blockResult = VISIT_STMTS.NamedBlock(block, state); let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); - return Result.all(conditionResult, blockResult, inverseResult).mapOk(_ref34 => { - let [condition, block, inverse] = _ref34; + return Result.all(conditionResult, blockResult, inverseResult).mapOk(_ref33 => { + let [condition, block, inverse] = _ref33; return new If({ loc: node.loc, condition, @@ -4619,21 +4539,21 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", condition }); }, - translate(_ref35, _ref36) { + translate(_ref34, _ref35) { let { node, state - } = _ref35; + } = _ref34; let { condition - } = _ref36; + } = _ref35; let block = node.blocks.get('default'); let inverse = node.blocks.get('else'); let conditionResult = VISIT_EXPRS.visit(condition, state); let blockResult = VISIT_STMTS.NamedBlock(block, state); let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); - return Result.all(conditionResult, blockResult, inverseResult).mapOk(_ref37 => { - let [condition, block, inverse] = _ref37; + return Result.all(conditionResult, blockResult, inverseResult).mapOk(_ref36 => { + let [condition, block, inverse] = _ref36; return new If({ loc: node.loc, condition: new Not({ @@ -4666,23 +4586,23 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", key }); }, - translate(_ref38, _ref39) { + translate(_ref37, _ref38) { let { node, state - } = _ref38; + } = _ref37; let { value, key - } = _ref39; + } = _ref38; let block = node.blocks.get('default'); let inverse = node.blocks.get('else'); let valueResult = VISIT_EXPRS.visit(value, state); let keyResult = key ? VISIT_EXPRS.visit(key, state) : Ok(null); let blockResult = VISIT_STMTS.NamedBlock(block, state); let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); - return Result.all(valueResult, keyResult, blockResult, inverseResult).mapOk(_ref40 => { - let [value, key, block, inverse] = _ref40; + return Result.all(valueResult, keyResult, blockResult, inverseResult).mapOk(_ref39 => { + let [value, key, block, inverse] = _ref39; return new Each({ loc: node.loc, value, @@ -4692,48 +4612,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }); }); } - }).kw('with', { - assert(node) { - let { - args - } = node; - if (!args.named.isEmpty()) { - return Err((0, _syntax.generateSyntaxError)("{{#with}} cannot receive named parameters, received " + args.named.entries.map(e => e.name.chars).join(', '), args.named.loc)); - } - if (args.positional.size > 1) { - return Err((0, _syntax.generateSyntaxError)("{{#with}} can only receive one positional parameter. Received " + args.positional.size + " parameters", args.positional.loc)); - } - let value = args.nth(0); - if (value === null) { - return Err((0, _syntax.generateSyntaxError)("{{#with}} requires a value as its first positional parameter, did not receive any parameters", args.loc)); - } - return Ok({ - value - }); - }, - translate(_ref41, _ref42) { - let { - node, - state - } = _ref41; - let { - value - } = _ref42; - let block = node.blocks.get('default'); - let inverse = node.blocks.get('else'); - let valueResult = VISIT_EXPRS.visit(value, state); - let blockResult = VISIT_STMTS.NamedBlock(block, state); - let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); - return Result.all(valueResult, blockResult, inverseResult).mapOk(_ref43 => { - let [value, block, inverse] = _ref43; - return new With({ - loc: node.loc, - value, - block, - inverse - }); - }); - } }).kw('let', { assert(node) { let { @@ -4752,19 +4630,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", positional: args.positional }); }, - translate(_ref44, _ref45) { + translate(_ref40, _ref41) { let { node, state - } = _ref44; + } = _ref40; let { positional - } = _ref45; + } = _ref41; let block = node.blocks.get('default'); let positionalResult = VISIT_EXPRS.Positional(positional, state); let blockResult = VISIT_STMTS.NamedBlock(block, state); - return Result.all(positionalResult, blockResult).mapOk(_ref46 => { - let [positional, block] = _ref46; + return Result.all(positionalResult, blockResult).mapOk(_ref42 => { + let [positional, block] = _ref42; return new Let({ loc: node.loc, positional, @@ -4778,19 +4656,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", named: node.args.named }); }, - translate(_ref47, _ref48) { + translate(_ref43, _ref44) { let { node, state - } = _ref47; + } = _ref43; let { named - } = _ref48; + } = _ref44; let block = node.blocks.get('default'); let namedResult = VISIT_EXPRS.NamedArguments(named, state); let blockResult = VISIT_STMTS.NamedBlock(block, state); - return Result.all(namedResult, blockResult).mapOk(_ref49 => { - let [named, block] = _ref49; + return Result.all(namedResult, blockResult).mapOk(_ref45 => { + let [named, block] = _ref45; return new WithDynamicVars({ loc: node.loc, named, @@ -4800,20 +4678,20 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } }).kw('component', { assert: assertCurryKeyword(_vm.CurriedTypes.Component), - translate(_ref50, _ref51) { + translate(_ref46, _ref47) { let { node, state - } = _ref50; + } = _ref46; let { definition, args - } = _ref51; + } = _ref47; let definitionResult = VISIT_EXPRS.visit(definition, state); let argsResult = VISIT_EXPRS.Args(args, state); let blocksResult = VISIT_STMTS.NamedBlocks(node.blocks, state); - return Result.all(definitionResult, argsResult, blocksResult).mapOk(_ref52 => { - let [definition, args, blocks] = _ref52; + return Result.all(definitionResult, argsResult, blocksResult).mapOk(_ref48 => { + let [definition, args, blocks] = _ref48; return new InvokeComponent({ loc: node.loc, definition, @@ -4931,17 +4809,14 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }); } modifier(modifier) { - if (isHelperInvocation(modifier)) { - assertIsValidModifier(modifier); - } let translated = MODIFIER_KEYWORDS.translate(modifier, this.state); if (translated !== null) { return translated; } let head = VISIT_EXPRS.visit(modifier.callee, this.state); let args = VISIT_EXPRS.Args(modifier.args, this.state); - return Result.all(head, args).mapOk(_ref53 => { - let [head, args] = _ref53; + return Result.all(head, args).mapOk(_ref49 => { + let [head, args] = _ref49; return new Modifier({ loc: modifier.loc, callee: head, @@ -4979,8 +4854,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", if (typeAttr) { attrs.add(this.attr(typeAttr)); } - return Result.all(args.toArray(), attrs.toArray()).mapOk(_ref54 => { - let [args, attrs] = _ref54; + return Result.all(args.toArray(), attrs.toArray()).mapOk(_ref50 => { + let [args, attrs] = _ref50; return { attrs, args: new NamedArguments({ @@ -4993,8 +4868,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", prepare() { let attrs = this.attrs(); let modifiers = new ResultArray(this.element.modifiers.map(m => this.modifier(m))).toArray(); - return Result.all(attrs, modifiers).mapOk(_ref55 => { - let [result, modifiers] = _ref55; + return Result.all(attrs, modifiers).mapOk(_ref51 => { + let [result, modifiers] = _ref51; let { attrs, args @@ -5011,11 +4886,11 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }); } } - function hasDynamicFeatures(_ref56) { + function hasDynamicFeatures(_ref52) { let { attrs, modifiers - } = _ref56; + } = _ref52; // ElementModifier needs the special ComponentOperations if (modifiers.length > 0) { return true; @@ -5030,10 +4905,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", this.tag = tag; this.element = element; } - arg(attr, _ref57) { + arg(attr, _ref53) { let { state - } = _ref57; + } = _ref53; let name = attr.name; return VISIT_EXPRS.visit(convertPathToCallIfKeyword(attr.value), state).mapOk(value => new NamedArgument({ loc: attr.loc, @@ -5041,11 +4916,11 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", value })); } - toStatement(component, _ref58) { + toStatement(component, _ref54) { let { args, params - } = _ref58; + } = _ref54; let { element, state @@ -5072,10 +4947,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", arg(attr) { return Err((0, _syntax.generateSyntaxError)(attr.name.chars + " is not a valid attribute name. @arguments are only allowed on components, but the tag for this element (`" + this.tag.chars + "`) is a regular, non-component HTML element.", attr.loc)); } - toStatement(classified, _ref59) { + toStatement(classified, _ref55) { let { params - } = _ref59; + } = _ref55; let { state, element @@ -5119,8 +4994,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } let head = VISIT_EXPRS.visit(node.callee, state); let args = VISIT_EXPRS.Args(node.args, state); - return Result.all(head, args).andThen(_ref60 => { - let [head, args] = _ref60; + return Result.all(head, args).andThen(_ref56 => { + let [head, args] = _ref56; return this.NamedBlocks(node.blocks, state).mapOk(blocks => new InvokeBlock({ loc: node.loc, head, @@ -5217,115 +5092,409 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } } } - - /** - * Normalize the AST from @glimmer/syntax into the HIR. The HIR has special - * instructions for keywords like `{{yield}}`, `(has-block)` and - * `{{#in-element}}`. - * - * Most importantly, it also classifies HTML element syntax into: - * - * 1. simple HTML element (with optional splattributes) - * 2. component invocation - * - * Because the @glimmer/syntax AST gives us a string for an element's tag, - * this pass also normalizes that string into an expression. - * - * ``` - * // normalized into a path expression whose head is `this` and tail is - * // `["x"]` - * - * - * {{#let expr as |t|}} - * // `"t"` is normalized into a variable lookup. - * - * - * // normalized into a path expression whose head is the variable lookup - * // `t` and tail is `["input"]`. - * - * {{/let}} - * - * // normalized into a free variable lookup for `SomeComponent` (with the - * // context `ComponentHead`). - * - * - * // normalized into a path expression whose head is the free variable - * // `notInScope` (with the context `Expression`), and whose tail is - * // `["SomeComponent"]`. In resolver mode, this path will be rejected later, - * // since it cannot serve as an input to the resolver. - * - * ``` - */ - function normalize(source, root, isStrict) { - // create a new context for the normalization pass - let state = new NormalizationState(root.table, isStrict); - let body = VISIT_STMTS.visitList(root.body, state); - return body.mapOk(body => new Template({ - loc: root.loc, - scope: root.table, - body: body.toArray() - })); - } - class WireFormatDebugger { - constructor(_ref61) { - let [_statements, symbols, _hasEval, upvars] = _ref61; - this.upvars = void 0; - this.symbols = void 0; - this.upvars = upvars; - this.symbols = symbols; + var ResolutionType = /*#__PURE__*/function (ResolutionType) { + ResolutionType["Value"] = "value"; + ResolutionType["Component"] = "component"; + ResolutionType["Helper"] = "helper"; + ResolutionType["Modifier"] = "modifier"; + ResolutionType["ComponentOrHelper"] = "component or helper"; + return ResolutionType; + }(ResolutionType || {}); + class StrictModeValidationPass { + // This is done at the end of all the keyword normalizations + // At this point any free variables that isn't a valid keyword + // in its context should be considered a syntax error. We + // probably had various opportunities to do this inline in the + // earlier passes, but this aims to produce a better syntax + // error as we don't always have the right loc-context to do + // so in the other spots. + static validate(template) { + return new this(template).validate(); + } + constructor(template) { + this.template = template; + } + validate() { + return this.Statements(this.template.body).mapOk(() => this.template); + } + Statements(statements) { + let result = Ok(null); + for (let statement of statements) { + result = result.andThen(() => this.Statement(statement)); + } + return result; } - format(program) { - let out = []; - for (let statement of program[0]) { - out.push(this.formatOpcode(statement)); + NamedBlocks(_ref57) { + let { + blocks + } = _ref57; + let result = Ok(null); + for (let block of blocks.toArray()) { + result = result.andThen(() => this.NamedBlock(block)); } - return out; + return result; } - formatOpcode(opcode) { - if (Array.isArray(opcode)) { - switch (opcode[0]) { - case _wireFormat.SexpOpcodes.Append: - return ['append', this.formatOpcode(opcode[1])]; - case _wireFormat.SexpOpcodes.TrustingAppend: - return ['trusting-append', this.formatOpcode(opcode[1])]; - case _wireFormat.SexpOpcodes.Block: - return ['block', this.formatOpcode(opcode[1]), this.formatParams(opcode[2]), this.formatHash(opcode[3]), this.formatBlocks(opcode[4])]; - case _wireFormat.SexpOpcodes.InElement: - return ['in-element', opcode[1], this.formatOpcode(opcode[2]), opcode[3] ? this.formatOpcode(opcode[3]) : undefined]; - case _wireFormat.SexpOpcodes.OpenElement: - return ['open-element', inflateTagName(opcode[1])]; - case _wireFormat.SexpOpcodes.OpenElementWithSplat: - return ['open-element-with-splat', inflateTagName(opcode[1])]; - case _wireFormat.SexpOpcodes.CloseElement: - return ['close-element']; - case _wireFormat.SexpOpcodes.FlushElement: - return ['flush-element']; - case _wireFormat.SexpOpcodes.StaticAttr: - return ['static-attr', inflateAttrName(opcode[1]), opcode[2], opcode[3]]; - case _wireFormat.SexpOpcodes.StaticComponentAttr: - return ['static-component-attr', inflateAttrName(opcode[1]), opcode[2], opcode[3]]; - case _wireFormat.SexpOpcodes.DynamicAttr: - return ['dynamic-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; - case _wireFormat.SexpOpcodes.ComponentAttr: - return ['component-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; - case _wireFormat.SexpOpcodes.AttrSplat: - return ['attr-splat']; - case _wireFormat.SexpOpcodes.Yield: - return ['yield', opcode[1], this.formatParams(opcode[2])]; - case _wireFormat.SexpOpcodes.DynamicArg: - return ['dynamic-arg', opcode[1], this.formatOpcode(opcode[2])]; - case _wireFormat.SexpOpcodes.StaticArg: - return ['static-arg', opcode[1], this.formatOpcode(opcode[2])]; - case _wireFormat.SexpOpcodes.TrustingDynamicAttr: - return ['trusting-dynamic-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; - case _wireFormat.SexpOpcodes.TrustingComponentAttr: - return ['trusting-component-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; - case _wireFormat.SexpOpcodes.Debugger: - return ['debugger', opcode[1]]; - case _wireFormat.SexpOpcodes.Comment: - return ['comment', opcode[1]]; - case _wireFormat.SexpOpcodes.Modifier: - return ['modifier', this.formatOpcode(opcode[1]), this.formatParams(opcode[2]), this.formatHash(opcode[3])]; + NamedBlock(block) { + return this.Statements(block.body); + } + Statement(statement) { + switch (statement.type) { + case 'InElement': + return this.InElement(statement); + case 'Debugger': + return Ok(null); + case 'Yield': + return this.Yield(statement); + case 'AppendTrustedHTML': + return this.AppendTrustedHTML(statement); + case 'AppendTextNode': + return this.AppendTextNode(statement); + case 'Component': + return this.Component(statement); + case 'SimpleElement': + return this.SimpleElement(statement); + case 'InvokeBlock': + return this.InvokeBlock(statement); + case 'AppendComment': + return Ok(null); + case 'If': + return this.If(statement); + case 'Each': + return this.Each(statement); + case 'Let': + return this.Let(statement); + case 'WithDynamicVars': + return this.WithDynamicVars(statement); + case 'InvokeComponent': + return this.InvokeComponent(statement); + } + } + Expressions(expressions) { + let result = Ok(null); + for (let expression of expressions) { + result = result.andThen(() => this.Expression(expression)); + } + return result; + } + Expression(expression, span, resolution) { + if (span === void 0) { + span = expression; + } + switch (expression.type) { + case 'Literal': + case 'Keyword': + case 'Missing': + case 'This': + case 'Arg': + case 'Local': + case 'HasBlock': + case 'HasBlockParams': + case 'GetDynamicVar': + return Ok(null); + case 'PathExpression': + return this.Expression(expression.head, span, resolution); + case 'Free': + return this.errorFor(expression.name, span, resolution); + case 'InterpolateExpression': + return this.InterpolateExpression(expression, span, resolution); + case 'CallExpression': + return this.CallExpression(expression, span, resolution != null ? resolution : ResolutionType.Helper); + case 'Not': + return this.Expression(expression.value, span, resolution); + case 'IfInline': + return this.IfInline(expression); + case 'Curry': + return this.Curry(expression); + case 'Log': + return this.Log(expression); + } + } + Args(args) { + return this.Positional(args.positional).andThen(() => this.NamedArguments(args.named)); + } + Positional(positional, span) { + let result = Ok(null); + let expressions = positional.list.toArray(); + + // For cases like {{yield foo}}, when there is only a single argument, it + // makes for a slightly better error to report that entire span. However, + // when there are more than one, we need to be specific. + if (expressions.length === 1) { + result = this.Expression(expressions[0], span); + } else { + result = this.Expressions(expressions); + } + return result; + } + NamedArguments(_ref58) { + let { + entries + } = _ref58; + let result = Ok(null); + for (let arg of entries.toArray()) { + result = result.andThen(() => this.NamedArgument(arg)); + } + return result; + } + NamedArgument(arg) { + if (arg.value.type === 'CallExpression') { + return this.Expression(arg.value, arg, ResolutionType.Helper); + } else { + return this.Expression(arg.value, arg); + } + } + ElementParameters(_ref59) { + let { + body + } = _ref59; + let result = Ok(null); + for (let param of body.toArray()) { + result = result.andThen(() => this.ElementParameter(param)); + } + return result; + } + ElementParameter(param) { + switch (param.type) { + case 'StaticAttr': + return Ok(null); + case 'DynamicAttr': + return this.DynamicAttr(param); + case 'Modifier': + return this.Modifier(param); + case 'SplatAttr': + return Ok(null); + } + } + DynamicAttr(attr) { + if (attr.value.type === 'CallExpression') { + return this.Expression(attr.value, attr, ResolutionType.Helper); + } else { + return this.Expression(attr.value, attr); + } + } + Modifier(modifier) { + return this.Expression(modifier.callee, modifier, ResolutionType.Modifier).andThen(() => this.Args(modifier.args)); + } + InElement(inElement) { + return this.Expression(inElement.destination) + // Unfortunately we lost the `insertBefore=` part of the span + .andThen(() => this.Expression(inElement.insertBefore)).andThen(() => this.NamedBlock(inElement.block)); + } + Yield(statement) { + return this.Positional(statement.positional, statement); + } + AppendTrustedHTML(statement) { + return this.Expression(statement.html, statement); + } + AppendTextNode(statement) { + if (statement.text.type === 'CallExpression') { + return this.Expression(statement.text, statement, ResolutionType.ComponentOrHelper); + } else { + return this.Expression(statement.text, statement); + } + } + Component(statement) { + return this.Expression(statement.tag, statement, ResolutionType.Component).andThen(() => this.ElementParameters(statement.params)).andThen(() => this.NamedArguments(statement.args)).andThen(() => this.NamedBlocks(statement.blocks)); + } + SimpleElement(statement) { + return this.ElementParameters(statement.params).andThen(() => this.Statements(statement.body)); + } + InvokeBlock(statement) { + return this.Expression(statement.head, statement.head, ResolutionType.Component).andThen(() => this.Args(statement.args)).andThen(() => this.NamedBlocks(statement.blocks)); + } + If(statement) { + return this.Expression(statement.condition, statement).andThen(() => this.NamedBlock(statement.block)).andThen(() => { + if (statement.inverse) { + return this.NamedBlock(statement.inverse); + } else { + return Ok(null); + } + }); + } + Each(statement) { + return this.Expression(statement.value, statement).andThen(() => { + if (statement.key) { + return this.Expression(statement.key, statement); + } else { + return Ok(null); + } + }).andThen(() => this.NamedBlock(statement.block)).andThen(() => { + if (statement.inverse) { + return this.NamedBlock(statement.inverse); + } else { + return Ok(null); + } + }); + } + Let(statement) { + return this.Positional(statement.positional).andThen(() => this.NamedBlock(statement.block)); + } + WithDynamicVars(statement) { + return this.NamedArguments(statement.named).andThen(() => this.NamedBlock(statement.block)); + } + InvokeComponent(statement) { + return this.Expression(statement.definition, statement, ResolutionType.Component).andThen(() => this.Args(statement.args)).andThen(() => { + if (statement.blocks) { + return this.NamedBlocks(statement.blocks); + } else { + return Ok(null); + } + }); + } + InterpolateExpression(expression, span, resolution) { + let expressions = expression.parts.toArray(); + if (expressions.length === 1) { + return this.Expression(expressions[0], span, resolution); + } else { + return this.Expressions(expressions); + } + } + CallExpression(expression, span, resolution) { + return this.Expression(expression.callee, span, resolution).andThen(() => this.Args(expression.args)); + } + IfInline(expression) { + return this.Expression(expression.condition).andThen(() => this.Expression(expression.truthy)).andThen(() => { + if (expression.falsy) { + return this.Expression(expression.falsy); + } else { + return Ok(null); + } + }); + } + Curry(expression) { + let resolution; + if (expression.curriedType === _vm.CurriedTypes.Component) { + resolution = ResolutionType.Component; + } else if (expression.curriedType === _vm.CurriedTypes.Helper) { + resolution = ResolutionType.Helper; + } else { + resolution = ResolutionType.Modifier; + } + return this.Expression(expression.definition, expression, resolution).andThen(() => this.Args(expression.args)); + } + Log(expression) { + return this.Positional(expression.positional, expression); + } + errorFor(name, span, type) { + if (type === void 0) { + type = ResolutionType.Value; + } + return Err((0, _syntax.generateSyntaxError)("Attempted to resolve a " + type + " in a strict mode template, but that value was not in scope: " + name, (0, _syntax.loc)(span))); + } + } + + /** + * Normalize the AST from @glimmer/syntax into the HIR. The HIR has special + * instructions for keywords like `{{yield}}`, `(has-block)` and + * `{{#in-element}}`. + * + * Most importantly, it also classifies HTML element syntax into: + * + * 1. simple HTML element (with optional splattributes) + * 2. component invocation + * + * Because the @glimmer/syntax AST gives us a string for an element's tag, + * this pass also normalizes that string into an expression. + * + * ``` + * // normalized into a path expression whose head is `this` and tail is + * // `["x"]` + * + * + * {{#let expr as |t|}} + * // `"t"` is normalized into a variable lookup. + * + * + * // normalized into a path expression whose head is the variable lookup + * // `t` and tail is `["input"]`. + * + * {{/let}} + * + * // normalized into a free variable lookup for `SomeComponent` (with the + * // context `ComponentHead`). + * + * + * // normalized into a path expression whose head is the free variable + * // `notInScope` (with the context `Expression`), and whose tail is + * // `["SomeComponent"]`. In resolver mode, this path will be rejected later, + * // since it cannot serve as an input to the resolver. + * + * ``` + */ + function normalize(source, root, isStrict) { + // create a new context for the normalization pass + let state = new NormalizationState(root.table, isStrict); + let body = VISIT_STMTS.visitList(root.body, state); + let template = body.mapOk(body => new Template({ + loc: root.loc, + scope: root.table, + body: body.toArray() + })); + if (isStrict) { + template = template.andThen(template => StrictModeValidationPass.validate(template)); + } + return template; + } + class WireFormatDebugger { + constructor(_ref60) { + let [_statements, symbols, _hasEval, upvars] = _ref60; + this.upvars = void 0; + this.symbols = void 0; + this.upvars = upvars; + this.symbols = symbols; + } + format(program) { + let out = []; + for (let statement of program[0]) { + out.push(this.formatOpcode(statement)); + } + return out; + } + formatOpcode(opcode) { + if (Array.isArray(opcode)) { + switch (opcode[0]) { + case _wireFormat.SexpOpcodes.Append: + return ['append', this.formatOpcode(opcode[1])]; + case _wireFormat.SexpOpcodes.TrustingAppend: + return ['trusting-append', this.formatOpcode(opcode[1])]; + case _wireFormat.SexpOpcodes.Block: + return ['block', this.formatOpcode(opcode[1]), this.formatParams(opcode[2]), this.formatHash(opcode[3]), this.formatBlocks(opcode[4])]; + case _wireFormat.SexpOpcodes.InElement: + return ['in-element', opcode[1], this.formatOpcode(opcode[2]), opcode[3] ? this.formatOpcode(opcode[3]) : undefined]; + case _wireFormat.SexpOpcodes.OpenElement: + return ['open-element', inflateTagName(opcode[1])]; + case _wireFormat.SexpOpcodes.OpenElementWithSplat: + return ['open-element-with-splat', inflateTagName(opcode[1])]; + case _wireFormat.SexpOpcodes.CloseElement: + return ['close-element']; + case _wireFormat.SexpOpcodes.FlushElement: + return ['flush-element']; + case _wireFormat.SexpOpcodes.StaticAttr: + return ['static-attr', inflateAttrName(opcode[1]), opcode[2], opcode[3]]; + case _wireFormat.SexpOpcodes.StaticComponentAttr: + return ['static-component-attr', inflateAttrName(opcode[1]), opcode[2], opcode[3]]; + case _wireFormat.SexpOpcodes.DynamicAttr: + return ['dynamic-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; + case _wireFormat.SexpOpcodes.ComponentAttr: + return ['component-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; + case _wireFormat.SexpOpcodes.AttrSplat: + return ['attr-splat']; + case _wireFormat.SexpOpcodes.Yield: + return ['yield', opcode[1], this.formatParams(opcode[2])]; + case _wireFormat.SexpOpcodes.DynamicArg: + return ['dynamic-arg', opcode[1], this.formatOpcode(opcode[2])]; + case _wireFormat.SexpOpcodes.StaticArg: + return ['static-arg', opcode[1], this.formatOpcode(opcode[2])]; + case _wireFormat.SexpOpcodes.TrustingDynamicAttr: + return ['trusting-dynamic-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; + case _wireFormat.SexpOpcodes.TrustingComponentAttr: + return ['trusting-component-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; + case _wireFormat.SexpOpcodes.Debugger: + return ['debugger', opcode[1]]; + case _wireFormat.SexpOpcodes.Comment: + return ['comment', opcode[1]]; + case _wireFormat.SexpOpcodes.Modifier: + return ['modifier', this.formatOpcode(opcode[1]), this.formatParams(opcode[2]), this.formatHash(opcode[3])]; case _wireFormat.SexpOpcodes.Component: return ['component', this.formatOpcode(opcode[1]), this.formatElementParams(opcode[2]), this.formatHash(opcode[3]), this.formatBlocks(opcode[4])]; case _wireFormat.SexpOpcodes.HasBlock: @@ -5341,15 +5510,9 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", case _wireFormat.SexpOpcodes.Concat: return ['concat', this.formatParams(opcode[1])]; case _wireFormat.SexpOpcodes.GetStrictKeyword: - return ['get-strict-free', this.upvars[opcode[1]], opcode[2]]; - case _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback: - return ['GetFreeAsComponentOrHelperHeadOrThisFallback', this.upvars[opcode[1]], opcode[2]]; + return ['get-strict-free', this.upvars[opcode[1]]]; case _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead: return ['GetFreeAsComponentOrHelperHead', this.upvars[opcode[1]], opcode[2]]; - case _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback: - return ['GetFreeAsHelperHeadOrThisFallback', this.upvars[opcode[1]], opcode[2]]; - case _wireFormat.SexpOpcodes.GetFreeAsDeprecatedHelperHeadOrThisFallback: - return ['GetFreeAsDeprecatedHelperHeadOrThisFallback', this.upvars[opcode[1]]]; case _wireFormat.SexpOpcodes.GetFreeAsHelperHead: return ['GetFreeAsHelperHead', this.upvars[opcode[1]], opcode[2]]; case _wireFormat.SexpOpcodes.GetFreeAsComponentHead: @@ -5376,8 +5539,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return ['not']; case _wireFormat.SexpOpcodes.Each: return ['each', this.formatOpcode(opcode[1]), opcode[2] ? this.formatOpcode(opcode[2]) : null, this.formatBlock(opcode[3]), opcode[4] ? this.formatBlock(opcode[4]) : null]; - case _wireFormat.SexpOpcodes.With: - return ['with', this.formatOpcode(opcode[1]), this.formatBlock(opcode[2]), opcode[3] ? this.formatBlock(opcode[3]) : null]; case _wireFormat.SexpOpcodes.Let: return ['let', this.formatParams(opcode[1]), this.formatBlock(opcode[2])]; case _wireFormat.SexpOpcodes.Log: @@ -5442,10 +5603,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return undefined; case 'Literal': return this.Literal(expr); + case 'Keyword': + return this.Keyword(expr); case 'CallExpression': return this.CallExpression(expr); - case 'DeprecatedCallExpression': - return this.DeprecatedCallExpression(expr); case 'PathExpression': return this.PathExpression(expr); case 'Arg': @@ -5474,10 +5635,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return this.Log(expr); } } - Literal(_ref62) { + Literal(_ref61) { let { value - } = _ref62; + } = _ref61; if (value === undefined) { return [_wireFormat.SexpOpcodes.Undefined]; } else { @@ -5487,97 +5648,91 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", Missing() { return undefined; } - HasBlock(_ref63) { + HasBlock(_ref62) { let { symbol - } = _ref63; + } = _ref62; return [_wireFormat.SexpOpcodes.HasBlock, [_wireFormat.SexpOpcodes.GetSymbol, symbol]]; } - HasBlockParams(_ref64) { + HasBlockParams(_ref63) { let { symbol - } = _ref64; + } = _ref63; return [_wireFormat.SexpOpcodes.HasBlockParams, [_wireFormat.SexpOpcodes.GetSymbol, symbol]]; } - Curry(_ref65) { + Curry(_ref64) { let { definition, curriedType, args - } = _ref65; + } = _ref64; return [_wireFormat.SexpOpcodes.Curry, EXPR.expr(definition), curriedType, EXPR.Positional(args.positional), EXPR.NamedArguments(args.named)]; } - Local(_ref66) { + Local(_ref65) { let { isTemplateLocal, symbol - } = _ref66; + } = _ref65; return [isTemplateLocal ? _wireFormat.SexpOpcodes.GetLexicalSymbol : _wireFormat.SexpOpcodes.GetSymbol, symbol]; } - GetWithResolver(_ref67) { + Keyword(_ref66) { let { symbol - } = _ref67; - return [_wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback, symbol]; + } = _ref66; + return [_wireFormat.SexpOpcodes.GetStrictKeyword, symbol]; } - PathExpression(_ref68) { + PathExpression(_ref67) { let { head, tail - } = _ref68; + } = _ref67; let getOp = EXPR.expr(head); + (0, _util.assert)(getOp[0] !== _wireFormat.SexpOpcodes.GetStrictKeyword, '[BUG] keyword in a PathExpression'); return [...getOp, EXPR.Tail(tail)]; } - InterpolateExpression(_ref69) { + InterpolateExpression(_ref68) { let { parts - } = _ref69; + } = _ref68; return [_wireFormat.SexpOpcodes.Concat, parts.map(e => EXPR.expr(e)).toArray()]; } - CallExpression(_ref70) { + CallExpression(_ref69) { let { callee, args - } = _ref70; + } = _ref69; return [_wireFormat.SexpOpcodes.Call, EXPR.expr(callee), ...EXPR.Args(args)]; } - DeprecatedCallExpression(_ref71) { - let { - arg, - callee - } = _ref71; - return [_wireFormat.SexpOpcodes.GetFreeAsDeprecatedHelperHeadOrThisFallback, callee.symbol, [arg.chars]]; - } - Tail(_ref72) { + Tail(_ref70) { let { members - } = _ref72; + } = _ref70; return (0, _util.mapPresentArray)(members, member => member.chars); } - Args(_ref73) { + Args(_ref71) { let { positional, named - } = _ref73; + } = _ref71; return [this.Positional(positional), this.NamedArguments(named)]; } - Positional(_ref74) { + Positional(_ref72) { let { list - } = _ref74; + } = _ref72; return list.map(l => EXPR.expr(l)).toPresentArray(); } - NamedArgument(_ref75) { + NamedArgument(_ref73) { let { key, value - } = _ref75; + } = _ref73; return [key.chars, EXPR.expr(value)]; } - NamedArguments(_ref76) { + NamedArguments(_ref74) { let { entries: pairs - } = _ref76; + } = _ref74; let list = pairs.toArray(); if ((0, _util.isPresentArray)(list)) { let names = []; @@ -5594,34 +5749,34 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return null; } } - Not(_ref77) { + Not(_ref75) { let { value - } = _ref77; + } = _ref75; return [_wireFormat.SexpOpcodes.Not, EXPR.expr(value)]; } - IfInline(_ref78) { + IfInline(_ref76) { let { condition, truthy, falsy - } = _ref78; + } = _ref76; let expr = [_wireFormat.SexpOpcodes.IfInline, EXPR.expr(condition), EXPR.expr(truthy)]; if (falsy) { expr.push(EXPR.expr(falsy)); } return expr; } - GetDynamicVar(_ref79) { + GetDynamicVar(_ref77) { let { name - } = _ref79; + } = _ref77; return [_wireFormat.SexpOpcodes.GetDynamicVar, EXPR.expr(name)]; } - Log(_ref80) { + Log(_ref78) { let { positional - } = _ref80; + } = _ref78; return [_wireFormat.SexpOpcodes.Log, this.Positional(positional)]; } } @@ -5674,8 +5829,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return this.If(stmt); case 'Each': return this.Each(stmt); - case 'With': - return this.With(stmt); case 'Let': return this.Let(stmt); case 'WithDynamicVars': @@ -5686,20 +5839,20 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return (0, _util.exhausted)(stmt); } } - Yield(_ref81) { + Yield(_ref79) { let { to, positional - } = _ref81; + } = _ref79; return [_wireFormat.SexpOpcodes.Yield, to, EXPR.Positional(positional)]; } - InElement(_ref82) { + InElement(_ref80) { let { guid, insertBefore, destination, block - } = _ref82; + } = _ref80; let wireBlock = CONTENT.NamedBlock(block)[1]; // let guid = args.guid; let wireDestination = EXPR.expr(destination); @@ -5710,59 +5863,59 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return [_wireFormat.SexpOpcodes.InElement, wireBlock, guid, wireDestination, wireInsertBefore]; } } - InvokeBlock(_ref83) { + InvokeBlock(_ref81) { let { head, args, blocks - } = _ref83; + } = _ref81; return [_wireFormat.SexpOpcodes.Block, EXPR.expr(head), ...EXPR.Args(args), CONTENT.NamedBlocks(blocks)]; } - AppendTrustedHTML(_ref84) { + AppendTrustedHTML(_ref82) { let { html - } = _ref84; + } = _ref82; return [_wireFormat.SexpOpcodes.TrustingAppend, EXPR.expr(html)]; } - AppendTextNode(_ref85) { + AppendTextNode(_ref83) { let { text - } = _ref85; + } = _ref83; return [_wireFormat.SexpOpcodes.Append, EXPR.expr(text)]; } - AppendComment(_ref86) { + AppendComment(_ref84) { let { value - } = _ref86; + } = _ref84; return [_wireFormat.SexpOpcodes.Comment, value.chars]; } - SimpleElement(_ref87) { + SimpleElement(_ref85) { let { tag, params, body, dynamicFeatures - } = _ref87; + } = _ref85; let op = dynamicFeatures ? _wireFormat.SexpOpcodes.OpenElementWithSplat : _wireFormat.SexpOpcodes.OpenElement; return new WireStatements([[op, deflateTagName(tag.chars)], ...CONTENT.ElementParameters(params).toArray(), [_wireFormat.SexpOpcodes.FlushElement], ...CONTENT.list(body), [_wireFormat.SexpOpcodes.CloseElement]]); } - Component(_ref88) { + Component(_ref86) { let { tag, params, args, blocks - } = _ref88; + } = _ref86; let wireTag = EXPR.expr(tag); let wirePositional = CONTENT.ElementParameters(params); let wireNamed = EXPR.NamedArguments(args); let wireNamedBlocks = CONTENT.NamedBlocks(blocks); return [_wireFormat.SexpOpcodes.Component, wireTag, wirePositional.toPresentArray(), wireNamed, wireNamedBlocks]; } - ElementParameters(_ref89) { + ElementParameters(_ref87) { let { body - } = _ref89; + } = _ref87; return body.map(p => CONTENT.ElementParameter(p)); } ElementParameter(param) { @@ -5777,10 +5930,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return [_wireFormat.SexpOpcodes.Modifier, EXPR.expr(param.callee), ...EXPR.Args(param.args)]; } } - NamedBlocks(_ref90) { + NamedBlocks(_ref88) { let { blocks - } = _ref90; + } = _ref88; let names = []; let serializedBlocks = []; for (let block of blocks.toArray()) { @@ -5790,85 +5943,77 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } return names.length > 0 ? [names, serializedBlocks] : null; } - NamedBlock(_ref91) { + NamedBlock(_ref89) { let { name, body, scope - } = _ref91; + } = _ref89; let nameChars = name.chars; if (nameChars === 'inverse') { nameChars = 'else'; } return [nameChars, [CONTENT.list(body), scope.slots]]; } - If(_ref92) { + If(_ref90) { let { condition, block, inverse - } = _ref92; + } = _ref90; return [_wireFormat.SexpOpcodes.If, EXPR.expr(condition), CONTENT.NamedBlock(block)[1], inverse ? CONTENT.NamedBlock(inverse)[1] : null]; } - Each(_ref93) { + Each(_ref91) { let { value, key, block, inverse - } = _ref93; + } = _ref91; return [_wireFormat.SexpOpcodes.Each, EXPR.expr(value), key ? EXPR.expr(key) : null, CONTENT.NamedBlock(block)[1], inverse ? CONTENT.NamedBlock(inverse)[1] : null]; } - With(_ref94) { - let { - value, - block, - inverse - } = _ref94; - return [_wireFormat.SexpOpcodes.With, EXPR.expr(value), CONTENT.NamedBlock(block)[1], inverse ? CONTENT.NamedBlock(inverse)[1] : null]; - } - Let(_ref95) { + Let(_ref92) { let { positional, block - } = _ref95; + } = _ref92; return [_wireFormat.SexpOpcodes.Let, EXPR.Positional(positional), CONTENT.NamedBlock(block)[1]]; } - WithDynamicVars(_ref96) { + WithDynamicVars(_ref93) { let { named, block - } = _ref96; + } = _ref93; return [_wireFormat.SexpOpcodes.WithDynamicVars, EXPR.NamedArguments(named), CONTENT.NamedBlock(block)[1]]; } - InvokeComponent(_ref97) { + InvokeComponent(_ref94) { let { definition, args, blocks - } = _ref97; + } = _ref94; return [_wireFormat.SexpOpcodes.InvokeComponent, EXPR.expr(definition), EXPR.Positional(args.positional), EXPR.NamedArguments(args.named), blocks ? CONTENT.NamedBlocks(blocks) : null]; } } const CONTENT = new ContentEncoder(); - function staticAttr(_ref98) { + function staticAttr(_ref95) { let { name, value, namespace - } = _ref98; + } = _ref95; let out = [deflateAttrName(name.chars), value.chars]; if (namespace) { out.push(namespace); } return out; } - function dynamicAttr(_ref99) { + function dynamicAttr(_ref96) { let { name, value, namespace - } = _ref99; + } = _ref96; let out = [deflateAttrName(name.chars), EXPR.expr(value)]; if (namespace) { out.push(namespace); @@ -6156,7 +6301,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba switch (node.type) { case 'MustacheStatement': case 'BlockStatement': - case 'PartialStatement': case 'MustacheCommentStatement': case 'CommentStatement': case 'TextNode': @@ -6173,8 +6317,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba case 'PathExpression': case 'SubExpression': return this.Expression(node); - case 'Program': - return this.Block(node); case 'ConcatStatement': // should have an AttrNode parent return this.ConcatStatement(node); @@ -6220,8 +6362,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return this.MustacheStatement(statement); case 'BlockStatement': return this.BlockStatement(statement); - case 'PartialStatement': - return this.PartialStatement(statement); case 'MustacheCommentStatement': return this.MustacheCommentStatement(statement); case 'CommentStatement': @@ -6231,13 +6371,17 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba case 'ElementNode': return this.ElementNode(statement); case 'Block': - case 'Template': return this.Block(statement); + case 'Template': + return this.Template(statement); case 'AttrNode': // should have element return this.AttrNode(statement); } } + Template(template) { + this.TopLevelStatements(template.body); + } Block(block) { /* When processing a template like: @@ -6358,7 +6502,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if (this.handledByOverride(mustache)) { return; } - this.buffer += mustache.escaped ? '{{' : '{{{'; + this.buffer += mustache.trusting ? '{{{' : '{{'; if (mustache.strip.open) { this.buffer += '~'; } @@ -6368,7 +6512,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if (mustache.strip.close) { this.buffer += '~'; } - this.buffer += mustache.escaped ? '}}' : '}}}'; + this.buffer += mustache.trusting ? '}}}' : '}}'; } BlockStatement(block) { if (this.handledByOverride(block)) { @@ -6409,16 +6553,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba BlockParams(blockParams) { this.buffer += " as |" + blockParams.join(' ') + "|"; } - PartialStatement(partial) { - if (this.handledByOverride(partial)) { - return; - } - this.buffer += '{{>'; - this.Expression(partial.name); - this.Params(partial.params); - this.Hash(partial.hash); - this.buffer += '}}'; - } ConcatStatement(concat) { if (this.handledByOverride(concat)) { return; @@ -6555,8 +6689,18 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba let printer = new Printer(options); return printer.print(ast); } - function isKeyword(word) { - return word in KEYWORDS_TYPES; + function isKeyword(word, type) { + if (word in KEYWORDS_TYPES) { + if (type === undefined) { + return true; + } else { + let types = KEYWORDS_TYPES[word]; + // This seems like a TypeScript bug – it inferred types as never[]? + return types.includes(type); + } + } else { + return false; + } } /** @@ -6564,6 +6708,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * language, and where their valid usages are. */ const KEYWORDS_TYPES = _exports.KEYWORDS_TYPES = { + action: ['Call', 'Modifier'], component: ['Call', 'Append', 'Block'], debugger: ['Append'], 'each-in': ['Block'], @@ -6574,17 +6719,14 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if: ['Call', 'Append', 'Block'], 'in-element': ['Block'], let: ['Block'], - 'link-to': ['Append', 'Block'], log: ['Call', 'Append'], - modifier: ['Call'], + modifier: ['Call', 'Modifier'], mount: ['Append'], mut: ['Call', 'Append'], outlet: ['Append'], - 'query-params': ['Call'], readonly: ['Call', 'Append'], unbound: ['Call', 'Append'], unless: ['Call', 'Append', 'Block'], - with: ['Block'], yield: ['Append'] }; const UNKNOWN_POSITION = Object.freeze({ @@ -6695,6 +6837,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // This big block is the bulk of the heavy lifting in this file. It facilitates exhaustiveness // checking so that matchers can ensure they've actually covered all the cases (and TypeScript // will treat it as an exhaustive match). + when(left, right, callback) { this._whens.get(left, () => new When()).add(right, callback); return this; @@ -7680,13 +7823,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // ensure stays in sync with typing // ParentNode and ChildKey types are derived from VisitorKeysMap const visitorKeys = _exports.visitorKeys = { - Program: ['body'], Template: ['body'], Block: ['body'], MustacheStatement: ['path', 'params', 'hash'], BlockStatement: ['path', 'params', 'hash', 'program', 'inverse'], ElementModifierStatement: ['path', 'params', 'hash'], - PartialStatement: ['name', 'params', 'hash'], CommentStatement: [], MustacheCommentStatement: [], ElementNode: ['attributes', 'modifiers', 'children', 'comments'], @@ -7695,18 +7836,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba ConcatStatement: ['parts'], SubExpression: ['path', 'params', 'hash'], PathExpression: [], - PathHead: [], StringLiteral: [], BooleanLiteral: [], NumberLiteral: [], NullLiteral: [], UndefinedLiteral: [], Hash: ['pairs'], - HashPair: ['value'], - // v2 new nodes - NamedBlock: ['attributes', 'modifiers', 'children', 'comments'], - SimpleElement: ['attributes', 'modifiers', 'children', 'comments'], - Component: ['head', 'attributes', 'modifiers', 'children', 'comments'] + HashPair: ['value'] }; const TraversalError = function () { TraversalError.prototype = Object.create(Error.prototype); @@ -7803,8 +7939,9 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return keyVisitor.All; } function getNodeHandler(visitor, nodeType) { - if (nodeType === 'Template' || nodeType === 'Block') { - if (visitor.Program) { + if (visitor.Program) { + if (nodeType === 'Template' && !visitor.Template || nodeType === 'Block' && !visitor.Block) { + (0, _util.deprecate)("The 'Program' visitor node is deprecated. Use 'Template' or 'Block' instead (node was '" + nodeType + "') "); return visitor.Program; } } @@ -7967,88 +8104,26 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba switch (node.type) { case 'Block': case 'Template': - return visitors.Program(this, node, callback); + walkBody(this, node.body, callback); + return; case 'ElementNode': - return visitors.ElementNode(this, node, callback); + walkBody(this, node.children, callback); + return; case 'BlockStatement': - return visitors.BlockStatement(this, node, callback); + this.visit(node.program, callback); + this.visit(node.inverse || null, callback); + return; default: return; } } } _exports.Walker = _exports.Path = Walker; - const visitors = { - Program(walker, node, callback) { - walkBody(walker, node.body, callback); - }, - Template(walker, node, callback) { - walkBody(walker, node.body, callback); - }, - Block(walker, node, callback) { - walkBody(walker, node.body, callback); - }, - ElementNode(walker, node, callback) { - walkBody(walker, node.children, callback); - }, - BlockStatement(walker, node, callback) { - walker.visit(node.program, callback); - walker.visit(node.inverse || null, callback); - } - }; function walkBody(walker, body, callback) { for (const child of body) { walker.visit(child, callback); } } - - // Regex to validate the identifier for block parameters. - // Based on the ID validation regex in Handlebars. - - let ID_INVERSE_PATTERN = /[!"#%&'()*+./;<=>@[\\\]^`{|}~]/u; - - // Checks the element's attributes to see if it uses block params. - // If it does, registers the block params with the program and - // removes the corresponding attributes from the element. - - function parseElementBlockParams(element) { - let params = parseBlockParams(element); - if (params) element.blockParams = params; - } - function parseBlockParams(element) { - let l = element.attributes.length; - let attrNames = []; - for (let i = 0; i < l; i++) { - attrNames.push((0, _util.unwrap)(element.attributes[i]).name); - } - let asIndex = attrNames.indexOf('as'); - if (asIndex === -1 && attrNames.length > 0 && (0, _util.unwrap)(attrNames[attrNames.length - 1]).charAt(0) === '|') { - throw generateSyntaxError('Block parameters must be preceded by the `as` keyword, detected block parameters without `as`', element.loc); - } - if (asIndex !== -1 && l > asIndex && (0, _util.unwrap)(attrNames[asIndex + 1]).charAt(0) === '|') { - // Some basic validation, since we're doing the parsing ourselves - let paramsString = attrNames.slice(asIndex).join(' '); - if (paramsString.charAt(paramsString.length - 1) !== '|' || (0, _util.expect)(paramsString.match(/\|/gu), "block params must exist here").length !== 2) { - throw generateSyntaxError("Invalid block parameters syntax, '" + paramsString + "'", element.loc); - } - let params = []; - for (let i = asIndex + 1; i < l; i++) { - let param = (0, _util.unwrap)(attrNames[i]).replace(/\|/gu, ''); - if (param !== '') { - if (ID_INVERSE_PATTERN.test(param)) { - throw generateSyntaxError("Invalid identifier for block parameters, '" + param + "'", element.loc); - } - params.push(param); - } - } - if (params.length === 0) { - throw generateSyntaxError('Cannot use zero block parameters', element.loc); - } - element.attributes = element.attributes.slice(0, asIndex); - return params; - } - return null; - } function childrenFor(node) { switch (node.type) { case 'Block': @@ -8090,109 +8165,94 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // const SOURCE = new Source('', '(tests)'); // Statements - function buildMustache(path, params, hash, raw, loc, strip) { - if (typeof path === 'string') { - path = buildPath(path); + + function buildMustache(path, params, hash, trusting, loc, strip) { + if (params === void 0) { + params = []; } - return { - type: 'MustacheStatement', - path, - params: params || [], - hash: hash || buildHash([]), - escaped: !raw, - trusting: !!raw, - loc: buildLoc(loc || null), - strip: strip || { - open: false, - close: false - } - }; + if (hash === void 0) { + hash = buildHash([]); + } + if (trusting === void 0) { + trusting = false; + } + return b.mustache({ + path: buildPath(path), + params, + hash, + trusting, + strip, + loc: buildLoc(loc || null) + }); } function buildBlock(path, params, hash, _defaultBlock, _elseBlock, loc, openStrip, inverseStrip, closeStrip) { + var _elseBlock2; + if (_elseBlock === void 0) { + _elseBlock = null; + } let defaultBlock; - let elseBlock; + let elseBlock = null; if (_defaultBlock.type === 'Template') { - defaultBlock = (0, _util.assign)({}, _defaultBlock, { - type: 'Block' + (0, _util.deprecate)("b.program is deprecated. Use b.blockItself instead."); + defaultBlock = b.blockItself({ + params: buildBlockParams(_defaultBlock.blockParams), + body: _defaultBlock.body, + loc: _defaultBlock.loc }); } else { defaultBlock = _defaultBlock; } - if (_elseBlock !== undefined && _elseBlock !== null && _elseBlock.type === 'Template') { - elseBlock = (0, _util.assign)({}, _elseBlock, { - type: 'Block' + if (((_elseBlock2 = _elseBlock) == null ? void 0 : _elseBlock2.type) === 'Template') { + (0, _util.deprecate)("b.program is deprecated. Use b.blockItself instead."); + (0, _util.assert)(_elseBlock.blockParams.length === 0, '{{else}} block cannot have block params'); + elseBlock = b.blockItself({ + params: [], + body: _elseBlock.body, + loc: _elseBlock.loc }); } else { elseBlock = _elseBlock; } - return { - type: 'BlockStatement', + return b.block({ path: buildPath(path), params: params || [], hash: hash || buildHash([]), - program: defaultBlock || null, - inverse: elseBlock || null, + defaultBlock, + elseBlock, loc: buildLoc(loc || null), - openStrip: openStrip || { - open: false, - close: false - }, - inverseStrip: inverseStrip || { - open: false, - close: false - }, - closeStrip: closeStrip || { - open: false, - close: false - } - }; + openStrip, + inverseStrip, + closeStrip + }); } function buildElementModifier(path, params, hash, loc) { - return { - type: 'ElementModifierStatement', + return b.elementModifier({ path: buildPath(path), params: params || [], hash: hash || buildHash([]), loc: buildLoc(loc || null) - }; - } - function buildPartial(name, params, hash, indent, loc) { - return { - type: 'PartialStatement', - name: name, - params: params || [], - hash: hash || buildHash([]), - indent: indent || '', - strip: { - open: false, - close: false - }, - loc: buildLoc(loc || null) - }; + }); } function buildComment(value, loc) { - return { - type: 'CommentStatement', + return b.comment({ value: value, loc: buildLoc(loc || null) - }; + }); } function buildMustacheComment(value, loc) { - return { - type: 'MustacheCommentStatement', + return b.mustacheComment({ value: value, loc: buildLoc(loc || null) - }; + }); } function buildConcat(parts, loc) { if (!(0, _util.isPresentArray)(parts)) { throw new Error("b.concat requires at least one part"); } - return { - type: 'ConcatStatement', - parts: parts || [], + return b.concat({ + parts, loc: buildLoc(loc || null) - }; + }); } // Nodes @@ -8207,235 +8267,247 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba modifiers, comments, children, + openTag, + closeTag: _closeTag, loc } = options; - let tagName; // this is used for backwards compat, prior to `selfClosing` being part of the ElementNode AST - let selfClosing = false; - if (typeof tag === 'object') { + let path; + let selfClosing; + if (typeof tag === 'string') { + if (tag.endsWith('/')) { + path = buildPath(tag.slice(0, -1)); + selfClosing = true; + } else { + path = buildPath(tag); + } + } else if ('type' in tag) { + (0, _util.assert)(tag.type === 'PathExpression', "Invalid tag type " + tag.type); + path = tag; + } else if ('path' in tag) { + (0, _util.assert)(tag.path.type === 'PathExpression', "Invalid tag type " + tag.path.type); + path = tag.path; selfClosing = tag.selfClosing; - tagName = tag.name; - } else if (tag.slice(-1) === '/') { - tagName = tag.slice(0, -1); - selfClosing = true; } else { - tagName = tag; + path = buildPath(tag.name); + selfClosing = tag.selfClosing; } - return { - type: 'ElementNode', - tag: tagName, - selfClosing: selfClosing, + if (selfClosing) { + (0, _util.assert)(_closeTag === null || _closeTag === undefined, 'Cannot build a self-closing tag with a closeTag source location'); + } + let params = blockParams == null ? void 0 : blockParams.map(param => { + if (typeof param === 'string') { + return buildVar(param); + } else { + return param; + } + }); + let closeTag = null; + if (_closeTag) { + closeTag = buildLoc(_closeTag || null); + } else if (_closeTag === undefined) { + closeTag = selfClosing || isVoidTag(path.original) ? null : buildLoc(null); + } + return b.element({ + path, + selfClosing: selfClosing || false, attributes: attrs || [], - blockParams: blockParams || [], + params: params || [], modifiers: modifiers || [], comments: comments || [], children: children || [], + openTag: buildLoc(openTag || null), + closeTag, loc: buildLoc(loc || null) - }; + }); } function buildAttr(name, value, loc) { - return { - type: 'AttrNode', + return b.attr({ name: name, value: value, loc: buildLoc(loc || null) - }; + }); } function buildText(chars, loc) { - return { - type: 'TextNode', - chars: chars || '', + if (chars === void 0) { + chars = ''; + } + return b.text({ + chars, loc: buildLoc(loc || null) - }; + }); } // Expressions function buildSexpr(path, params, hash, loc) { - return { - type: 'SubExpression', + if (params === void 0) { + params = []; + } + if (hash === void 0) { + hash = buildHash([]); + } + return b.sexpr({ path: buildPath(path), - params: params || [], - hash: hash || buildHash([]), + params, + hash, loc: buildLoc(loc || null) - }; - } - function headToString$1(head) { - switch (head.type) { - case 'AtHead': - return { - original: head.name, - parts: [head.name] - }; - case 'ThisHead': - return { - original: "this", - parts: [] - }; - case 'VarHead': - return { - original: head.name, - parts: [head.name] - }; - } + }); } function buildHead(original, loc) { let [head, ...tail] = (0, _util.asPresentArray)(original.split('.')); - let headNode; - if (head === 'this') { - headNode = { - type: 'ThisHead', - loc: buildLoc(loc || null) - }; - } else if (head[0] === '@') { - headNode = { - type: 'AtHead', - name: head, - loc: buildLoc(loc || null) - }; - } else { - headNode = { - type: 'VarHead', - name: head, - loc: buildLoc(loc || null) - }; - } - return { + let headNode = b.head({ + original: head, + loc: buildLoc(loc || null) + }); + return b.path({ head: headNode, - tail - }; + tail, + loc: buildLoc(loc || null) + }); } function buildThis(loc) { - return { - type: 'ThisHead', + return b.this({ loc: buildLoc(loc || null) - }; + }); } function buildAtName(name, loc) { - // the `@` should be included so we have a complete source range - (0, _util.assert)(name[0] === '@', "call builders.at() with a string that starts with '@'"); - return { - type: 'AtHead', + return b.atName({ name, loc: buildLoc(loc || null) - }; + }); } function buildVar(name, loc) { - (0, _util.assert)(name !== 'this', "You called builders.var() with 'this'. Call builders.this instead"); - (0, _util.assert)(name[0] !== '@', "You called builders.var() with '" + name + "'. Call builders.at('" + name + "') instead"); - return { - type: 'VarHead', + return b.var({ name, loc: buildLoc(loc || null) - }; - } - function buildHeadFromString(head, loc) { - if (head[0] === '@') { - return buildAtName(head, loc); - } else if (head === 'this') { - return buildThis(loc); - } else { - return buildVar(head, loc); - } + }); } - function buildNamedBlockName(name, loc) { - return { - type: 'NamedBlockName', - name, + function buildHeadFromString(original, loc) { + return b.head({ + original, loc: buildLoc(loc || null) - }; + }); } function buildCleanPath(head, tail, loc) { - let { - original: originalHead, - parts: headParts - } = headToString$1(head); - let parts = [...headParts, ...tail]; - let original = [...originalHead, ...parts].join('.'); - return new PathExpressionImplV1(original, head, tail, buildLoc(loc || null)); + if (tail === void 0) { + tail = []; + } + return b.path({ + head, + tail, + loc: buildLoc(loc || null) + }); } function buildPath(path, loc) { + let span = buildLoc(loc || null); if (typeof path !== 'string') { if ('type' in path) { return path; } else { + (0, _util.assert)(path.head.indexOf('.') === -1, "builder.path({ head, tail }) should not be called with a head with dots in it"); let { head, tail - } = buildHead(path.head, SourceSpan.broken()); - (0, _util.assert)(tail.length === 0, "builder.path({ head, tail }) should not be called with a head with dots in it"); - let { - original: originalHead - } = headToString$1(head); - return new PathExpressionImplV1([originalHead, ...tail].join('.'), head, tail, buildLoc(loc || null)); + } = path; + return b.path({ + head: b.head({ + original: head, + loc: span.sliceStartChars({ + chars: head.length + }) + }), + tail, + loc: buildLoc(loc || null) + }); } } let { head, tail - } = buildHead(path, SourceSpan.broken()); - return new PathExpressionImplV1(path, head, tail, buildLoc(loc || null)); + } = buildHead(path, span); + return b.path({ + head, + tail, + loc: span + }); } function buildLiteral(type, value, loc) { - return { + return b.literal({ type, value, - original: value, loc: buildLoc(loc || null) - }; + }); } // Miscellaneous function buildHash(pairs, loc) { - return { - type: 'Hash', - pairs: pairs || [], + if (pairs === void 0) { + pairs = []; + } + return b.hash({ + pairs, loc: buildLoc(loc || null) - }; + }); } function buildPair(key, value, loc) { - return { - type: 'HashPair', - key: key, + return b.pair({ + key, value, loc: buildLoc(loc || null) - }; + }); } function buildProgram(body, blockParams, loc) { - return { - type: 'Template', - body: body || [], - blockParams: blockParams || [], - loc: buildLoc(loc || null) - }; + (0, _util.deprecate)("b.program is deprecated. Use b.template or b.blockItself instead."); + if (blockParams && blockParams.length) { + return buildBlockItself(body, blockParams, false, loc); + } else { + return buildTemplate(body, [], loc); + } + } + function buildBlockParams(params) { + return params.map(p => typeof p === 'string' ? b.var({ + name: p, + loc: SourceSpan.synthetic(p) + }) : p); } - function buildBlockItself(body, blockParams, chained, loc) { + function buildBlockItself(body, params, chained, loc) { + if (body === void 0) { + body = []; + } + if (params === void 0) { + params = []; + } if (chained === void 0) { chained = false; } - return { - type: 'Block', - body: body || [], - blockParams: blockParams || [], + return b.blockItself({ + body, + params: buildBlockParams(params), chained, loc: buildLoc(loc || null) - }; + }); } function buildTemplate(body, blockParams, loc) { - return { - type: 'Template', - body: body || [], - blockParams: blockParams || [], + if (body === void 0) { + body = []; + } + if (blockParams === void 0) { + blockParams = []; + } + return b.template({ + body, + blockParams, loc: buildLoc(loc || null) - }; + }); } function buildPosition(line, column) { - return { + return b.pos({ line, column - }; + }); } function buildLoc() { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { @@ -8457,8 +8529,8 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba column: startColumn }, end: { - line: endLine, - column: endColumn + line: endLine || startLine, + column: endColumn || startColumn } }); } @@ -8466,7 +8538,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba var publicBuilder = _exports.builders = { mustache: buildMustache, block: buildBlock, - partial: buildPartial, comment: buildComment, mustacheComment: buildMustacheComment, element: buildElement, @@ -8489,7 +8560,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba at: buildAtName, var: buildVar, this: buildThis, - blockName: buildNamedBlockName, string: literal('StringLiteral'), boolean: literal('BooleanLiteral'), number: literal('NumberLiteral'), @@ -8505,48 +8575,127 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return buildLiteral(type, value, loc); }; } - class PathExpressionImplV1 { - constructor(original, head, tail, loc) { - this.type = 'PathExpression'; - this.parts = void 0; - this.this = false; - this.data = false; - // Cache for the head value. - this._head = undefined; - this.original = original; - this.loc = loc; - let parts = tail.slice(); - if (head.type === 'ThisHead') { - this.this = true; - } else if (head.type === 'AtHead') { - this.data = true; - parts.unshift(head.name.slice(1)); - } else { - parts.unshift(head.name); + function buildLegacyMustache(_ref13) { + let { + path, + params, + hash, + trusting, + strip, + loc + } = _ref13; + const node = { + type: 'MustacheStatement', + path, + params, + hash, + trusting, + strip, + loc + }; + Object.defineProperty(node, 'escaped', { + enumerable: false, + get() { + (0, _util.deprecate)("The escaped property on mustache nodes is deprecated, use trusting instead"); + return !this.trusting; + }, + set(value) { + (0, _util.deprecate)("The escaped property on mustache nodes is deprecated, use trusting instead"); + this.trusting = !value; } - this.parts = parts; - } - get head() { - if (this._head) { - return this._head; + }); + return node; + } + function buildLegacyPath(_ref14) { + let { + head, + tail, + loc + } = _ref14; + const node = { + type: 'PathExpression', + head, + tail, + get original() { + return [this.head.original, ...this.tail].join('.'); + }, + set original(value) { + let [head, ...tail] = (0, _util.asPresentArray)(value.split('.')); + this.head = publicBuilder.head(head, this.head.loc); + this.tail = tail; + }, + loc + }; + Object.defineProperty(node, 'parts', { + enumerable: false, + get() { + (0, _util.deprecate)("The parts property on path nodes is deprecated, use head and tail instead"); + let parts = (0, _util.asPresentArray)(this.original.split('.')); + if (parts[0] === 'this') { + // parts does not include `this` + parts.shift(); + } else if (parts[0].startsWith('@')) { + // parts does not include leading `@` + parts[0] = parts[0].slice(1); + } + return Object.freeze(parts); + }, + set(values) { + var _parts$; + (0, _util.deprecate)("The parts property on mustache nodes is deprecated, use head and tail instead"); + let parts = [...values]; + + // you are not supposed to already have `this` or `@` in the parts, but since this is + // deprecated anyway, we will infer what you meant and allow it + if (parts[0] !== 'this' && !((_parts$ = parts[0]) != null && _parts$.startsWith('@'))) { + if (this.head.type === 'ThisHead') { + parts.unshift('this'); + } else if (this.head.type === 'AtHead') { + parts[0] = "@" + parts[0]; + } + } + this.original = parts.join('.'); } - let firstPart; - if (this.this) { - firstPart = 'this'; - } else if (this.data) { - firstPart = "@" + (0, _util.getFirst)((0, _util.asPresentArray)(this.parts)); - } else { - (0, _util.assertPresentArray)(this.parts); - firstPart = (0, _util.getFirst)(this.parts); + }); + Object.defineProperty(node, 'this', { + enumerable: false, + get() { + (0, _util.deprecate)("The this property on path nodes is deprecated, use head.type instead"); + return this.head.type === 'ThisHead'; } - let firstPartLoc = this.loc.collapse('start').sliceStartChars({ - chars: firstPart.length - }).loc; - return this._head = publicBuilder.head(firstPart, firstPartLoc); - } - get tail() { - return this.this ? this.parts : this.parts.slice(1); - } + }); + Object.defineProperty(node, 'data', { + enumerable: false, + get() { + (0, _util.deprecate)("The data property on path nodes is deprecated, use head.type instead"); + return this.head.type === 'AtHead'; + } + }); + return node; + } + function buildLegacyLiteral(_ref15) { + let { + type, + value, + loc + } = _ref15; + const node = { + type, + value, + loc + }; + Object.defineProperty(node, 'original', { + enumerable: false, + get() { + (0, _util.deprecate)("The original property on literal nodes is deprecated, use value instead"); + return this.value; + }, + set(value) { + (0, _util.deprecate)("The original property on literal nodes is deprecated, use value instead"); + this.value = value; + } + }); + return node; } const DEFAULT_STRIP = { close: false, @@ -8560,41 +8709,56 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * 2. Mandating source locations */ class Builders { - pos(line, column) { + pos(_ref16) { + let { + line, + column + } = _ref16; return { line, column }; } - blockItself(_ref13) { + blockItself(_ref17) { let { - body = [], - blockParams = [], + body, + params, chained = false, loc - } = _ref13; + } = _ref17; return { type: 'Block', - body: body, - blockParams: blockParams, + body, + params, + get blockParams() { + return this.params.map(p => p.name); + }, + set blockParams(params) { + this.params = params.map(name => { + return b.var({ + name, + loc: SourceSpan.synthetic(name) + }); + }); + }, chained, loc }; } - template(_ref14) { + template(_ref18) { let { body, blockParams, loc - } = _ref14; + } = _ref18; return { type: 'Template', - body: body || [], - blockParams: blockParams || [], + body, + blockParams, loc }; } - mustache(_ref15) { + mustache(_ref19) { let { path, params, @@ -8602,22 +8766,17 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba trusting, loc, strip = DEFAULT_STRIP - } = _ref15; - return { - type: 'MustacheStatement', + } = _ref19; + return buildLegacyMustache({ path, params, hash, - escaped: !trusting, trusting, - loc, - strip: strip || { - open: false, - close: false - } - }; + strip, + loc + }); } - block(_ref16) { + block(_ref20) { let { path, params, @@ -8628,7 +8787,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba openStrip = DEFAULT_STRIP, inverseStrip = DEFAULT_STRIP, closeStrip = DEFAULT_STRIP - } = _ref16; + } = _ref20; return { type: 'BlockStatement', path: path, @@ -8636,63 +8795,107 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba hash, program: defaultBlock, inverse: elseBlock, - loc: loc, - openStrip: openStrip, - inverseStrip: inverseStrip, - closeStrip: closeStrip + loc, + openStrip, + inverseStrip, + closeStrip }; } - comment(value, loc) { + comment(_ref21) { + let { + value, + loc + } = _ref21; return { type: 'CommentStatement', - value: value, + value, loc }; } - mustacheComment(value, loc) { + mustacheComment(_ref22) { + let { + value, + loc + } = _ref22; return { type: 'MustacheCommentStatement', - value: value, + value, loc }; } - concat(parts, loc) { + concat(_ref23) { + let { + parts, + loc + } = _ref23; return { type: 'ConcatStatement', parts, loc }; } - element(_ref17) { + element(_ref24) { let { - tag, + path, selfClosing, - attrs, - blockParams, + attributes, modifiers, + params, comments, children, + openTag, + closeTag, loc - } = _ref17; + } = _ref24; + let _selfClosing = selfClosing; return { type: 'ElementNode', - tag, - selfClosing: selfClosing, - attributes: attrs || [], - blockParams: blockParams || [], - modifiers: modifiers || [], - comments: comments || [], - children: children || [], - loc + path, + attributes, + modifiers, + params, + comments, + children, + openTag, + closeTag, + loc, + get tag() { + return this.path.original; + }, + set tag(name) { + this.path.original = name; + }, + get blockParams() { + return this.params.map(p => p.name); + }, + set blockParams(params) { + this.params = params.map(name => { + return b.var({ + name, + loc: SourceSpan.synthetic(name) + }); + }); + }, + get selfClosing() { + return _selfClosing; + }, + set selfClosing(selfClosing) { + _selfClosing = selfClosing; + if (selfClosing) { + this.closeTag = null; + } else { + this.closeTag = SourceSpan.synthetic(""); + } + } }; } - elementModifier(_ref18) { + elementModifier(_ref25) { let { path, params, hash, loc - } = _ref18; + } = _ref25; return { type: 'ElementModifierStatement', path, @@ -8701,12 +8904,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }; } - attr(_ref19) { + attr(_ref26) { let { name, value, loc - } = _ref19; + } = _ref26; return { type: 'AttrNode', name: name, @@ -8714,24 +8917,24 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }; } - text(_ref20) { + text(_ref27) { let { chars, loc - } = _ref20; + } = _ref27; return { type: 'TextNode', chars, loc }; } - sexpr(_ref21) { + sexpr(_ref28) { let { path, params, hash, loc - } = _ref21; + } = _ref28; return { type: 'SubExpression', path, @@ -8740,143 +8943,149 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }; } - path(_ref22) { + path(_ref29) { let { head, tail, loc - } = _ref22; + } = _ref29; + return buildLegacyPath({ + head, + tail, + loc + }); + } + head(_ref30) { let { - original: originalHead - } = headToString(head); - let original = [...originalHead, ...tail].join('.'); - return new PathExpressionImplV1(original, head, tail, loc); - } - head(head, loc) { - if (head[0] === '@') { - return this.atName(head, loc); - } else if (head === 'this') { - return this.this(loc); + original, + loc + } = _ref30; + if (original === 'this') { + return this.this({ + loc + }); + } + if (original[0] === '@') { + return this.atName({ + name: original, + loc + }); } else { - return this.var(head, loc); + return this.var({ + name: original, + loc + }); } } - this(loc) { + this(_ref31) { + let { + loc + } = _ref31; return { type: 'ThisHead', + get original() { + return 'this'; + }, loc }; } - atName(name, loc) { - // the `@` should be included so we have a complete source range - (0, _util.assert)(name[0] === '@', "call builders.at() with a string that starts with '@'"); - return { - type: 'AtHead', + atName(_ref32) { + let { name, loc + } = _ref32; + let _name = ''; + const node = { + type: 'AtHead', + get name() { + return _name; + }, + set name(value) { + (0, _util.assert)(value[0] === '@', "call builders.at() with a string that starts with '@'"); + (0, _util.assert)(value.indexOf('.') === -1, "builder.at() should not be called with a name with dots in it"); + _name = value; + }, + get original() { + return this.name; + }, + set original(value) { + this.name = value; + }, + loc }; + + // trigger the assertions + node.name = name; + return node; } - var(name, loc) { - (0, _util.assert)(name !== 'this', "You called builders.var() with 'this'. Call builders.this instead"); - (0, _util.assert)(name[0] !== '@', "You called builders.var() with '" + name + "'. Call builders.at('" + name + "') instead"); - return { - type: 'VarHead', + var(_ref33) { + let { name, loc + } = _ref33; + let _name = ''; + const node = { + type: 'VarHead', + get name() { + return _name; + }, + set name(value) { + (0, _util.assert)(value !== 'this', "You called builders.var() with 'this'. Call builders.this instead"); + (0, _util.assert)(value[0] !== '@', "You called builders.var() with '" + name + "'. Call builders.at('" + name + "') instead"); + (0, _util.assert)(value.indexOf('.') === -1, "builder.var() should not be called with a name with dots in it"); + _name = value; + }, + get original() { + return this.name; + }, + set original(value) { + this.name = value; + }, + loc }; + + // trigger the assertions + node.name = name; + return node; } - hash(pairs, loc) { + hash(_ref34) { + let { + pairs, + loc + } = _ref34; return { type: 'Hash', - pairs: pairs || [], + pairs, loc }; } - pair(_ref23) { + pair(_ref35) { let { key, value, loc - } = _ref23; + } = _ref35; return { type: 'HashPair', - key: key, + key, value, loc }; } - literal(_ref24) { + literal(_ref36) { let { type, value, loc - } = _ref24; - return { + } = _ref36; + return buildLegacyLiteral({ type, value, - original: value, - loc - }; - } - undefined() { - return this.literal({ - type: 'UndefinedLiteral', - value: undefined - }); - } - null() { - return this.literal({ - type: 'NullLiteral', - value: null - }); - } - string(value, loc) { - return this.literal({ - type: 'StringLiteral', - value, - loc - }); - } - boolean(value, loc) { - return this.literal({ - type: 'BooleanLiteral', - value, - loc - }); - } - number(value, loc) { - return this.literal({ - type: 'NumberLiteral', - value, loc }); } } - - // Nodes - - // Expressions - - function headToString(head) { - switch (head.type) { - case 'AtHead': - return { - original: head.name, - parts: [head.name] - }; - case 'ThisHead': - return { - original: "this", - parts: [] - }; - case 'VarHead': - return { - original: head.name, - parts: [head.name] - }; - } - } - var b = new Builders(); + const b = new Builders(); class Parser { constructor(source, entityParser, mode) { if (entityParser === void 0) { @@ -8902,21 +9111,20 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } = this.tokenizer; return this.source.offsetFor(line, column); } - pos(_ref25) { + pos(_ref37) { let { line, column - } = _ref25; + } = _ref37; return this.source.offsetFor(line, column); } finish(node) { return (0, _util.assign)({}, node, { - loc: node.loc.until(this.offset()) + loc: node.start.until(this.offset()) }); // node.loc = node.loc.withEnd(end); } - get currentAttr() { return (0, _util.expect)(this.currentAttribute, 'expected attribute'); } @@ -8945,9 +9153,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba (0, _util.assert)(node && node.type === 'TextNode', 'expected a text node'); return node; } - acceptTemplate(node) { - return this[node.type](node); - } acceptNode(node) { return this[node.type](node); } @@ -8990,45 +9195,76 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba const BEFORE_ATTRIBUTE_NAME = 'beforeAttributeName'; const ATTRIBUTE_VALUE_UNQUOTED = 'attributeValueUnquoted'; class HandlebarsNodeVisitors extends Parser { - get isTopLevel() { - return this.elementStack.length === 0; - } - Program(program) { - const body = []; - let node; - if (this.isTopLevel) { - node = b.template({ - body, - blockParams: program.blockParams, - loc: this.source.spanFor(program.loc) - }); - } else { - node = b.blockItself({ - body, - blockParams: program.blockParams, - chained: program.chained, - loc: this.source.spanFor(program.loc) - }); - } - let i, - l = program.body.length; - this.elementStack.push(node); - if (l === 0) { - return this.elementStack.pop(); + constructor() { + super(...arguments); + // Because we interleave the HTML and HBS parsing, sometimes the HTML + // tokenizer can run out of tokens when we switch into {{...}} or reached + // EOF. There are positions where neither of these are expected, and it would + // like to generate an error, but there is no span to attach the error to. + // This allows the HTML tokenization to stash an error message and the next + // mustache visitor will attach the message to the appropriate span and throw + // the error. + this.pendingError = null; + } + parse(program, blockParams) { + var _this$pendingError; + let node = b.template({ + body: [], + blockParams, + loc: this.source.spanFor(program.loc) + }); + let template = this.parseProgram(node, program); + + // TODO: we really need to verify that the tokenizer is in an acceptable + // state when we are "done" parsing. For example, right now, `= limit) { + nameStart = -1; + } else { + nameStart = content.indexOf(name, skipStart); + } + if (nameStart === -1 || nameStart + name.length > limit) { + skipStart = limit; + loc = this.source.spanFor(NON_EXISTENT_LOCATION); + } else { + skipStart = nameStart; + loc = span.sliceStartChars({ + skipStart, + chars: name.length + }); + skipStart += name.length; + } + blockParams.push(b.var({ + name, + loc + })); + } + } // These are bugs in Handlebars upstream if (!block.program.loc) { @@ -9049,8 +9345,8 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if (block.inverse && !block.inverse.loc) { block.inverse.loc = NON_EXISTENT_LOCATION; } - const program = this.Program(block.program); - const inverse = block.inverse ? this.Program(block.inverse) : null; + const program = this.Program(block.program, blockParams); + const inverse = block.inverse ? this.Program(block.inverse, []) : null; const node = b.block({ path, params, @@ -9066,6 +9362,8 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba appendChild(parentProgram, node); } MustacheStatement(rawMustache) { + var _this$pendingError2; + (_this$pendingError2 = this.pendingError) == null || _this$pendingError2.mustache(this.source.spanFor(rawMustache.loc)); const { tokenizer } = this; @@ -9079,11 +9377,17 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc, strip } = rawMustache; + if ('original' in rawMustache.path && rawMustache.path.original === '...attributes') { + throw generateSyntaxError('Illegal use of ...attributes', this.source.spanFor(rawMustache.loc)); + } if (isHBSLiteral(rawMustache.path)) { mustache = b.mustache({ path: this.acceptNode(rawMustache.path), params: [], - hash: b.hash([], this.source.spanFor(rawMustache.path.loc).collapse('end')), + hash: b.hash({ + pairs: [], + loc: this.source.spanFor(rawMustache.path.loc).collapse('end') + }), trusting: !escaped, loc: this.source.spanFor(loc), strip @@ -9176,7 +9480,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba value, loc } = rawComment; - const comment = b.mustacheComment(value, this.source.spanFor(loc)); + const comment = b.mustacheComment({ + value, + loc: this.source.spanFor(loc) + }); switch (tokenizer.state) { case 'beforeAttributeName': case 'afterAttributeName': @@ -9254,50 +9561,51 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } let pathHead; if (thisHead) { - pathHead = { - type: 'ThisHead', - loc: { + pathHead = b.this({ + loc: this.source.spanFor({ start: path.loc.start, end: { line: path.loc.start.line, column: path.loc.start.column + 4 } - } - }; + }) + }); } else if (path.data) { const head = parts.shift(); if (head === undefined) { throw generateSyntaxError("Attempted to parse a path expression, but it was not valid. Paths beginning with @ must start with a-z.", this.source.spanFor(path.loc)); } - pathHead = { - type: 'AtHead', + pathHead = b.atName({ name: "@" + head, - loc: { + loc: this.source.spanFor({ start: path.loc.start, end: { line: path.loc.start.line, column: path.loc.start.column + head.length + 1 } - } - }; + }) + }); } else { const head = parts.shift(); if (head === undefined) { throw generateSyntaxError("Attempted to parse a path expression, but it was not valid. Paths must start with a-z or A-Z.", this.source.spanFor(path.loc)); } - pathHead = { - type: 'VarHead', + pathHead = b.var({ name: head, - loc: { + loc: this.source.spanFor({ start: path.loc.start, end: { line: path.loc.start.line, column: path.loc.start.column + head.length } - } - }; + }) + }); } - return new PathExpressionImplV1(path.original, pathHead, parts, this.source.spanFor(path.loc)); + return b.path({ + head: pathHead, + tail: parts, + loc: this.source.spanFor(path.loc) + }); } Hash(hash) { const pairs = hash.pairs.map(pair => b.pair({ @@ -9305,41 +9613,44 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba value: this.acceptNode(pair.value), loc: this.source.spanFor(pair.loc) })); - return b.hash(pairs, this.source.spanFor(hash.loc)); + return b.hash({ + pairs, + loc: this.source.spanFor(hash.loc) + }); } StringLiteral(string) { return b.literal({ type: 'StringLiteral', value: string.value, - loc: string.loc + loc: this.source.spanFor(string.loc) }); } BooleanLiteral(boolean) { return b.literal({ type: 'BooleanLiteral', value: boolean.value, - loc: boolean.loc + loc: this.source.spanFor(boolean.loc) }); } NumberLiteral(number) { return b.literal({ type: 'NumberLiteral', value: number.value, - loc: number.loc + loc: this.source.spanFor(number.loc) }); } UndefinedLiteral(undef) { return b.literal({ type: 'UndefinedLiteral', value: undefined, - loc: undef.loc + loc: this.source.spanFor(undef.loc) }); } NullLiteral(nul) { return b.literal({ type: 'NullLiteral', value: null, - loc: nul.loc + loc: this.source.spanFor(nul.loc) }); } } @@ -9377,33 +9688,44 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba tokenizer.column = column; } function acceptCallNodes(compiler, node) { - if (node.path.type.endsWith('Literal')) { - const path = node.path; - let value = ''; - if (path.type === 'BooleanLiteral') { - value = path.original.toString(); - } else if (path.type === 'StringLiteral') { - value = "\"" + path.original + "\""; - } else if (path.type === 'NullLiteral') { - value = 'null'; - } else if (path.type === 'NumberLiteral') { - value = path.value.toString(); - } else { - value = 'undefined'; - } - throw generateSyntaxError(path.type + " \"" + (path.type === 'StringLiteral' ? path.original : value) + "\" cannot be called as a sub-expression, replace (" + value + ") with " + value, compiler.source.spanFor(path.loc)); + let path; + switch (node.path.type) { + case 'PathExpression': + path = compiler.PathExpression(node.path); + break; + case 'SubExpression': + path = compiler.SubExpression(node.path); + break; + case 'StringLiteral': + case 'UndefinedLiteral': + case 'NullLiteral': + case 'NumberLiteral': + case 'BooleanLiteral': + { + let value; + if (node.path.type === 'BooleanLiteral') { + value = node.path.original.toString(); + } else if (node.path.type === 'StringLiteral') { + value = "\"" + node.path.original + "\""; + } else if (node.path.type === 'NullLiteral') { + value = 'null'; + } else if (node.path.type === 'NumberLiteral') { + value = node.path.value.toString(); + } else { + value = 'undefined'; + } + throw generateSyntaxError(node.path.type + " \"" + (node.path.type === 'StringLiteral' ? node.path.original : value) + "\" cannot be called as a sub-expression, replace (" + value + ") with " + value, compiler.source.spanFor(node.path.loc)); + } } - const path = node.path.type === 'PathExpression' ? compiler.PathExpression(node.path) : compiler.SubExpression(node.path); const params = node.params ? node.params.map(e => compiler.acceptNode(e)) : []; // if there is no hash, position it as a collapsed node immediately after the last param (or the // path, if there are also no params) const end = (0, _util.isPresentArray)(params) ? (0, _util.getLast)(params).loc : path.loc; - const hash = node.hash ? compiler.Hash(node.hash) : { - type: 'Hash', + const hash = node.hash ? compiler.Hash(node.hash) : b.hash({ pairs: [], loc: compiler.source.spanFor(end).collapse('end') - }; + }); return { path, params, @@ -9430,6 +9752,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba }); element.modifiers.push(modifier); } + + // vendored from simple-html-tokenizer because it's unexported + function isSpace(char) { + return /[\t\n\f ]/u.test(char); + } class TokenizerEventHandlers extends HandlebarsNodeVisitors { constructor() { super(...arguments); @@ -9443,29 +9770,33 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // Comment beginComment() { - this.currentNode = b.comment('', this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn)); + this.currentNode = { + type: 'CommentStatement', + value: '', + start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) + }; } appendToCommentData(char) { this.currentComment.value += char; } finishComment() { - appendChild(this.currentElement(), this.finish(this.currentComment)); + appendChild(this.currentElement(), b.comment(this.finish(this.currentComment))); } // Data beginData() { - this.currentNode = b.text({ + this.currentNode = { + type: 'TextNode', chars: '', - loc: this.offset().collapsed() - }); + start: this.offset() + }; } appendToData(char) { this.currentData.chars += char; } finishData() { - this.currentData.loc = this.currentData.loc.withEnd(this.offset()); - appendChild(this.currentElement(), this.currentData); + appendChild(this.currentElement(), b.text(this.finish(this.currentData))); } // Tags - basic @@ -9478,22 +9809,21 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba this.currentNode = { type: 'StartTag', name: '', + nameStart: null, + nameEnd: null, attributes: [], modifiers: [], comments: [], + params: [], selfClosing: false, - loc: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) + start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) }; } beginEndTag() { this.currentNode = { type: 'EndTag', name: '', - attributes: [], - modifiers: [], - comments: [], - selfClosing: false, - loc: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) + start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) }; } finishTag() { @@ -9502,7 +9832,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba this.finishStartTag(); if (tag.name === ':') { throw generateSyntaxError('Invalid named block named detected, you may have created a named block without a name, or you may have began your name with a number. Named blocks must have names that are at least one character long, and begin with a lower case letter', this.source.spanFor({ - start: this.currentTag.loc.toJSON(), + start: this.currentTag.start.toJSON(), end: this.offset().toJSON() })); } @@ -9516,41 +9846,93 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba finishStartTag() { let { name, - attributes: attrs, + nameStart, + nameEnd + } = this.currentStartTag; + + // <> should probably be a syntax error, but s-h-t is currently broken for that case + (0, _util.assert)(name !== '', 'tag name cannot be empty'); + (0, _util.assert)(nameStart !== null, 'nameStart unexpectedly null'); + (0, _util.assert)(nameEnd !== null, 'nameEnd unexpectedly null'); + let nameLoc = nameStart.until(nameEnd); + let [head, ...tail] = (0, _util.asPresentArray)(name.split('.')); + let path = b.path({ + head: b.head({ + original: head, + loc: nameLoc.sliceStartChars({ + chars: head.length + }) + }), + tail, + loc: nameLoc + }); + let { + attributes, modifiers, comments, + params, selfClosing, loc } = this.finish(this.currentStartTag); let element = b.element({ - tag: name, + path, selfClosing, - attrs, + attributes, modifiers, comments, + params, children: [], - blockParams: [], + openTag: loc, + closeTag: selfClosing ? null : SourceSpan.broken(), loc }); this.elementStack.push(element); } finishEndTag(isVoid) { + let { + start: closeTagStart + } = this.currentTag; let tag = this.finish(this.currentTag); let element = this.elementStack.pop(); this.validateEndTag(tag, element, isVoid); let parent = this.currentElement(); + if (isVoid) { + element.closeTag = null; + } else if (element.selfClosing) { + (0, _util.assert)(element.closeTag === null, 'element.closeTag unexpectedly present'); + } else { + element.closeTag = closeTagStart.until(this.offset()); + } element.loc = element.loc.withEnd(this.offset()); - parseElementBlockParams(element); - appendChild(parent, element); + appendChild(parent, b.element(element)); } markTagAsSelfClosing() { - this.currentTag.selfClosing = true; + let tag = this.currentTag; + if (tag.type === 'StartTag') { + tag.selfClosing = true; + } else { + throw generateSyntaxError("Invalid end tag: closing tag must not be self-closing", this.source.spanFor({ + start: tag.start.toJSON(), + end: this.offset().toJSON() + })); + } } // Tags - name appendToTagName(char) { - this.currentTag.name += char; + let tag = this.currentTag; + tag.name += char; + if (tag.type === 'StartTag') { + let offset = this.offset(); + if (tag.nameStart === null) { + (0, _util.assert)(tag.nameEnd === null, 'nameStart and nameEnd must both be null'); + + // Note that the tokenizer already consumed the token here + tag.nameStart = offset.move(-1); + } + tag.nameEnd = offset; + } } // Tags - attributes @@ -9569,6 +9951,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } appendToAttributeName(char) { this.currentAttr.name += char; + + // The block params parsing code can actually handle peek=non-space just + // fine, but this check was added as an optimization, as there is a little + // bit of setup overhead for the parsing logic just to immediately bail + if (this.currentAttr.name === 'as') { + this.parsePossibleBlockParams(); + } } beginAttributeValue(isQuoted) { this.currentAttr.isQuoted = isQuoted; @@ -9606,7 +9995,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba let tokenizerPos = this.offset(); if (tag.type === 'EndTag') { throw generateSyntaxError("Invalid end tag: closing tag must not have attributes", this.source.spanFor({ - start: tag.loc.toJSON(), + start: tag.start.toJSON(), end: tokenizerPos.toJSON() })); } @@ -9618,6 +10007,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba isDynamic, valueSpan } = this.currentAttr; + + // Just trying to be helpful with `` rather than letting it through as an attribute + if (name.startsWith('|') && parts.length === 0 && !isQuoted && !isDynamic) { + throw generateSyntaxError('Invalid block parameters syntax: block parameters must be preceded by the `as` keyword', start.until(start.move(name.length))); + } let value = this.assembleAttributeValue(parts, isQuoted, isDynamic, start.until(tokenizerPos)); value.loc = valueSpan.withEnd(tokenizerPos); let attribute = b.attr({ @@ -9627,6 +10021,195 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba }); this.currentStartTag.attributes.push(attribute); } + parsePossibleBlockParams() { + // const enums that we can't use directly + const BEFORE_ATTRIBUTE_NAME = 'beforeAttributeName'; + const ATTRIBUTE_NAME = 'attributeName'; + const AFTER_ATTRIBUTE_NAME = 'afterAttributeName'; + + // Regex to validate the identifier for block parameters. + // Based on the ID validation regex in Handlebars. + const ID_INVERSE_PATTERN = /[!"#%&'()*+./;<=>@[\\\]^`{|}~]/u; + (0, _util.assert)(this.tokenizer.state === ATTRIBUTE_NAME, 'must be in TokenizerState.attributeName'); + const element = this.currentStartTag; + const as = this.currentAttr; + let state = { + state: 'PossibleAs' + }; + const handlers = { + PossibleAs: next => { + (0, _util.assert)(state.state === 'PossibleAs', 'bug in block params parser'); + if (isSpace(next)) { + // " as ..." + state = { + state: 'BeforeStartPipe' + }; + this.tokenizer.transitionTo(AFTER_ATTRIBUTE_NAME); + this.tokenizer.consume(); + } else if (next === '|') { + // " as|..." + // Following Handlebars and require a space between "as" and the pipe + throw generateSyntaxError("Invalid block parameters syntax: expecting at least one space character between \"as\" and \"|\"", as.start.until(this.offset().move(1))); + } else { + // " as{{...", " async...", " as=...", " as>...", " as/>..." + // Don't consume, let the normal tokenizer code handle the next steps + state = { + state: 'Done' + }; + } + }, + BeforeStartPipe: next => { + (0, _util.assert)(state.state === 'BeforeStartPipe', 'bug in block params parser'); + if (isSpace(next)) { + this.tokenizer.consume(); + } else if (next === '|') { + state = { + state: 'BeforeBlockParamName' + }; + this.tokenizer.transitionTo(BEFORE_ATTRIBUTE_NAME); + this.tokenizer.consume(); + } else { + // " as {{...", " as bs...", " as =...", " as ...", " as/>..." + // Don't consume, let the normal tokenizer code handle the next steps + state = { + state: 'Done' + }; + } + }, + BeforeBlockParamName: next => { + (0, _util.assert)(state.state === 'BeforeBlockParamName', 'bug in block params parser'); + if (isSpace(next)) { + this.tokenizer.consume(); + } else if (next === '') { + // The HTML tokenizer ran out of characters, so we are either + // encountering mustache or + state = { + state: 'Done' + }; + this.pendingError = { + mustache(loc) { + throw generateSyntaxError("Invalid block parameters syntax: mustaches cannot be used inside parameters list", loc); + }, + eof(loc) { + throw generateSyntaxError("Invalid block parameters syntax: expecting the tag to be closed with \">\" or \"/>\" after parameters list", as.start.until(loc)); + } + }; + } else if (next === '|') { + if (element.params.length === 0) { + // Following Handlebars and treat empty block params a syntax error + throw generateSyntaxError("Invalid block parameters syntax: empty parameters list, expecting at least one identifier", as.start.until(this.offset().move(1))); + } else { + state = { + state: 'AfterEndPipe' + }; + this.tokenizer.consume(); + } + } else if (next === '>' || next === '/') { + throw generateSyntaxError("Invalid block parameters syntax: incomplete parameters list, expecting \"|\" but the tag was closed prematurely", as.start.until(this.offset().move(1))); + } else { + // slurp up anything else into the name, validate later + state = { + state: 'BlockParamName', + name: next, + start: this.offset() + }; + this.tokenizer.consume(); + } + }, + BlockParamName: next => { + (0, _util.assert)(state.state === 'BlockParamName', 'bug in block params parser'); + if (next === '') { + // The HTML tokenizer ran out of characters, so we are either + // encountering mustache or , HBS side will attach the error + // to the next span + state = { + state: 'Done' + }; + this.pendingError = { + mustache(loc) { + throw generateSyntaxError("Invalid block parameters syntax: mustaches cannot be used inside parameters list", loc); + }, + eof(loc) { + throw generateSyntaxError("Invalid block parameters syntax: expecting the tag to be closed with \">\" or \"/>\" after parameters list", as.start.until(loc)); + } + }; + } else if (next === '|' || isSpace(next)) { + let loc = state.start.until(this.offset()); + if (state.name === 'this' || ID_INVERSE_PATTERN.test(state.name)) { + throw generateSyntaxError("Invalid block parameters syntax: invalid identifier name `" + state.name + "`", loc); + } + element.params.push(b.var({ + name: state.name, + loc + })); + state = next === '|' ? { + state: 'AfterEndPipe' + } : { + state: 'BeforeBlockParamName' + }; + this.tokenizer.consume(); + } else if (next === '>' || next === '/') { + throw generateSyntaxError("Invalid block parameters syntax: expecting \"|\" but the tag was closed prematurely", as.start.until(this.offset().move(1))); + } else { + // slurp up anything else into the name, validate later + state.name += next; + this.tokenizer.consume(); + } + }, + AfterEndPipe: next => { + (0, _util.assert)(state.state === 'AfterEndPipe', 'bug in block params parser'); + if (isSpace(next)) { + this.tokenizer.consume(); + } else if (next === '') { + // The HTML tokenizer ran out of characters, so we are either + // encountering mustache or , HBS side will attach the error + // to the next span + state = { + state: 'Done' + }; + this.pendingError = { + mustache(loc) { + throw generateSyntaxError("Invalid block parameters syntax: modifiers cannot follow parameters list", loc); + }, + eof(loc) { + throw generateSyntaxError("Invalid block parameters syntax: expecting the tag to be closed with \">\" or \"/>\" after parameters list", as.start.until(loc)); + } + }; + } else if (next === '>' || next === '/') { + // Don't consume, let the normal tokenizer code handle the next steps + state = { + state: 'Done' + }; + } else { + // Slurp up the next "token" for the error span + state = { + state: 'Error', + message: 'Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list', + start: this.offset() + }; + this.tokenizer.consume(); + } + }, + Error: next => { + (0, _util.assert)(state.state === 'Error', 'bug in block params parser'); + if (next === '' || next === '/' || next === '>' || isSpace(next)) { + throw generateSyntaxError(state.message, state.start.until(this.offset())); + } else { + // Slurp up the next "token" for the error span + this.tokenizer.consume(); + } + }, + Done: () => { + (0, _util.assert)(false, 'This should never be called'); + } + }; + let next; + do { + next = this.tokenizer.peek(); + handlers[state.state](next); + } while (state.state !== 'Done' && next !== ''); + (0, _util.assert)(state.state === 'Done', 'bug in block params parser'); + } reportSyntaxError(message) { throw generateSyntaxError(message, this.offset().collapsed()); } @@ -9639,7 +10222,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba (0, _util.assertPresentArray)(parts, "the concatenation parts of an element should not be empty"); let first = (0, _util.getFirst)(parts); let last = (0, _util.getLast)(parts); - return b.concat(parts, this.source.spanFor(first.loc).extend(this.source.spanFor(last.loc))); + return b.concat({ + parts, + loc: this.source.spanFor(first.loc).extend(this.source.spanFor(last.loc)) + }); } validateEndTag(tag, element, selfClosing) { if (voidMap.has(tag.name) && !selfClosing) { @@ -9699,6 +10285,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } } function preprocess(input, options) { + var _options$locals, _options; if (options === void 0) { options = {}; } @@ -9735,12 +10322,8 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba start: offsets.startPosition, end: offsets.endPosition }; - let program = new TokenizerEventHandlers(source, entityParser, mode).acceptTemplate(ast); - if (options.strictMode) { - var _options$locals; - program.blockParams = (_options$locals = options.locals) != null ? _options$locals : []; - } - if (options && options.plugins && options.plugins.ast) { + let template = new TokenizerEventHandlers(source, entityParser, mode).parse(ast, (_options$locals = options.locals) != null ? _options$locals : []); + if ((_options = options) != null && (_options = _options.plugins) != null && _options.ast) { for (const transform of options.plugins.ast) { let env = (0, _util.assign)({}, options, { syntax @@ -9748,10 +10331,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba plugins: undefined }); let pluginResult = transform(env); - traverse(program, pluginResult.visitor); + traverse(template, pluginResult.visitor); } } - return program; + return template; } /** @@ -9816,7 +10399,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * optionally. */ function getTemplateLocals(html, options) { - var _options; + var _options2; if (options === void 0) { options = { includeHtmlElements: false, @@ -9828,18 +10411,18 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba const scopedTokens = []; traverse(ast, { Block: { - enter(_ref26) { + enter(_ref38) { let { blockParams - } = _ref26; + } = _ref38; blockParams.forEach(param => { scopedTokens.push(param); }); }, - exit(_ref27) { + exit(_ref39) { let { blockParams - } = _ref27; + } = _ref39; blockParams.forEach(() => { scopedTokens.pop(); }); @@ -9852,10 +10435,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba }); addTokens(tokensSet, node, scopedTokens, options); }, - exit(_ref28) { + exit(_ref40) { let { blockParams - } = _ref28; + } = _ref40; blockParams.forEach(() => { scopedTokens.pop(); }); @@ -9867,7 +10450,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba }); let tokens = []; tokensSet.forEach(s => tokens.push(s)); - if (!((_options = options) != null && _options.includeKeywords)) { + if (!((_options2 = options) != null && _options2.includeKeywords)) { tokens = tokens.filter(token => !isKeyword(token)); } return tokens; @@ -10165,7 +10748,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba /** * Returns true if an input {@see ExpressionNode} is a literal. */ - function isLiteral(node, kind) { + function isLiteral$1(node, kind) { if (node.type === 'Literal') { if (kind === undefined) { return true; @@ -10193,6 +10776,14 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba */ class PathExpression extends node('Path').fields() {} + /** + * Corresponds to a known strict-mode keyword. It behaves similarly to a + * PathExpression with a FreeVarReference, but implies StrictResolution and + * is guaranteed to not have a tail, since `{{outlet.foo}}` would have been + * illegal. + */ + class KeywordExpression extends node('Keyword').fields() {} + /** * Corresponds to a parenthesized call expression. * @@ -10205,21 +10796,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba */ class CallExpression extends node('Call').fields() {} - /** - * Corresponds to a possible deprecated helper call. Must be: - * - * 1. A free variable (not this.foo, not @foo, not local). - * 2. Argument-less. - * 3. In a component invocation's named argument position. - * 4. Not parenthesized (not @bar={{(helper)}}). - * 5. Not interpolated (not @bar="{{helper}}"). - * - * ```hbs - * - * ``` - */ - class DeprecatedCallExpression extends node('DeprecatedCall').fields() {} - /** * Corresponds to an interpolation in attribute value position. * @@ -10298,14 +10874,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * * 1. Strict resolution * 2. Namespaced resolution - * 3. Fallback resolution */ /** * Strict resolution is used: * * 1. in a strict mode template - * 2. in an unambiguous invocation with dot paths + * 2. in an local variable invocation with dot paths */ const STRICT_RESOLUTION = { resolution: () => _wireFormat.SexpOpcodes.GetStrictKeyword, @@ -10321,13 +10896,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } /** - * A `LooseModeResolution` includes: - * - * - 0 or more namespaces to resolve the variable in - * - optional fallback behavior + * A `LooseModeResolution` includes one or more namespaces to resolve the variable in * * In practice, there are a limited number of possible combinations of these degrees of freedom, - * and they are captured by the `Ambiguity` union below. + * and they are captured by the `Namespaces` union below. */ class LooseModeResolution { /** @@ -10337,166 +10909,78 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * 2. `{{#block}}` (namespace: `Component`) * 3. `` (namespace: `Modifier`) * 4. `` (namespace: `Component`) - * - * @see {NamespacedAmbiguity} */ static namespaced(namespace, isAngleBracket) { if (isAngleBracket === void 0) { isAngleBracket = false; } - return new LooseModeResolution({ - namespaces: [namespace], - fallback: false - }, isAngleBracket); - } - - /** - * Fallback resolution is used when no namespaced resolutions are possible, but fallback - * resolution is still allowed. - * - * ```hbs - * {{x.y}} - * ``` - * - * @see {FallbackAmbiguity} - */ - static fallback() { - return new LooseModeResolution({ - namespaces: [], - fallback: true - }); + return new LooseModeResolution([namespace], isAngleBracket); } /** * Append resolution is used when the variable should be resolved in both the `component` and - * `helper` namespaces. Fallback resolution is optional. + * `helper` namespaces. * * ```hbs * {{x}} * ``` * - * ^ `x` should be resolved in the `component` and `helper` namespaces with fallback resolution. - * * ```hbs * {{x y}} * ``` * - * ^ `x` should be resolved in the `component` and `helper` namespaces without fallback - * resolution. - * - * @see {ComponentOrHelperAmbiguity} + * ^ In either case, `x` should be resolved in the `component` and `helper` namespaces. */ - static append(_ref29) { - let { - invoke - } = _ref29; - return new LooseModeResolution({ - namespaces: [FreeVarNamespace.Component, FreeVarNamespace.Helper], - fallback: !invoke - }); + static append() { + return new LooseModeResolution([FreeVarNamespace.Component, FreeVarNamespace.Helper]); } /** - * Trusting append resolution is used when the variable should be resolved in both the `component` and - * `helper` namespaces. Fallback resolution is optional. + * Trusting append resolution is used when the variable should be resolved only in the + * `helper` namespaces. * * ```hbs * {{{x}}} * ``` * - * ^ `x` should be resolved in the `component` and `helper` namespaces with fallback resolution. - * * ```hbs * {{{x y}}} * ``` * - * ^ `x` should be resolved in the `component` and `helper` namespaces without fallback - * resolution. - * - * @see {HelperAmbiguity} - */ - static trustingAppend(_ref30) { - let { - invoke - } = _ref30; - return new LooseModeResolution({ - namespaces: [FreeVarNamespace.Helper], - fallback: !invoke - }); - } - - /** - * Attribute resolution is used when the variable should be resolved as a `helper` with fallback - * resolution. - * - * ```hbs - * - * - * ``` - * - * ^ resolved in the `helper` namespace with fallback - * - * @see {HelperAmbiguity} + * ^ In either case, `x` should be resolved in the `helper` namespace. */ - static attr() { - return new LooseModeResolution({ - namespaces: [FreeVarNamespace.Helper], - fallback: true - }); + static trustingAppend() { + return this.namespaced(FreeVarNamespace.Helper); } - constructor(ambiguity, isAngleBracket) { + constructor(namespaces, isAngleBracket) { if (isAngleBracket === void 0) { isAngleBracket = false; } - this.ambiguity = ambiguity; + this.namespaces = namespaces; this.isAngleBracket = isAngleBracket; } resolution() { - if (this.ambiguity.namespaces.length === 0) { - return _wireFormat.SexpOpcodes.GetStrictKeyword; - } else if (this.ambiguity.namespaces.length === 1) { - if (this.ambiguity.fallback) { - // simple namespaced resolution with fallback must be attr={{x}} - return _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback; - } else { - // simple namespaced resolution without fallback - switch (this.ambiguity.namespaces[0]) { - case FreeVarNamespace.Helper: - return _wireFormat.SexpOpcodes.GetFreeAsHelperHead; - case FreeVarNamespace.Modifier: - return _wireFormat.SexpOpcodes.GetFreeAsModifierHead; - case FreeVarNamespace.Component: - return _wireFormat.SexpOpcodes.GetFreeAsComponentHead; - } + if (this.namespaces.length === 1) { + switch (this.namespaces[0]) { + case FreeVarNamespace.Helper: + return _wireFormat.SexpOpcodes.GetFreeAsHelperHead; + case FreeVarNamespace.Modifier: + return _wireFormat.SexpOpcodes.GetFreeAsModifierHead; + case FreeVarNamespace.Component: + return _wireFormat.SexpOpcodes.GetFreeAsComponentHead; } - } else if (this.ambiguity.fallback) { - // component or helper + fallback ({{something}}) - return _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback; } else { - // component or helper without fallback ({{something something}}) return _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead; } } serialize() { - if (this.ambiguity.namespaces.length === 0) { - return 'Loose'; - } else if (this.ambiguity.namespaces.length === 1) { - if (this.ambiguity.fallback) { - // simple namespaced resolution with fallback must be attr={{x}} - return ['ambiguous', SerializedAmbiguity.Attr]; - } else { - return ['ns', this.ambiguity.namespaces[0]]; - } - } else if (this.ambiguity.fallback) { - // component or helper + fallback ({{something}}) - return ['ambiguous', SerializedAmbiguity.Append]; + if (this.namespaces.length === 1) { + return this.namespaces[0]; } else { - // component or helper without fallback ({{something something}}) - return ['ambiguous', SerializedAmbiguity.Invoke]; + return 'ComponentOrHelper'; } } } - const ARGUMENT_RESOLUTION = LooseModeResolution.fallback(); let FreeVarNamespace = /*#__PURE__*/function (FreeVarNamespace) { FreeVarNamespace["Helper"] = "Helper"; FreeVarNamespace["Modifier"] = "Modifier"; @@ -10508,91 +10992,40 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba const COMPONENT_NAMESPACE = FreeVarNamespace.Component; /** - * A `ComponentOrHelperAmbiguity` might be a component or a helper, with an optional fallback - * - * ```hbs - * {{x}} - * ``` - * - * ^ `x` is resolved in the `component` and `helper` namespaces, with fallback - * - * ```hbs - * {{x y}} - * ``` - * - * ^ `x` is resolved in the `component` and `helper` namespaces, without fallback - */ - - /** - * A `HelperAmbiguity` must be a helper, but it has fallback. If it didn't have fallback, it would - * be a `NamespacedAmbiguity`. - * - * ```hbs - * - * - * ``` - * - * ^ `x` is resolved in the `helper` namespace with fallback - */ - - /** - * A `NamespacedAmbiguity` must be resolved in a particular namespace, without fallback. + * A `Namespaced` must be resolved in one or more namespaces. * * ```hbs * * ``` * - * ^ `X` is resolved in the `component` namespace without fallback + * ^ `X` is resolved in the `component` namespace * * ```hbs * (x) * ``` * - * ^ `x` is resolved in the `helper` namespace without fallback + * ^ `x` is resolved in the `helper` namespace * * ```hbs * * ``` * - * ^ `x` is resolved in the `modifier` namespace without fallback + * ^ `x` is resolved in the `modifier` namespace */ + // Serialization - var SerializedAmbiguity = /*#__PURE__*/function (SerializedAmbiguity) { - SerializedAmbiguity["Append"] = "Append"; - SerializedAmbiguity["Attr"] = "Attr"; - SerializedAmbiguity["Invoke"] = "Invoke"; - return SerializedAmbiguity; - }(SerializedAmbiguity || {}); + function loadResolution(resolution) { - if (typeof resolution === 'string') { - switch (resolution) { - case 'Loose': - return LooseModeResolution.fallback(); - case 'Strict': - return STRICT_RESOLUTION; - } - } - switch (resolution[0]) { - case 'ambiguous': - switch (resolution[1]) { - case SerializedAmbiguity.Append: - return LooseModeResolution.append({ - invoke: false - }); - case SerializedAmbiguity.Attr: - return LooseModeResolution.attr(); - case SerializedAmbiguity.Invoke: - return LooseModeResolution.append({ - invoke: true - }); - } - case 'ns': - return LooseModeResolution.namespaced(resolution[1]); + if (resolution === 'Strict') { + return STRICT_RESOLUTION; + } else if (resolution === 'ComponentOrHelper') { + return LooseModeResolution.append(); + } else { + return LooseModeResolution.namespaced(resolution); } } var api$1 = _exports.ASTv2 = /*#__PURE__*/Object.freeze({ __proto__: null, - ARGUMENT_RESOLUTION: ARGUMENT_RESOLUTION, AppendContent: AppendContent, ArgReference: ArgReference, Args: Args, @@ -10600,7 +11033,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba COMPONENT_NAMESPACE: COMPONENT_NAMESPACE, CallExpression: CallExpression, ComponentArg: ComponentArg, - DeprecatedCallExpression: DeprecatedCallExpression, ElementModifier: ElementModifier, FreeVarNamespace: FreeVarNamespace, FreeVarReference: FreeVarReference, @@ -10613,6 +11045,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba InterpolateExpression: InterpolateExpression, InvokeBlock: InvokeBlock, InvokeComponent: InvokeComponent, + KeywordExpression: KeywordExpression, LiteralExpression: LiteralExpression, LocalVarReference: LocalVarReference, LooseModeResolution: LooseModeResolution, @@ -10628,14 +11061,14 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba SplatAttr: SplatAttr, Template: Template, ThisReference: ThisReference, - isLiteral: isLiteral, + isLiteral: isLiteral$1, isStrictResolution: isStrictResolution, loadResolution: loadResolution, node: node }); class SymbolTable { - static top(locals, options) { - return new ProgramSymbolTable(locals, options); + static top(locals, keywords, options) { + return new ProgramSymbolTable(locals, keywords, options); } child(locals) { let symbols = locals.map(name => this.allocate(name)); @@ -10645,7 +11078,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba _exports.SymbolTable = SymbolTable; var _hasDebugger = /*#__PURE__*/(0, _emberBabel.classPrivateFieldLooseKey)("hasDebugger"); class ProgramSymbolTable extends SymbolTable { - constructor(templateLocals, options) { + constructor(templateLocals, keywords, options) { super(); this.symbols = []; this.upvars = []; @@ -10658,13 +11091,17 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba value: false }); this.templateLocals = templateLocals; + this.keywords = keywords; this.options = options; } hasLexical(name) { return this.options.lexicalScope(name); } - getLexical(name) { - return this.allocateFree(name, HTML_RESOLUTION); + hasKeyword(name) { + return this.keywords.includes(name); + } + getKeyword(name) { + return this.allocateFree(name, STRICT_RESOLUTION); } getUsedTemplateLocals() { return this.usedTemplateLocals; @@ -10744,12 +11181,15 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba get locals() { return this.symbols; } - getLexical(name) { - return this.parent.getLexical(name); - } hasLexical(name) { return this.parent.hasLexical(name); } + getKeyword(name) { + return this.parent.getKeyword(name); + } + hasKeyword(name) { + return this.parent.hasKeyword(name); + } has(name) { return this.symbols.indexOf(name) !== -1 || this.parent.has(name); } @@ -10859,12 +11299,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba entries }); } - attr(_ref31, loc) { + attr(_ref41, loc) { let { name, value, trusting - } = _ref31; + } = _ref41; return new HtmlAttr({ loc, name, @@ -10878,12 +11318,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }); } - arg(_ref32, loc) { + arg(_ref42, loc) { let { name, value, trusting - } = _ref32; + } = _ref42; return new ComponentArg({ name, value, @@ -10901,6 +11341,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba tail }); } + keyword(name, symbol, loc) { + return new KeywordExpression({ + loc, + name, + symbol + }); + } self(loc) { return new ThisReference({ loc @@ -10918,13 +11365,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba symbol }); } - freeVar(_ref33) { + freeVar(_ref43) { let { name, context, symbol, loc - } = _ref33; + } = _ref43; (0, _util.assert)(name !== 'this', "You called builders.freeVar() with 'this'. Call builders.this instead"); (0, _util.assert)(name[0] !== '@', "You called builders.freeVar() with '" + name + "'. Call builders.at('" + name + "') instead"); return new FreeVarReference({ @@ -10951,13 +11398,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba args: parts.args }); } - deprecatedCall(arg, callee, loc) { - return new DeprecatedCallExpression({ - loc, - arg, - callee - }); - } interpolate(parts, loc) { (0, _util.assertPresentArray)(parts); return new InterpolateExpression({ @@ -10974,12 +11414,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // STATEMENTS // - append(_ref34, loc) { + append(_ref44, loc) { let { table, trusting, value - } = _ref34; + } = _ref44; return new AppendContent({ table, trusting, @@ -10987,11 +11427,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }); } - modifier(_ref35, loc) { + modifier(_ref45, loc) { let { callee, args - } = _ref35; + } = _ref45; return new ElementModifier({ loc, callee, @@ -11004,12 +11444,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba blocks }); } - blockStatement(_ref36, loc) { + blockStatement(_ref46, loc) { let { program, inverse = null, ...call - } = _ref36; + } = _ref46; let blocksLoc = program.loc; let blocks = [this.namedBlock(SourceSlice.synthetic('default'), program, program.loc)]; if (inverse) { @@ -11099,50 +11539,43 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if (isSimpleCallee(node)) { return LooseModeResolution.namespaced(COMPONENT_NAMESPACE); } else { - return LooseModeResolution.fallback(); + return null; } } function ComponentSyntaxContext(node) { if (isSimplePath(node)) { - return LooseModeResolution.namespaced(FreeVarNamespace.Component, true); + return LooseModeResolution.namespaced(COMPONENT_NAMESPACE, true); } else { return null; } } /** - * This corresponds to append positions (text curlies or attribute - * curlies). In strict mode, this also corresponds to arg curlies. + * This corresponds to attribute curlies (). + * In strict mode, this also corresponds to arg curlies. */ function AttrValueSyntaxContext(node) { - let isSimple = isSimpleCallee(node); - let isInvoke = isInvokeNode(node); - if (isSimple) { - return isInvoke ? LooseModeResolution.namespaced(FreeVarNamespace.Helper) : LooseModeResolution.attr(); + if (isSimpleCallee(node)) { + return LooseModeResolution.namespaced(HELPER_NAMESPACE); } else { - return isInvoke ? STRICT_RESOLUTION : LooseModeResolution.fallback(); + return null; } } /** - * This corresponds to append positions (text curlies or attribute - * curlies). In strict mode, this also corresponds to arg curlies. + * This corresponds to append positions text curlies. */ function AppendSyntaxContext(node) { let isSimple = isSimpleCallee(node); - let isInvoke = isInvokeNode(node); let trusting = node.trusting; if (isSimple) { - return trusting ? LooseModeResolution.trustingAppend({ - invoke: isInvoke - }) : LooseModeResolution.append({ - invoke: isInvoke - }); + return trusting ? LooseModeResolution.trustingAppend() : LooseModeResolution.append(); } else { - return LooseModeResolution.fallback(); + return null; } } // UTILITIES + /** * A call node has a simple callee if its head is: * @@ -11169,8 +11602,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * ``` */ function isSimpleCallee(node) { - let path = node.path; - return isSimplePath(path); + return isSimplePath(node.path); } function isSimplePath(node) { if (node.type === 'PathExpression' && node.head.type === 'VarHead') { @@ -11179,15 +11611,8 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return false; } } - - /** - * The call expression has at least one argument. - */ - function isInvokeNode(node) { - return node.params.length > 0 || node.hash.pairs.length > 0; - } function normalize(source, options) { - var _options$customizeCom; + var _options$keywords, _options$customizeCom; if (options === void 0) { options = { lexicalScope: () => false @@ -11196,10 +11621,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba let ast = preprocess(source, options); let normalizeOptions = { strictMode: false, - locals: [], - ...options + ...options, + locals: ast.blockParams, + keywords: (_options$keywords = options.keywords) != null ? _options$keywords : [] }; - let top = SymbolTable.top(normalizeOptions.locals, { + let top = SymbolTable.top(normalizeOptions.locals, normalizeOptions.keywords, { customizeComponentName: (_options$customizeCom = options.customizeComponentName) != null ? _options$customizeCom : name => name, lexicalScope: options.lexicalScope }); @@ -11262,6 +11688,9 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba isLexicalVar(variable) { return this.table.hasLexical(variable); } + isKeyword(name) { + return this.strict && !this.table.hasLexical(name) && this.table.hasKeyword(name); + } isFreeVar(callee) { if (callee.type === 'PathExpression') { if (callee.head.type !== 'VarHead') { @@ -11315,9 +11744,14 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba case 'UndefinedLiteral': return this.block.builder.literal(expr.value, this.block.loc(expr.loc)); case 'PathExpression': + (0, _util.assert)(resolution, '[BUG] resolution is required'); return this.path(expr, resolution); case 'SubExpression': { + // expr.path used to incorrectly have the type ASTv1.Expression + if (isLiteral(expr.path)) { + assertIllegalLiteral(expr.path, expr.loc); + } let resolution = this.block.resolutionFor(expr, SexpSyntaxContext); if (resolution.result === 'error') { throw generateSyntaxError("You attempted to invoke a path (`" + resolution.path + "`) but " + resolution.head + " was not in scope", expr.loc); @@ -11327,6 +11761,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } } path(expr, resolution) { + let loc = this.block.loc(expr.loc); + if (expr.head.type === 'VarHead' && expr.tail.length === 0 && this.block.isKeyword(expr.head.name)) { + return this.block.builder.keyword(expr.head.name, this.block.table.getKeyword(expr.head.name), loc); + } let headOffsets = this.block.loc(expr.head.loc); let tail = []; @@ -11342,7 +11780,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba chars: part })); } - return this.block.builder.path(this.ref(expr.head, resolution), tail, this.block.loc(expr.loc)); + return this.block.builder.path(this.ref(expr.head, resolution), tail, loc); } /** @@ -11353,15 +11791,24 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba let { path, params, - hash + hash, + loc } = parts; let callee = this.normalize(path, context); - let paramList = params.map(p => this.normalize(p, ARGUMENT_RESOLUTION)); + let paramList = params.map(p => this.normalize(p, STRICT_RESOLUTION)); let paramLoc = SpanList.range(paramList, callee.loc.collapse('end')); let namedLoc = this.block.loc(hash.loc); let argsLoc = SpanList.range([paramLoc, namedLoc]); - let positional = this.block.builder.positional(params.map(p => this.normalize(p, ARGUMENT_RESOLUTION)), paramLoc); + let positional = this.block.builder.positional(params.map(p => this.normalize(p, STRICT_RESOLUTION)), paramLoc); let named = this.block.builder.named(hash.pairs.map(p => this.namedArgument(p)), this.block.loc(hash.loc)); + switch (callee.type) { + case 'Literal': + throw generateSyntaxError("Invalid invocation of a literal value (`" + callee.value + "`)", loc); + + // This really shouldn't be possible, something has gone pretty wrong + case 'Interpolate': + throw generateSyntaxError("Invalid invocation of a interpolated string", loc); + } return { callee, args: this.block.builder.args(positional, named, argsLoc) @@ -11375,7 +11822,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return this.block.builder.namedArgument(new SourceSlice({ chars: pair.key, loc: keyOffsets - }), this.normalize(pair.value, ARGUMENT_RESOLUTION)); + }), this.normalize(pair.value, STRICT_RESOLUTION)); } /** @@ -11434,8 +11881,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } normalize(node) { switch (node.type) { - case 'PartialStatement': - throw new Error("Handlebars partial syntax ({{> ...}}) is not allowed in Glimmer"); case 'BlockStatement': return this.BlockStatement(node); case 'ElementNode': @@ -11489,20 +11934,37 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba */ MustacheStatement(mustache) { let { - escaped + path, + params, + hash, + trusting } = mustache; let loc = this.block.loc(mustache.loc); + let value; + if (isLiteral(path)) { + if (params.length === 0 && hash.pairs.length === 0) { + value = this.expr.normalize(path); + } else { + assertIllegalLiteral(path, loc); + } + } else { + let resolution = this.block.resolutionFor(mustache, AppendSyntaxContext); + if (resolution.result === 'error') { + throw generateSyntaxError("You attempted to render a path (`{{" + resolution.path + "}}`), but " + resolution.head + " was not in scope", loc); + } - // Normalize the call parts in AppendSyntaxContext - let callParts = this.expr.callParts({ - path: mustache.path, - params: mustache.params, - hash: mustache.hash - }, AppendSyntaxContext(mustache)); - let value = callParts.args.isEmpty() ? callParts.callee : this.block.builder.sexp(callParts, loc); + // Normalize the call parts in AppendSyntaxContext + let callParts = this.expr.callParts({ + path, + params, + hash, + loc + }, resolution.result); + value = callParts.args.isEmpty() ? callParts.callee : this.block.builder.sexp(callParts, loc); + } return this.block.builder.append({ table: this.block.table, - trusting: !escaped, + trusting, value }, loc); } @@ -11516,6 +11978,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba inverse } = block; let loc = this.block.loc(block.loc); + + // block.path used to incorrectly have the type ASTv1.Expression + if (isLiteral(block.path)) { + assertIllegalLiteral(block.path, loc); + } let resolution = this.block.resolutionFor(block, BlockSyntaxContext); if (resolution.result === 'error') { throw generateSyntaxError("You attempted to invoke a path (`{{#" + resolution.path + "}}`) but " + resolution.head + " was not in scope", loc); @@ -11527,12 +11994,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba inverse: inverse ? this.Block(inverse) : null }, callParts), loc); } - Block(_ref37) { + Block(_ref47) { let { body, loc, blockParams - } = _ref37; + } = _ref47; let child = this.block.child(blockParams); let normalizer = new StatementNormalizer(child); return new BlockChildren(this.block.loc(loc), body.map(b => normalizer.normalize(b)), this.block).assertBlock(child.table); @@ -11609,9 +12076,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } } modifier(m) { + // modifier.path used to incorrectly have the type ASTv1.Expression + if (isLiteral(m.path)) { + assertIllegalLiteral(m.path, m.loc); + } let resolution = this.ctx.resolutionFor(m, ModifierSyntaxContext); if (resolution.result === 'error') { - throw generateSyntaxError("You attempted to invoke a path (`{{#" + resolution.path + "}}`) as a modifier, but " + resolution.head + " was not in scope. Try adding `this` to the beginning of the path", m.loc); + throw generateSyntaxError("You attempted to invoke a path (`{{" + resolution.path + "}}`) as a modifier, but " + resolution.head + " was not in scope", m.loc); } let callParts = this.expr.callParts(m, resolution.result); return this.ctx.builder.modifier(callParts, this.ctx.loc(m.loc)); @@ -11627,8 +12098,26 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * ``` */ mustacheAttr(mustache) { + let { + path, + params, + hash, + loc + } = mustache; + if (isLiteral(path)) { + if (params.length === 0 && hash.pairs.length === 0) { + return this.expr.normalize(path); + } else { + assertIllegalLiteral(path, loc); + } + } + // Normalize the call parts in AttrValueSyntaxContext - let sexp = this.ctx.builder.sexp(this.expr.callParts(mustache, AttrValueSyntaxContext(mustache)), this.ctx.loc(mustache.loc)); + let resolution = this.ctx.resolutionFor(mustache, AttrValueSyntaxContext); + if (resolution.result === 'error') { + throw generateSyntaxError("You attempted to render a path (`{{" + resolution.path + "}}`), but " + resolution.head + " was not in scope", mustache.loc); + } + let sexp = this.ctx.builder.sexp(this.expr.callParts(mustache, resolution.result), this.ctx.loc(mustache.loc)); // If there are no params or hash, just return the function part as its own expression if (sexp.args.isEmpty()) { @@ -11647,7 +12136,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba case 'MustacheStatement': return { expr: this.mustacheAttr(part), - trusting: !part.escaped + trusting: part.trusting }; case 'TextNode': return { @@ -11686,56 +12175,46 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba trusting: value.trusting }, offsets); } - maybeDeprecatedCall(arg, part) { - if (this.ctx.strict) { - return null; + + // An arg curly is the same as an attribute curly for + // our purposes, except that in loose mode is an error: + checkArgCall(arg) { + let { + value + } = arg; + if (value.type !== 'MustacheStatement') { + return; } - if (part.type !== 'MustacheStatement') { - return null; + if (value.params.length !== 0 || value.hash.pairs.length !== 0) { + return; } let { path - } = part; + } = value; if (path.type !== 'PathExpression') { - return null; - } - if (path.head.type !== 'VarHead') { - return null; - } - let { - name - } = path.head; - if (name === 'has-block' || name === 'has-block-params') { - return null; - } - if (this.ctx.hasBinding(name)) { - return null; + return; } - if (path.tail.length !== 0) { - return null; + if (path.tail.length > 0) { + return; } - if (part.params.length !== 0 || part.hash.pairs.length !== 0) { + let resolution = this.ctx.resolutionFor(path, () => { + // We deliberately don't want this to resolve anything. The purpose of + // calling `resolutionFor` here is to check for strict mode, in-scope + // local variables, etc. return null; - } - let context = LooseModeResolution.attr(); - let callee = this.ctx.builder.freeVar({ - name, - context, - symbol: this.ctx.table.allocateFree(name, context), - loc: path.loc }); - return { - expr: this.ctx.builder.deprecatedCall(arg, callee, part.loc), - trusting: false - }; + if (resolution.result === 'error' && resolution.path !== 'has-block') { + throw generateSyntaxError("You attempted to pass a path as argument (`" + arg.name + "={{" + resolution.path + "}}`) but " + resolution.head + " was not in scope. Try:\n" + ("* `" + arg.name + "={{this." + resolution.path + "}}` if this is meant to be a property lookup, or\n") + ("* `" + arg.name + "={{(" + resolution.path + ")}}` if this is meant to invoke the resolved helper, or\n") + ("* `" + arg.name + "={{helper \"" + resolution.path + "\"}}` if this is meant to pass the resolved helper by value"), arg.loc); + } } arg(arg) { (0, _util.assert)(arg.name[0] === '@', 'An arg name must start with `@`'); + this.checkArgCall(arg); let offsets = this.ctx.loc(arg.loc); let nameSlice = offsets.sliceStartChars({ chars: arg.name.length }).toSlice(arg.name); - let value = this.maybeDeprecatedCall(nameSlice, arg.value) || this.attrValue(arg.value); + let value = this.attrValue(arg.value); return this.ctx.builder.arg({ name: nameSlice, value: value.expr, @@ -11783,7 +12262,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba let pathLoc = variableLoc.withEnd(pathEnd); if (isComponent) { let path = b.path({ - head: b.head(variable, variableLoc), + head: b.head({ + original: variable, + loc: variableLoc + }), tail, loc: pathLoc }); @@ -11874,7 +12356,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } assertElement(name, hasBlockParams) { if (hasBlockParams) { - throw generateSyntaxError("Unexpected block params in <" + name + ">: simple elements cannot have block params", this.loc); + throw generateSyntaxError("Unexpected block params in <" + name.chars + ">: simple elements cannot have block params", this.loc); } if ((0, _util.isPresentArray)(this.namedBlocks)) { let names = this.namedBlocks.map(b => b.name); @@ -11912,6 +12394,22 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } } } + function isLiteral(node) { + switch (node.type) { + case 'StringLiteral': + case 'BooleanLiteral': + case 'NumberLiteral': + case 'UndefinedLiteral': + case 'NullLiteral': + return true; + default: + return false; + } + } + function assertIllegalLiteral(node, loc) { + let value = node.type === 'StringLiteral' ? JSON.stringify(node.value) : String(node.value); + throw generateSyntaxError("Unexpected literal `" + value + "`", loc); + } function printPath(node) { if (node.type !== 'PathExpression' && node.path.type === 'PathExpression') { return printPath(node.path); @@ -11923,13 +12421,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } function printHead(node) { if (node.type === 'PathExpression') { - switch (node.head.type) { - case 'AtHead': - case 'VarHead': - return node.head.name; - case 'ThisHead': - return 'this'; - } + return node.head.original; } else if (node.path.type === 'PathExpression') { return printHead(node.path); } else { @@ -12419,8 +12911,10 @@ define("@glimmer/util", ["exports"], function (_exports) { // If we don't know what this is, but the check requires it to be an element, // the cast will mandate that it's a browser element + // Finally, if it's a more generic check, the cast will mandate that it's a // browser node and return a BrowserNodeUtils corresponding to the check + function castToBrowser(node, sugaryCheck) { if (node === null || node === undefined) { return null; @@ -12837,17 +13331,13 @@ define("@glimmer/wire-format", ["exports"], function (_exports) { GetSymbol: 30, GetLexicalSymbol: 32, GetStrictKeyword: 31, - GetFreeAsComponentOrHelperHeadOrThisFallback: 34, GetFreeAsComponentOrHelperHead: 35, - GetFreeAsHelperHeadOrThisFallback: 36, - GetFreeAsDeprecatedHelperHeadOrThisFallback: 99, GetFreeAsHelperHead: 37, GetFreeAsModifierHead: 38, GetFreeAsComponentHead: 39, InElement: 40, If: 41, Each: 42, - With: 43, Let: 44, WithDynamicVars: 45, InvokeComponent: 46, @@ -12864,10 +13354,8 @@ define("@glimmer/wire-format", ["exports"], function (_exports) { const resolution = _exports.VariableResolutionContext = { Strict: 0, - AmbiguousAppend: 1, - AmbiguousAppendInvoke: 2, - AmbiguousInvoke: 3, - ResolveAsCallHead: 5, + ResolveAsComponentOrHelperHead: 1, + ResolveAsHelperHead: 5, ResolveAsModifierHead: 6, ResolveAsComponentHead: 7 }; @@ -14592,7 +15080,6 @@ define("@handlebars/parser/index", ["exports"], function (_exports) { } return false; // rule action called reject() implying the next rule should be tested instead. } - return false; }, // return next match in input @@ -15489,7 +15976,15 @@ define("ember-template-compiler/lib/plugins/assert-against-attrs", ["exports", " return { name: 'assert-against-attrs', visitor: { - Program: { + Template: { + enter(node) { + updateBlockParamsStack(node.blockParams); + }, + exit() { + stack.pop(); + } + }, + Block: { enter(node) { updateBlockParamsStack(node.blockParams); }, @@ -15507,26 +16002,34 @@ define("ember-template-compiler/lib/plugins/assert-against-attrs", ["exports", " }, PathExpression(node) { if (isAttrs(node, stack[stack.length - 1])) { - let path = b.path(node.original.substring(6)); - (true && !(node.this !== false) && (0, _debug.assert)("Using {{attrs}} to reference named arguments is not supported. {{attrs." + path.original + "}} should be updated to {{@" + path.original + "}}. " + (0, _calculateLocationDisplay.default)(moduleName, node.loc), node.this !== false)); + (true && !(false) && (0, _debug.assert)("Using {{attrs}} to reference named arguments is not supported. {{" + node.original + "}} should be updated to {{@" + node.original.slice(6) + "}}. " + (0, _calculateLocationDisplay.default)(moduleName, node.loc))); + } else if (isThisDotAttrs(node)) { + // When removing this, ensure `{{this.attrs.foo}}` is left as-is, without triggering + // any assertions/deprecations. It's perfectly legal to reference `{{this.attrs.foo}}` + // in the template since it is a real property on the backing class – it will give you + // a `MutableCell` wrapper object, but maybe that's what you want. And in any case, + // there is no compelling to special case that property access. + (true && !(false) && (0, _debug.deprecate)("Using {{this.attrs}} to reference named arguments has been deprecated. {{" + node.original + "}} should be updated to {{@" + node.original.slice(11) + "}}. " + (0, _calculateLocationDisplay.default)(moduleName, node.loc), false, { + id: 'attrs-arg-access', + url: 'https://deprecations.emberjs.com/v3.x/#toc_attrs-arg-access', + until: '6.0.0', + for: 'ember-source', + since: { + available: '3.26.0', + enabled: '3.26.0' + } + })); + return b.path("@" + node.original.slice(11), node.loc); } } } }; } function isAttrs(node, symbols) { - let name = node.parts[0]; - if (name && symbols.indexOf(name) !== -1) { - return false; - } - if (name === 'attrs') { - if (node.this === true) { - node.parts.shift(); - node.original = node.original.slice(5); - } - return true; - } - return false; + return node.head.type === 'VarHead' && node.head.name === 'attrs' && symbols.indexOf(node.head.name) === -1; + } + function isThisDotAttrs(node) { + return node.head.type === 'ThisHead' && node.tail[0] === 'attrs'; } }); define("ember-template-compiler/lib/plugins/assert-against-named-outlets", ["exports", "@ember/debug", "ember-template-compiler/lib/system/calculate-location-display"], function (_exports, _debug, _calculateLocationDisplay) { @@ -15642,48 +16145,25 @@ define("ember-template-compiler/lib/plugins/assert-reserved-named-arguments", [" return "'" + name + "' is reserved."; } }); -define("ember-template-compiler/lib/plugins/assert-splattribute-expression", ["exports", "@ember/debug", "ember-template-compiler/lib/system/calculate-location-display"], function (_exports, _debug, _calculateLocationDisplay) { - "use strict"; - - Object.defineProperty(_exports, "__esModule", { - value: true - }); - _exports.default = assertSplattributeExpressions; - function assertSplattributeExpressions(env) { - var _env$meta; - let moduleName = (_env$meta = env.meta) == null ? void 0 : _env$meta.moduleName; - return { - name: 'assert-splattribute-expressions', - visitor: { - PathExpression(_ref) { - let { - original, - loc - } = _ref; - if (original === '...attributes') { - (true && !(false) && (0, _debug.assert)(errorMessage() + " " + (0, _calculateLocationDisplay.default)(moduleName, loc))); - } - } - } - }; - } - function errorMessage() { - return '`...attributes` can only be used in the element position e.g. `
`. It cannot be used as a path.'; - } -}); -define("ember-template-compiler/lib/plugins/index", ["exports", "ember-template-compiler/lib/plugins/assert-against-attrs", "ember-template-compiler/lib/plugins/assert-against-named-outlets", "ember-template-compiler/lib/plugins/assert-input-helper-without-block", "ember-template-compiler/lib/plugins/assert-reserved-named-arguments", "ember-template-compiler/lib/plugins/assert-splattribute-expression", "ember-template-compiler/lib/plugins/transform-action-syntax", "ember-template-compiler/lib/plugins/transform-each-in-into-each", "ember-template-compiler/lib/plugins/transform-each-track-array", "ember-template-compiler/lib/plugins/transform-in-element", "ember-template-compiler/lib/plugins/transform-quoted-bindings-into-just-bindings", "ember-template-compiler/lib/plugins/transform-resolutions", "ember-template-compiler/lib/plugins/transform-wrap-mount-and-outlet"], function (_exports, _assertAgainstAttrs, _assertAgainstNamedOutlets, _assertInputHelperWithoutBlock, _assertReservedNamedArguments, _assertSplattributeExpression, _transformActionSyntax, _transformEachInIntoEach, _transformEachTrackArray, _transformInElement, _transformQuotedBindingsIntoJustBindings, _transformResolutions, _transformWrapMountAndOutlet) { +define("ember-template-compiler/lib/plugins/index", ["exports", "ember-template-compiler/lib/plugins/assert-against-attrs", "ember-template-compiler/lib/plugins/assert-against-named-outlets", "ember-template-compiler/lib/plugins/assert-input-helper-without-block", "ember-template-compiler/lib/plugins/assert-reserved-named-arguments", "ember-template-compiler/lib/plugins/transform-action-syntax", "ember-template-compiler/lib/plugins/transform-each-in-into-each", "ember-template-compiler/lib/plugins/transform-each-track-array", "ember-template-compiler/lib/plugins/transform-in-element", "ember-template-compiler/lib/plugins/transform-quoted-bindings-into-just-bindings", "ember-template-compiler/lib/plugins/transform-resolutions", "ember-template-compiler/lib/plugins/transform-wrap-mount-and-outlet"], function (_exports, _assertAgainstAttrs, _assertAgainstNamedOutlets, _assertInputHelperWithoutBlock, _assertReservedNamedArguments, _transformActionSyntax, _transformEachInIntoEach, _transformEachTrackArray, _transformInElement, _transformQuotedBindingsIntoJustBindings, _transformResolutions, _transformWrapMountAndOutlet) { "use strict"; Object.defineProperty(_exports, "__esModule", { value: true }); - _exports.STRICT_MODE_TRANSFORMS = _exports.RESOLUTION_MODE_TRANSFORMS = void 0; + _exports.STRICT_MODE_TRANSFORMS = _exports.STRICT_MODE_KEYWORDS = _exports.RESOLUTION_MODE_TRANSFORMS = void 0; // order of plugins is important - const RESOLUTION_MODE_TRANSFORMS = _exports.RESOLUTION_MODE_TRANSFORMS = Object.freeze([_transformQuotedBindingsIntoJustBindings.default, _assertReservedNamedArguments.default, _transformActionSyntax.default, _assertAgainstAttrs.default, _transformEachInIntoEach.default, _assertInputHelperWithoutBlock.default, _transformInElement.default, _assertSplattributeExpression.default, _transformEachTrackArray.default, _assertAgainstNamedOutlets.default, _transformWrapMountAndOutlet.default, _transformResolutions.default].filter(notNull)); - const STRICT_MODE_TRANSFORMS = _exports.STRICT_MODE_TRANSFORMS = Object.freeze([_transformQuotedBindingsIntoJustBindings.default, _assertReservedNamedArguments.default, _transformActionSyntax.default, _transformEachInIntoEach.default, _transformInElement.default, _assertSplattributeExpression.default, _transformEachTrackArray.default, _assertAgainstNamedOutlets.default, _transformWrapMountAndOutlet.default].filter(notNull)); - function notNull(value) { - return value !== null; - } + const RESOLUTION_MODE_TRANSFORMS = _exports.RESOLUTION_MODE_TRANSFORMS = Object.freeze([_transformQuotedBindingsIntoJustBindings.default, _assertReservedNamedArguments.default, _transformActionSyntax.default, _assertAgainstAttrs.default, _transformEachInIntoEach.default, _assertInputHelperWithoutBlock.default, _transformInElement.default, _transformEachTrackArray.default, _assertAgainstNamedOutlets.default, _transformWrapMountAndOutlet.default, _transformResolutions.default]); + const STRICT_MODE_TRANSFORMS = _exports.STRICT_MODE_TRANSFORMS = Object.freeze([_transformQuotedBindingsIntoJustBindings.default, _assertReservedNamedArguments.default, _transformActionSyntax.default, _transformEachInIntoEach.default, _transformInElement.default, _transformEachTrackArray.default, _assertAgainstNamedOutlets.default, _transformWrapMountAndOutlet.default]); + const STRICT_MODE_KEYWORDS = _exports.STRICT_MODE_KEYWORDS = Object.freeze(['action', 'mut', 'readonly', 'unbound', + // TransformEachInIntoEach + '-each-in', + // TransformInElement + '-in-el-null', + // TransformEachTrackArray + '-track-array', + // TransformWrapMountAndOutlet + '-mount', '-outlet']); }); define("ember-template-compiler/lib/plugins/transform-action-syntax", ["exports", "ember-template-compiler/lib/plugins/utils"], function (_exports, _utils) { "use strict"; @@ -16066,7 +16546,7 @@ define("ember-template-compiler/lib/plugins/transform-resolutions", ["exports", }; } function isLocalVariable(node, hasLocal) { - return !node.this && node.parts.length === 1 && hasLocal(node.parts[0]); + return !(node.head.type === 'ThisHead') && node.tail.length === 1 && hasLocal(node.head.original); } function transformParams(b, params, type, moduleName, loc) { let [first, ...rest] = params; @@ -16129,8 +16609,9 @@ define("ember-template-compiler/lib/plugins/transform-wrap-mount-and-outlet", [" return { name: 'transform-wrap-mount-and-outlet', visitor: { - Program: node, + Template: node, ElementNode: node, + Block: node, MustacheStatement(node) { if ((0, _utils.isPath)(node.path) && (node.path.original === 'mount' || node.path.original === 'outlet') && !hasLocal(node.path.original)) { let subexpression = b.sexpr(b.path("-" + node.path.original), node.params, node.hash, node.loc); @@ -16160,22 +16641,33 @@ define("ember-template-compiler/lib/plugins/utils", ["exports"], function (_expo function isStringLiteral(node) { return node.type === 'StringLiteral'; } + function getLocalName(node) { + if (typeof node === 'string') { + return node; + } else { + return node.original; + } + } function trackLocals() { let locals = new Map(); let node = { enter(node) { - for (let param of node.blockParams) { + let params = 'params' in node ? node.params : node.blockParams; + for (let param of params) { + let name = getLocalName(param); let value = locals.get(param) || 0; - locals.set(param, value + 1); + locals.set(name, value + 1); } }, exit(node) { - for (let param of node.blockParams) { - let value = locals.get(param) - 1; + let params = 'params' in node ? node.params : node.blockParams; + for (let param of params) { + let name = getLocalName(param); + let value = locals.get(name) - 1; if (value === 0) { - locals.delete(param); + locals.delete(name); } else { - locals.set(param, value); + locals.set(name, value); } } } @@ -16399,6 +16891,9 @@ define("ember-template-compiler/lib/system/compile-options", ["exports", "@ember (true && !(meta) && (0, _debug.assert)('has meta', meta)); // We just set it meta.moduleName = options.moduleName; } + if (options.strictMode) { + options.keywords = _index.STRICT_MODE_KEYWORDS; + } return options; } function transformsFor(options) { @@ -16577,7 +17072,7 @@ define("ember/version", ["exports"], function (_exports) { value: true }); _exports.default = void 0; - var _default = _exports.default = "5.7.0"; + var _default = _exports.default = "5.10.0-alpha.1+f9cfada9"; }); define("simple-html-tokenizer", ["exports"], function (_exports) { "use strict"; @@ -18843,7 +19338,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeDoctypeName" /* beforeDoctypeName */); } }, - beforeDoctypeName: function () { var char = this.consume(); if (isSpace(char)) { @@ -18890,7 +19384,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { } } }, - afterDoctypePublicKeyword: function () { var char = this.peek(); if (isSpace(char)) { @@ -18908,7 +19401,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeData" /* beforeData */); } }, - doctypePublicIdentifierDoubleQuoted: function () { var char = this.consume(); if (char === '"') { @@ -18944,7 +19436,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("doctypeSystemIdentifierSingleQuoted" /* doctypeSystemIdentifierSingleQuoted */); } }, - betweenDoctypePublicAndSystemIdentifiers: function () { var char = this.consume(); if (isSpace(char)) { @@ -18958,7 +19449,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("doctypeSystemIdentifierSingleQuoted" /* doctypeSystemIdentifierSingleQuoted */); } }, - doctypeSystemIdentifierDoubleQuoted: function () { var char = this.consume(); if (char === '"') { @@ -18990,7 +19480,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeData" /* beforeData */); } }, - commentStart: function () { var char = this.consume(); if (char === '-') { @@ -19003,7 +19492,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("comment" /* comment */); } }, - commentStartDash: function () { var char = this.consume(); if (char === '-') { @@ -19016,7 +19504,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("comment" /* comment */); } }, - comment: function () { var char = this.consume(); if (char === '-') { @@ -19034,7 +19521,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("comment" /* comment */); } }, - commentEnd: function () { var char = this.consume(); if (char === '>') { @@ -19045,7 +19531,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("comment" /* comment */); } }, - tagName: function () { var char = this.consume(); if (isSpace(char)) { @@ -19240,7 +19725,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeAttributeName" /* beforeAttributeName */); } }, - selfClosingStartTag: function () { var char = this.peek(); if (char === '>') { @@ -19252,7 +19736,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeAttributeName" /* beforeAttributeName */); } }, - endTagOpen: function () { var char = this.consume(); if (char === '@' || char === ':' || isAlpha(char)) { @@ -19302,7 +19785,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeData" /* beforeData */); } }; - EventedTokenizer.prototype.peek = function () { return this.input.charAt(this.index); }; diff --git a/ember/ember-5.7.0.prod.js b/ember/ember-git-04-aa913464.prod.js similarity index 86% rename from ember/ember-5.7.0.prod.js rename to ember/ember-git-04-aa913464.prod.js index 14c38a4..693f4b8 100644 --- a/ember/ember-5.7.0.prod.js +++ b/ember/ember-git-04-aa913464.prod.js @@ -33,7 +33,7 @@ if(!r||"new"===r.state)return(r=new s(e,[],a,null)).module.exports=t,r.state="fi * Portions Copyright 2008-2011 Apple Inc. All rights reserved. * @license Licensed under MIT license * See https://raw.github.com/emberjs/ember.js/master/LICENSE - * @version 5.7.0 + * @version 5.10.0-alpha.1+aa913464 */ var e,t;(function(){var r="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:null if(null===r)throw new Error("unable to locate global object") @@ -97,14 +97,19 @@ if(void 0!==r&&void 0!==r[t])return r[t] let n=e.split(":")[0] return r=this._typeOptions[n],r&&void 0!==r[t]?r[t]:null!==this.fallback?this.fallback.getOption(e,t):void 0}knownForType(e){let r,n,i=(0,t.dictionary)(null),o=Object.keys(this.registrations) for(let t of o){t.split(":")[0]===e&&(i[t]=!0)}return null!==this.fallback&&(r=this.fallback.knownForType(e)),null!==this.resolver&&this.resolver.knownForType&&(n=this.resolver.knownForType(e)),Object.assign({},r,i,n)}isValidFullName(e){return h.test(e)}}e.Registry=f -const m=(0,t.dictionary)(null),g=`${Math.random()}${Date.now()}`.replace(".","")})),e("@ember/-internals/environment/index",["exports"],(function(e){"use strict" +const m=(0,t.dictionary)(null),g=`${Math.random()}${Date.now()}`.replace(".","")})),e("@ember/-internals/deprecations/index",["exports","@ember/-internals/environment","@ember/version","@ember/debug"],(function(e,t,r,n){"use strict" +function i(e){return Object.hasOwnProperty.call(e.since,"enabled")||t.ENV._ALL_DEPRECATIONS_ENABLED}Object.defineProperty(e,"__esModule",{value:!0}),e.DEPRECATIONS=void 0,e.deprecateUntil=function(e,t){const{options:r}=t +if(t.isRemoved)throw new Error(`The API deprecated by ${r.id} was removed in ember-source ${r.until}. The message was: ${e}. Please see ${r.url} for more details.`)},e.emberVersionGte=s,e.isRemoved=a +let o=parseFloat(t.ENV._OVERRIDE_DEPRECATION_VERSION??r.VERSION) +function s(e,t=o){let r=e.replace(/(\.0+)/g,"") +return t>=parseFloat(r)}function a(e){return s(e.until)}function l(e){return{options:e,test:!i(e),isEnabled:i(e)||a(e),isRemoved:a(e)}}e.DEPRECATIONS={DEPRECATE_IMPLICIT_ROUTE_MODEL:l({id:"deprecate-implicit-route-model",for:"ember-source",since:{available:"5.3.0",enabled:"5.3.0"},until:"6.0.0",url:"https://deprecations.emberjs.com/v5.x/#toc_deprecate-implicit-route-model"}),DEPRECATE_TEMPLATE_ACTION:l({id:"template-action",url:"https://deprecations.emberjs.com/id/template-action",until:"6.0.0",for:"ember-source",since:{available:"5.9.0"}})}})),e("@ember/-internals/environment/index",["exports"],(function(e){"use strict" function t(e){return e&&e.Object===Object?e:void 0}Object.defineProperty(e,"__esModule",{value:!0}),e.context=e.ENV=void 0,e.getENV=function(){return o},e.getLookup=function(){return i.lookup},e.global=void 0,e.setLookup=function(e){i.lookup=e} var r,n=e.global=t((r="object"==typeof global&&global)&&void 0===r.nodeType?r:void 0)||t("object"==typeof self&&self)||t("object"==typeof window&&window)||"undefined"!=typeof mainContext&&mainContext||new Function("return this")() const i=e.context=function(e,t){return void 0===t?{imports:e,exports:e,lookup:e}:{imports:t.imports||e,exports:t.exports||e,lookup:t.lookup||e}}(n,n.Ember) -const o=e.ENV={ENABLE_OPTIONAL_FEATURES:!1,EXTEND_PROTOTYPES:{Array:!0},LOG_STACKTRACE_ON_DEPRECATION:!0,LOG_VERSION:!0,RAISE_ON_DEPRECATION:!1,STRUCTURED_PROFILE:!1,_APPLICATION_TEMPLATE_WRAPPER:!0,_TEMPLATE_ONLY_GLIMMER_COMPONENTS:!1,_DEBUG_RENDER_TREE:!1,_DEFAULT_ASYNC_OBSERVERS:!1,_NO_IMPLICIT_ROUTE_MODEL:!1,_RERENDER_LOOP_LIMIT:1e3,EMBER_LOAD_HOOKS:{},FEATURES:{}};(e=>{if("object"!=typeof e||null===e)return +const o=e.ENV={ENABLE_OPTIONAL_FEATURES:!1,EXTEND_PROTOTYPES:{Array:!0},LOG_STACKTRACE_ON_DEPRECATION:!0,LOG_VERSION:!0,RAISE_ON_DEPRECATION:!1,STRUCTURED_PROFILE:!1,_DEBUG_RENDER_TREE:!1,_ALL_DEPRECATIONS_ENABLED:!1,_OVERRIDE_DEPRECATION_VERSION:null,_DEFAULT_ASYNC_OBSERVERS:!1,_NO_IMPLICIT_ROUTE_MODEL:!1,_RERENDER_LOOP_LIMIT:1e3,EMBER_LOAD_HOOKS:{},FEATURES:{}};(e=>{if("object"!=typeof e||null===e)return for(let i in e){if(!Object.prototype.hasOwnProperty.call(e,i)||"EXTEND_PROTOTYPES"===i||"EMBER_LOAD_HOOKS"===i)continue let t=o[i] -!0===t?o[i]=!1!==e[i]:!1===t&&(o[i]=!0===e[i])}let{EXTEND_PROTOTYPES:t}=e +o[i]=!0===t?!1!==e[i]:!1===t?!0===e[i]:e[i]}let{EXTEND_PROTOTYPES:t}=e void 0!==t&&(o.EXTEND_PROTOTYPES.Array="object"==typeof t&&null!==t?!1!==t.Array:!1!==t) let{EMBER_LOAD_HOOKS:r}=e if("object"==typeof r&&null!==r)for(let i in r){if(!Object.prototype.hasOwnProperty.call(r,i))continue @@ -114,60 +119,60 @@ if("object"==typeof n&&null!==n)for(let i in n)Object.prototype.hasOwnProperty.c let t Object.defineProperty(e,"__esModule",{value:!0}),e.getDispatchOverride=function(){return r},e.getOnerror=function(){return t},e.onErrorTarget=void 0,e.setDispatchOverride=function(e){r=e},e.setOnerror=function(e){t=e} e.onErrorTarget={get onerror(){return t}} -let r=null})),e("@ember/-internals/glimmer/index",["exports","@glimmer/opcode-compiler","@ember/-internals/browser-environment","@ember/debug","@ember/object","@glimmer/reference","@glimmer/validator","@ember/modifier","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/utils","@glimmer/manager","@ember/-internals/views","@ember/engine","@ember/engine/instance","@ember/instrumentation","@ember/service","@ember/-internals/runtime","@glimmer/runtime","@glimmer/util","@ember/-internals/string","@glimmer/destroyable","@ember/runloop","@ember/object/-internals","@ember/-internals/container","@ember/-internals/environment","@glimmer/vm","@glimmer/program","rsvp","@glimmer/node","@glimmer/global-context","@ember/array/-internals","@ember/-internals/glimmer","@ember/array","@ember/routing/-internals","@ember/template-factory"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v,_,O,w,C,E,k,T,S,R,P,x,A,M,N,j,D){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.Component=void 0,Object.defineProperty(e,"DOMChanges",{enumerable:!0,get:function(){return y.DOMChanges}}),Object.defineProperty(e,"DOMTreeConstruction",{enumerable:!0,get:function(){return y.DOMTreeConstruction}}),e.LinkTo=e.Input=e.Helper=void 0,Object.defineProperty(e,"NodeDOMTreeConstruction",{enumerable:!0,get:function(){return P.NodeDOMTreeConstruction}}),e.Textarea=e.SafeString=e.RootTemplate=e.Renderer=e.OutletView=void 0,e._resetRenderers=function(){lr.length=0},e.componentCapabilities=void 0,e.escapeExpression=function(e){let t -if("string"!=typeof e){if(lt(e))return e.toHTML() +let r=null})),e("@ember/-internals/glimmer/index",["exports","@glimmer/opcode-compiler","@ember/-internals/browser-environment","@ember/debug","@ember/object","@glimmer/reference","@glimmer/validator","@ember/modifier","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/utils","@glimmer/manager","@ember/-internals/views","@ember/engine","@ember/engine/instance","@ember/instrumentation","@ember/service","@ember/-internals/runtime","@glimmer/runtime","@glimmer/util","@ember/-internals/string","@glimmer/destroyable","@ember/-internals/deprecations","@ember/runloop","@ember/object/-internals","@ember/-internals/container","@ember/-internals/environment","@glimmer/vm","@glimmer/program","rsvp","@glimmer/node","@glimmer/global-context","@ember/array/-internals","@ember/-internals/glimmer","@ember/array","@ember/routing/-internals","@ember/template-factory"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v,_,O,w,E,C,k,T,R,S,P,x,A,M,N,D,j,I){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.Component=void 0,Object.defineProperty(e,"DOMChanges",{enumerable:!0,get:function(){return y.DOMChanges}}),Object.defineProperty(e,"DOMTreeConstruction",{enumerable:!0,get:function(){return y.DOMTreeConstruction}}),e.LinkTo=e.Input=e.Helper=void 0,Object.defineProperty(e,"NodeDOMTreeConstruction",{enumerable:!0,get:function(){return x.NodeDOMTreeConstruction}}),e.Textarea=e.SafeString=e.RootTemplate=e.Renderer=e.OutletView=void 0,e._resetRenderers=function(){lr.length=0},e.componentCapabilities=void 0,e.escapeExpression=function(e){let t +if("string"!=typeof e){if(ut(e))return e.toHTML() if(null==e)return"" if(!e)return String(e) t=String(e)}else t=e -if(!ot.test(t))return t -return t.replace(st,at)},e.getTemplate=function(e){if(Object.prototype.hasOwnProperty.call(hr,e))return hr[e]},e.getTemplates=function(){return hr},e.hasTemplate=function(e){return Object.prototype.hasOwnProperty.call(hr,e)},e.helper=rt,e.htmlSafe=function(e){null==e?e="":"string"!=typeof e&&(e=String(e)) -return new nt(e)},e.isHTMLSafe=lt,Object.defineProperty(e,"isSerializationFirstNode",{enumerable:!0,get:function(){return y.isSerializationFirstNode}}),e.modifierCapabilities=void 0,e.renderSettled=function(){null===cr&&(cr=R.default.defer(),(0,w._getCurrentRunLoop)()||w._backburner.schedule("actions",null,sr)) +if(!st.test(t))return t +return t.replace(at,lt)},e.getTemplate=function(e){if(Object.prototype.hasOwnProperty.call(hr,e))return hr[e]},e.getTemplates=function(){return hr},e.hasTemplate=function(e){return Object.prototype.hasOwnProperty.call(hr,e)},e.helper=nt,e.htmlSafe=function(e){null==e?e="":"string"!=typeof e&&(e=String(e)) +return new it(e)},e.isHTMLSafe=ut,Object.defineProperty(e,"isSerializationFirstNode",{enumerable:!0,get:function(){return y.isSerializationFirstNode}}),e.modifierCapabilities=void 0,e.renderSettled=function(){null===cr&&(cr=P.default.defer(),(0,E._getCurrentRunLoop)()||E._backburner.schedule("actions",null,sr)) return cr.promise},e.setComponentManager=function(e,t){return(0,p.setComponentManager)(e,t)},e.setTemplate=function(e,t){return hr[e]=t},e.setTemplates=function(e){hr=e},e.setupApplicationRegistry=function(e){e.register("service:-dom-builder",{create(e){let t=(0,u.getOwner)(e) -switch(t.lookup("-environment:main")._renderMode){case"serialize":return P.serializeBuilder.bind(null) +switch(t.lookup("-environment:main")._renderMode){case"serialize":return x.serializeBuilder.bind(null) case"rehydrate":return y.rehydrationBuilder.bind(null) -default:return y.clientBuilder.bind(null)}}}),e.register(E.privatize`template:-root`,I),e.register("renderer:-dom",dr)},e.setupEngineRegistry=function(e){e.optionsForType("template",{instantiate:!1}),e.register("view:-outlet",ir),e.register("template:-outlet",fr),e.optionsForType("helper",{instantiate:!1}),e.register("component:input",te),e.register("component:link-to",de),e.register("component:textarea",ge),k.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS||e.register(E.privatize`component:-default`,We)},Object.defineProperty(e,"template",{enumerable:!0,get:function(){return t.templateFactory}}),Object.defineProperty(e,"templateCacheCounters",{enumerable:!0,get:function(){return t.templateCacheCounters}}),e.uniqueId=Bt -var I=e.RootTemplate=(0,D.createTemplateFactory)({id:"tjANIXCV",block:'[[[46,[30,0],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/root.hbs",isStrictMode:!0}),F=(0,D.createTemplateFactory)({id:"4z3DuGQ3",block:'[[[11,"input"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,4,[30,0,["type"]]],[16,"checked",[30,0,["checked"]]],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/input.hbs",scope:()=>[a.on],isStrictMode:!0}) -function L(){}class B{static toString(){return"internal component"}constructor(e,t,r){this.owner=e,this.args=t,this.caller=r,(0,u.setOwner)(this,e)}get id(){return(0,c.guidFor)(this)}get class(){return"ember-view"}validateArguments(){for(let e of Object.keys(this.args.named))this.isSupportedArgument(e)||this.onUnsupportedArgument(e)}named(e){let t=this.args.named[e] +default:return y.clientBuilder.bind(null)}}}),e.register(k.privatize`template:-root`,F),e.register("renderer:-dom",dr)},e.setupEngineRegistry=function(e){e.optionsForType("template",{instantiate:!1}),e.register("view:-outlet",ir),e.register("template:-outlet",fr),e.optionsForType("helper",{instantiate:!1}),e.register("component:input",re),e.register("component:link-to",he),e.register("component:textarea",be)},Object.defineProperty(e,"template",{enumerable:!0,get:function(){return t.templateFactory}}),Object.defineProperty(e,"templateCacheCounters",{enumerable:!0,get:function(){return t.templateCacheCounters}}),e.uniqueId=Bt +var F=e.RootTemplate=(0,I.createTemplateFactory)({id:"tjANIXCV",block:'[[[46,[30,0],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/root.hbs",isStrictMode:!0}),L=(0,I.createTemplateFactory)({id:"4z3DuGQ3",block:'[[[11,"input"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,4,[30,0,["type"]]],[16,"checked",[30,0,["checked"]]],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/input.hbs",scope:()=>[a.on],isStrictMode:!0}) +function B(){}class U{static toString(){return"internal component"}constructor(e,t,r){this.owner=e,this.args=t,this.caller=r,(0,u.setOwner)(this,e)}get id(){return(0,c.guidFor)(this)}get class(){return"ember-view"}validateArguments(){for(let e of Object.keys(this.args.named))this.isSupportedArgument(e)||this.onUnsupportedArgument(e)}named(e){let t=this.args.named[e] return t?(0,o.valueForRef)(t):void 0}positional(e){let t=this.args.positional[e] return t?(0,o.valueForRef)(t):void 0}listenerFor(e){let t=this.named(e) -return t||L}isSupportedArgument(e){return!1}onUnsupportedArgument(e){}toString(){return`<${this.constructor}:${(0,c.guidFor)(this)}>`}}const U=new WeakMap -function H(e,t){let r={create(){throw(0,n.assert)("Use constructor instead of create")},toString:()=>e.toString()} -return U.set(r,e),(0,p.setInternalComponentManager)(V,r),(0,p.setComponentTemplate)(t,r),r}const $={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!1,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -const V=new class{getCapabilities(){return $}create(e,t,r,n,i,a){var l -let u=new(l=t,U.get(l))(e,r.capture(),(0,o.valueForRef)(a)) +return t||B}isSupportedArgument(e){return!1}onUnsupportedArgument(e){}toString(){return`<${this.constructor}:${(0,c.guidFor)(this)}>`}}const H=new WeakMap +function $(e,t){let r={create(){throw(0,n.assert)("Use constructor instead of create")},toString:()=>e.toString()} +return H.set(r,e),(0,p.setInternalComponentManager)(z,r),(0,p.setComponentTemplate)(t,r),r}const V={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!1,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +const z=new class{getCapabilities(){return V}create(e,t,r,n,i,a){var l +let u=new(l=t,H.get(l))(e,r.capture(),(0,o.valueForRef)(a)) return(0,s.untrack)(u.validateArguments.bind(u)),u}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}getDebugName(e){return e.toString()}getSelf(e){return(0,o.createConstRef)(e,"this")}getDestroyable(e){return e}} -var z=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +var q=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -const q=Object.freeze({}) -function G(e){return function(e){return e.target}(e).value}function W(e){return void 0===e?new Y(void 0):(0,o.isConstRef)(e)?new Y((0,o.valueForRef)(e)):(0,o.isUpdatableRef)(e)?new Q(e):new K(e)}class Y{constructor(e){this.value=e}get(){return this.value}set(e){this.value=e}}z([l.tracked],Y.prototype,"value",void 0) -class Q{constructor(e){this.reference=e}get(){return(0,o.valueForRef)(this.reference)}set(e){(0,o.updateRef)(this.reference,e)}}class K{constructor(e){this.lastUpstreamValue=q,this.upstream=new Q(e)}get(){let e=this.upstream.get() -return e!==this.lastUpstreamValue&&(this.lastUpstreamValue=e,this.local=new Y(e)),this.local.get()}set(e){this.local.set(e)}}class J extends B{constructor(){super(...arguments),this._value=W(this.args.named.value)}validateArguments(){super.validateArguments()}get value(){return this._value.get()}set value(e){this._value.set(e)}valueDidChange(e){this.value=G(e)}change(e){this.valueDidChange(e)}input(e){this.valueDidChange(e)}keyUp(e){switch(e.key){case"Enter":this.listenerFor("enter")(e),this.listenerFor("insert-newline")(e) +const G=Object.freeze({}) +function W(e){return function(e){return e.target}(e).value}function Y(e){return void 0===e?new Q(void 0):(0,o.isConstRef)(e)?new Q((0,o.valueForRef)(e)):(0,o.isUpdatableRef)(e)?new K(e):new J(e)}class Q{constructor(e){this.value=e}get(){return this.value}set(e){this.value=e}}q([l.tracked],Q.prototype,"value",void 0) +class K{constructor(e){this.reference=e}get(){return(0,o.valueForRef)(this.reference)}set(e){(0,o.updateRef)(this.reference,e)}}class J{constructor(e){this.lastUpstreamValue=G,this.upstream=new K(e)}get(){let e=this.upstream.get() +return e!==this.lastUpstreamValue&&(this.lastUpstreamValue=e,this.local=new Q(e)),this.local.get()}set(e){this.local.set(e)}}class X extends U{constructor(){super(...arguments),this._value=Y(this.args.named.value)}validateArguments(){super.validateArguments()}get value(){return this._value.get()}set value(e){this._value.set(e)}valueDidChange(e){this.value=W(e)}change(e){this.valueDidChange(e)}input(e){this.valueDidChange(e)}keyUp(e){switch(e.key){case"Enter":this.listenerFor("enter")(e),this.listenerFor("insert-newline")(e) break case"Escape":this.listenerFor("escape-press")(e)}}listenerFor(e){let t=super.listenerFor(e) -return this.isVirtualEventListener(e,t)?(r=t,e=>r(G(e),e)):t -var r}isVirtualEventListener(e,t){return-1!==["enter","insert-newline","escape-press"].indexOf(e)}}z([i.action],J.prototype,"valueDidChange",null),z([i.action],J.prototype,"keyUp",null) -var X=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +return this.isVirtualEventListener(e,t)?(r=t,e=>r(W(e),e)):t +var r}isVirtualEventListener(e,t){return-1!==["enter","insert-newline","escape-press"].indexOf(e)}}q([i.action],X.prototype,"valueDidChange",null),q([i.action],X.prototype,"keyUp",null) +var Z=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -let Z +let ee if(r.hasDOM){const e=Object.create(null),t=document.createElement("input") -e[""]=!1,e.text=!0,e.checkbox=!0,Z=r=>{let n=e[r] -if(void 0===n){try{t.type=r,n=t.type===r}catch(i){n=!1}finally{t.type="text"}e[r]=n}return n}}else Z=e=>""!==e -class ee extends J{constructor(){super(...arguments),this._checked=W(this.args.named.checked)}static toString(){return"Input"}get class(){return this.isCheckbox?"ember-checkbox ember-view":"ember-text-field ember-view"}get type(){let e=this.named("type") -return null==e?"text":Z(e)?e:"text"}get isCheckbox(){return"checkbox"===this.named("type")}get checked(){return this.isCheckbox?this._checked.get():void 0}set checked(e){this._checked.set(e)}change(e){this.isCheckbox?this.checkedDidChange(e):super.change(e)}input(e){this.isCheckbox||super.input(e)}checkedDidChange(e){let t=e.target -this.checked=t.checked}isSupportedArgument(e){return-1!==["type","value","checked","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}X([i.action],ee.prototype,"change",null),X([i.action],ee.prototype,"input",null),X([i.action],ee.prototype,"checkedDidChange",null) -const te=e.Input=H(ee,F) -var re=(0,D.createTemplateFactory)({id:"Ub0nir+H",block:'[[[11,3],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[16,"role",[30,0,["role"]]],[16,"title",[30,0,["title"]]],[16,"rel",[30,0,["rel"]]],[16,"tabindex",[30,0,["tabindex"]]],[16,"target",[30,0,["target"]]],[17,1],[16,6,[30,0,["href"]]],[4,[32,0],["click",[30,0,["click"]]],null],[12],[18,2,null],[13]],["&attrs","&default"],false,["yield"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/link-to.hbs",scope:()=>[a.on],isStrictMode:!0}),ne=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +e[""]=!1,e.text=!0,e.checkbox=!0,ee=r=>{let n=e[r] +if(void 0===n){try{t.type=r,n=t.type===r}catch(i){n=!1}finally{t.type="text"}e[r]=n}return n}}else ee=e=>""!==e +class te extends X{constructor(){super(...arguments),this._checked=Y(this.args.named.checked)}static toString(){return"Input"}get class(){return this.isCheckbox?"ember-checkbox ember-view":"ember-text-field ember-view"}get type(){let e=this.named("type") +return null==e?"text":ee(e)?e:"text"}get isCheckbox(){return"checkbox"===this.named("type")}get checked(){return this.isCheckbox?this._checked.get():void 0}set checked(e){this._checked.set(e)}change(e){this.isCheckbox?this.checkedDidChange(e):super.change(e)}input(e){this.isCheckbox||super.input(e)}checkedDidChange(e){let t=e.target +this.checked=t.checked}isSupportedArgument(e){return-1!==["type","value","checked","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}Z([i.action],te.prototype,"change",null),Z([i.action],te.prototype,"input",null),Z([i.action],te.prototype,"checkedDidChange",null) +const re=e.Input=$(te,L) +var ne=(0,I.createTemplateFactory)({id:"Ub0nir+H",block:'[[[11,3],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[16,"role",[30,0,["role"]]],[16,"title",[30,0,["title"]]],[16,"rel",[30,0,["rel"]]],[16,"tabindex",[30,0,["tabindex"]]],[16,"target",[30,0,["target"]]],[17,1],[16,6,[30,0,["href"]]],[4,[32,0],["click",[30,0,["click"]]],null],[12],[18,2,null],[13]],["&attrs","&default"],false,["yield"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/link-to.hbs",scope:()=>[a.on],isStrictMode:!0}),ie=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -const ie=[],oe={} -function se(e){return null==e}function ae(e){return!se(e)}function le(e){return"object"==typeof e&&null!==e&&!0===e.isQueryParams}(0,n.debugFreeze)(ie),(0,n.debugFreeze)(oe) -class ue extends B{constructor(){super(...arguments),this.currentRouteCache=(0,s.createCache)((()=>((0,s.consumeTag)((0,s.tagFor)(this.routing,"currentState")),(0,s.untrack)((()=>this.routing.currentRouteName)))))}static toString(){return"LinkTo"}validateArguments(){super.validateArguments()}get class(){let e="ember-view" +const oe=[],se={} +function ae(e){return null==e}function le(e){return!ae(e)}function ue(e){return"object"==typeof e&&null!==e&&!0===e.isQueryParams}(0,n.debugFreeze)(oe),(0,n.debugFreeze)(se) +class ce extends U{constructor(){super(...arguments),this.currentRouteCache=(0,s.createCache)((()=>((0,s.consumeTag)((0,s.tagFor)(this.routing,"currentState")),(0,s.untrack)((()=>this.routing.currentRouteName)))))}static toString(){return"LinkTo"}validateArguments(){super.validateArguments()}get class(){let e="ember-view" return this.isActive?(e+=this.classFor("active"),!1===this.willBeActive&&(e+=" ember-transitioning-out")):this.willBeActive&&(e+=" ember-transitioning-in"),this.isLoading&&(e+=this.classFor("loading")),this.isDisabled&&(e+=this.classFor("disabled")),e}get href(){if(this.isLoading)return"#" let{routing:e,route:t,models:r,query:n}=this return(0,s.consumeTag)((0,s.tagFor)(e,"currentState")),e.generateURL(t,r,n)}click(e){if(!(0,d.isSimpleClick)(e))return @@ -177,77 +182,78 @@ if(this.preventDefault(e),this.isDisabled)return if(this.isLoading)return let{routing:r,route:n,models:i,query:o,replace:s}=this,a={routeName:n,queryParams:o,transition:void 0};(0,m.flaggedInstrument)("interaction.link-to",a,(()=>{a.transition=r.transitionTo(n,i,o,s)}))}get route(){if("route"in this.args.named){let e=this.named("route") return e&&this.namespaceRoute(e)}return this.currentRoute}get currentRoute(){return(0,s.getValue)(this.currentRouteCache)}get models(){if("models"in this.args.named){let e=this.named("models") -return e}return"model"in this.args.named?[this.named("model")]:ie}get query(){if("query"in this.args.named){let e=this.named("query") -return{...e}}return oe}get replace(){return!0===this.named("replace")}get isActive(){return this.isActiveForState(this.routing.currentState)}get willBeActive(){let e=this.routing.currentState,t=this.routing.targetState -return e===t?null:this.isActiveForState(t)}get isLoading(){return se(this.route)||this.models.some((e=>se(e)))}get isDisabled(){return Boolean(this.named("disabled"))}get isEngine(){let e=this.owner +return e}return"model"in this.args.named?[this.named("model")]:oe}get query(){if("query"in this.args.named){let e=this.named("query") +return{...e}}return se}get replace(){return!0===this.named("replace")}get isActive(){return this.isActiveForState(this.routing.currentState)}get willBeActive(){let e=this.routing.currentState,t=this.routing.targetState +return e===t?null:this.isActiveForState(t)}get isLoading(){return ae(this.route)||this.models.some((e=>ae(e)))}get isDisabled(){return Boolean(this.named("disabled"))}get isEngine(){let e=this.owner return e instanceof f.default&&void 0!==(0,h.getEngineParent)(e)}get engineMountPoint(){let e=this.owner return e instanceof f.default?e.mountPoint:void 0}classFor(e){let t=this.named(`${e}Class`) -return!0===t||se(t)?` ${e}`:t?` ${t}`:""}namespaceRoute(e){let{engineMountPoint:t}=this -return void 0===t?e:"application"===e?t:`${t}.${e}`}isActiveForState(e){if(!ae(e))return!1 +return!0===t||ae(t)?` ${e}`:t?` ${t}`:""}namespaceRoute(e){let{engineMountPoint:t}=this +return void 0===t?e:"application"===e?t:`${t}.${e}`}isActiveForState(e){if(!le(e))return!1 if(this.isLoading)return!1 let t=this.named("current-when") if("boolean"==typeof t)return t if("string"==typeof t){let{models:r,routing:n}=this return t.split(" ").some((t=>n.isActiveForRoute(r,void 0,this.namespaceRoute(t),e)))}{let{route:t,models:r,query:n,routing:i}=this -return i.isActiveForRoute(r,n,t,e)}}preventDefault(e){e.preventDefault()}isSupportedArgument(e){return-1!==["route","model","models","query","replace","disabled","current-when","activeClass","loadingClass","disabledClass"].indexOf(e)||super.isSupportedArgument(e)}}ne([(0,g.service)("-routing")],ue.prototype,"routing",void 0),ne([i.action],ue.prototype,"click",null) -let{prototype:ce}=ue,pe=(e,t)=>e?Object.getOwnPropertyDescriptor(e,t)||pe(Object.getPrototypeOf(e),t):null -{let e=ce.onUnsupportedArgument -Object.defineProperty(ce,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"href"===t||e.call(this,t)}})}{let e=pe(ce,"models"),t=e.get -Object.defineProperty(ce,"models",{configurable:!0,enumerable:!1,get:function(){let e=t.call(this) -return e.length>0&&!("query"in this.args.named)&&le(e[e.length-1])&&(e=e.slice(0,-1)),e}}) -let r=pe(ce,"query"),n=r.get -Object.defineProperty(ce,"query",{configurable:!0,enumerable:!1,get:function(){if("query"in this.args.named){let e=n.call(this) -return le(e)?e.values??oe:e}{let e=t.call(this) +return i.isActiveForRoute(r,n,t,e)}}preventDefault(e){e.preventDefault()}isSupportedArgument(e){return-1!==["route","model","models","query","replace","disabled","current-when","activeClass","loadingClass","disabledClass"].indexOf(e)||super.isSupportedArgument(e)}}ie([(0,g.service)("-routing")],ce.prototype,"routing",void 0),ie([i.action],ce.prototype,"click",null) +let{prototype:pe}=ce,de=(e,t)=>e?Object.getOwnPropertyDescriptor(e,t)||de(Object.getPrototypeOf(e),t):null +{let e=pe.onUnsupportedArgument +Object.defineProperty(pe,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"href"===t||e.call(this,t)}})}{let e=de(pe,"models"),t=e.get +Object.defineProperty(pe,"models",{configurable:!0,enumerable:!1,get:function(){let e=t.call(this) +return e.length>0&&!("query"in this.args.named)&&ue(e[e.length-1])&&(e=e.slice(0,-1)),e}}) +let r=de(pe,"query"),n=r.get +Object.defineProperty(pe,"query",{configurable:!0,enumerable:!1,get:function(){if("query"in this.args.named){let e=n.call(this) +return ue(e)?e.values??se:e}{let e=t.call(this) if(e.length>0){let t=e[e.length-1] -if(le(t)&&null!==t.values)return t.values}return oe}}})}{let e=ce.onUnsupportedArgument -Object.defineProperty(ce,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"params"!==t&&e.call(this,t)}})}const de=e.LinkTo=H(ue,re) -var he=(0,D.createTemplateFactory)({id:"112WKCh2",block:'[[[11,"textarea"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/textarea.hbs",scope:()=>[a.on],isStrictMode:!0}),fe=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if(ue(t)&&null!==t.values)return t.values}return se}}})}{let e=pe.onUnsupportedArgument +Object.defineProperty(pe,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"params"!==t&&e.call(this,t)}})}const he=e.LinkTo=$(ce,ne) +var fe=(0,I.createTemplateFactory)({id:"112WKCh2",block:'[[[11,"textarea"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/textarea.hbs",scope:()=>[a.on],isStrictMode:!0}),me=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -class me extends J{static toString(){return"Textarea"}get class(){return"ember-text-area ember-view"}change(e){super.change(e)}input(e){super.input(e)}isSupportedArgument(e){return-1!==["type","value","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}fe([i.action],me.prototype,"change",null),fe([i.action],me.prototype,"input",null) -const ge=e.Textarea=H(me,he) -function be(e){return"function"==typeof e}function ye(e,t){return"attrs"===t[0]&&(t.shift(),1===t.length)?(0,o.childRefFor)(e,t[0]):(0,o.childRefFromParts)(e,t)}function ve(e){let t=e.indexOf(":") +class ge extends X{static toString(){return"Textarea"}get class(){return"ember-text-area ember-view"}change(e){super.change(e)}input(e){super.input(e)}isSupportedArgument(e){return-1!==["type","value","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}me([i.action],ge.prototype,"change",null),me([i.action],ge.prototype,"input",null) +const be=e.Textarea=$(ge,fe) +function ye(e){return"function"==typeof e}function ve(e,t){return"attrs"===t[0]&&(t.shift(),1===t.length)?(0,o.childRefFor)(e,t[0]):(0,o.childRefFromParts)(e,t)}function _e(e){let t=e.indexOf(":") if(-1===t)return[e,e,!0] {let r=e.substring(0,t),n=e.substring(t+1) -return[r,n,!1]}}function _e(e,t,r,n){let[i,s,a]=r +return[r,n,!1]}}function Oe(e,t,r,n){let[i,s,a]=r if("id"===s){let t=(0,l.get)(e,i) null==t&&(t=e.elementId) let r=(0,o.createPrimitiveRef)(t) -return void n.setAttribute("id",r,!0,null)}let u=i.indexOf(".")>-1,c=u?ye(t,i.split(".")):(0,o.childRefFor)(t,i) -n.setAttribute(s,c,!1,null)}function Oe(e,t,r){let n=t.split(":"),[i,s,a]=n +return void n.setAttribute("id",r,!0,null)}let u=i.indexOf(".")>-1,c=u?ve(t,i.split(".")):(0,o.childRefFor)(t,i) +n.setAttribute(s,c,!1,null)}function we(e,t,r){let n=t.split(":"),[i,s,a]=n if(""===i)r.setAttribute("class",(0,o.createPrimitiveRef)(s),!0,null) -else{let t,n=i.indexOf(".")>-1,l=n?i.split("."):[],u=n?ye(e,l):(0,o.childRefFor)(e,i) -t=void 0===s?we(u,n?l[l.length-1]:i):function(e,t,r){return(0,o.createComputeRef)((()=>(0,o.valueForRef)(e)?t:r))}(u,s,a),r.setAttribute("class",t,!1,null)}}function we(e,t){let r +else{let t,n=i.indexOf(".")>-1,l=n?i.split("."):[],u=n?ve(e,l):(0,o.childRefFor)(e,i) +t=void 0===s?Ee(u,n?l[l.length-1]:i):function(e,t,r){return(0,o.createComputeRef)((()=>(0,o.valueForRef)(e)?t:r))}(u,s,a),r.setAttribute("class",t,!1,null)}}function Ee(e,t){let r return(0,o.createComputeRef)((()=>{let n=(0,o.valueForRef)(e) -return!0===n?r||(r=(0,_.dasherize)(t)):n||0===n?String(n):null}))}function Ce(){}class Ee{constructor(e,t,r,n,i,a){this.component=e,this.args=t,this.argsTag=r,this.finalizer=n,this.hasWrappedElement=i,this.isInteractive=a,this.classRef=null,this.classRef=null,this.argsRevision=null===t?0:(0,s.valueForTag)(r),this.rootRef=(0,o.createConstRef)(e,"this"),(0,O.registerDestructor)(this,(()=>this.willDestroy()),!0),(0,O.registerDestructor)(this,(()=>this.component.destroy()))}willDestroy(){let{component:e,isInteractive:t}=this +return!0===n?r||(r=(0,_.dasherize)(t)):n||0===n?String(n):null}))}function Ce(){}class ke{constructor(e,t,r,n,i,a){this.component=e,this.args=t,this.argsTag=r,this.finalizer=n,this.hasWrappedElement=i,this.isInteractive=a,this.classRef=null,this.classRef=null,this.argsRevision=null===t?0:(0,s.valueForTag)(r),this.rootRef=(0,o.createConstRef)(e,"this"),(0,O.registerDestructor)(this,(()=>this.willDestroy()),!0),(0,O.registerDestructor)(this,(()=>this.component.destroy()))}willDestroy(){let{component:e,isInteractive:t}=this if(t){(0,s.beginUntrackFrame)(),e.trigger("willDestroyElement"),e.trigger("willClearRender"),(0,s.endUntrackFrame)() let t=(0,d.getViewElement)(e) t&&((0,d.clearElementView)(t),(0,d.clearViewElement)(e))}e.renderer.unregister(e)}finalize(){let{finalizer:e}=this -e(),this.finalizer=Ce}}function ke(e){return(0,p.setInternalHelperManager)(e,{})}const Te=new WeakSet -var Se=ke((e=>{let t,{named:r,positional:n}=e,[i,s,...a]=n,u=s.debugLabel,c="target"in r?r.target:i,p=function(e,t){let r,n +e(),this.finalizer=Ce}}function Te(e){return(0,p.setInternalHelperManager)(e,{})}const Re=new WeakSet +var Se=Te((e=>{(0,w.deprecateUntil)("Usage of the `(action)` helper is deprecated. Migrate to native functions and function invocation.",w.DEPRECATIONS.DEPRECATE_TEMPLATE_ACTION) +let t,{named:r,positional:n}=e,[i,s,...a]=n,u=s.debugLabel,c="target"in r?r.target:i,p=function(e,t){let r,n t.length>0&&(r=e=>t.map(o.valueForRef).concat(e)) e&&(n=t=>{let r=(0,o.valueForRef)(e) return r&&t.length>0&&(t[0]=(0,l.get)(t[0],r)),t}) -return r&&n?e=>n(r(e)):r||n||Re}("value"in r&&r.value||!1,a) -return t=(0,o.isInvokableRef)(s)?Pe(s,s,xe,p,u):function(e,t,r,n,i){const s=(0,o.valueForRef)(r) +return r&&n?e=>n(r(e)):r||n||Pe}("value"in r&&r.value||!1,a) +return t=(0,o.isInvokableRef)(s)?xe(s,s,Ae,p,u):function(e,t,r,n,i){const s=(0,o.valueForRef)(r) 0 -return(...r)=>Pe(e,(0,o.valueForRef)(t),s,n,i)(...r)}((0,o.valueForRef)(i),c,s,p,u),Te.add(t),(0,o.createUnboundRef)(t,"(result of an `action` helper)")})) -function Re(e){return e}function Pe(e,t,r,n,i){let o,s +return(...r)=>xe(e,(0,o.valueForRef)(t),s,n,i)(...r)}((0,o.valueForRef)(i),c,s,p,u),Re.add(t),(0,o.createUnboundRef)(t,"(result of an `action` helper)")})) +function Pe(e){return e}function xe(e,t,r,n,i){let o,s if("string"==typeof r){o=t let e=t.actions?.[r] s=e}else"function"==typeof r&&(o=e,s=r) return(...e)=>{let t={target:o,args:e,label:"@glimmer/closure-action"} -return(0,m.flaggedInstrument)("interaction.ember-action",t,(()=>(0,w.join)(o,s,...n(e))))}}function xe(e){(0,o.updateRef)(this,e)}function Ae(e){let t=Object.create(null),r=Object.create(null) +return(0,m.flaggedInstrument)("interaction.ember-action",t,(()=>(0,E.join)(o,s,...n(e))))}}function Ae(e){(0,o.updateRef)(this,e)}function Me(e){let t=Object.create(null),r=Object.create(null) r[je]=e -for(let n in e){let i=e[n],s=(0,o.valueForRef)(i),a="function"==typeof s&&Te.has(s);(0,o.isUpdatableRef)(i)&&!a?t[n]=new Ne(i,s):t[n]=s,r[n]=s}return r.attrs=t,r}const Me=Symbol("REF") -class Ne{constructor(e,t){this[d.MUTABLE_CELL]=!0,this[Me]=e,this.value=t}update(e){(0,o.updateRef)(this[Me],e)}}const je=(0,c.enumerableSymbol)("ARGS"),De=(0,c.enumerableSymbol)("HAS_BLOCK"),Ie=Symbol("DIRTY_TAG"),Fe=Symbol("IS_DISPATCHING_ATTRS"),Le=Symbol("BOUNDS"),Be=(0,o.createPrimitiveRef)("ember-view");(0,n.debugFreeze)([]) -class Ue{templateFor(e){let t,{layout:r,layoutName:n}=e,i=(0,u.getOwner)(e) +for(let n in e){let i=e[n],s=(0,o.valueForRef)(i),a="function"==typeof s&&Re.has(s);(0,o.isUpdatableRef)(i)&&!a?t[n]=new De(i,s):t[n]=s,r[n]=s}return r.attrs=t,r}const Ne=Symbol("REF") +class De{constructor(e,t){this[d.MUTABLE_CELL]=!0,this[Ne]=e,this.value=t}update(e){(0,o.updateRef)(this[Ne],e)}}const je=(0,c.enumerableSymbol)("ARGS"),Ie=(0,c.enumerableSymbol)("HAS_BLOCK"),Fe=Symbol("DIRTY_TAG"),Le=Symbol("IS_DISPATCHING_ATTRS"),Be=Symbol("BOUNDS"),Ue=(0,o.createPrimitiveRef)("ember-view");(0,n.debugFreeze)([]) +class He{templateFor(e){let t,{layout:r,layoutName:n}=e,i=(0,u.getOwner)(e) if(void 0===r){if(void 0===n)return null {let e=i.lookup(`template:${n}`) -t=e}}else{if(!be(r))return null +t=e}}else{if(!ye(r))return null t=r}return(0,v.unwrapTemplate)(t(i)).asWrappedLayout()}getDynamicLayout(e){return this.templateFor(e.component)}getTagName(e){let{component:t,hasWrappedElement:r}=e -return r?t&&t.tagName||"div":null}getCapabilities(){return Ve}prepareArgs(e,t){if(t.named.has("__ARGS__")){let{__ARGS__:e,...r}=t.named.capture(),n=(0,o.valueForRef)(e) +return r?t&&t.tagName||"div":null}getCapabilities(){return ze}prepareArgs(e,t){if(t.named.has("__ARGS__")){let{__ARGS__:e,...r}=t.named.capture(),n=(0,o.valueForRef)(e) return{positional:n.positional,named:{...r,...n.named}}}const{positionalParams:r}=e.class??e if(null==r||0===t.positional.length)return null let n @@ -257,68 +263,68 @@ n={[r]:(0,o.createComputeRef)((()=>(0,y.reifyPositional)(e)))},Object.assign(n,t n={},Object.assign(n,t.named.capture()) for(let i=0;i{a.setAttribute("class",(0,o.createPrimitiveRef)(e),!1,null)})),p&&p.length&&p.forEach((e=>{Oe(n,e,a)})),a.setAttribute("class",Be,!1,null),"ariaRole"in e&&a.setAttribute("role",(0,o.childRefFor)(n,"ariaRole"),!1,null),e._transitionTo("hasElement"),r&&((0,s.beginUntrackFrame)(),e.trigger("willInsertElement"),(0,s.endUntrackFrame)())}didRenderLayout(e,t){e.component[Le]=t,e.finalize()}didCreate({component:e,isInteractive:t}){t&&(e._transitionTo("inDOM"),e.trigger("didInsertElement"),e.trigger("didRender"))}update(e){let{component:t,args:r,argsTag:n,argsRevision:i,isInteractive:o}=e -if(e.finalizer=(0,m._instrumentStart)("render.component",$e,t),(0,s.beginUntrackFrame)(),null!==r&&!(0,s.validateTag)(n,i)){(0,s.beginTrackFrame)() -let i=Ae(r) -n=e.argsTag=(0,s.endTrackFrame)(),e.argsRevision=(0,s.valueForTag)(n),t[Fe]=!0,t.setProperties(i),t[Fe]=!1,t.trigger("didUpdateAttrs"),t.trigger("didReceiveAttrs")}o&&(t.trigger("willUpdate"),t.trigger("willRender")),(0,s.endUntrackFrame)(),(0,s.consumeTag)(n),(0,s.consumeTag)(t[Ie])}didUpdateLayout(e){e.finalize()}didUpdate({component:e,isInteractive:t}){t&&(e.trigger("didUpdate"),e.trigger("didRender"))}getDestroyable(e){return e}}function He(e){return e.instrumentDetails({initialRender:!0})}function $e(e){return e.instrumentDetails({initialRender:!1})}const Ve={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!0,hasSubOwner:!1},ze=new Ue -function qe(e){return e===ze}let Ge=new WeakMap -class We extends(d.CoreView.extend(d.ChildViewsSupport,d.ViewStateSupport,d.ClassNamesSupport,b.TargetActionSupport,d.ActionSupport,d.ViewMixin,{didReceiveAttrs(){},didRender(){},didUpdate(){},didUpdateAttrs(){},willRender(){},willUpdate(){}})){constructor(){super(...arguments),this.isComponent=!0}init(e){super.init(e),this._superRerender=this.rerender,this.rerender=this._rerender,this[Fe]=!1,this[Ie]=(0,s.createTag)(),this[Le]=null +a.setAttribute("id",(0,o.createPrimitiveRef)(t),!1,null)}if(t){const e=Ee(t) +a.setAttribute("class",e,!1,null)}u&&u.length&&u.forEach((e=>{a.setAttribute("class",(0,o.createPrimitiveRef)(e),!1,null)})),p&&p.length&&p.forEach((e=>{we(n,e,a)})),a.setAttribute("class",Ue,!1,null),"ariaRole"in e&&a.setAttribute("role",(0,o.childRefFor)(n,"ariaRole"),!1,null),e._transitionTo("hasElement"),r&&((0,s.beginUntrackFrame)(),e.trigger("willInsertElement"),(0,s.endUntrackFrame)())}didRenderLayout(e,t){e.component[Be]=t,e.finalize()}didCreate({component:e,isInteractive:t}){t&&(e._transitionTo("inDOM"),e.trigger("didInsertElement"),e.trigger("didRender"))}update(e){let{component:t,args:r,argsTag:n,argsRevision:i,isInteractive:o}=e +if(e.finalizer=(0,m._instrumentStart)("render.component",Ve,t),(0,s.beginUntrackFrame)(),null!==r&&!(0,s.validateTag)(n,i)){(0,s.beginTrackFrame)() +let i=Me(r) +n=e.argsTag=(0,s.endTrackFrame)(),e.argsRevision=(0,s.valueForTag)(n),t[Le]=!0,t.setProperties(i),t[Le]=!1,t.trigger("didUpdateAttrs"),t.trigger("didReceiveAttrs")}o&&(t.trigger("willUpdate"),t.trigger("willRender")),(0,s.endUntrackFrame)(),(0,s.consumeTag)(n),(0,s.consumeTag)(t[Fe])}didUpdateLayout(e){e.finalize()}didUpdate({component:e,isInteractive:t}){t&&(e.trigger("didUpdate"),e.trigger("didRender"))}getDestroyable(e){return e}}function $e(e){return e.instrumentDetails({initialRender:!0})}function Ve(e){return e.instrumentDetails({initialRender:!1})}const ze={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!0,hasSubOwner:!1},qe=new He +function Ge(e){return e===qe}let We=new WeakMap +class Ye extends(d.CoreView.extend(d.ChildViewsSupport,d.ViewStateSupport,d.ClassNamesSupport,b.TargetActionSupport,d.ActionSupport,d.ViewMixin,{didReceiveAttrs(){},didRender(){},didUpdate(){},didUpdateAttrs(){},willRender(){},willUpdate(){}})){constructor(){super(...arguments),this.isComponent=!0}init(e){super.init(e),this._superRerender=this.rerender,this.rerender=this._rerender,this[Le]=!1,this[Fe]=(0,s.createTag)(),this[Be]=null const t=this._dispatcher -if(t){let e=Ge.get(t) -e||(e=new WeakSet,Ge.set(t,e)) +if(t){let e=We.get(t) +e||(e=new WeakSet,We.set(t,e)) let r=Object.getPrototypeOf(this) if(!e.has(r)){t.lazyEvents.forEach(((e,r)=>{null!==e&&"function"==typeof this[e]&&t.setupHandlerForBrowserEvent(r)})),e.add(r)}}}get _dispatcher(){if(void 0===this.__dispatcher){let e=(0,u.getOwner)(this) if(e.lookup("-environment:main").isInteractive){let t=e.lookup("event_dispatcher:main") -this.__dispatcher=t}else this.__dispatcher=null}return this.__dispatcher}on(e,t,r){return this._dispatcher?.setupHandlerForEmberEvent(e),super.on(e,t,r)}_rerender(){(0,s.dirtyTag)(this[Ie]),this._superRerender()}[l.PROPERTY_DID_CHANGE](e,t){if(this[Fe])return +this.__dispatcher=t}else this.__dispatcher=null}return this.__dispatcher}on(e,t,r){return this._dispatcher?.setupHandlerForEmberEvent(e),super.on(e,t,r)}_rerender(){(0,s.dirtyTag)(this[Fe]),this._superRerender()}[l.PROPERTY_DID_CHANGE](e,t){if(this[Le])return let r=this[je],n=void 0!==r?r[e]:void 0 void 0!==n&&(0,o.isUpdatableRef)(n)&&(0,o.updateRef)(n,2===arguments.length?t:(0,l.get)(this,e))}getAttr(e){return this.get(e)}readDOMAttr(e){let t=(0,d.getViewElement)(this),r=t,n="http://www.w3.org/2000/svg"===r.namespaceURI,{type:i,normalized:o}=(0,y.normalizeProperty)(r,e) -return n||"attr"===i?r.getAttribute(o):r[o]}static toString(){return"@ember/component"}}var Ye -e.Component=We,We.isComponentFactory=!0,We.reopenClass({positionalParams:[]}),(0,p.setInternalComponentManager)(ze,We) -const Qe=Symbol("RECOMPUTE_TAG"),Ke=Symbol("IS_CLASSIC_HELPER") -class Je extends C.FrameworkObject{init(e){super.init(e),this[Qe]=(0,s.createTag)()}recompute(){(0,w.join)((()=>(0,s.dirtyTag)(this[Qe])))}}e.Helper=Je,Ye=Ke,Je.isHelperFactory=!0,Je[Ye]=!0,Je.helper=rt -class Xe{constructor(e){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0,hasDestroyable:!0}) +return n||"attr"===i?r.getAttribute(o):r[o]}static toString(){return"@ember/component"}}var Qe +e.Component=Ye,Ye.isComponentFactory=!0,Ye.reopenClass({positionalParams:[]}),(0,p.setInternalComponentManager)(qe,Ye) +const Ke=Symbol("RECOMPUTE_TAG"),Je=Symbol("IS_CLASSIC_HELPER") +class Xe extends C.FrameworkObject{init(e){super.init(e),this[Ke]=(0,s.createTag)()}recompute(){(0,E.join)((()=>(0,s.dirtyTag)(this[Ke])))}}e.Helper=Xe,Qe=Je,Xe.isHelperFactory=!0,Xe[Qe]=!0,Xe.helper=nt +class Ze{constructor(e){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0,hasDestroyable:!0}) let t={};(0,u.setOwner)(t,e),this.ownerInjection=t}createHelper(e,t){let r=null!=(n=e)&&"class"in n?e.create():e.create(this.ownerInjection) var n return{instance:r,args:t}}getDestroyable({instance:e}){return e}getValue({instance:e,args:t}){let{positional:r,named:n}=t,i=e.compute(r,n) -return(0,s.consumeTag)(e[Qe]),i}getDebugName(e){return(0,c.getDebugName)((e.class||e).prototype)}}(0,p.setHelperManager)((e=>new Xe(e)),Je) -const Ze=(0,p.getInternalHelperManager)(Je) -class et{constructor(e){this.compute=e,this.isHelperFactory=!0}create(){return{compute:this.compute}}}const tt=new class{constructor(){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0})}createHelper(e,t){return()=>e.compute.call(null,t.positional,t.named)}getValue(e){return e()}getDebugName(e){return(0,c.getDebugName)(e.compute)}} -function rt(e){return new et(e)}(0,p.setHelperManager)((()=>tt),et.prototype) -class nt{constructor(e){this.__string=e}toString(){return`${this.__string}`}toHTML(){return this.toString()}}e.SafeString=nt -const it={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},ot=/[&<>"'`=]/,st=/[&<>"'`=]/g -function at(e){return it[e]}function lt(e){return null!==e&&"object"==typeof e&&"toHTML"in e&&"function"==typeof e.toHTML}function ut(e){return{object:`${e.name}:main`}}const ct={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class pt{create(e,t,r,n,i){let s=i.get("outletState"),a=t.ref +return(0,s.consumeTag)(e[Ke]),i}getDebugName(e){return(0,c.getDebugName)((e.class||e).prototype)}}(0,p.setHelperManager)((e=>new Ze(e)),Xe) +const et=(0,p.getInternalHelperManager)(Xe) +class tt{constructor(e){this.compute=e,this.isHelperFactory=!0}create(){return{compute:this.compute}}}const rt=new class{constructor(){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0})}createHelper(e,t){return()=>e.compute.call(null,t.positional,t.named)}getValue(e){return e()}getDebugName(e){return(0,c.getDebugName)(e.compute)}} +function nt(e){return new tt(e)}(0,p.setHelperManager)((()=>rt),tt.prototype) +class it{constructor(e){this.__string=e}toString(){return`${this.__string}`}toHTML(){return this.toString()}}e.SafeString=it +const ot={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},st=/[&<>"'`=]/,at=/[&<>"'`=]/g +function lt(e){return ot[e]}function ut(e){return null!==e&&"object"==typeof e&&"toHTML"in e&&"function"==typeof e.toHTML}function ct(e){return{object:`${e.name}:main`}}const pt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +const dt=new class{create(e,t,r,n,i){let s=i.get("outletState"),a=t.ref i.set("outletState",a) -let l={self:(0,o.createConstRef)(t.controller,"this"),finalize:(0,m._instrumentStart)("render.outlet",ut,t)} +let l={self:(0,o.createConstRef)(t.controller,"this"),finalize:(0,m._instrumentStart)("render.outlet",ct,t)} if(void 0!==n.debugRenderTree){l.outletBucket={} let e=(0,o.valueForRef)(s),t=e&&e.render&&e.render.owner,r=(0,o.valueForRef)(a).render.owner if(t&&t!==r){let e=r.mountPoint l.engine=r,e&&(l.engineBucket={mountPoint:e})}}return l}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r){let n=[] -return n.push({bucket:t.outletBucket,type:"outlet",name:"main",args:y.EMPTY_ARGS,instance:void 0,template:void 0}),t.engineBucket&&n.push({bucket:t.engineBucket,type:"engine",name:t.engineBucket.mountPoint,args:y.EMPTY_ARGS,instance:t.engine,template:void 0}),n.push({bucket:t,type:"route-template",name:e.name,args:r,instance:e.controller,template:(0,v.unwrapTemplate)(e.template).moduleName}),n}getCapabilities(){return ct}getSelf({self:e}){return e}didCreate(){}didUpdate(){}didRenderLayout(e){e.finalize()}didUpdateLayout(){}getDestroyable(){return null}}const dt=new pt +return n.push({bucket:t.outletBucket,type:"outlet",name:"main",args:y.EMPTY_ARGS,instance:void 0,template:void 0}),t.engineBucket&&n.push({bucket:t.engineBucket,type:"engine",name:t.engineBucket.mountPoint,args:y.EMPTY_ARGS,instance:t.engine,template:void 0}),n.push({bucket:t,type:"route-template",name:e.name,args:r,instance:e.controller,template:(0,v.unwrapTemplate)(e.template).moduleName}),n}getCapabilities(){return pt}getSelf({self:e}){return e}didCreate(){}didUpdate(){}didRenderLayout(e){e.finalize()}didUpdateLayout(){}getDestroyable(){return null}} class ht{constructor(e,t=dt){this.state=e,this.manager=t,this.handle=-1 let r=t.getCapabilities() -this.capabilities=(0,p.capabilityFlagsFrom)(r),this.compilable=r.wrapped?(0,v.unwrapTemplate)(e.template).asWrappedLayout():(0,v.unwrapTemplate)(e.template).asLayout(),this.resolvedName=e.name}}class ft extends Ue{constructor(e){super(),this.component=e}create(e,t,r,{isInteractive:n},i){let o=this.component,a=(0,m._instrumentStart)("render.component",He,o) +this.capabilities=(0,p.capabilityFlagsFrom)(r),this.compilable=r.wrapped?(0,v.unwrapTemplate)(e.template).asWrappedLayout():(0,v.unwrapTemplate)(e.template).asLayout(),this.resolvedName=e.name}}class ft extends He{constructor(e){super(),this.component=e}create(e,t,r,{isInteractive:n},i){let o=this.component,a=(0,m._instrumentStart)("render.component",$e,o) i.view=o let l=""!==o.tagName l||(n&&o.trigger("willRender"),o._transitionTo("hasElement"),n&&o.trigger("willInsertElement")) -let u=new Ee(o,null,s.CONSTANT_TAG,a,l,n) -return(0,s.consumeTag)(o[Ie]),u}}const mt={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!1,createArgs:!1,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!1,hasSubOwner:!1} +let u=new ke(o,null,s.CONSTANT_TAG,a,l,n) +return(0,s.consumeTag)(o[Fe]),u}}const mt={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!1,createArgs:!1,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!1,hasSubOwner:!1} class gt{constructor(e){this.handle=-1,this.resolvedName="-top-level",this.capabilities=(0,p.capabilityFlagsFrom)(mt),this.compilable=null,this.manager=new ft(e) -let t=(0,E.getFactoryFor)(e) -this.state=t}}class bt{constructor(e){this.inner=e}}var yt=ke((({positional:e})=>{const t=e[0] +let t=(0,k.getFactoryFor)(e) +this.state=t}}class bt{constructor(e){this.inner=e}}var yt=Te((({positional:e})=>{const t=e[0] return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(t) return(0,s.consumeTag)((0,l.tagForObject)(e)),(0,c.isProxy)(e)&&(e=(0,b._contentFor)(e)),new bt(e)}))})) class vt{constructor(e){this.length=e,this.position=0}isEmpty(){return!1}memoFor(e){return e}next(){let{length:e,position:t}=this @@ -330,28 +336,28 @@ if(0===t.length)return null {let r=[] for(let n of t){let t t=e[n],(0,s.isTracking)()&&((0,s.consumeTag)((0,s.tagFor)(e,n)),Array.isArray(t)&&(0,s.consumeTag)((0,s.tagFor)(t,"[]"))),r.push(t)}return new this(t,r)}}static fromForEachable(e){let t=[],r=[],n=0,i=!1 -return e.forEach((function(e,o){i=i||arguments.length>=2,i&&t.push(o),r.push(e),n++})),0===n?null:i?new this(t,r):new _t(r)}constructor(e,t){super(t.length),this.keys=e,this.values=t}valueFor(e){return this.values[e]}memoFor(e){return this.keys[e]}}class Ct{static from(e){let t=e[Symbol.iterator](),r=t.next(),{done:n}=r +return e.forEach((function(e,o){i=i||arguments.length>=2,i&&t.push(o),r.push(e),n++})),0===n?null:i?new this(t,r):new _t(r)}constructor(e,t){super(t.length),this.keys=e,this.values=t}valueFor(e){return this.values[e]}memoFor(e){return this.keys[e]}}class Et{static from(e){let t=e[Symbol.iterator](),r=t.next(),{done:n}=r return n?null:new this(t,r)}constructor(e,t){this.iterable=e,this.result=t,this.position=0}isEmpty(){return!1}next(){let{iterable:e,result:t,position:r}=this if(t.done)return null let n=this.valueFor(t,r),i=this.memoFor(t,r) -return this.position++,this.result=e.next(),{value:n,memo:i}}}class Et extends Ct{valueFor(e){return e.value}memoFor(e,t){return t}}class kt extends Ct{valueFor(e){return e.value[1]}memoFor(e){return e.value[0]}}function Tt(e){return null!=e&&"function"==typeof e.forEach}function St(e){return null!=e&&"function"==typeof e[Symbol.iterator]}(0,x.default)({FEATURES:{DEFAULT_HELPER_MANAGER:!0},scheduleRevalidate(){w._backburner.ensureInstance()},toBool:function(e){return(0,c.isProxy)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"content")),Boolean((0,l.get)(e,"isTruthy"))):(0,N.isArray)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),0!==e.length):(0,M.isHTMLSafe)(e)?Boolean(e.toString()):Boolean(e)},toIterator:function(e){return e instanceof bt?function(e){if(t=e,null===t||"object"!=typeof t&&"function"!=typeof t)return null +return this.position++,this.result=e.next(),{value:n,memo:i}}}class Ct extends Et{valueFor(e){return e.value}memoFor(e,t){return t}}class kt extends Et{valueFor(e){return e.value[1]}memoFor(e){return e.value[0]}}function Tt(e){return null!=e&&"function"==typeof e.forEach}function Rt(e){return null!=e&&"function"==typeof e[Symbol.iterator]}(0,A.default)({FEATURES:{DEFAULT_HELPER_MANAGER:!0},scheduleRevalidate(){E._backburner.ensureInstance()},toBool:function(e){return(0,c.isProxy)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"content")),Boolean((0,l.get)(e,"isTruthy"))):(0,D.isArray)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),0!==e.length):(0,N.isHTMLSafe)(e)?Boolean(e.toString()):Boolean(e)},toIterator:function(e){return e instanceof bt?function(e){if(t=e,null===t||"object"!=typeof t&&"function"!=typeof t)return null var t -return Array.isArray(e)||(0,A.isEmberArray)(e)?wt.fromIndexable(e):St(e)?kt.from(e):Tt(e)?wt.fromForEachable(e):wt.fromIndexable(e)}(e.inner):function(e){if(!(0,c.isObject)(e))return null -return Array.isArray(e)?_t.from(e):(0,A.isEmberArray)(e)?Ot.from(e):St(e)?Et.from(e):Tt(e)?_t.fromForEachable(e):null}(e)},getProp:l._getProp,setProp:l._setProp,getPath:l.get,setPath:l.set,scheduleDestroy(e,t){(0,w.schedule)("actions",null,t,e)},scheduleDestroyed(e){(0,w.schedule)("destroy",null,e)},warnIfStyleNotTrusted(e){},assert(e,t,r){0},deprecate(e,t,r){0}}) -class Rt{constructor(e,t){this.owner=e,this.isInteractive=t,this.enableDebugTooling=k.ENV._DEBUG_RENDER_TREE}onTransactionCommit(){}}var Pt=ke((({positional:e,named:t})=>{const r=e[0] +return Array.isArray(e)||(0,M.isEmberArray)(e)?wt.fromIndexable(e):Rt(e)?kt.from(e):Tt(e)?wt.fromForEachable(e):wt.fromIndexable(e)}(e.inner):function(e){if(!(0,c.isObject)(e))return null +return Array.isArray(e)?_t.from(e):(0,M.isEmberArray)(e)?Ot.from(e):Rt(e)?Ct.from(e):Tt(e)?_t.fromForEachable(e):null}(e)},getProp:l._getProp,setProp:l._setProp,getPath:l.get,setPath:l.set,scheduleDestroy(e,t){(0,E.schedule)("actions",null,t,e)},scheduleDestroyed(e){(0,E.schedule)("destroy",null,e)},warnIfStyleNotTrusted(e){},assert(e,t,r){0},deprecate(e,t,r){0}}) +class St{constructor(e,t){this.owner=e,this.isInteractive=t,this.enableDebugTooling=T.ENV._DEBUG_RENDER_TREE}onTransactionCommit(){}}var Pt=Te((({positional:e,named:t})=>{const r=e[0] let n=t.type,i=t.loc,s=t.original;(0,o.valueForRef)(n),(0,o.valueForRef)(i),(0,o.valueForRef)(s) return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(r) return e}))})) let xt xt=e=>{let t=e.positional[0] return t} -var At=ke(xt),Mt=ke((({positional:e})=>(0,o.createComputeRef)((()=>{let t=e[0],r=e[1],n=(0,o.valueForRef)(t).split("."),i=n[n.length-1],s=(0,o.valueForRef)(r) -return!0===s?(0,_.dasherize)(i):s||0===s?String(s):""})))),Nt=ke((({positional:e},t)=>{let r=e[0],n=(0,o.valueForRef)(r) -return(0,o.createConstRef)(t.factoryFor(n)?.class,`(-resolve "${n}")`)})),jt=ke((({positional:e})=>{const t=e[0] +var At=Te(xt),Mt=Te((({positional:e})=>(0,o.createComputeRef)((()=>{let t=e[0],r=e[1],n=(0,o.valueForRef)(t).split("."),i=n[n.length-1],s=(0,o.valueForRef)(r) +return!0===s?(0,_.dasherize)(i):s||0===s?String(s):""})))),Nt=Te((({positional:e},t)=>{let r=e[0],n=(0,o.valueForRef)(r) +return(0,o.createConstRef)(t.factoryFor(n)?.class,`(-resolve "${n}")`)})),Dt=Te((({positional:e})=>{const t=e[0] return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(t) -return(0,c.isObject)(e)&&(0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),e}))})),Dt=ke((({positional:e})=>{let t=e[0] -return(0,o.createInvokableRef)(t)})),It=ke((({positional:e})=>{let t=e[0] -return(0,o.createReadOnlyRef)(t)})),Ft=ke((({positional:e,named:t})=>(0,o.createUnboundRef)((0,o.valueForRef)(e[0]),"(result of an `unbound` helper)"))),Lt=ke((()=>(0,o.createConstRef)(Bt(),"unique-id"))) +return(0,c.isObject)(e)&&(0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),e}))})),jt=Te((({positional:e})=>{let t=e[0] +return(0,o.createInvokableRef)(t)})),It=Te((({positional:e})=>{let t=e[0] +return(0,o.createReadOnlyRef)(t)})),Ft=Te((({positional:e,named:t})=>(0,o.createUnboundRef)((0,o.valueForRef)(e[0]),"(result of an `unbound` helper)"))),Lt=Te((()=>(0,o.createConstRef)(Bt(),"unique-id"))) function Bt(){return([3e7]+-1e3+-4e3+-2e3+-1e11).replace(/[0-3]/g,(e=>(4*e^16*Math.random()>>(2&e)).toString(16)))}const Ut=["alt","shift","meta","ctrl"],Ht=/^click|mouse|touch/ let $t={registeredActions:d.ActionManager.registeredActions,registerAction(e){let{actionId:t}=e return d.ActionManager.registeredActions[t]=e,t},unregisterAction(e){let{actionId:t}=e @@ -364,10 +370,11 @@ return void 0!==r?(0,o.valueForRef)(r):(0,o.valueForRef)(e)}handler(e){let{actio return!function(e,t){if(null==t){if(Ht.test(e.type))return(0,d.isSimpleClick)(e) t=""}if(t.indexOf("any")>=0)return!0 for(let r=0;r{let e=this.getActionArgs(),r={args:e,target:c,name:null};(0,o.isInvokableRef)(t)?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{(0,o.updateRef)(t,e[0])})):"function"!=typeof t?(r.name=t,c.send?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c.send.apply(c,[t,...e])})):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c[t].apply(c,e)}))):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{t.apply(c,e)}))})),p)}}const zt=new class{create(e,t,r,{named:n,positional:i}){let o=[] +return!0}(e,u)||(!1!==l&&e.preventDefault(),p||e.stopPropagation(),(0,E.join)((()=>{let e=this.getActionArgs(),r={args:e,target:c,name:null};(0,o.isInvokableRef)(t)?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{(0,o.updateRef)(t,e[0])})):"function"!=typeof t?(r.name=t,c.send?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c.send.apply(c,[t,...e])})):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c[t].apply(c,e)}))):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{t.apply(c,e)}))})),p)}}const zt=new class{create(e,t,r,{named:n,positional:i}){let o=[] for(let a=2;a1&&(n=a[0],r=a[1],t=(0,o.isInvokableRef)(r)?r:(0,o.valueForRef)(r)),e.actionName=t,e.implicitTarget=n,this.ensureEventSetup(e),$t.registerAction(e),i.setAttribute("data-ember-action",""),i.setAttribute(`data-ember-action-${s}`,String(s))}update(e){let{positional:t}=e,r=t[1];(0,o.isInvokableRef)(r)||(e.actionName=(0,o.valueForRef)(r)),e.getEventName()!==e.eventName&&(this.ensureEventSetup(e),e.eventName=e.getEventName())}ensureEventSetup(e){let t=e.owner.lookup("event_dispatcher:main") t?.setupHandlerForEmberEvent(e.eventName)}getTag(e){return e.tag}getDestroyable(e){return e}} var qt=(0,p.setInternalModifierManager)(zt,{}) @@ -380,25 +387,25 @@ if(r.named.has("model")&&(u=r.named.get("model")),void 0===u)s=c.create(),a=(0,o else{let e=(0,o.valueForRef)(u) s=c.create({model:e}),a=(0,o.createConstRef)(s,"this"),l={engine:i,controller:s,self:a,modelRef:u}}return n.debugRenderTree&&(0,O.associateDestroyableChild)(i,s),l}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r,n){return[{bucket:t.engine,instance:t.engine,type:"engine",name:e.name,args:r},{bucket:t.controller,instance:t.controller,type:"route-template",name:"application",args:r,template:n}]}getSelf({self:e}){return e}getDestroyable(e){return e.engine}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}update(e){let{controller:t,modelRef:r}=e void 0!==r&&t.set("model",(0,o.valueForRef)(r))}} -class Yt{constructor(e){this.resolvedName=e,this.handle=-1,this.manager=Wt,this.compilable=null,this.capabilities=(0,p.capabilityFlagsFrom)(Gt),this.state={name:e}}}const Qt=ke(((e,t)=>{let r,n,i,s=e.positional[0] +class Yt{constructor(e){this.resolvedName=e,this.handle=-1,this.manager=Wt,this.compilable=null,this.capabilities=(0,p.capabilityFlagsFrom)(Gt),this.state={name:e}}}const Qt=Te(((e,t)=>{let r,n,i,s=e.positional[0] return r=(0,y.createCapturedArgs)(e.named,y.EMPTY_POSITIONAL),(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(s) -return"string"==typeof e?(n===e||(n=e,i=(0,y.curry)(T.CurriedType.Component,new Yt(e),t,r,!0)),i):(i=null,n=null,null)}))})),Kt=ke(((e,t,r)=>{let n=(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(r.get("outletState")) +return"string"==typeof e?(n===e||(n=e,i=(0,y.curry)(R.CurriedType.Component,new Yt(e),t,r,!0)),i):(i=null,n=null,null)}))})),Kt=Te(((e,t,r)=>{let n=(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(r.get("outletState")) return e?.outlets?.main})),i=null,s=null return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(n),r=function(e,t){if(void 0===t)return null let r=t.render if(void 0===r)return null let n=r.template if(void 0===n)return null -be(n)&&(n=n(r.owner)) +ye(n)&&(n=n(r.owner)) return{ref:e,name:r.name,template:n,controller:r.controller,model:r.model}}(n,e) if(!function(e,t){if(null===e)return null===t if(null===t)return!1 return e.template===t.template&&e.controller===t.controller}(r,i))if(i=r,null!==r){let a=(0,v.dict)(),l=(0,o.childRefFromParts)(n,["render","model"]),u=(0,o.valueForRef)(l) a.model=(0,o.createComputeRef)((()=>(i===r&&(u=(0,o.valueForRef)(l)),u))) let c=(0,y.createCapturedArgs)(a,y.EMPTY_POSITIONAL) -s=(0,y.curry)(T.CurriedType.Component,new ht(r),e?.render?.owner??t,c,!0)}else s=null +s=(0,y.curry)(R.CurriedType.Component,new ht(r),e?.render?.owner??t,c,!0)}else s=null return s}))})) -function Jt(e){return{object:`component:${e}`}}const Xt={action:Se,mut:Dt,readonly:It,unbound:Ft,"-hash":y.hash,"-each-in":yt,"-normalize-class":Mt,"-resolve":Nt,"-track-array":jt,"-mount":Qt,"-outlet":Kt,"-in-el-null":At},Zt={...Xt,array:y.array,concat:y.concat,fn:y.fn,get:y.get,hash:y.hash,"unique-id":Lt} +function Jt(e){return{object:`component:${e}`}}const Xt={action:Se,mut:jt,readonly:It,unbound:Ft,"-hash":y.hash,"-each-in":yt,"-normalize-class":Mt,"-resolve":Nt,"-track-array":Dt,"-mount":Qt,"-outlet":Kt,"-in-el-null":At},Zt={...Xt,array:y.array,concat:y.concat,fn:y.fn,get:y.get,hash:y.hash,"unique-id":Lt} Zt["-disallow-dynamic-resolution"]=Pt const er={action:qt},tr={...er,on:y.on} new WeakSet @@ -407,7 +414,7 @@ if(void 0!==r)return r let n=t.factoryFor(`helper:${e}`) if(void 0===n)return null let i=n.class -return void 0===i?null:"function"==typeof i&&!0===i[Ke]?((0,p.setInternalHelperManager)(Ze,n),n):i}lookupBuiltInHelper(e){return Xt[e]??null}lookupModifier(e,t){let r=tr[e] +return void 0===i?null:"function"==typeof i&&!0===i[Je]?((0,p.setInternalHelperManager)(et,n),n):i}lookupBuiltInHelper(e){return Xt[e]??null}lookupModifier(e,t){let r=tr[e] if(void 0!==r)return r let n=t.factoryFor(`modifier:${e}`) return void 0===n?null:n.class||null}lookupBuiltInModifier(e){return er[e]??null}lookupComponent(e,t){let r=function(e,t,r){let n=function(e,t){let r=`component:${e}` @@ -423,16 +430,15 @@ let o=this.componentDefinitionCache.get(n) if(void 0!==o)return o null===i&&null!==r.layout&&(i=r.layout(t)) let s=(0,m._instrumentStart)("render.getComponentDefinition",Jt,e),a=null -if(null===r.component)if(k.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS)a={state:(0,y.templateOnlyComponent)(void 0,e),manager:y.TEMPLATE_ONLY_COMPONENT_MANAGER,template:i} -else{let e=t.factoryFor(E.privatize`component:-default`) -a={state:e,manager:(0,p.getInternalComponentManager)(e.class),template:i}}else{let e=r.component,t=e.class,n=(0,p.getInternalComponentManager)(t) -a={state:qe(n)?e:t,manager:n,template:i}}return s(),this.componentDefinitionCache.set(n,a),a}}const nr="-top-level" +if(null===r.component)a={state:(0,y.templateOnlyComponent)(void 0,e),manager:y.TEMPLATE_ONLY_COMPONENT_MANAGER,template:i} +else{let e=r.component,t=e.class,n=(0,p.getInternalComponentManager)(t) +a={state:Ge(n)?e:t,manager:n,template:i}}return s(),this.componentDefinitionCache.set(n,a),a}}const nr="-top-level" class ir{static extend(e){return class extends ir{static create(t){return t?super.create(Object.assign({},e,t)):super.create(e)}}}static reopenClass(e){Object.assign(this,e)}static create(e){let{environment:t,application:r,template:n}=e,i=(0,u.getOwner)(e),o=n(i) return new ir(t,i,o,r)}constructor(e,t,r,n){this._environment=e,this.owner=t,this.template=r,this.namespace=n let i=(0,s.createTag)(),a={outlets:{main:void 0},render:{owner:t,into:void 0,outlet:"main",name:nr,controller:void 0,model:void 0,template:r}},l=this.ref=(0,o.createComputeRef)((()=>((0,s.consumeTag)(i),a)),(e=>{(0,s.dirtyTag)(i),a.outlets.main=e})) this.state={ref:l,name:nr,template:r,controller:void 0,model:void 0}}appendTo(e){let t t=this._environment.hasDOM&&"string"==typeof e?document.querySelector(e):e -let r=this.owner.lookup("renderer:-dom");(0,w.schedule)("render",r,"appendOutletView",this,t)}rerender(){}setOutletState(e){(0,o.updateRef)(this.ref,e)}destroy(){}}e.OutletView=ir +let r=this.owner.lookup("renderer:-dom");(0,E.schedule)("render",r,"appendOutletView",this,t)}rerender(){}setOutletState(e){(0,o.updateRef)(this.ref,e)}destroy(){}}e.OutletView=ir class or{constructor(e,t){this.view=e,this.outletState=t}child(){return new or(this.view,this.outletState)}get(e){return this.outletState}set(e,t){return this.outletState=t,t}}const sr=()=>{} class ar{constructor(e,t,r,n,i,o,s,a,l){this.root=e,this.runtime=t,this.id=e instanceof ir?(0,c.guidFor)(e):(0,d.getViewId)(e),this.result=void 0,this.destroyed=!1,this.render=()=>{let e=(0,v.unwrapTemplate)(i).asLayout(),u=(0,y.renderMain)(t,r,n,o,l(t.env,{element:s,nextSibling:null}),e,a),c=this.result=u.sync() this.render=()=>c.rerender({alwaysRevalidate:!1})}}isFor(e){return this.root===e}destroy(){let{result:e,runtime:{env:t}}=this @@ -440,25 +446,24 @@ this.destroyed=!0,this.runtime=void 0,this.root=null,this.result=void 0,this.ren function ur(e){let t=lr.indexOf(e) lr.splice(t,1)}let cr=null let pr=0 -w._backburner.on("begin",(function(){for(let e of lr)e._scheduleRevalidate()})),w._backburner.on("end",(function(){for(let e of lr)if(!e._isValid()){if(pr>k.ENV._RERENDER_LOOP_LIMIT)throw pr=0,e.destroy(),new Error("infinite rendering invalidation detected") -return pr++,w._backburner.join(null,sr)}pr=0,function(){if(null!==cr){let e=cr.resolve -cr=null,w._backburner.join(null,e)}}()})) -class dr{static create(e){let{_viewRegistry:t}=e,r=(0,u.getOwner)(e),n=r.lookup("service:-document"),i=r.lookup("-environment:main"),o=r.lookup(E.privatize`template:-root`),s=r.lookup("service:-dom-builder") +E._backburner.on("begin",(function(){for(let e of lr)e._scheduleRevalidate()})),E._backburner.on("end",(function(){for(let e of lr)if(!e._isValid()){if(pr>T.ENV._RERENDER_LOOP_LIMIT)throw pr=0,e.destroy(),new Error("infinite rendering invalidation detected") +return pr++,E._backburner.join(null,sr)}pr=0,function(){if(null!==cr){let e=cr.resolve +cr=null,E._backburner.join(null,e)}}()})) +class dr{static create(e){let{_viewRegistry:t}=e,r=(0,u.getOwner)(e),n=r.lookup("service:-document"),i=r.lookup("-environment:main"),o=r.lookup(k.privatize`template:-root`),s=r.lookup("service:-dom-builder") return new this(r,n,i,o,t,s)}constructor(e,r,n,i,o,s=y.clientBuilder){this._inRenderTransaction=!1,this._lastRevision=-1,this._destroyed=!1,this._owner=e,this._rootTemplate=i(e),this._viewRegistry=o||e.lookup("-view-registry:main"),this._roots=[],this._removedRoots=[],this._builder=s,this._isInteractive=n.isInteractive let a=this._runtimeResolver=new rr,l=(0,S.artifacts)() this._context=(0,t.programCompilationContext)(l,a,(e=>new S.RuntimeOpImpl(e))) -let u=new Rt(e,n.isInteractive) -this._runtime=(0,y.runtimeContext)({appendOperations:n.hasDOM?new y.DOMTreeConstruction(r):new P.NodeDOMTreeConstruction(r),updateOperations:new y.DOMChanges(r)},u,l,a)}get debugRenderTree(){let{debugRenderTree:e}=this._runtime.env -return e}appendOutletView(e,t){let r=function(e){if(k.ENV._APPLICATION_TEMPLATE_WRAPPER){const t=Object.assign({},ct,{dynamicTag:!0,elementHook:!0,wrapped:!0}),r=new class extends pt{getTagName(){return"div"}getCapabilities(){return t}didCreateElement(e,t){t.setAttribute("class","ember-view"),t.setAttribute("id",(0,c.guidFor)(e))}} -return new ht(e.state,r)}return new ht(e.state)}(e) -this._appendDefinition(e,(0,y.curry)(T.CurriedType.Component,r,e.owner,null,!0),t)}appendTo(e,t){let r=new gt(e) -this._appendDefinition(e,(0,y.curry)(T.CurriedType.Component,r,this._owner,null,!0),t)}_appendDefinition(e,t,r){let n=(0,o.createConstRef)(t,"this"),i=new or(null,o.UNDEFINED_REFERENCE),s=new ar(e,this._runtime,this._context,this._owner,this._rootTemplate,n,r,i,this._builder) +let u=new St(e,n.isInteractive) +this._runtime=(0,y.runtimeContext)({appendOperations:n.hasDOM?new y.DOMTreeConstruction(r):new x.NodeDOMTreeConstruction(r),updateOperations:new y.DOMChanges(r)},u,l,a)}get debugRenderTree(){let{debugRenderTree:e}=this._runtime.env +return e}appendOutletView(e,t){let r=new ht(e.state) +this._appendDefinition(e,(0,y.curry)(R.CurriedType.Component,r,e.owner,null,!0),t)}appendTo(e,t){let r=new gt(e) +this._appendDefinition(e,(0,y.curry)(R.CurriedType.Component,r,this._owner,null,!0),t)}_appendDefinition(e,t,r){let n=(0,o.createConstRef)(t,"this"),i=new or(null,o.UNDEFINED_REFERENCE),s=new ar(e,this._runtime,this._context,this._owner,this._rootTemplate,n,r,i,this._builder) this._renderRoot(s)}rerender(){this._scheduleRevalidate()}register(e){let t=(0,d.getViewId)(e) this._viewRegistry[t]=e}unregister(e){delete this._viewRegistry[(0,d.getViewId)(e)]}remove(e){e._transitionTo("destroying"),this.cleanupRootFor(e),this._isInteractive&&e.trigger("didDestroyElement")}cleanupRootFor(e){if(this._destroyed)return let t=this._roots,r=this._roots.length for(;r--;){let n=t[r] n.isFor(e)&&(n.destroy(),t.splice(r,1))}}destroy(){this._destroyed||(this._destroyed=!0,this._clearAllRoots())}getElement(e){if(this._isInteractive)return(0,d.getViewElement)(e) -throw new Error("Accessing `this.element` is not allowed in non-interactive environments (such as FastBoot).")}getBounds(e){let t=e[Le] +throw new Error("Accessing `this.element` is not allowed in non-interactive environments (such as FastBoot).")}getBounds(e){let t=e[Be] return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}createElement(e){return this._runtime.env.getAppendOperations().createElement(e)}_renderRoot(e){let{_roots:t}=this var r t.push(e),1===t.length&&(r=this,lr.push(r)),this._renderRootsTransaction()}_renderRoots(){let e,{_roots:t,_runtime:r,_removedRoots:n}=this @@ -470,9 +475,9 @@ this._inRenderTransaction=!0 let e=!1 try{this._renderRoots(),e=!0}finally{e||(this._lastRevision=(0,s.valueForTag)(s.CURRENT_TAG)),this._inRenderTransaction=!1}}_clearAllRoots(){let e=this._roots for(let t of e)t.destroy() -this._removedRoots.length=0,this._roots=[],e.length&&ur(this)}_scheduleRevalidate(){w._backburner.scheduleOnce("render",this,this._revalidate)}_isValid(){return this._destroyed||0===this._roots.length||(0,s.validateTag)(s.CURRENT_TAG,this._lastRevision)}_revalidate(){this._isValid()||this._renderRootsTransaction()}}e.Renderer=dr +this._removedRoots.length=0,this._roots=[],e.length&&ur(this)}_scheduleRevalidate(){E._backburner.scheduleOnce("render",this,this._revalidate)}_isValid(){return this._destroyed||0===this._roots.length||(0,s.validateTag)(s.CURRENT_TAG,this._lastRevision)}_revalidate(){this._isValid()||this._renderRootsTransaction()}}e.Renderer=dr let hr={} -var fr=(0,D.createTemplateFactory)({id:"2c6+lAmT",block:'[[[46,[28,[32,0],null,null],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/outlet.hbs",scope:()=>[Kt],isStrictMode:!0}) +var fr=(0,I.createTemplateFactory)({id:"2c6+lAmT",block:'[[[46,[28,[32,0],null,null],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/outlet.hbs",scope:()=>[Kt],isStrictMode:!0}) e.componentCapabilities=p.componentCapabilities,e.modifierCapabilities=p.modifierCapabilities})),e("@ember/-internals/meta/index",["exports","@ember/-internals/meta/lib/meta"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Meta",{enumerable:!0,get:function(){return t.Meta}}),Object.defineProperty(e,"UNDEFINED",{enumerable:!0,get:function(){return t.UNDEFINED}}),Object.defineProperty(e,"counters",{enumerable:!0,get:function(){return t.counters}}),Object.defineProperty(e,"meta",{enumerable:!0,get:function(){return t.meta}}),Object.defineProperty(e,"peekMeta",{enumerable:!0,get:function(){return t.peekMeta}}),Object.defineProperty(e,"setMeta",{enumerable:!0,get:function(){return t.setMeta}})})),e("@ember/-internals/meta/lib/meta",["exports","@ember/-internals/utils","@ember/debug","@glimmer/destroyable"],(function(e,t,r,n){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.meta=e.counters=e.UNDEFINED=e.Meta=void 0,e.peekMeta=d,e.setMeta=p @@ -523,7 +528,7 @@ let r=new l(e) return p(e,r),r} function f(e,t,r,n){for(let i=e.length-1;i>=0;i--){let o=e[i] if(o.event===t&&o.target===r&&o.method===n)return i}return-1}})),e("@ember/-internals/metal/index",["exports","@ember/-internals/meta","@ember/-internals/utils","@ember/debug","@glimmer/destroyable","@glimmer/validator","@ember/-internals/environment","@ember/runloop","@glimmer/manager","@ember/array/-internals","ember/version","@ember/-internals/owner"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.TrackedDescriptor=e.SYNC_OBSERVERS=e.PROXY_CONTENT=e.PROPERTY_DID_CHANGE=e.NAMESPACES_BY_ID=e.NAMESPACES=e.Libraries=e.DEBUG_INJECTION_FUNCTIONS=e.ComputedProperty=e.ComputedDescriptor=e.ASYNC_OBSERVERS=void 0,e._getPath=Ee,e._getProp=Ce,e._setProp=Se,e.activateObserver=w,e.addArrayObserver=function(e,t,r){return q(e,t,r,d)},e.addListener=d,e.addNamespace=function(e){Be.unprocessedNamespaces=!0,He.push(e)},e.addObserver=_,e.alias=function(e){return re(new Pe(e),Re)},e.arrayContentDidChange=U,e.arrayContentWillChange=B,e.autoComputed=function(...e){return re(new he(e),fe)},e.beginPropertyChanges=I,e.cached=void 0,e.changeProperties=L,e.computed=me,Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return o.createCache}}),e.defineDecorator=be,e.defineProperty=ge,e.defineValue=ye,e.deprecateProperty=function(e,t,r,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,set(e){Te(this,r,e)},get(){return we(this,r)}})},e.descriptorForDecorator=oe,e.descriptorForProperty=ie,e.eachProxyArrayDidChange=function(e,t,r,n){let i=Me.get(e) +Object.defineProperty(e,"__esModule",{value:!0}),e.TrackedDescriptor=e.SYNC_OBSERVERS=e.PROXY_CONTENT=e.PROPERTY_DID_CHANGE=e.NAMESPACES_BY_ID=e.NAMESPACES=e.Libraries=e.DEBUG_INJECTION_FUNCTIONS=e.ComputedProperty=e.ComputedDescriptor=e.ASYNC_OBSERVERS=void 0,e._getPath=Ce,e._getProp=Ee,e._setProp=Re,e.activateObserver=w,e.addArrayObserver=function(e,t,r){return q(e,t,r,d)},e.addListener=d,e.addNamespace=function(e){Be.unprocessedNamespaces=!0,He.push(e)},e.addObserver=_,e.alias=function(e){return re(new Pe(e),Se)},e.arrayContentDidChange=U,e.arrayContentWillChange=B,e.autoComputed=function(...e){return re(new he(e),fe)},e.beginPropertyChanges=I,e.cached=void 0,e.changeProperties=L,e.computed=me,Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return o.createCache}}),e.defineDecorator=be,e.defineProperty=ge,e.defineValue=ye,e.deprecateProperty=function(e,t,r,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,set(e){Te(this,r,e)},get(){return we(this,r)}})},e.descriptorForDecorator=oe,e.descriptorForProperty=ie,e.eachProxyArrayDidChange=function(e,t,r,n){let i=Me.get(e) void 0!==i&&i.arrayDidChange(e,t,r,n)},e.eachProxyArrayWillChange=function(e,t,r,n){let i=Me.get(e) void 0!==i&&i.arrayWillChange(e,t,r,n)},e.endPropertyChanges=F,e.expandProperties=ue,e.findNamespace=function(e){Le||qe() return $e[e]} @@ -535,8 +540,8 @@ if(!s)continue a&&h(e,r,o,s),o||(o=e) let l=typeof s "string"!==l&&"symbol"!==l||(s=o[s]),s.apply(o,n)}return!0}e.findNamespaces=Ve,e.flushAsyncObservers=function(e=!0){let r=(0,o.valueForTag)(o.CURRENT_TAG) -if(S===r)return -S=r,v.forEach(((r,n)=>{let i=(0,t.peekMeta)(n) +if(R===r)return +R=r,v.forEach(((r,n)=>{let i=(0,t.peekMeta)(n) r.forEach(((r,s)=>{if(!(0,o.validateTag)(r.tag,r.lastRevision)){let l=()=>{try{f(n,s,[n,r.path],void 0,i)}finally{r.tag=Q(n,r.path,(0,o.tagMetaFor)(n),(0,t.peekMeta)(n)),r.lastRevision=(0,o.valueForTag)(r.tag)}} e?(0,a.schedule)("actions",l):l()}}))}))},e.get=we,e.getCachedValueFor=function(e,r){let n=(0,t.peekMeta)(e) return n?n.valueFor(r):void 0},e.getProperties=function(e,t){let r,n={},i=1 @@ -552,7 +557,7 @@ return r.lookup(`${e}:${n||t}`)} 0 let o=me({get:i,set(e,t){ge(this,e,null,t)}}) return r?o(r[0],r[1],r[2]):o},e.isClassicDecorator=se,e.isComputed=function(e,t){return Boolean(ie(e,t))},Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return o.isConst}}),e.isElementDescriptor=J,e.isNamespaceSearchDisabled=function(){return Le},e.libraries=void 0,e.makeComputedDecorator=re,e.markObjectAsDirty=M,e.nativeDescDecorator=function(e){let t=function(){return e} -return ae(t),t},e.notifyPropertyChange=D,e.objectAt=$,e.on=function(...e){let t=e.pop(),n=e +return ae(t),t},e.notifyPropertyChange=j,e.objectAt=$,e.on=function(...e){let t=e.pop(),n=e return(0,r.setListeners)(t,n),t},e.processAllNamespaces=qe,e.processNamespace=ze,e.removeArrayObserver=function(e,t,r){return q(e,t,r,h)},e.removeListener=h,e.removeNamespace=function(e){let t=(0,r.getName)(e) delete $e[t],He.splice(He.indexOf(e),1),t in s.context.lookup&&e===s.context.lookup[t]&&(s.context.lookup[t]=void 0)},e.removeObserver=function(e,r,n,i,o=b){let s=g(r),a=(0,t.peekMeta)(e) null!==a&&(a.isPrototypeMeta(e)||a.isInitializing())||k(e,s,o) @@ -561,7 +566,7 @@ var i},e.replaceInNativeArray=z,e.revalidateObservers=T e.sendEvent=f,e.set=Te,e.setClassicDecorator=ae,e.setNamespaceSearchDisabled=function(e){Le=Boolean(e)},e.setProperties=function(e,t){if(null===t||"object"!=typeof t)return t return L((()=>{let r=Object.keys(t) for(let n of r)Te(e,n,t[n])})),t},e.setUnprocessedMixins=function(){Ue=!0},e.tagForObject=function(e){if((0,r.isObject)(e))return(0,o.tagFor)(e,x) -return o.CONSTANT_TAG},e.tagForProperty=A,e.tracked=je,e.trySet=function(e,t,r){return Te(e,t,r,!0)} +return o.CONSTANT_TAG},e.tagForProperty=A,e.tracked=De,e.trySet=function(e,t,r){return Te(e,t,r,!0)} const m=":change" function g(e){return e+m}const b=!s.ENV._DEFAULT_ASYNC_OBSERVERS,y=e.SYNC_OBSERVERS=new Map,v=e.ASYNC_OBSERVERS=new Map function _(e,r,n,i,o=b){let s=g(r) @@ -572,12 +577,12 @@ return r.has(e)||(r.set(e,new Map),(0,i.registerDestructor)(e,(()=>function(e){y v.size>0&&v.delete(e)}(e)),!0)),r.get(e)}function w(e,r,n=!1){let i=O(e,n) if(i.has(r))i.get(r).count++ else{let n=r.substring(0,r.lastIndexOf(":")),s=Q(e,n,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)) -i.set(r,{count:1,path:n,tag:s,lastRevision:(0,o.valueForTag)(s),suspended:!1})}}let C=!1,E=[] -function k(e,t,r=!1){if(!0===C)return void E.push([e,t,r]) +i.set(r,{count:1,path:n,tag:s,lastRevision:(0,o.valueForTag)(s),suspended:!1})}}let E=!1,C=[] +function k(e,t,r=!1){if(!0===E)return void C.push([e,t,r]) let n=!0===r?y:v,i=n.get(e) if(void 0!==i){let r=i.get(t) -r.count--,0===r.count&&(i.delete(t),0===i.size&&n.delete(e))}}function T(e){v.has(e)&&v.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)})),y.has(e)&&y.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)}))}let S=0 -function R(){y.forEach(((e,r)=>{let n=(0,t.peekMeta)(r) +r.count--,0===r.count&&(i.delete(t),0===i.size&&n.delete(e))}}function T(e){v.has(e)&&v.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)})),y.has(e)&&y.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)}))}let R=0 +function S(){y.forEach(((e,r)=>{let n=(0,t.peekMeta)(r) e.forEach(((e,i)=>{if(!e.suspended&&!(0,o.validateTag)(e.tag,e.lastRevision))try{e.suspended=!0,f(r,i,[r,e.path],void 0,n)}finally{e.tag=Q(r,e.path,(0,o.tagMetaFor)(r),(0,t.peekMeta)(r)),e.lastRevision=(0,o.valueForTag)(e.tag),e.suspended=!1}}))}))}function P(e,t,r){let n=y.get(e) if(!n)return let i=n.get(g(t)) @@ -586,15 +591,15 @@ function A(e,t,r=!1,n){let i=(0,l.getCustomTagFor)(e) if(void 0!==i)return i(e,t,r) let s=(0,o.tagFor)(e,t,n) return s}function M(e,t){(0,o.dirtyTagFor)(e,t),(0,o.dirtyTagFor)(e,x)}const N=e.PROPERTY_DID_CHANGE=Symbol("PROPERTY_DID_CHANGE") -let j=0 -function D(e,r,n,i){let o=void 0===n?(0,t.peekMeta)(e):n -null!==o&&(o.isInitializing()||o.isPrototypeMeta(e))||(M(e,r),j<=0&&R(),N in e&&(4===arguments.length?e[N](r,i):e[N](r)))}function I(){j++,C=!0}function F(){j--,j<=0&&(R(),function(){C=!1 -for(let[e,t,r]of E)k(e,t,r) -E=[]}())}function L(e){I() +let D=0 +function j(e,r,n,i){let o=void 0===n?(0,t.peekMeta)(e):n +null!==o&&(o.isInitializing()||o.isPrototypeMeta(e))||(M(e,r),D<=0&&S(),N in e&&(4===arguments.length?e[N](r,i):e[N](r)))}function I(){D++,E=!0}function F(){D--,D<=0&&(S(),function(){E=!1 +for(let[e,t,r]of C)k(e,t,r) +C=[]}())}function L(e){I() try{e()}finally{F()}}function B(e,t,r,n){return void 0===t?(t=0,r=n=-1):(void 0===r&&(r=-1),void 0===n&&(n=-1)),f(e,"@array:before",[e,t,r,n]),e}function U(e,r,n,i,o=!0){void 0===r?(r=0,n=i=-1):(void 0===n&&(n=-1),void 0===i&&(i=-1)) let s=(0,t.peekMeta)(e) -if(o&&((i<0||n<0||i-n!=0)&&D(e,"length",s),D(e,"[]",s)),f(e,"@array:change",[e,r,n,i]),null!==s){let t=-1===n?0:n,o=e.length-((-1===i?0:i)-t),a=r<0?o+r:r -if(void 0!==s.revisionFor("firstObject")&&0===a&&D(e,"firstObject",s),void 0!==s.revisionFor("lastObject")){o-1{n=t.call(e,r)}));(0,o.updateTag)(a,s),i.setValueFor(r,n),i.setRevisionFor(r,(0,o.valueForTag)(a)),W(i,r,n)}return(0,o.consumeTag)(a),Array.isArray(n)&&(0,o.consumeTag)((0,o.tagFor)(n,"[]",s)),n}}class fe extends Function{readOnly(){let e=oe(this) @@ -661,19 +666,19 @@ return 0===arguments.length?t._meta||{}:(t._meta=e,this)}get _getter(){return oe l&&a.teardown(e,r,s),se(n)?be(e,r,n,s):null==n?ye(e,r,i,l,!0):Object.defineProperty(e,r,n),s.isPrototypeMeta(e)||T(e)}function be(e,t,r,n){let i return i=r(e,t,void 0,n),Object.defineProperty(e,t,i),r}function ye(e,t,r,n,i=!0){return!0===n||!1===i?Object.defineProperty(e,t,{configurable:!0,enumerable:i,writable:!0,value:r}):e[t]=r,r}const ve=new r.Cache(1e3,(e=>e.indexOf("."))) function _e(e){return"string"==typeof e&&-1!==ve.get(e)}e.PROXY_CONTENT=(0,r.symbol)("PROXY_CONTENT") -function Oe(e){return"object"==typeof e&&null!==e&&"function"==typeof e.unknownProperty}function we(e,t){return _e(t)?Ee(e,t):Ce(e,t)}function Ce(e,t){if(null==e)return +function Oe(e){return"object"==typeof e&&null!==e&&"function"==typeof e.unknownProperty}function we(e,t){return _e(t)?Ce(e,t):Ee(e,t)}function Ee(e,t){if(null==e)return let r -return"object"==typeof e||"function"==typeof e?(r=e[t],void 0===r&&"object"==typeof e&&!(t in e)&&Oe(e)&&(r=e.unknownProperty(t)),(0,o.isTracking)()&&((0,o.consumeTag)((0,o.tagFor)(e,t)),(Array.isArray(r)||(0,u.isEmberArray)(r))&&(0,o.consumeTag)((0,o.tagFor)(r,"[]")))):r=e[t],r}function Ee(e,t,r){let n="string"==typeof t?t.split("."):t +return"object"==typeof e||"function"==typeof e?(r=e[t],void 0===r&&"object"==typeof e&&!(t in e)&&Oe(e)&&(r=e.unknownProperty(t)),(0,o.isTracking)()&&((0,o.consumeTag)((0,o.tagFor)(e,t)),(Array.isArray(r)||(0,u.isEmberArray)(r))&&(0,o.consumeTag)((0,o.tagFor)(r,"[]")))):r=e[t],r}function Ce(e,t,r){let n="string"==typeof t?t.split("."):t for(let i of n){if(null==e||e.isDestroyed)return if(r&&("__proto__"===i||"constructor"===i))return -e=Ce(e,i)}return e}Ce("foo","a"),Ce("foo",1),Ce({},"a"),Ce({},1),Ce({unknownProperty(){}},"a"),Ce({unknownProperty(){}},1),we({},"foo"),we({},"foo.bar") +e=Ee(e,i)}return e}Ee("foo","a"),Ee("foo",1),Ee({},"a"),Ee({},1),Ee({unknownProperty(){}},"a"),Ee({unknownProperty(){}},1),we({},"foo"),we({},"foo.bar") let ke={} function Te(e,t,r,n){return e.isDestroyed?r:_e(t)?function(e,t,r,n){let i=t.split("."),o=i.pop() -let s=Ee(e,i,!0) +let s=Ce(e,i,!0) if(null!=s)return Te(s,o,r) -if(!n)throw new Error(`Property set failed: object in path "${i.join(".")}" could not be found.`)}(e,t,r,n):Se(e,t,r)}function Se(e,t,n){let i,o=(0,r.lookupDescriptor)(e,t) -return null!==o&&te.has(o.set)?(e[t]=n,n):(i=e[t],void 0!==i||"object"!=typeof e||t in e||"function"!=typeof e.setUnknownProperty?(e[t]=n,i!==n&&D(e,t)):e.setUnknownProperty(t,n),n)}(0,r.setProxy)(ke),(0,o.track)((()=>Ce({},"a"))),(0,o.track)((()=>Ce({},1))),(0,o.track)((()=>Ce({a:[]},"a"))),(0,o.track)((()=>Ce({a:ke},"a"))) -class Re extends Function{readOnly(){return oe(this).readOnly(),this}oneWay(){return oe(this).oneWay(),this}meta(e){let t=oe(this) +if(!n)throw new Error(`Property set failed: object in path "${i.join(".")}" could not be found.`)}(e,t,r,n):Re(e,t,r)}function Re(e,t,n){let i,o=(0,r.lookupDescriptor)(e,t) +return null!==o&&te.has(o.set)?(e[t]=n,n):(i=e[t],void 0!==i||"object"!=typeof e||t in e||"function"!=typeof e.setUnknownProperty?(e[t]=n,i!==n&&j(e,t)):e.setUnknownProperty(t,n),n)}(0,r.setProxy)(ke),(0,o.track)((()=>Ee({},"a"))),(0,o.track)((()=>Ee({},1))),(0,o.track)((()=>Ee({a:[]},"a"))),(0,o.track)((()=>Ee({a:ke},"a"))) +class Se extends Function{readOnly(){return oe(this).readOnly(),this}oneWay(){return oe(this).oneWay(),this}meta(e){let t=oe(this) if(0===arguments.length)return t._meta||{} t._meta=e}}class Pe extends X{constructor(e){super(),this.altKey=e}setup(e,t,r,n){super.setup(e,t,r,n),G.add(this)}get(e,r){let n,i=(0,t.meta)(e),s=(0,o.tagMetaFor)(e),a=(0,o.tagFor)(e,r,s);(0,o.untrack)((()=>{n=we(e,this.altKey)})) let l=i.revisionFor(r) @@ -683,10 +688,10 @@ for(let r of t)if(r.name===e)return r}register(e,t,r){let n=this._registry.lengt this._getLibraryByName(e)||(r&&(n=this._coreLibIndex++),this._registry.splice(n,0,{name:e,version:t}))}registerCoreLibrary(e,t){this.register(e,t,!0)}deRegister(e){let t,r=this._getLibraryByName(e) r&&(t=this._registry.indexOf(r),this._registry.splice(t,1))}}e.Libraries=Ne;(e.libraries=new Ne).registerCoreLibrary("Ember",c.default) e.DEBUG_INJECTION_FUNCTIONS=void 0 -function je(...e){if(!J(e)){let t=e[0] +function De(...e){if(!J(e)){let t=e[0] 0 -let r=t?t.initializer:void 0,n=t?t.value:void 0,i=function(e,t,i,o,s){return De([e,t,{initializer:r||(()=>n)}])} -return ae(i),i}return De(e)}function De([e,r,n]){let{getter:i,setter:s}=(0,o.trackedData)(r,n?n.initializer:void 0) +let r=t?t.initializer:void 0,n=t?t.value:void 0,i=function(e,t,i,o,s){return je([e,t,{initializer:r||(()=>n)}])} +return ae(i),i}return je(e)}function je([e,r,n]){let{getter:i,setter:s}=(0,o.trackedData)(r,n?n.initializer:void 0) function a(){let e=i(this) return(Array.isArray(e)||(0,u.isEmberArray)(e))&&(0,o.consumeTag)((0,o.tagFor)(e,"[]")),e}function l(e){s(this,e),(0,o.dirtyTagFor)(this,x)}let c={enumerable:!0,configurable:!0,isTracked:!0,get:a,set:l} return te.add(l),(0,t.meta)(e).writeDescriptors(r,new Ie(a,l)),c}class Ie{constructor(e,t){this._get=e,this._set=t,G.add(this)}get(e){return this._get.call(e)}set(e,t,r){this._set.call(e,r)}}e.TrackedDescriptor=Ie @@ -782,11 +787,11 @@ return t._dict=null,delete t._dict,t},e.enumerableSymbol=function(e){let t=u+Mat 0 return n},e.generateGuid=function(e,t=s){let r=t+o().toString() n(e)&&a.set(e,r) -return r},e.getDebugName=void 0,e.getName=function(e){return E.get(e)},e.guidFor=function(e){let t +return r},e.getDebugName=void 0,e.getName=function(e){return C.get(e)},e.guidFor=function(e){let t if(n(e))t=a.get(e),void 0===t&&(t=`${s}${o()}`,a.set(e,t)) else if(t=l.get(e),void 0===t){let r=typeof e -t="string"===r?`st${o()}`:"number"===r?`nu${o()}`:"symbol"===r?`sy${o()}`:`(${e})`,l.set(e,t)}return t},e.intern=r,e.isInternalSymbol=function(e){return-1!==c.indexOf(e)},e.isObject=n,e.isProxy=function(e){if(n(e))return S.has(e) -return!1},e.lookupDescriptor=C,e.observerListenerMetaFor=function(e){return v.get(e)},e.setListeners=function(e,t){_(e).listeners=t},e.setName=function(e,t){n(e)&&E.set(e,t)},e.setObservers=function(e,t){_(e).observers=t},e.setProxy=function(e){n(e)&&S.add(e)},e.teardownMandatorySetter=e.symbol=e.setupMandatorySetter=e.setWithMandatorySetter=void 0,e.toString=function e(t){if("string"==typeof t)return t +t="string"===r?`st${o()}`:"number"===r?`nu${o()}`:"symbol"===r?`sy${o()}`:`(${e})`,l.set(e,t)}return t},e.intern=r,e.isInternalSymbol=function(e){return-1!==c.indexOf(e)},e.isObject=n,e.isProxy=function(e){if(n(e))return R.has(e) +return!1},e.lookupDescriptor=E,e.observerListenerMetaFor=function(e){return v.get(e)},e.setListeners=function(e,t){_(e).listeners=t},e.setName=function(e,t){n(e)&&C.set(e,t)},e.setObservers=function(e,t){_(e).observers=t},e.setProxy=function(e){n(e)&&R.add(e)},e.teardownMandatorySetter=e.symbol=e.setupMandatorySetter=e.setWithMandatorySetter=void 0,e.toString=function e(t){if("string"==typeof t)return t if(null===t)return"null" if(void 0===t)return"undefined" if(Array.isArray(t)){let r="" @@ -812,13 +817,13 @@ this._super=t let n=e.apply(this,arguments) return this._super=r,n}O.add(r) let n=v.get(e) -return void 0!==n&&v.set(r,n),r}function C(e,t){let r=e +return void 0!==n&&v.set(r,n),r}function E(e,t){let r=e do{let e=Object.getOwnPropertyDescriptor(r,t) if(void 0!==e)return e r=Object.getPrototypeOf(r)}while(null!==r) -return null}const E=new WeakMap +return null}const C=new WeakMap const k=Object.prototype.toString -function T(e){return null==e}const S=new WeakSet +function T(e){return null==e}const R=new WeakSet e.Cache=class{constructor(e,t,r=new Map){this.limit=e,this.func=t,this.store=r,this.size=0,this.misses=0,this.hits=0}get(e){return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,this.set(e,this.func(e)))}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}} e.setupMandatorySetter=void 0,e.teardownMandatorySetter=void 0,e.setWithMandatorySetter=void 0})),e("@ember/-internals/views/index",["exports","@ember/-internals/views/lib/system/utils","@ember/-internals/views/lib/system/event_dispatcher","@ember/-internals/views/lib/component_lookup","@ember/-internals/views/lib/views/core_view","@ember/-internals/views/lib/mixins/class_names_support","@ember/-internals/views/lib/mixins/child_views_support","@ember/-internals/views/lib/mixins/view_state_support","@ember/-internals/views/lib/mixins/view_support","@ember/-internals/views/lib/mixins/action_support","@ember/-internals/views/lib/compat/attrs","@ember/-internals/views/lib/system/action_manager"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ActionManager",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(e,"ActionSupport",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(e,"ChildViewsSupport",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"ClassNamesSupport",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"ComponentLookup",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"CoreView",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"EventDispatcher",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"MUTABLE_CELL",{enumerable:!0,get:function(){return c.MUTABLE_CELL}}),Object.defineProperty(e,"ViewMixin",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"ViewStateSupport",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"addChildView",{enumerable:!0,get:function(){return t.addChildView}}),Object.defineProperty(e,"clearElementView",{enumerable:!0,get:function(){return t.clearElementView}}),Object.defineProperty(e,"clearViewElement",{enumerable:!0,get:function(){return t.clearViewElement}}),Object.defineProperty(e,"constructStyleDeprecationMessage",{enumerable:!0,get:function(){return t.constructStyleDeprecationMessage}}),Object.defineProperty(e,"getChildViews",{enumerable:!0,get:function(){return t.getChildViews}}),Object.defineProperty(e,"getElementView",{enumerable:!0,get:function(){return t.getElementView}}),Object.defineProperty(e,"getRootViews",{enumerable:!0,get:function(){return t.getRootViews}}),Object.defineProperty(e,"getViewBoundingClientRect",{enumerable:!0,get:function(){return t.getViewBoundingClientRect}}),Object.defineProperty(e,"getViewBounds",{enumerable:!0,get:function(){return t.getViewBounds}}),Object.defineProperty(e,"getViewClientRects",{enumerable:!0,get:function(){return t.getViewClientRects}}),Object.defineProperty(e,"getViewElement",{enumerable:!0,get:function(){return t.getViewElement}}),Object.defineProperty(e,"getViewId",{enumerable:!0,get:function(){return t.getViewId}}),Object.defineProperty(e,"isSimpleClick",{enumerable:!0,get:function(){return t.isSimpleClick}}),Object.defineProperty(e,"setElementView",{enumerable:!0,get:function(){return t.setElementView}}),Object.defineProperty(e,"setViewElement",{enumerable:!0,get:function(){return t.setViewElement}})})),e("@ember/-internals/views/lib/compat/attrs",["exports"],(function(e){"use strict" @@ -840,12 +845,12 @@ const i=r.default.create({childViews:(0,t.nativeDescDecorator)({configurable:!1, e.default=i})),e("@ember/-internals/views/lib/mixins/class_names_support",["exports","@ember/-internals/metal","@ember/object/mixin","@ember/debug"],(function(e,t,r,n){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const i=Object.freeze([]),o=r.default.create({concatenatedProperties:["classNames","classNameBindings"],init(){this._super(...arguments)},classNames:i,classNameBindings:i}) -e.default=o})),e("@ember/-internals/views/lib/mixins/view_state_support",["exports","@ember/object/mixin"],(function(e,t){"use strict" +e.default=o})) +e("@ember/-internals/views/lib/mixins/view_state_support",["exports","@ember/object/mixin"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const r=t.default.create({_transitionTo(e){let t=this._currentState,r=this._currentState=this._states[e] this._state=e,t&&t.exit&&t.exit(this),r.enter&&r.enter(this)}}) -e.default=r})) -e("@ember/-internals/views/lib/mixins/view_support",["exports","@ember/-internals/utils","@ember/-internals/metal","@ember/object/mixin","@ember/debug","@ember/-internals/browser-environment","@ember/-internals/views/lib/system/utils"],(function(e,t,r,n,i,o,s){"use strict" +e.default=r})),e("@ember/-internals/views/lib/mixins/view_support",["exports","@ember/-internals/utils","@ember/-internals/metal","@ember/object/mixin","@ember/debug","@ember/-internals/browser-environment","@ember/-internals/views/lib/system/utils"],(function(e,t,r,n,i,o,s){"use strict" function a(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const l=n.default.create({concatenatedProperties:["attributeBindings"],nearestOfType(e){let t=this.parentView,r=e instanceof n.default?t=>e.detect(t):t=>e.detect(t.constructor) for(;t;){if(r(t))return t @@ -950,7 +955,7 @@ return void 0===i&&(i=(0,n.guidFor)(this),(0,n.setName)(this,i)),i}nameClasses() e.default=o})),e("@ember/array/-internals",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.isEmberArray=function(e){return t.has(e)},e.setEmberArray=function(e){t.add(e)} const t=new WeakSet})),e("@ember/array/index",["exports","@ember/-internals/metal","@ember/object","@ember/object/mixin","@ember/debug","@ember/enumerable","@ember/enumerable/mutable","@ember/utils","@ember/-internals/environment","@ember/object/observable","@ember/array/-internals","@ember/array/lib/make-array"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.NativeArray=e.MutableArray=e.A=void 0,e.isArray=C,Object.defineProperty(e,"makeArray",{enumerable:!0,get:function(){return p.default}}),e.removeAt=O,e.uniqBy=f +Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.NativeArray=e.MutableArray=e.A=void 0,e.isArray=E,Object.defineProperty(e,"makeArray",{enumerable:!0,get:function(){return p.default}}),e.removeAt=O,e.uniqBy=f const d=Object.freeze([]),h=e=>e function f(e,t=h){let n=x(),i=new Set,o="function"==typeof t?t:e=>(0,r.get)(e,t) return e.forEach((e=>{let t=o(e) @@ -959,13 +964,13 @@ return t?e=>i===(0,r.get)(e,n):e=>Boolean((0,r.get)(e,n))}function g(e,r,n){let for(let o=n;o!n(e,t,r)),0)}function _(e,t,r=0,n){let i=e.length -return r<0&&(r+=i),g(e,n&&t!=t?e=>e!=e:e=>e===t,r)}function O(e,r,n){return(0,t.replace)(e,r,n??1,d),e}function w(e,r,n){return(0,t.replace)(e,r,0,[n]),n}function C(e){if(!e||e.setInterval)return!1 +return r<0&&(r+=i),g(e,n&&t!=t?e=>e!=e:e=>e===t,r)}function O(e,r,n){return(0,t.replace)(e,r,n??1,d),e}function w(e,r,n){return(0,t.replace)(e,r,0,[n]),n}function E(e){if(!e||e.setInterval)return!1 if(Array.isArray(e)||T.detect(e))return!0 let t=(0,a.typeOf)(e) if("array"===t)return!0 let r=e.length -return"number"==typeof r&&r==r&&"object"===t}function E(e){let r=(0,t.computed)(e) -return r.enumerable=!1,r}function k(e){return this.map((t=>(0,r.get)(t,e)))}const T=n.default.create(o.default,{init(){this._super(...arguments),(0,c.setEmberArray)(this)},objectsAt(e){return e.map((e=>(0,t.objectAt)(this,e)))},"[]":E({get(){return this},set(e,t){return this.replace(0,this.length,t),this}}),firstObject:E((function(){return(0,t.objectAt)(this,0)})).readOnly(),lastObject:E((function(){return(0,t.objectAt)(this,this.length-1)})).readOnly(),slice(e=0,r){let n,i=x(),o=this.length +return"number"==typeof r&&r==r&&"object"===t}function C(e){let r=(0,t.computed)(e) +return r.enumerable=!1,r}function k(e){return this.map((t=>(0,r.get)(t,e)))}const T=n.default.create(o.default,{init(){this._super(...arguments),(0,c.setEmberArray)(this)},objectsAt(e){return e.map((e=>(0,t.objectAt)(this,e)))},"[]":C({get(){return this},set(e,t){return this.replace(0,this.length,t),this}}),firstObject:C((function(){return(0,t.objectAt)(this,0)})).readOnly(),lastObject:C((function(){return(0,t.objectAt)(this,this.length-1)})).readOnly(),slice(e=0,r){let n,i=x(),o=this.length for(e<0&&(e=o+e),n=void 0===r||r>o?o:r<0?o+r:r;e=n)&&(r=n-1),r<0&&(r+=n) for(let i=r;i>=0;i--)if((0,t.objectAt)(this,i)===e)return i @@ -979,7 +984,7 @@ return this.forEach((n=>r.push(n[e]?.(...t)))),r},toArray(){return this.map((e=> return this.toArray().sort(((t,n)=>{for(let i=0;it!==e:e=>e==e -return this.filter(t)}}),S=e.MutableArray=n.default.create(T,s.default,{clear(){let e=this.length +return this.filter(t)}}),R=e.MutableArray=n.default.create(T,s.default,{clear(){let e=this.length return 0===e||this.replace(0,e,d),this},insertAt(e,t){return w(this,e,t),this},removeAt(e,t){return O(this,e,t)},pushObject(e){return w(this,this.length,e)},pushObjects(e){return this.replace(this.length,0,e),this},popObject(){let e=this.length if(0===e)return null let r=(0,t.objectAt)(this,e-1) @@ -994,11 +999,11 @@ return this.replace(0,t,e),this},removeObject(e){let r=this.length||0 for(;--r>=0;){(0,t.objectAt)(this,r)===e&&this.removeAt(r)}return this},removeObjects(e){(0,t.beginPropertyChanges)() for(let t=e.length-1;t>=0;t--)this.removeObject(e[t]) return(0,t.endPropertyChanges)(),this},addObject(e){return this.includes(e)||this.pushObject(e),this},addObjects(e){return(0,t.beginPropertyChanges)(),e.forEach((e=>this.addObject(e))),(0,t.endPropertyChanges)(),this}}) -let R=e.NativeArray=n.default.create(S,u.default,{objectAt(e){return this[e]},replace(e,r,n=d){return(0,t.replaceInNativeArray)(this,e,r,n),this}}) +let S=e.NativeArray=n.default.create(R,u.default,{objectAt(e){return this[e]},replace(e,r,n=d){return(0,t.replaceInNativeArray)(this,e,r,n),this}}) const P=["length"] -R.keys().forEach((e=>{Array.prototype[e]&&P.push(e)})),e.NativeArray=R=R.without(...P) +S.keys().forEach((e=>{Array.prototype[e]&&P.push(e)})),e.NativeArray=S=S.without(...P) let x=e.A=void 0 -l.ENV.EXTEND_PROTOTYPES.Array?(R.apply(Array.prototype,!0),e.A=x=function(e){return e||[]}):e.A=x=function(e){return(0,c.isEmberArray)(e)?e:R.apply(e??[])} +l.ENV.EXTEND_PROTOTYPES.Array?(S.apply(Array.prototype,!0),e.A=x=function(e){return e||[]}):e.A=x=function(e){return(0,c.isEmberArray)(e)?e:S.apply(e??[])} e.default=T})),e("@ember/array/lib/make-array",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const{isArray:t}=Array @@ -1107,10 +1112,10 @@ let n=()=>{} e.registerHandler=n let i=()=>{} e.missingOptionsDeprecation=void 0,e.missingOptionsIdDeprecation=void 0 -e.default=i})),e("@ember/deprecated-features/index",["exports"],(function(e){"use strict" +e.default=i})) +e("@ember/deprecated-features/index",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.ASSIGN=void 0 -e.ASSIGN=!0})) -e("@ember/destroyable/index",["exports","@glimmer/destroyable"],(function(e,t){"use strict" +e.ASSIGN=!0})),e("@ember/destroyable/index",["exports","@glimmer/destroyable"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"assertDestroyablesDestroyed",{enumerable:!0,get:function(){return t.assertDestroyablesDestroyed}}),Object.defineProperty(e,"associateDestroyableChild",{enumerable:!0,get:function(){return t.associateDestroyableChild}}),Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return t.destroy}}),Object.defineProperty(e,"enableDestroyableTracking",{enumerable:!0,get:function(){return t.enableDestroyableTracking}}),Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return t.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return t.isDestroying}}),e.registerDestructor=function(e,r){return(0,t.registerDestructor)(e,r)},e.unregisterDestructor=function(e,r){return(0,t.unregisterDestructor)(e,r)}})),e("@ember/engine/index",["exports","@ember/engine/lib/engine-parent","@ember/-internals/utils","@ember/controller","@ember/application/namespace","@ember/-internals/container","dag-map","@ember/debug","@ember/debug/container-debug-adapter","@ember/object","@ember/engine/instance","@ember/routing/-internals","@ember/-internals/views","@ember/-internals/glimmer","@ember/-internals/runtime"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.buildInitializerMethod=b,e.default=void 0,Object.defineProperty(e,"getEngineParent",{enumerable:!0,get:function(){return t.getEngineParent}}),Object.defineProperty(e,"setEngineParent",{enumerable:!0,get:function(){return t.setEngineParent}}) class m extends(i.default.extend(f.RegistryProxyMixin)){constructor(){super(...arguments),this._initializersRan=!1}static buildRegistry(e){let t=new o.Registry({resolver:g(e)}) @@ -1340,15 +1345,15 @@ return this.mixins=this.mixins.concat(O(e)),this}apply(e,t=!1){return y(e,[this] if(v.has(e))return w(e,this) let t=(0,r.peekMeta)(e) return null!==t&&t.hasMixin(this)}without(...e){let t=new _([this]) -return t._without=e,t}keys(){let e=C(this) +return t._without=e,t}keys(){let e=E(this) return e}toString(){return"(unknown mixin)"}}function O(e){let t,r=e&&e.length||0 if(r>0){t=new Array(r) for(let n=0;nw(e,t,r)))}function C(e,t=new Set,r=new Set){if(!r.has(e)){if(r.add(e),e.properties){let r=Object.keys(e.properties) -for(let e of r)t.add(e)}else e.mixins&&e.mixins.forEach((e=>C(e,t,r))) +return!!n&&n.some((e=>w(e,t,r)))}function E(e,t=new Set,r=new Set){if(!r.has(e)){if(r.add(e),e.properties){let r=Object.keys(e.properties) +for(let e of r)t.add(e)}else e.mixins&&e.mixins.forEach((e=>E(e,t,r))) return t}}e.default=_})),e("@ember/object/observable",["exports","@ember/-internals/meta","@ember/-internals/metal","@ember/object","@ember/object/mixin","@ember/debug"],(function(e,t,r,n,i,o){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const s=i.default.create({get(e){return(0,n.get)(this,e)},getProperties(...e){return(0,n.getProperties)(this,...e)},set(e,t){return(0,n.set)(this,e,t)},setProperties(e){return(0,n.setProperties)(this,e)},beginPropertyChanges(){return(0,r.beginPropertyChanges)(),this},endPropertyChanges(){return(0,r.endPropertyChanges)(),this},notifyPropertyChange(e){return(0,r.notifyPropertyChange)(this,e),this},addObserver(e,t,n,i){return(0,r.addObserver)(this,e,t,n,i),this},removeObserver(e,t,n,i){return(0,r.removeObserver)(this,e,t,n,i),this},hasObserverFor(e){return(0,r.hasListeners)(this,`${e}:change`)},incrementProperty(e,t=1){return(0,n.set)(this,e,(parseFloat((0,n.get)(this,e))||0)+t)},decrementProperty(e,t=1){return(0,n.set)(this,e,((0,n.get)(this,e)||0)-t)},toggleProperty(e){return(0,n.set)(this,e,!(0,n.get)(this,e))},cacheFor(e){let r=(0,t.peekMeta)(this) @@ -1385,9 +1390,9 @@ e=this.formatURL(e),t&&t.path===e||this.pushState(e)}replaceURL(e){let{state:t}= e=this.formatURL(e),t&&t.path===e||this.replaceState(e)}pushState(e){let t={path:e,uuid:o()} this.history.pushState(t,"",e),this._previousURL=this.getURL()}replaceState(e){let t={path:e,uuid:o()} this.history.replaceState(t,"",e),this._previousURL=this.getURL()}onUpdateURL(e){this._removeEventListener(),this._popstateHandler=()=>{(i||(i=!0,this.getURL()!==this._previousURL))&&e(this.getURL())},window.addEventListener("popstate",this._popstateHandler)}formatURL(e){let{rootURL:t,baseURL:r}=this -return""!==e?(t=t.replace(/\/$/,""),r=r.replace(/\/$/,"")):"/"===r[0]&&"/"===t[0]&&(r=r.replace(/\/$/,"")),r+t+e}willDestroy(){this._removeEventListener()}_removeEventListener(){this._popstateHandler&&window.removeEventListener("popstate",this._popstateHandler)}}e.default=s})),e("@ember/routing/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"LinkTo",{enumerable:!0,get:function(){return t.LinkTo}})})) -e("@ember/routing/lib/cache",["exports"],(function(e){"use strict" +return""!==e?(t=t.replace(/\/$/,""),r=r.replace(/\/$/,"")):"/"===r[0]&&"/"===t[0]&&(r=r.replace(/\/$/,"")),r+t+e}willDestroy(){this._removeEventListener()}_removeEventListener(){this._popstateHandler&&window.removeEventListener("popstate",this._popstateHandler)}}e.default=s})) +e("@ember/routing/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"LinkTo",{enumerable:!0,get:function(){return t.LinkTo}})})),e("@ember/routing/lib/cache",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 e.default=class{constructor(){this.cache=new Map}has(e){return this.cache.has(e)}stash(e,t,r){let n=this.cache.get(e) void 0===n&&(n=new Map,this.cache.set(e,n)),n.set(t,r)}lookup(e,t,r){if(!this.has(e))return r @@ -1479,61 +1484,61 @@ class n extends t.default{initState(){this._super(...arguments) let{rootURL:e}=this}getURL(){let{path:e,rootURL:t}=this return t=t.replace(/\/$/,""),e.replace(new RegExp(`^${t}(?=/|$)`),"")}setURL(e){this.path=e}onUpdateURL(e){this.updateCallback=e}handleURL(e){this.path=e,this.updateCallback&&this.updateCallback(e)}formatURL(e){let{rootURL:t}=this return""!==e&&(t=t.replace(/\/$/,"")),t+e}}e.default=n,n.reopen({path:"",rootURL:"/"})})),e("@ember/routing/route-info",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/routing/route",["exports","@ember/-internals/container","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/environment","@ember/routing/-internals","@ember/object","@ember/object/evented","@ember/array","@ember/-internals/runtime","@ember/utils","@ember/-internals/utils","@ember/controller","@ember/debug","@ember/engine/instance","@ember/object/compat","@ember/runloop","router_js","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.defaultSerialize=e.default=void 0,e.getFullQueryParams=k,e.getRenderState=function(e){return e[C]},e.hasDefaultSerialize=function(e){return e.serialize===P} -var _,O=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/routing/route",["exports","@ember/-internals/container","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/environment","@ember/routing/-internals","@ember/object","@ember/object/evented","@ember/array","@ember/-internals/runtime","@ember/utils","@ember/-internals/utils","@ember/controller","@ember/debug","@ember/-internals/deprecations","@ember/engine/instance","@ember/object/compat","@ember/runloop","router_js","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v,_){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.defaultSerialize=e.default=void 0,e.getFullQueryParams=T,e.getRenderState=function(e){return e[C]},e.hasDefaultSerialize=function(e){return e.serialize===x} +var O,w=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -const w=Symbol("render"),C=Symbol("render-state") -class E extends(s.default.extend(u.ActionHandler,a.default)){constructor(e){if(super(e),this.context={},this[_]=void 0,e){let r=e.lookup("router:main"),n=e.lookup(t.privatize`-bucket-cache:main`) +const E=Symbol("render"),C=Symbol("render-state") +class k extends(s.default.extend(u.ActionHandler,a.default)){constructor(e){if(super(e),this.context={},this[O]=void 0,e){let r=e.lookup("router:main"),n=e.lookup(t.privatize`-bucket-cache:main`) this._router=r,this._bucketCache=n,this._topLevelViewTemplate=e.lookup("template:-outlet"),this._environment=e.lookup("-environment:main")}}serialize(e,t){if(t.length<1||!e)return let r={} if(1===t.length){let[n]=t "object"==typeof e&&n in e?r[n]=(0,s.get)(e,n):/_id$/.test(n)?r[n]=(0,s.get)(e,"id"):(0,p.isProxy)(e)&&(r[n]=(0,s.get)(e,n))}else r=(0,s.getProperties)(e,t) return r}_setRouteName(e){this.routeName=e let t=(0,n.getOwner)(this) -this.fullRouteName=R(t,e)}_stashNames(e,t){if(this._names)return +this.fullRouteName=P(t,e)}_stashNames(e,t){if(this._names)return let r=this._names=e._names r.length||(r=(e=t)&&e._names||[]) let n=(0,s.get)(this,"_qp").qps,i=new Array(r.length) for(let o=0;o(e[t]=r,e)),a)}serializeQueryParamKey(e){return e}serializeQueryParam(e,t,r){return this._router._serializeQueryParam(e,r)}deserializeQueryParam(e,t,r){return this._router._deserializeQueryParam(e,r)}_optionsForQueryParam(e){const t=(0,s.get)(this,"queryParams") return(0,s.get)(t,e.urlKey)||(0,s.get)(t,e.prop)||t[e.urlKey]||t[e.prop]||{}}resetController(e,t,r){return this}exit(e){this.deactivate(e),this.trigger("deactivate",e),this.teardownViews()}_internalReset(e,t){let r=this.controller -r._qpDelegate=(0,s.get)(this,"_qp").states.inactive,this.resetController(r,e,t)}enter(e){this[C]=void 0,this.activate(e),this.trigger("activate",e)}deactivate(e){}activate(e){}intermediateTransitionTo(...e){let[t,...r]=(0,v.prefixRouteNameArg)(this,e) +r._qpDelegate=(0,s.get)(this,"_qp").states.inactive,this.resetController(r,e,t)}enter(e){this[C]=void 0,this.activate(e),this.trigger("activate",e)}deactivate(e){}activate(e){}intermediateTransitionTo(...e){let[t,...r]=(0,_.prefixRouteNameArg)(this,e) this._router.intermediateTransitionTo(t,...r)}refresh(){return this._router._routerMicrolib.refresh(this)}setup(e,t){let n=this.controllerName||this.routeName,i=this.controllerFor(n,!0)??this.generateController(n),o=(0,s.get)(this,"_qp") if(!this.controller){let e=o.propertyNames;(function(e,t){t.forEach((t=>{if(void 0===(0,r.descriptorForProperty)(e,t)){let n=(0,p.lookupDescriptor)(e,t) -null===n||"function"!=typeof n.get&&"function"!=typeof n.set||(0,r.defineProperty)(e,t,(0,m.dependentKeyCompat)({get:n.get,set:n.set}))}(0,r.addObserver)(e,`${t}.[]`,e,e._qpChanged,!1)}))})(i,e),this.controller=i}let a=o.states -if(i._qpDelegate=a.allowOverrides,t){(0,v.stashParamNames)(this._router,t[b.STATE_SYMBOL].routeInfos) -let e=this._bucketCache,r=t[b.PARAMS_SYMBOL] +null===n||"function"!=typeof n.get&&"function"!=typeof n.set||(0,r.defineProperty)(e,t,(0,g.dependentKeyCompat)({get:n.get,set:n.set}))}(0,r.addObserver)(e,`${t}.[]`,e,e._qpChanged,!1)}))})(i,e),this.controller=i}let a=o.states +if(i._qpDelegate=a.allowOverrides,t){(0,_.stashParamNames)(this._router,t[y.STATE_SYMBOL].routeInfos) +let e=this._bucketCache,r=t[y.PARAMS_SYMBOL] o.propertyNames.forEach((t=>{let n=o.map[t] n.values=r -let a=(0,v.calculateCacheKey)(n.route.fullRouteName,n.parts,n.values),l=e.lookup(a,t,n.undecoratedDefaultValue);(0,s.set)(i,t,l)})) -let n=T(this,t[b.STATE_SYMBOL]);(0,s.setProperties)(i,n)}this.setupController(i,e,t),this._environment.options.shouldRender&&this[w](),(0,r.flushAsyncObservers)(!1)}_qpChanged(e,t,r){if(!r)return -let n=this._bucketCache,i=(0,v.calculateCacheKey)(r.route.fullRouteName,r.parts,r.values) +let a=(0,_.calculateCacheKey)(n.route.fullRouteName,n.parts,n.values),l=e.lookup(a,t,n.undecoratedDefaultValue);(0,s.set)(i,t,l)})) +let n=R(this,t[y.STATE_SYMBOL]);(0,s.setProperties)(i,n)}this.setupController(i,e,t),this._environment.options.shouldRender&&this[E](),(0,r.flushAsyncObservers)(!1)}_qpChanged(e,t,r){if(!r)return +let n=this._bucketCache,i=(0,_.calculateCacheKey)(r.route.fullRouteName,r.parts,r.values) n.stash(i,e,t)}beforeModel(e){}afterModel(e,t){}redirect(e,t){}contextDidChange(){this.currentModel=this.context}model(e,t){let r,n,i,o=(0,s.get)(this,"_qp").map for(let s in e){if("queryParams"===s||o&&s in o)continue let t=s.match(/^(.*)_id$/) null!==t&&(r=t[1],i=e[s]),n=!0}if(!r){if(n)return Object.assign({},e) if(t.resolveIndex<1)return -return t[b.STATE_SYMBOL].routeInfos[t.resolveIndex-1].context}return this.findModel(r,i)}deserialize(e,t){return this.model(this._paramsFor(this.routeName,e),t)}findModel(e,t){if(i.ENV._NO_IMPLICIT_ROUTE_MODEL)return +return t[y.STATE_SYMBOL].routeInfos[t.resolveIndex-1].context}return this.findModel(r,i)}deserialize(e,t){return this.model(this._paramsFor(this.routeName,e),t)}findModel(e,t){if(i.ENV._NO_IMPLICIT_ROUTE_MODEL)return;(0,f.deprecateUntil)(`The implicit model loading behavior for routes is deprecated. Please define an explicit model hook for ${this.fullRouteName}.`,f.DEPRECATIONS.DEPRECATE_IMPLICIT_ROUTE_MODEL) const r="store"in this?this.store:(0,s.get)(this,"_store") return r.find(e,t)}setupController(e,t,r){e&&void 0!==t&&(0,s.set)(e,"model",t)}controllerFor(e,t=!1){let r=(0,n.getOwner)(this),i=r.lookup(`route:${e}`) i&&i.controllerName&&(e=i.controllerName) let o=r.lookup(`controller:${e}`) return o}generateController(e){let t=(0,n.getOwner)(this) return(0,o.generateController)(t,e)}modelFor(e){let t,r=(0,n.getOwner)(this),i=this._router&&this._router._routerMicrolib?this._router._routerMicrolib.activeTransition:void 0 -t=r.routable&&void 0!==i?R(r,e):e +t=r.routable&&void 0!==i?P(r,e):e let o=r.lookup(`route:${t}`) if(null!=i){let e=o&&o.routeName||t -if(Object.prototype.hasOwnProperty.call(i.resolvedModels,e))return i.resolvedModels[e]}return o?.currentModel}[(_=C,w)](){this[C]=function(e){let t=(0,n.getOwner)(e) +if(Object.prototype.hasOwnProperty.call(i.resolvedModels,e))return i.resolvedModels[e]}return o?.currentModel}[(O=C,E)](){this[C]=function(e){let t=(0,n.getOwner)(e) let r=e.routeName,i=t.lookup(`controller:${e.controllerName||r}`) let o=e.currentModel,s=t.lookup(`template:${e.templateName||r}`),a={owner:t,into:void 0,outlet:"main",name:r,controller:i,model:o,template:s?.(t)??e._topLevelViewTemplate(t)} 0 -return a}(this),(0,g.once)(this._router,"_setOutlets")}willDestroy(){this.teardownViews()}teardownViews(){this[C]&&(this[C]=void 0,(0,g.once)(this._router,"_setOutlets"))}buildRouteInfoMetadata(){}_paramsFor(e,t){return void 0!==this._router._routerMicrolib.activeTransition?this.paramsFor(e):t}get _store(){const e=(0,n.getOwner)(this) +return a}(this),(0,b.once)(this._router,"_setOutlets")}willDestroy(){this.teardownViews()}teardownViews(){this[C]&&(this[C]=void 0,(0,b.once)(this._router,"_setOutlets"))}buildRouteInfoMetadata(){}_paramsFor(e,t){return void 0!==this._router._routerMicrolib.activeTransition?this.paramsFor(e):t}get _store(){const e=(0,n.getOwner)(this) this.routeName return{find(t,r){let n=e.factoryFor(`model:${t}`) if(n)return n=n.class,n.find(r)}}}get _qp(){let e={},t=this.controllerName||this.routeName,r=(0,n.getOwner)(this),i=r.lookup(`controller:${t}`),a=(0,s.get)(this,"queryParams"),l=Object.keys(a).length>0 @@ -1541,7 +1546,7 @@ if(i){let t=(0,s.get)(i,"queryParams")||[] e=function(e,t){let r={},n={defaultValue:!0,type:!0,scope:!0,as:!0} for(let i in e)Object.prototype.hasOwnProperty.call(e,i)&&(r[i]={...e[i],...t[i]},n[i]=!0) for(let i in t)Object.prototype.hasOwnProperty.call(t,i)&&!n[i]&&(r[i]={...t[i],...e[i]}) -return r}((0,v.normalizeControllerQueryParams)(t),a)}else l&&(i=(0,o.generateController)(r,t),e=a) +return r}((0,_.normalizeControllerQueryParams)(t),a)}else l&&(i=(0,o.generateController)(r,t),e=a) let u=[],p={},d=[] for(let n in e){if(!Object.prototype.hasOwnProperty.call(e,n))continue if("unknownProperty"===n||"_super"===n)continue @@ -1553,17 +1558,17 @@ let f=o.type||(0,c.typeOf)(h),m=this.serializeQueryParam(h,l,f),g=`${t}:${n}`,b= p[n]=p[l]=p[g]=b,u.push(b),d.push(n)}return{qps:u,map:p,propertyNames:d,states:{inactive:(e,t)=>{let r=p[e] this._qpChanged(e,t,r)},active:(e,t)=>{let r=p[e] return this._qpChanged(e,t,r),this._activeQPChanged(r,t)},allowOverrides:(e,t)=>{let r=p[e] -return this._qpChanged(e,t,r),this._updatingQPChanged(r)}}}}}function k(e,t){if(t.fullQueryParams)return t.fullQueryParams +return this._qpChanged(e,t,r),this._updatingQPChanged(r)}}}}}function T(e,t){if(t.fullQueryParams)return t.fullQueryParams let r=t.routeInfos.every((e=>e.route)),n={...t.queryParams} -return e._deserializeQueryParams(t.routeInfos,n),r&&(t.fullQueryParams=n),n}function T(e,t){t.queryParamsFor=t.queryParamsFor||{} +return e._deserializeQueryParams(t.routeInfos,n),r&&(t.fullQueryParams=n),n}function R(e,t){t.queryParamsFor=t.queryParamsFor||{} let r=e.fullRouteName,n=t.queryParamsFor[r] if(n)return n -let i=k(e._router,t),o=t.queryParamsFor[r]={},a=(0,s.get)(e,"_qp").qps +let i=T(e._router,t),o=t.queryParamsFor[r]={},a=(0,s.get)(e,"_qp").qps for(let s of a){let e=s.prop in i -o[s.prop]=e?i[s.prop]:S(s.defaultValue)}return o}function S(e){return Array.isArray(e)?(0,l.A)(e.slice()):e}function R(e,t){if(e.routable){let r=e.mountPoint -return"application"===t?r:`${r}.${t}`}return t}E.isRouteFactory=!0,O([s.computed],E.prototype,"_store",null),O([s.computed],E.prototype,"_qp",null) -const P=e.defaultSerialize=E.prototype.serialize -E.reopen({mergedProperties:["queryParams"],queryParams:{},templateName:null,controllerName:null,send(...e){if(this._router&&this._router._routerMicrolib||!(0,h.isTesting)())this._router.send(...e) +o[s.prop]=e?i[s.prop]:S(s.defaultValue)}return o}function S(e){return Array.isArray(e)?(0,l.A)(e.slice()):e}function P(e,t){if(e.routable){let r=e.mountPoint +return"application"===t?r:`${r}.${t}`}return t}k.isRouteFactory=!0,w([s.computed],k.prototype,"_store",null),w([s.computed],k.prototype,"_qp",null) +const x=e.defaultSerialize=k.prototype.serialize +k.reopen({mergedProperties:["queryParams"],queryParams:{},templateName:null,controllerName:null,send(...e){if(this._router&&this._router._routerMicrolib||!(0,h.isTesting)())this._router.send(...e) else{let t=e.shift(),r=this.actions[t] if(r)return r.apply(this,e)}},actions:{queryParamsDidChange(e,t,r){let n=(0,s.get)(this,"_qp").map,i=Object.keys(e).concat(Object.keys(r)) for(let o of i){let e=n[o] @@ -1571,12 +1576,12 @@ if(e){let t=this._optionsForQueryParam(e) if((0,s.get)(t,"refreshModel")&&this._router.currentState){this.refresh() break}}}return!0},finalizeQueryParamChange(e,t,n){if("application"!==this.fullRouteName)return!0 if(!n)return -let i,o=n[b.STATE_SYMBOL].routeInfos,a=this._router,l=a._queryParamsFor(o),u=a._qpUpdates,c=!1;(0,v.stashParamNames)(a,o) +let i,o=n[y.STATE_SYMBOL].routeInfos,a=this._router,l=a._queryParamsFor(o),u=a._qpUpdates,c=!1;(0,_.stashParamNames)(a,o) for(let r of l.qps){let o,a,l=r.route,p=l.controller,d=r.urlKey in e&&r.urlKey if(u.has(r.urlKey)?(o=(0,s.get)(p,r.prop),a=l.serializeQueryParam(o,r.urlKey,r.type)):d?(a=e[d],void 0!==a&&(o=l.deserializeQueryParam(a,r.urlKey,r.type))):(a=r.serializedDefaultValue,o=S(r.defaultValue)),p._qpDelegate=(0,s.get)(l,"_qp").states.inactive,a!==r.serializedValue){if(n.queryParamsOnly&&!1!==i){let e=l._optionsForQueryParam(r),t=(0,s.get)(e,"replace") t?i=!0:!1===t&&(i=!1)}(0,s.set)(p,r.prop,o),c=!0}r.serializedValue=a,r.serializedDefaultValue===a||t.push({value:a,visible:!0,key:d||r.urlKey})}!0===c&&(0,r.flushAsyncObservers)(!1),i&&n.method("replace"),l.qps.forEach((e=>{let t=(0,s.get)(e.route,"_qp") e.route.controller._qpDelegate=(0,s.get)(t,"states.active")})),a._qpUpdates.clear()}}}) -e.default=E})),e("@ember/routing/router-service",["exports","@ember/-internals/owner","@ember/object/evented","@ember/debug","@ember/object/computed","@ember/service","@glimmer/validator","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,o,s,a,l){"use strict" +e.default=k})),e("@ember/routing/router-service",["exports","@ember/-internals/owner","@ember/object/evented","@ember/debug","@ember/object/computed","@ember/service","@glimmer/validator","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,o,s,a,l){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ROUTER=void 0 var u=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) @@ -1600,7 +1605,7 @@ let t=p(e,this.rootURL) return this._router._routerMicrolib.recognizeAndLoad(t)}refresh(e){if(!e)return this._router._routerMicrolib.refresh() let r=(0,t.getOwner)(this),n=r.lookup(`route:${e}`) return this._router._routerMicrolib.refresh(n)}}e.default=d,u([(0,i.readOnly)("_router.currentRouteName")],d.prototype,"currentRouteName",void 0),u([(0,i.readOnly)("_router.currentURL")],d.prototype,"currentURL",void 0),u([(0,i.readOnly)("_router.location")],d.prototype,"location",void 0),u([(0,i.readOnly)("_router.rootURL")],d.prototype,"rootURL",void 0),u([(0,i.readOnly)("_router.currentRoute")],d.prototype,"currentRoute",void 0)})),e("@ember/routing/router",["exports","@ember/-internals/container","@ember/object","@ember/owner","@ember/routing/-internals","@ember/routing/lib/utils","@ember/array","@ember/utils","@ember/object/evented","@ember/debug","@ember/runloop","@ember/routing/route","router_js","@ember/engine/instance"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h){"use strict" -function f(e){T(this),this._cancelSlowTransitionTimer(),this.notifyPropertyChange("url"),this.set("currentState",this.targetState)}function m(e,t){0}function g(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.triggerEvent=E +function f(e){T(this),this._cancelSlowTransitionTimer(),this.notifyPropertyChange("url"),this.set("currentState",this.targetState)}function m(e,t){0}function g(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.triggerEvent=C const{slice:b}=Array.prototype class y extends(r.default.extend(l.default)){static map(e){return this.dslCallbacks||(this.dslCallbacks=[],this.reopenClass({dslCallbacks:this.dslCallbacks})),this.dslCallbacks.push(e),this}static _routePath(e){let t,r,n,i=[] function o(e,t){for(let r=0;r{e.setURL(n),(0,r.set)(t,"currentURL",n)}))}didTransition(e){t.didTransition(e)}willTransition(e,r){t.willTransition(e,r)}triggerEvent(e,r,n,i){return E.bind(t)(e,r,n,i)}routeWillChange(e){t.trigger("routeWillChange",e),t._routerService.trigger("routeWillChange",e),e.isIntermediate&&t.set("currentRoute",e.to)}routeDidChange(e){t.set("currentRoute",e.to),(0,c.once)((()=>{t.trigger("routeDidChange",e),t._routerService.trigger("routeDidChange",e)}))}transitionDidError(e,r){return e.wasAborted||r.isAborted?(0,d.logAbort)(r):(r.trigger(!1,"error",e.error,r,e.route),t._isErrorHandled(e.error)?(r.rollback(),this.routeDidChange(r),e.error):(r.abort(),e.error))}replaceURL(n){if(e.replaceURL){let i=()=>{e.replaceURL(n),(0,r.set)(t,"currentURL",n)};(0,c.once)(i)}else this.updateURL(n)}}let a=this._routerMicrolib=new s,l=this.constructor.dslCallbacks||[g],u=this._buildDSL() +if(r)return r.serializeMethod||p.defaultSerialize}updateURL(n){(0,c.once)((()=>{e.setURL(n),(0,r.set)(t,"currentURL",n)}))}didTransition(e){t.didTransition(e)}willTransition(e,r){t.willTransition(e,r)}triggerEvent(e,r,n,i){return C.bind(t)(e,r,n,i)}routeWillChange(e){t.trigger("routeWillChange",e),t._routerService.trigger("routeWillChange",e),e.isIntermediate&&t.set("currentRoute",e.to)}routeDidChange(e){t.set("currentRoute",e.to),(0,c.once)((()=>{t.trigger("routeDidChange",e),t._routerService.trigger("routeDidChange",e)}))}transitionDidError(e,r){return e.wasAborted||r.isAborted?(0,d.logAbort)(r):(r.trigger(!1,"error",e.error,r,e.route),t._isErrorHandled(e.error)?(r.rollback(),this.routeDidChange(r),e.error):(r.abort(),e.error))}replaceURL(n){if(e.replaceURL){let i=()=>{e.replaceURL(n),(0,r.set)(t,"currentURL",n)};(0,c.once)(i)}else this.updateURL(n)}}let a=this._routerMicrolib=new s,l=this.constructor.dslCallbacks||[g],u=this._buildDSL() u.route("application",{path:"/",resetNamespace:!0,overrideNameAssertion:!0},(function(){for(let e=0;er.factoryFor(`route-map:${e}`),addRouteForEngine(e,r){t._engineInfoByRoute[e]||(t._engineInfoByRoute[e]=r)}} @@ -1644,7 +1649,7 @@ let a=e.lookup("-application-instance:main") a&&a.didCreateRootView(this._toplevelView)}}handleURL(e){let t=e.split(/#(.+)?/)[0] return this._doURLTransition("handleURL",t)}_doURLTransition(e,t){this._initialTransitionStarted=!0 let r=this._routerMicrolib[e](t||"/") -return S(r,this),r}transitionTo(...e){if((0,o.resemblesURL)(e[0]))return this._doURLTransition("transitionTo",e[0]) +return R(r,this),r}transitionTo(...e){if((0,o.resemblesURL)(e[0]))return this._doURLTransition("transitionTo",e[0]) let{routeName:t,models:r,queryParams:n}=(0,o.extractRouteArgs)(e) return this._doTransition(t,r,n)}intermediateTransitionTo(e,...t){this._routerMicrolib.intermediateTransitionTo(e,...t),T(this)}replaceWith(...e){return this.transitionTo(...e).method("replace")}generate(e,...t){let r=this._routerMicrolib.generate(e,...t) return this.location.formatURL(r)}isActive(e){return this._routerMicrolib.isActive(e)}isActiveIntent(e,t,r){return this.currentState.isActiveIntent(e,t,r)}send(e,...t){this._routerMicrolib.trigger(e,...t)}hasRoute(e){return this._routerMicrolib.hasRoute(e)}reset(){this._didSetupRouter=!1,this._initialTransitionStarted=!1,this._routerMicrolib&&this._routerMicrolib.reset()}willDestroy(){this._toplevelView&&(this._toplevelView.destroy(),this._toplevelView=null),super.willDestroy(),this.reset() @@ -1652,16 +1657,16 @@ let e=this._engineInstances for(let t in e){let r=e[t] for(let e in r){let t=r[e];(0,c.run)(t,"destroy")}}}_activeQPChanged(e,t){this._queuedQPChanges[e]=t,(0,c.once)(this,this._fireQueryParamTransition)}_updatingQPChanged(e){this._qpUpdates.add(e)}_fireQueryParamTransition(){this.transitionTo({queryParams:this._queuedQPChanges}),this._resetQueuedQueryParameterChanges()}_setupLocation(){let e=this.location,t=this.rootURL,i=(0,n.getOwner)(this) if("string"==typeof e){let t=i.lookup(`location:${e}`) -e=(0,r.set)(this,"location",t)}null!==e&&"object"==typeof e&&(t&&(0,r.set)(e,"rootURL",t),"function"==typeof e.initState&&e.initState())}_serializeQueryParams(e,t){R(this,e,t,((e,r,n)=>{if(n)delete t[e],t[n.urlKey]=n.route.serializeQueryParam(r,n.urlKey,n.type) +e=(0,r.set)(this,"location",t)}null!==e&&"object"==typeof e&&(t&&(0,r.set)(e,"rootURL",t),"function"==typeof e.initState&&e.initState())}_serializeQueryParams(e,t){S(this,e,t,((e,r,n)=>{if(n)delete t[e],t[n.urlKey]=n.route.serializeQueryParam(r,n.urlKey,n.type) else{if(void 0===r)return -t[e]=this._serializeQueryParam(r,(0,a.typeOf)(r))}}))}_serializeQueryParam(e,t){return null==e?e:"array"===t?JSON.stringify(e):`${e}`}_deserializeQueryParams(e,t){R(this,e,t,((e,r,n)=>{n&&(delete t[e],t[n.prop]=n.route.deserializeQueryParam(r,n.urlKey,n.type))}))}_deserializeQueryParam(e,t){return null==e?e:"boolean"===t?"true"===e:"number"===t?Number(e).valueOf():"array"===t?(0,s.A)(JSON.parse(e)):e}_pruneDefaultQueryParamValues(e,t){let r=this._queryParamsFor(e) +t[e]=this._serializeQueryParam(r,(0,a.typeOf)(r))}}))}_serializeQueryParam(e,t){return null==e?e:"array"===t?JSON.stringify(e):`${e}`}_deserializeQueryParams(e,t){S(this,e,t,((e,r,n)=>{n&&(delete t[e],t[n.prop]=n.route.deserializeQueryParam(r,n.urlKey,n.type))}))}_deserializeQueryParam(e,t){return null==e?e:"boolean"===t?"true"===e:"number"===t?Number(e).valueOf():"array"===t?(0,s.A)(JSON.parse(e)):e}_pruneDefaultQueryParamValues(e,t){let r=this._queryParamsFor(e) for(let n in t){let e=r.map[n] e&&e.serializedDefaultValue===t[n]&&delete t[n]}}_doTransition(e,t,r,n){let i=e||(0,o.getActiveTargetName)(this._routerMicrolib) this._initialTransitionStarted=!0 let s={} this._processActiveTransitionQueryParams(i,t,s,r),Object.assign(s,r),this._prepareQueryParams(i,t,s,Boolean(n)) let a=this._routerMicrolib.transitionTo(i,...t,{queryParams:s}) -return S(a,this),a}_processActiveTransitionQueryParams(e,t,r,n){if(!this._routerMicrolib.activeTransition)return +return R(a,this),a}_processActiveTransitionQueryParams(e,t,r,n){if(!this._routerMicrolib.activeTransition)return let i={},o=this._qpUpdates,s=(0,p.getFullQueryParams)(this,this._routerMicrolib.activeTransition[d.STATE_SYMBOL]) for(let a in s)o.has(a)||(i[a]=s[a]) this._fullyScopeQueryParams(e,t,n),this._fullyScopeQueryParams(e,t,i),Object.assign(r,i)}_prepareQueryParams(e,t,r,n){let i=k(this,e,t) @@ -1696,9 +1701,9 @@ v(e,((e,i)=>{if(i!==n){let t=w(e,"loading") if(t)return r.intermediateTransitionTo(t),!1}let o=O(e,"loading") return o?(r.intermediateTransitionTo(o),!1):t.pivotHandler!==e}))}} function O(e,t){let r=(0,n.getOwner)(e),{routeName:i,fullRouteName:o,_router:s}=e,a=`${o}_${t}` -return C(r,s,`${i}_${t}`,a)?a:""}function w(e,t){let r=(0,n.getOwner)(e),{routeName:i,fullRouteName:o,_router:s}=e,a="application"===o?t:`${o}.${t}` -return C(r,s,"application"===i?t:`${i}.${t}`,a)?a:""}function C(e,t,r,n){let i=t.hasRoute(n),o=e.factoryFor(`template:${r}`)||e.factoryFor(`route:${r}`) -return i&&o}function E(e,t,r,n){if(!e){if(t)return +return E(r,s,`${i}_${t}`,a)?a:""}function w(e,t){let r=(0,n.getOwner)(e),{routeName:i,fullRouteName:o,_router:s}=e,a="application"===o?t:`${o}.${t}` +return E(r,s,"application"===i?t:`${i}.${t}`,a)?a:""}function E(e,t,r,n){let i=t.hasRoute(n),o=e.factoryFor(`template:${r}`)||e.factoryFor(`route:${r}`) +return i&&o}function C(e,t,r,n){if(!e){if(t)return throw new Error(`Can't trigger action '${r}' because your app hasn't finished transitioning into its first route. To trigger an action on destination routes during a transition, you can call \`.send()\` on the \`Transition\` object passed to the \`model/beforeModel/afterModel\` hooks.`)}let i,o,s,a=!1 for(let u=e.length-1;u>=0;u--)if(i=e[u],o=i.route,s=o&&o.actions&&o.actions[r],s){if(!0!==s.apply(o,n))return void("error"===r&&o._router._markErrorAsHandled(n[0])) a=!0}let l=_[r] @@ -1707,9 +1712,9 @@ else if(!a&&!t)throw new Error(`Nothing handled the action '${r}'. If you did ha for(let s of i)s.isResolved?o[s.name]=s.params:o[s.name]=s.serialize(s.context) return n}function T(e){let t=e._routerMicrolib.currentRouteInfos if(0===t.length)return -let n=y._routePath(t),i=t[t.length-1],o=i.name,s=e.location,a=s.getURL();(0,r.set)(e,"currentPath",n),(0,r.set)(e,"currentRouteName",o),(0,r.set)(e,"currentURL",a)}function S(e,t){let r=new i.RouterState(t,t._routerMicrolib,e[d.STATE_SYMBOL]) +let n=y._routePath(t),i=t[t.length-1],o=i.name,s=e.location,a=s.getURL();(0,r.set)(e,"currentPath",n),(0,r.set)(e,"currentRouteName",o),(0,r.set)(e,"currentURL",a)}function R(e,t){let r=new i.RouterState(t,t._routerMicrolib,e[d.STATE_SYMBOL]) t.currentState||t.set("currentState",r),t.set("targetState",r),e.promise=e.catch((e=>{if(!t._isErrorHandled(e))throw e -t._clearHandledError(e)}),"Transition Error")}function R(e,t,r,n){let i=e._queryParamsFor(t) +t._clearHandledError(e)}),"Transition Error")}function S(e,t,r,n){let i=e._queryParamsFor(t) for(let o in r){if(!Object.prototype.hasOwnProperty.call(r,o))continue n(o,r[o],i.map[o])}}y.reopen({didTransition:f,willTransition:m,rootURL:"/",location:"hash",url:(0,r.computed)((function(){let e=(0,r.get)(this,"location") if("string"!=typeof e)return e.getURL()}))}) @@ -1754,9 +1759,9 @@ const i={undefined:0,null:1,boolean:2,number:3,string:4,array:5,object:6,instanc function o(e,t){return Math.sign(e-t)}function s(e){return r.Comparable.detect(e)}})),e("@ember/utils/lib/is-equal",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){if(e&&"function"==typeof e.isEqual)return e.isEqual(t) if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime() -return e===t}})),e("@ember/utils/lib/is_blank",["exports","@ember/utils/lib/is_empty"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return(0,t.default)(e)||"string"==typeof e&&!1===/\S/.test(e)}})) -e("@ember/utils/lib/is_empty",["exports","@ember/object","@ember/-internals/metal"],(function(e,t,r){"use strict" +return e===t}})) +e("@ember/utils/lib/is_blank",["exports","@ember/utils/lib/is_empty"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return(0,t.default)(e)||"string"==typeof e&&!1===/\S/.test(e)}})),e("@ember/utils/lib/is_empty",["exports","@ember/object","@ember/-internals/metal"],(function(e,t,r){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){if(null==e)return!0 if(!(0,r.hasUnknownProperty)(e)&&"number"==typeof e.size)return!e.size if("object"==typeof e){let r=(0,t.get)(e,"size") @@ -1773,7 +1778,7 @@ let i=r[n.call(e)]||"object" return i} const r={"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object AsyncFunction]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regexp","[object Object]":"object","[object FileList]":"filelist"},{toString:n}=Object.prototype})),e("@ember/version/index",["exports","ember/version"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"VERSION",{enumerable:!0,get:function(){return t.default}})})),e("@glimmer/debug",["exports","@glimmer/util","@glimmer/vm"],(function(e,t,r){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.CheckArray=E,e.CheckBoolean=e.CheckBlockSymbolTable=void 0,e.CheckDict=function(e){return new w(e)},e.CheckHandle=e.CheckFunction=e.CheckElement=e.CheckDocumentFragment=void 0,e.CheckInstanceof=function(e){return new m(e)},e.CheckInterface=C,e.CheckMaybe=function(e){return new b(e)},e.CheckObject=e.CheckNumber=e.CheckNull=e.CheckNode=void 0,e.CheckOption=function(e){return new g(e,null)},e.CheckOr=function(e,t){return new y(e,t)},e.CheckUnknown=e.CheckString=e.CheckSafeString=e.CheckProgramSymbolTable=e.CheckPrimitive=void 0,e.CheckValue=A,e.OPERAND_TYPES=e.META_KIND=void 0,e.buildEnum=function(e,t,r,n){let i,o=[`export enum ${e} {`] +Object.defineProperty(e,"__esModule",{value:!0}),e.CheckArray=C,e.CheckBoolean=e.CheckBlockSymbolTable=void 0,e.CheckDict=function(e){return new w(e)},e.CheckHandle=e.CheckFunction=e.CheckElement=e.CheckDocumentFragment=void 0,e.CheckInstanceof=function(e){return new m(e)},e.CheckInterface=E,e.CheckMaybe=function(e){return new b(e)},e.CheckObject=e.CheckNumber=e.CheckNull=e.CheckNode=void 0,e.CheckOption=function(e){return new g(e,null)},e.CheckOr=function(e,t){return new y(e,t)},e.CheckUnknown=e.CheckUndefined=e.CheckString=e.CheckSafeString=e.CheckProgramSymbolTable=e.CheckPrimitive=void 0,e.CheckValue=A,e.OPERAND_TYPES=e.META_KIND=void 0,e.buildEnum=function(e,t,r,n){let i,o=[`export enum ${e} {`] Object.values(t).forEach(((e,t)=>{o.push(` ${e.name} = ${r+t},`),i=t})),o.push(` Size = ${i+r+1},`),o.push("}") let s,a=o.join("\n") s=n?p` @@ -1827,11 +1832,11 @@ for(let n of Object.keys(e))r.push(`${" ".repeat(t+2)}${n}: ${h(e[n],t+2)},`) return r.push(`${" ".repeat(t)}}`),r.join("\n")}class f{constructor(e){this.expectedType=e}validate(e){return typeof e===this.expectedType}expected(){return`typeof ${this.expectedType}`}}class m{constructor(e){this.Class=e}validate(e){return!!e&&e instanceof this.Class}expected(){return`an instance of ${this.Class.name}`}}class g{constructor(e,t){this.checker=e,this.emptyValue=t}validate(e){return e===this.emptyValue||this.checker.validate(e)}expected(){return`${this.checker.expected()} or null`}}class b{constructor(e){this.checker=e}validate(e){return null==e||this.checker.validate(e)}expected(){return`${this.checker.expected()} or null or undefined`}}class y{constructor(e,t){this.left=e,this.right=t}validate(e){return this.left.validate(e)||this.right.validate(e)}expected(){return`${this.left.expected()} or ${this.right.expected()}`}}class v{constructor(e,t){this.value=e,this.desc=t}validate(e){return e===this.value}expected(){return this.desc}}class _{constructor(e){this.checkers=e}validate(e){return"object"==typeof e&&(null!=e&&Object.entries(this.checkers).every((([t,r])=>t in e&&r.validate(e[t]))))}expected(){return`{ ${Object.entries(this.checkers).map((([e,t])=>`${e}: ${t.expected()}`)).join(",")} }`}}class O{constructor(e){this.checker=e}validate(e){return null!=e&&(!!Array.isArray(e)&&e.every((e=>this.checker.validate(e))))}expected(){return`Array<${this.checker.expected()}>`}}class w{constructor(e){this.checker=e}validate(e){if(!("object"==typeof e&&null!==e&&null===Object.getPrototypeOf(e)))return!1 let{checker:t}=this for(let r in e)if(!t.validate(e[r]))return!1 -return!0}expected(){return"a primitive"}}function C(e){return new _(e)}function E(e){return new O(e)}function k(e,t){return`Got ${e}, expected:\n${t}`}let T=0 +return!0}expected(){return"a primitive"}}function E(e){return new _(e)}function C(e){return new O(e)}function k(e,t){return`Got ${e}, expected:\n${t}`}let T=0 e.CheckPrimitive=new class{validate(e){return"string"!=typeof e||"number"==typeof e||"string"==typeof e||null==e}expected(){return"a primitive"}},e.CheckFunction=new f("function") -const S=e.CheckNumber=new f("number"),R=e.CheckBoolean=new f("boolean"),P=(e.CheckHandle=S,e.CheckString=new f("string")),x=(e.CheckNull=new class{validate(e){return null===e}expected(){return"null"}},e.CheckUnknown=new class{constructor(){this.type=void 0}validate(e){return!0}expected(){return"any"}}) +const R=e.CheckNumber=new f("number"),S=e.CheckBoolean=new f("boolean"),P=(e.CheckHandle=R,e.CheckString=new f("string")),x=(e.CheckNull=new class{validate(e){return null===e}expected(){return"null"}},e.CheckUndefined=new class{validate(e){return void 0===e}expected(){return"undefined"}},e.CheckUnknown=new class{constructor(){this.type=void 0}validate(e){return!0}expected(){return"any"}}) e.CheckSafeString=new class{validate(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}expected(){return"SafeString"}},e.CheckObject=new class{validate(e){return"function"==typeof e||"object"==typeof e&&null!==e}expected(){return"an object or function (valid WeakMap key)"}} -function A(e,t=String(e)){return new v(e,t)}e.CheckBlockSymbolTable=C({parameters:E(S)}),e.CheckProgramSymbolTable=C({hasEval:R,symbols:E(P)}),e.CheckElement=C({nodeType:A(1),tagName:P,nextSibling:x}),e.CheckDocumentFragment=C({nodeType:A(11),nextSibling:x}),e.CheckNode=C({nodeType:S,nextSibling:x})})),e("@glimmer/destroyable",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" +function A(e,t=String(e)){return new v(e,t)}e.CheckBlockSymbolTable=E({parameters:C(R)}),e.CheckProgramSymbolTable=E({hasEval:S,symbols:C(P)}),e.CheckElement=E({nodeType:A(1),tagName:P,nextSibling:x}),e.CheckDocumentFragment=E({nodeType:A(11),nextSibling:x}),e.CheckNode=E({nodeType:R,nextSibling:x})})),e("@glimmer/destroyable",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e._hasDestroyableChildren=function(e){let t=i.get(e) return void 0!==t&&null!==t.children},e.assertDestroyablesDestroyed=void 0,e.associateDestroyableChild=function(e,t){0 let r=l(e),n=l(t) @@ -1877,7 +1882,7 @@ const r=k(_,e) if(void 0===r&&!0===t)return null return r},e.getInternalHelperManager=function(e,t){0 let r=k(w,e) -void 0===r&&"function"==typeof e&&(r=R) +void 0===r&&"function"==typeof e&&(r=S) if(r)return r if(!0===t)return null return null},e.getInternalModifierManager=function(e,t){0 @@ -1889,7 +1894,7 @@ return r},e.hasCapability=function(e,t){return(0,o.check)(e,o.CheckNumber),!!(e& return h({hasValue:Boolean(t.hasValue),hasDestroyable:Boolean(t.hasDestroyable),hasScheduledEffect:Boolean(t.hasScheduledEffect)})},e.managerHasCapability=function(e,t,r){return(0,o.check)(t,o.CheckNumber),!!(t&r)},e.modifierCapabilities=function(e,t={}){0 return h({disableAutoTracking:Boolean(t.disableAutoTracking)})},e.setComponentManager=function(e,t){return P(new N(e),t)},e.setComponentTemplate=function(e,t){0 0 -return I.set(t,e),t},e.setCustomTagFor=l,e.setHelperManager=function(e,t){return S(new y(e),t)},e.setInternalComponentManager=P,e.setInternalHelperManager=S,e.setInternalModifierManager=T,e.setModifierManager=function(e,t){return T(new D(e),t)} +return I.set(t,e),t},e.setCustomTagFor=l,e.setHelperManager=function(e,t){return R(new y(e),t)},e.setInternalComponentManager=P,e.setInternalHelperManager=R,e.setInternalModifierManager=T,e.setModifierManager=function(e,t){return T(new j(e),t)} const a=new WeakMap function l(e,t){a.set(e,t)}function u(e){if("symbol"==typeof e)return null const t=Number(e) @@ -1914,26 +1919,26 @@ const s=d(t),a=o.createHelper(e,s) if(g(o)){let e=(0,n.createComputeRef)((()=>o.getValue(a)),null,!1) return b(o)&&(0,r.associateDestroyableChild)(e,o.getDestroyable(a)),e}if(b(o)){let e=(0,n.createConstRef)(void 0,!1) return(0,r.associateDestroyableChild)(e,o.getDestroyable(a)),e}return n.UNDEFINED_REFERENCE}}}e.CustomHelperManager=y -class v{constructor(){this.capabilities={hasValue:!0,hasDestroyable:!1,hasScheduledEffect:!1}}createHelper(e,t){return{fn:e,args:t}}getValue({fn:e,args:t}){if(Object.keys(t.named).length>0){return e(...[...t.positional,t.named])}return e(...t.positional)}getDebugName(e){return e.name?`(helper function ${e.name})`:"(anonymous helper function)"}}const _=new WeakMap,O=new WeakMap,w=new WeakMap,C=Object.getPrototypeOf -function E(e,t,r){return e.set(r,t),r}function k(e,t){let r=t +class v{constructor(){this.capabilities={hasValue:!0,hasDestroyable:!1,hasScheduledEffect:!1}}createHelper(e,t){return{fn:e,args:t}}getValue({fn:e,args:t}){if(Object.keys(t.named).length>0){return e(...[...t.positional,t.named])}return e(...t.positional)}getDebugName(e){return e.name?`(helper function ${e.name})`:"(anonymous helper function)"}}const _=new WeakMap,O=new WeakMap,w=new WeakMap,E=Object.getPrototypeOf +function C(e,t,r){return e.set(r,t),r}function k(e,t){let r=t for(;null!=r;){const t=e.get(r) if(void 0!==t)return t -r=C(r)}}function T(e,t){return E(O,e,t)}function S(e,t){return E(w,e,t)}const R=new y((()=>new v)) -function P(e,t){return E(_,e,t)}const x={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +r=E(r)}}function T(e,t){return C(O,e,t)}function R(e,t){return C(w,e,t)}const S=new y((()=>new v)) +function P(e,t){return C(_,e,t)}const x={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} function A(e){return e.capabilities.asyncLifeCycleCallbacks}function M(e){return e.capabilities.updateHook}class N{constructor(e){this.componentManagerDelegates=new WeakMap,this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) if(void 0===r){let{factory:n}=this r=n(e),t.set(e,r)}return r}create(e,t,r){let n=this.getDelegateFor(e),i=d(r.capture()),o=n.createComponent(t,i) -return new j(o,n,i)}getDebugName(e){return"function"==typeof e?e.name:e.toString()}update(e){let{delegate:t}=e +return new D(o,n,i)}getDebugName(e){return"function"==typeof e?e.name:e.toString()}update(e){let{delegate:t}=e if(M(t)){let{component:r,args:n}=e t.updateComponent(r,n)}}didCreate({component:e,delegate:t}){A(t)&&t.didCreateComponent(e)}didUpdate({component:e,delegate:t}){(function(e){return A(e)&&M(e)})(t)&&t.didUpdateComponent(e)}didRenderLayout(){}didUpdateLayout(){}getSelf({component:e,delegate:t}){return(0,n.createConstRef)(t.getContext(e),"this")}getDestroyable(e){const{delegate:t}=e if(function(e){return e.capabilities.destructor}(t)){const{component:n}=e return(0,r.registerDestructor)(e,(()=>t.destroyComponent(n))),e}return null}getCapabilities(){return x}}e.CustomComponentManager=N -class j{constructor(e,t,r){this.component=e,this.delegate=t,this.args=r}}class D{constructor(e){this.componentManagerDelegates=new WeakMap,this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) +class D{constructor(e,t,r){this.component=e,this.delegate=t,this.args=r}}class j{constructor(e){this.componentManagerDelegates=new WeakMap,this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) if(void 0===r){let{factory:n}=this r=n(e),t.set(e,r)}return r}create(e,t,n,o){let s,a=this.getDelegateFor(e),l=d(o),u=a.createModifier(n,l) -return s={tag:(0,i.createUpdatableTag)(),element:t,delegate:a,args:l,modifier:u},(0,r.registerDestructor)(s,(()=>a.destroyModifier(u,l))),s}getDebugName({debugName:e}){return e}getTag({tag:e}){return e}install({element:e,args:r,modifier:n,delegate:o}){let{capabilities:s}=o +return s={tag:(0,i.createUpdatableTag)(),element:t,delegate:a,args:l,modifier:u},(0,r.registerDestructor)(s,(()=>a.destroyModifier(u,l))),s}getDebugName(e){return"function"==typeof e?e.name||e.toString():""}getDebugInstance({modifier:e}){return e}getTag({tag:e}){return e}install({element:e,args:r,modifier:n,delegate:o}){let{capabilities:s}=o !0===s.disableAutoTracking?(0,i.untrack)((()=>o.installModifier(n,(0,t.castToBrowser)(e,"ELEMENT"),r))):o.installModifier(n,(0,t.castToBrowser)(e,"ELEMENT"),r)}update({args:e,modifier:t,delegate:r}){let{capabilities:n}=r -!0===n.disableAutoTracking?(0,i.untrack)((()=>r.updateModifier(t,e))):r.updateModifier(t,e)}getDestroyable(e){return e}}e.CustomModifierManager=D +!0===n.disableAutoTracking?(0,i.untrack)((()=>r.updateModifier(t,e))):r.updateModifier(t,e)}getDestroyable(e){return e}}e.CustomModifierManager=j const I=new WeakMap,F=Object.getPrototypeOf})),e("@glimmer/node",["exports","@glimmer/runtime","@simple-dom/document"],(function(e,t,r){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.NodeDOMTreeConstruction=void 0,e.serializeBuilder=function(e,t){return o.forInitialRender(e,t)} class n extends t.DOMTreeConstruction{constructor(e){super(e||(0,r.default)())}setupUselessElement(){}insertHTMLBefore(e,r,n){let i=this.document.createRawHTMLSection(n) @@ -1952,52 +1957,48 @@ let i=this.__appendComment("%glmr%") return new t.ConcreteBounds(this.element,n,i)}__appendText(e){let{tagName:t}=this.element,r=function(e){let{element:t,nextSibling:r}=e return null===r?t.lastChild:r.previousSibling}(this) return"TITLE"===t||"SCRIPT"===t||"STYLE"===t?super.__appendText(e):""===e?this.__appendComment("% %"):(r&&3===r.nodeType&&this.__appendComment("%|%"),super.__appendText(e))}closeElement(){return i.has(this.element)&&(i.delete(this.element),super.closeElement()),super.closeElement()}openElement(e){return"tr"===e&&"TBODY"!==this.element.tagName&&"THEAD"!==this.element.tagName&&"TFOOT"!==this.element.tagName&&(this.openElement("tbody"),i.set(this.constructing,!0),this.flushElement(null)),super.openElement(e)}pushRemoteElement(e,t,r=null){let{dom:n}=this,i=n.createElement("script") -return i.setAttribute("glmr",t),n.insertBefore(e,i,r),super.pushRemoteElement(e,t,r)}}})),e("@glimmer/opcode-compiler",["exports","@glimmer/util","@glimmer/debug","@glimmer/vm","@glimmer/encoder","@glimmer/wire-format","@glimmer/manager","@glimmer/global-context"],(function(e,t,r,n,i,o,s,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.WrappedBuilder=e.StdLib=e.MINIMAL_CAPABILITIES=e.EMPTY_BLOCKS=e.DEFAULT_CAPABILITIES=e.CompileTimeCompilationContextImpl=void 0,e.compilable=ye,e.compileStatements=ve,e.compileStd=se,e.debugCompiler=void 0,e.invokeStaticBlock=W,e.invokeStaticBlockWithStack=Y,e.meta=V,e.programCompilationContext=function(e,t,r){return new ue(e,t,r)},e.templateCacheCounters=void 0,e.templateCompilationContext=ce,e.templateFactory=function({id:e,moduleName:t,block:r,scope:n,isStrictMode:i}){let o,s=e||"client-"+Oe++,a=null,l=new WeakMap,u=e=>{if(void 0===o&&(o=JSON.parse(r)),void 0===e)return null===a?(we.cacheMiss++,a=new Ce({id:s,block:o,moduleName:t,owner:null,scope:n,isStrictMode:i})):we.cacheHit++,a +return i.setAttribute("glmr",t),n.insertBefore(e,i,r),super.pushRemoteElement(e,t,r)}}})),e("@glimmer/opcode-compiler",["exports","@glimmer/util","@glimmer/debug","@glimmer/vm","@glimmer/encoder","@glimmer/wire-format","@glimmer/manager"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.WrappedBuilder=e.StdLib=e.MINIMAL_CAPABILITIES=e.EMPTY_BLOCKS=e.DEFAULT_CAPABILITIES=e.CompileTimeCompilationContextImpl=void 0,e.compilable=fe,e.compileStatements=me,e.compileStd=re,e.debugCompiler=void 0,e.invokeStaticBlock=V,e.invokeStaticBlockWithStack=z,e.meta=B,e.programCompilationContext=function(e,t,r){return new oe(e,t,r)},e.templateCacheCounters=void 0,e.templateCompilationContext=se,e.templateFactory=function({id:e,moduleName:t,block:r,scope:n,isStrictMode:i}){let o,s=e||"client-"+be++,a=null,l=new WeakMap,u=e=>{if(void 0===o&&(o=JSON.parse(r)),void 0===e)return null===a?(ye.cacheMiss++,a=new ve({id:s,block:o,moduleName:t,owner:null,scope:n,isStrictMode:i})):ye.cacheHit++,a let u=l.get(e) -return void 0===u?(we.cacheMiss++,u=new Ce({id:s,block:o,moduleName:t,owner:e,scope:n,isStrictMode:i}),l.set(e,u)):we.cacheHit++,u} +return void 0===u?(ye.cacheMiss++,u=new ve({id:s,block:o,moduleName:t,owner:e,scope:n,isStrictMode:i}),l.set(e,u)):ye.cacheHit++,u} return u.__id=s,u.__meta={moduleName:t},u} e.debugCompiler=void 0 -function l(e){return t=>{if(!function(e){return Array.isArray(e)&&2===e.length}(t))return!1 +function a(e){return t=>{if(!function(e){return Array.isArray(e)&&2===e.length}(t))return!1 let r=t[0] -return r===o.SexpOpcodes.GetStrictKeyword||r===o.SexpOpcodes.GetLexicalSymbol||r===e}}const u=l(o.SexpOpcodes.GetFreeAsComponentHead),c=l(o.SexpOpcodes.GetFreeAsModifierHead),p=l(o.SexpOpcodes.GetFreeAsHelperHead),d=l(o.SexpOpcodes.GetFreeAsComponentOrHelperHead),h=l(o.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback) -const f=l(o.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback) -function m(e,r,n,[,i,{ifHelper:s}]){var a;(0,t.assert)(h(i)||(a=i,Array.isArray(a)&&a[0]===o.SexpOpcodes.GetFreeAsDeprecatedHelperHeadOrThisFallback),"Attempted to resolve a helper with incorrect opcode") -let{upvars:l,owner:u}=n,c=(0,t.unwrap)(l[i[1]]),p=e.lookupHelper(c,u) -p&&s(r.helper(p,c),c,n.moduleName)}function g(e,r,n,i,o){let{upvars:s}=n,a=(0,t.unwrap)(s[e[1]]),l=r.lookupBuiltInHelper(a) -return i.helper(l,a)}const b={Modifier:1003,Component:1004,Helper:1005,OptionalHelper:1006,ComponentOrHelper:1007,OptionalComponentOrHelper:1008,Free:1009,Local:1010,TemplateLocal:1011},y={Label:1e3,StartLabels:1001,StopLabels:1002,Start:1e3,End:1002},v={Label:1,IsStrictMode:2,DebugSymbols:3,Block:4,StdLib:5,NonSmallInt:6,SymbolTable:7,Layout:8} -function _(e){return{type:v.Label,value:e}}function O(){return{type:v.IsStrictMode,value:void 0}}function w(e){return{type:v.StdLib,value:e}}function C(e){return{type:v.SymbolTable,value:e}}function E(e){return{type:v.Layout,value:e}}class k{constructor(){this.labels=(0,t.dict)(),this.targets=[]}label(e,t){this.labels[e]=t}target(e,t){this.targets.push({at:e,target:t})}patch(e){let{targets:r,labels:n}=this -for(const{at:i,target:o}of r){let r=n[o]-i;(0,t.assert)(-1===e.getbyaddr(i),"Expected heap to contain a placeholder, but it did not"),e.setbyaddr(i,r)}}}function T(e,r,n,i,s){if(function(e){return e=0;a--){let r=(0,t.unwrap)(o[a]) -e(y.Label,r.label),e(n.Op.Pop,1),r.callback(),0!==a&&e(n.MachineOp.Jump,_("END"))}e(y.Label,"END"),e(y.StopLabels),e(n.Op.Exit)}function J(e,t,r){e(y.StartLabels),e(n.MachineOp.PushFrame),e(n.MachineOp.ReturnTo,_("ENDINITIAL")) +e(f.Label,r.label),e(n.Op.Pop,1),r.callback(),0!==a&&e(n.MachineOp.Jump,g("END"))}e(f.Label,"END"),e(f.StopLabels),e(n.Op.Exit)}function W(e,t,r){e(f.StartLabels),e(n.MachineOp.PushFrame),e(n.MachineOp.ReturnTo,g("ENDINITIAL")) let i=t() -e(n.Op.Enter,i),r(),e(y.Label,"FINALLY"),e(n.Op.Exit),e(n.MachineOp.Return),e(y.Label,"ENDINITIAL"),e(n.MachineOp.PopFrame),e(y.StopLabels)}function X(e,t,r,i){return J(e,t,(()=>{e(n.Op.JumpUnless,_("ELSE")),r(),e(n.MachineOp.Jump,_("FINALLY")),e(y.Label,"ELSE"),void 0!==i&&i()}))}L.add(o.SexpOpcodes.Concat,((e,[,t])=>{for(let r of t)U(e,r) -e(n.Op.Concat,t.length)})),L.add(o.SexpOpcodes.Call,((e,[,t,r,n])=>{p(t)?e(b.Helper,t,(t=>{j(e,t,r,n)})):(U(e,t),D(e,r,n))})),L.add(o.SexpOpcodes.Curry,((e,[,t,r,n,i])=>{I(e,r,t,n,i)})),L.add(o.SexpOpcodes.GetSymbol,((e,[,t,r])=>{e(n.Op.GetVariable,t),B(e,r)})),L.add(o.SexpOpcodes.GetLexicalSymbol,((e,[,t,r])=>{e(b.TemplateLocal,t,(t=>{e(n.Op.ConstantReference,t),B(e,r)}))})),L.add(o.SexpOpcodes.GetStrictKeyword,((e,[,t,r])=>{e(b.Free,t,(e=>{}))})),L.add(o.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback,(()=>{throw new Error("unimplemented opcode")})),L.add(o.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback,((e,t)=>{e(b.Local,t[1],(r=>{e(b.OptionalHelper,t,{ifHelper:t=>{j(e,t,null,null)}})}))})),L.add(o.SexpOpcodes.GetFreeAsDeprecatedHelperHeadOrThisFallback,((e,t)=>{e(b.Local,t[1],(r=>{e(b.OptionalHelper,t,{ifHelper:(r,n,i)=>{t[2][0] -j(e,r,null,null)}})}))})),L.add(o.SexpOpcodes.Undefined,(e=>M(e,void 0))),L.add(o.SexpOpcodes.HasBlock,((e,[,t])=>{U(e,t),e(n.Op.HasBlock)})),L.add(o.SexpOpcodes.HasBlockParams,((e,[,t])=>{U(e,t),e(n.Op.SpreadBlock),e(n.Op.CompileBlock),e(n.Op.HasBlockParams)})),L.add(o.SexpOpcodes.IfInline,((e,[,t,r,i])=>{U(e,i),U(e,r),U(e,t),e(n.Op.IfInline)})),L.add(o.SexpOpcodes.Not,((e,[,t])=>{U(e,t),e(n.Op.Not)})),L.add(o.SexpOpcodes.GetDynamicVar,((e,[,t])=>{U(e,t),e(n.Op.GetDynamicVar)})),L.add(o.SexpOpcodes.Log,((e,[,t])=>{e(n.MachineOp.PushFrame),H(e,t,null,!1),e(n.Op.Log),e(n.MachineOp.PopFrame),e(n.Op.Fetch,n.$v0)})) -const Z="&attrs" -function ee(e,r,i,o,a,l){let{compilable:u,capabilities:c,handle:p}=r,d=i?[i,[]]:null,h=Array.isArray(l)||null===l?A(l):l +e(n.Op.Enter,i),r(),e(f.Label,"FINALLY"),e(n.Op.Exit),e(n.MachineOp.Return),e(f.Label,"ENDINITIAL"),e(n.MachineOp.PopFrame),e(f.StopLabels)}function Y(e,t,r,i){return W(e,t,(()=>{e(n.Op.JumpUnless,g("ELSE")),r(),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"ELSE"),void 0!==i&&i()}))}D.add(o.SexpOpcodes.Concat,((e,[,t])=>{for(let r of t)I(e,r) +e(n.Op.Concat,t.length)})),D.add(o.SexpOpcodes.Call,((e,[,t,r,n])=>{c(t)?e(h.Helper,t,(t=>{x(e,t,r,n)})):(I(e,t),A(e,r,n))})),D.add(o.SexpOpcodes.Curry,((e,[,t,r,n,i])=>{M(e,r,t,n,i)})),D.add(o.SexpOpcodes.GetSymbol,((e,[,t,r])=>{e(n.Op.GetVariable,t),j(e,r)})),D.add(o.SexpOpcodes.GetLexicalSymbol,((e,[,t,r])=>{e(h.TemplateLocal,t,(t=>{e(n.Op.ConstantReference,t),j(e,r)}))})),D.add(o.SexpOpcodes.GetStrictKeyword,((e,t)=>{e(h.Local,t[1],(r=>{e(h.Helper,t,(t=>{x(e,t,null,null)}))}))})),D.add(o.SexpOpcodes.GetFreeAsHelperHead,((e,t)=>{e(h.Local,t[1],(r=>{e(h.Helper,t,(t=>{x(e,t,null,null)}))}))})),D.add(o.SexpOpcodes.Undefined,(e=>S(e,void 0))),D.add(o.SexpOpcodes.HasBlock,((e,[,t])=>{I(e,t),e(n.Op.HasBlock)})),D.add(o.SexpOpcodes.HasBlockParams,((e,[,t])=>{I(e,t),e(n.Op.SpreadBlock),e(n.Op.CompileBlock),e(n.Op.HasBlockParams)})),D.add(o.SexpOpcodes.IfInline,((e,[,t,r,i])=>{I(e,i),I(e,r),I(e,t),e(n.Op.IfInline)})),D.add(o.SexpOpcodes.Not,((e,[,t])=>{I(e,t),e(n.Op.Not)})),D.add(o.SexpOpcodes.GetDynamicVar,((e,[,t])=>{I(e,t),e(n.Op.GetDynamicVar)})),D.add(o.SexpOpcodes.Log,((e,[,t])=>{e(n.MachineOp.PushFrame),F(e,t,null,!1),e(n.Op.Log),e(n.MachineOp.PopFrame),e(n.Op.Fetch,n.$v0)})) +const Q="&attrs" +function K(e,r,i,o,a,l){let{compilable:u,capabilities:c,handle:p}=r,d=i?[i,[]]:null,h=Array.isArray(l)||null===l?R(l):l u?(e(n.Op.PushComponentDefinition,p),function(e,{capabilities:r,layout:i,elementBlock:o,positional:a,named:l,blocks:u}){let{symbolTable:c}=i,p=c.hasEval||(0,s.hasCapability)(r,n.InternalComponentCapabilities.prepareArgs) -if(p)return void re(e,{capabilities:r,elementBlock:o,positional:a,named:l,atNames:!0,blocks:u,layout:i}) +if(p)return void X(e,{capabilities:r,elementBlock:o,positional:a,named:l,atNames:!0,blocks:u,layout:i}) e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame) let{symbols:d}=c,h=[],f=[],m=[],g=u.names -if(null!==o){let t=d.indexOf(Z);-1!==t&&(G(e,o),h.push(t))}for(const t of g){let r=d.indexOf(`&${t}`);-1!==r&&(G(e,u.get(t)),h.push(r))}if((0,s.hasCapability)(r,n.InternalComponentCapabilities.createArgs)){let r=$(e,a)<<4 +if(null!==o){let t=d.indexOf(Q);-1!==t&&($(e,o),h.push(t))}for(const t of g){let r=d.indexOf(`&${t}`);-1!==r&&($(e,u.get(t)),h.push(r))}if((0,s.hasCapability)(r,n.InternalComponentCapabilities.createArgs)){let r=L(e,a)<<4 r|=8 let i=t.EMPTY_STRING_ARRAY if(null!==l){i=l[0] let r=l[1] for(let n=0;n0?1:0),e(n.Op.SetVariable,0) for(const s of(0,t.reverse)(f))-1===s?e(n.Op.Pop,1):e(n.Op.SetVariable,s+1) null!==a&&e(n.Op.Pop,a.length) for(const s of(0,t.reverse)(h))e(n.Op.SetBlock,s+1) -e(n.Op.Constant,E(i)),e(n.Op.CompileBlock),e(n.MachineOp.InvokeVirtual),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),(0,s.hasCapability)(r,n.InternalComponentCapabilities.dynamicScope)&&e(n.Op.PopDynamicScope) -e(n.Op.CommitComponentTransaction),e(n.Op.Load,n.$s0)}(e,{capabilities:c,layout:u,elementBlock:d,positional:o,named:a,blocks:h})):(e(n.Op.PushComponentDefinition,p),re(e,{capabilities:c,elementBlock:d,positional:o,named:a,atNames:!0,blocks:h}))}function te(e,t,r,i,o,s,a,l){let u=r?[r,[]]:null,c=Array.isArray(s)||null===s?A(s):s -J(e,(()=>(U(e,t),e(n.Op.Dup,n.$sp,0),2)),(()=>{e(n.Op.JumpUnless,_("ELSE")),l?e(n.Op.ResolveCurriedComponent):e(n.Op.ResolveDynamicComponent,O()),e(n.Op.PushDynamicComponentInstance),re(e,{capabilities:!0,elementBlock:u,positional:i,named:o,atNames:a,blocks:c}),e(y.Label,"ELSE")}))}function re(e,{capabilities:r,elementBlock:i,positional:o,named:a,atNames:l,blocks:u,layout:c}){let p=!!u,d=!0===r||(0,s.hasCapability)(r,n.InternalComponentCapabilities.prepareArgs)||!(!a||0===a[0].length),h=u.with("attrs",i) +e(n.Op.Constant,_(i)),e(n.Op.CompileBlock),e(n.MachineOp.InvokeVirtual),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),(0,s.hasCapability)(r,n.InternalComponentCapabilities.dynamicScope)&&e(n.Op.PopDynamicScope) +e(n.Op.CommitComponentTransaction),e(n.Op.Load,n.$s0)}(e,{capabilities:c,layout:u,elementBlock:d,positional:o,named:a,blocks:h})):(e(n.Op.PushComponentDefinition,p),X(e,{capabilities:c,elementBlock:d,positional:o,named:a,atNames:!0,blocks:h}))}function J(e,t,r,i,o,s,a,l){let u=r?[r,[]]:null,c=Array.isArray(s)||null===s?R(s):s +W(e,(()=>(I(e,t),e(n.Op.Dup,n.$sp,0),2)),(()=>{e(n.Op.JumpUnless,g("ELSE")),l?e(n.Op.ResolveCurriedComponent):e(n.Op.ResolveDynamicComponent,b()),e(n.Op.PushDynamicComponentInstance),X(e,{capabilities:!0,elementBlock:u,positional:i,named:o,atNames:a,blocks:c}),e(f.Label,"ELSE")}))}function X(e,{capabilities:r,elementBlock:i,positional:o,named:a,atNames:l,blocks:u,layout:c}){let p=!!u,d=!0===r||(0,s.hasCapability)(r,n.InternalComponentCapabilities.prepareArgs)||!(!a||0===a[0].length),h=u.with("attrs",i) e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame),function(e,r,i,o,s){let a=o.names -for(const t of a)G(e,o.get(t)) -let l=$(e,r)<<4 +for(const t of a)$(e,o.get(t)) +let l=L(e,r)<<4 s&&(l|=8),o&&(l|=7) let u=t.EMPTY_ARRAY if(i){u=i[0] let t=i[1] -for(let r=0;r{c?(e(n.Op.PushSymbolTable,C(c.symbolTable)),e(n.Op.Constant,E(c)),e(n.Op.CompileBlock)):e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}function ne(e,t,r){e(y.StartLabels),function(e,t,r){e(n.Op.Fetch,t),r(),e(n.Op.Load,t)}(e,n.$s1,(()=>{e(n.Op.GetComponentTagName,n.$s0),e(n.Op.PrimitiveReference),e(n.Op.Dup,n.$sp,0)})),e(n.Op.JumpUnless,_("BODY")),e(n.Op.Fetch,n.$s1),e(n.Op.PutComponentOperations),e(n.Op.OpenDynamicElement),e(n.Op.DidCreateElement,n.$s0),q(e,r,null),e(n.Op.FlushElement),e(y.Label,"BODY"),W(e,[t.block[0],[]]),e(n.Op.Fetch,n.$s1),e(n.Op.JumpUnless,_("END")),e(n.Op.CloseElement),e(y.Label,"END"),e(n.Op.Load,n.$s1),e(y.StopLabels)}function ie(e,t,r,i,o=null){e(n.Op.BeginComponentTransaction,n.$s0),e(n.Op.PushDynamicScope),e(n.Op.CreateComponent,0|t,n.$s0),o&&o(),e(n.Op.RegisterComponentDestructor,n.$s0),e(n.Op.GetComponentSelf,n.$s0),e(n.Op.VirtualRootScope,n.$s0),e(n.Op.SetVariable,0),e(n.Op.SetupForEval,n.$s0),i&&e(n.Op.SetNamedVariables,n.$s0),r&&e(n.Op.SetBlocks,n.$s0),e(n.Op.Pop,1),e(n.Op.InvokeComponentLayout,n.$s0),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),e(n.Op.PopDynamicScope),e(n.Op.CommitComponentTransaction)}function oe(e,t,r){K(e,(()=>e(n.Op.ContentType)),(i=>{i(n.ContentType.String,(()=>{t?(e(n.Op.AssertSame),e(n.Op.AppendHTML)):e(n.Op.AppendText)})),"number"==typeof r?(i(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),function(e){e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame),e(n.Op.PushEmptyArgs),e(n.Op.PrepareArgs,n.$s0),ie(e,!1,!1,!0,(()=>{e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}(e)})),i(n.ContentType.Helper,(()=>{D(e,null,null,(()=>{e(n.MachineOp.InvokeStatic,r)}))}))):(i(n.ContentType.Component,(()=>{e(n.Op.AppendText)})),i(n.ContentType.Helper,(()=>{e(n.Op.AppendText)}))),i(n.ContentType.SafeString,(()=>{e(n.Op.AssertSame),e(n.Op.AppendSafeHTML)})),i(n.ContentType.Fragment,(()=>{e(n.Op.AssertSame),e(n.Op.AppendDocumentFragment)})),i(n.ContentType.Node,(()=>{e(n.Op.AssertSame),e(n.Op.AppendNode)}))}))}function se(e){let t=le(e,(e=>function(e){e(n.Op.Main,n.$s0),ie(e,!1,!1,!0)}(e))),r=le(e,(e=>oe(e,!0,null))),i=le(e,(e=>oe(e,!1,null))),o=le(e,(e=>oe(e,!0,r))),s=le(e,(e=>oe(e,!1,i))) -return new R(t,o,s,r,i)}const ae={evalSymbols:null,upvars:null,moduleName:"stdlib",scopeValues:null,isStrictMode:!0,owner:null,size:0} -function le(e,t){let{constants:r,heap:n,resolver:i}=e,o=new S(n,ae) -t((function(...e){T(o,r,i,ae,e)})) +for(let r=0;r{c?(e(n.Op.PushSymbolTable,v(c.symbolTable)),e(n.Op.Constant,_(c)),e(n.Op.CompileBlock)):e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}function Z(e,t,r){e(f.StartLabels),function(e,t,r){e(n.Op.Fetch,t),r(),e(n.Op.Load,t)}(e,n.$s1,(()=>{e(n.Op.GetComponentTagName,n.$s0),e(n.Op.PrimitiveReference),e(n.Op.Dup,n.$sp,0)})),e(n.Op.JumpUnless,g("BODY")),e(n.Op.Fetch,n.$s1),e(n.Op.PutComponentOperations),e(n.Op.OpenDynamicElement),e(n.Op.DidCreateElement,n.$s0),H(e,r,null),e(n.Op.FlushElement),e(f.Label,"BODY"),V(e,[t.block[0],[]]),e(n.Op.Fetch,n.$s1),e(n.Op.JumpUnless,g("END")),e(n.Op.CloseElement),e(f.Label,"END"),e(n.Op.Load,n.$s1),e(f.StopLabels)}function ee(e,t,r,i,o=null){e(n.Op.BeginComponentTransaction,n.$s0),e(n.Op.PushDynamicScope),e(n.Op.CreateComponent,0|t,n.$s0),o&&o(),e(n.Op.RegisterComponentDestructor,n.$s0),e(n.Op.GetComponentSelf,n.$s0),e(n.Op.VirtualRootScope,n.$s0),e(n.Op.SetVariable,0),e(n.Op.SetupForEval,n.$s0),i&&e(n.Op.SetNamedVariables,n.$s0),r&&e(n.Op.SetBlocks,n.$s0),e(n.Op.Pop,1),e(n.Op.InvokeComponentLayout,n.$s0),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),e(n.Op.PopDynamicScope),e(n.Op.CommitComponentTransaction)}function te(e,t,r){G(e,(()=>e(n.Op.ContentType)),(i=>{i(n.ContentType.String,(()=>{t?(e(n.Op.AssertSame),e(n.Op.AppendHTML)):e(n.Op.AppendText)})),"number"==typeof r?(i(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),function(e){e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame),e(n.Op.PushEmptyArgs),e(n.Op.PrepareArgs,n.$s0),ee(e,!1,!1,!0,(()=>{e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}(e)})),i(n.ContentType.Helper,(()=>{A(e,null,null,(()=>{e(n.MachineOp.InvokeStatic,r)}))}))):(i(n.ContentType.Component,(()=>{e(n.Op.AppendText)})),i(n.ContentType.Helper,(()=>{e(n.Op.AppendText)}))),i(n.ContentType.SafeString,(()=>{e(n.Op.AssertSame),e(n.Op.AppendSafeHTML)})),i(n.ContentType.Fragment,(()=>{e(n.Op.AssertSame),e(n.Op.AppendDocumentFragment)})),i(n.ContentType.Node,(()=>{e(n.Op.AssertSame),e(n.Op.AppendNode)}))}))}function re(e){let t=ie(e,(e=>function(e){e(n.Op.Main,n.$s0),ee(e,!1,!1,!0)}(e))),r=ie(e,(e=>te(e,!0,null))),i=ie(e,(e=>te(e,!1,null))),o=ie(e,(e=>te(e,!0,r))),s=ie(e,(e=>te(e,!1,i))) +return new C(t,o,s,r,i)}const ne={evalSymbols:null,upvars:null,moduleName:"stdlib",scopeValues:null,isStrictMode:!0,owner:null,size:0} +function ie(e,t){let{constants:r,heap:n,resolver:i}=e,o=new E(n,ne) +t((function(...e){w(o,r,i,ne,e)})) let s=o.commit(0) if("number"!=typeof s)throw new Error("Unexpected errors compiling std") -return s}class ue{constructor({constants:e,heap:t},r,n){this.constants=void 0,this.heap=void 0,this.stdlib=void 0,this.resolver=r,this.createOp=n,this.constants=e,this.heap=t,this.stdlib=se(this)}}function ce(e,t){return{program:e,encoder:new S(e.heap,t,e.stdlib),meta:t}}e.CompileTimeCompilationContextImpl=ue -const pe=new F,de=["class","id","value","name","type","style","href"],he=["div","span","p","a"] -function fe(e){return"string"==typeof e?e:he[e]}function me(e){return"string"==typeof e?e:de[e]}function ge(e){if(null===e)return null -return[e[0].map((e=>`@${e}`)),e[1]]}pe.add(o.SexpOpcodes.Comment,((e,t)=>e(n.Op.Comment,t[1]))),pe.add(o.SexpOpcodes.CloseElement,(e=>e(n.Op.CloseElement))),pe.add(o.SexpOpcodes.FlushElement,(e=>e(n.Op.FlushElement))),pe.add(o.SexpOpcodes.Modifier,((e,[,t,r,i])=>{c(t)?e(b.Modifier,t,(t=>{e(n.MachineOp.PushFrame),H(e,r,i,!1),e(n.Op.Modifier,t),e(n.MachineOp.PopFrame)})):(U(e,t),e(n.MachineOp.PushFrame),H(e,r,i,!1),e(n.Op.Dup,n.$fp,1),e(n.Op.DynamicModifier),e(n.MachineOp.PopFrame))})),pe.add(o.SexpOpcodes.StaticAttr,((e,[,t,r,i])=>{e(n.Op.StaticAttr,me(t),r,i??null)})),pe.add(o.SexpOpcodes.StaticComponentAttr,((e,[,t,r,i])=>{e(n.Op.StaticComponentAttr,me(t),r,i??null)})),pe.add(o.SexpOpcodes.DynamicAttr,((e,[,t,r,i])=>{U(e,r),e(n.Op.DynamicAttr,me(t),!1,i??null)})),pe.add(o.SexpOpcodes.TrustingDynamicAttr,((e,[,t,r,i])=>{U(e,r),e(n.Op.DynamicAttr,me(t),!0,i??null)})),pe.add(o.SexpOpcodes.ComponentAttr,((e,[,t,r,i])=>{U(e,r),e(n.Op.ComponentAttr,me(t),!1,i??null)})),pe.add(o.SexpOpcodes.TrustingComponentAttr,((e,[,t,r,i])=>{U(e,r),e(n.Op.ComponentAttr,me(t),!0,i??null)})),pe.add(o.SexpOpcodes.OpenElement,((e,[,t])=>{e(n.Op.OpenElement,fe(t))})),pe.add(o.SexpOpcodes.OpenElementWithSplat,((e,[,t])=>{e(n.Op.PutComponentOperations),e(n.Op.OpenElement,fe(t))})),pe.add(o.SexpOpcodes.Component,((e,[,t,r,n,i])=>{u(t)?e(b.Component,t,(t=>{ee(e,t,r,null,n,i)})):te(e,t,r,null,n,i,!0,!0)})),pe.add(o.SexpOpcodes.Yield,((e,[,t,r])=>q(e,t,r))),pe.add(o.SexpOpcodes.AttrSplat,((e,[,t])=>q(e,t,null))),pe.add(o.SexpOpcodes.Debugger,((e,[,t])=>e(n.Op.Debugger,{type:v.DebugSymbols,value:void 0},t))),pe.add(o.SexpOpcodes.Append,((e,[,t])=>{if(Array.isArray(t))if(f(t))e(b.OptionalComponentOrHelper,t,{ifComponent(t){ee(e,t,null,null,null,null)},ifHelper(t){e(n.MachineOp.PushFrame),j(e,t,null,null),e(n.MachineOp.InvokeStatic,w("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)},ifValue(t){e(n.MachineOp.PushFrame),e(n.Op.ConstantReference,t),e(n.MachineOp.InvokeStatic,w("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}) +return s}class oe{constructor({constants:e,heap:t},r,n){this.constants=void 0,this.heap=void 0,this.stdlib=void 0,this.resolver=r,this.createOp=n,this.constants=e,this.heap=t,this.stdlib=re(this)}}function se(e,t){return{program:e,encoder:new E(e.heap,t,e.stdlib),meta:t}}e.CompileTimeCompilationContextImpl=oe +const ae=new N,le=["class","id","value","name","type","style","href"],ue=["div","span","p","a"] +function ce(e){return"string"==typeof e?e:ue[e]}function pe(e){return"string"==typeof e?e:le[e]}function de(e){if(null===e)return null +return[e[0].map((e=>`@${e}`)),e[1]]}ae.add(o.SexpOpcodes.Comment,((e,t)=>e(n.Op.Comment,t[1]))),ae.add(o.SexpOpcodes.CloseElement,(e=>e(n.Op.CloseElement))),ae.add(o.SexpOpcodes.FlushElement,(e=>e(n.Op.FlushElement))),ae.add(o.SexpOpcodes.Modifier,((e,[,t,r,i])=>{u(t)?e(h.Modifier,t,(t=>{e(n.MachineOp.PushFrame),F(e,r,i,!1),e(n.Op.Modifier,t),e(n.MachineOp.PopFrame)})):(I(e,t),e(n.MachineOp.PushFrame),F(e,r,i,!1),e(n.Op.Dup,n.$fp,1),e(n.Op.DynamicModifier),e(n.MachineOp.PopFrame))})),ae.add(o.SexpOpcodes.StaticAttr,((e,[,t,r,i])=>{e(n.Op.StaticAttr,pe(t),r,i??null)})),ae.add(o.SexpOpcodes.StaticComponentAttr,((e,[,t,r,i])=>{e(n.Op.StaticComponentAttr,pe(t),r,i??null)})),ae.add(o.SexpOpcodes.DynamicAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.DynamicAttr,pe(t),!1,i??null)})),ae.add(o.SexpOpcodes.TrustingDynamicAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.DynamicAttr,pe(t),!0,i??null)})),ae.add(o.SexpOpcodes.ComponentAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.ComponentAttr,pe(t),!1,i??null)})),ae.add(o.SexpOpcodes.TrustingComponentAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.ComponentAttr,pe(t),!0,i??null)})),ae.add(o.SexpOpcodes.OpenElement,((e,[,t])=>{e(n.Op.OpenElement,ce(t))})),ae.add(o.SexpOpcodes.OpenElementWithSplat,((e,[,t])=>{e(n.Op.PutComponentOperations),e(n.Op.OpenElement,ce(t))})),ae.add(o.SexpOpcodes.Component,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,r,null,n,i)})):J(e,t,r,null,n,i,!0,!0)})),ae.add(o.SexpOpcodes.Yield,((e,[,t,r])=>H(e,t,r))),ae.add(o.SexpOpcodes.AttrSplat,((e,[,t])=>H(e,t,null))),ae.add(o.SexpOpcodes.Debugger,((e,[,t])=>e(n.Op.Debugger,{type:m.DebugSymbols,value:void 0},t))),ae.add(o.SexpOpcodes.Append,((e,[,t])=>{if(Array.isArray(t))if(p(t))e(h.OptionalComponentOrHelper,t,{ifComponent(t){K(e,t,null,null,null,null)},ifHelper(t){e(n.MachineOp.PushFrame),x(e,t,null,null),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)},ifValue(t){e(n.MachineOp.PushFrame),e(n.Op.ConstantReference,t),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}) else if(t[0]===o.SexpOpcodes.Call){let[,r,i,o]=t -d(r)?e(b.ComponentOrHelper,r,{ifComponent(t){ee(e,t,null,i,ge(o),null)},ifHelper(t){e(n.MachineOp.PushFrame),j(e,t,i,o),e(n.MachineOp.InvokeStatic,w("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}):K(e,(()=>{U(e,r),e(n.Op.DynamicContentType)}),(t=>{t(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),re(e,{capabilities:!0,elementBlock:null,positional:i,named:o,atNames:!1,blocks:A(null)})})),t(n.ContentType.Helper,(()=>{D(e,i,o,(()=>{e(n.MachineOp.InvokeStatic,w("cautious-non-dynamic-append"))}))}))}))}else e(n.MachineOp.PushFrame),U(e,t),e(n.MachineOp.InvokeStatic,w("cautious-append")),e(n.MachineOp.PopFrame) -else e(n.Op.Text,null==t?"":String(t))})),pe.add(o.SexpOpcodes.TrustingAppend,((e,[,t])=>{Array.isArray(t)?(e(n.MachineOp.PushFrame),U(e,t),e(n.MachineOp.InvokeStatic,w("trusting-append")),e(n.MachineOp.PopFrame)):e(n.Op.Text,null==t?"":String(t))})),pe.add(o.SexpOpcodes.Block,((e,[,t,r,n,i])=>{u(t)?e(b.Component,t,(t=>{ee(e,t,null,r,ge(n),i)})):te(e,t,null,r,n,i,!1,!1)})),pe.add(o.SexpOpcodes.InElement,((e,[,t,r,i,o])=>{X(e,(()=>(U(e,r),void 0===o?M(e,void 0):U(e,o),U(e,i),e(n.Op.Dup,n.$sp,0),4)),(()=>{e(n.Op.PushRemoteElement),W(e,t),e(n.Op.PopRemoteElement)}))})),pe.add(o.SexpOpcodes.If,((e,[,t,r,i])=>X(e,(()=>(U(e,t),e(n.Op.ToBoolean),1)),(()=>{W(e,r)}),i?()=>{W(e,i)}:void 0))),pe.add(o.SexpOpcodes.Each,((e,[,t,r,i,o])=>J(e,(()=>(r?U(e,r):M(e,null),U(e,t),2)),(()=>{e(n.Op.EnterList,_("BODY"),_("ELSE")),e(n.MachineOp.PushFrame),e(n.Op.Dup,n.$fp,1),e(n.MachineOp.ReturnTo,_("ITER")),e(y.Label,"ITER"),e(n.Op.Iterate,_("BREAK")),e(y.Label,"BODY"),Y(e,i,2),e(n.Op.Pop,2),e(n.MachineOp.Jump,_("FINALLY")),e(y.Label,"BREAK"),e(n.MachineOp.PopFrame),e(n.Op.ExitList),e(n.MachineOp.Jump,_("FINALLY")),e(y.Label,"ELSE"),o&&W(e,o)})))),pe.add(o.SexpOpcodes.With,((e,[,t,r,i])=>{X(e,(()=>(U(e,t),e(n.Op.Dup,n.$sp,0),e(n.Op.ToBoolean),2)),(()=>{Y(e,r,1)}),(()=>{i&&W(e,i)}))})),pe.add(o.SexpOpcodes.Let,((e,[,t,r])=>{Y(e,r,$(e,t))})),pe.add(o.SexpOpcodes.WithDynamicVars,((e,[,t,r])=>{if(t){let[i,o]=t -$(e,o),function(e,t,r){e(n.Op.PushDynamicScope),e(n.Op.BindDynamicScope,t),r(),e(n.Op.PopDynamicScope)}(e,i,(()=>{W(e,r)}))}else W(e,r)})),pe.add(o.SexpOpcodes.InvokeComponent,((e,[,t,r,n,i])=>{u(t)?e(b.Component,t,(t=>{ee(e,t,null,r,ge(n),i)})):te(e,t,null,r,n,i,!1,!1)})) -class be{constructor(e,t,r,n="plain block"){this.compiled=null,this.statements=e,this.meta=t,this.symbolTable=r,this.moduleName=n}compile(e){return function(e,t){if(null!==e.compiled)return e.compiled +p(r)?e(h.ComponentOrHelper,r,{ifComponent(t){K(e,t,null,i,de(o),null)},ifHelper(t){e(n.MachineOp.PushFrame),x(e,t,i,o),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}):G(e,(()=>{I(e,r),e(n.Op.DynamicContentType)}),(t=>{t(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),X(e,{capabilities:!0,elementBlock:null,positional:i,named:o,atNames:!1,blocks:R(null)})})),t(n.ContentType.Helper,(()=>{A(e,i,o,(()=>{e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append"))}))}))}))}else e(n.MachineOp.PushFrame),I(e,t),e(n.MachineOp.InvokeStatic,y("cautious-append")),e(n.MachineOp.PopFrame) +else e(n.Op.Text,null==t?"":String(t))})),ae.add(o.SexpOpcodes.TrustingAppend,((e,[,t])=>{Array.isArray(t)?(e(n.MachineOp.PushFrame),I(e,t),e(n.MachineOp.InvokeStatic,y("trusting-append")),e(n.MachineOp.PopFrame)):e(n.Op.Text,null==t?"":String(t))})),ae.add(o.SexpOpcodes.Block,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,null,r,de(n),i)})):J(e,t,null,r,n,i,!1,!1)})),ae.add(o.SexpOpcodes.InElement,((e,[,t,r,i,o])=>{Y(e,(()=>(I(e,r),void 0===o?S(e,void 0):I(e,o),I(e,i),e(n.Op.Dup,n.$sp,0),4)),(()=>{e(n.Op.PushRemoteElement),V(e,t),e(n.Op.PopRemoteElement)}))})),ae.add(o.SexpOpcodes.If,((e,[,t,r,i])=>Y(e,(()=>(I(e,t),e(n.Op.ToBoolean),1)),(()=>{V(e,r)}),i?()=>{V(e,i)}:void 0))),ae.add(o.SexpOpcodes.Each,((e,[,t,r,i,o])=>W(e,(()=>(r?I(e,r):S(e,null),I(e,t),2)),(()=>{e(n.Op.EnterList,g("BODY"),g("ELSE")),e(n.MachineOp.PushFrame),e(n.Op.Dup,n.$fp,1),e(n.MachineOp.ReturnTo,g("ITER")),e(f.Label,"ITER"),e(n.Op.Iterate,g("BREAK")),e(f.Label,"BODY"),z(e,i,2),e(n.Op.Pop,2),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"BREAK"),e(n.MachineOp.PopFrame),e(n.Op.ExitList),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"ELSE"),o&&V(e,o)})))),ae.add(o.SexpOpcodes.Let,((e,[,t,r])=>{z(e,r,L(e,t))})),ae.add(o.SexpOpcodes.WithDynamicVars,((e,[,t,r])=>{if(t){let[i,o]=t +L(e,o),function(e,t,r){e(n.Op.PushDynamicScope),e(n.Op.BindDynamicScope,t),r(),e(n.Op.PopDynamicScope)}(e,i,(()=>{V(e,r)}))}else V(e,r)})),ae.add(o.SexpOpcodes.InvokeComponent,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,null,r,de(n),i)})):J(e,t,null,r,n,i,!1,!1)})) +class he{constructor(e,t,r,n="plain block"){this.compiled=null,this.statements=e,this.meta=t,this.symbolTable=r,this.moduleName=n}compile(e){return function(e,t){if(null!==e.compiled)return e.compiled e.compiled=-1 -let{statements:r,meta:n}=e,i=ve(r,n,t) -return e.compiled=i,i}(this,e)}}function ye(e,t){let[r,n,i]=e.block -return new be(r,V(e),{symbols:n,hasEval:i},t)}function ve(e,t,r){let n=pe,i=ce(r,t),{encoder:o,program:{constants:s,resolver:a}}=i -function l(...e){T(o,s,a,t,e)}for(const u of e)n.compile(l,u) +let{statements:r,meta:n}=e,i=me(r,n,t) +return e.compiled=i,i}(this,e)}}function fe(e,t){let[r,n,i]=e.block +return new he(r,B(e),{symbols:n,hasEval:i},t)}function me(e,t,r){let n=ae,i=se(r,t),{encoder:o,program:{constants:s,resolver:a}}=i +function l(...e){w(o,s,a,t,e)}for(const u of e)n.compile(l,u) return i.encoder.commit(t.size)}e.DEFAULT_CAPABILITIES={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!1,elementHook:!1,dynamicScope:!0,createCaller:!1,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1},e.MINIMAL_CAPABILITIES={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,dynamicScope:!1,createCaller:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class _e{constructor(e,t){this.symbolTable=void 0,this.compiled=null,this.attrsBlockNumber=void 0,this.layout=e,this.moduleName=t +class ge{constructor(e,t){this.symbolTable=void 0,this.compiled=null,this.attrsBlockNumber=void 0,this.layout=e,this.moduleName=t let{block:r}=e,[,n,i]=r n=n.slice() -let o=n.indexOf(Z) -this.attrsBlockNumber=-1===o?n.push(Z):o+1,this.symbolTable={hasEval:i,symbols:n}}compile(e){if(null!==this.compiled)return this.compiled -let t=V(this.layout),r=ce(e,t),{encoder:n,program:{constants:i,resolver:o}}=r -ne((function(...e){T(n,i,o,t,e)}),this.layout,this.attrsBlockNumber) +let o=n.indexOf(Q) +this.attrsBlockNumber=-1===o?n.push(Q):o+1,this.symbolTable={hasEval:i,symbols:n}}compile(e){if(null!==this.compiled)return this.compiled +let t=B(this.layout),r=se(e,t),{encoder:n,program:{constants:i,resolver:o}}=r +Z((function(...e){w(n,i,o,t,e)}),this.layout,this.attrsBlockNumber) let s=r.encoder.commit(t.size) -return"number"!=typeof s||(this.compiled=s),s}}e.WrappedBuilder=_e -let Oe=0,we=e.templateCacheCounters={cacheHit:0,cacheMiss:0} -class Ce{constructor(e){this.result="ok",this.layout=null,this.wrappedLayout=null,this.parsedLayout=e}get moduleName(){return this.parsedLayout.moduleName}get id(){return this.parsedLayout.id}get referrer(){return{moduleName:this.parsedLayout.moduleName,owner:this.parsedLayout.owner}}asLayout(){return this.layout?this.layout:this.layout=ye((0,t.assign)({},this.parsedLayout),this.moduleName)}asWrappedLayout(){return this.wrappedLayout?this.wrappedLayout:this.wrappedLayout=new _e((0,t.assign)({},this.parsedLayout),this.moduleName)}}})),e("@glimmer/owner",["exports"],(function(e){"use strict" +return"number"!=typeof s||(this.compiled=s),s}}e.WrappedBuilder=ge +let be=0,ye=e.templateCacheCounters={cacheHit:0,cacheMiss:0} +class ve{constructor(e){this.result="ok",this.layout=null,this.wrappedLayout=null,this.parsedLayout=e}get moduleName(){return this.parsedLayout.moduleName}get id(){return this.parsedLayout.id}get referrer(){return{moduleName:this.parsedLayout.moduleName,owner:this.parsedLayout.owner}}asLayout(){return this.layout?this.layout:this.layout=fe((0,t.assign)({},this.parsedLayout),this.moduleName)}asWrappedLayout(){return this.wrappedLayout?this.wrappedLayout:this.wrappedLayout=new ge((0,t.assign)({},this.parsedLayout),this.moduleName)}}})),e("@glimmer/owner",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.OWNER=void 0,e.getOwner=function(e){return e[t]},e.setOwner=function(e,r){e[t]=r} const t=e.OWNER=Symbol("OWNER")})),e("@glimmer/program",["exports","@glimmer/manager","@glimmer/opcode-compiler","@glimmer/util","@glimmer/vm","@glimmer/wire-format"],(function(e,t,r,n,i,o){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.RuntimeProgramImpl=e.RuntimeOpImpl=e.RuntimeHeapImpl=e.RuntimeConstantsImpl=e.HeapImpl=e.ConstantsImpl=e.CompileTimeConstantImpl=void 0,e.artifacts=function(){return{constants:new d,heap:new b}},e.hydrateHeap=function(e){return new g(e)} @@ -2175,11 +2173,11 @@ return r},e.createComputeRef=h,e.createConstRef=function(e,t){const r=new u(o) r.lastValue=e,r.tag=n.CONSTANT_TAG,!1 return r},e.createDebugAliasRef=void 0,e.createInvokableRef=function(e){const t=h((()=>m(e)),(t=>g(e,t))) return t.debugLabel=e.debugLabel,t[i]=l,t},e.createIteratorItemRef=function(e){let t=e,r=(0,n.createTag)() -return h((()=>((0,n.consumeTag)(r),t)),(e=>{t!==e&&(t=e,(0,n.dirtyTag)(r))}))},e.createIteratorRef=function(e,n){return h((()=>{let i=m(e),o=function(e){switch(e){case"@key":return E(v) -case"@index":return E(_) -case"@identity":return E(O) +return h((()=>((0,n.consumeTag)(r),t)),(e=>{t!==e&&(t=e,(0,n.dirtyTag)(r))}))},e.createIteratorRef=function(e,n){return h((()=>{let i=m(e),o=function(e){switch(e){case"@key":return C(v) +case"@index":return C(_) +case"@identity":return C(O) default:return function(e){0 -return E((r=>(0,t.getPath)(r,e)))}(e)}}(n) +return C((r=>(0,t.getPath)(r,e)))}(e)}}(n) if(Array.isArray(i))return new T(i,o) let s=(0,t.toIterator)(i) return null===s?new T(r.EMPTY_ARRAY,(()=>null)):new k(s,o)}))},e.createPrimitiveRef=c,e.createReadOnlyRef=function(e){return f(e)?h((()=>m(e)),null,e.debugLabel):e},e.createUnboundRef=d,e.isConstRef=function(e){return e.tag===n.CONSTANT_TAG},e.isInvokableRef=function(e){return e[i]===l},e.isUpdatableRef=f,e.updateRef=g,e.valueForRef=m @@ -2206,11 +2204,11 @@ if((0,r.isDict)(e))return(0,t.getProp)(e,n)}),(e=>{const i=m(o) if((0,r.isDict)(i))return(0,t.setProp)(i,n,e)})) return u.set(n,l),l}e.createDebugAliasRef=void 0 const y={},v=(e,t)=>t,_=(e,t)=>String(t),O=e=>null===e?y:e -class w{constructor(){this._weakMap=void 0,this._primitiveMap=void 0}get weakMap(){return void 0===this._weakMap&&(this._weakMap=new WeakMap),this._weakMap}get primitiveMap(){return void 0===this._primitiveMap&&(this._primitiveMap=new Map),this._primitiveMap}set(e,t){(0,r.isObject)(e)?this.weakMap.set(e,t):this.primitiveMap.set(e,t)}get(e){return(0,r.isObject)(e)?this.weakMap.get(e):this.primitiveMap.get(e)}}const C=new w -function E(e){let t=new w +class w{constructor(){this._weakMap=void 0,this._primitiveMap=void 0}get weakMap(){return void 0===this._weakMap&&(this._weakMap=new WeakMap),this._weakMap}get primitiveMap(){return void 0===this._primitiveMap&&(this._primitiveMap=new Map),this._primitiveMap}set(e,t){(0,r.isObject)(e)?this.weakMap.set(e,t):this.primitiveMap.set(e,t)}get(e){return(0,r.isObject)(e)?this.weakMap.get(e):this.primitiveMap.get(e)}}const E=new w +function C(e){let t=new w return(r,n)=>{let i=e(r,n),o=t.get(i)||0 -return t.set(i,o+1),0===o?i:function(e,t){let r=C.get(e) -void 0===r&&(r=[],C.set(e,r)) +return t.set(i,o+1),0===o?i:function(e,t){let r=E.get(e) +void 0===r&&(r=[],E.set(e,r)) let n=r[t] return void 0===n&&(n={value:e,count:t},r[t]=n),n}(i,o)}}class k{constructor(e,t){this.inner=e,this.keyFor=t}isEmpty(){return this.inner.isEmpty()}next(){let e=this.inner.next() return null!==e&&(e.key=this.keyFor(e.value,e.memo)),e}}class T{constructor(e,t){this.current=void 0,this.pos=0,this.iterator=e,this.keyFor=t,0===e.length?this.current={kind:"empty"}:this.current={kind:"first",value:e[this.pos]}}isEmpty(){return"empty"===this.current.kind}next(){let e,t=this.current @@ -2218,25 +2216,25 @@ if("first"===t.kind)this.current={kind:"progress"},e=t.value else{if(this.pos>=this.iterator.length-1)return null e=this.iterator[++this.pos]}let{keyFor:r}=this return{key:r(e,this.pos),value:e,memo:this.pos}}}})),e("@glimmer/runtime",["exports","@glimmer/debug","@glimmer/reference","@glimmer/util","@glimmer/vm","@glimmer/destroyable","@glimmer/global-context","@glimmer/manager","@glimmer/validator","@glimmer/program","@glimmer/owner"],(function(e,t,r,n,i,o,s,a,l,u,c){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.array=e.UpdatingVM=e.UpdatableBlockImpl=e.TemplateOnlyComponentManager=e.TemplateOnlyComponent=e.TEMPLATE_ONLY_COMPONENT_MANAGER=e.SimpleDynamicAttribute=e.SERIALIZATION_FIRST_NODE_STRING=e.RemoteLiveBlock=e.RehydrateBuilder=e.PartialScopeImpl=e.NewElementBuilder=e.LowLevelVM=e.IDOMChanges=e.EnvironmentImpl=e.EMPTY_POSITIONAL=e.EMPTY_NAMED=e.EMPTY_ARGS=e.DynamicScopeImpl=e.DynamicAttribute=e.DOMTreeConstruction=e.DOMChanges=e.CursorImpl=e.CurriedValue=e.ConcreteBounds=void 0,e.clear=C,e.clientBuilder=function(e,t){return re.forInitialRender(e,t)},e.concat=void 0,e.createCapturedArgs=lt,e.curry=ye,Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return o.destroy}}),e.dynamicAttribute=V,e.hash=e.get=e.fn=void 0,e.inTransaction=Gt,e.invokeHelper=function(e,t,r){0 +Object.defineProperty(e,"__esModule",{value:!0}),e.array=e.UpdatingVM=e.UpdatableBlockImpl=e.TemplateOnlyComponentManager=e.TemplateOnlyComponent=e.TEMPLATE_ONLY_COMPONENT_MANAGER=e.SimpleDynamicAttribute=e.SERIALIZATION_FIRST_NODE_STRING=e.RemoteLiveBlock=e.RehydrateBuilder=e.PartialScopeImpl=e.NewElementBuilder=e.LowLevelVM=e.IDOMChanges=e.EnvironmentImpl=e.EMPTY_POSITIONAL=e.EMPTY_NAMED=e.EMPTY_ARGS=e.DynamicScopeImpl=e.DynamicAttribute=e.DOMTreeConstruction=e.DOMChanges=e.CursorImpl=e.CurriedValue=e.ConcreteBounds=void 0,e.clear=E,e.clientBuilder=function(e,t){return re.forInitialRender(e,t)},e.concat=void 0,e.createCapturedArgs=lt,e.curry=ye,Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return o.destroy}}),e.dynamicAttribute=V,e.hash=e.get=e.fn=void 0,e.inTransaction=Qt,e.invokeHelper=function(e,t,r){0 const n=(0,c.getOwner)(e),i=(0,a.getInternalHelperManager)(t) 0 0 const s=i.getDelegateFor(n) -let u,p=new Xt(e,r),d=s.createHelper(t,p) +let u,p=new tr(e,r),d=s.createHelper(t,p) if(!(0,a.hasValue)(s))throw new Error("TODO: unreachable, to be implemented with hasScheduledEffect") u=(0,l.createCache)((()=>s.getValue(d))),(0,o.associateDestroyableChild)(e,u) -if((0,a.hasDestroyable)(s)){let e=s.getDestroyable(d);(0,o.associateDestroyableChild)(u,e)}return u},Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return o.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return o.isDestroying}}),e.isSerializationFirstNode=function(e){return e.nodeValue===vr},e.isWhitespace=function(e){return It.test(e)},e.normalizeProperty=P,e.on=void 0,Object.defineProperty(e,"registerDestructor",{enumerable:!0,get:function(){return o.registerDestructor}}),e.rehydrationBuilder=function(e,t){return Or.forInitialRender(e,t)},e.reifyArgs=pt,e.reifyNamed=ut,e.reifyPositional=ct,e.renderComponent=function(e,t,i,o,s,a={},l=new p){let u=mr.empty(e,{treeBuilder:t,handle:i.stdlib.main,dynamicScope:l,owner:o},i) +if((0,a.hasDestroyable)(s)){let e=s.getDestroyable(d);(0,o.associateDestroyableChild)(u,e)}return u},Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return o.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return o.isDestroying}}),e.isSerializationFirstNode=function(e){return e.nodeValue===Or},e.isWhitespace=function(e){return Bt.test(e)},e.normalizeProperty=P,e.on=void 0,Object.defineProperty(e,"registerDestructor",{enumerable:!0,get:function(){return o.registerDestructor}}),e.rehydrationBuilder=function(e,t){return Er.forInitialRender(e,t)},e.reifyArgs=function(e){return{named:ut(e.named),positional:ct(e.positional)}},e.reifyNamed=ut,e.reifyPositional=ct,e.renderComponent=function(e,t,i,o,s,a={},l=new p){let u=br.empty(e,{treeBuilder:t,handle:i.stdlib.main,dynamicScope:l,owner:o},i) return function(e,t,r,i,o){const s=Object.keys(o).map((e=>[e,o[e]])),a=["main","else","attrs"],l=s.map((([e])=>`@${e}`)) let u=e[y].component(i,r) e.pushFrame() for(let n=0;n<3*a.length;n++)e.stack.push(null) e.stack.push(null),s.forEach((([,t])=>{e.stack.push(t)})),e[v].setup(e.stack,l,a,0,!0) const c=(0,n.expect)(u.compilable,"BUG: Expected the root component rendered with renderComponent to have an associated template, set with setComponentTemplate"),p=(0,n.unwrapHandle)(c.compile(t)),d={handle:p,symbolTable:c.symbolTable} -return e.stack.push(e[v]),e.stack.push(d),e.stack.push(u),new yr(e)}(u,i,o,s,function(e){const t=(0,r.createConstRef)(e,"args") -return Object.keys(e).reduce(((e,n)=>(e[n]=(0,r.childRefFor)(t,n),e)),{})}(a))},e.renderMain=function(e,t,r,i,o,s,a=new p){let l=(0,n.unwrapHandle)(s.compile(t)),u=s.symbolTable.symbols.length,c=mr.initial(e,t,{self:i,dynamicScope:a,treeBuilder:o,handle:l,numSymbols:u,owner:r}) -return new yr(c)},e.renderSync=function(e,t){let r -return Gt(e,(()=>r=t.sync())),r},e.resetDebuggerCallback=function(){wt=Ot},e.runtimeContext=function(e,t,r,n){return{env:new qt(e,t),program:new u.RuntimeProgramImpl(r.constants,r.heap),resolver:n}},e.setDebuggerCallback=function(e){wt=e},e.templateOnlyComponent=function(e,t){return new St(e,t)} +return e.stack.push(e[v]),e.stack.push(d),e.stack.push(u),new _r(e)}(u,i,o,s,function(e){const t=(0,r.createConstRef)(e,"args") +return Object.keys(e).reduce(((e,n)=>(e[n]=(0,r.childRefFor)(t,n),e)),{})}(a))},e.renderMain=function(e,t,r,i,o,s,a=new p){let l=(0,n.unwrapHandle)(s.compile(t)),u=s.symbolTable.symbols.length,c=br.initial(e,t,{self:i,dynamicScope:a,treeBuilder:o,handle:l,numSymbols:u,owner:r}) +return new _r(c)},e.renderSync=function(e,t){let r +return Qt(e,(()=>r=t.sync())),r},e.resetDebuggerCallback=function(){kt=Ct},e.runtimeContext=function(e,t,r,n){return{env:new Yt(e,t),program:new u.RuntimeProgramImpl(r.constants,r.heap),resolver:n}},e.setDebuggerCallback=function(e){kt=e},e.templateOnlyComponent=function(e,t){return new xt(e,t)} class p{constructor(e){this.bucket=void 0,this.bucket=e?(0,n.assign)({},e):{}}get(e){return(0,n.unwrap)(this.bucket[e])}set(e,t){return this.bucket[e]=t}child(){return new p(this.bucket)}}e.DynamicScopeImpl=p class d{static root(e,t=0,n){let i=new Array(t+1).fill(r.UNDEFINED_REFERENCE) return new d(i,n,null,null,null).init({self:e})}static sized(e=0,t){let n=new Array(e+1).fill(r.UNDEFINED_REFERENCE) @@ -2249,17 +2247,17 @@ class _{constructor(e,t){this.element=e,this.nextSibling=t}}e.CursorImpl=_ class O{constructor(e,t,r){this.parentNode=e,this.first=t,this.last=r}parentElement(){return this.parentNode}firstNode(){return this.first}lastNode(){return this.last}}function w(e,t){let r=e.parentElement(),i=e.firstNode(),o=e.lastNode(),s=i for(;;){let e=s.nextSibling if(r.insertBefore(s,t),s===o)return e -s=(0,n.expect)(e,"invalid bounds")}}function C(e){let t=e.parentElement(),r=e.firstNode(),i=e.lastNode(),o=r +s=(0,n.expect)(e,"invalid bounds")}}function E(e){let t=e.parentElement(),r=e.firstNode(),i=e.lastNode(),o=r for(;;){let e=o.nextSibling if(t.removeChild(o),o===i)return e -o=(0,n.expect)(e,"invalid bounds")}}function E(e){return k(e)?"":String(e)}function k(e){return null==e||"function"!=typeof e.toString}function T(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}function S(e){return"object"==typeof e&&null!==e&&"number"==typeof e.nodeType}function R(e){return"string"==typeof e}function P(e,t){let r,n +o=(0,n.expect)(e,"invalid bounds")}}function C(e){return k(e)?"":String(e)}function k(e){return null==e||"function"!=typeof e.toString}function T(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}function R(e){return"object"==typeof e&&null!==e&&"number"==typeof e.nodeType}function S(e){return"string"==typeof e}function P(e,t){let r,n if(t in e)n=t,r="prop" else{let i=t.toLowerCase() i in e?(r="prop",n=i):(r="attr",n=t)}return"prop"!==r||"style"!==n.toLowerCase()&&!function(e,t){let r=x[e.toUpperCase()] return r&&r[t.toLowerCase()]||!1}(e.tagName,n)||(r="attr"),{normalized:n,type:r}}e.ConcreteBounds=O const x={INPUT:{form:!0,autocorrect:!0,list:!0},SELECT:{form:!0},OPTION:{form:!0},TEXTAREA:{form:!0},LABEL:{form:!0},FIELDSET:{form:!0},LEGEND:{form:!0},OBJECT:{form:!0},OUTPUT:{form:!0},BUTTON:{form:!0}} -const A=["javascript:","vbscript:"],M=["A","BODY","LINK","IMG","IFRAME","BASE","FORM"],N=["EMBED"],j=["href","src","background","action"],D=["src"] -function I(e,t){return-1!==e.indexOf(t)}function F(e,t){return(null===e||I(M,e))&&I(j,t)}function L(e,t){return null!==e&&(I(N,e)&&I(D,t))}function B(e,t){return F(e,t)||L(e,t)}let U +const A=["javascript:","vbscript:"],M=["A","BODY","LINK","IMG","IFRAME","BASE","FORM"],N=["EMBED"],D=["href","src","background","action"],j=["src"] +function I(e,t){return-1!==e.indexOf(t)}function F(e,t){return(null===e||I(M,e))&&I(D,t)}function L(e,t){return null!==e&&(I(N,e)&&I(j,t))}function B(e,t){return F(e,t)||L(e,t)}let U function H(e){return U||(U=function(){if("object"==typeof URL&&null!==URL&&"function"==typeof URL.parse){let e=URL return t=>{let r=null return"string"==typeof t&&(r=e.parse(t).protocol),null===r?":":r}}if("function"==typeof URL)return e=>{try{return new URL(e).protocol}catch(t){return":"}} @@ -2267,7 +2265,7 @@ throw new Error('@glimmer/runtime needs a valid "globalThis.URL"')}()),U(e)}func if(null==r)return r if(T(r))return r.toHTML() n=e?e.tagName.toUpperCase():null -let i=E(r) +let i=C(r) if(F(n,t)){let e=H(i) if(I(A,e))return`unsafe:${i}`}return L(n,t)?`unsafe:${i}`:i}function V(e,t,r,i=!1){const{tagName:o,namespaceURI:s}=e,a={element:e,name:t,namespace:r} if(s===n.NS_SVG)return z(o,t,a) @@ -2286,7 +2284,7 @@ t?e.removeAttributeNS(t,this.normalizedName):e.removeAttribute(this.normalizedNa super.set(e,o,r)}update(e,t){const{element:r,name:n}=this.attribute,i=$(r,n,e) super.update(i,t)}}class Q extends G{set(e,t,r){const{element:n,name:i}=this.attribute,o=$(n,i,t) super.set(e,o,r)}update(e,t){const{element:r,name:n}=this.attribute,i=$(r,n,e) -super.update(i,t)}}class K extends W{set(e,t){e.__setProperty("value",E(t))}update(e){const t=(0,n.castToBrowser)(this.attribute.element,["input","textarea"]),r=t.value,i=E(e) +super.update(i,t)}}class K extends W{set(e,t){e.__setProperty("value",C(t))}update(e){const t=(0,n.castToBrowser)(this.attribute.element,["input","textarea"]),r=t.value,i=C(e) r!==i&&(t.value=i)}}class J extends W{set(e,t){null!=t&&!1!==t&&e.__setProperty("selected",!0)}update(e){const t=(0,n.castToBrowser)(this.attribute.element,"option") t.selected=!!e}}function X(e){return!1===e||null==e||void 0===e.toString?null:!0===e?"":"function"==typeof e?null:String(e)}class Z{constructor(e){this.node=e}firstNode(){return this.node}}class ee{constructor(e){this.node=e}lastNode(){return this.node}}const te=Symbol("CURSOR_STACK") class re{static forInitialRender(e,t){return new this(e,t.element,t.nextSibling).initialize()}static resume(e,t){let r=new this(e,t.parentElement(),t.reset(e)).initialize() @@ -2295,7 +2293,8 @@ return null!==r&&(t||r.didAppendBounds(e)),this.__openBlock(),this.blockStack.pu return this.constructing=t,t}__openElement(e){return this.dom.createElement(e,this.element)}flushElement(e){let t=this.element,r=(0,n.expect)(this.constructing,"flushElement should only be called when constructing an element") this.__flushElement(t,r),this.constructing=null,this.operations=null,this.pushModifiers(e),this.pushElement(r,null),this.didOpenElement(r)}__flushElement(e,t){this.dom.insertBefore(e,t,this.nextSibling)}closeElement(){return this.willCloseElement(),this.popElement(),this.popModifiers()}pushRemoteElement(e,t,r){return this.__pushRemoteElement(e,t,r)}__pushRemoteElement(e,t,r){if(this.pushElement(e,r),void 0===r)for(;e.lastChild;)e.removeChild(e.lastChild) let n=new ie(e) -return this.pushLiveBlock(n,!0)}popRemoteElement(){this.popBlock(),this.popElement()}pushElement(e,t=null){this[te].push(new _(e,t))}pushModifiers(e){this.modifierStack.push(e)}popModifiers(){return this.modifierStack.pop()}didAppendBounds(e){return this.block().didAppendBounds(e),e}didAppendNode(e){return this.block().didAppendNode(e),e}didOpenElement(e){return this.block().openElement(e),e}willCloseElement(){this.block().closeElement()}appendText(e){return this.didAppendNode(this.__appendText(e))}__appendText(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createTextNode(e) +return this.pushLiveBlock(n,!0)}popRemoteElement(){const e=this.popBlock() +return(0,n.assert)(e instanceof ie,"[BUG] expecting a RemoteLiveBlock"),this.popElement(),e}pushElement(e,t=null){this[te].push(new _(e,t))}pushModifiers(e){this.modifierStack.push(e)}popModifiers(){return this.modifierStack.pop()}didAppendBounds(e){return this.block().didAppendBounds(e),e}didAppendNode(e){return this.block().didAppendNode(e),e}didOpenElement(e){return this.block().openElement(e),e}willCloseElement(){this.block().closeElement()}appendText(e){return this.didAppendNode(this.__appendText(e))}__appendText(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createTextNode(e) return t.insertBefore(r,i,n),i}__appendNode(e){return this.dom.insertBefore(this.element,e,this.nextSibling),e}__appendFragment(e){let t=e.firstChild if(t){let r=new O(this.element,t,e.lastChild) return this.dom.insertBefore(this.element,e,this.nextSibling),r}{const e=this.__appendComment("") @@ -2306,9 +2305,9 @@ this.didAppendBounds(t)}appendDynamicNode(e){let t=this.__appendNode(e),r=new O( this.didAppendBounds(r)}trustedContent(e){return this.__appendHTML(e)}untrustedContent(e){return this.__appendText(e)}appendComment(e){return this.didAppendNode(this.__appendComment(e))}__appendComment(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createComment(e) return t.insertBefore(r,i,n),i}__setAttribute(e,t,r){this.dom.setAttribute(this.constructing,e,t,r)}__setProperty(e,t){this.constructing[e]=t}setStaticAttribute(e,t,r){this.__setAttribute(e,t,r)}setDynamicAttribute(e,t,r,n){let i=V(this.constructing,e,n,r) return i.set(this,t,this.env),i}}e.NewElementBuilder=re -class ne{constructor(e){this.first=null,this.last=null,this.nesting=0,this.parent=e}parentElement(){return this.parent}firstNode(){return(0,n.expect)(this.first,"cannot call `firstNode()` while `SimpleLiveBlock` is still initializing").firstNode()}lastNode(){return(0,n.expect)(this.last,"cannot call `lastNode()` while `SimpleLiveBlock` is still initializing").lastNode()}openElement(e){this.didAppendNode(e),this.nesting++}closeElement(){this.nesting--}didAppendNode(e){0===this.nesting&&(this.first||(this.first=new Z(e)),this.last=new ee(e))}didAppendBounds(e){0===this.nesting&&(this.first||(this.first=e),this.last=e)}finalize(e){null===this.first&&e.appendComment("")}}class ie extends ne{constructor(e){super(e),(0,o.registerDestructor)(this,(()=>{this.parentElement()===this.firstNode().parentNode&&C(this)}))}}e.RemoteLiveBlock=ie +class ne{constructor(e){this.first=null,this.last=null,this.nesting=0,this.parent=e}parentElement(){return this.parent}firstNode(){return(0,n.expect)(this.first,"cannot call `firstNode()` while `SimpleLiveBlock` is still initializing").firstNode()}lastNode(){return(0,n.expect)(this.last,"cannot call `lastNode()` while `SimpleLiveBlock` is still initializing").lastNode()}openElement(e){this.didAppendNode(e),this.nesting++}closeElement(){this.nesting--}didAppendNode(e){0===this.nesting&&(this.first||(this.first=new Z(e)),this.last=new ee(e))}didAppendBounds(e){0===this.nesting&&(this.first||(this.first=e),this.last=e)}finalize(e){null===this.first&&e.appendComment("")}}class ie extends ne{constructor(e){super(e),(0,o.registerDestructor)(this,(()=>{this.parentElement()===this.firstNode().parentNode&&E(this)}))}}e.RemoteLiveBlock=ie class oe extends ne{reset(){(0,o.destroy)(this) -let e=C(this) +let e=E(this) return this.first=null,this.last=null,this.nesting=0,e}}e.UpdatableBlockImpl=oe class se{constructor(e,t){this.parent=e,this.boundList=t,this.parent=e,this.boundList=t}parentElement(){return this.parent}firstNode(){return(0,n.expect)(this.boundList[0],"cannot call `firstNode()` while `LiveBlockList` is still initializing").firstNode()}lastNode(){let e=this.boundList return(0,n.expect)(e[e.length-1],"cannot call `lastNode()` while `LiveBlockList` is still initializing").lastNode()}openElement(e){(0,n.assert)(!1,"Cannot openElement directly inside a block list")}closeElement(){(0,n.assert)(!1,"Cannot closeElement directly inside a block list")}didAppendNode(e){(0,n.assert)(!1,"Cannot create a new node directly inside a block list")}didAppendBounds(e){}finalize(e){(0,n.assert)(this.boundList.length>0,"boundsList cannot be empty")}}const ae=new class{constructor(){this.evaluateOpcode=new Array(i.Op.Size).fill(null)}add(e,t,r="syscall"){this.evaluateOpcode[e]={syscall:"machine"!==r,evaluate:t}}debugBefore(e,r){let n,o @@ -2336,34 +2335,36 @@ n.push((0,r.createComputeRef)((()=>(0,s.toBool)((0,r.valueForRef)(i)))))})) class _e{constructor(e){this.last=void 0,this.ref=e,this.last=(0,r.valueForRef)(e)}evaluate(e){let{last:t,ref:n}=this t!==(0,r.valueForRef)(n)&&e.throw()}}class Oe{constructor(e,t){this.last=void 0,this.ref=e,this.filter=t,this.last=t((0,r.valueForRef)(e))}evaluate(e){let{last:t,ref:n,filter:i}=this t!==i((0,r.valueForRef)(n))&&e.throw()}}class we{constructor(){this.tag=l.CONSTANT_TAG,this.lastRevision=l.INITIAL,this.target=void 0}finalize(e,t){this.target=t,this.didModify(e)}evaluate(e){let{tag:t,target:r,lastRevision:i}=this -!e.alwaysRevalidate&&(0,l.validateTag)(t,i)&&((0,l.consumeTag)(t),e.goto((0,n.expect)(r,"VM BUG: Target must be set before attempting to jump")))}didModify(e){this.tag=e,this.lastRevision=(0,l.valueForTag)(this.tag),(0,l.consumeTag)(e)}}class Ce{constructor(e){this.debugLabel=e}evaluate(){(0,l.beginTrackFrame)(this.debugLabel)}}class Ee{constructor(e){this.target=e}evaluate(){let e=(0,l.endTrackFrame)() +!e.alwaysRevalidate&&(0,l.validateTag)(t,i)&&((0,l.consumeTag)(t),e.goto((0,n.expect)(r,"VM BUG: Target must be set before attempting to jump")))}didModify(e){this.tag=e,this.lastRevision=(0,l.valueForTag)(this.tag),(0,l.consumeTag)(e)}}class Ee{constructor(e){this.debugLabel=e}evaluate(){(0,l.beginTrackFrame)(this.debugLabel)}}class Ce{constructor(e){this.target=e}evaluate(){let e=(0,l.endTrackFrame)() this.target.didModify(e)}}ae.add(i.Op.Text,((e,{op1:t})=>{e.elements().appendText(e[y].getValue(t))})),ae.add(i.Op.Comment,((e,{op1:t})=>{e.elements().appendComment(e[y].getValue(t))})),ae.add(i.Op.OpenElement,((e,{op1:t})=>{e.elements().openElement(e[y].getValue(t))})),ae.add(i.Op.OpenDynamicElement,(e=>{let n=(0,t.check)((0,r.valueForRef)((0,t.check)(e.stack.pop(),Fe)),t.CheckString) -e.elements().openElement(n)})),ae.add(i.Op.PushRemoteElement,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),o=(0,t.check)(e.stack.pop(),Fe),s=(0,t.check)((0,r.valueForRef)(n),t.CheckElement),a=(0,t.check)((0,r.valueForRef)(i),(0,t.CheckMaybe)((0,t.CheckOption)(t.CheckNode))),l=(0,r.valueForRef)(o);(0,r.isConstRef)(n)||e.updateWith(new _e(n)),void 0===a||(0,r.isConstRef)(i)||e.updateWith(new _e(i)) -let u=e.elements().pushRemoteElement(s,l,a) -u&&e.associateDestroyable(u)})),ae.add(i.Op.PopRemoteElement,(e=>{e.elements().popRemoteElement()})),ae.add(i.Op.FlushElement,(e=>{let r=(0,t.check)(e.fetchValue(i.$t0),Ie),n=null +e.elements().openElement(n)})),ae.add(i.Op.PushRemoteElement,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),s=(0,t.check)(e.stack.pop(),Fe),a=(0,t.check)((0,r.valueForRef)(n),t.CheckElement),l=(0,t.check)((0,r.valueForRef)(i),(0,t.CheckMaybe)((0,t.CheckOption)(t.CheckNode))),u=(0,r.valueForRef)(s);(0,r.isConstRef)(n)||e.updateWith(new _e(n)),void 0===l||(0,r.isConstRef)(i)||e.updateWith(new _e(i)) +let c=e.elements().pushRemoteElement(a,u,l) +if(c&&e.associateDestroyable(c),void 0!==e.env.debugRenderTree){let t=lt(void 0===l?{}:{insertBefore:i},[n]) +e.env.debugRenderTree.create(c,{type:"keyword",name:"in-element",args:t,instance:null}),(0,o.registerDestructor)(c,(()=>{e.env.debugRenderTree?.willDestroy(c)}))}})),ae.add(i.Op.PopRemoteElement,(e=>{let t=e.elements().popRemoteElement() +void 0!==e.env.debugRenderTree&&e.env.debugRenderTree.didRender(t,t)})),ae.add(i.Op.FlushElement,(e=>{let r=(0,t.check)(e.fetchValue(i.$t0),Ie),n=null r&&(n=r.flush(e),e.loadValue(i.$t0,null)),e.elements().flushElement(n)})),ae.add(i.Op.CloseElement,(e=>{let t=e.elements().closeElement() null!==t&&t.forEach((t=>{e.env.scheduleInstallModifier(t) const r=t.manager.getDestroyable(t.state) null!==r&&e.associateDestroyable(r)}))})),ae.add(i.Op.Modifier,((e,{op1:r})=>{if(!1===e.env.isInteractive)return -let o=e.getOwner(),s=(0,t.check)(e.stack.pop(),Be),a=e[y].getValue(r),{manager:u}=a,{constructing:c}=e.elements(),p=u.create(o,(0,n.expect)(c,"BUG: ElementModifier could not find the element it applies to"),a.state,s.capture()),d={manager:u,state:p,definition:a};(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(d) -let h=u.getTag(p) -return null!==h?((0,l.consumeTag)(h),e.updateWith(new ke(h,d))):void 0})),ae.add(i.Op.DynamicModifier,(e=>{if(!1===e.env.isInteractive)return -let{stack:o}=e,s=(0,t.check)(o.pop(),Fe),u=(0,t.check)(o.pop(),Be).capture(),{constructing:c}=e.elements(),p=e.getOwner(),d=(0,r.createComputeRef)((()=>{let e,t,o=(0,r.valueForRef)(s) +let o=e.getOwner(),s=(0,t.check)(e.stack.pop(),Be),a=e[y].getValue(r),{manager:u}=a,{constructing:c}=e.elements(),p=s.capture(),d=u.create(o,(0,n.expect)(c,"BUG: ElementModifier could not find the element it applies to"),a.state,p),h={manager:u,state:d,definition:a};(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(e,h,p) +let f=u.getTag(d) +return null!==f?((0,l.consumeTag)(f),e.updateWith(new ke(f,h))):void 0})),ae.add(i.Op.DynamicModifier,(e=>{if(!1===e.env.isInteractive)return +let{stack:o}=e,s=(0,t.check)(o.pop(),Fe),u=(0,t.check)(o.pop(),Be).capture(),{positional:c,named:p}=u,{constructing:d}=e.elements(),h=e.getOwner(),f=(0,r.createComputeRef)((()=>{let e,t,o=(0,r.valueForRef)(s) if(!(0,n.isObject)(o))return -if(me(o,i.CurriedTypes.Modifier)){let{definition:r,owner:i,positional:s,named:a}=be(o) -t=r,e=i,void 0!==s&&(u.positional=s.concat(u.positional)),void 0!==a&&(u.named=(0,n.assign)({},...a,u.named))}else t=o,e=p +if(me(o,i.CurriedTypes.Modifier)){let{definition:r,owner:n,positional:i,named:s}=be(o) +t=r,e=n,void 0!==i&&(u.positional=i.concat(c)),void 0!==s&&(u.named=Object.assign({},...s,p))}else t=o,e=h let l=(0,a.getInternalModifierManager)(t,!0) if(null===l)throw new Error("BUG: modifier manager expected") -let d={resolvedName:null,manager:l,state:t},h=l.create(e,(0,n.expect)(c,"BUG: ElementModifier could not find the element it applies to"),d.state,u) -return{manager:l,state:h,definition:d}})),h=(0,r.valueForRef)(d),f=null -if(void 0!==h){(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(h),f=h.manager.getTag(h.state),null!==f&&(0,l.consumeTag)(f)}return!(0,r.isConstRef)(s)||f?e.updateWith(new Te(f,h,d)):void 0})) +let f={resolvedName:null,manager:l,state:t},m=l.create(e,(0,n.expect)(d,"BUG: ElementModifier could not find the element it applies to"),f.state,u) +return{manager:l,state:m,definition:f}})),m=(0,r.valueForRef)(f),g=null +if(void 0!==m){(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(e,m,u),g=m.manager.getTag(m.state),null!==g&&(0,l.consumeTag)(g)}return!(0,r.isConstRef)(s)||g?e.updateWith(new Te(g,m,f)):void 0})) class ke{constructor(e,t){this.lastUpdated=void 0,this.tag=e,this.modifier=t,this.lastUpdated=(0,l.valueForTag)(e)}evaluate(e){let{modifier:t,tag:r,lastUpdated:n}=this;(0,l.consumeTag)(r),(0,l.validateTag)(r,n)||(e.env.scheduleUpdateModifier(t),this.lastUpdated=(0,l.valueForTag)(r))}}class Te{constructor(e,t,r){this.lastUpdated=void 0,this.tag=e,this.instance=t,this.instanceRef=r,this.lastUpdated=(0,l.valueForTag)(e??l.CURRENT_TAG)}evaluate(e){let{tag:t,lastUpdated:n,instance:i,instanceRef:s}=this,a=(0,r.valueForRef)(s) if(a!==i){if(void 0!==i){let e=i.manager.getDestroyable(i.state) null!==e&&(0,o.destroy)(e)}if(void 0!==a){let{manager:r,state:n}=a,i=r.getDestroyable(n) null!==i&&(0,o.associateDestroyableChild)(this,i),t=r.getTag(n),null!==t&&(this.lastUpdated=(0,l.valueForTag)(t)),this.tag=t,e.env.scheduleInstallModifier(a)}this.instance=a}else null===t||(0,l.validateTag)(t,n)||(e.env.scheduleUpdateModifier(i),this.lastUpdated=(0,l.valueForTag)(t)) null!==t&&(0,l.consumeTag)(t)}}ae.add(i.Op.StaticAttr,((e,{op1:t,op2:r,op3:n})=>{let i=e[y].getValue(t),o=e[y].getValue(r),s=n?e[y].getValue(n):null -e.elements().setStaticAttribute(i,o,s)})),ae.add(i.Op.DynamicAttr,((e,{op1:n,op2:i,op3:o})=>{let s=e[y].getValue(n),a=e[y].getValue(i),l=(0,t.check)(e.stack.pop(),Fe),u=(0,r.valueForRef)(l),c=o?e[y].getValue(o):null,p=e.elements().setDynamicAttribute(s,u,a,c);(0,r.isConstRef)(l)||e.updateWith(new Se(l,p,e.env))})) -class Se{constructor(e,t,n){this.updateRef=void 0 +e.elements().setStaticAttribute(i,o,s)})),ae.add(i.Op.DynamicAttr,((e,{op1:n,op2:i,op3:o})=>{let s=e[y].getValue(n),a=e[y].getValue(i),l=(0,t.check)(e.stack.pop(),Fe),u=(0,r.valueForRef)(l),c=o?e[y].getValue(o):null,p=e.elements().setDynamicAttribute(s,u,a,c);(0,r.isConstRef)(l)||e.updateWith(new Re(l,p,e.env))})) +class Re{constructor(e,t,n){this.updateRef=void 0 let i=!1 this.updateRef=(0,r.createComputeRef)((()=>{let o=(0,r.valueForRef)(e) !0===i?t.update(o,n):i=!0})),(0,r.valueForRef)(this.updateRef)}evaluate(){(0,r.valueForRef)(this.updateRef)}}ae.add(i.Op.PushComponentDefinition,((e,{op1:t})=>{let r=e[y].getValue(t);(0,n.assert)(!!r,`Missing component for ${t}`) @@ -2403,25 +2404,29 @@ let h=null;(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.create let f=l.create(e.getOwner(),s.state,d,e.env,c,h,!!p) o.state=f,(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.updateHook)&&e.updateWith(new Me(f,l,c))})),ae.add(i.Op.RegisterComponentDestructor,((e,{op1:r})=>{let{manager:n,state:i,capabilities:o}=(0,t.check)(e.fetchValue(r),Ge),s=n.getDestroyable(i) s&&e.associateDestroyable(s)})),ae.add(i.Op.BeginComponentTransaction,((e,{op1:t})=>{let r -e.beginCacheGroup(r),e.elements().pushSimpleBlock()})),ae.add(i.Op.PutComponentOperations,(e=>{e.loadValue(i.$t0,new Re)})),ae.add(i.Op.ComponentAttr,((e,{op1:r,op2:n,op3:o})=>{let s=e[y].getValue(r),a=e[y].getValue(n),l=(0,t.check)(e.stack.pop(),Fe),u=o?e[y].getValue(o):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Re)).setAttribute(s,l,a,u)})),ae.add(i.Op.StaticComponentAttr,((e,{op1:r,op2:n,op3:o})=>{let s=e[y].getValue(r),a=e[y].getValue(n),l=o?e[y].getValue(o):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Re)).setStaticAttribute(s,a,l)})) -class Re{constructor(){this.attributes=(0,n.dict)(),this.classes=[],this.modifiers=[]}setAttribute(e,t,r,n){let i={value:t,namespace:n,trusting:r} +e.beginCacheGroup(r),e.elements().pushSimpleBlock()})),ae.add(i.Op.PutComponentOperations,(e=>{e.loadValue(i.$t0,new Se)})),ae.add(i.Op.ComponentAttr,((e,{op1:r,op2:n,op3:o})=>{let s=e[y].getValue(r),a=e[y].getValue(n),l=(0,t.check)(e.stack.pop(),Fe),u=o?e[y].getValue(o):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)).setAttribute(s,l,a,u)})),ae.add(i.Op.StaticComponentAttr,((e,{op1:r,op2:n,op3:o})=>{let s=e[y].getValue(r),a=e[y].getValue(n),l=o?e[y].getValue(o):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)).setStaticAttribute(s,a,l)})) +class Se{constructor(){this.attributes=(0,n.dict)(),this.classes=[],this.modifiers=[]}setAttribute(e,t,r,n){let i={value:t,namespace:n,trusting:r} "class"===e&&this.classes.push(t),this.attributes[e]=i}setStaticAttribute(e,t,r){let n={value:t,namespace:r} -"class"===e&&this.classes.push(t),this.attributes[e]=n}addModifier(e){this.modifiers.push(e)}flush(e){let t,r=this.attributes +"class"===e&&this.classes.push(t),this.attributes[e]=n}addModifier(e,t,r){if(this.modifiers.push(t),void 0!==e.env.debugRenderTree){const{manager:i,definition:s,state:a}=t +if(null===a||"object"!=typeof a&&"function"!=typeof a)return +let{element:l,constructing:u}=e.elements(),c=i.getDebugName(s.state),p=i.getDebugInstance(a);(0,n.assert)(u,"Expected a constructing element in addModifier") +let d=new O(l,u,u) +e.env.debugRenderTree.create(a,{type:"modifier",name:c,args:r,instance:p}),e.env.debugRenderTree.didRender(a,d),e.associateDestroyable(a),e.updateWith(new De(a)),e.updateWith(new je(a,d)),(0,o.registerDestructor)(a,(()=>{e.env.debugRenderTree?.willDestroy(a)}))}}flush(e){let t,r=this.attributes for(let i in this.attributes){if("type"===i){t=r[i] continue}let o=(0,n.unwrap)(this.attributes[i]) "class"===i?xe(e,"class",Pe(this.classes),o.namespace,o.trusting):xe(e,i,o.value,o.namespace,o.trusting)}return void 0!==t&&xe(e,"type",t.value,t.namespace,t.trusting),this.modifiers}}function Pe(e){return 0===e.length?"":1===e.length?(0,n.unwrap)(e[0]):function(e){return e.every((e=>"string"==typeof e))}(e)?e.join(" "):(t=e,(0,r.createComputeRef)((()=>{let e=[] -for(const n of t){let t=E("string"==typeof n?n:(0,r.valueForRef)(n)) +for(const n of t){let t=C("string"==typeof n?n:(0,r.valueForRef)(n)) t&&e.push(t)}return 0===e.length?null:e.join(" ")}))) var t}function xe(e,t,n,i,o=!1){if("string"==typeof n)e.elements().setStaticAttribute(t,n,i) -else{let s=e.elements().setDynamicAttribute(t,(0,r.valueForRef)(n),o,i);(0,r.isConstRef)(n)||e.updateWith(new Se(n,s,e.env))}}function Ae(e,t,r,n,i){let o=r.table.symbols.indexOf(e),s=n.get(t);-1!==o&&i.scope().bindBlock(o+1,s),r.lookup&&(r.lookup[e]=s)}ae.add(i.Op.DidCreateElement,((e,{op1:r})=>{let{definition:o,state:s}=(0,t.check)(e.fetchValue(r),Ge),{manager:a}=o,l=(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Re)) +else{let s=e.elements().setDynamicAttribute(t,(0,r.valueForRef)(n),o,i);(0,r.isConstRef)(n)||e.updateWith(new Re(n,s,e.env))}}function Ae(e,t,r,n,i){let o=r.table.symbols.indexOf(e),s=n.get(t);-1!==o&&i.scope().bindBlock(o+1,s),r.lookup&&(r.lookup[e]=s)}ae.add(i.Op.DidCreateElement,((e,{op1:r})=>{let{definition:o,state:s}=(0,t.check)(e.fetchValue(r),Ge),{manager:a}=o,l=(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)) a.didCreateElement(s,(0,n.expect)(e.elements().constructing,"Expected a constructing element in DidCreateOpcode"),l)})),ae.add(i.Op.GetComponentSelf,((e,{op1:s,op2:l})=>{let u=(0,t.check)(e.fetchValue(s),Ge),{definition:c,state:p}=u,{manager:d}=c,h=d.getSelf(p) if(void 0!==e.env.debugRenderTree){let u,c,d=(0,t.check)(e.fetchValue(s),Ge),{definition:f,manager:m}=d if(e.stack.peek()===e[v])u=e[v].capture() else{let t=e[y].getArray(l) e[v].setup(e.stack,t,[],0,!0),u=e[v].capture()}let g=f.compilable if(null===g?((0,n.assert)((0,a.managerHasCapability)(m,d.capabilities,i.InternalComponentCapabilities.dynamicLayout),"BUG: No template was found for this component, and the component did not have the dynamic layout capability"),g=m.getDynamicLayout(p,e.runtime.resolver),c=null!==g?g.moduleName:"__default__.hbs"):c=g.moduleName,e.associateDestroyable(d),ve(m)){m.getDebugCustomRenderTree(d.definition.state,d.state,u,c).forEach((t=>{let{bucket:r}=t -e.env.debugRenderTree.create(r,t),(0,o.registerDestructor)(d,(()=>{e.env.debugRenderTree?.willDestroy(r)})),e.updateWith(new je(r))}))}else{let t=f.resolvedName??m.getDebugName(f.state) -e.env.debugRenderTree.create(d,{type:"component",name:t,args:u,template:c,instance:(0,r.valueForRef)(h)}),e.associateDestroyable(d),(0,o.registerDestructor)(d,(()=>{e.env.debugRenderTree?.willDestroy(d)})),e.updateWith(new je(d))}}e.stack.push(h)})),ae.add(i.Op.GetComponentTagName,((e,{op1:r})=>{let{definition:n,state:i}=(0,t.check)(e.fetchValue(r),Ge),{manager:o}=n,s=o.getTagName(i) +e.env.debugRenderTree.create(r,t),(0,o.registerDestructor)(d,(()=>{e.env.debugRenderTree?.willDestroy(r)})),e.updateWith(new De(r))}))}else{let t=f.resolvedName??m.getDebugName(f.state) +e.env.debugRenderTree.create(d,{type:"component",name:t,args:u,template:c,instance:(0,r.valueForRef)(h)}),(0,o.registerDestructor)(d,(()=>{e.env.debugRenderTree?.willDestroy(d)})),e.updateWith(new De(d))}}e.stack.push(h)})),ae.add(i.Op.GetComponentTagName,((e,{op1:r})=>{let{definition:n,state:i}=(0,t.check)(e.fetchValue(r),Ge),{manager:o}=n,s=o.getTagName(i) e.stack.push(s)})),ae.add(i.Op.GetComponentLayout,((e,{op1:r})=>{let o=(0,t.check)(e.fetchValue(r),Ge),{manager:s,definition:l}=o,{stack:u}=e,{compilable:c}=l if(null===c){let{capabilities:t}=o;(0,n.assert)((0,a.managerHasCapability)(s,t,i.InternalComponentCapabilities.dynamicLayout),"BUG: No template was found for this component, and the component did not have the dynamic layout capability"),c=s.getDynamicLayout(o.state,e.runtime.resolver),null===c&&(c=(0,a.managerHasCapability)(s,t,i.InternalComponentCapabilities.wrapped)?(0,n.unwrapTemplate)(e[y].defaultTemplate).asWrappedLayout():(0,n.unwrapTemplate)(e[y].defaultTemplate).asLayout())}let p=c.compile(e.context) u.push(c.symbolTable),u.push(p)})),ae.add(i.Op.Main,((e,{op1:r})=>{let n=(0,t.check)(e.stack.pop(),Ze),i=(0,t.check)(e.stack.pop(),Ye),{manager:o,capabilities:s}=n,a={definition:n,manager:o,capabilities:s,state:null,handle:i.handle,table:i.symbolTable,lookup:null} @@ -2432,13 +2437,13 @@ e.scope().bindEvalScope(t)}})),ae.add(i.Op.SetNamedVariables,((e,{op1:r})=>{let for(let t=a.length-1;t>=0;t--){let e=(0,n.unwrap)(a[t]),r=i.table.symbols.indexOf(e),l=s.named.get(e,!0);-1!==r&&o.bindSymbol(r+1,l),i.lookup&&(i.lookup[e]=l)}})),ae.add(i.Op.SetBlocks,((e,{op1:r})=>{let i=(0,t.check)(e.fetchValue(r),Qe),{blocks:o}=(0,t.check)(e.stack.peek(),Be) for(const[t]of(0,n.enumerate)(o.names))Ae((0,n.unwrap)(o.symbolNames[t]),(0,n.unwrap)(o.names[t]),i,o,e)})),ae.add(i.Op.InvokeComponentLayout,((e,{op1:r})=>{let n=(0,t.check)(e.fetchValue(r),Qe) e.call(n.handle)})),ae.add(i.Op.DidRenderLayout,((e,{op1:r})=>{let n=(0,t.check)(e.fetchValue(r),Ge),{manager:o,state:s,capabilities:l}=n,u=e.elements().popBlock() -if(void 0!==e.env.debugRenderTree)if(ve(o)){o.getDebugCustomRenderTree(n.definition.state,s,ft).reverse().forEach((t=>{let{bucket:r}=t -e.env.debugRenderTree.didRender(r,u),e.updateWith(new De(r,u))}))}else e.env.debugRenderTree.didRender(n,u),e.updateWith(new De(n,u)) +if(void 0!==e.env.debugRenderTree)if(ve(o)){o.getDebugCustomRenderTree(n.definition.state,s,bt).reverse().forEach((t=>{let{bucket:r}=t +e.env.debugRenderTree.didRender(r,u),e.updateWith(new je(r,u))}))}else e.env.debugRenderTree.didRender(n,u),e.updateWith(new je(n,u)) if((0,a.managerHasCapability)(o,l,i.InternalComponentCapabilities.createInstance)){(0,t.check)(o,(0,t.CheckInterface)({didRenderLayout:t.CheckFunction})).didRenderLayout(s,u),e.env.didCreate(n),e.updateWith(new Ne(n,u))}})),ae.add(i.Op.CommitComponentTransaction,(e=>{e.commitCacheGroup()})) class Me{constructor(e,t,r){this.component=e,this.manager=t,this.dynamicScope=r}evaluate(e){let{component:t,manager:r,dynamicScope:n}=this r.update(t,n)}}class Ne{constructor(e,t){this.component=e,this.bounds=t}evaluate(e){let{component:t,bounds:r}=this,{manager:n,state:i}=t -n.didUpdateLayout(i,r),e.env.didUpdate(t)}}class je{constructor(e){this.bucket=e}evaluate(e){e.env.debugRenderTree?.update(this.bucket)}}class De{constructor(e,t){this.bucket=e,this.bounds=t}evaluate(e){e.env.debugRenderTree?.didRender(this.bucket,this.bounds)}}(0,t.CheckInterface)({[l.COMPUTE]:t.CheckFunction}) -const Ie=(0,t.wrap)((()=>(0,t.CheckOption)((0,t.CheckInstanceof)(Re)))) +n.didUpdateLayout(i,r),e.env.didUpdate(t)}}class De{constructor(e){this.bucket=e}evaluate(e){e.env.debugRenderTree?.update(this.bucket)}}class je{constructor(e,t){this.bucket=e,this.bounds=t}evaluate(e){e.env.debugRenderTree?.didRender(this.bucket,this.bounds)}}(0,t.CheckInterface)({[l.COMPUTE]:t.CheckFunction}) +const Ie=(0,t.wrap)((()=>(0,t.CheckOption)((0,t.CheckInstanceof)(Se)))) const Fe=new class{validate(e){return"object"==typeof e&&null!==e&&r.REFERENCE in e}expected(){return"Reference"}},Le=(0,t.CheckInterface)({next:t.CheckFunction,isEmpty:t.CheckFunction}),Be=(0,t.wrap)((()=>(0,t.CheckInstanceof)(et))),Ue=t.CheckFunction const He=new class{validate(e){return e===r.UNDEFINED_REFERENCE}expected(){return"undefined"}},$e=(0,t.CheckInterface)({positional:(0,t.wrap)((()=>(0,t.CheckArray)(Fe))),named:(0,t.wrap)((()=>(0,t.CheckDict)(Fe)))}),Ve=(0,t.wrap)((()=>(0,t.CheckInstanceof)(d))),ze=(0,t.CheckInterface)({getCapabilities:t.CheckFunction}),qe=t.CheckNumber,Ge=(0,t.CheckInterface)({definition:t.CheckUnknown,state:t.CheckUnknown,handle:t.CheckUnknown,table:t.CheckUnknown}),We=(0,t.CheckOr)(t.CheckObject,t.CheckFunction),Ye=(0,t.CheckInterface)({handle:t.CheckNumber,symbolTable:t.CheckProgramSymbolTable});(0,t.CheckInterface)({setAttribute:t.CheckFunction}) const Qe=(0,t.CheckInterface)({definition:t.CheckUnknown,state:t.CheckUnknown,handle:t.CheckHandle,table:t.CheckProgramSymbolTable}),Ke=(0,t.CheckInterface)({compile:t.CheckFunction,symbolTable:t.CheckBlockSymbolTable}),Je=(0,t.CheckInterface)({compile:t.CheckFunction,symbolTable:t.CheckProgramSymbolTable}),Xe=(0,t.CheckInterface)({0:Ke,1:Ve,2:t.CheckBlockSymbolTable}),Ze=(0,t.CheckInterface)({resolvedName:(0,t.CheckOption)(t.CheckString),handle:t.CheckNumber,state:(0,t.CheckOr)(t.CheckObject,t.CheckFunction),manager:ze,capabilities:qe,compilable:Je}) @@ -2452,8 +2457,8 @@ let c=this.blocks,p=r.length,d=u-3*p c.setup(e,d,p,r)}get base(){return this.blocks.base}get length(){return this.positional.length+this.named.length+3*this.blocks.length}at(e){return this.positional.at(e)}realloc(e){let{stack:t}=this if(e>0&&null!==t){let{positional:r,named:n}=this,o=r.base+e for(let e=r.length+n.length-1;e>=0;e--)t.copy(e+r.base,e+o) -r.base+=e,n.base+=e,t[g][i.$sp]+=e}}capture(){let e=0===this.positional.length?ht:this.positional.capture() -return{named:0===this.named.length?dt:this.named.capture(),positional:e}}clear(){let{stack:e,length:t}=this +r.base+=e,n.base+=e,t[g][i.$sp]+=e}}capture(){let e=0===this.positional.length?gt:this.positional.capture() +return{named:0===this.named.length?mt:this.named.capture(),positional:e}}clear(){let{stack:e,length:t}=this t>0&&null!==e&&e.pop(t)}}const tt=(0,n.emptyArray)() class rt{constructor(){this.base=0,this.length=0,this.stack=null,this._references=null}empty(e,t){this.stack=e,this.base=t,this.length=0,this._references=tt}setup(e,t,r){this.stack=e,this.base=t,this.length=r,this._references=0===r?tt:null}at(e){let{base:n,length:i,stack:o}=this return e<0||e>=i?r.UNDEFINED_REFERENCE:(0,t.check)(o.get(e,n),Fe)}capture(){return this.references}prepend(e){let t=e.length @@ -2483,16 +2488,18 @@ return null===a?null:[a,s,o]}capture(){return new at(this.names,this.values)}get return null===e&&(e=this._symbolNames=this.names.map(it)),e}}class at{constructor(e,t){this.length=void 0,this.names=e,this.values=t,this.length=e.length}has(e){return-1!==this.names.indexOf(e)}get(e){let t=this.names.indexOf(e) return-1===t?null:[this.values[3*t+2],this.values[3*t+1],this.values[3*t]]}}function lt(e,t){return{named:e,positional:t}}function ut(e){let t=(0,n.dict)() for(const[n,i]of Object.entries(e))t[n]=(0,r.valueForRef)(i) -return t}function ct(e){return e.map(r.valueForRef)}function pt(e){return{named:ut(e.named),positional:ct(e.positional)}}const dt=e.EMPTY_NAMED=Object.freeze(Object.create(null)),ht=e.EMPTY_POSITIONAL=tt,ft=e.EMPTY_ARGS=lt(dt,ht) -function mt(e){return"string"==typeof e?e:"function"!=typeof e.toString?"":String(e)}function gt(e,t){let r,i=(0,a.getInternalHelperManager)(e,!0) -return null===i?r=null:(r="function"==typeof i?i:i.getHelper(e),(0,n.assert)(i,"BUG: expected manager or helper")),r}function bt(e){return(0,n.assert)(Array.isArray(e)||e===r.UNDEFINED_REFERENCE,"a reference other than UNDEFINED_REFERENCE is illegal here"),e===r.UNDEFINED_REFERENCE}ae.add(i.Op.Curry,((e,{op1:o,op2:s})=>{let a=e.stack,l=(0,t.check)(a.pop(),Fe),u=(0,t.check)(a.pop(),$e),c=e.getOwner() +return t}function ct(e){return e.map(r.valueForRef)}const pt=Symbol("ARGUMENT_ERROR") +function dt(e){return null!==e&&"object"==typeof e&&e[pt]}function ht(e){return{[pt]:!0,error:e}}function ft(e){return{named:function(e){let t=(0,n.dict)() +for(const[n,o]of Object.entries(e))try{t[n]=(0,r.valueForRef)(o)}catch(i){t[n]=ht(i)}return t}(e.named),positional:function(e){return e.map((e=>{try{return(0,r.valueForRef)(e)}catch(t){return ht(t)}}))}(e.positional)}}const mt=e.EMPTY_NAMED=Object.freeze(Object.create(null)),gt=e.EMPTY_POSITIONAL=tt,bt=e.EMPTY_ARGS=lt(mt,gt) +function yt(e){return"string"==typeof e?e:"function"!=typeof e.toString?"":String(e)}function vt(e,t){let r,i=(0,a.getInternalHelperManager)(e,!0) +return null===i?r=null:(r="function"==typeof i?i:i.getHelper(e),(0,n.assert)(i,"BUG: expected manager or helper")),r}function _t(e){return(0,n.assert)(Array.isArray(e)||e===r.UNDEFINED_REFERENCE,"a reference other than UNDEFINED_REFERENCE is illegal here"),e===r.UNDEFINED_REFERENCE}ae.add(i.Op.Curry,((e,{op1:o,op2:s})=>{let a=e.stack,l=(0,t.check)(a.pop(),Fe),u=(0,t.check)(a.pop(),$e),c=e.getOwner() e.runtime.resolver e.loadValue(i.$v0,function(e,t,o,s,a,l){let u,c return(0,r.createComputeRef)((()=>{let a=(0,r.valueForRef)(t) return a===u||(c=me(a,e)?s?ye(e,a,o,s):s:e===i.CurriedTypes.Component&&"string"==typeof a&&a||(0,n.isObject)(a)?ye(e,a,o,s):null,u=a),c}))}(o,l,c,u))})),ae.add(i.Op.DynamicHelper,(e=>{let s,a=e.stack,l=(0,t.check)(a.pop(),Fe),u=(0,t.check)(a.pop(),Be).capture(),c=e.getOwner(),p=(0,r.createComputeRef)((()=>{void 0!==s&&(0,o.destroy)(s) let e=(0,r.valueForRef)(l) -if(me(e,i.CurriedTypes.Helper)){let{definition:t,owner:r,positional:i,named:a}=be(e),c=gt(t,l) -void 0!==a&&(u.named=(0,n.assign)({},...a,u.named)),void 0!==i&&(u.positional=i.concat(u.positional)),s=c(u,r),(0,o.associateDestroyableChild)(p,s)}else if((0,n.isObject)(e)){let t=gt(e,l) +if(me(e,i.CurriedTypes.Helper)){let{definition:t,owner:r,positional:i,named:a}=be(e),c=vt(t,l) +void 0!==a&&(u.named=(0,n.assign)({},...a,u.named)),void 0!==i&&(u.positional=i.concat(u.positional)),s=c(u,r),(0,o.associateDestroyableChild)(p,s)}else if((0,n.isObject)(e)){let t=vt(e,l) s=t(u,c),(0,o._hasDestroyableChildren)(s)&&(0,o.associateDestroyableChild)(p,s)}else s=r.UNDEFINED_REFERENCE})),d=(0,r.createComputeRef)((()=>((0,r.valueForRef)(p),(0,r.valueForRef)(s)))) e.associateDestroyable(p),e.loadValue(i.$v0,d)})),ae.add(i.Op.Helper,((e,{op1:r})=>{let n=e.stack,s=(0,t.check)(e[y].getValue(r),Ue)((0,t.check)(n.pop(),Be).capture(),e.getOwner(),e.dynamicScope());(0,o._hasDestroyableChildren)(s)&&e.associateDestroyable(s),e.loadValue(i.$v0,s)})),ae.add(i.Op.GetVariable,((e,{op1:t})=>{let r=e.referenceForSymbol(t) e.stack.push(r)})),ae.add(i.Op.SetVariable,((e,{op1:r})=>{let n=(0,t.check)(e.stack.pop(),Fe) @@ -2501,43 +2508,43 @@ e.scope().bindBlock(r,[n,i,o])})),ae.add(i.Op.ResolveMaybeLocal,((e,{op1:t})=>{l void 0===i&&(i=(0,r.childRefFor)(e.getSelf(),n)),e.stack.push(i)})),ae.add(i.Op.RootScope,((e,{op1:t})=>{e.pushRootScope(t,e.getOwner())})),ae.add(i.Op.GetProperty,((e,{op1:n})=>{let i=e[y].getValue(n),o=(0,t.check)(e.stack.pop(),Fe) e.stack.push((0,r.childRefFor)(o,i))})),ae.add(i.Op.GetBlock,((e,{op1:t})=>{let{stack:r}=e,n=e.scope().getBlock(t) r.push(n)})),ae.add(i.Op.SpreadBlock,(e=>{let{stack:r}=e,n=(0,t.check)(r.pop(),(0,t.CheckOption)((0,t.CheckOr)(Xe,He))) -if(n&&!bt(n)){let[e,t,i]=n +if(n&&!_t(n)){let[e,t,i]=n r.push(i),r.push(t),r.push(e)}else r.push(null),r.push(null),r.push(null)})),ae.add(i.Op.HasBlock,(e=>{let{stack:n}=e,i=(0,t.check)(n.pop(),(0,t.CheckOption)((0,t.CheckOr)(Xe,He))) -i&&!bt(i)?n.push(r.TRUE_REFERENCE):n.push(r.FALSE_REFERENCE)})),ae.add(i.Op.HasBlockParams,(e=>{let n=e.stack.pop(),i=e.stack.pop();(0,t.check)(n,(0,t.CheckMaybe)((0,t.CheckOr)(t.CheckHandle,Ke))),(0,t.check)(i,(0,t.CheckMaybe)(Ve)) +i&&!_t(i)?n.push(r.TRUE_REFERENCE):n.push(r.FALSE_REFERENCE)})),ae.add(i.Op.HasBlockParams,(e=>{let n=e.stack.pop(),i=e.stack.pop();(0,t.check)(n,(0,t.CheckMaybe)((0,t.CheckOr)(t.CheckHandle,Ke))),(0,t.check)(i,(0,t.CheckMaybe)(Ve)) let o=(0,t.check)(e.stack.pop(),(0,t.CheckMaybe)(t.CheckBlockSymbolTable)),s=o&&o.parameters.length e.stack.push(s?r.TRUE_REFERENCE:r.FALSE_REFERENCE)})),ae.add(i.Op.Concat,((e,{op1:n})=>{let i=new Array(n) for(let r=n;r>0;r--){i[r-1]=(0,t.check)(e.stack.pop(),Fe)}var o e.stack.push((o=i,(0,r.createComputeRef)((()=>{const e=[] for(const t of o){const n=(0,r.valueForRef)(t) -null!=n&&e.push(mt(n))}return e.length>0?e.join(""):null}))))})),ae.add(i.Op.IfInline,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),o=(0,t.check)(e.stack.pop(),Fe) +null!=n&&e.push(yt(n))}return e.length>0?e.join(""):null}))))})),ae.add(i.Op.IfInline,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),o=(0,t.check)(e.stack.pop(),Fe) e.stack.push((0,r.createComputeRef)((()=>!0===(0,s.toBool)((0,r.valueForRef)(n))?(0,r.valueForRef)(i):(0,r.valueForRef)(o))))})),ae.add(i.Op.Not,(e=>{let n=(0,t.check)(e.stack.pop(),Fe) e.stack.push((0,r.createComputeRef)((()=>!(0,s.toBool)((0,r.valueForRef)(n)))))})),ae.add(i.Op.GetDynamicVar,(e=>{let n=e.dynamicScope(),i=e.stack,o=(0,t.check)(i.pop(),Fe) i.push((0,r.createComputeRef)((()=>{let e=String((0,r.valueForRef)(o)) return(0,r.valueForRef)(n.get(e))})))})),ae.add(i.Op.Log,(e=>{let{positional:n}=(0,t.check)(e.stack.pop(),Be).capture() e.loadValue(i.$v0,(0,r.createComputeRef)((()=>{console.log(...ct(n))})))})) -class yt{constructor(e,t,r){this.node=e,this.reference=t,this.lastValue=r}evaluate(){let e,t=(0,r.valueForRef)(this.reference),{lastValue:n}=this -if(t!==n&&(e=k(t)?"":R(t)?t:String(t),e!==n)){this.node.nodeValue=this.lastValue=e}}}function vt(e){return function(e){return R(e)||k(e)||"boolean"==typeof e||"number"==typeof e}(e)?i.ContentType.String:me(e,i.CurriedType.Component)||(0,a.hasInternalComponentManager)(e)?i.ContentType.Component:me(e,i.CurriedType.Helper)||(0,a.hasInternalHelperManager)(e)?i.ContentType.Helper:T(e)?i.ContentType.SafeString:function(e){return S(e)&&11===e.nodeType}(e)?i.ContentType.Fragment:S(e)?i.ContentType.Node:i.ContentType.String}function _t(e){return(0,n.isObject)(e)?me(e,i.CurriedType.Component)||(0,a.hasInternalComponentManager)(e)?i.ContentType.Component:i.ContentType.Helper:i.ContentType.String}function Ot(e,t){console.info("Use `context`, and `get()` to debug this template."),t("this")}ae.add(i.Op.ContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) -e.stack.push(vt((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,vt))})),ae.add(i.Op.DynamicContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) -e.stack.push(_t((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,_t))})),ae.add(i.Op.AppendHTML,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=k(i)?"":String(i) +class Ot{constructor(e,t,r){this.node=e,this.reference=t,this.lastValue=r}evaluate(){let e,t=(0,r.valueForRef)(this.reference),{lastValue:n}=this +if(t!==n&&(e=k(t)?"":S(t)?t:String(t),e!==n)){this.node.nodeValue=this.lastValue=e}}}function wt(e){return function(e){return S(e)||k(e)||"boolean"==typeof e||"number"==typeof e}(e)?i.ContentType.String:me(e,i.CurriedType.Component)||(0,a.hasInternalComponentManager)(e)?i.ContentType.Component:me(e,i.CurriedType.Helper)||(0,a.hasInternalHelperManager)(e)?i.ContentType.Helper:T(e)?i.ContentType.SafeString:function(e){return R(e)&&11===e.nodeType}(e)?i.ContentType.Fragment:R(e)?i.ContentType.Node:i.ContentType.String}function Et(e){return(0,n.isObject)(e)?me(e,i.CurriedType.Component)||(0,a.hasInternalComponentManager)(e)?i.ContentType.Component:i.ContentType.Helper:i.ContentType.String}function Ct(e,t){console.info("Use `context`, and `get()` to debug this template."),t("this")}ae.add(i.Op.ContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) +e.stack.push(wt((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,wt))})),ae.add(i.Op.DynamicContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) +e.stack.push(Et((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,Et))})),ae.add(i.Op.AppendHTML,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=k(i)?"":String(i) e.elements().appendDynamicHTML(o)})),ae.add(i.Op.AppendSafeHTML,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckSafeString).toHTML(),o=k(i)?"":(0,t.check)(i,t.CheckString) -e.elements().appendDynamicHTML(o)})),ae.add(i.Op.AppendText,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=k(i)?"":String(i),s=e.elements().appendDynamicText(o);(0,r.isConstRef)(n)||e.updateWith(new yt(s,n,o))})),ae.add(i.Op.AppendDocumentFragment,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckDocumentFragment) +e.elements().appendDynamicHTML(o)})),ae.add(i.Op.AppendText,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=k(i)?"":String(i),s=e.elements().appendDynamicText(o);(0,r.isConstRef)(n)||e.updateWith(new Ot(s,n,o))})),ae.add(i.Op.AppendDocumentFragment,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckDocumentFragment) e.elements().appendDynamicFragment(i)})),ae.add(i.Op.AppendNode,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckNode) e.elements().appendDynamicNode(i)})) -let wt=Ot -class Ct{constructor(e,t,r){this.locals=(0,n.dict)(),this.scope=e +let kt=Ct +class Tt{constructor(e,t,r){this.locals=(0,n.dict)(),this.scope=e for(const i of r){let r=(0,n.unwrap)(t[i-1]),o=e.getSymbol(i) this.locals[r]=o}}get(e){let t,{scope:i,locals:o}=this,s=e.split("."),[a,...l]=e.split("."),u=i.getEvalScope() -return"this"===a?t=i.getSelf():o[a]?t=(0,n.unwrap)(o[a]):0===a.indexOf("@")&&u[a]?t=u[a]:(t=this.scope.getSelf(),l=s),l.reduce(((e,t)=>(0,r.childRefFor)(e,t)),t)}}ae.add(i.Op.Debugger,((e,{op1:t,op2:i})=>{let o=e[y].getArray(t),s=e[y].getArray((0,n.decodeHandle)(i)),a=new Ct(e.scope(),o,s) -wt((0,r.valueForRef)(e.getSelf()),(e=>(0,r.valueForRef)(a.get(e))))})),ae.add(i.Op.EnterList,((e,{op1:n,op2:i})=>{let o=e.stack,s=(0,t.check)(o.pop(),Fe),a=(0,t.check)(o.pop(),Fe),l=(0,r.valueForRef)(a),u=null===l?"@identity":String(l),c=(0,r.createIteratorRef)(s,u),p=(0,r.valueForRef)(c) +return"this"===a?t=i.getSelf():o[a]?t=(0,n.unwrap)(o[a]):0===a.indexOf("@")&&u[a]?t=u[a]:(t=this.scope.getSelf(),l=s),l.reduce(((e,t)=>(0,r.childRefFor)(e,t)),t)}}ae.add(i.Op.Debugger,((e,{op1:t,op2:i})=>{let o=e[y].getArray(t),s=e[y].getArray((0,n.decodeHandle)(i)),a=new Tt(e.scope(),o,s) +kt((0,r.valueForRef)(e.getSelf()),(e=>(0,r.valueForRef)(a.get(e))))})),ae.add(i.Op.EnterList,((e,{op1:n,op2:i})=>{let o=e.stack,s=(0,t.check)(o.pop(),Fe),a=(0,t.check)(o.pop(),Fe),l=(0,r.valueForRef)(a),u=null===l?"@identity":String(l),c=(0,r.createIteratorRef)(s,u),p=(0,r.valueForRef)(c) e.updateWith(new Oe(c,(e=>e.isEmpty()))),!0===p.isEmpty()?e.goto(i+1):(e.enterList(c,n),e.stack.push(p))})),ae.add(i.Op.ExitList,(e=>{e.exitList()})),ae.add(i.Op.Iterate,((e,{op1:r})=>{let n=e.stack,i=(0,t.check)(n.peek(),Le).next() null!==i?e.registerItem(e.enterItem(i)):e.goto(r)})) -const Et={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class kt{getCapabilities(){return Et}getDebugName({name:e}){return e}getSelf(){return r.NULL_REFERENCE}getDestroyable(){return null}}e.TemplateOnlyComponentManager=kt -const Tt=e.TEMPLATE_ONLY_COMPONENT_MANAGER=new kt -class St{constructor(e="@glimmer/component/template-only",t="(unknown template-only component)"){this.moduleName=e,this.name=t}toString(){return this.moduleName}}e.TemplateOnlyComponent=St,(0,a.setInternalComponentManager)(Tt,St.prototype) -const Rt={foreignObject:1,desc:1,title:1},Pt=Object.create(null) -class xt{constructor(e){this.document=e,this.setupUselessElement()}setupUselessElement(){this.uselessElement=this.document.createElement("div")}createElement(e,t){let r,i -if(t?(r=t.namespaceURI===n.NS_SVG||"svg"===e,i=!!Rt[t.tagName]):(r="svg"===e,i=!1),r&&!i){if(Pt[e])throw new Error(`Cannot create a ${e} inside an SVG context`) +const Rt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +class St{getCapabilities(){return Rt}getDebugName({name:e}){return e}getSelf(){return r.NULL_REFERENCE}getDestroyable(){return null}}e.TemplateOnlyComponentManager=St +const Pt=e.TEMPLATE_ONLY_COMPONENT_MANAGER=new St +class xt{constructor(e="@glimmer/component/template-only",t="(unknown template-only component)"){this.moduleName=e,this.name=t}toString(){return this.moduleName}}e.TemplateOnlyComponent=xt,(0,a.setInternalComponentManager)(Pt,xt.prototype) +const At={foreignObject:1,desc:1,title:1},Mt=Object.create(null) +class Nt{constructor(e){this.document=e,this.setupUselessElement()}setupUselessElement(){this.uselessElement=this.document.createElement("div")}createElement(e,t){let r,i +if(t?(r=t.namespaceURI===n.NS_SVG||"svg"===e,i=!!At[t.tagName]):(r="svg"===e,i=!1),r&&!i){if(Mt[e])throw new Error(`Cannot create a ${e} inside an SVG context`) return this.document.createElementNS(n.NS_SVG,e)}return this.document.createElement(e)}insertBefore(e,t,r){e.insertBefore(t,r)}insertHTMLBefore(e,t,r){if(""===r){const r=this.createComment("") return e.insertBefore(r,t),new O(e,r,r)}const i=t?t.previousSibling:e.lastChild let o @@ -2545,7 +2552,7 @@ if(null===t)e.insertAdjacentHTML(n.INSERT_BEFORE_END,r),o=(0,n.expect)(e.lastChi else if(t instanceof HTMLElement)t.insertAdjacentHTML("beforebegin",r),o=(0,n.expect)(t.previousSibling,"bug in insertAdjacentHTML?") else{const{uselessElement:i}=this e.insertBefore(i,t),i.insertAdjacentHTML(n.INSERT_BEFORE_BEGIN,r),o=(0,n.expect)(i.previousSibling,"bug in insertAdjacentHTML?"),e.removeChild(i)}const s=(0,n.expect)(i?i.nextSibling:e.firstChild,"bug in insertAdjacentHTML?") -return new O(e,s,o)}createTextNode(e){return this.document.createTextNode(e)}createComment(e){return this.document.createComment(e)}}function At(e,t,r){if(!e)return t +return new O(e,s,o)}createTextNode(e){return this.document.createTextNode(e)}createComment(e){return this.document.createComment(e)}}function Dt(e,t,r){if(!e)return t if(!function(e,t){const r=e.createElementNS(t,"svg") try{r.insertAdjacentHTML(n.INSERT_BEFORE_END,"")}catch(i){}finally{return 1!==r.childNodes.length||(0,n.castToBrowser)((0,n.unwrap)(r.firstChild),"SVG").namespaceURI!==n.NS_SVG}}(e,r))return t const i=e.createElement("div") @@ -2553,75 +2560,70 @@ return class extends t{insertHTMLBefore(e,t,o){return""===o||e.namespaceURI!==r? if((0,n.assert)(""!==r,"html cannot be empty"),"FOREIGNOBJECT"===e.tagName.toUpperCase()){const e=""+r+"";(0,n.clearElement)(t),t.insertAdjacentHTML(n.INSERT_AFTER_BEGIN,e),o=t.firstChild.firstChild}else{const e=""+r+"";(0,n.clearElement)(t),t.insertAdjacentHTML(n.INSERT_AFTER_BEGIN,e),o=t.firstChild}return function(e,t,r){const i=(0,n.expect)(e.firstChild,"source is empty") let o=i,s=i for(;s;){const e=s.nextSibling -t.insertBefore(s,r),o=s,s=e}return new O(t,i,o)}(o,e,i)}(e,i,o,t)}}}function Mt(e,t){return e&&function(e){const t=e.createElement("div") +t.insertBefore(s,r),o=s,s=e}return new O(t,i,o)}(o,e,i)}(e,i,o,t)}}}function jt(e,t){return e&&function(e){const t=e.createElement("div") if(t.appendChild(e.createTextNode("first")),t.insertAdjacentHTML(n.INSERT_BEFORE_END,"second"),2===t.childNodes.length)return!1 return!0}(e)?class extends t{constructor(e){super(e),this.uselessComment=void 0,this.uselessComment=e.createComment("")}insertHTMLBefore(e,t,r){if(""===r)return super.insertHTMLBefore(e,t,r) let n=!1 const i=t?t.previousSibling:e.lastChild i&&i instanceof Text&&(n=!0,e.insertBefore(this.uselessComment,t)) const o=super.insertHTMLBefore(e,t,r) -return n&&e.removeChild(this.uselessComment),o}}:t}const Nt="undefined"==typeof document?null:(0,n.castToSimple)(document) -let jt=class extends xt{createElementNS(e,t){return this.document.createElementNS(e,t)}setAttribute(e,t,r,n=null){n?e.setAttributeNS(n,t,r):e.setAttribute(t,r)}} -jt=Mt(Nt,jt),jt=At(Nt,jt,n.NS_SVG) -const Dt=e.DOMTreeConstruction=jt;["b","big","blockquote","body","br","center","code","dd","div","dl","dt","em","embed","h1","h2","h3","h4","h5","h6","head","hr","i","img","li","listing","main","meta","nobr","ol","p","pre","ruby","s","small","span","strong","strike","sub","sup","table","tt","u","ul","var"].forEach((e=>Pt[e]=1)) -const It=/[\t\n\v\f\r \xA0\u{1680}\u{180e}\u{2000}-\u{200a}\u{2028}\u{2029}\u{202f}\u{205f}\u{3000}\u{feff}]/u,Ft="undefined"==typeof document?null:(0,n.castToSimple)(document) -class Lt extends xt{constructor(e){super(e),this.namespace=void 0,this.document=e,this.namespace=null}setAttribute(e,t,r){e.setAttribute(t,r)}removeAttribute(e,t){e.removeAttribute(t)}insertAfter(e,t,r){this.insertBefore(e,t,r.nextSibling)}}e.IDOMChanges=Lt -let Bt=Lt -Bt=Mt(Ft,Bt),Bt=At(Ft,Bt,n.NS_SVG) -e.DOMChanges=Bt -let Ut=0 -class Ht{constructor(e){this.id=Ut++,this.value=void 0,this.value=e}get(){return this.value}release(){this.value=null}toString(){let e=`Ref ${this.id}` +return n&&e.removeChild(this.uselessComment),o}}:t}const It="undefined"==typeof document?null:(0,n.castToSimple)(document) +let Ft=class extends Nt{createElementNS(e,t){return this.document.createElementNS(e,t)}setAttribute(e,t,r,n=null){n?e.setAttributeNS(n,t,r):e.setAttribute(t,r)}} +Ft=jt(It,Ft),Ft=Dt(It,Ft,n.NS_SVG) +const Lt=e.DOMTreeConstruction=Ft;["b","big","blockquote","body","br","center","code","dd","div","dl","dt","em","embed","h1","h2","h3","h4","h5","h6","head","hr","i","img","li","listing","main","meta","nobr","ol","p","pre","ruby","s","small","span","strong","strike","sub","sup","table","tt","u","ul","var"].forEach((e=>Mt[e]=1)) +const Bt=/[\t\n\v\f\r \xA0\u{1680}\u{180e}\u{2000}-\u{200a}\u{2028}\u{2029}\u{202f}\u{205f}\u{3000}\u{feff}]/u,Ut="undefined"==typeof document?null:(0,n.castToSimple)(document) +class Ht extends Nt{constructor(e){super(e),this.namespace=void 0,this.document=e,this.namespace=null}setAttribute(e,t,r){e.setAttribute(t,r)}removeAttribute(e,t){e.removeAttribute(t)}insertAfter(e,t,r){this.insertBefore(e,t,r.nextSibling)}}e.IDOMChanges=Ht +let $t=Ht +$t=jt(Ut,$t),$t=Dt(Ut,$t,n.NS_SVG) +e.DOMChanges=$t +let Vt=0 +class zt{constructor(e){this.id=Vt++,this.value=void 0,this.value=e}get(){return this.value}release(){this.value=null}toString(){let e=`Ref ${this.id}` if(null===this.value)return`${e} (released)` -try{return`${e}: ${this.value}`}catch{return e}}}class $t{constructor(){this.stack=new n.Stack,this.refs=new WeakMap,this.roots=new Set,this.nodes=new WeakMap}begin(){this.reset()}create(e,t){let r=(0,n.assign)({},t,{bounds:null,refs:new Set}) +try{return`${e}: ${this.value}`}catch{return e}}}class qt{constructor(){this.stack=new n.Stack,this.refs=new WeakMap,this.roots=new Set,this.nodes=new WeakMap}begin(){this.reset()}create(e,t){let r=(0,n.assign)({},t,{bounds:null,refs:new Set}) this.nodes.set(e,r),this.appendChild(r,e),this.enter(e)}update(e){this.enter(e)}didRender(e,t){this.nodeFor(e).bounds=t,this.exit()}willDestroy(e){(0,n.expect)(this.refs.get(e),"BUG: missing ref").release()}commit(){this.reset()}capture(){return this.captureRefs(this.roots)}reset(){if(0!==this.stack.size){let e=(0,n.expect)(this.stack.toArray()[0],"expected root state when resetting render tree"),t=this.refs.get(e) -for(void 0!==t&&this.roots.delete(t);!this.stack.isEmpty();)this.stack.pop()}}enter(e){this.stack.push(e)}exit(){this.stack.pop()}nodeFor(e){return(0,n.expect)(this.nodes.get(e),"BUG: missing node")}appendChild(e,t){let r=this.stack.current,n=new Ht(t) +for(void 0!==t&&this.roots.delete(t);!this.stack.isEmpty();)this.stack.pop()}}enter(e){this.stack.push(e)}exit(){this.stack.pop()}nodeFor(e){return(0,n.expect)(this.nodes.get(e),"BUG: missing node")}appendChild(e,t){let r=this.stack.current,n=new zt(t) if(this.refs.set(t,n),r){let t=this.nodeFor(r) t.refs.add(n),e.parent=t}else this.roots.add(n)}captureRefs(e){let t=[] return e.forEach((r=>{let n=r.get() n?t.push(this.captureNode(`render-node:${r.id}`,n)):e.delete(r)})),t}captureNode(e,t){let r=this.nodeFor(t),{type:n,name:i,args:o,instance:s,refs:a}=r,l=this.captureTemplate(r),u=this.captureBounds(r),c=this.captureRefs(a) -return{id:e,type:n,name:i,args:pt(o),instance:s,template:l,bounds:u,children:c}}captureTemplate({template:e}){return e||null}captureBounds(e){let t=(0,n.expect)(e.bounds,"BUG: missing bounds") -return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}}const Vt=Symbol("TRANSACTION") -class zt{constructor(){this.scheduledInstallModifiers=[],this.scheduledUpdateModifiers=[],this.createdComponents=[],this.updatedComponents=[]}didCreate(e){this.createdComponents.push(e)}didUpdate(e){this.updatedComponents.push(e)}scheduleInstallModifier(e){this.scheduledInstallModifiers.push(e)}scheduleUpdateModifier(e){this.scheduledUpdateModifiers.push(e)}commit(){let{createdComponents:e,updatedComponents:t}=this +return{id:e,type:n,name:i,args:ft(o),instance:s,template:l,bounds:u,children:c}}captureTemplate({template:e}){return e||null}captureBounds(e){let t=(0,n.expect)(e.bounds,"BUG: missing bounds") +return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}}const Gt=Symbol("TRANSACTION") +class Wt{constructor(){this.scheduledInstallModifiers=[],this.scheduledUpdateModifiers=[],this.createdComponents=[],this.updatedComponents=[]}didCreate(e){this.createdComponents.push(e)}didUpdate(e){this.updatedComponents.push(e)}scheduleInstallModifier(e){this.scheduledInstallModifiers.push(e)}scheduleUpdateModifier(e){this.scheduledUpdateModifiers.push(e)}commit(){let{createdComponents:e,updatedComponents:t}=this for(const{manager:i,state:o}of e)i.didCreate(o) for(const{manager:i,state:o}of t)i.didUpdate(o) let{scheduledInstallModifiers:r,scheduledUpdateModifiers:n}=this for(const{manager:i,state:o,definition:s}of r){let e=i.getTag(o) if(null!==e){let t=(0,l.track)((()=>i.install(o)),!1);(0,l.updateTag)(e,t)}else i.install(o)}for(const{manager:i,state:o,definition:s}of n){let e=i.getTag(o) -if(null!==e){let t=(0,l.track)((()=>i.update(o)),!1);(0,l.updateTag)(e,t)}else i.update(o)}}}class qt{constructor(e,t){this[Vt]=null,this.updateOperations=void 0,this.isInteractive=void 0,this.debugRenderTree=void 0,this.delegate=t,this.isInteractive=t.isInteractive,this.debugRenderTree=this.delegate.enableDebugTooling?new $t:void 0,e.appendOperations?(this.appendOperations=e.appendOperations,this.updateOperations=e.updateOperations):e.document&&(this.appendOperations=new Dt(e.document),this.updateOperations=new Lt(e.document))}getAppendOperations(){return this.appendOperations}getDOM(){return(0,n.expect)(this.updateOperations,"Attempted to get DOM updateOperations, but they were not provided by the environment. You may be attempting to rerender in an environment which does not support rerendering, such as SSR.")}begin(){(0,n.assert)(!this[Vt],"A glimmer transaction was begun, but one already exists. You may have a nested transaction, possibly caused by an earlier runtime exception while rendering. Please check your console for the stack trace of any prior exceptions."),this.debugRenderTree?.begin(),this[Vt]=new zt}get transaction(){return(0,n.expect)(this[Vt],"must be in a transaction")}didCreate(e){this.transaction.didCreate(e)}didUpdate(e){this.transaction.didUpdate(e)}scheduleInstallModifier(e){this.isInteractive&&this.transaction.scheduleInstallModifier(e)}scheduleUpdateModifier(e){this.isInteractive&&this.transaction.scheduleUpdateModifier(e)}commit(){let e=this.transaction -this[Vt]=null,e.commit(),this.debugRenderTree?.commit(),this.delegate.onTransactionCommit()}}function Gt(e,t){if(e[Vt])t() +if(null!==e){let t=(0,l.track)((()=>i.update(o)),!1);(0,l.updateTag)(e,t)}else i.update(o)}}}class Yt{constructor(e,t){this[Gt]=null,this.updateOperations=void 0,this.isInteractive=void 0,this.isArgumentCaptureError=void 0,this.debugRenderTree=void 0,this.delegate=t,this.isInteractive=t.isInteractive,this.debugRenderTree=this.delegate.enableDebugTooling?new qt:void 0,this.isArgumentCaptureError=this.delegate.enableDebugTooling?dt:void 0,e.appendOperations?(this.appendOperations=e.appendOperations,this.updateOperations=e.updateOperations):e.document&&(this.appendOperations=new Lt(e.document),this.updateOperations=new Ht(e.document))}getAppendOperations(){return this.appendOperations}getDOM(){return(0,n.expect)(this.updateOperations,"Attempted to get DOM updateOperations, but they were not provided by the environment. You may be attempting to rerender in an environment which does not support rerendering, such as SSR.")}begin(){(0,n.assert)(!this[Gt],"A glimmer transaction was begun, but one already exists. You may have a nested transaction, possibly caused by an earlier runtime exception while rendering. Please check your console for the stack trace of any prior exceptions."),this.debugRenderTree?.begin(),this[Gt]=new Wt}get transaction(){return(0,n.expect)(this[Gt],"must be in a transaction")}didCreate(e){this.transaction.didCreate(e)}didUpdate(e){this.transaction.didUpdate(e)}scheduleInstallModifier(e){this.isInteractive&&this.transaction.scheduleInstallModifier(e)}scheduleUpdateModifier(e){this.isInteractive&&this.transaction.scheduleUpdateModifier(e)}commit(){let e=this.transaction +this[Gt]=null,e.commit(),this.debugRenderTree?.commit(),this.delegate.onTransactionCommit()}}function Qt(e,t){if(e[Gt])t() else{e.begin() -try{t()}finally{e.commit()}}}function Wt(e){return(0,a.setInternalHelperManager)(e,{})}e.EnvironmentImpl=qt -e.array=Wt((({positional:e})=>(0,r.createComputeRef)((()=>ct(e)),null,"array"))) -const Yt=e=>(e=>null==e||"function"!=typeof e.toString)(e)?"":String(e),Qt=(e.concat=Wt((({positional:e})=>(0,r.createComputeRef)((()=>ct(e).map(Yt).join("")),null,"concat"))),(0,n.buildUntouchableThis)("`fn` helper")) -e.fn=Wt((({positional:e})=>{let n=(0,t.check)(e[0],Kt) +try{t()}finally{e.commit()}}}function Kt(e){return(0,a.setInternalHelperManager)(e,{})}e.EnvironmentImpl=Yt +e.array=Kt((({positional:e})=>(0,r.createComputeRef)((()=>ct(e)),null,"array"))) +const Jt=e=>(e=>null==e||"function"!=typeof e.toString)(e)?"":String(e),Xt=(e.concat=Kt((({positional:e})=>(0,r.createComputeRef)((()=>ct(e).map(Jt).join("")),null,"concat"))),(0,n.buildUntouchableThis)("`fn` helper")) +e.fn=Kt((({positional:e})=>{let n=(0,t.check)(e[0],Zt) return(0,r.createComputeRef)((()=>(...t)=>{let[i,...o]=ct(e) if((0,r.isInvokableRef)(n)){let e=o.length>0?o[0]:t[0] -return(0,r.updateRef)(n,e)}return i.call(Qt,...o,...t)}),null,"fn")})) -function Kt(e){if(!e||!(0,r.isInvokableRef)(e)&&"function"!=typeof(0,r.valueForRef)(e))throw new Error(`You must pass a function as the \`fn\` helper's first argument, you passed ${e?(0,r.valueForRef)(e):e}. While rendering:\n\n${e?.debugLabel}`)}e.get=Wt((({positional:e})=>{let t=e[0]??r.UNDEFINED_REFERENCE,i=e[1]??r.UNDEFINED_REFERENCE +return(0,r.updateRef)(n,e)}return i.call(Xt,...o,...t)}),null,"fn")})) +function Zt(e){if(!e||!(0,r.isInvokableRef)(e)&&"function"!=typeof(0,r.valueForRef)(e))throw new Error(`You must pass a function as the \`fn\` helper's first argument, you passed ${e?(0,r.valueForRef)(e):e}. While rendering:\n\n${e?.debugLabel}`)}e.get=Kt((({positional:e})=>{let t=e[0]??r.UNDEFINED_REFERENCE,i=e[1]??r.UNDEFINED_REFERENCE return(0,r.createComputeRef)((()=>{let e=(0,r.valueForRef)(t) if((0,n.isDict)(e))return(0,s.getPath)(e,String((0,r.valueForRef)(i)))}),(e=>{let o=(0,r.valueForRef)(t) -if((0,n.isDict)(o))return(0,s.setPath)(o,String((0,r.valueForRef)(i)),e)}),"get")})) -e.hash=Wt((({named:e})=>{let t=(0,r.createComputeRef)((()=>{let t=ut(e) -return t}),null,"hash"),n=new Map +if((0,n.isDict)(o))return(0,s.setPath)(o,String((0,r.valueForRef)(i)),e)}),"get")})),e.hash=Kt((({named:e})=>{let t=(0,r.createComputeRef)((()=>ut(e)),null,"hash"),n=new Map for(let r in e)n.set(r,e[r]) return t.children=n,t})) -function Jt(e){return(0,l.getValue)(e.argsCache)}class Xt{constructor(e,t=(()=>ft)){this.argsCache=void 0 +function er(e){return(0,l.getValue)(e.argsCache)}class tr{constructor(e,t=(()=>bt)){this.argsCache=void 0 let r=(0,l.createCache)((()=>t(e))) -this.argsCache=r}get named(){return Jt(this).named||dt}get positional(){return Jt(this).positional||ht}}(0,n.buildUntouchableThis)("`on` modifier") -class Zt{constructor(e,t){this.tag=(0,l.createUpdatableTag)(),this.element=void 0,this.args=void 0,this.once=void 0,this.passive=void 0,this.capture=void 0,this.options=void 0,this.shouldUpdate=!0,this.element=e,this.args=t}updateFromArgs(){let{args:e}=this,{once:i,passive:o,capture:s}=ut(e.named) -i!==this.once&&(this.once=i,this.shouldUpdate=!0),o!==this.passive&&(this.passive=o,this.shouldUpdate=!0),s!==this.capture&&(this.capture=s,this.shouldUpdate=!0),this.options=void 0!==i||void 0!==o||void 0!==s?{once:i,passive:o,capture:s}:void 0 -let a=(0,n.expect)(e.positional[0],"You must pass a valid DOM event name as the first argument to the `on` modifier"),l=(0,t.check)((0,r.valueForRef)(a),t.CheckString,(()=>"You must pass a valid DOM event name as the first argument to the `on` modifier")) -l!==this.eventName&&(this.eventName=l,this.shouldUpdate=!0) -const u=(0,n.expect)(e.positional[1],"You must pass a function as the second argument to the `on` modifier"),c=(0,t.check)((0,r.valueForRef)(u),t.CheckFunction,(e=>`You must pass a function as the second argument to the \`on\` modifier; you passed ${null===e?"null":typeof e}. While rendering:\n\n${u.debugLabel??"{unlabeled value}"}`)) -c!==this.userProvidedCallback&&(this.userProvidedCallback=c,this.shouldUpdate=!0) -this.shouldUpdate&&(this.callback=c)}}let er=0,tr=0 -function rr(e,t,r,n){tr++,e.removeEventListener(t,r,n)}function nr(e,t,r,n){er++,e.addEventListener(t,r,n)}e.on=(0,a.setInternalModifierManager)(new class{getDebugName(){return"on"}get counters(){return{adds:er,removes:tr}}create(e,t,r,n){return new Zt(t,n)}getTag(e){return null===e?null:e.tag}install(e){if(null===e)return -e.updateFromArgs() -let{element:t,eventName:r,callback:n,options:i}=e -nr(t,r,n,i),(0,o.registerDestructor)(e,(()=>rr(t,r,n,i))),e.shouldUpdate=!1}update(e){if(null===e)return -let{element:t,eventName:r,callback:n,options:i}=e -e.updateFromArgs(),e.shouldUpdate&&(rr(t,r,n,i),nr(e.element,e.eventName,e.callback,e.options),e.shouldUpdate=!1)}getDestroyable(e){return e}},{}) -class ir{constructor(e,t,r,n,i){this.currentOpSize=0,this.stack=e,this.heap=t,this.program=r,this.externs=n,this.registers=i}fetchRegister(e){return this.registers[e]}loadRegister(e,t){this.registers[e]=t}setPc(e){(0,n.assert)("number"==typeof e&&!isNaN(e),"pc is set to a number"),this.registers[i.$pc]=e}pushFrame(){this.stack.push(this.registers[i.$ra]),this.stack.push(this.registers[i.$fp]),this.registers[i.$fp]=this.registers[i.$sp]-1}popFrame(){this.registers[i.$sp]=this.registers[i.$fp]-1,this.registers[i.$ra]=this.stack.get(0),this.registers[i.$fp]=this.stack.get(1)}pushSmallFrame(){this.stack.push(this.registers[i.$ra])}popSmallFrame(){this.registers[i.$ra]=this.stack.pop()}goto(e){this.setPc(this.target(e))}target(e){return this.registers[i.$pc]+e-this.currentOpSize}call(e){(0,n.assert)(e<4294967295,"Jumping to placeholder address"),this.registers[i.$ra]=this.registers[i.$pc],this.setPc(this.heap.getaddr(e))}returnTo(e){this.registers[i.$ra]=this.target(e)}return(){this.setPc(this.registers[i.$ra])}nextStatement(){let{registers:e,program:t}=this,r=e[i.$pc] +this.argsCache=r}get named(){return er(this).named||mt}get positional(){return er(this).positional||gt}}(0,n.buildUntouchableThis)("`on` modifier") +class rr{constructor(e,t){this.tag=(0,l.createUpdatableTag)(),this.element=void 0,this.args=void 0,this.listener=null,this.element=e,this.args=t,(0,o.registerDestructor)(this,(()=>{let{element:e,listener:t}=this +if(t){let{eventName:r,callback:n,options:i}=t +or(e,r,n,i)}}))}updateListener(){let{element:e,args:i,listener:o}=this;(0,n.assert)(i.positional[0],"You must pass a valid DOM event name as the first argument to the `on` modifier") +let s=(0,t.check)((0,r.valueForRef)(i.positional[0]),t.CheckString,(()=>"You must pass a valid DOM event name as the first argument to the `on` modifier"));(0,n.assert)(i.positional[1],"You must pass a function as the second argument to the `on` modifier") +let a,l,u,c=(0,t.check)((0,r.valueForRef)(i.positional[1]),t.CheckFunction,(e=>`You must pass a function as the second argument to the \`on\` modifier; you passed ${null===e?"null":typeof e}. While rendering:\n\n${i.positional[1]?.debugLabel??"{unlabeled value}"}`)) +{let{once:e,passive:t,capture:n}=i.named +e&&(a=(0,r.valueForRef)(e)),t&&(l=(0,r.valueForRef)(t)),n&&(u=(0,r.valueForRef)(n))}let p,d=!1 +if(d=null===o||(s!==o.eventName||c!==o.userProvidedCallback||a!==o.once||l!==o.passive||u!==o.capture),d&&(void 0===a&&void 0===l&&void 0===u||(p={once:a,passive:l,capture:u})),d){let t=c +0,this.listener={eventName:s,callback:t,userProvidedCallback:c,once:a,passive:l,capture:u,options:p},o&&or(e,o.eventName,o.callback,o.options),function(e,t,r,n){nr++,e.addEventListener(t,r,n)}(e,s,t,p)}}}let nr=0,ir=0 +function or(e,t,r,n){ir++,e.removeEventListener(t,r,n)}e.on=(0,a.setInternalModifierManager)(new class{getDebugName(){return"on"}getDebugInstance(){return null}get counters(){return{adds:nr,removes:ir}}create(e,t,r,n){return new rr(t,n)}getTag({tag:e}){return e}install(e){e.updateListener()}update(e){e.updateListener()}getDestroyable(e){return e}},{}) +class sr{constructor(e,t,r,n,i){this.currentOpSize=0,this.stack=e,this.heap=t,this.program=r,this.externs=n,this.registers=i}fetchRegister(e){return this.registers[e]}loadRegister(e,t){this.registers[e]=t}setPc(e){(0,n.assert)("number"==typeof e&&!isNaN(e),"pc is set to a number"),this.registers[i.$pc]=e}pushFrame(){this.stack.push(this.registers[i.$ra]),this.stack.push(this.registers[i.$fp]),this.registers[i.$fp]=this.registers[i.$sp]-1}popFrame(){this.registers[i.$sp]=this.registers[i.$fp]-1,this.registers[i.$ra]=this.stack.get(0),this.registers[i.$fp]=this.stack.get(1)}pushSmallFrame(){this.stack.push(this.registers[i.$ra])}popSmallFrame(){this.registers[i.$ra]=this.stack.pop()}goto(e){this.setPc(this.target(e))}target(e){return this.registers[i.$pc]+e-this.currentOpSize}call(e){(0,n.assert)(e<4294967295,"Jumping to placeholder address"),this.registers[i.$ra]=this.registers[i.$pc],this.setPc(this.heap.getaddr(e))}returnTo(e){this.registers[i.$ra]=this.target(e)}return(){this.setPc(this.registers[i.$ra])}nextStatement(){let{registers:e,program:t}=this,r=e[i.$pc] if((0,n.assert)("number"==typeof r,"pc is a number"),-1===r)return null let o=t.opcode(r),s=this.currentOpSize=o.size return this.registers[i.$pc]+=s,o}evaluateOuter(e,t){this.evaluateInner(e,t)}evaluateInner(e,t){e.isMachine?this.evaluateMachine(e):this.evaluateSyscall(e,t)}evaluateMachine(e){switch(e.type){case i.MachineOp.PushFrame:return this.pushFrame() @@ -2630,11 +2632,11 @@ case i.MachineOp.InvokeStatic:return this.call(e.op1) case i.MachineOp.InvokeVirtual:return this.call(this.stack.pop()) case i.MachineOp.Jump:return this.goto(e.op1) case i.MachineOp.Return:return this.return() -case i.MachineOp.ReturnTo:return this.returnTo(e.op1)}}evaluateSyscall(e,t){ae.evaluate(t,e,e.type)}}class or{constructor(e,{alwaysRevalidate:t=!1}){this.env=void 0,this.dom=void 0,this.alwaysRevalidate=void 0,this.frameStack=new n.Stack,this.env=e,this.dom=e.getDOM(),this.alwaysRevalidate=t}execute(e,t){this._execute(e,t)}_execute(e,t){let{frameStack:r}=this +case i.MachineOp.ReturnTo:return this.returnTo(e.op1)}}evaluateSyscall(e,t){ae.evaluate(t,e,e.type)}}class ar{constructor(e,{alwaysRevalidate:t=!1}){this.env=void 0,this.dom=void 0,this.alwaysRevalidate=void 0,this.frameStack=new n.Stack,this.env=e,this.dom=e.getDOM(),this.alwaysRevalidate=t}execute(e,t){this._execute(e,t)}_execute(e,t){let{frameStack:r}=this for(this.try(e,t);!r.isEmpty();){let e=this.frame.nextStatement() -void 0!==e?e.evaluate(this):r.pop()}}get frame(){return(0,n.expect)(this.frameStack.current,"bug: expected a frame")}goto(e){this.frame.goto(e)}try(e,t){this.frameStack.push(new pr(e,t))}throw(){this.frame.handleException(),this.frameStack.pop()}}e.UpdatingVM=or -class sr{constructor(e,t){this.state=e,this.resumeCallback=t}resume(e,t){return this.resumeCallback(e,this.state,t)}}class ar{constructor(e,t,r,n){this.children=void 0,this.bounds=void 0,this.state=e,this.runtime=t,this.children=n,this.bounds=r}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}evaluate(e){e.try(this.children,null)}}class lr extends ar{constructor(...e){super(...e),this.type="try"}evaluate(e){e.try(this.children,this)}handleException(){let{state:e,bounds:t,runtime:r}=this;(0,o.destroyChildren)(this) -let n=re.resume(r.env,t),i=e.resume(r,n),s=[],a=this.children=[],l=i.execute((e=>{e.pushUpdating(s),e.updateWith(this),e.pushUpdating(a)}));(0,o.associateDestroyableChild)(this,l.drop)}}class ur extends lr{constructor(e,t,r,n,i,o){super(e,t,r,[]),this.retained=!1,this.index=-1,this.key=n,this.memo=i,this.value=o}updateReferences(e){this.retained=!0,(0,r.updateRef)(this.value,e.value),(0,r.updateRef)(this.memo,e.memo)}shouldRemove(){return!this.retained}reset(){this.retained=!1}}class cr extends ar{constructor(e,t,n,i,o){super(e,t,n,i),this.type="list-block",this.opcodeMap=new Map,this.marker=null,this.lastIterator=void 0,this.iterableRef=o,this.lastIterator=(0,r.valueForRef)(o)}initializeChild(e){e.index=this.children.length-1,this.opcodeMap.set(e.key,e)}evaluate(e){let t=(0,r.valueForRef)(this.iterableRef) +void 0!==e?e.evaluate(this):r.pop()}}get frame(){return(0,n.expect)(this.frameStack.current,"bug: expected a frame")}goto(e){this.frame.goto(e)}try(e,t){this.frameStack.push(new hr(e,t))}throw(){this.frame.handleException(),this.frameStack.pop()}}e.UpdatingVM=ar +class lr{constructor(e,t){this.state=e,this.resumeCallback=t}resume(e,t){return this.resumeCallback(e,this.state,t)}}class ur{constructor(e,t,r,n){this.children=void 0,this.bounds=void 0,this.state=e,this.runtime=t,this.children=n,this.bounds=r}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}evaluate(e){e.try(this.children,null)}}class cr extends ur{constructor(...e){super(...e),this.type="try"}evaluate(e){e.try(this.children,this)}handleException(){let{state:e,bounds:t,runtime:r}=this;(0,o.destroyChildren)(this) +let n=re.resume(r.env,t),i=e.resume(r,n),s=[],a=this.children=[],l=i.execute((e=>{e.pushUpdating(s),e.updateWith(this),e.pushUpdating(a)}));(0,o.associateDestroyableChild)(this,l.drop)}}class pr extends cr{constructor(e,t,r,n,i,o){super(e,t,r,[]),this.retained=!1,this.index=-1,this.key=n,this.memo=i,this.value=o}updateReferences(e){this.retained=!0,(0,r.updateRef)(this.value,e.value),(0,r.updateRef)(this.memo,e.memo)}shouldRemove(){return!this.retained}reset(){this.retained=!1}}class dr extends ur{constructor(e,t,n,i,o){super(e,t,n,i),this.type="list-block",this.opcodeMap=new Map,this.marker=null,this.lastIterator=void 0,this.iterableRef=o,this.lastIterator=(0,r.valueForRef)(o)}initializeChild(e){e.index=this.children.length-1,this.opcodeMap.set(e.key,e)}evaluate(e){let t=(0,r.valueForRef)(this.iterableRef) if(this.lastIterator!==t){let{bounds:r}=this,{dom:i}=e,o=this.marker=i.createComment("") i.insertAfter(r.parentElement(),o,(0,n.expect)(r.lastNode(),"can't insert after an empty bounds")),this.sync(t),this.parentElement().removeChild(o),this.marker=null,this.lastIterator=t}super.evaluate(e)}sync(e){let{opcodeMap:t,children:r}=this,i=0,o=0 for(this.children=this.bounds.boundList=[];;){let s=e.next() @@ -2650,10 +2652,10 @@ for(let e=i+1;e{t.pushUpdating() let n=t.enterItem(e) -n.index=a.length,a.push(n),r.set(l,n),(0,o.associateDestroyableChild)(this,n)}))}moveItem(e,t,n){let i,o,{children:s}=this;(0,r.updateRef)(e.memo,t.memo),(0,r.updateRef)(e.value,t.value),e.retained=!0,void 0===n?w(e,this.marker):(i=e.lastNode().nextSibling,o=n.firstNode(),i!==o&&w(e,o)),e.index=s.length,s.push(e)}deleteItem(e){(0,o.destroy)(e),C(e),this.opcodeMap.delete(e.key)}}class pr{constructor(e,t){this.current=0,this.ops=e,this.exceptionHandler=t}goto(e){this.current=e}nextStatement(){return this.ops[this.current++]}handleException(){this.exceptionHandler&&this.exceptionHandler.handleException()}}class dr{constructor(e,t,r,n){this.env=e,this.updating=t,this.bounds=r,this.drop=n,(0,o.associateDestroyableChild)(this,n),(0,o.registerDestructor)(this,(()=>C(this.bounds)))}rerender({alwaysRevalidate:e=!1}={alwaysRevalidate:!1}){let{env:t,updating:r}=this -new or(t,{alwaysRevalidate:e}).execute(r,this)}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}handleException(){throw"this should never happen"}}class hr{static restore(e){return new this(e.slice(),[0,-1,e.length-1,0])}constructor(e=[],t){this[g]=void 0,this.stack=e,this[g]=t}push(e){this.stack[++this[g][i.$sp]]=e}dup(e=this[g][i.$sp]){this.stack[++this[g][i.$sp]]=this.stack[e]}copy(e,t){this.stack[t]=this.stack[e]}pop(e=1){let t=this.stack[this[g][i.$sp]] +n.index=a.length,a.push(n),r.set(l,n),(0,o.associateDestroyableChild)(this,n)}))}moveItem(e,t,n){let i,o,{children:s}=this;(0,r.updateRef)(e.memo,t.memo),(0,r.updateRef)(e.value,t.value),e.retained=!0,void 0===n?w(e,this.marker):(i=e.lastNode().nextSibling,o=n.firstNode(),i!==o&&w(e,o)),e.index=s.length,s.push(e)}deleteItem(e){(0,o.destroy)(e),E(e),this.opcodeMap.delete(e.key)}}class hr{constructor(e,t){this.current=0,this.ops=e,this.exceptionHandler=t}goto(e){this.current=e}nextStatement(){return this.ops[this.current++]}handleException(){this.exceptionHandler&&this.exceptionHandler.handleException()}}class fr{constructor(e,t,r,n){this.env=e,this.updating=t,this.bounds=r,this.drop=n,(0,o.associateDestroyableChild)(this,n),(0,o.registerDestructor)(this,(()=>E(this.bounds)))}rerender({alwaysRevalidate:e=!1}={alwaysRevalidate:!1}){let{env:t,updating:r}=this +new ar(t,{alwaysRevalidate:e}).execute(r,this)}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}handleException(){throw"this should never happen"}}class mr{static restore(e){return new this(e.slice(),[0,-1,e.length-1,0])}constructor(e=[],t){this[g]=void 0,this.stack=e,this[g]=t}push(e){this.stack[++this[g][i.$sp]]=e}dup(e=this[g][i.$sp]){this.stack[++this[g][i.$sp]]=this.stack[e]}copy(e,t){this.stack[t]=this.stack[e]}pop(e=1){let t=this.stack[this[g][i.$sp]] return this[g][i.$sp]-=e,t}peek(e=0){return this.stack[this[g][i.$sp]-e]}get(e,t=this[g][i.$fp]){return this.stack[t+e]}set(e,t,r=this[g][i.$fp]){this.stack[r+t]=e}slice(e,t){return this.stack.slice(e,t)}capture(e){let t=this[g][i.$sp]+1,r=t-e -return this.stack.slice(r,t)}reset(){this.stack.length=0}toArray(){return this.stack.slice(this[g][i.$fp],this[g][i.$sp]+1)}}class fr{constructor(){this.scope=new n.Stack,this.dynamicScope=new n.Stack,this.updating=new n.Stack,this.cache=new n.Stack,this.list=new n.Stack}}class mr{get stack(){return this[h].stack}get pc(){return this[h].fetchRegister(i.$pc)}fetch(e){let t=this.fetchValue(e) +return this.stack.slice(r,t)}reset(){this.stack.length=0}toArray(){return this.stack.slice(this[g][i.$fp],this[g][i.$sp]+1)}}class gr{constructor(){this.scope=new n.Stack,this.dynamicScope=new n.Stack,this.updating=new n.Stack,this.cache=new n.Stack,this.list=new n.Stack}}class br{get stack(){return this[h].stack}get pc(){return this[h].fetchRegister(i.$pc)}fetch(e){let t=this.fetchValue(e) this.stack.push(t)}load(e){let t=this.stack.pop() this.loadValue(e,t)}fetchValue(e){if((0,i.isLowLevelRegister)(e))return this[h].fetchRegister(e) switch(e){case i.$s0:return this.s0 @@ -2668,41 +2670,41 @@ case i.$t0:this.t0=t break case i.$t1:this.t1=t break -case i.$v0:this.v0=t}}pushFrame(){this[h].pushFrame()}popFrame(){this[h].popFrame()}goto(e){this[h].goto(e)}call(e){this[h].call(e)}returnTo(e){this[h].returnTo(e)}return(){this[h].return()}constructor(e,{pc:t,scope:r,dynamicScope:o,stack:s},a,l){this[m]=new fr,this[b]=void 0,this.destructor=void 0,this[f]=new n.Stack,this[y]=void 0,this[v]=void 0,this[h]=void 0,this.s0=null,this.s1=null,this.t0=null,this.t1=null,this.v0=null,this.resume=void 0,this.runtime=e,this.elementStack=a,this.context=l,this.resume=br(l) -let u=hr.restore(s);(0,n.assert)("number"==typeof t,"pc is a number"),u[g][i.$pc]=t,u[g][i.$sp]=s.length-1,u[g][i.$fp]=-1,this[b]=this.program.heap,this[y]=this.program.constants,this.elementStack=a,this[m].scope.push(r),this[m].dynamicScope.push(o),this[v]=new et,this[h]=new ir(u,this[b],e.program,{debugBefore:e=>ae.debugBefore(this,e),debugAfter:e=>{ae.debugAfter(this,e)}},u[g]),this.destructor={},this[f].push(this.destructor)}static initial(e,t,{handle:r,self:n,dynamicScope:i,treeBuilder:o,numSymbols:s,owner:a}){let l=d.root(n,s,a),u=gr(e.program.heap.getaddr(r),l,i),c=br(t)(e,u,o) -return c.pushUpdating(),c}static empty(e,{handle:t,treeBuilder:n,dynamicScope:i,owner:o},s){let a=br(s)(e,gr(e.program.heap.getaddr(t),d.root(r.UNDEFINED_REFERENCE,0,o),i),n) -return a.pushUpdating(),a}compile(e){return(0,n.unwrapHandle)(e.compile(this.context))}get program(){return this.runtime.program}get env(){return this.runtime.env}captureState(e,t=this[h].fetchRegister(i.$pc)){return{pc:t,scope:this.scope(),dynamicScope:this.dynamicScope(),stack:this.stack.capture(e)}}capture(e,t=this[h].fetchRegister(i.$pc)){return new sr(this.captureState(e,t),this.resume)}beginCacheGroup(e){let t=this.updating(),r=new we -t.push(r),t.push(new Ce(e)),this[m].cache.push(r),(0,l.beginTrackFrame)(e)}commitCacheGroup(){let e=this.updating(),t=(0,n.expect)(this[m].cache.pop(),"VM BUG: Expected a cache group"),r=(0,l.endTrackFrame)() -e.push(new Ee(t)),t.finalize(r,e.length)}enter(e){let t=this.capture(e),r=this.elements().pushUpdatableBlock(),n=new lr(t,this.runtime,r,[]) +case i.$v0:this.v0=t}}pushFrame(){this[h].pushFrame()}popFrame(){this[h].popFrame()}goto(e){this[h].goto(e)}call(e){this[h].call(e)}returnTo(e){this[h].returnTo(e)}return(){this[h].return()}constructor(e,{pc:t,scope:r,dynamicScope:o,stack:s},a,l){this[m]=new gr,this[b]=void 0,this.destructor=void 0,this[f]=new n.Stack,this[y]=void 0,this[v]=void 0,this[h]=void 0,this.s0=null,this.s1=null,this.t0=null,this.t1=null,this.v0=null,this.resume=void 0,this.runtime=e,this.elementStack=a,this.context=l,this.resume=vr(l) +let u=mr.restore(s);(0,n.assert)("number"==typeof t,"pc is a number"),u[g][i.$pc]=t,u[g][i.$sp]=s.length-1,u[g][i.$fp]=-1,this[b]=this.program.heap,this[y]=this.program.constants,this.elementStack=a,this[m].scope.push(r),this[m].dynamicScope.push(o),this[v]=new et,this[h]=new sr(u,this[b],e.program,{debugBefore:e=>ae.debugBefore(this,e),debugAfter:e=>{ae.debugAfter(this,e)}},u[g]),this.destructor={},this[f].push(this.destructor)}static initial(e,t,{handle:r,self:n,dynamicScope:i,treeBuilder:o,numSymbols:s,owner:a}){let l=d.root(n,s,a),u=yr(e.program.heap.getaddr(r),l,i),c=vr(t)(e,u,o) +return c.pushUpdating(),c}static empty(e,{handle:t,treeBuilder:n,dynamicScope:i,owner:o},s){let a=vr(s)(e,yr(e.program.heap.getaddr(t),d.root(r.UNDEFINED_REFERENCE,0,o),i),n) +return a.pushUpdating(),a}compile(e){return(0,n.unwrapHandle)(e.compile(this.context))}get program(){return this.runtime.program}get env(){return this.runtime.env}captureState(e,t=this[h].fetchRegister(i.$pc)){return{pc:t,scope:this.scope(),dynamicScope:this.dynamicScope(),stack:this.stack.capture(e)}}capture(e,t=this[h].fetchRegister(i.$pc)){return new lr(this.captureState(e,t),this.resume)}beginCacheGroup(e){let t=this.updating(),r=new we +t.push(r),t.push(new Ee(e)),this[m].cache.push(r),(0,l.beginTrackFrame)(e)}commitCacheGroup(){let e=this.updating(),t=(0,n.expect)(this[m].cache.pop(),"VM BUG: Expected a cache group"),r=(0,l.endTrackFrame)() +e.push(new Ce(t)),t.finalize(r,e.length)}enter(e){let t=this.capture(e),r=this.elements().pushUpdatableBlock(),n=new cr(t,this.runtime,r,[]) this.didEnter(n)}enterItem({key:e,value:t,memo:n}){let{stack:i}=this,o=(0,r.createIteratorItemRef)(t),s=(0,r.createIteratorItemRef)(n) i.push(o),i.push(s) -let a=this.capture(2),l=this.elements().pushUpdatableBlock(),u=new ur(a,this.runtime,l,e,s,o) -return this.didEnter(u),u}registerItem(e){this.listBlock().initializeChild(e)}enterList(e,t){let r=[],n=this[h].target(t),i=this.capture(0,n),o=this.elements().pushBlockList(r),s=new cr(i,this.runtime,o,r,e) +let a=this.capture(2),l=this.elements().pushUpdatableBlock(),u=new pr(a,this.runtime,l,e,s,o) +return this.didEnter(u),u}registerItem(e){this.listBlock().initializeChild(e)}enterList(e,t){let r=[],n=this[h].target(t),i=this.capture(0,n),o=this.elements().pushBlockList(r),s=new dr(i,this.runtime,o,r,e) this[m].list.push(s),this.didEnter(s)}didEnter(e){this.associateDestroyable(e),this[f].push(e),this.updateWith(e),this.pushUpdating(e.children)}exit(){this[f].pop(),this.elements().popBlock(),this.popUpdating()}exitList(){this.exit(),this[m].list.pop()}pushUpdating(e=[]){this[m].updating.push(e)}popUpdating(){return(0,n.expect)(this[m].updating.pop(),"can't pop an empty stack")}updateWith(e){this.updating().push(e)}listBlock(){return(0,n.expect)(this[m].list.current,"expected a list block")}associateDestroyable(e){let t=(0,n.expect)(this[f].current,"Expected destructor parent");(0,o.associateDestroyableChild)(t,e)}tryUpdating(){return this[m].updating.current}updating(){return(0,n.expect)(this[m].updating.current,"expected updating opcode on the updating opcode stack")}elements(){return this.elementStack}scope(){return(0,n.expect)(this[m].scope.current,"expected scope on the scope stack")}dynamicScope(){return(0,n.expect)(this[m].dynamicScope.current,"expected dynamic scope on the dynamic scope stack")}pushChildScope(){this[m].scope.push(this.scope().child())}pushDynamicScope(){let e=this.dynamicScope().child() return this[m].dynamicScope.push(e),e}pushRootScope(e,t){let r=d.sized(e,t) return this[m].scope.push(r),r}pushScope(e){this[m].scope.push(e)}popScope(){this[m].scope.pop()}popDynamicScope(){this[m].dynamicScope.pop()}getOwner(){return this.scope().owner}getSelf(){return this.scope().getSelf()}referenceForSymbol(e){return this.scope().getSymbol(e)}execute(e){return this._execute(e)}_execute(e){let t e&&e(this) do{t=this.next()}while(!t.done) return t.value}next(){let e,{env:t,elementStack:r}=this,n=this[h].nextStatement() -return null!==n?(this[h].evaluateOuter(n,this),e={done:!1,value:null}):(this.stack.reset(),e={done:!0,value:new dr(t,this.popUpdating(),r.popBlock(),this.destructor)}),e}bindDynamicScope(e){let t=this.dynamicScope() -for(const r of(0,n.reverse)(e))t.set(r,this.stack.pop())}}function gr(e,t,r){return{pc:e,scope:t,dynamicScope:r,stack:[]}}function br(e){return(t,r,n)=>new mr(t,r,n,e)}e.LowLevelVM=mr -class yr{constructor(e){this.vm=e}next(){return this.vm.next()}sync(){return this.vm.execute()}}const vr=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" -class _r extends _{constructor(e,t,r){super(e,t),this.candidate=null,this.openBlockDepth=void 0,this.injectedOmittedNode=!1,this.startingBlockDepth=r,this.openBlockDepth=r-1}}class Or extends re{constructor(e,t,r){if(super(e,t,r),this.unmatchedAttributes=null,this.blockDepth=0,this.startingBlockOffset=void 0,r)throw new Error("Rehydration with nextSibling not supported") +return null!==n?(this[h].evaluateOuter(n,this),e={done:!1,value:null}):(this.stack.reset(),e={done:!0,value:new fr(t,this.popUpdating(),r.popBlock(),this.destructor)}),e}bindDynamicScope(e){let t=this.dynamicScope() +for(const r of(0,n.reverse)(e))t.set(r,this.stack.pop())}}function yr(e,t,r){return{pc:e,scope:t,dynamicScope:r,stack:[]}}function vr(e){return(t,r,n)=>new br(t,r,n,e)}e.LowLevelVM=br +class _r{constructor(e){this.vm=e}next(){return this.vm.next()}sync(){return this.vm.execute()}}const Or=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" +class wr extends _{constructor(e,t,r){super(e,t),this.candidate=null,this.openBlockDepth=void 0,this.injectedOmittedNode=!1,this.startingBlockDepth=r,this.openBlockDepth=r-1}}class Er extends re{constructor(e,t,r){if(super(e,t,r),this.unmatchedAttributes=null,this.blockDepth=0,this.startingBlockOffset=void 0,r)throw new Error("Rehydration with nextSibling not supported") let i=this.currentCursor.element.firstChild -for(;null!==i&&!wr(i);)i=i.nextSibling;(0,n.assert)(i,"Must have opening comment for rehydration."),this.candidate=i -const o=Er(i) +for(;null!==i&&!Cr(i);)i=i.nextSibling;(0,n.assert)(i,"Must have opening comment for rehydration."),this.candidate=i +const o=Tr(i) if(0!==o){const e=o-1,t=this.dom.createComment(`%+b:${e}%`) i.parentNode.insertBefore(t,this.candidate) let r=i.nextSibling -for(;null!==r&&(!Cr(r)||Er(r)!==o);)r=r.nextSibling;(0,n.assert)(r,"Must have closing comment for starting block comment") +for(;null!==r&&(!kr(r)||Tr(r)!==o);)r=r.nextSibling;(0,n.assert)(r,"Must have closing comment for starting block comment") const s=this.dom.createComment(`%-b:${e}%`) i.parentNode.insertBefore(s,r.nextSibling),this.candidate=t,this.startingBlockOffset=e}else this.startingBlockOffset=0}get currentCursor(){return this[te].current}get candidate(){return this.currentCursor?this.currentCursor.candidate:null}set candidate(e){this.currentCursor.candidate=e}disableRehydration(e){const t=this.currentCursor t.candidate=null,t.nextSibling=e}enableRehydration(e){const t=this.currentCursor -t.candidate=e,t.nextSibling=null}pushElement(e,t=null){const r=new _r(e,t,this.blockDepth||0) +t.candidate=e,t.nextSibling=null}pushElement(e,t=null){const r=new wr(e,t,this.blockDepth||0) null!==this.candidate&&(r.candidate=e.firstChild,this.candidate=e.nextSibling),this[te].push(r)}clearMismatch(e){let t=e const r=this.currentCursor if(null!==r){const e=r.openBlockDepth -if(e>=r.startingBlockDepth)for(;t;){if(Cr(t)){if(e>=kr(t,this.startingBlockOffset))break}t=this.remove(t)}else for(;null!==t;)t=this.remove(t) +if(e>=r.startingBlockDepth)for(;t;){if(kr(t)){if(e>=Rr(t,this.startingBlockOffset))break}t=this.remove(t)}else for(;null!==t;)t=this.remove(t) this.disableRehydration(t)}}__openBlock(){const{currentCursor:e}=this if(null===e)return const t=this.blockDepth @@ -2710,61 +2712,61 @@ this.blockDepth++ const{candidate:r}=e if(null===r)return const{tagName:n}=e.element -wr(r)&&kr(r,this.startingBlockOffset)===t?(this.candidate=this.remove(r),e.openBlockDepth=t):"TITLE"!==n&&"SCRIPT"!==n&&"STYLE"!==n&&this.clearMismatch(r)}__closeBlock(){const{currentCursor:e}=this +Cr(r)&&Rr(r,this.startingBlockOffset)===t?(this.candidate=this.remove(r),e.openBlockDepth=t):"TITLE"!==n&&"SCRIPT"!==n&&"STYLE"!==n&&this.clearMismatch(r)}__closeBlock(){const{currentCursor:e}=this if(null===e)return const t=e.openBlockDepth this.blockDepth-- const{candidate:r}=e let n=!1 -if(null!==r)if(n=!0,Cr(r)&&kr(r,this.startingBlockOffset)===t){const t=this.remove(r) +if(null!==r)if(n=!0,kr(r)&&Rr(r,this.startingBlockOffset)===t){const t=this.remove(r) this.candidate=t,e.openBlockDepth--}else this.clearMismatch(r),n=!1 if(!1===n){const t=e.nextSibling -if(null!==t&&Cr(t)&&kr(t,this.startingBlockOffset)===this.blockDepth){const r=this.remove(t) +if(null!==t&&kr(t)&&Rr(t,this.startingBlockOffset)===this.blockDepth){const r=this.remove(t) this.enableRehydration(r),e.openBlockDepth--}}}__appendNode(e){const{candidate:t}=this return t||super.__appendNode(e)}__appendHTML(e){const t=this.markerBounds() if(t){const e=t.firstNode(),r=t.lastNode(),n=new O(this.element,e.nextSibling,r.previousSibling),i=this.remove(e) -return this.remove(r),null!==i&&Rr(i)&&(this.candidate=this.remove(i),null!==this.candidate&&this.clearMismatch(this.candidate)),n}return super.__appendHTML(e)}remove(e){const t=(0,n.expect)(e.parentNode,"cannot remove a detached node"),r=e.nextSibling +return this.remove(r),null!==i&&xr(i)&&(this.candidate=this.remove(i),null!==this.candidate&&this.clearMismatch(this.candidate)),n}return super.__appendHTML(e)}remove(e){const t=(0,n.expect)(e.parentNode,"cannot remove a detached node"),r=e.nextSibling return t.removeChild(e),r}markerBounds(){const e=this.candidate -if(e&&Sr(e)){const t=e +if(e&&Pr(e)){const t=e let r=(0,n.expect)(t.nextSibling,"BUG: serialization markers must be paired") -for(;r&&!Sr(r);)r=(0,n.expect)(r.nextSibling,"BUG: serialization markers must be paired") +for(;r&&!Pr(r);)r=(0,n.expect)(r.nextSibling,"BUG: serialization markers must be paired") return new O(this.element,t,r)}return null}__appendText(e){const{candidate:t}=this -return t?3===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):function(e){return 8===e.nodeType&&"%|%"===e.nodeValue}(t)||Rr(t)&&""===e?(this.candidate=this.remove(t),this.__appendText(e)):(this.clearMismatch(t),super.__appendText(e)):super.__appendText(e)}__appendComment(e){const t=this.candidate +return t?3===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):function(e){return 8===e.nodeType&&"%|%"===e.nodeValue}(t)||xr(t)&&""===e?(this.candidate=this.remove(t),this.__appendText(e)):(this.clearMismatch(t),super.__appendText(e)):super.__appendText(e)}__appendComment(e){const t=this.candidate return t&&8===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):(t&&this.clearMismatch(t),super.__appendComment(e))}__openElement(e){const t=this.candidate -if(t&&Tr(t)&&function(e,t){if(e.namespaceURI===n.NS_SVG)return e.tagName===t +if(t&&Sr(t)&&function(e,t){if(e.namespaceURI===n.NS_SVG)return e.tagName===t return e.tagName===t.toUpperCase()}(t,e))return this.unmatchedAttributes=[].slice.call(t.attributes),t -if(t){if(Tr(t)&&"TBODY"===t.tagName)return this.pushElement(t,null),this.currentCursor.injectedOmittedNode=!0,this.__openElement(e) +if(t){if(Sr(t)&&"TBODY"===t.tagName)return this.pushElement(t,null),this.currentCursor.injectedOmittedNode=!0,this.__openElement(e) this.clearMismatch(t)}return super.__openElement(e)}__setAttribute(e,t,r){const n=this.unmatchedAttributes -if(n){const r=Pr(n,e) +if(n){const r=Ar(n,e) if(r)return r.value!==t&&(r.value=t),void n.splice(n.indexOf(r),1)}return super.__setAttribute(e,t,r)}__setProperty(e,t){const r=this.unmatchedAttributes -if(r){const n=Pr(r,e) +if(r){const n=Ar(r,e) if(n)return n.value!==t&&(n.value=t),void r.splice(r.indexOf(n),1)}return super.__setProperty(e,t)}__flushElement(e,t){const{unmatchedAttributes:r}=this if(r){for(const e of r)this.constructing.removeAttribute(e.name) this.unmatchedAttributes=null}else super.__flushElement(e,t)}willCloseElement(){const{candidate:e,currentCursor:t}=this null!==e&&this.clearMismatch(e),t&&t.injectedOmittedNode&&this.popElement(),super.willCloseElement()}getMarker(e,t){const r=e.querySelector(`script[glmr="${t}"]`) return r?(0,n.castToSimple)(r):null}__pushRemoteElement(e,t,r){const i=this.getMarker((0,n.castToBrowser)(e,"HTML"),t) if((0,n.assert)(!i||i.parentNode===e,"expected remote element marker's parent node to match remote element"),void 0===r){for(;null!==e.firstChild&&e.firstChild!==i;)this.remove(e.firstChild) -r=null}const o=new _r(e,null,this.blockDepth) +r=null}const o=new wr(e,null,this.blockDepth) this[te].push(o),null===i?this.disableRehydration(r):this.candidate=this.remove(i) const s=new ie(e) return this.pushLiveBlock(s,!0)}didAppendBounds(e){if(super.didAppendBounds(e),this.candidate){const t=e.lastNode() -this.candidate=t&&t.nextSibling}return e}}function wr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%+b:",0)}function Cr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%-b:",0)}function Er(e){return parseInt(e.nodeValue.slice(4),10)}function kr(e,t){return Er(e)-t}function Tr(e){return 1===e.nodeType}function Sr(e){return 8===e.nodeType&&"%glmr%"===e.nodeValue}function Rr(e){return 8===e.nodeType&&"% %"===e.nodeValue}function Pr(e,t){for(const r of e)if(r.name===t)return r}e.RehydrateBuilder=Or})),e("@glimmer/tracking/index",["exports","@ember/-internals/metal"],(function(e,t){"use strict" +this.candidate=t&&t.nextSibling}return e}}function Cr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%+b:",0)}function kr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%-b:",0)}function Tr(e){return parseInt(e.nodeValue.slice(4),10)}function Rr(e,t){return Tr(e)-t}function Sr(e){return 1===e.nodeType}function Pr(e){return 8===e.nodeType&&"%glmr%"===e.nodeValue}function xr(e){return 8===e.nodeType&&"% %"===e.nodeValue}function Ar(e,t){for(const r of e)if(r.name===t)return r}e.RehydrateBuilder=Er})),e("@glimmer/tracking/index",["exports","@ember/-internals/metal"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"cached",{enumerable:!0,get:function(){return t.cached}}),Object.defineProperty(e,"tracked",{enumerable:!0,get:function(){return t.tracked}})})),e("@glimmer/tracking/primitives/cache",["exports","@ember/-internals/metal"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return t.createCache}}),Object.defineProperty(e,"getValue",{enumerable:!0,get:function(){return t.getValue}}),Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return t.isConst}})})),e("@glimmer/util",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.TEXT_NODE=e.Stack=e.SERIALIZATION_FIRST_NODE_STRING=e.RAW_NODE=e.NS_XMLNS=e.NS_XML=e.NS_XLINK=e.NS_SVG=e.NS_MATHML=e.NS_HTML=e.LOGGER=e.LOCAL_LOGGER=e.ImmediateConstants=e.INSERT_BEFORE_END=e.INSERT_BEFORE_BEGIN=e.INSERT_AFTER_END=e.INSERT_AFTER_BEGIN=e.EMPTY_STRING_ARRAY=e.EMPTY_NUMBER_ARRAY=e.EMPTY_ARRAY=e.ELEMENT_NODE=e.DOCUMENT_TYPE_NODE=e.DOCUMENT_NODE=e.DOCUMENT_FRAGMENT_NODE=e.COMMENT_NODE=void 0,e.arrayToOption=function(e){return a(e)?e:null},e.asPresentArray=function(e,t="unexpected empty list"){return l(e,t),e},e.assert=function(e,t){if(!e)throw new Error(t||"assertion failure")},e.assertNever=function(e,t="unexpected unreachable branch"){throw S.log("unreachable",e),S.log(`${t} :: ${JSON.stringify(e)} (${e})`),new Error("code reached unreachable")},e.assertPresent=function(e,t){if(!s(e))throw new Error(`Expected present, got ${"string"==typeof e?e:t}`)},e.assertPresentArray=l,e.beginTestSteps=e.assign=void 0,e.buildUntouchableThis=function(e){let t=null +Object.defineProperty(e,"__esModule",{value:!0}),e.TEXT_NODE=e.Stack=e.SERIALIZATION_FIRST_NODE_STRING=e.RAW_NODE=e.NS_XMLNS=e.NS_XML=e.NS_XLINK=e.NS_SVG=e.NS_MATHML=e.NS_HTML=e.LOGGER=e.LOCAL_LOGGER=e.ImmediateConstants=e.INSERT_BEFORE_END=e.INSERT_BEFORE_BEGIN=e.INSERT_AFTER_END=e.INSERT_AFTER_BEGIN=e.EMPTY_STRING_ARRAY=e.EMPTY_NUMBER_ARRAY=e.EMPTY_ARRAY=e.ELEMENT_NODE=e.DOCUMENT_TYPE_NODE=e.DOCUMENT_NODE=e.DOCUMENT_FRAGMENT_NODE=e.COMMENT_NODE=void 0,e.arrayToOption=function(e){return a(e)?e:null},e.asPresentArray=function(e,t="unexpected empty list"){return l(e,t),e},e.assert=function(e,t){if(!e)throw new Error(t||"assertion failure")},e.assertNever=function(e,t="unexpected unreachable branch"){throw R.log("unreachable",e),R.log(`${t} :: ${JSON.stringify(e)} (${e})`),new Error("code reached unreachable")},e.assertPresent=function(e,t){if(!s(e))throw new Error(`Expected present, got ${"string"==typeof e?e:t}`)},e.assertPresentArray=l,e.beginTestSteps=e.assign=void 0,e.buildUntouchableThis=function(e){let t=null 0 return t},e.castToBrowser=function(e,t){if(null==e)return null if(void 0===typeof document)throw new Error("Attempted to cast to a browser node in a non-browser context") if(w(e))return e if(e.ownerDocument!==document)throw new Error("Attempted to cast to a browser node with a node that was not created from this document") -return E(e,t)},e.castToSimple=function(e){return w(e)||C(e),e},e.checkNode=E,e.clearElement=function(e){let t=e.firstChild +return C(e,t)},e.castToSimple=function(e){return w(e)||E(e),e},e.checkNode=C,e.clearElement=function(e){let t=e.firstChild for(;t;){let r=t.nextSibling e.removeChild(t),t=r}},e.constants=function(...e){return[!1,!0,null,void 0,...e]},e.debugToString=void 0,e.decodeHandle=function(e){return e},e.decodeImmediate=_,e.decodeNegative=g,e.decodePositive=y,e.deprecate=function(e){T.warn(`DEPRECATION: ${e}`)},e.dict=function(){return Object.create(null)},e.emptyArray=r,e.encodeHandle=function(e){return e},e.encodeImmediate=v,e.encodeNegative=m,e.encodePositive=b,e.endTestSteps=void 0,e.entries=function(e){return Object.entries(e)},e.enumerate=n e.exhausted=function(e){throw new Error(`Exhausted ${String(e)}`)},e.expect=function(e,t){if(null==e)throw new Error(t) return e},e.extractHandle=function(e){return"number"==typeof e?e:e.handle},e.getFirst=c,e.getLast=u,e.ifPresent=function(e,t,r){return a(e)?t(e):r()},e.intern=function(e){let t={} t[e]=1 for(let r in t)if(r===e)return r -return e},e.isDict=function(e){return null!=e},e.isElement=function(e){return e?.nodeType===d&&e instanceof Element},e.isEmptyArray=function(e){return e===t},e.isErrHandle=function(e){return"number"==typeof e},e.isHandle=function(e){return e>=0},e.isNonPrimitiveHandle=function(e){return e>f.ENCODED_UNDEFINED_HANDLE},e.isObject=function(e){return"function"==typeof e||"object"==typeof e&&null!==e},e.isOkHandle=function(e){return"number"==typeof e},e.isPresent=s,e.isPresentArray=a,e.isSerializationFirstNode=function(e){return e.nodeValue===O},e.isSimpleElement=C,e.isSmallInt=function(e){return e%1==0&&e<=f.MAX_INT&&e>=f.MIN_INT},e.keys=function(e){return Object.keys(e)},e.logStep=void 0,e.mapPresentArray=function(e,t){if(null===e)return null +return e},e.isDict=function(e){return null!=e},e.isElement=function(e){return e?.nodeType===d&&e instanceof Element},e.isEmptyArray=function(e){return e===t},e.isErrHandle=function(e){return"number"==typeof e},e.isHandle=function(e){return e>=0},e.isNonPrimitiveHandle=function(e){return e>f.ENCODED_UNDEFINED_HANDLE},e.isObject=function(e){return"function"==typeof e||"object"==typeof e&&null!==e},e.isOkHandle=function(e){return"number"==typeof e},e.isPresent=s,e.isPresentArray=a,e.isSerializationFirstNode=function(e){return e.nodeValue===O},e.isSimpleElement=E,e.isSmallInt=function(e){return e%1==0&&e<=f.MAX_INT&&e>=f.MIN_INT},e.keys=function(e){return Object.keys(e)},e.logStep=void 0,e.mapPresentArray=function(e,t){if(null===e)return null let r=[] for(let n of e)r.push(t(n)) return r},e.reverse=function*(e){for(let t=e.length-1;t>=0;t--)yield e[t]},e.strip=function(e,...t){let r="" @@ -2798,7 +2800,7 @@ let f=e.ImmediateConstants=function(e){return e[e.MAX_SMI=1073741823]="MAX_SMI", function m(e){return e&f.SIGN_BIT}function g(e){return e|~f.SIGN_BIT}function b(e){return~e}function y(e){return~e}function v(e){return(e|=0)<0?m(e):b(e)}function _(e){return(e|=0)>f.SIGN_BIT?y(e):g(e)}[1,-1].forEach((e=>_(v(e)))) const O=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" e.assign=Object.assign -function w(e){return e.nodeType===h}function C(e){return e?.nodeType===d}function E(e,t){let r=!1 +function w(e){return e.nodeType===h}function E(e){return e?.nodeType===d}function C(e,t){let r=!1 if(null!==e)if("string"==typeof t)r=k(e,t) else{if(!Array.isArray(t))throw o() r=t.some((t=>k(e,t)))}if(r&&e instanceof Node)return e @@ -2807,24 +2809,24 @@ case"HTML":return e instanceof HTMLElement case"SVG":return e instanceof SVGElement case"ELEMENT":return e instanceof Element default:if(t.toUpperCase()===t)throw new Error("BUG: this code is missing handling for a generic node type") -return e instanceof Element&&e.tagName.toLowerCase()===t}}const T=e.LOCAL_LOGGER=console,S=e.LOGGER=console})),e("@glimmer/validator",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" +return e instanceof Element&&e.tagName.toLowerCase()===t}}const T=e.LOCAL_LOGGER=console,R=e.LOGGER=console})),e("@glimmer/validator",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" function n(e){if(null==e)throw new Error("Expected value to be present") -return e}Object.defineProperty(e,"__esModule",{value:!0}),e.VolatileTag=e.VOLATILE_TAG=e.VOLATILE=e.INITIAL=e.CurrentTag=e.CURRENT_TAG=e.CONSTANT_TAG=e.CONSTANT=e.COMPUTE=e.ALLOW_CYCLES=void 0,e.beginTrackFrame=M,e.beginUntrackFrame=j,e.bump=function(){s++},e.combine=void 0,e.consumeTag=I,e.createCache=function(e,t){0 +return e}Object.defineProperty(e,"__esModule",{value:!0}),e.VolatileTag=e.VOLATILE_TAG=e.VOLATILE=e.INITIAL=e.CurrentTag=e.CURRENT_TAG=e.CONSTANT_TAG=e.CONSTANT=e.COMPUTE=e.ALLOW_CYCLES=void 0,e.beginTrackFrame=M,e.beginUntrackFrame=D,e.bump=function(){s++},e.combine=void 0,e.consumeTag=I,e.createCache=function(e,t){0 let r={[F]:e,[L]:void 0,[B]:void 0,[U]:-1} 0 -return r},e.createTag=function(){return new h(a)},e.createUpdatableTag=g,e.dirtyTag=e.debug=void 0,e.dirtyTagFor=T,e.endTrackFrame=N,e.endUntrackFrame=D,e.getValue=function(e){H(e,"getValue") +return r},e.createTag=function(){return new h(a)},e.createUpdatableTag=g,e.dirtyTag=e.debug=void 0,e.dirtyTagFor=T,e.endTrackFrame=N,e.endUntrackFrame=j,e.getValue=function(e){H(e,"getValue") let t=e[F],r=e[B],n=e[U] if(void 0!==r&&p(r,n))I(r) else{M() try{e[L]=t()}finally{r=N(),e[B]=r,e[U]=c(r),I(r)}}return e[L]},e.isConst=function(e){H(e,"isConst") let t=e[B] return function(e,t){0}(),y(t)},e.isConstTag=y,e.isTracking=function(){return null!==x},e.resetTracking=function(){for(;A.length>0;)A.pop() -x=null,!1},e.tagFor=R,e.tagMetaFor=S,e.track=function(e,t){let r +x=null,!1},e.tagFor=S,e.tagMetaFor=R,e.track=function(e,t){let r M(t) try{e()}finally{r=N()}return r},e.trackedData=function(e,t){let r=new WeakMap,n="function"==typeof t return{getter:function(i){let o -return I(R(i,e)),n&&!r.has(i)?(o=t.call(i),r.set(i,o)):o=r.get(i),o},setter:function(t,n){T(t,e),r.set(t,n)}}},e.untrack=function(e){j() -try{return e()}finally{D()}},e.updateTag=void 0,e.validateTag=p,e.valueForTag=c +return I(S(i,e)),n&&!r.has(i)?(o=t.call(i),r.set(i,o)):o=r.get(i),o},setter:function(t,n){T(t,e),r.set(t,n)}}},e.untrack=function(e){D() +try{return e()}finally{j()}},e.updateTag=void 0,e.validateTag=p,e.valueForTag=c e.debug={} e.CONSTANT=0 const i=e.INITIAL=1,o=e.VOLATILE=NaN @@ -2839,10 +2841,9 @@ return t.subtag=e,t}}}constructor(e){this.revision=i,this.lastChecked=i,this.las if(!0===this.isUpdating)this.lastChecked=++s else if(e!==s){this.isUpdating=!0,this.lastChecked=s try{let{subtag:e,revision:t}=this -if(null!==e)if(Array.isArray(e))t=e.reduce(((e,t)=>{let r=t[u]() -return r>e?r:e}),t) -else{let r=e[u]() -r===this.subtagBufferCache?t=t>this.lastValue?t:this.lastValue:(this.subtagBufferCache=null,t=t>r?t:r)}this.lastValue=t}finally{this.isUpdating=!1}}return this.lastValue}static updateTag(e,t){let r=e,n=t +if(null!==e)if(Array.isArray(e))for(const r of e){let e=r[u]() +t=Math.max(e,t)}else{let r=e[u]() +r===this.subtagBufferCache?t=Math.max(t,this.lastValue):(this.subtagBufferCache=null,t=Math.max(t,r))}this.lastValue=t}finally{this.isUpdating=!1}}return this.lastValue}static updateTag(e,t){let r=e,n=t n===b?r.subtag=null:(r.subtagBufferCache=n[u](),r.subtag=n)}static dirtyTag(e,r){e.revision=++s,(0,t.scheduleRevalidate)()}}const f=e.dirtyTag=h.dirtyTag,m=e.updateTag=h.updateTag function g(){return new h(l)}const b=e.CONSTANT_TAG=new h(3) function y(e){return e===b}class v{constructor(){this[d]=100}[u](){return o}}e.VolatileTag=v @@ -2850,19 +2851,19 @@ e.VOLATILE_TAG=new v class _{constructor(){this[d]=101}[u](){return s}}e.CurrentTag=_ e.CURRENT_TAG=new _ const O=e.combine=h.combine -let w=g(),C=g(),E=g() -c(w),f(w),c(w),m(w,O([C,E])),c(w),f(C),c(w),f(E),c(w),m(w,E),c(w),f(E),c(w) +let w=g(),E=g(),C=g() +c(w),f(w),c(w),m(w,O([E,C])),c(w),f(E),c(w),f(C),c(w),m(w,C),c(w),f(C),c(w) const k=new WeakMap function T(e,t,r){let n=void 0===r?k.get(e):r if(void 0===n)return let i=n.get(t) -void 0!==i&&f(i,!0)}function S(e){let t=k.get(e) -return void 0===t&&(t=new Map,k.set(e,t)),t}function R(e,t,r){let n=void 0===r?S(e):r,i=n.get(t) +void 0!==i&&f(i,!0)}function R(e){let t=k.get(e) +return void 0===t&&(t=new Map,k.set(e,t)),t}function S(e,t,r){let n=void 0===r?R(e):r,i=n.get(t) return void 0===i&&(i=g(),n.set(t,i)),i}class P{constructor(){this.tags=new Set,this.last=null}add(e){e!==b&&(this.tags.add(e),this.last=e)}combine(){let{tags:e}=this return 0===e.size?b:1===e.size?this.last:O(Array.from(this.tags))}}let x=null const A=[] function M(e){A.push(x),x=new P}function N(){let e=x -return x=A.pop()||null,n(e).combine()}function j(){A.push(x),x=null}function D(){x=A.pop()||null}function I(e){null!==x&&x.add(e)}const F=Symbol("FN"),L=Symbol("LAST_VALUE"),B=Symbol("TAG"),U=Symbol("SNAPSHOT") +return x=A.pop()||null,n(e).combine()}function D(){A.push(x),x=null}function j(){x=A.pop()||null}function I(e){null!==x&&x.add(e)}const F=Symbol("FN"),L=Symbol("LAST_VALUE"),B=Symbol("TAG"),U=Symbol("SNAPSHOT") Symbol("DEBUG_LABEL") function H(e,t){0}const $=Symbol("GLIMMER_VALIDATOR_REGISTRATION"),V=function(){if("undefined"!=typeof globalThis)return globalThis if("undefined"!=typeof self)return self @@ -2879,8 +2880,8 @@ e.$s0=4,e.$s1=5,e.$t0=6,e.$t1=7,e.$v0=8 e.MachineRegister=function(e){return e[e.pc=0]="pc",e[e.ra=1]="ra",e[e.fp=2]="fp",e[e.sp=3]="sp",e}({}) e.SavedRegister=function(e){return e[e.s0=4]="s0",e[e.s1=5]="s1",e}({}),e.TemporaryRegister=function(e){return e[e.t0=6]="t0",e[e.t1=7]="t1",e}({})})),e("@glimmer/wire-format",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.WellKnownTagNames=e.WellKnownAttrNames=e.VariableResolutionContext=e.SexpOpcodes=void 0,e.getStringFromValue=function(e){return e},e.is=r,e.isArgument=function(e){return e[0]===t.StaticArg||e[0]===t.DynamicArg},e.isAttribute=function(e){return e[0]===t.StaticAttr||e[0]===t.DynamicAttr||e[0]===t.TrustingDynamicAttr||e[0]===t.ComponentAttr||e[0]===t.StaticComponentAttr||e[0]===t.TrustingComponentAttr||e[0]===t.AttrSplat||e[0]===t.Modifier},e.isGet=e.isFlushElement=void 0,e.isHelper=function(e){return Array.isArray(e)&&e[0]===t.Call},e.isStringLiteral=function(e){return"string"==typeof e} -const t=e.SexpOpcodes={Append:1,TrustingAppend:2,Comment:3,Modifier:4,StrictModifier:5,Block:6,StrictBlock:7,Component:8,OpenElement:10,OpenElementWithSplat:11,FlushElement:12,CloseElement:13,StaticAttr:14,DynamicAttr:15,ComponentAttr:16,AttrSplat:17,Yield:18,DynamicArg:20,StaticArg:21,TrustingDynamicAttr:22,TrustingComponentAttr:23,StaticComponentAttr:24,Debugger:26,Undefined:27,Call:28,Concat:29,GetSymbol:30,GetLexicalSymbol:32,GetStrictKeyword:31,GetFreeAsComponentOrHelperHeadOrThisFallback:34,GetFreeAsComponentOrHelperHead:35,GetFreeAsHelperHeadOrThisFallback:36,GetFreeAsDeprecatedHelperHeadOrThisFallback:99,GetFreeAsHelperHead:37,GetFreeAsModifierHead:38,GetFreeAsComponentHead:39,InElement:40,If:41,Each:42,With:43,Let:44,WithDynamicVars:45,InvokeComponent:46,HasBlock:48,HasBlockParams:49,Curry:50,Not:51,IfInline:52,GetDynamicVar:53,Log:54} -e.VariableResolutionContext={Strict:0,AmbiguousAppend:1,AmbiguousAppendInvoke:2,AmbiguousInvoke:3,ResolveAsCallHead:5,ResolveAsModifierHead:6,ResolveAsComponentHead:7},e.WellKnownAttrNames={class:0,id:1,value:2,name:3,type:4,style:5,href:6},e.WellKnownTagNames={div:0,span:1,p:2,a:3} +const t=e.SexpOpcodes={Append:1,TrustingAppend:2,Comment:3,Modifier:4,StrictModifier:5,Block:6,StrictBlock:7,Component:8,OpenElement:10,OpenElementWithSplat:11,FlushElement:12,CloseElement:13,StaticAttr:14,DynamicAttr:15,ComponentAttr:16,AttrSplat:17,Yield:18,DynamicArg:20,StaticArg:21,TrustingDynamicAttr:22,TrustingComponentAttr:23,StaticComponentAttr:24,Debugger:26,Undefined:27,Call:28,Concat:29,GetSymbol:30,GetLexicalSymbol:32,GetStrictKeyword:31,GetFreeAsComponentOrHelperHead:35,GetFreeAsHelperHead:37,GetFreeAsModifierHead:38,GetFreeAsComponentHead:39,InElement:40,If:41,Each:42,Let:44,WithDynamicVars:45,InvokeComponent:46,HasBlock:48,HasBlockParams:49,Curry:50,Not:51,IfInline:52,GetDynamicVar:53,Log:54} +e.VariableResolutionContext={Strict:0,ResolveAsComponentOrHelperHead:1,ResolveAsHelperHead:5,ResolveAsModifierHead:6,ResolveAsComponentHead:7},e.WellKnownAttrNames={class:0,id:1,value:2,name:3,type:4,style:5,href:6},e.WellKnownTagNames={div:0,span:1,p:2,a:3} function r(e){return function(t){return Array.isArray(t)&&t[0]===e}}e.isFlushElement=r(t.FlushElement) e.isGet=r(t.GetSymbol)})),e("@simple-dom/document",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){const e=new d(null,9,"#document",null,"http://www.w3.org/1999/xhtml"),t=new d(e,10,"html",null,"http://www.w3.org/1999/xhtml"),r=new d(e,1,"HTML",null,"http://www.w3.org/1999/xhtml"),n=new d(e,1,"HEAD",null,"http://www.w3.org/1999/xhtml"),i=new d(e,1,"BODY",null,"http://www.w3.org/1999/xhtml") @@ -2978,10 +2979,10 @@ else{let i=2,o=arguments[0],s=arguments[1],a=typeof s if("function"===a?(r=o,t=s):null!==o&&"string"===a&&s in o?(r=o,t=r[s]):"function"==typeof o&&(i=1,r=null,t=o),n>i){let t=n-i e=new Array(t) for(let r=0;r{F++,!1!==this._autorun&&(this._autorun=!1,this._autorunStack=null,this._end(!0))} let r=this.options._buildPlatform||i -this._platform=r(this._boundAutorunEnd)}get counters(){return{begin:_,end:O,events:{begin:w,end:0},autoruns:{created:I,completed:F},run:C,join:E,defer:k,schedule:T,scheduleIterable:S,deferOnce:R,scheduleOnce:P,setTimeout:x,later:A,throttle:M,debounce:N,cancelTimers:j,cancel:D,loops:{total:L,nested:B}}}get defaultQueue(){return this._defaultQueue}begin(){_++ +this._platform=r(this._boundAutorunEnd)}get counters(){return{begin:_,end:O,events:{begin:w,end:0},autoruns:{created:I,completed:F},run:E,join:C,defer:k,schedule:T,scheduleIterable:R,deferOnce:S,scheduleOnce:P,setTimeout:x,later:A,throttle:M,debounce:N,cancelTimers:D,cancel:j,loops:{total:L,nested:B}}}get defaultQueue(){return this._defaultQueue}begin(){_++ let e,t=this.options,r=this.currentInstance return!1!==this._autorun?(e=r,this._cancelAutorun()):(null!==r&&(B++,this.instanceStack.push(r)),L++,e=this.currentInstance=new h(this.queueNames,t),w++,this._trigger("begin",e,r)),this._onBegin(e,r),e}end(){O++,this._end(!1)}on(e,t){if("function"!=typeof t)throw new TypeError("Callback must be a function") let r=this._eventCallbacks[e] @@ -2990,15 +2991,15 @@ r.push(t)}off(e,t){let r=this._eventCallbacks[e] if(!e||void 0===r)throw new TypeError(`Cannot off() event ${e} because it does not exist`) let n=!1 if(t)for(let i=0;i0||this._autorun}cancel(e){if(D++,null==e)return!1 +this._timers.splice(u,0,o,e,t,r,n,i),this._timers.splice(a,6)}0===a&&this._reinstallTimerTimeout()}return e}cancelTimers(){D++,this._clearTimerTimeout(),this._timers=[],this._cancelAutorun()}hasTimers(){return this._timers.length>0||this._autorun}cancel(e){if(j++,null==e)return!1 let t=typeof e return"number"===t?this._cancelLaterTimer(e):!("object"!==t||!e.queue||!e.method)&&e.queue.cancel(e)}ensureInstance(){this._ensureInstance()}getDebugInfo(){if(this.DEBUG)return{autorun:this._autorunStack,counters:this.counters,timers:c(this._timers,6,2),instanceStack:[this.currentInstance,...this.instanceStack].map((e=>e&&e._getDebugInfo(this.DEBUG)))}}_end(e){let t=this.currentInstance,r=null if(null===t)throw new Error("end called without begin") @@ -3086,20 +3087,21 @@ function s(e,t){for(let r=0;re.length)&&(t=e.length) let r=new Array(t) for(let n=0;n(te.__emberTemplateCompiler&&(oe.precompile=ie.precompile=te.__emberTemplateCompiler.precompile,oe.compile=ie.compile=te.compileTemplate,Object.defineProperty(re,"HTMLBars",{configurable:!0,writable:!0,enumerable:!0,value:oe}),Object.defineProperty(re,"Handlebars",{configurable:!0,writable:!0,enumerable:!0,value:ie})),"Handlebars"===e?ie:oe)})}function ae(e){Object.defineProperty(re,e,{configurable:!0,enumerable:!0,get(){if(ee._impl){let{Test:t,Adapter:r,QUnitAdapter:n,setupForTesting:i}=ee._impl -return t.Adapter=r,t.QUnitAdapter=n,Object.defineProperty(re,"Test",{configurable:!0,writable:!0,enumerable:!0,value:t}),Object.defineProperty(re,"setupForTesting",{configurable:!0,writable:!0,enumerable:!0,value:i}),"Test"===e?t:i}}})}se("HTMLBars"),se("Handlebars"),ae("Test"),ae("setupForTesting"),(0,R.runLoadHooks)("Ember") +return t.Adapter=r,t.QUnitAdapter=n,Object.defineProperty(re,"Test",{configurable:!0,writable:!0,enumerable:!0,value:t}),Object.defineProperty(re,"setupForTesting",{configurable:!0,writable:!0,enumerable:!0,value:i}),"Test"===e?t:i}}})}se("HTMLBars"),se("Handlebars"),ae("Test"),ae("setupForTesting"),(0,S.runLoadHooks)("Ember") e.default=re})),e("ember/version",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default="5.7.0"})),e("route-recognizer",["exports"],(function(e){"use strict" +e.default="5.10.0-alpha.1+aa913464"})) +e("route-recognizer",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 var t=Object.create function r(){var e=t(null) @@ -3137,26 +3139,26 @@ return P.ENCODE_AND_DECODE_PATH_SEGMENTS?d(r):r},v[2]=function(e,t){return g(t,e var _=Object.freeze({}),O=Object.freeze([]) function w(e,t,r){t.length>0&&47===t.charCodeAt(0)&&(t=t.substr(1)) for(var n=t.split("/"),i=void 0,o=void 0,s=0;s2&&"[]"===o.slice(s-2)&&(a=!0,r[o=o.slice(0,s-2)]||(r[o]=[])),l=i[1]?R(i[1]):""),a?r[o].push(l):r[o]=l}return r},P.prototype.recognize=function(e){var t,r=[this.rootState],n={},i=!1,o=e.indexOf("#");-1!==o&&(e=e.substr(0,o)) +t.push(l)}else s+="="+encodeURIComponent(o),t.push(s)}}return 0===t.length?"":"?"+t.join("&")},P.prototype.parseQueryString=function(e){for(var t=e.split("&"),r={},n=0;n2&&"[]"===o.slice(s-2)&&(a=!0,r[o=o.slice(0,s-2)]||(r[o]=[])),l=i[1]?S(i[1]):""),a?r[o].push(l):r[o]=l}return r},P.prototype.recognize=function(e){var t,r=[this.rootState],n={},i=!1,o=e.indexOf("#");-1!==o&&(e=e.substr(0,o)) var s=e.indexOf("?") if(-1!==s){var a=e.substr(s+1,e.length) e=e.substr(0,s),n=this.parseQueryString(a)}"/"!==e.charAt(0)&&(e="/"+e) @@ -3187,15 +3189,14 @@ if(i!==l)return l-i}return i!==l?i-l:n!==a?a-n:0}))}(d) var f=d[0] return f&&f.handlers&&(i&&f.pattern&&"(.+)$"===f.pattern.slice(-5)&&(u+="/"),t=function(e,t,r){var n=e.handlers,i=e.regex() if(!i||!n)throw new Error("state not initialized") -var o=t.match(i),s=1,a=new S(r) +var o=t.match(i),s=1,a=new R(r) a.length=n.length for(var l=0;l{let{name:o,params:s,paramNames:a,context:l,route:u}=n,c=n -if(w.has(c)&&r){let e=w.get(c) +function E(e,t={},r={includeAttributes:!1,localizeMapUpdates:!1}){const n=new WeakMap +return e.map(((i,o)=>{let{name:s,params:a,paramNames:l,context:u,route:c}=i,p=i +if(w.has(p)&&r.includeAttributes){let e=w.get(p) e=function(e,t){let r={get metadata(){return k(e)}} if(!Object.isExtensible(t)||t.hasOwnProperty("metadata"))return Object.freeze(Object.assign({},t,r)) -return Object.assign(t,r)}(u,e) -let t=E(e,l) -return w.set(c,t),t}let p={find(t,r){let n,i=[] -3===t.length&&(i=e.map((e=>w.get(e)))) -for(let o=0;e.length>o;o++)if(n=w.get(e[o]),t.call(r,n,o,i))return n},get name(){return o},get paramNames(){return a},get metadata(){return k(n.route)},get parent(){let t=e[i-1] -return void 0===t?null:w.get(t)},get child(){let t=e[i+1] -return void 0===t?null:w.get(t)},get localName(){let e=this.name.split(".") -return e[e.length-1]},get params(){return s},get queryParams(){return t}} -return r&&(p=E(p,l)),w.set(n,p),p}))}function E(e,t){let r={get attributes(){return t}} +return Object.assign(t,r)}(c,e) +let t=C(e,u) +return n.set(p,e),r.localizeMapUpdates||w.set(p,t),t}const d=r.localizeMapUpdates?n:w +let h={find(t,r){let n,i=[] +3===t.length&&(i=e.map((e=>d.get(e)))) +for(let o=0;e.length>o;o++)if(n=d.get(e[o]),t.call(r,n,o,i))return n},get name(){return s},get paramNames(){return l},get metadata(){return k(i.route)},get parent(){let t=e[o-1] +return void 0===t?null:d.get(t)},get child(){let t=e[o+1] +return void 0===t?null:d.get(t)},get localName(){let e=this.name.split(".") +return e[e.length-1]},get params(){return a},get queryParams(){return t}} +return r.includeAttributes&&(h=C(h,u)),n.set(i,h),r.localizeMapUpdates||w.set(i,h),h}))}function C(e,t){let r={get attributes(){return t}} return!Object.isExtensible(e)||e.hasOwnProperty("attributes")?Object.freeze(Object.assign({},e,r)):Object.assign(e,r)}function k(e){return null!=e&&void 0!==e.buildRouteInfoMetadata?e.buildRouteInfoMetadata():null}class T{constructor(e,t,r,n){this._routePromise=void 0,this._route=null,this.params={},this.isResolved=!1,this.name=t,this.paramNames=r,this.router=e,n&&this._processRoute(n)}getModel(e){return r.Promise.resolve(this.context)}serialize(e){return this.params||{}}resolve(e){return r.Promise.resolve(this.routePromise).then((t=>(i(e),t))).then((()=>this.runBeforeModelHook(e))).then((()=>i(e))).then((()=>this.getModel(e))).then((t=>(i(e),t))).then((t=>this.runAfterModelHook(e,t))).then((t=>this.becomeResolved(e,t)))}becomeResolved(e,t){let r,n=this.serialize(t) e&&(this.stashResolvedModel(e,t),e[b]=e[b]||{},e[b][this.name]=n) let i=t===this.context !("context"in this)&&i||(r=t) -let o=w.get(this),s=new S(this.router,this.name,this.paramNames,n,this.route,r) +let o=w.get(this),s=new R(this.router,this.name,this.paramNames,n,this.route,r) return void 0!==o&&w.set(s,o),s}shouldSupersede(e){if(!e)return!0 let t=e.context===this.context return e.name!==this.name||"context"in this&&!t||this.hasOwnProperty("params")&&!function(e,t){if(e===t)return!0 @@ -3257,7 +3260,7 @@ var o return this.stashResolvedModel(e,t),void 0!==this.route&&void 0!==this.route.afterModel&&(n=this.route.afterModel(t,e)),n=O(o=n)?null:o,r.Promise.resolve(n).then((()=>e.resolvedModels[i]))}stashResolvedModel(e,t){e.resolvedModels=e.resolvedModels||{},e.resolvedModels[this.name]=t}fetchRoute(){let e=this.router.getRoute(this.name) return this._processRoute(e)}_processRoute(e){return this.routePromise=r.Promise.resolve(e),null!==(t=e)&&"object"==typeof t&&"function"==typeof t.then?(this.routePromise=this.routePromise.then((e=>this.updateRoute(e))),this.route=void 0):e?this.updateRoute(e):void 0 var t}}e.InternalRouteInfo=T -class S extends T{constructor(e,t,r,n,i,o){super(e,t,r,i),this.params=n,this.isResolved=!0,this.context=o}resolve(e){return e&&e.resolvedModels&&(e.resolvedModels[this.name]=this.context),r.Promise.resolve(this)}}class R extends T{constructor(e,t,r,n,i){super(e,t,r,i),this.params={},n&&(this.params=n)}getModel(e){let t=this.params +class R extends T{constructor(e,t,r,n,i,o){super(e,t,r,i),this.params=n,this.isResolved=!0,this.context=o}resolve(e){return e&&e.resolvedModels&&(e.resolvedModels[this.name]=this.context),r.Promise.resolve(this)}}class S extends T{constructor(e,t,r,n,i){super(e,t,r,i),this.params={},n&&(this.params=n)}getModel(e){let t=this.params e&&e[y]&&(t={},a(t,this.params),t.queryParams=e[y]) let n,i=this.route return i.deserialize?n=i.deserialize(t,e):i.model&&(n=i.model(t,e)),n&&O(n)&&(n=void 0),r.Promise.resolve(n)}}class P extends T{constructor(e,t,r,n){super(e,t,r),this.context=n,this.serializer=this.router.getSerializer(t)}getModel(e){return void 0!==this.router.log&&this.router.log(this.name+": resolving provided model"),super.getModel(e)}serialize(e){let{paramNames:t,context:r}=this @@ -3269,25 +3272,25 @@ if(void 0!==this.route&&this.route.serialize)return this.route.serialize(e,t) if(1!==t.length)return let i=t[0] return/_id$/.test(i)?n[i]=e.id:n[i]=e,n}}class x{constructor(e,t={}){this.router=e,this.data=t}}function A(e,t,r){let n=e.routeInfos,i=t.resolveIndex>=n.length?n.length-1:t.resolveIndex,o=t.isAborted -throw new D(r,e.routeInfos[i].route,o,e)}function M(e,t){if(t.resolveIndex===e.routeInfos.length)return +throw new j(r,e.routeInfos[i].route,o,e)}function M(e,t){if(t.resolveIndex===e.routeInfos.length)return let r=e.routeInfos[t.resolveIndex],n=N.bind(null,e,t) return r.resolve(t).then(n,null,e.promiseLabel("Proceed"))}function N(e,t,r){let n=e.routeInfos[t.resolveIndex].isResolved if(e.routeInfos[t.resolveIndex++]=r,!n){let{route:e}=r -void 0!==e&&e.redirect&&e.redirect(r.context,t)}return i(t),M(e,t)}class j{constructor(){this.routeInfos=[],this.queryParams={},this.params={}}promiseLabel(e){let t="" +void 0!==e&&e.redirect&&e.redirect(r.context,t)}return i(t),M(e,t)}class D{constructor(){this.routeInfos=[],this.queryParams={},this.params={}}promiseLabel(e){let t="" return d(this.routeInfos,(function(e){return""!==t&&(t+="."),t+=e.name,!0})),m("'"+t+"': "+e)}resolve(e){let t=this.params d(this.routeInfos,(e=>(t[e.name]=e.params||{},!0))),e.resolveIndex=0 let n=M.bind(null,this,e),i=A.bind(null,this,e) -return r.Promise.resolve(null,this.promiseLabel("Start transition")).then(n,null,this.promiseLabel("Resolve route")).catch(i,this.promiseLabel("Handle error")).then((()=>this))}}e.TransitionState=j -class D{constructor(e,t,r,n){this.error=e,this.route=t,this.wasAborted=r,this.state=n}}e.TransitionError=D +return r.Promise.resolve(null,this.promiseLabel("Start transition")).then(n,null,this.promiseLabel("Resolve route")).catch(i,this.promiseLabel("Handle error")).then((()=>this))}}e.TransitionState=D +class j{constructor(e,t,r,n){this.error=e,this.route=t,this.wasAborted=r,this.state=n}}e.TransitionError=j class I extends x{constructor(e,t,r,n=[],i={},o){super(e,o),this.preTransitionState=void 0,this.name=t,this.pivotHandler=r,this.contexts=n,this.queryParams=i}applyToState(e,t){let r=this.router.recognizer.handlersFor(this.name),n=r[r.length-1].handler -return this.applyToHandlers(e,r,n,t,!1)}applyToHandlers(e,t,r,n,i){let o,s,l=new j,u=this.contexts.slice(0),c=t.length +return this.applyToHandlers(e,r,n,t,!1)}applyToHandlers(e,t,r,n,i){let o,s,l=new D,u=this.contexts.slice(0),c=t.length if(this.pivotHandler)for(o=0,s=t.length;o=0;--o){let s=t[o],a=s.handler,p=e.routeInfos[o],d=null if(d=s.names.length>0?o>=c?this.createParamHandlerInfo(a,s.names,u,p):this.getHandlerInfoForDynamicSegment(a,s.names,u,p,r,o):this.createParamHandlerInfo(a,s.names,u,p),i){d=d.becomeResolved(null,d.context) let e=p&&p.context s.names.length>0&&void 0!==p.context&&d.context===e&&(d.params=p&&p.params),d.context=e}let h=p;(o>=c||d.shouldSupersede(p))&&(c=Math.min(o,c),h=d),n&&!i&&(h=h.becomeResolved(null,h.context)),l.routeInfos.unshift(h)}if(u.length>0)throw new Error("More context objects were passed than there are dynamic segments for the route: "+r) return n||this.invalidateChildren(l.routeInfos,c),a(l.queryParams,this.queryParams||{}),n&&e.queryParams&&a(l.queryParams,e.queryParams),l}invalidateChildren(e,t){for(let r=t,n=e.length;r0){if(s=r[r.length-1],p(s))return this.createParamHandlerInfo(e,t,r,n) r.pop()}else{if(n&&n.name===e)return n if(!this.preTransitionState)return n @@ -3295,15 +3298,15 @@ if(!this.preTransitionState)return n s=null==e?void 0:e.context}}return new P(this.router,e,t,s)}createParamHandlerInfo(e,t,r,n){let i={},o=t.length,s=[] for(;o--;){let a=n&&e===n.name&&n.params||{},l=r[r.length-1],u=t[o] p(l)?i[u]=""+r.pop():a.hasOwnProperty(u)?i[u]=a[u]:s.push(u)}if(s.length>0)throw new Error(`You didn't provide enough string/numeric parameters to satisfy all of the dynamic segments for route ${e}. Missing params: ${s}`) -return new R(this.router,e,t,i)}}const F=function(){function e(t){let r=Error.call(this,t) +return new S(this.router,e,t,i)}}const F=function(){function e(t){let r=Error.call(this,t) this.name="UnrecognizedURLError",this.message=t||"UnrecognizedURL",Error.captureStackTrace?Error.captureStackTrace(this,e):this.stack=r.stack}return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}() -class L extends x{constructor(e,t,r){super(e,r),this.url=t,this.preTransitionState=void 0}applyToState(e){let t,r,n=new j,i=this.router.recognizer.recognize(this.url) +class L extends x{constructor(e,t,r){super(e,r),this.url=t,this.preTransitionState=void 0}applyToState(e){let t,r,n=new D,i=this.router.recognizer.recognize(this.url) if(!i)throw new F(this.url) let o=!1,s=this.url function l(e){if(e&&e.inaccessibleByURL)throw new F(s) return e}for(t=0,r=i.length;t(e.isAborted||(this._updateURL(e,r),this.didTransition(this.currentRouteInfos),this.toInfos(e,n.routeInfos,!0),this.routeDidChange(e)),t)),null,m("Transition complete")),e}}transitionByIntent(e,t){try{return this.getTransitionByIntent(e,t)}catch(r){return new v(this,e,void 0,r,void 0)}}recognize(e){let t=new L(this,e),r=this.generateNewState(t) if(null===r)return r -let n=C(r.routeInfos,r.queryParams) +let n=E(r.routeInfos,r.queryParams,{includeAttributes:!1,localizeMapUpdates:!0}) return n[n.length-1]}recognizeAndLoad(e){let t=new L(this,e),n=this.generateNewState(t) if(null===n)return r.Promise.reject(`URL ${e} was not recognized`) let i=new v(this,t,n,void 0) -return i.then((()=>{let e=C(n.routeInfos,i[y],!0) +return i.then((()=>{let e=E(n.routeInfos,i[y],{includeAttributes:!0,localizeMapUpdates:!1}) return e[e.length-1]}))}generateNewState(e){try{return e.applyToState(this.state,!1)}catch(t){return null}}getTransitionByIntent(e,t){let r,n=!!this.activeTransition,i=n?this.activeTransition[g]:this.state,o=e.applyToState(i,t),s=h(i.queryParams,o.queryParams) if(B(o.routeInfos,i.routeInfos)){if(s){let e=this.queryParamsTransition(s,n,i,o) return e.queryParamsOnly=!0,e}return this.activeTransition||new v(this,void 0,void 0)}if(t){let e=new v(this,void 0,o) @@ -3358,12 +3361,12 @@ this.triggerEvent(e,!0,"finalizeQueryParamChange",[t,n,r]),r&&(r._visibleQueryPa let i={} for(let o=0,s=n.length;o0){let r=C(t,Object.assign({},this._lastQueryParams),!0) -e.from=r[r.length-1]||null}}toInfos(e,t,r=!1){if(void 0!==e&&t.length>0){let n=C(t,Object.assign({},e[y]),r) +this.fromInfos(e,r),this.toInfos(e,t.routeInfos),this._lastQueryParams=t.queryParams}fromInfos(e,t){if(void 0!==e&&t.length>0){let r=E(t,Object.assign({},this._lastQueryParams),{includeAttributes:!0,localizeMapUpdates:!1}) +e.from=r[r.length-1]||null}}toInfos(e,t,r=!1){if(void 0!==e&&t.length>0){let n=E(t,Object.assign({},e[y]),{includeAttributes:r,localizeMapUpdates:!1}) e.to=n[n.length-1]||null}}notifyExistingHandlers(e,t){let r,n,i,o,s=this.state.routeInfos for(n=s.length,r=0;r_(o,s,r,l)))}return s}class w{constructor(e,t,r,n){this._instanceConstructor=e,this.promise=new e(u,n),this._abortOnReject=r,this._isUsingOwnPromise=e===S,this._isUsingOwnResolve=e.resolve===l,this._init(...arguments)}_init(e,t){let r=t.length||0 +i.async((()=>_(o,s,r,l)))}return s}class w{constructor(e,t,r,n){this._instanceConstructor=e,this.promise=new e(u,n),this._abortOnReject=r,this._isUsingOwnPromise=e===R,this._isUsingOwnResolve=e.resolve===l,this._init(...arguments)}_init(e,t){let r=t.length||0 this.length=r,this._remaining=r,this._result=new Array(r),this._enumerate(t)}_enumerate(e){let t=this.length,r=this.promise for(let n=0;r._state===c&&nt(e))),t,r)}else this._willSettleAt(n.resolve(e),t,r)}_eachEntry(e,t,r){null!==e&&"object"==typeof e?this._settleMaybeThenable(e,t,r):this._setResultAt(p,t,e,r)}_settledAt(e,t,r,n){let i=this.promise -i._state===c&&(this._abortOnReject&&e===d?b(i,r):(this._setResultAt(e,t,r,n),this._checkFullfillment()))}_setResultAt(e,t,r,n){this._remaining--,this._result[t]=r}_willSettleAt(e,t,r){y(e,void 0,(e=>this._settledAt(p,t,e,r)),(e=>this._settledAt(d,t,e,r)))}}function C(e,t,r){this._remaining--,this._result[t]=e===p?{state:"fulfilled",value:r}:{state:"rejected",reason:r}}const E="rsvp_"+Date.now()+"-" +i._state===c&&(this._abortOnReject&&e===d?b(i,r):(this._setResultAt(e,t,r,n),this._checkFullfillment()))}_setResultAt(e,t,r,n){this._remaining--,this._result[t]=r}_willSettleAt(e,t,r){y(e,void 0,(e=>this._settledAt(p,t,e,r)),(e=>this._settledAt(d,t,e,r)))}}function E(e,t,r){this._remaining--,this._result[t]=e===p?{state:"fulfilled",value:r}:{state:"rejected",reason:r}}const C="rsvp_"+Date.now()+"-" let k=0 let T=class e{constructor(t,r){this._id=k++,this._label=r,this._state=void 0,this._result=void 0,this._subscribers=[],i.instrument&&a("created",this),u!==t&&("function"!=typeof t&&function(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}(),this instanceof e?function(e,t){let r=!1 try{t((t=>{r||(r=!0,f(e,t))}),(t=>{r||(r=!0,b(e,t))}))}catch(n){b(e,n)}}(this,t):function(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}())}_onError(e){i.after((()=>{this._onError&&i.trigger("error",e,this._label)}))}catch(e,t){return this.then(void 0,e,t)}finally(e,t){let r=this,n=r.constructor @@ -3435,36 +3438,36 @@ T.cast=l,T.all=function(e,t){return Array.isArray(e)?new w(this,e,!0,t).promise: if(!Array.isArray(e))return b(n,new TypeError("Promise.race must be called with an array")),n for(let i=0;n._state===c&&if(n,e)),(e=>b(n,e))) return n},T.resolve=l,T.reject=function(e,t){let r=new this(u,t) -return b(r,e),r},T.prototype._guidKey=E,T.prototype.then=O -var S=e.Promise=T -function R(e,t){return{then:(r,n)=>e.call(t,r,n)}}function P(e,t){let r=function(){let r=arguments.length,n=new Array(r+1),i=!1 +return b(r,e),r},T.prototype._guidKey=C,T.prototype.then=O +var R=e.Promise=T +function S(e,t){return{then:(r,n)=>e.call(t,r,n)}}function P(e,t){let r=function(){let r=arguments.length,n=new Array(r+1),i=!1 for(let e=0;ex(e,t,r,n)))}(o,n,e,this):x(o,n,e,this)} -return r.__proto__=e,r}function x(e,t,r,n){try{r.apply(n,t)}catch(i){b(e,i)}return e}function A(e,t){return S.all(e,t)}class M extends w{constructor(e,t,r){super(e,t,!1,r)}}function N(e,t){return Array.isArray(e)?new M(S,e,t).promise:S.reject(new TypeError("Promise.allSettled must be called with an array"),t)}function j(e,t){return S.race(e,t)}M.prototype._setResultAt=C -class D extends w{constructor(e,t,r=!0,n){super(e,t,r,n)}_init(e,t){this._result={},this._enumerate(t)}_enumerate(e){let t,r,n=Object.keys(e),i=n.length,o=this.promise +return r}(arguments,t)):f(o,r)},i?function(e,t,r,n){return R.all(t).then((t=>x(e,t,r,n)))}(o,n,e,this):x(o,n,e,this)} +return r.__proto__=e,r}function x(e,t,r,n){try{r.apply(n,t)}catch(i){b(e,i)}return e}function A(e,t){return R.all(e,t)}class M extends w{constructor(e,t,r){super(e,t,!1,r)}}function N(e,t){return Array.isArray(e)?new M(R,e,t).promise:R.reject(new TypeError("Promise.allSettled must be called with an array"),t)}function D(e,t){return R.race(e,t)}M.prototype._setResultAt=E +class j extends w{constructor(e,t,r=!0,n){super(e,t,r,n)}_init(e,t){this._result={},this._enumerate(t)}_enumerate(e){let t,r,n=Object.keys(e),i=n.length,o=this.promise this._remaining=i for(let s=0;o._state===c&&s{throw e})),e}function U(e){let t={resolve:void 0,reject:void 0} -return t.promise=new S(((e,r)=>{t.resolve=e,t.reject=r}),e),t}F.prototype._setResultAt=C +this._checkFullfillment()}}function I(e,t){return R.resolve(e,t).then((function(e){if(null===e||"object"!=typeof e)throw new TypeError("Promise.hash must be called with an object") +return new j(R,e,t).promise}))}class F extends j{constructor(e,t,r){super(e,t,!1,r)}}function L(e,t){return R.resolve(e,t).then((function(e){if(null===e||"object"!=typeof e)throw new TypeError("hashSettled must be called with an object") +return new F(R,e,!1,t).promise}))}function B(e){throw setTimeout((()=>{throw e})),e}function U(e){let t={resolve:void 0,reject:void 0} +return t.promise=new R(((e,r)=>{t.resolve=e,t.reject=r}),e),t}F.prototype._setResultAt=E class H extends w{constructor(e,t,r,n){super(e,t,!0,n,r)}_init(e,t,r,n,i){let o=t.length||0 -this.length=o,this._remaining=o,this._result=new Array(o),this._mapFn=i,this._enumerate(t)}_setResultAt(e,t,r,n){if(n)try{this._eachEntry(this._mapFn(r,t),t,!1)}catch(i){this._settledAt(d,t,i,!1)}else this._remaining--,this._result[t]=r}}function $(e,t,r){return"function"!=typeof t?S.reject(new TypeError("map expects a function as a second argument"),r):S.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("map must be called with an array") -return new H(S,e,t,r).promise}))}function V(e,t){return S.resolve(e,t)}function z(e,t){return S.reject(e,t)}const q={} +this.length=o,this._remaining=o,this._result=new Array(o),this._mapFn=i,this._enumerate(t)}_setResultAt(e,t,r,n){if(n)try{this._eachEntry(this._mapFn(r,t),t,!1)}catch(i){this._settledAt(d,t,i,!1)}else this._remaining--,this._result[t]=r}}function $(e,t,r){return"function"!=typeof t?R.reject(new TypeError("map expects a function as a second argument"),r):R.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("map must be called with an array") +return new H(R,e,t,r).promise}))}function V(e,t){return R.resolve(e,t)}function z(e,t){return R.reject(e,t)}const q={} class G extends H{_checkFullfillment(){if(0===this._remaining&&null!==this._result){let e=this._result.filter((e=>e!==q)) g(this.promise,e),this._result=null}}_setResultAt(e,t,r,n){if(n){this._result[t]=r let e,n=!0 -try{e=this._mapFn(r,t)}catch(i){n=!1,this._settledAt(d,t,i,!1)}n&&this._eachEntry(e,t,!1)}else this._remaining--,r||(this._result[t]=q)}}function W(e,t,r){return"function"!=typeof t?S.reject(new TypeError("filter expects function as a second argument"),r):S.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("filter must be called with an array") -return new G(S,e,t,r).promise}))}let Y,Q=0 +try{e=this._mapFn(r,t)}catch(i){n=!1,this._settledAt(d,t,i,!1)}n&&this._eachEntry(e,t,!1)}else this._remaining--,r||(this._result[t]=q)}}function W(e,t,r){return"function"!=typeof t?R.reject(new TypeError("filter expects function as a second argument"),r):R.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("filter must be called with an array") +return new G(R,e,t,r).promise}))}let Y,Q=0 function K(e,t){ne[Q]=e,ne[Q+1]=t,Q+=2,2===Q&&oe()}const J="undefined"!=typeof window?window:void 0,X=J||{},Z=X.MutationObserver||X.WebKitMutationObserver,ee="undefined"==typeof self&&"undefined"!=typeof process&&"[object process]"==={}.toString.call(process),te="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel function re(){return()=>setTimeout(ie,1)}const ne=new Array(1e3) function ie(){for(let e=0;ei.async(e,t) function le(){i.on(...arguments)}function ue(){i.off(...arguments)}if(e.async=ae,"undefined"!=typeof window&&"object"==typeof window.__PROMISE_INSTRUMENTATION__){let e=window.__PROMISE_INSTRUMENTATION__ o("instrument",!0) -for(let t in e)e.hasOwnProperty(t)&&le(t,e[t])}e.default={asap:K,cast:se,Promise:S,EventTarget:n,all:A,allSettled:N,race:j,hash:I,hashSettled:L,rethrow:B,defer:U,denodeify:P,configure:o,on:le,off:ue,resolve:V,reject:z,map:$,async:ae,filter:W}})),"object"==typeof module&&"function"==typeof module.require&&(module.exports=t("ember").default)}(),"undefined"==typeof FastBoot){var preferNative=!1;(function(e){define("fetch",["exports","ember","rsvp"],(function(t,r,n){"use strict" +for(let t in e)e.hasOwnProperty(t)&&le(t,e[t])}e.default={asap:K,cast:se,Promise:R,EventTarget:n,all:A,allSettled:N,race:D,hash:I,hashSettled:L,rethrow:B,defer:U,denodeify:P,configure:o,on:le,off:ue,resolve:V,reject:z,map:$,async:ae,filter:W}})),"object"==typeof module&&"function"==typeof module.require&&(module.exports=t("ember").default)}(),"undefined"==typeof FastBoot){var preferNative=!1;(function(e){define("fetch",["exports","ember","rsvp"],(function(t,r,n){"use strict" var i="default"in r?r.default:r,o=("default"in n?n.default:n).Promise,s=["FormData","FileReader","Blob","URLSearchParams","Symbol","ArrayBuffer"],a=s preferNative&&(a=s.concat(["fetch","Headers","Request","Response","AbortController"])),a.forEach((function(r){e[r]&&Object.defineProperty(t,r,{configurable:!0,get:function(){return e[r]},set:function(t){e[r]=t}})})) var l=t,u=t;(function(){class e{constructor(){Object.defineProperty(this,"listeners",{value:{},writable:!0,configurable:!0})}addEventListener(e,t,r){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push({callback:t,options:r})}removeEventListener(e,t){if(!(e in this.listeners))return @@ -3510,7 +3513,7 @@ if(this._bodyBlob)return e=this._bodyBlob,t=new FileReader,r=b(t),n=/charset=([A if(this._bodyArrayBuffer)return o.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?i:n),this.mode=r.mode||this.mode||null,this.signal=r.signal||this.signal||function(){if("AbortController"in t)return(new AbortController).signal}(),this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests") if(this._initBody(o),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==r.cache&&"no-cache"!==r.cache)){var s=/([?&])_=[^&]*/ if(s.test(this.url))this.url=this.url.replace(s,"$1_="+(new Date).getTime()) -else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function C(e){var t=new FormData +else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function E(e){var t=new FormData return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ") -t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function E(e,t){if(!(this instanceof E))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.') +t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function C(e,t){if(!(this instanceof C))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.') if(t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].") -this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new m(t.headers),this.url=t.url||"",this._initBody(e)}w.prototype.clone=function(){return new w(this,{body:this._bodyInit})},_.call(w.prototype),_.call(E.prototype),E.prototype.clone=function(){return new E(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},E.error=function(){var e=new E(null,{status:200,statusText:""}) +this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new m(t.headers),this.url=t.url||"",this._initBody(e)}w.prototype.clone=function(){return new w(this,{body:this._bodyInit})},_.call(w.prototype),_.call(C.prototype),C.prototype.clone=function(){return new C(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},C.error=function(){var e=new C(null,{status:200,statusText:""}) return e.ok=!1,e.status=0,e.type="error",e} var k=[301,302,303,307,308] -E.redirect=function(e,t){if(-1===k.indexOf(t))throw new RangeError("Invalid status code") -return new E(null,{status:t,headers:{location:e}})},e.DOMException=t.DOMException -try{new e.DOMException}catch(S){e.DOMException=function(e,t){this.message=e,this.name=t +C.redirect=function(e,t){if(-1===k.indexOf(t))throw new RangeError("Invalid status code") +return new C(null,{status:t,headers:{location:e}})},e.DOMException=t.DOMException +try{new e.DOMException}catch(R){e.DOMException=function(e,t){this.message=e,this.name=t var r=Error(e) this.stack=r.stack},e.DOMException.prototype=Object.create(Error.prototype),e.DOMException.prototype.constructor=e.DOMException}function T(r,n){return new o((function(o,s){var l=new w(r,n) if(l.signal&&l.signal.aborted)return s(new e.DOMException("Aborted","AbortError")) @@ -3543,9 +3546,9 @@ if(n){var i=r.join(":").trim() try{t.append(n,i)}catch(o){console.warn("Response "+o.message)}}})),t)} 0===l.url.indexOf("file://")&&(u.status<200||u.status>599)?r.status=200:r.status=u.status,r.url="responseURL"in u?u.responseURL:r.headers.get("X-Request-URL") var n="response"in u?u.response:u.responseText -setTimeout((function(){o(new E(n,r))}),0)},u.onerror=function(){setTimeout((function(){s(new TypeError("Network request failed"))}),0)},u.ontimeout=function(){setTimeout((function(){s(new TypeError("Network request timed out"))}),0)},u.onabort=function(){setTimeout((function(){s(new e.DOMException("Aborted","AbortError"))}),0)},u.open(l.method,function(e){try{return""===e&&t.location.href?t.location.href:e}catch(r){return e}}(l.url),!0),"include"===l.credentials?u.withCredentials=!0:"omit"===l.credentials&&(u.withCredentials=!1),"responseType"in u&&(i?u.responseType="blob":a&&(u.responseType="arraybuffer")),n&&"object"==typeof n.headers&&!(n.headers instanceof m||t.Headers&&n.headers instanceof t.Headers)){var p=[] +setTimeout((function(){o(new C(n,r))}),0)},u.onerror=function(){setTimeout((function(){s(new TypeError("Network request failed"))}),0)},u.ontimeout=function(){setTimeout((function(){s(new TypeError("Network request timed out"))}),0)},u.onabort=function(){setTimeout((function(){s(new e.DOMException("Aborted","AbortError"))}),0)},u.open(l.method,function(e){try{return""===e&&t.location.href?t.location.href:e}catch(r){return e}}(l.url),!0),"include"===l.credentials?u.withCredentials=!0:"omit"===l.credentials&&(u.withCredentials=!1),"responseType"in u&&(i?u.responseType="blob":a&&(u.responseType="arraybuffer")),n&&"object"==typeof n.headers&&!(n.headers instanceof m||t.Headers&&n.headers instanceof t.Headers)){var p=[] Object.getOwnPropertyNames(n.headers).forEach((function(e){p.push(d(e)),u.setRequestHeader(e,h(n.headers[e]))})),l.headers.forEach((function(e,t){-1===p.indexOf(t)&&u.setRequestHeader(t,e)}))}else l.headers.forEach((function(e,t){u.setRequestHeader(t,e)})) -l.signal&&(l.signal.addEventListener("abort",c),u.onreadystatechange=function(){4===u.readyState&&l.signal.removeEventListener("abort",c)}),u.send(void 0===l._bodyInit?null:l._bodyInit)}))}T.polyfill=!0,t.fetch||(t.fetch=T,t.Headers=m,t.Request=w,t.Response=E),e.Headers=m,e.Request=w,e.Response=E,e.fetch=T})({}) +l.signal&&(l.signal.addEventListener("abort",c),u.onreadystatechange=function(){4===u.readyState&&l.signal.removeEventListener("abort",c)}),u.send(void 0===l._bodyInit?null:l._bodyInit)}))}T.polyfill=!0,t.fetch||(t.fetch=T,t.Headers=m,t.Request=w,t.Response=C),e.Headers=m,e.Request=w,e.Response=C,e.fetch=T})({}) if(!l.fetch)throw new Error("fetch is not defined - maybe your browser targets are not covering everything you need?") var c=0 function p(e){return c--,e}i.Test?(i.Test.registerWaiter((function(){return 0===c})),t.default=function(){return c++,t.fetch.apply(e,arguments).then((function(e){return e.clone().blob().then(p,p),e}),(function(e){throw p(e),e}))}):t.default=t.fetch,s.forEach((function(e){delete t[e]}))}))})("undefined"!=typeof window&&window||"undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||"undefined"!=typeof global&&global)}define("@ember/string/cache",["exports"],(function(e){"use strict" @@ -3598,19 +3601,18 @@ const n={packages:{},global:{}} let i="undefined"!=typeof window?window._embroider_macros_runtime_config:void 0 if(i){let e={config:t,getGlobalConfig:r,setConfig(e,t){n.packages[e]=t},setGlobalConfig(e,t){n.global[e]=t}} for(let t of i)t(e)}})),define("@glimmer/component/-private/base-component-manager",["exports","@glimmer/component/-private/component"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return class{static create(e){return new this(t(e))}constructor(t){var n,i,o -n=this,o=r,(i=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return class{static create(e){return new this(t(e))}constructor(t){(function(e,t,r){(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e var r=e[Symbol.toPrimitive] if(void 0!==r){var n=r.call(e,t||"default") if("object"!=typeof n)return n throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(i="capabilities"))in n?Object.defineProperty(n,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[i]=o,e(this,t)}createComponent(e,r){return new e(t(this),r.named)}getContext(e){return e}}}})),define("@glimmer/component/-private/component",["exports","@glimmer/component/-private/owner","@glimmer/component/-private/destroyables"],(function(e,t,r){"use strict" -function n(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})(this,"capabilities",r),e(this,t)}createComponent(e,r){return new e(t(this),r.named)}getContext(e){return e}}}})),define("@glimmer/component/-private/component",["exports","@glimmer/component/-private/owner","@glimmer/component/-private/destroyables"],(function(e,t,r){"use strict" +function n(e,t,r){var n +return(t="symbol"==typeof(n=function(e,t){if("object"!=typeof e||!e)return e var r=e[Symbol.toPrimitive] if(void 0!==r){var n=r.call(e,t||"default") if("object"!=typeof n)return n -throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ARGS_SET=void 0 +throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"))?n:n+"")in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ARGS_SET=void 0 e.ARGS_SET=void 0 e.default=class{constructor(e,r){n(this,"args",void 0),this.args=r,(0,t.setOwner)(this,e)}get isDestroying(){return(0,r.isDestroying)(this)}get isDestroyed(){return(0,r.isDestroyed)(this)}willDestroy(){}}})),define("@glimmer/component/-private/destroyables",["exports","ember"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.isDestroying=e.isDestroyed=void 0 diff --git a/ember/ember-5.6.0.template-compiler.js b/ember/ember-git-04-aa913464.template-compiler.js similarity index 88% rename from ember/ember-5.6.0.template-compiler.js rename to ember/ember-git-04-aa913464.template-compiler.js index 5012d44..c08f84e 100644 --- a/ember/ember-5.6.0.template-compiler.js +++ b/ember/ember-git-04-aa913464.template-compiler.js @@ -6,7 +6,7 @@ * Portions Copyright 2008-2011 Apple Inc. All rights reserved. * @license Licensed under MIT license * See https://raw.github.com/emberjs/ember.js/master/LICENSE - * @version 5.6.0 + * @version 5.10.0-alpha.1+aa913464 */ /* eslint-disable no-var */ @@ -222,30 +222,6 @@ define("@ember/-internals/environment/index", ["exports"], function (_exports) { LOG_VERSION: true, RAISE_ON_DEPRECATION: false, STRUCTURED_PROFILE: false, - /** - Whether to insert a `
` wrapper around the - application template. See RFC #280. - This is not intended to be set directly, as the implementation may change in - the future. Use `@ember/optional-features` instead. - @property _APPLICATION_TEMPLATE_WRAPPER - @for EmberENV - @type Boolean - @default true - @private - */ - _APPLICATION_TEMPLATE_WRAPPER: true, - /** - Whether to use Glimmer Component semantics (as opposed to the classic "Curly" - components semantics) for template-only components. See RFC #278. - This is not intended to be set directly, as the implementation may change in - the future. Use `@ember/optional-features` instead. - @property _TEMPLATE_ONLY_GLIMMER_COMPONENTS - @for EmberENV - @type Boolean - @default false - @private - */ - _TEMPLATE_ONLY_GLIMMER_COMPONENTS: false, /** Whether to perform extra bookkeeping needed to make the `captureRenderTree` API work. @@ -270,6 +246,28 @@ define("@ember/-internals/environment/index", ["exports"], function (_exports) { @private */ _DEBUG_RENDER_TREE: true /* DEBUG */, + /** + Whether to force all deprecations to be enabled. This is used internally by + Ember to enable deprecations in tests. It is not intended to be set in + projects. + @property _ALL_DEPRECATIONS_ENABLED + @for EmberENV + @type Boolean + @default false + @private + */ + _ALL_DEPRECATIONS_ENABLED: false, + /** + Override the version of ember-source used to determine when deprecations "break". + This is used internally by Ember to test with deprecated features "removed". + This is never intended to be set by projects. + @property _OVERRIDE_DEPRECATION_VERSION + @for EmberENV + @type string | null + @default null + @private + */ + _OVERRIDE_DEPRECATION_VERSION: null, /** Whether the app defaults to using async observers. This is not intended to be set directly, as the implementation may change in @@ -281,6 +279,19 @@ define("@ember/-internals/environment/index", ["exports"], function (_exports) { @private */ _DEFAULT_ASYNC_OBSERVERS: false, + /** + Whether the app still has default record-loading behavior in the model + hook from RFC https://rfcs.emberjs.com/id/0774-implicit-record-route-loading + This will also remove the default store property from the route. + This is not intended to be set directly, as the implementation may change in + the future. Use `@ember/optional-features` instead. + @property _NO_IMPLICIT_ROUTE_MODEL + @for EmberENV + @type Boolean + @default false + @private + */ + _NO_IMPLICIT_ROUTE_MODEL: false, /** Controls the maximum number of scheduled rerenders without "settling". In general, applications should not need to modify this environment variable, but please @@ -304,6 +315,8 @@ define("@ember/-internals/environment/index", ["exports"], function (_exports) { ENV[flag] = EmberENV[flag] !== false; } else if (defaultValue === false) { ENV[flag] = EmberENV[flag] === true; + } else { + ENV[flag] = EmberENV[flag]; } } let { @@ -997,6 +1010,7 @@ define("@ember/canary-features/index", ["exports", "@ember/-internals/environmen // } // return value; // } + // // export const FLAG_NAME = featureValue(FEATURES.FLAG_NAME); }); define("@ember/debug/container-debug-adapter", ["exports", "@ember/-internals/string", "@ember/object", "@ember/utils", "@ember/-internals/owner", "@ember/application/namespace"], function (_exports, _string, _object, _utils, _owner, _namespace) { @@ -1958,7 +1972,6 @@ define("@ember/debug/lib/deprecate", ["exports", "@ember/-internals/environment" let updatedMessage = formatMessage(message, options); console.warn("DEPRECATION: " + updatedMessage); // eslint-disable-line no-console }); - let captureErrorForStack; if (new Error().stack) { captureErrorForStack = () => new Error(); @@ -2297,7 +2310,6 @@ define("@ember/debug/lib/warn", ["exports", "@ember/debug/index", "@ember/debug/ console.warn("WARNING: " + message); /* eslint-enable no-console */ }); - _exports.missingOptionsDeprecation = missingOptionsDeprecation = 'When calling `warn` you ' + 'must provide an `options` hash as the third parameter. ' + '`options` should include an `id` property.'; _exports.missingOptionsIdDeprecation = missingOptionsIdDeprecation = 'When calling `warn` you must provide `id` in options.'; /** @@ -2316,10 +2328,11 @@ define("@ember/debug/lib/warn", ["exports", "@ember/debug/index", "@ember/debug/ @for @ember/debug @static @param {String} message A warning to display. - @param {Boolean} test An optional boolean. If falsy, the warning - will be displayed. - @param {Object} options An object that can be used to pass a unique - `id` for this warning. The `id` can be used by Ember debugging tools + @param {Boolean|Object} test An optional boolean. If falsy, the warning + will be displayed. If `test` is an object, the `test` parameter can + be used as the `options` parameter and the warning is displayed. + @param {Object} options + @param {String} options.id The `id` can be used by Ember debugging tools to change the behavior (raise, log, or silence) for that specific warning. The `id` should be namespaced by dots, e.g. "ember-debug.feature-flag-with-features-stripped" @public @@ -2332,7 +2345,9 @@ define("@ember/debug/lib/warn", ["exports", "@ember/debug/index", "@ember/debug/ } (0, _index.assert)(missingOptionsDeprecation, Boolean(options)); (0, _index.assert)(missingOptionsIdDeprecation, Boolean(options && options.id)); - // SAFETY: we checked this by way of the `arguments` check above. + // SAFETY: we have explicitly assigned `false` if the user invoked the + // arity-2 version of the overload, so we know `test` is always either + // `undefined` or a `boolean` for type-safe callers. (0, _handlers.invoke)('warn', message, test, options); }; } @@ -2570,8 +2585,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } return normalizeDottedPath(result[1]); } - function normalizePath(head) { - let tail = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : []; + function normalizePath(head, tail) { + if (tail === void 0) { + tail = []; + } const pathHead = normalizePathHead(head); if ((0, _util.isPresentArray)(tail)) { return { @@ -2772,8 +2789,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", ExpressionKind["HasBlockParams"] = "HasBlockParams"; return ExpressionKind; }({}); - function normalizeAppendExpression(expression) { - let forceTrusted = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + function normalizeAppendExpression(expression, forceTrusted) { + if (forceTrusted === void 0) { + forceTrusted = false; + } if (expression === null || expression === undefined) { return { expr: { @@ -3104,8 +3123,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", statements.forEach(s => out.push(...buildStatement(s, symbols))); return out; } - function buildStatement(normalized) { - let symbols = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new ProgramSymbols(); + function buildStatement(normalized, symbols) { + if (symbols === void 0) { + symbols = new ProgramSymbols(); + } switch (normalized.kind) { case HeadKind.AppendPath: { @@ -3125,7 +3146,7 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } = normalized; let builtParams = params ? buildParams(params, symbols) : null; let builtHash = hash ? buildHash(hash, symbols) : null; - let builtExpr = buildCallHead(path, trusted ? _wireFormat.VariableResolutionContext.AmbiguousInvoke : _wireFormat.VariableResolutionContext.AmbiguousAppendInvoke, symbols); + let builtExpr = buildCallHead(path, trusted ? _wireFormat.VariableResolutionContext.ResolveAsHelperHead : _wireFormat.VariableResolutionContext.ResolveAsComponentOrHelperHead, symbols); return [[trusted ? _wireFormat.SexpOpcodes.TrustingAppend : _wireFormat.SexpOpcodes.Append, [_wireFormat.SexpOpcodes.Call, builtExpr, builtParams, builtHash]]]; } case HeadKind.Literal: @@ -3185,8 +3206,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", let block = buildBlock(normalized.blocks['default'], childSymbols, childSymbols.paramSymbols); let inverse = normalized.blocks['else'] ? buildBlock(normalized.blocks['else'], symbols, []) : null; switch (name) { - case 'with': - return [_wireFormat.SexpOpcodes.With, (0, _util.expect)(params, 'with requires params')[0], block, inverse]; + case 'let': + return [_wireFormat.SexpOpcodes.Let, (0, _util.expect)(params, 'let requires params'), block]; case 'if': return [_wireFormat.SexpOpcodes.If, (0, _util.expect)(params, 'if requires params')[0], block, inverse]; case 'each': @@ -3365,15 +3386,15 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", if (context === 'Strict') { op = _wireFormat.SexpOpcodes.GetStrictKeyword; } else if (context === 'AppendBare') { - op = _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback; + op = _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead; } else if (context === 'AppendInvoke') { op = _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead; } else if (context === 'TrustedAppendBare') { - op = _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback; + op = _wireFormat.SexpOpcodes.GetFreeAsHelperHead; } else if (context === 'TrustedAppendInvoke') { op = _wireFormat.SexpOpcodes.GetFreeAsHelperHead; } else if (context === 'AttrValueBare') { - op = _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback; + op = _wireFormat.SexpOpcodes.GetFreeAsHelperHead; } else if (context === 'AttrValueInvoke') { op = _wireFormat.SexpOpcodes.GetFreeAsHelperHead; } else if (context === 'SubExpression') { @@ -3390,6 +3411,7 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", if (path === undefined || path.length === 0) { return [op, sym]; } else { + (0, _util.assert)(op !== _wireFormat.SexpOpcodes.GetStrictKeyword, '[BUG] keyword with a path'); return [op, sym, path]; } } @@ -3411,13 +3433,9 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", switch (context) { case _wireFormat.VariableResolutionContext.Strict: return _wireFormat.SexpOpcodes.GetStrictKeyword; - case _wireFormat.VariableResolutionContext.AmbiguousAppend: - return _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback; - case _wireFormat.VariableResolutionContext.AmbiguousAppendInvoke: + case _wireFormat.VariableResolutionContext.ResolveAsComponentOrHelperHead: return _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead; - case _wireFormat.VariableResolutionContext.AmbiguousInvoke: - return _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback; - case _wireFormat.VariableResolutionContext.ResolveAsCallHead: + case _wireFormat.VariableResolutionContext.ResolveAsHelperHead: return _wireFormat.SexpOpcodes.GetFreeAsHelperHead; case _wireFormat.VariableResolutionContext.ResolveAsModifierHead: return _wireFormat.SexpOpcodes.GetFreeAsModifierHead; @@ -3457,8 +3475,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } return [keys, values]; } - function buildBlock(block, symbols) { - let locals = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : []; + function buildBlock(block, symbols, locals) { + if (locals === void 0) { + locals = []; + } return [buildNormalizedStatements(block, symbols), locals]; } class Template extends (0, _syntax.node)('Template').fields() {} @@ -3467,7 +3487,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", class If extends (0, _syntax.node)('If').fields() {} class IfInline extends (0, _syntax.node)('IfInline').fields() {} class Each extends (0, _syntax.node)('Each').fields() {} - class With extends (0, _syntax.node)('With').fields() {} class Let extends (0, _syntax.node)('Let').fields() {} class WithDynamicVars extends (0, _syntax.node)('WithDynamicVars').fields() {} class GetDynamicVar extends (0, _syntax.node)('GetDynamicVar').fields() {} @@ -3475,7 +3494,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", class InvokeComponent extends (0, _syntax.node)('InvokeComponent').fields() {} class NamedBlocks extends (0, _syntax.node)('NamedBlocks').fields() {} class NamedBlock extends (0, _syntax.node)('NamedBlock').fields() {} - class EndBlock extends (0, _syntax.node)('EndBlock').fields() {} class AppendTrustedHTML extends (0, _syntax.node)('AppendTrustedHTML').fields() {} class AppendTextNode extends (0, _syntax.node)('AppendTextNode').fields() {} class AppendComment extends (0, _syntax.node)('AppendComment').fields() {} @@ -3487,16 +3505,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", class Yield extends (0, _syntax.node)('Yield').fields() {} class Debugger extends (0, _syntax.node)('Debugger').fields() {} class CallExpression extends (0, _syntax.node)('CallExpression').fields() {} - class DeprecatedCallExpression extends (0, _syntax.node)('DeprecatedCallExpression').fields() {} class Modifier extends (0, _syntax.node)('Modifier').fields() {} class InvokeBlock extends (0, _syntax.node)('InvokeBlock').fields() {} class SplatAttr extends (0, _syntax.node)('SplatAttr').fields() {} class PathExpression extends (0, _syntax.node)('PathExpression').fields() {} - class GetWithResolver extends (0, _syntax.node)('GetWithResolver').fields() {} - class GetSymbol extends (0, _syntax.node)('GetSymbol').fields() {} - class GetFreeWithContext extends (0, _syntax.node)('GetFreeWithContext').fields() {} - /** strict mode */ - class GetFree extends (0, _syntax.node)('GetFree').fields() {} class Missing extends (0, _syntax.node)('Missing').fields() {} class InterpolateExpression extends (0, _syntax.node)('InterpolateExpression').fields() {} class HasBlock extends (0, _syntax.node)('HasBlock').fields() {} @@ -3530,10 +3542,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", toPresentArray() { return this.list; } - into(_ref) { + into(_ref2) { let { ifPresent - } = _ref; + } = _ref2; return ifPresent(this); } } @@ -3553,10 +3565,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", toPresentArray() { return null; } - into(_ref2) { + into(_ref3) { let { ifEmpty - } = _ref2; + } = _ref3; return ifEmpty(); } } @@ -3573,8 +3585,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", class ResultImpl { static all() { let out = []; - for (var _len = arguments.length, results = new Array(_len), _key = 0; _key < _len; _key++) { - results[_key] = arguments[_key]; + for (var _len3 = arguments.length, results = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { + results[_key3] = arguments[_key3]; } for (let result of results) { if (result.isErr) { @@ -3651,8 +3663,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return new ErrImpl(reason); } class ResultArray { - constructor() { - let items = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; + constructor(items) { + if (items === void 0) { + items = []; + } this.items = items; } add(item) { @@ -3670,75 +3684,13 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return this.toArray().mapOk(arr => OptionalList(arr)); } } - function hasPath(node) { - return node.callee.type === 'Path'; - } - function isHelperInvocation(node) { - if (!hasPath(node)) { - return false; - } - return !node.args.isEmpty(); - } - function isSimplePath(path) { - if (path.type === 'Path') { - let { - ref: head, - tail: parts - } = path; - return head.type === 'Free' && !_syntax.ASTv2.isStrictResolution(head.resolution) && parts.length === 0; - } else { - return false; - } - } - function isStrictHelper(expr) { - if (expr.callee.type !== 'Path') { - return true; - } - if (expr.callee.ref.type !== 'Free') { - return true; - } - return _syntax.ASTv2.isStrictResolution(expr.callee.ref.resolution); - } - function assertIsValidModifier(helper) { - if (isStrictHelper(helper) || isSimplePath(helper.callee)) { - return; - } - throw (0, _syntax.generateSyntaxError)("`" + printPath(helper.callee) + "` is not a valid name for a modifier", helper.loc); - } - function printPath(path) { - switch (path.type) { - case 'Literal': - return JSON.stringify(path.value); - case 'Path': - { - let printedPath = [printPathHead(path.ref)]; - printedPath.push(...path.tail.map(t => t.chars)); - return printedPath.join('.'); - } - case 'Call': - return "(" + printPath(path.callee) + " ...)"; - case 'DeprecatedCall': - return "" + path.callee.name; - case 'Interpolate': - throw (0, _util.unreachable)('a concat statement cannot appear as the head of an expression'); - } - } - function printPathHead(head) { - switch (head.type) { - case 'Arg': - return head.name.chars; - case 'Free': - case 'Local': - return head.name; - case 'This': - return 'this'; - } - } class NormalizeExpressions { visit(node, state) { switch (node.type) { case 'Literal': return Ok(this.Literal(node)); + case 'Keyword': + return Ok(this.Keyword(node)); case 'Interpolate': return this.Interpolate(node, state); case 'Path': @@ -3751,8 +3703,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } return this.CallExpression(node, state); } - case 'DeprecatedCall': - return this.DeprecaedCallExpression(node, state); } } visitList(nodes, state) { @@ -3790,6 +3740,9 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", Literal(literal) { return literal; } + Keyword(keyword) { + return keyword; + } Interpolate(expr, state) { let parts = expr.parts.map(convertPathToCallIfKeyword); return VISIT_EXPRS.visitList(parts, state).mapOk(parts => new InterpolateExpression({ @@ -3798,11 +3751,11 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", })); } CallExpression(expr, state) { - if (!hasPath(expr)) { - throw new Error("unimplemented subexpression at the head of a subexpression"); + if (expr.callee.type === 'Call') { + throw new Error("unimplemented: subexpression at the head of a subexpression"); } else { - return Result.all(VISIT_EXPRS.visit(expr.callee, state), VISIT_EXPRS.Args(expr.args, state)).mapOk(_ref => { - let [callee, args] = _ref; + return Result.all(VISIT_EXPRS.visit(expr.callee, state), VISIT_EXPRS.Args(expr.args, state)).mapOk(_ref4 => { + let [callee, args] = _ref4; return new CallExpression({ loc: expr.loc, callee, @@ -3811,26 +3764,14 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }); } } - DeprecaedCallExpression(_ref2, _state) { - let { - arg, - callee, - loc - } = _ref2; - return Ok(new DeprecatedCallExpression({ - loc, - arg, - callee - })); - } - Args(_ref3, state) { + Args(_ref5, state) { let { positional, named, loc - } = _ref3; - return Result.all(this.Positional(positional, state), this.NamedArguments(named, state)).mapOk(_ref4 => { - let [positional, named] = _ref4; + } = _ref5; + return Result.all(this.Positional(positional, state), this.NamedArguments(named, state)).mapOk(_ref6 => { + let [positional, named] = _ref6; return new Args({ loc, positional, @@ -3887,13 +3828,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } let path = getCalleeExpression(node); if (path !== null && path.type === 'Path' && path.ref.type === 'Free') { - if (path.tail.length > 0) { - if (path.ref.resolution.serialize() === 'Loose') { - // cannot be a keyword reference, keywords do not allow paths (must be - // relying on implicit this fallback) - return false; - } - } return path.ref.name === this.keyword; } else { return false; @@ -4084,18 +4018,18 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", function keywords(type) { return new Keywords(type); } - function toAppend(_ref) { + function toAppend(_ref7) { let { assert, translate - } = _ref; + } = _ref7; return { assert, - translate(_ref2, value) { + translate(_ref8, value) { let { node, state - } = _ref2; + } = _ref8; let result = translate({ node, state @@ -4145,19 +4079,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }; } function translateCurryKeyword(curriedType) { - return (_ref, _ref2) => { + return (_ref9, _ref10) => { let { node, state - } = _ref; + } = _ref9; let { definition, args - } = _ref2; + } = _ref10; let definitionResult = VISIT_EXPRS.visit(definition, state); let argsResult = VISIT_EXPRS.Args(args, state); - return Result.all(definitionResult, argsResult).mapOk(_ref3 => { - let [definition, args] = _ref3; + return Result.all(definitionResult, argsResult).mapOk(_ref11 => { + let [definition, args] = _ref11; return new Curry({ loc: node.loc, curriedType, @@ -4189,11 +4123,11 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } return Ok(varName); } - function translateGetDynamicVarKeyword(_ref, name) { + function translateGetDynamicVarKeyword(_ref12, name) { let { node, state - } = _ref; + } = _ref12; return VISIT_EXPRS.visit(name, state).mapOk(name => new GetDynamicVar({ name, loc: node.loc @@ -4226,13 +4160,13 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }; } function translateHasBlockKeyword(type) { - return (_ref, target) => { + return (_ref13, target) => { let { node, state: { scope } - } = _ref; + } = _ref13; let block = type === 'has-block' ? new HasBlock({ loc: node.loc, target, @@ -4282,21 +4216,21 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } function translateIfUnlessInlineKeyword(type) { let inverted = type === 'unless'; - return (_ref, _ref2) => { + return (_ref14, _ref15) => { let { node, state - } = _ref; + } = _ref14; let { condition, truthy, falsy - } = _ref2; + } = _ref15; let conditionResult = VISIT_EXPRS.visit(condition, state); let truthyResult = VISIT_EXPRS.visit(truthy, state); let falsyResult = falsy ? VISIT_EXPRS.visit(falsy, state) : Ok(null); - return Result.all(conditionResult, truthyResult, falsyResult).mapOk(_ref3 => { - let [condition, truthy, falsy] = _ref3; + return Result.all(conditionResult, truthyResult, falsyResult).mapOk(_ref16 => { + let [condition, truthy, falsy] = _ref16; if (inverted) { condition = new Not({ value: condition, @@ -4330,11 +4264,11 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } return Ok(positional); } - function translateLogKeyword(_ref, positional) { + function translateLogKeyword(_ref17, positional) { let { node, state - } = _ref; + } = _ref17; return VISIT_EXPRS.Positional(positional, state).mapOk(positional => new Log({ positional, loc: node.loc @@ -4369,15 +4303,15 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } } }, - translate(_ref, _ref2) { + translate(_ref18, _ref19) { let { node, state - } = _ref; + } = _ref18; let { target, positional - } = _ref2; + } = _ref19; return VISIT_EXPRS.Positional(positional, state).mapOk(positional => new Yield({ loc: node.loc, target, @@ -4403,13 +4337,13 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } } }, - translate(_ref3) { + translate(_ref20) { let { node, state: { scope } - } = _ref3; + } = _ref20; scope.setHasDebugger(); return Ok(new Debugger({ loc: node.loc, @@ -4418,19 +4352,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } }).kw('component', { assert: assertCurryKeyword(_vm.CurriedTypes.Component), - translate(_ref4, _ref5) { + translate(_ref21, _ref22) { let { node, state - } = _ref4; + } = _ref21; let { definition, args - } = _ref5; + } = _ref22; let definitionResult = VISIT_EXPRS.visit(definition, state); let argsResult = VISIT_EXPRS.Args(args, state); - return Result.all(definitionResult, argsResult).mapOk(_ref6 => { - let [definition, args] = _ref6; + return Result.all(definitionResult, argsResult).mapOk(_ref23 => { + let [definition, args] = _ref23; return new InvokeComponent({ loc: node.loc, definition, @@ -4441,19 +4375,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } }).kw('helper', { assert: assertCurryKeyword(_vm.CurriedTypes.Helper), - translate(_ref7, _ref8) { + translate(_ref24, _ref25) { let { node, state - } = _ref7; + } = _ref24; let { definition, args - } = _ref8; + } = _ref25; let definitionResult = VISIT_EXPRS.visit(definition, state); let argsResult = VISIT_EXPRS.Args(args, state); - return Result.all(definitionResult, argsResult).mapOk(_ref9 => { - let [definition, args] = _ref9; + return Result.all(definitionResult, argsResult).mapOk(_ref26 => { + let [definition, args] = _ref26; let text = new CallExpression({ callee: definition, args, @@ -4488,20 +4422,20 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", destination }); }, - translate(_ref, _ref2) { + translate(_ref27, _ref28) { let { node, state - } = _ref; + } = _ref27; let { insertBefore, destination - } = _ref2; + } = _ref28; let named = node.blocks.get('default'); let body = VISIT_STMTS.NamedBlock(named, state); let destinationResult = VISIT_EXPRS.visit(destination, state); - return Result.all(body, destinationResult).andThen(_ref3 => { - let [body, destination] = _ref3; + return Result.all(body, destinationResult).andThen(_ref29 => { + let [body, destination] = _ref29; if (insertBefore) { return VISIT_EXPRS.visit(insertBefore, state).mapOk(insertBefore => ({ body, @@ -4517,12 +4451,12 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }) }); } - }).mapOk(_ref4 => { + }).mapOk(_ref30 => { let { body, destination, insertBefore - } = _ref4; + } = _ref30; return new InElement({ loc: node.loc, block: body, @@ -4551,21 +4485,21 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", condition }); }, - translate(_ref5, _ref6) { + translate(_ref31, _ref32) { let { node, state - } = _ref5; + } = _ref31; let { condition - } = _ref6; + } = _ref32; let block = node.blocks.get('default'); let inverse = node.blocks.get('else'); let conditionResult = VISIT_EXPRS.visit(condition, state); let blockResult = VISIT_STMTS.NamedBlock(block, state); let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); - return Result.all(conditionResult, blockResult, inverseResult).mapOk(_ref7 => { - let [condition, block, inverse] = _ref7; + return Result.all(conditionResult, blockResult, inverseResult).mapOk(_ref33 => { + let [condition, block, inverse] = _ref33; return new If({ loc: node.loc, condition, @@ -4593,21 +4527,21 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", condition }); }, - translate(_ref8, _ref9) { + translate(_ref34, _ref35) { let { node, state - } = _ref8; + } = _ref34; let { condition - } = _ref9; + } = _ref35; let block = node.blocks.get('default'); let inverse = node.blocks.get('else'); let conditionResult = VISIT_EXPRS.visit(condition, state); let blockResult = VISIT_STMTS.NamedBlock(block, state); let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); - return Result.all(conditionResult, blockResult, inverseResult).mapOk(_ref10 => { - let [condition, block, inverse] = _ref10; + return Result.all(conditionResult, blockResult, inverseResult).mapOk(_ref36 => { + let [condition, block, inverse] = _ref36; return new If({ loc: node.loc, condition: new Not({ @@ -4640,23 +4574,23 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", key }); }, - translate(_ref11, _ref12) { + translate(_ref37, _ref38) { let { node, state - } = _ref11; + } = _ref37; let { value, key - } = _ref12; + } = _ref38; let block = node.blocks.get('default'); let inverse = node.blocks.get('else'); let valueResult = VISIT_EXPRS.visit(value, state); let keyResult = key ? VISIT_EXPRS.visit(key, state) : Ok(null); let blockResult = VISIT_STMTS.NamedBlock(block, state); let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); - return Result.all(valueResult, keyResult, blockResult, inverseResult).mapOk(_ref13 => { - let [value, key, block, inverse] = _ref13; + return Result.all(valueResult, keyResult, blockResult, inverseResult).mapOk(_ref39 => { + let [value, key, block, inverse] = _ref39; return new Each({ loc: node.loc, value, @@ -4666,48 +4600,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }); }); } - }).kw('with', { - assert(node) { - let { - args - } = node; - if (!args.named.isEmpty()) { - return Err((0, _syntax.generateSyntaxError)("{{#with}} cannot receive named parameters, received " + args.named.entries.map(e => e.name.chars).join(', '), args.named.loc)); - } - if (args.positional.size > 1) { - return Err((0, _syntax.generateSyntaxError)("{{#with}} can only receive one positional parameter. Received " + args.positional.size + " parameters", args.positional.loc)); - } - let value = args.nth(0); - if (value === null) { - return Err((0, _syntax.generateSyntaxError)("{{#with}} requires a value as its first positional parameter, did not receive any parameters", args.loc)); - } - return Ok({ - value - }); - }, - translate(_ref14, _ref15) { - let { - node, - state - } = _ref14; - let { - value - } = _ref15; - let block = node.blocks.get('default'); - let inverse = node.blocks.get('else'); - let valueResult = VISIT_EXPRS.visit(value, state); - let blockResult = VISIT_STMTS.NamedBlock(block, state); - let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); - return Result.all(valueResult, blockResult, inverseResult).mapOk(_ref16 => { - let [value, block, inverse] = _ref16; - return new With({ - loc: node.loc, - value, - block, - inverse - }); - }); - } }).kw('let', { assert(node) { let { @@ -4726,19 +4618,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", positional: args.positional }); }, - translate(_ref17, _ref18) { + translate(_ref40, _ref41) { let { node, state - } = _ref17; + } = _ref40; let { positional - } = _ref18; + } = _ref41; let block = node.blocks.get('default'); let positionalResult = VISIT_EXPRS.Positional(positional, state); let blockResult = VISIT_STMTS.NamedBlock(block, state); - return Result.all(positionalResult, blockResult).mapOk(_ref19 => { - let [positional, block] = _ref19; + return Result.all(positionalResult, blockResult).mapOk(_ref42 => { + let [positional, block] = _ref42; return new Let({ loc: node.loc, positional, @@ -4752,19 +4644,19 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", named: node.args.named }); }, - translate(_ref20, _ref21) { + translate(_ref43, _ref44) { let { node, state - } = _ref20; + } = _ref43; let { named - } = _ref21; + } = _ref44; let block = node.blocks.get('default'); let namedResult = VISIT_EXPRS.NamedArguments(named, state); let blockResult = VISIT_STMTS.NamedBlock(block, state); - return Result.all(namedResult, blockResult).mapOk(_ref22 => { - let [named, block] = _ref22; + return Result.all(namedResult, blockResult).mapOk(_ref45 => { + let [named, block] = _ref45; return new WithDynamicVars({ loc: node.loc, named, @@ -4774,20 +4666,20 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } }).kw('component', { assert: assertCurryKeyword(_vm.CurriedTypes.Component), - translate(_ref23, _ref24) { + translate(_ref46, _ref47) { let { node, state - } = _ref23; + } = _ref46; let { definition, args - } = _ref24; + } = _ref47; let definitionResult = VISIT_EXPRS.visit(definition, state); let argsResult = VISIT_EXPRS.Args(args, state); let blocksResult = VISIT_STMTS.NamedBlocks(node.blocks, state); - return Result.all(definitionResult, argsResult, blocksResult).mapOk(_ref25 => { - let [definition, args, blocks] = _ref25; + return Result.all(definitionResult, argsResult, blocksResult).mapOk(_ref48 => { + let [definition, args, blocks] = _ref48; return new InvokeComponent({ loc: node.loc, definition, @@ -4905,17 +4797,14 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }); } modifier(modifier) { - if (isHelperInvocation(modifier)) { - assertIsValidModifier(modifier); - } let translated = MODIFIER_KEYWORDS.translate(modifier, this.state); if (translated !== null) { return translated; } let head = VISIT_EXPRS.visit(modifier.callee, this.state); let args = VISIT_EXPRS.Args(modifier.args, this.state); - return Result.all(head, args).mapOk(_ref => { - let [head, args] = _ref; + return Result.all(head, args).mapOk(_ref49 => { + let [head, args] = _ref49; return new Modifier({ loc: modifier.loc, callee: head, @@ -4953,8 +4842,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", if (typeAttr) { attrs.add(this.attr(typeAttr)); } - return Result.all(args.toArray(), attrs.toArray()).mapOk(_ref2 => { - let [args, attrs] = _ref2; + return Result.all(args.toArray(), attrs.toArray()).mapOk(_ref50 => { + let [args, attrs] = _ref50; return { attrs, args: new NamedArguments({ @@ -4967,8 +4856,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", prepare() { let attrs = this.attrs(); let modifiers = new ResultArray(this.element.modifiers.map(m => this.modifier(m))).toArray(); - return Result.all(attrs, modifiers).mapOk(_ref3 => { - let [result, modifiers] = _ref3; + return Result.all(attrs, modifiers).mapOk(_ref51 => { + let [result, modifiers] = _ref51; let { attrs, args @@ -4985,11 +4874,11 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", }); } } - function hasDynamicFeatures(_ref4) { + function hasDynamicFeatures(_ref52) { let { attrs, modifiers - } = _ref4; + } = _ref52; // ElementModifier needs the special ComponentOperations if (modifiers.length > 0) { return true; @@ -5004,10 +4893,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", this.tag = tag; this.element = element; } - arg(attr, _ref) { + arg(attr, _ref53) { let { state - } = _ref; + } = _ref53; let name = attr.name; return VISIT_EXPRS.visit(convertPathToCallIfKeyword(attr.value), state).mapOk(value => new NamedArgument({ loc: attr.loc, @@ -5015,11 +4904,11 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", value })); } - toStatement(component, _ref2) { + toStatement(component, _ref54) { let { args, params - } = _ref2; + } = _ref54; let { element, state @@ -5046,10 +4935,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", arg(attr) { return Err((0, _syntax.generateSyntaxError)(attr.name.chars + " is not a valid attribute name. @arguments are only allowed on components, but the tag for this element (`" + this.tag.chars + "`) is a regular, non-component HTML element.", attr.loc)); } - toStatement(classified, _ref) { + toStatement(classified, _ref55) { let { params - } = _ref; + } = _ref55; let { state, element @@ -5093,8 +4982,8 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } let head = VISIT_EXPRS.visit(node.callee, state); let args = VISIT_EXPRS.Args(node.args, state); - return Result.all(head, args).andThen(_ref => { - let [head, args] = _ref; + return Result.all(head, args).andThen(_ref56 => { + let [head, args] = _ref56; return this.NamedBlocks(node.blocks, state).mapOk(blocks => new InvokeBlock({ loc: node.loc, head, @@ -5191,109 +5080,403 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } } } - - /** - * Normalize the AST from @glimmer/syntax into the HIR. The HIR has special - * instructions for keywords like `{{yield}}`, `(has-block)` and - * `{{#in-element}}`. - * - * Most importantly, it also classifies HTML element syntax into: - * - * 1. simple HTML element (with optional splattributes) - * 2. component invocation - * - * Because the @glimmer/syntax AST gives us a string for an element's tag, - * this pass also normalizes that string into an expression. - * - * ``` - * // normalized into a path expression whose head is `this` and tail is - * // `["x"]` - * - * - * {{#let expr as |t|}} - * // `"t"` is normalized into a variable lookup. - * - * - * // normalized into a path expression whose head is the variable lookup - * // `t` and tail is `["input"]`. - * - * {{/let}} - * - * // normalized into a free variable lookup for `SomeComponent` (with the - * // context `ComponentHead`). - * - * - * // normalized into a path expression whose head is the free variable - * // `notInScope` (with the context `Expression`), and whose tail is - * // `["SomeComponent"]`. In resolver mode, this path will be rejected later, - * // since it cannot serve as an input to the resolver. - * - * ``` - */ - function normalize(source, root, isStrict) { - // create a new context for the normalization pass - let state = new NormalizationState(root.table, isStrict); - let body = VISIT_STMTS.visitList(root.body, state); - return body.mapOk(body => new Template({ - loc: root.loc, - scope: root.table, - body: body.toArray() - })); - } - class WireFormatDebugger { - constructor(_ref) { - this.upvars = void 0; - this.symbols = void 0; - let [_statements, symbols, _hasEval, upvars] = _ref; - this.upvars = upvars; - this.symbols = symbols; + var ResolutionType = /*#__PURE__*/function (ResolutionType) { + ResolutionType["Value"] = "value"; + ResolutionType["Component"] = "component"; + ResolutionType["Helper"] = "helper"; + ResolutionType["Modifier"] = "modifier"; + ResolutionType["ComponentOrHelper"] = "component or helper"; + return ResolutionType; + }(ResolutionType || {}); + class StrictModeValidationPass { + // This is done at the end of all the keyword normalizations + // At this point any free variables that isn't a valid keyword + // in its context should be considered a syntax error. We + // probably had various opportunities to do this inline in the + // earlier passes, but this aims to produce a better syntax + // error as we don't always have the right loc-context to do + // so in the other spots. + static validate(template) { + return new this(template).validate(); + } + constructor(template) { + this.template = template; + } + validate() { + return this.Statements(this.template.body).mapOk(() => this.template); + } + Statements(statements) { + let result = Ok(null); + for (let statement of statements) { + result = result.andThen(() => this.Statement(statement)); + } + return result; } - format(program) { - let out = []; - for (let statement of program[0]) { - out.push(this.formatOpcode(statement)); + NamedBlocks(_ref57) { + let { + blocks + } = _ref57; + let result = Ok(null); + for (let block of blocks.toArray()) { + result = result.andThen(() => this.NamedBlock(block)); } - return out; + return result; } - formatOpcode(opcode) { - if (Array.isArray(opcode)) { - switch (opcode[0]) { - case _wireFormat.SexpOpcodes.Append: - return ['append', this.formatOpcode(opcode[1])]; - case _wireFormat.SexpOpcodes.TrustingAppend: - return ['trusting-append', this.formatOpcode(opcode[1])]; - case _wireFormat.SexpOpcodes.Block: - return ['block', this.formatOpcode(opcode[1]), this.formatParams(opcode[2]), this.formatHash(opcode[3]), this.formatBlocks(opcode[4])]; - case _wireFormat.SexpOpcodes.InElement: - return ['in-element', opcode[1], this.formatOpcode(opcode[2]), opcode[3] ? this.formatOpcode(opcode[3]) : undefined]; - case _wireFormat.SexpOpcodes.OpenElement: - return ['open-element', inflateTagName(opcode[1])]; - case _wireFormat.SexpOpcodes.OpenElementWithSplat: - return ['open-element-with-splat', inflateTagName(opcode[1])]; - case _wireFormat.SexpOpcodes.CloseElement: - return ['close-element']; - case _wireFormat.SexpOpcodes.FlushElement: - return ['flush-element']; - case _wireFormat.SexpOpcodes.StaticAttr: - return ['static-attr', inflateAttrName(opcode[1]), opcode[2], opcode[3]]; - case _wireFormat.SexpOpcodes.StaticComponentAttr: - return ['static-component-attr', inflateAttrName(opcode[1]), opcode[2], opcode[3]]; - case _wireFormat.SexpOpcodes.DynamicAttr: - return ['dynamic-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; - case _wireFormat.SexpOpcodes.ComponentAttr: - return ['component-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; - case _wireFormat.SexpOpcodes.AttrSplat: - return ['attr-splat']; - case _wireFormat.SexpOpcodes.Yield: - return ['yield', opcode[1], this.formatParams(opcode[2])]; - case _wireFormat.SexpOpcodes.DynamicArg: - return ['dynamic-arg', opcode[1], this.formatOpcode(opcode[2])]; - case _wireFormat.SexpOpcodes.StaticArg: - return ['static-arg', opcode[1], this.formatOpcode(opcode[2])]; - case _wireFormat.SexpOpcodes.TrustingDynamicAttr: - return ['trusting-dynamic-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; - case _wireFormat.SexpOpcodes.TrustingComponentAttr: - return ['trusting-component-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; + NamedBlock(block) { + return this.Statements(block.body); + } + Statement(statement) { + switch (statement.type) { + case 'InElement': + return this.InElement(statement); + case 'Debugger': + return Ok(null); + case 'Yield': + return this.Yield(statement); + case 'AppendTrustedHTML': + return this.AppendTrustedHTML(statement); + case 'AppendTextNode': + return this.AppendTextNode(statement); + case 'Component': + return this.Component(statement); + case 'SimpleElement': + return this.SimpleElement(statement); + case 'InvokeBlock': + return this.InvokeBlock(statement); + case 'AppendComment': + return Ok(null); + case 'If': + return this.If(statement); + case 'Each': + return this.Each(statement); + case 'Let': + return this.Let(statement); + case 'WithDynamicVars': + return this.WithDynamicVars(statement); + case 'InvokeComponent': + return this.InvokeComponent(statement); + } + } + Expressions(expressions) { + let result = Ok(null); + for (let expression of expressions) { + result = result.andThen(() => this.Expression(expression)); + } + return result; + } + Expression(expression, span, resolution) { + if (span === void 0) { + span = expression; + } + switch (expression.type) { + case 'Literal': + case 'Keyword': + case 'Missing': + case 'This': + case 'Arg': + case 'Local': + case 'HasBlock': + case 'HasBlockParams': + case 'GetDynamicVar': + return Ok(null); + case 'PathExpression': + return this.Expression(expression.head, span, resolution); + case 'Free': + return this.errorFor(expression.name, span, resolution); + case 'InterpolateExpression': + return this.InterpolateExpression(expression, span, resolution); + case 'CallExpression': + return this.CallExpression(expression, span, resolution != null ? resolution : ResolutionType.Helper); + case 'Not': + return this.Expression(expression.value, span, resolution); + case 'IfInline': + return this.IfInline(expression); + case 'Curry': + return this.Curry(expression); + case 'Log': + return this.Log(expression); + } + } + Args(args) { + return this.Positional(args.positional).andThen(() => this.NamedArguments(args.named)); + } + Positional(positional, span) { + let result = Ok(null); + let expressions = positional.list.toArray(); + + // For cases like {{yield foo}}, when there is only a single argument, it + // makes for a slightly better error to report that entire span. However, + // when there are more than one, we need to be specific. + if (expressions.length === 1) { + result = this.Expression(expressions[0], span); + } else { + result = this.Expressions(expressions); + } + return result; + } + NamedArguments(_ref58) { + let { + entries + } = _ref58; + let result = Ok(null); + for (let arg of entries.toArray()) { + result = result.andThen(() => this.NamedArgument(arg)); + } + return result; + } + NamedArgument(arg) { + if (arg.value.type === 'CallExpression') { + return this.Expression(arg.value, arg, ResolutionType.Helper); + } else { + return this.Expression(arg.value, arg); + } + } + ElementParameters(_ref59) { + let { + body + } = _ref59; + let result = Ok(null); + for (let param of body.toArray()) { + result = result.andThen(() => this.ElementParameter(param)); + } + return result; + } + ElementParameter(param) { + switch (param.type) { + case 'StaticAttr': + return Ok(null); + case 'DynamicAttr': + return this.DynamicAttr(param); + case 'Modifier': + return this.Modifier(param); + case 'SplatAttr': + return Ok(null); + } + } + DynamicAttr(attr) { + if (attr.value.type === 'CallExpression') { + return this.Expression(attr.value, attr, ResolutionType.Helper); + } else { + return this.Expression(attr.value, attr); + } + } + Modifier(modifier) { + return this.Expression(modifier.callee, modifier, ResolutionType.Modifier).andThen(() => this.Args(modifier.args)); + } + InElement(inElement) { + return this.Expression(inElement.destination) + // Unfortunately we lost the `insertBefore=` part of the span + .andThen(() => this.Expression(inElement.insertBefore)).andThen(() => this.NamedBlock(inElement.block)); + } + Yield(statement) { + return this.Positional(statement.positional, statement); + } + AppendTrustedHTML(statement) { + return this.Expression(statement.html, statement); + } + AppendTextNode(statement) { + if (statement.text.type === 'CallExpression') { + return this.Expression(statement.text, statement, ResolutionType.ComponentOrHelper); + } else { + return this.Expression(statement.text, statement); + } + } + Component(statement) { + return this.Expression(statement.tag, statement, ResolutionType.Component).andThen(() => this.ElementParameters(statement.params)).andThen(() => this.NamedArguments(statement.args)).andThen(() => this.NamedBlocks(statement.blocks)); + } + SimpleElement(statement) { + return this.ElementParameters(statement.params).andThen(() => this.Statements(statement.body)); + } + InvokeBlock(statement) { + return this.Expression(statement.head, statement.head, ResolutionType.Component).andThen(() => this.Args(statement.args)).andThen(() => this.NamedBlocks(statement.blocks)); + } + If(statement) { + return this.Expression(statement.condition, statement).andThen(() => this.NamedBlock(statement.block)).andThen(() => { + if (statement.inverse) { + return this.NamedBlock(statement.inverse); + } else { + return Ok(null); + } + }); + } + Each(statement) { + return this.Expression(statement.value, statement).andThen(() => { + if (statement.key) { + return this.Expression(statement.key, statement); + } else { + return Ok(null); + } + }).andThen(() => this.NamedBlock(statement.block)).andThen(() => { + if (statement.inverse) { + return this.NamedBlock(statement.inverse); + } else { + return Ok(null); + } + }); + } + Let(statement) { + return this.Positional(statement.positional).andThen(() => this.NamedBlock(statement.block)); + } + WithDynamicVars(statement) { + return this.NamedArguments(statement.named).andThen(() => this.NamedBlock(statement.block)); + } + InvokeComponent(statement) { + return this.Expression(statement.definition, statement, ResolutionType.Component).andThen(() => this.Args(statement.args)).andThen(() => { + if (statement.blocks) { + return this.NamedBlocks(statement.blocks); + } else { + return Ok(null); + } + }); + } + InterpolateExpression(expression, span, resolution) { + let expressions = expression.parts.toArray(); + if (expressions.length === 1) { + return this.Expression(expressions[0], span, resolution); + } else { + return this.Expressions(expressions); + } + } + CallExpression(expression, span, resolution) { + return this.Expression(expression.callee, span, resolution).andThen(() => this.Args(expression.args)); + } + IfInline(expression) { + return this.Expression(expression.condition).andThen(() => this.Expression(expression.truthy)).andThen(() => { + if (expression.falsy) { + return this.Expression(expression.falsy); + } else { + return Ok(null); + } + }); + } + Curry(expression) { + let resolution; + if (expression.curriedType === _vm.CurriedTypes.Component) { + resolution = ResolutionType.Component; + } else if (expression.curriedType === _vm.CurriedTypes.Helper) { + resolution = ResolutionType.Helper; + } else { + resolution = ResolutionType.Modifier; + } + return this.Expression(expression.definition, expression, resolution).andThen(() => this.Args(expression.args)); + } + Log(expression) { + return this.Positional(expression.positional, expression); + } + errorFor(name, span, type) { + if (type === void 0) { + type = ResolutionType.Value; + } + return Err((0, _syntax.generateSyntaxError)("Attempted to resolve a " + type + " in a strict mode template, but that value was not in scope: " + name, (0, _syntax.loc)(span))); + } + } + + /** + * Normalize the AST from @glimmer/syntax into the HIR. The HIR has special + * instructions for keywords like `{{yield}}`, `(has-block)` and + * `{{#in-element}}`. + * + * Most importantly, it also classifies HTML element syntax into: + * + * 1. simple HTML element (with optional splattributes) + * 2. component invocation + * + * Because the @glimmer/syntax AST gives us a string for an element's tag, + * this pass also normalizes that string into an expression. + * + * ``` + * // normalized into a path expression whose head is `this` and tail is + * // `["x"]` + * + * + * {{#let expr as |t|}} + * // `"t"` is normalized into a variable lookup. + * + * + * // normalized into a path expression whose head is the variable lookup + * // `t` and tail is `["input"]`. + * + * {{/let}} + * + * // normalized into a free variable lookup for `SomeComponent` (with the + * // context `ComponentHead`). + * + * + * // normalized into a path expression whose head is the free variable + * // `notInScope` (with the context `Expression`), and whose tail is + * // `["SomeComponent"]`. In resolver mode, this path will be rejected later, + * // since it cannot serve as an input to the resolver. + * + * ``` + */ + function normalize(source, root, isStrict) { + // create a new context for the normalization pass + let state = new NormalizationState(root.table, isStrict); + let body = VISIT_STMTS.visitList(root.body, state); + let template = body.mapOk(body => new Template({ + loc: root.loc, + scope: root.table, + body: body.toArray() + })); + if (isStrict) { + template = template.andThen(template => StrictModeValidationPass.validate(template)); + } + return template; + } + class WireFormatDebugger { + constructor(_ref60) { + let [_statements, symbols, _hasEval, upvars] = _ref60; + this.upvars = void 0; + this.symbols = void 0; + this.upvars = upvars; + this.symbols = symbols; + } + format(program) { + let out = []; + for (let statement of program[0]) { + out.push(this.formatOpcode(statement)); + } + return out; + } + formatOpcode(opcode) { + if (Array.isArray(opcode)) { + switch (opcode[0]) { + case _wireFormat.SexpOpcodes.Append: + return ['append', this.formatOpcode(opcode[1])]; + case _wireFormat.SexpOpcodes.TrustingAppend: + return ['trusting-append', this.formatOpcode(opcode[1])]; + case _wireFormat.SexpOpcodes.Block: + return ['block', this.formatOpcode(opcode[1]), this.formatParams(opcode[2]), this.formatHash(opcode[3]), this.formatBlocks(opcode[4])]; + case _wireFormat.SexpOpcodes.InElement: + return ['in-element', opcode[1], this.formatOpcode(opcode[2]), opcode[3] ? this.formatOpcode(opcode[3]) : undefined]; + case _wireFormat.SexpOpcodes.OpenElement: + return ['open-element', inflateTagName(opcode[1])]; + case _wireFormat.SexpOpcodes.OpenElementWithSplat: + return ['open-element-with-splat', inflateTagName(opcode[1])]; + case _wireFormat.SexpOpcodes.CloseElement: + return ['close-element']; + case _wireFormat.SexpOpcodes.FlushElement: + return ['flush-element']; + case _wireFormat.SexpOpcodes.StaticAttr: + return ['static-attr', inflateAttrName(opcode[1]), opcode[2], opcode[3]]; + case _wireFormat.SexpOpcodes.StaticComponentAttr: + return ['static-component-attr', inflateAttrName(opcode[1]), opcode[2], opcode[3]]; + case _wireFormat.SexpOpcodes.DynamicAttr: + return ['dynamic-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; + case _wireFormat.SexpOpcodes.ComponentAttr: + return ['component-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; + case _wireFormat.SexpOpcodes.AttrSplat: + return ['attr-splat']; + case _wireFormat.SexpOpcodes.Yield: + return ['yield', opcode[1], this.formatParams(opcode[2])]; + case _wireFormat.SexpOpcodes.DynamicArg: + return ['dynamic-arg', opcode[1], this.formatOpcode(opcode[2])]; + case _wireFormat.SexpOpcodes.StaticArg: + return ['static-arg', opcode[1], this.formatOpcode(opcode[2])]; + case _wireFormat.SexpOpcodes.TrustingDynamicAttr: + return ['trusting-dynamic-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; + case _wireFormat.SexpOpcodes.TrustingComponentAttr: + return ['trusting-component-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; case _wireFormat.SexpOpcodes.Debugger: return ['debugger', opcode[1]]; case _wireFormat.SexpOpcodes.Comment: @@ -5315,15 +5498,9 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", case _wireFormat.SexpOpcodes.Concat: return ['concat', this.formatParams(opcode[1])]; case _wireFormat.SexpOpcodes.GetStrictKeyword: - return ['get-strict-free', this.upvars[opcode[1]], opcode[2]]; - case _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback: - return ['GetFreeAsComponentOrHelperHeadOrThisFallback', this.upvars[opcode[1]], opcode[2]]; + return ['get-strict-free', this.upvars[opcode[1]]]; case _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead: return ['GetFreeAsComponentOrHelperHead', this.upvars[opcode[1]], opcode[2]]; - case _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback: - return ['GetFreeAsHelperHeadOrThisFallback', this.upvars[opcode[1]], opcode[2]]; - case _wireFormat.SexpOpcodes.GetFreeAsDeprecatedHelperHeadOrThisFallback: - return ['GetFreeAsDeprecatedHelperHeadOrThisFallback', this.upvars[opcode[1]]]; case _wireFormat.SexpOpcodes.GetFreeAsHelperHead: return ['GetFreeAsHelperHead', this.upvars[opcode[1]], opcode[2]]; case _wireFormat.SexpOpcodes.GetFreeAsComponentHead: @@ -5350,8 +5527,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return ['not']; case _wireFormat.SexpOpcodes.Each: return ['each', this.formatOpcode(opcode[1]), opcode[2] ? this.formatOpcode(opcode[2]) : null, this.formatBlock(opcode[3]), opcode[4] ? this.formatBlock(opcode[4]) : null]; - case _wireFormat.SexpOpcodes.With: - return ['with', this.formatOpcode(opcode[1]), this.formatBlock(opcode[2]), opcode[3] ? this.formatBlock(opcode[3]) : null]; case _wireFormat.SexpOpcodes.Let: return ['let', this.formatParams(opcode[1]), this.formatBlock(opcode[2])]; case _wireFormat.SexpOpcodes.Log: @@ -5416,10 +5591,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return undefined; case 'Literal': return this.Literal(expr); + case 'Keyword': + return this.Keyword(expr); case 'CallExpression': return this.CallExpression(expr); - case 'DeprecatedCallExpression': - return this.DeprecatedCallExpression(expr); case 'PathExpression': return this.PathExpression(expr); case 'Arg': @@ -5448,10 +5623,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return this.Log(expr); } } - Literal(_ref) { + Literal(_ref61) { let { value - } = _ref; + } = _ref61; if (value === undefined) { return [_wireFormat.SexpOpcodes.Undefined]; } else { @@ -5461,97 +5636,91 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", Missing() { return undefined; } - HasBlock(_ref2) { + HasBlock(_ref62) { let { symbol - } = _ref2; + } = _ref62; return [_wireFormat.SexpOpcodes.HasBlock, [_wireFormat.SexpOpcodes.GetSymbol, symbol]]; } - HasBlockParams(_ref3) { + HasBlockParams(_ref63) { let { symbol - } = _ref3; + } = _ref63; return [_wireFormat.SexpOpcodes.HasBlockParams, [_wireFormat.SexpOpcodes.GetSymbol, symbol]]; } - Curry(_ref4) { + Curry(_ref64) { let { definition, curriedType, args - } = _ref4; + } = _ref64; return [_wireFormat.SexpOpcodes.Curry, EXPR.expr(definition), curriedType, EXPR.Positional(args.positional), EXPR.NamedArguments(args.named)]; } - Local(_ref5) { + Local(_ref65) { let { isTemplateLocal, symbol - } = _ref5; + } = _ref65; return [isTemplateLocal ? _wireFormat.SexpOpcodes.GetLexicalSymbol : _wireFormat.SexpOpcodes.GetSymbol, symbol]; } - GetWithResolver(_ref6) { + Keyword(_ref66) { let { symbol - } = _ref6; - return [_wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback, symbol]; + } = _ref66; + return [_wireFormat.SexpOpcodes.GetStrictKeyword, symbol]; } - PathExpression(_ref7) { + PathExpression(_ref67) { let { head, tail - } = _ref7; + } = _ref67; let getOp = EXPR.expr(head); + (0, _util.assert)(getOp[0] !== _wireFormat.SexpOpcodes.GetStrictKeyword, '[BUG] keyword in a PathExpression'); return [...getOp, EXPR.Tail(tail)]; } - InterpolateExpression(_ref8) { + InterpolateExpression(_ref68) { let { parts - } = _ref8; + } = _ref68; return [_wireFormat.SexpOpcodes.Concat, parts.map(e => EXPR.expr(e)).toArray()]; } - CallExpression(_ref9) { + CallExpression(_ref69) { let { callee, args - } = _ref9; + } = _ref69; return [_wireFormat.SexpOpcodes.Call, EXPR.expr(callee), ...EXPR.Args(args)]; } - DeprecatedCallExpression(_ref10) { - let { - arg, - callee - } = _ref10; - return [_wireFormat.SexpOpcodes.GetFreeAsDeprecatedHelperHeadOrThisFallback, callee.symbol, [arg.chars]]; - } - Tail(_ref11) { + Tail(_ref70) { let { members - } = _ref11; + } = _ref70; return (0, _util.mapPresentArray)(members, member => member.chars); } - Args(_ref12) { + Args(_ref71) { let { positional, named - } = _ref12; + } = _ref71; return [this.Positional(positional), this.NamedArguments(named)]; } - Positional(_ref13) { + Positional(_ref72) { let { list - } = _ref13; + } = _ref72; return list.map(l => EXPR.expr(l)).toPresentArray(); } - NamedArgument(_ref14) { + NamedArgument(_ref73) { let { key, value - } = _ref14; + } = _ref73; return [key.chars, EXPR.expr(value)]; } - NamedArguments(_ref15) { + NamedArguments(_ref74) { let { entries: pairs - } = _ref15; + } = _ref74; let list = pairs.toArray(); if ((0, _util.isPresentArray)(list)) { let names = []; @@ -5568,34 +5737,34 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return null; } } - Not(_ref16) { + Not(_ref75) { let { value - } = _ref16; + } = _ref75; return [_wireFormat.SexpOpcodes.Not, EXPR.expr(value)]; } - IfInline(_ref17) { + IfInline(_ref76) { let { condition, truthy, falsy - } = _ref17; + } = _ref76; let expr = [_wireFormat.SexpOpcodes.IfInline, EXPR.expr(condition), EXPR.expr(truthy)]; if (falsy) { expr.push(EXPR.expr(falsy)); } return expr; } - GetDynamicVar(_ref18) { + GetDynamicVar(_ref77) { let { name - } = _ref18; + } = _ref77; return [_wireFormat.SexpOpcodes.GetDynamicVar, EXPR.expr(name)]; } - Log(_ref19) { + Log(_ref78) { let { positional - } = _ref19; + } = _ref78; return [_wireFormat.SexpOpcodes.Log, this.Positional(positional)]; } } @@ -5648,8 +5817,6 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return this.If(stmt); case 'Each': return this.Each(stmt); - case 'With': - return this.With(stmt); case 'Let': return this.Let(stmt); case 'WithDynamicVars': @@ -5660,20 +5827,20 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return (0, _util.exhausted)(stmt); } } - Yield(_ref) { + Yield(_ref79) { let { to, positional - } = _ref; + } = _ref79; return [_wireFormat.SexpOpcodes.Yield, to, EXPR.Positional(positional)]; } - InElement(_ref2) { + InElement(_ref80) { let { guid, insertBefore, destination, block - } = _ref2; + } = _ref80; let wireBlock = CONTENT.NamedBlock(block)[1]; // let guid = args.guid; let wireDestination = EXPR.expr(destination); @@ -5684,59 +5851,59 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return [_wireFormat.SexpOpcodes.InElement, wireBlock, guid, wireDestination, wireInsertBefore]; } } - InvokeBlock(_ref3) { + InvokeBlock(_ref81) { let { head, args, blocks - } = _ref3; + } = _ref81; return [_wireFormat.SexpOpcodes.Block, EXPR.expr(head), ...EXPR.Args(args), CONTENT.NamedBlocks(blocks)]; } - AppendTrustedHTML(_ref4) { + AppendTrustedHTML(_ref82) { let { html - } = _ref4; + } = _ref82; return [_wireFormat.SexpOpcodes.TrustingAppend, EXPR.expr(html)]; } - AppendTextNode(_ref5) { + AppendTextNode(_ref83) { let { text - } = _ref5; + } = _ref83; return [_wireFormat.SexpOpcodes.Append, EXPR.expr(text)]; } - AppendComment(_ref6) { + AppendComment(_ref84) { let { value - } = _ref6; + } = _ref84; return [_wireFormat.SexpOpcodes.Comment, value.chars]; } - SimpleElement(_ref7) { + SimpleElement(_ref85) { let { tag, params, body, dynamicFeatures - } = _ref7; + } = _ref85; let op = dynamicFeatures ? _wireFormat.SexpOpcodes.OpenElementWithSplat : _wireFormat.SexpOpcodes.OpenElement; return new WireStatements([[op, deflateTagName(tag.chars)], ...CONTENT.ElementParameters(params).toArray(), [_wireFormat.SexpOpcodes.FlushElement], ...CONTENT.list(body), [_wireFormat.SexpOpcodes.CloseElement]]); } - Component(_ref8) { + Component(_ref86) { let { tag, params, args, blocks - } = _ref8; + } = _ref86; let wireTag = EXPR.expr(tag); let wirePositional = CONTENT.ElementParameters(params); let wireNamed = EXPR.NamedArguments(args); let wireNamedBlocks = CONTENT.NamedBlocks(blocks); return [_wireFormat.SexpOpcodes.Component, wireTag, wirePositional.toPresentArray(), wireNamed, wireNamedBlocks]; } - ElementParameters(_ref9) { + ElementParameters(_ref87) { let { body - } = _ref9; + } = _ref87; return body.map(p => CONTENT.ElementParameter(p)); } ElementParameter(param) { @@ -5751,10 +5918,10 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", return [_wireFormat.SexpOpcodes.Modifier, EXPR.expr(param.callee), ...EXPR.Args(param.args)]; } } - NamedBlocks(_ref10) { + NamedBlocks(_ref88) { let { blocks - } = _ref10; + } = _ref88; let names = []; let serializedBlocks = []; for (let block of blocks.toArray()) { @@ -5764,85 +5931,77 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", } return names.length > 0 ? [names, serializedBlocks] : null; } - NamedBlock(_ref11) { + NamedBlock(_ref89) { let { name, body, scope - } = _ref11; + } = _ref89; let nameChars = name.chars; if (nameChars === 'inverse') { nameChars = 'else'; } return [nameChars, [CONTENT.list(body), scope.slots]]; } - If(_ref12) { + If(_ref90) { let { condition, block, inverse - } = _ref12; + } = _ref90; return [_wireFormat.SexpOpcodes.If, EXPR.expr(condition), CONTENT.NamedBlock(block)[1], inverse ? CONTENT.NamedBlock(inverse)[1] : null]; } - Each(_ref13) { + Each(_ref91) { let { value, key, block, inverse - } = _ref13; + } = _ref91; return [_wireFormat.SexpOpcodes.Each, EXPR.expr(value), key ? EXPR.expr(key) : null, CONTENT.NamedBlock(block)[1], inverse ? CONTENT.NamedBlock(inverse)[1] : null]; } - With(_ref14) { - let { - value, - block, - inverse - } = _ref14; - return [_wireFormat.SexpOpcodes.With, EXPR.expr(value), CONTENT.NamedBlock(block)[1], inverse ? CONTENT.NamedBlock(inverse)[1] : null]; - } - Let(_ref15) { + Let(_ref92) { let { positional, block - } = _ref15; + } = _ref92; return [_wireFormat.SexpOpcodes.Let, EXPR.Positional(positional), CONTENT.NamedBlock(block)[1]]; } - WithDynamicVars(_ref16) { + WithDynamicVars(_ref93) { let { named, block - } = _ref16; + } = _ref93; return [_wireFormat.SexpOpcodes.WithDynamicVars, EXPR.NamedArguments(named), CONTENT.NamedBlock(block)[1]]; } - InvokeComponent(_ref17) { + InvokeComponent(_ref94) { let { definition, args, blocks - } = _ref17; + } = _ref94; return [_wireFormat.SexpOpcodes.InvokeComponent, EXPR.expr(definition), EXPR.Positional(args.positional), EXPR.NamedArguments(args.named), blocks ? CONTENT.NamedBlocks(blocks) : null]; } } const CONTENT = new ContentEncoder(); - function staticAttr(_ref18) { + function staticAttr(_ref95) { let { name, value, namespace - } = _ref18; + } = _ref95; let out = [deflateAttrName(name.chars), value.chars]; if (namespace) { out.push(namespace); } return out; } - function dynamicAttr(_ref19) { + function dynamicAttr(_ref96) { let { name, value, namespace - } = _ref19; + } = _ref96; let out = [deflateAttrName(name.chars), EXPR.expr(value)]; if (namespace) { out.push(namespace); @@ -5908,10 +6067,12 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", * @param {string} string a Glimmer template string * @return {string} a template javascript string */ - function precompileJSON(string) { + function precompileJSON(string, options) { var _options$meta, _options$strictMode; - let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultOptions; - const source = new _syntax.src.Source(string != null ? string : '', (_options$meta = options.meta) == null ? void 0 : _options$meta.moduleName); + if (options === void 0) { + options = defaultOptions; + } + const source = new _syntax.src.Source(string != null ? string : '', (_options$meta = options.meta) == null ? void 0 : _options$meta.moduleName); const [ast, locals] = (0, _syntax.normalize)(source, { lexicalScope: () => false, ...options @@ -5944,9 +6105,11 @@ define("@glimmer/compiler", ["exports", "@glimmer/util", "@glimmer/wire-format", * @param {string} string a Glimmer template string * @return {string} a template javascript string */ - function precompile(source) { + function precompile(source, options) { var _options$meta2, _options$strictMode2; - let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultOptions; + if (options === void 0) { + options = defaultOptions; + } const [block, usedLocals] = precompileJSON(source, options); const moduleName = (_options$meta2 = options.meta) == null ? void 0 : _options$meta2.moduleName; const idFn = options.id || defaultId; @@ -6106,8 +6269,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba For example, ember-template-recast attempts to always preserve the original string formatting in each AST node if no modifications are made to it. */ - handledByOverride(node) { - let ensureLeadingWhitespace = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; + handledByOverride(node, ensureLeadingWhitespace) { + if (ensureLeadingWhitespace === void 0) { + ensureLeadingWhitespace = false; + } if (this.options.override !== undefined) { let result = this.options.override(node, this.options); if (typeof result === 'string') { @@ -6124,7 +6289,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba switch (node.type) { case 'MustacheStatement': case 'BlockStatement': - case 'PartialStatement': case 'MustacheCommentStatement': case 'CommentStatement': case 'TextNode': @@ -6141,8 +6305,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba case 'PathExpression': case 'SubExpression': return this.Expression(node); - case 'Program': - return this.Block(node); case 'ConcatStatement': // should have an AttrNode parent return this.ConcatStatement(node); @@ -6188,8 +6350,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return this.MustacheStatement(statement); case 'BlockStatement': return this.BlockStatement(statement); - case 'PartialStatement': - return this.PartialStatement(statement); case 'MustacheCommentStatement': return this.MustacheCommentStatement(statement); case 'CommentStatement': @@ -6199,13 +6359,17 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba case 'ElementNode': return this.ElementNode(statement); case 'Block': - case 'Template': return this.Block(statement); + case 'Template': + return this.Template(statement); case 'AttrNode': // should have element return this.AttrNode(statement); } } + Template(template) { + this.TopLevelStatements(template.body); + } Block(block) { /* When processing a template like: @@ -6326,7 +6490,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if (this.handledByOverride(mustache)) { return; } - this.buffer += mustache.escaped ? '{{' : '{{{'; + this.buffer += mustache.trusting ? '{{{' : '{{'; if (mustache.strip.open) { this.buffer += '~'; } @@ -6336,7 +6500,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if (mustache.strip.close) { this.buffer += '~'; } - this.buffer += mustache.escaped ? '}}' : '}}}'; + this.buffer += mustache.trusting ? '}}}' : '}}'; } BlockStatement(block) { if (this.handledByOverride(block)) { @@ -6377,16 +6541,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba BlockParams(blockParams) { this.buffer += " as |" + blockParams.join(' ') + "|"; } - PartialStatement(partial) { - if (this.handledByOverride(partial)) { - return; - } - this.buffer += '{{>'; - this.Expression(partial.name); - this.Params(partial.params); - this.Hash(partial.hash); - this.buffer += '}}'; - } ConcatStatement(concat) { if (this.handledByOverride(concat)) { return; @@ -6511,18 +6665,30 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return this.buffer; } } - function build(ast) { - let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : { - entityEncoding: 'transformed' - }; + function build(ast, options) { + if (options === void 0) { + options = { + entityEncoding: 'transformed' + }; + } if (!ast) { return ''; } let printer = new Printer(options); return printer.print(ast); } - function isKeyword(word) { - return word in KEYWORDS_TYPES; + function isKeyword(word, type) { + if (word in KEYWORDS_TYPES) { + if (type === undefined) { + return true; + } else { + let types = KEYWORDS_TYPES[word]; + // This seems like a TypeScript bug – it inferred types as never[]? + return types.includes(type); + } + } else { + return false; + } } /** @@ -6530,6 +6696,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * language, and where their valid usages are. */ const KEYWORDS_TYPES = _exports.KEYWORDS_TYPES = { + action: ['Call', 'Modifier'], component: ['Call', 'Append', 'Block'], debugger: ['Append'], 'each-in': ['Block'], @@ -6540,17 +6707,14 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if: ['Call', 'Append', 'Block'], 'in-element': ['Block'], let: ['Block'], - 'link-to': ['Append', 'Block'], log: ['Call', 'Append'], - modifier: ['Call'], + modifier: ['Call', 'Modifier'], mount: ['Append'], mut: ['Call', 'Append'], outlet: ['Append'], - 'query-params': ['Call'], readonly: ['Call', 'Append'], unbound: ['Call', 'Append'], unless: ['Call', 'Append', 'Block'], - with: ['Block'], yield: ['Append'] }; const UNKNOWN_POSITION = Object.freeze({ @@ -6661,6 +6825,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // This big block is the bulk of the heavy lifting in this file. It facilitates exhaustiveness // checking so that matchers can ensure they've actually covered all the cases (and TypeScript // will treat it as an exhaustive match). + when(left, right, callback) { this._whens.get(left, () => new When()).add(right, callback); return this; @@ -6780,8 +6945,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba static synthetic(chars) { return new InvisibleSpan(OffsetKind.InternalsSynthetic, NON_EXISTENT_LOCATION, chars).wrap(); } - static broken() { - let pos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : BROKEN_LOCATION; + static broken(pos) { + if (pos === void 0) { + pos = BROKEN_LOCATION; + } return new InvisibleSpan(OffsetKind.Broken, pos).wrap(); } constructor(data) { @@ -7003,12 +7170,14 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } } class HbsSpan { - constructor(source, hbsPositions) { + constructor(source, hbsPositions, providedHbsLoc) { + if (providedHbsLoc === void 0) { + providedHbsLoc = null; + } this.kind = OffsetKind.HbsPosition; this._charPosSpan = null; // the source location from Handlebars + AST Plugins -- could be wrong this._providedHbsLoc = void 0; - let providedHbsLoc = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; this.source = source; this.hbsPositions = hbsPositions; this._providedHbsLoc = providedHbsLoc; @@ -7089,8 +7258,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba class InvisibleSpan { constructor(kind, // whatever was provided, possibly broken - loc) { - let string = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; + loc, + // if the span represents a synthetic string + string) { + if (string === void 0) { + string = null; + } this.kind = kind; this.loc = loc; this.string = string; @@ -7200,8 +7373,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * calling code determined (or knows) that the `SourceLocation` doesn't correspond correctly to * any part of the source. */ - static broken() { - let pos = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : UNKNOWN_POSITION; + static broken(pos) { + if (pos === void 0) { + pos = UNKNOWN_POSITION; + } return new InvisiblePosition(OffsetKind.Broken, pos).wrap(); } constructor(data) { @@ -7333,10 +7508,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } } class HbsPosition { - constructor(source, hbsPos) { + constructor(source, hbsPos, charPos) { + if (charPos === void 0) { + charPos = null; + } this.kind = OffsetKind.HbsPosition; this._charPos = void 0; - let charPos = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; this.source = source; this.hbsPos = hbsPos; this._charPos = charPos === null ? null : new CharPosition(source, charPos); @@ -7419,43 +7596,47 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * * @see {SourceOffset#eql} */ - const eql = match(m => m.when(OffsetKind.HbsPosition, OffsetKind.HbsPosition, (_ref, _ref2) => { + const eql = match(m => m.when(OffsetKind.HbsPosition, OffsetKind.HbsPosition, (_ref6, _ref7) => { let { hbsPos: left - } = _ref; + } = _ref6; let { hbsPos: right - } = _ref2; + } = _ref7; return left.column === right.column && left.line === right.line; - }).when(OffsetKind.CharPosition, OffsetKind.CharPosition, (_ref3, _ref4) => { + }).when(OffsetKind.CharPosition, OffsetKind.CharPosition, (_ref8, _ref9) => { let { charPos: left - } = _ref3; + } = _ref8; let { charPos: right - } = _ref4; + } = _ref9; return left === right; - }).when(OffsetKind.CharPosition, OffsetKind.HbsPosition, (_ref5, right) => { + }).when(OffsetKind.CharPosition, OffsetKind.HbsPosition, (_ref10, right) => { var _right$toCharPos; let { offset: left - } = _ref5; + } = _ref10; return left === ((_right$toCharPos = right.toCharPos()) == null ? void 0 : _right$toCharPos.offset); - }).when(OffsetKind.HbsPosition, OffsetKind.CharPosition, (left, _ref6) => { + }).when(OffsetKind.HbsPosition, OffsetKind.CharPosition, (left, _ref11) => { var _left$toCharPos; let { offset: right - } = _ref6; + } = _ref11; return ((_left$toCharPos = left.toCharPos()) == null ? void 0 : _left$toCharPos.offset) === right; }).when(MatchAny, MatchAny, () => false)); class Source { - static from(source) { + static from(source, options) { var _options$meta; - let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + if (options === void 0) { + options = {}; + } return new Source(source, (_options$meta = options.meta) == null ? void 0 : _options$meta.moduleName); } - constructor(source) { - let module = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'an unknown module'; + constructor(source, module) { + if (module === void 0) { + module = 'an unknown module'; + } this.source = source; this.module = module; } @@ -7475,11 +7656,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba column }); } - spanFor(_ref) { + spanFor(_ref12) { let { start, end - } = _ref; + } = _ref12; return SourceSpan.forHbsLoc(this, { start: { line: start.line, @@ -7544,13 +7725,17 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } } class SpanList { - static range(span) { - let fallback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : SourceSpan.NON_EXISTENT; + static range(span, fallback) { + if (fallback === void 0) { + fallback = SourceSpan.NON_EXISTENT; + } return new SpanList(span.map(loc)).getRangeOffset(fallback); } - constructor() { + constructor(span) { + if (span === void 0) { + span = []; + } this._span = void 0; - let span = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; this._span = span; } add(offset) { @@ -7626,13 +7811,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // ensure stays in sync with typing // ParentNode and ChildKey types are derived from VisitorKeysMap const visitorKeys = _exports.visitorKeys = { - Program: ['body'], Template: ['body'], Block: ['body'], MustacheStatement: ['path', 'params', 'hash'], BlockStatement: ['path', 'params', 'hash', 'program', 'inverse'], ElementModifierStatement: ['path', 'params', 'hash'], - PartialStatement: ['name', 'params', 'hash'], CommentStatement: [], MustacheCommentStatement: [], ElementNode: ['attributes', 'modifiers', 'children', 'comments'], @@ -7641,18 +7824,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba ConcatStatement: ['parts'], SubExpression: ['path', 'params', 'hash'], PathExpression: [], - PathHead: [], StringLiteral: [], BooleanLiteral: [], NumberLiteral: [], NullLiteral: [], UndefinedLiteral: [], Hash: ['pairs'], - HashPair: ['value'], - // v2 new nodes - NamedBlock: ['attributes', 'modifiers', 'children', 'comments'], - SimpleElement: ['attributes', 'modifiers', 'children', 'comments'], - Component: ['head', 'attributes', 'modifiers', 'children', 'comments'] + HashPair: ['value'] }; const TraversalError = function () { TraversalError.prototype = Object.create(Error.prototype); @@ -7679,12 +7857,16 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return new TraversalError('Replacing and removing in key handlers is not yet supported.', node, null, key); } class WalkerPath { - constructor(node) { + constructor(node, parent, parentKey) { + if (parent === void 0) { + parent = null; + } + if (parentKey === void 0) { + parentKey = null; + } this.node = void 0; this.parent = void 0; this.parentKey = void 0; - let parent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null; - let parentKey = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null; this.node = node; this.parent = parent; this.parentKey = parentKey; @@ -7745,8 +7927,9 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return keyVisitor.All; } function getNodeHandler(visitor, nodeType) { - if (nodeType === 'Template' || nodeType === 'Block') { - if (visitor.Program) { + if (visitor.Program) { + if (nodeType === 'Template' && !visitor.Template || nodeType === 'Block' && !visitor.Block) { + (0, _util.deprecate)("The 'Program' visitor node is deprecated. Use 'Template' or 'Block' instead (node was '" + nodeType + "') "); return visitor.Program; } } @@ -7909,87 +8092,26 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba switch (node.type) { case 'Block': case 'Template': - return visitors.Program(this, node, callback); + walkBody(this, node.body, callback); + return; case 'ElementNode': - return visitors.ElementNode(this, node, callback); + walkBody(this, node.children, callback); + return; case 'BlockStatement': - return visitors.BlockStatement(this, node, callback); + this.visit(node.program, callback); + this.visit(node.inverse || null, callback); + return; default: return; } } } _exports.Walker = _exports.Path = Walker; - const visitors = { - Program(walker, node, callback) { - walkBody(walker, node.body, callback); - }, - Template(walker, node, callback) { - walkBody(walker, node.body, callback); - }, - Block(walker, node, callback) { - walkBody(walker, node.body, callback); - }, - ElementNode(walker, node, callback) { - walkBody(walker, node.children, callback); - }, - BlockStatement(walker, node, callback) { - walker.visit(node.program, callback); - walker.visit(node.inverse || null, callback); - } - }; function walkBody(walker, body, callback) { for (const child of body) { walker.visit(child, callback); } } - - // Regex to validate the identifier for block parameters. - // Based on the ID validation regex in Handlebars. - let ID_INVERSE_PATTERN = /[!"#%&'()*+./;<=>@[\\\]^`{|}~]/u; - - // Checks the element's attributes to see if it uses block params. - // If it does, registers the block params with the program and - // removes the corresponding attributes from the element. - - function parseElementBlockParams(element) { - let params = parseBlockParams(element); - if (params) element.blockParams = params; - } - function parseBlockParams(element) { - let l = element.attributes.length; - let attrNames = []; - for (let i = 0; i < l; i++) { - attrNames.push((0, _util.unwrap)(element.attributes[i]).name); - } - let asIndex = attrNames.indexOf('as'); - if (asIndex === -1 && attrNames.length > 0 && (0, _util.unwrap)(attrNames[attrNames.length - 1]).charAt(0) === '|') { - throw generateSyntaxError('Block parameters must be preceded by the `as` keyword, detected block parameters without `as`', element.loc); - } - if (asIndex !== -1 && l > asIndex && (0, _util.unwrap)(attrNames[asIndex + 1]).charAt(0) === '|') { - // Some basic validation, since we're doing the parsing ourselves - let paramsString = attrNames.slice(asIndex).join(' '); - if (paramsString.charAt(paramsString.length - 1) !== '|' || (0, _util.expect)(paramsString.match(/\|/gu), "block params must exist here").length !== 2) { - throw generateSyntaxError("Invalid block parameters syntax, '" + paramsString + "'", element.loc); - } - let params = []; - for (let i = asIndex + 1; i < l; i++) { - let param = (0, _util.unwrap)(attrNames[i]).replace(/\|/gu, ''); - if (param !== '') { - if (ID_INVERSE_PATTERN.test(param)) { - throw generateSyntaxError("Invalid identifier for block parameters, '" + param + "'", element.loc); - } - params.push(param); - } - } - if (params.length === 0) { - throw generateSyntaxError('Cannot use zero block parameters', element.loc); - } - element.attributes = element.attributes.slice(0, asIndex); - return params; - } - return null; - } function childrenFor(node) { switch (node.type) { case 'Block': @@ -8031,349 +8153,349 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // const SOURCE = new Source('', '(tests)'); // Statements - function buildMustache(path, params, hash, raw, loc, strip) { - if (typeof path === 'string') { - path = buildPath(path); + + function buildMustache(path, params, hash, trusting, loc, strip) { + if (params === void 0) { + params = []; } - return { - type: 'MustacheStatement', - path, - params: params || [], - hash: hash || buildHash([]), - escaped: !raw, - trusting: !!raw, - loc: buildLoc(loc || null), - strip: strip || { - open: false, - close: false - } - }; + if (hash === void 0) { + hash = buildHash([]); + } + if (trusting === void 0) { + trusting = false; + } + return b.mustache({ + path: buildPath(path), + params, + hash, + trusting, + strip, + loc: buildLoc(loc || null) + }); } function buildBlock(path, params, hash, _defaultBlock, _elseBlock, loc, openStrip, inverseStrip, closeStrip) { + var _elseBlock2; + if (_elseBlock === void 0) { + _elseBlock = null; + } let defaultBlock; - let elseBlock; + let elseBlock = null; if (_defaultBlock.type === 'Template') { - defaultBlock = (0, _util.assign)({}, _defaultBlock, { - type: 'Block' + (0, _util.deprecate)("b.program is deprecated. Use b.blockItself instead."); + defaultBlock = b.blockItself({ + params: buildBlockParams(_defaultBlock.blockParams), + body: _defaultBlock.body, + loc: _defaultBlock.loc }); } else { defaultBlock = _defaultBlock; } - if (_elseBlock !== undefined && _elseBlock !== null && _elseBlock.type === 'Template') { - elseBlock = (0, _util.assign)({}, _elseBlock, { - type: 'Block' + if (((_elseBlock2 = _elseBlock) == null ? void 0 : _elseBlock2.type) === 'Template') { + (0, _util.deprecate)("b.program is deprecated. Use b.blockItself instead."); + (0, _util.assert)(_elseBlock.blockParams.length === 0, '{{else}} block cannot have block params'); + elseBlock = b.blockItself({ + params: [], + body: _elseBlock.body, + loc: _elseBlock.loc }); } else { elseBlock = _elseBlock; } - return { - type: 'BlockStatement', + return b.block({ path: buildPath(path), params: params || [], hash: hash || buildHash([]), - program: defaultBlock || null, - inverse: elseBlock || null, + defaultBlock, + elseBlock, loc: buildLoc(loc || null), - openStrip: openStrip || { - open: false, - close: false - }, - inverseStrip: inverseStrip || { - open: false, - close: false - }, - closeStrip: closeStrip || { - open: false, - close: false - } - }; + openStrip, + inverseStrip, + closeStrip + }); } function buildElementModifier(path, params, hash, loc) { - return { - type: 'ElementModifierStatement', + return b.elementModifier({ path: buildPath(path), params: params || [], hash: hash || buildHash([]), loc: buildLoc(loc || null) - }; - } - function buildPartial(name, params, hash, indent, loc) { - return { - type: 'PartialStatement', - name: name, - params: params || [], - hash: hash || buildHash([]), - indent: indent || '', - strip: { - open: false, - close: false - }, - loc: buildLoc(loc || null) - }; + }); } function buildComment(value, loc) { - return { - type: 'CommentStatement', + return b.comment({ value: value, loc: buildLoc(loc || null) - }; + }); } function buildMustacheComment(value, loc) { - return { - type: 'MustacheCommentStatement', + return b.mustacheComment({ value: value, loc: buildLoc(loc || null) - }; + }); } function buildConcat(parts, loc) { if (!(0, _util.isPresentArray)(parts)) { throw new Error("b.concat requires at least one part"); } - return { - type: 'ConcatStatement', - parts: parts || [], + return b.concat({ + parts, loc: buildLoc(loc || null) - }; + }); } // Nodes - function buildElement(tag) { - let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + function buildElement(tag, options) { + if (options === void 0) { + options = {}; + } let { attrs, blockParams, modifiers, comments, children, + openTag, + closeTag: _closeTag, loc } = options; - let tagName; // this is used for backwards compat, prior to `selfClosing` being part of the ElementNode AST - let selfClosing = false; - if (typeof tag === 'object') { + let path; + let selfClosing; + if (typeof tag === 'string') { + if (tag.endsWith('/')) { + path = buildPath(tag.slice(0, -1)); + selfClosing = true; + } else { + path = buildPath(tag); + } + } else if ('type' in tag) { + (0, _util.assert)(tag.type === 'PathExpression', "Invalid tag type " + tag.type); + path = tag; + } else if ('path' in tag) { + (0, _util.assert)(tag.path.type === 'PathExpression', "Invalid tag type " + tag.path.type); + path = tag.path; selfClosing = tag.selfClosing; - tagName = tag.name; - } else if (tag.slice(-1) === '/') { - tagName = tag.slice(0, -1); - selfClosing = true; } else { - tagName = tag; + path = buildPath(tag.name); + selfClosing = tag.selfClosing; } - return { - type: 'ElementNode', - tag: tagName, - selfClosing: selfClosing, + if (selfClosing) { + (0, _util.assert)(_closeTag === null || _closeTag === undefined, 'Cannot build a self-closing tag with a closeTag source location'); + } + let params = blockParams == null ? void 0 : blockParams.map(param => { + if (typeof param === 'string') { + return buildVar(param); + } else { + return param; + } + }); + let closeTag = null; + if (_closeTag) { + closeTag = buildLoc(_closeTag || null); + } else if (_closeTag === undefined) { + closeTag = selfClosing || isVoidTag(path.original) ? null : buildLoc(null); + } + return b.element({ + path, + selfClosing: selfClosing || false, attributes: attrs || [], - blockParams: blockParams || [], + params: params || [], modifiers: modifiers || [], comments: comments || [], children: children || [], + openTag: buildLoc(openTag || null), + closeTag, loc: buildLoc(loc || null) - }; + }); } function buildAttr(name, value, loc) { - return { - type: 'AttrNode', + return b.attr({ name: name, value: value, loc: buildLoc(loc || null) - }; + }); } function buildText(chars, loc) { - return { - type: 'TextNode', - chars: chars || '', + if (chars === void 0) { + chars = ''; + } + return b.text({ + chars, loc: buildLoc(loc || null) - }; + }); } // Expressions function buildSexpr(path, params, hash, loc) { - return { - type: 'SubExpression', + if (params === void 0) { + params = []; + } + if (hash === void 0) { + hash = buildHash([]); + } + return b.sexpr({ path: buildPath(path), - params: params || [], - hash: hash || buildHash([]), + params, + hash, loc: buildLoc(loc || null) - }; - } - function headToString$1(head) { - switch (head.type) { - case 'AtHead': - return { - original: head.name, - parts: [head.name] - }; - case 'ThisHead': - return { - original: "this", - parts: [] - }; - case 'VarHead': - return { - original: head.name, - parts: [head.name] - }; - } + }); } function buildHead(original, loc) { let [head, ...tail] = (0, _util.asPresentArray)(original.split('.')); - let headNode; - if (head === 'this') { - headNode = { - type: 'ThisHead', - loc: buildLoc(loc || null) - }; - } else if (head[0] === '@') { - headNode = { - type: 'AtHead', - name: head, - loc: buildLoc(loc || null) - }; - } else { - headNode = { - type: 'VarHead', - name: head, - loc: buildLoc(loc || null) - }; - } - return { + let headNode = b.head({ + original: head, + loc: buildLoc(loc || null) + }); + return b.path({ head: headNode, - tail - }; + tail, + loc: buildLoc(loc || null) + }); } function buildThis(loc) { - return { - type: 'ThisHead', + return b.this({ loc: buildLoc(loc || null) - }; + }); } function buildAtName(name, loc) { - // the `@` should be included so we have a complete source range - (0, _util.assert)(name[0] === '@', "call builders.at() with a string that starts with '@'"); - return { - type: 'AtHead', + return b.atName({ name, loc: buildLoc(loc || null) - }; + }); } function buildVar(name, loc) { - (0, _util.assert)(name !== 'this', "You called builders.var() with 'this'. Call builders.this instead"); - (0, _util.assert)(name[0] !== '@', "You called builders.var() with '" + name + "'. Call builders.at('" + name + "') instead"); - return { - type: 'VarHead', + return b.var({ name, loc: buildLoc(loc || null) - }; - } - function buildHeadFromString(head, loc) { - if (head[0] === '@') { - return buildAtName(head, loc); - } else if (head === 'this') { - return buildThis(loc); - } else { - return buildVar(head, loc); - } + }); } - function buildNamedBlockName(name, loc) { - return { - type: 'NamedBlockName', - name, + function buildHeadFromString(original, loc) { + return b.head({ + original, loc: buildLoc(loc || null) - }; + }); } function buildCleanPath(head, tail, loc) { - let { - original: originalHead, - parts: headParts - } = headToString$1(head); - let parts = [...headParts, ...tail]; - let original = [...originalHead, ...parts].join('.'); - return new PathExpressionImplV1(original, head, tail, buildLoc(loc || null)); + if (tail === void 0) { + tail = []; + } + return b.path({ + head, + tail, + loc: buildLoc(loc || null) + }); } function buildPath(path, loc) { + let span = buildLoc(loc || null); if (typeof path !== 'string') { if ('type' in path) { return path; } else { + (0, _util.assert)(path.head.indexOf('.') === -1, "builder.path({ head, tail }) should not be called with a head with dots in it"); let { head, tail - } = buildHead(path.head, SourceSpan.broken()); - (0, _util.assert)(tail.length === 0, "builder.path({ head, tail }) should not be called with a head with dots in it"); - let { - original: originalHead - } = headToString$1(head); - return new PathExpressionImplV1([originalHead, ...tail].join('.'), head, tail, buildLoc(loc || null)); + } = path; + return b.path({ + head: b.head({ + original: head, + loc: span.sliceStartChars({ + chars: head.length + }) + }), + tail, + loc: buildLoc(loc || null) + }); } } let { head, tail - } = buildHead(path, SourceSpan.broken()); - return new PathExpressionImplV1(path, head, tail, buildLoc(loc || null)); + } = buildHead(path, span); + return b.path({ + head, + tail, + loc: span + }); } function buildLiteral(type, value, loc) { - return { + return b.literal({ type, value, - original: value, loc: buildLoc(loc || null) - }; + }); } // Miscellaneous function buildHash(pairs, loc) { - return { - type: 'Hash', - pairs: pairs || [], + if (pairs === void 0) { + pairs = []; + } + return b.hash({ + pairs, loc: buildLoc(loc || null) - }; + }); } function buildPair(key, value, loc) { - return { - type: 'HashPair', - key: key, + return b.pair({ + key, value, loc: buildLoc(loc || null) - }; + }); } function buildProgram(body, blockParams, loc) { - return { - type: 'Template', - body: body || [], - blockParams: blockParams || [], - loc: buildLoc(loc || null) - }; + (0, _util.deprecate)("b.program is deprecated. Use b.template or b.blockItself instead."); + if (blockParams && blockParams.length) { + return buildBlockItself(body, blockParams, false, loc); + } else { + return buildTemplate(body, [], loc); + } } - function buildBlockItself(body, blockParams) { - let chained = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; - let loc = arguments.length > 3 ? arguments[3] : undefined; - return { - type: 'Block', - body: body || [], - blockParams: blockParams || [], + function buildBlockParams(params) { + return params.map(p => typeof p === 'string' ? b.var({ + name: p, + loc: SourceSpan.synthetic(p) + }) : p); + } + function buildBlockItself(body, params, chained, loc) { + if (body === void 0) { + body = []; + } + if (params === void 0) { + params = []; + } + if (chained === void 0) { + chained = false; + } + return b.blockItself({ + body, + params: buildBlockParams(params), chained, loc: buildLoc(loc || null) - }; + }); } function buildTemplate(body, blockParams, loc) { - return { - type: 'Template', - body: body || [], - blockParams: blockParams || [], + if (body === void 0) { + body = []; + } + if (blockParams === void 0) { + blockParams = []; + } + return b.template({ + body, + blockParams, loc: buildLoc(loc || null) - }; + }); } function buildPosition(line, column) { - return { + return b.pos({ line, column - }; + }); } function buildLoc() { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { @@ -8395,8 +8517,8 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba column: startColumn }, end: { - line: endLine, - column: endColumn + line: endLine || startLine, + column: endColumn || startColumn } }); } @@ -8404,7 +8526,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba var publicBuilder = _exports.builders = { mustache: buildMustache, block: buildBlock, - partial: buildPartial, comment: buildComment, mustacheComment: buildMustacheComment, element: buildElement, @@ -8427,7 +8548,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba at: buildAtName, var: buildVar, this: buildThis, - blockName: buildNamedBlockName, string: literal('StringLiteral'), boolean: literal('BooleanLiteral'), number: literal('NumberLiteral'), @@ -8443,48 +8563,127 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return buildLiteral(type, value, loc); }; } - class PathExpressionImplV1 { - constructor(original, head, tail, loc) { - this.type = 'PathExpression'; - this.parts = void 0; - this.this = false; - this.data = false; - // Cache for the head value. - this._head = undefined; - this.original = original; - this.loc = loc; - let parts = tail.slice(); - if (head.type === 'ThisHead') { - this.this = true; - } else if (head.type === 'AtHead') { - this.data = true; - parts.unshift(head.name.slice(1)); - } else { - parts.unshift(head.name); + function buildLegacyMustache(_ref13) { + let { + path, + params, + hash, + trusting, + strip, + loc + } = _ref13; + const node = { + type: 'MustacheStatement', + path, + params, + hash, + trusting, + strip, + loc + }; + Object.defineProperty(node, 'escaped', { + enumerable: false, + get() { + (0, _util.deprecate)("The escaped property on mustache nodes is deprecated, use trusting instead"); + return !this.trusting; + }, + set(value) { + (0, _util.deprecate)("The escaped property on mustache nodes is deprecated, use trusting instead"); + this.trusting = !value; } - this.parts = parts; - } - get head() { - if (this._head) { - return this._head; + }); + return node; + } + function buildLegacyPath(_ref14) { + let { + head, + tail, + loc + } = _ref14; + const node = { + type: 'PathExpression', + head, + tail, + get original() { + return [this.head.original, ...this.tail].join('.'); + }, + set original(value) { + let [head, ...tail] = (0, _util.asPresentArray)(value.split('.')); + this.head = publicBuilder.head(head, this.head.loc); + this.tail = tail; + }, + loc + }; + Object.defineProperty(node, 'parts', { + enumerable: false, + get() { + (0, _util.deprecate)("The parts property on path nodes is deprecated, use head and tail instead"); + let parts = (0, _util.asPresentArray)(this.original.split('.')); + if (parts[0] === 'this') { + // parts does not include `this` + parts.shift(); + } else if (parts[0].startsWith('@')) { + // parts does not include leading `@` + parts[0] = parts[0].slice(1); + } + return Object.freeze(parts); + }, + set(values) { + var _parts$; + (0, _util.deprecate)("The parts property on mustache nodes is deprecated, use head and tail instead"); + let parts = [...values]; + + // you are not supposed to already have `this` or `@` in the parts, but since this is + // deprecated anyway, we will infer what you meant and allow it + if (parts[0] !== 'this' && !((_parts$ = parts[0]) != null && _parts$.startsWith('@'))) { + if (this.head.type === 'ThisHead') { + parts.unshift('this'); + } else if (this.head.type === 'AtHead') { + parts[0] = "@" + parts[0]; + } + } + this.original = parts.join('.'); } - let firstPart; - if (this.this) { - firstPart = 'this'; - } else if (this.data) { - firstPart = "@" + (0, _util.getFirst)((0, _util.asPresentArray)(this.parts)); - } else { - (0, _util.assertPresentArray)(this.parts); - firstPart = (0, _util.getFirst)(this.parts); + }); + Object.defineProperty(node, 'this', { + enumerable: false, + get() { + (0, _util.deprecate)("The this property on path nodes is deprecated, use head.type instead"); + return this.head.type === 'ThisHead'; } - let firstPartLoc = this.loc.collapse('start').sliceStartChars({ - chars: firstPart.length - }).loc; - return this._head = publicBuilder.head(firstPart, firstPartLoc); - } - get tail() { - return this.this ? this.parts : this.parts.slice(1); - } + }); + Object.defineProperty(node, 'data', { + enumerable: false, + get() { + (0, _util.deprecate)("The data property on path nodes is deprecated, use head.type instead"); + return this.head.type === 'AtHead'; + } + }); + return node; + } + function buildLegacyLiteral(_ref15) { + let { + type, + value, + loc + } = _ref15; + const node = { + type, + value, + loc + }; + Object.defineProperty(node, 'original', { + enumerable: false, + get() { + (0, _util.deprecate)("The original property on literal nodes is deprecated, use value instead"); + return this.value; + }, + set(value) { + (0, _util.deprecate)("The original property on literal nodes is deprecated, use value instead"); + this.value = value; + } + }); + return node; } const DEFAULT_STRIP = { close: false, @@ -8498,41 +8697,56 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * 2. Mandating source locations */ class Builders { - pos(line, column) { + pos(_ref16) { + let { + line, + column + } = _ref16; return { line, column }; } - blockItself(_ref) { + blockItself(_ref17) { let { - body = [], - blockParams = [], + body, + params, chained = false, loc - } = _ref; + } = _ref17; return { type: 'Block', - body: body, - blockParams: blockParams, + body, + params, + get blockParams() { + return this.params.map(p => p.name); + }, + set blockParams(params) { + this.params = params.map(name => { + return b.var({ + name, + loc: SourceSpan.synthetic(name) + }); + }); + }, chained, loc }; } - template(_ref2) { + template(_ref18) { let { body, blockParams, loc - } = _ref2; + } = _ref18; return { type: 'Template', - body: body || [], - blockParams: blockParams || [], + body, + blockParams, loc }; } - mustache(_ref3) { + mustache(_ref19) { let { path, params, @@ -8540,22 +8754,17 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba trusting, loc, strip = DEFAULT_STRIP - } = _ref3; - return { - type: 'MustacheStatement', + } = _ref19; + return buildLegacyMustache({ path, params, hash, - escaped: !trusting, trusting, - loc, - strip: strip || { - open: false, - close: false - } - }; + strip, + loc + }); } - block(_ref4) { + block(_ref20) { let { path, params, @@ -8566,7 +8775,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba openStrip = DEFAULT_STRIP, inverseStrip = DEFAULT_STRIP, closeStrip = DEFAULT_STRIP - } = _ref4; + } = _ref20; return { type: 'BlockStatement', path: path, @@ -8574,63 +8783,107 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba hash, program: defaultBlock, inverse: elseBlock, - loc: loc, - openStrip: openStrip, - inverseStrip: inverseStrip, - closeStrip: closeStrip + loc, + openStrip, + inverseStrip, + closeStrip }; } - comment(value, loc) { + comment(_ref21) { + let { + value, + loc + } = _ref21; return { type: 'CommentStatement', - value: value, + value, loc }; } - mustacheComment(value, loc) { + mustacheComment(_ref22) { + let { + value, + loc + } = _ref22; return { type: 'MustacheCommentStatement', - value: value, + value, loc }; } - concat(parts, loc) { + concat(_ref23) { + let { + parts, + loc + } = _ref23; return { type: 'ConcatStatement', parts, loc }; } - element(_ref5) { + element(_ref24) { let { - tag, + path, selfClosing, - attrs, - blockParams, + attributes, modifiers, + params, comments, children, + openTag, + closeTag, loc - } = _ref5; + } = _ref24; + let _selfClosing = selfClosing; return { type: 'ElementNode', - tag, - selfClosing: selfClosing, - attributes: attrs || [], - blockParams: blockParams || [], - modifiers: modifiers || [], - comments: comments || [], - children: children || [], - loc + path, + attributes, + modifiers, + params, + comments, + children, + openTag, + closeTag, + loc, + get tag() { + return this.path.original; + }, + set tag(name) { + this.path.original = name; + }, + get blockParams() { + return this.params.map(p => p.name); + }, + set blockParams(params) { + this.params = params.map(name => { + return b.var({ + name, + loc: SourceSpan.synthetic(name) + }); + }); + }, + get selfClosing() { + return _selfClosing; + }, + set selfClosing(selfClosing) { + _selfClosing = selfClosing; + if (selfClosing) { + this.closeTag = null; + } else { + this.closeTag = SourceSpan.synthetic(""); + } + } }; } - elementModifier(_ref6) { + elementModifier(_ref25) { let { path, params, hash, loc - } = _ref6; + } = _ref25; return { type: 'ElementModifierStatement', path, @@ -8639,12 +8892,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }; } - attr(_ref7) { + attr(_ref26) { let { name, value, loc - } = _ref7; + } = _ref26; return { type: 'AttrNode', name: name, @@ -8652,24 +8905,24 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }; } - text(_ref8) { + text(_ref27) { let { chars, loc - } = _ref8; + } = _ref27; return { type: 'TextNode', chars, loc }; } - sexpr(_ref9) { + sexpr(_ref28) { let { path, params, hash, loc - } = _ref9; + } = _ref28; return { type: 'SubExpression', path, @@ -8678,153 +8931,163 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }; } - path(_ref10) { + path(_ref29) { let { head, tail, loc - } = _ref10; + } = _ref29; + return buildLegacyPath({ + head, + tail, + loc + }); + } + head(_ref30) { let { - original: originalHead - } = headToString(head); - let original = [...originalHead, ...tail].join('.'); - return new PathExpressionImplV1(original, head, tail, loc); - } - head(head, loc) { - if (head[0] === '@') { - return this.atName(head, loc); - } else if (head === 'this') { - return this.this(loc); + original, + loc + } = _ref30; + if (original === 'this') { + return this.this({ + loc + }); + } + if (original[0] === '@') { + return this.atName({ + name: original, + loc + }); } else { - return this.var(head, loc); + return this.var({ + name: original, + loc + }); } } - this(loc) { + this(_ref31) { + let { + loc + } = _ref31; return { type: 'ThisHead', + get original() { + return 'this'; + }, loc }; } - atName(name, loc) { - // the `@` should be included so we have a complete source range - (0, _util.assert)(name[0] === '@', "call builders.at() with a string that starts with '@'"); - return { - type: 'AtHead', + atName(_ref32) { + let { name, loc + } = _ref32; + let _name = ''; + const node = { + type: 'AtHead', + get name() { + return _name; + }, + set name(value) { + (0, _util.assert)(value[0] === '@', "call builders.at() with a string that starts with '@'"); + (0, _util.assert)(value.indexOf('.') === -1, "builder.at() should not be called with a name with dots in it"); + _name = value; + }, + get original() { + return this.name; + }, + set original(value) { + this.name = value; + }, + loc }; + + // trigger the assertions + node.name = name; + return node; } - var(name, loc) { - (0, _util.assert)(name !== 'this', "You called builders.var() with 'this'. Call builders.this instead"); - (0, _util.assert)(name[0] !== '@', "You called builders.var() with '" + name + "'. Call builders.at('" + name + "') instead"); - return { - type: 'VarHead', + var(_ref33) { + let { name, loc + } = _ref33; + let _name = ''; + const node = { + type: 'VarHead', + get name() { + return _name; + }, + set name(value) { + (0, _util.assert)(value !== 'this', "You called builders.var() with 'this'. Call builders.this instead"); + (0, _util.assert)(value[0] !== '@', "You called builders.var() with '" + name + "'. Call builders.at('" + name + "') instead"); + (0, _util.assert)(value.indexOf('.') === -1, "builder.var() should not be called with a name with dots in it"); + _name = value; + }, + get original() { + return this.name; + }, + set original(value) { + this.name = value; + }, + loc }; + + // trigger the assertions + node.name = name; + return node; } - hash(pairs, loc) { + hash(_ref34) { + let { + pairs, + loc + } = _ref34; return { type: 'Hash', - pairs: pairs || [], + pairs, loc }; } - pair(_ref11) { + pair(_ref35) { let { key, value, loc - } = _ref11; + } = _ref35; return { type: 'HashPair', - key: key, + key, value, loc }; } - literal(_ref12) { + literal(_ref36) { let { type, value, loc - } = _ref12; - return { + } = _ref36; + return buildLegacyLiteral({ type, value, - original: value, - loc - }; - } - undefined() { - return this.literal({ - type: 'UndefinedLiteral', - value: undefined - }); - } - null() { - return this.literal({ - type: 'NullLiteral', - value: null - }); - } - string(value, loc) { - return this.literal({ - type: 'StringLiteral', - value, - loc - }); - } - boolean(value, loc) { - return this.literal({ - type: 'BooleanLiteral', - value, - loc - }); - } - number(value, loc) { - return this.literal({ - type: 'NumberLiteral', - value, loc }); } } - - // Nodes - - // Expressions - - function headToString(head) { - switch (head.type) { - case 'AtHead': - return { - original: head.name, - parts: [head.name] - }; - case 'ThisHead': - return { - original: "this", - parts: [] - }; - case 'VarHead': - return { - original: head.name, - parts: [head.name] - }; - } - } - var b = new Builders(); + const b = new Builders(); class Parser { - constructor(source) { + constructor(source, entityParser, mode) { + if (entityParser === void 0) { + entityParser = new _simpleHtmlTokenizer.EntityParser(_simpleHtmlTokenizer.HTML5NamedCharRefs); + } + if (mode === void 0) { + mode = 'precompile'; + } this.elementStack = []; this.lines = void 0; this.source = void 0; this.currentAttribute = null; this.currentNode = null; this.tokenizer = void 0; - let entityParser = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new _simpleHtmlTokenizer.EntityParser(_simpleHtmlTokenizer.HTML5NamedCharRefs); - let mode = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'precompile'; this.source = source; this.lines = source.source.split(/\r\n?|\n/u); this.tokenizer = new _simpleHtmlTokenizer.EventedTokenizer(this, entityParser, mode); @@ -8836,21 +9099,20 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } = this.tokenizer; return this.source.offsetFor(line, column); } - pos(_ref) { + pos(_ref37) { let { line, column - } = _ref; + } = _ref37; return this.source.offsetFor(line, column); } finish(node) { return (0, _util.assign)({}, node, { - loc: node.loc.until(this.offset()) + loc: node.start.until(this.offset()) }); // node.loc = node.loc.withEnd(end); } - get currentAttr() { return (0, _util.expect)(this.currentAttribute, 'expected attribute'); } @@ -8879,9 +9141,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba (0, _util.assert)(node && node.type === 'TextNode', 'expected a text node'); return node; } - acceptTemplate(node) { - return this[node.type](node); - } acceptNode(node) { return this[node.type](node); } @@ -8924,45 +9183,76 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba const BEFORE_ATTRIBUTE_NAME = 'beforeAttributeName'; const ATTRIBUTE_VALUE_UNQUOTED = 'attributeValueUnquoted'; class HandlebarsNodeVisitors extends Parser { - get isTopLevel() { - return this.elementStack.length === 0; - } - Program(program) { - const body = []; - let node; - if (this.isTopLevel) { - node = b.template({ - body, - blockParams: program.blockParams, - loc: this.source.spanFor(program.loc) - }); - } else { - node = b.blockItself({ - body, - blockParams: program.blockParams, - chained: program.chained, - loc: this.source.spanFor(program.loc) - }); - } - let i, - l = program.body.length; - this.elementStack.push(node); - if (l === 0) { - return this.elementStack.pop(); + constructor() { + super(...arguments); + // Because we interleave the HTML and HBS parsing, sometimes the HTML + // tokenizer can run out of tokens when we switch into {{...}} or reached + // EOF. There are positions where neither of these are expected, and it would + // like to generate an error, but there is no span to attach the error to. + // This allows the HTML tokenization to stash an error message and the next + // mustache visitor will attach the message to the appropriate span and throw + // the error. + this.pendingError = null; + } + parse(program, blockParams) { + var _this$pendingError; + let node = b.template({ + body: [], + blockParams, + loc: this.source.spanFor(program.loc) + }); + let template = this.parseProgram(node, program); + + // TODO: we really need to verify that the tokenizer is in an acceptable + // state when we are "done" parsing. For example, right now, `= limit) { + nameStart = -1; + } else { + nameStart = content.indexOf(name, skipStart); + } + if (nameStart === -1 || nameStart + name.length > limit) { + skipStart = limit; + loc = this.source.spanFor(NON_EXISTENT_LOCATION); + } else { + skipStart = nameStart; + loc = span.sliceStartChars({ + skipStart, + chars: name.length + }); + skipStart += name.length; + } + blockParams.push(b.var({ + name, + loc + })); + } + } // These are bugs in Handlebars upstream if (!block.program.loc) { @@ -8983,8 +9333,8 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if (block.inverse && !block.inverse.loc) { block.inverse.loc = NON_EXISTENT_LOCATION; } - const program = this.Program(block.program); - const inverse = block.inverse ? this.Program(block.inverse) : null; + const program = this.Program(block.program, blockParams); + const inverse = block.inverse ? this.Program(block.inverse, []) : null; const node = b.block({ path, params, @@ -9000,6 +9350,8 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba appendChild(parentProgram, node); } MustacheStatement(rawMustache) { + var _this$pendingError2; + (_this$pendingError2 = this.pendingError) == null || _this$pendingError2.mustache(this.source.spanFor(rawMustache.loc)); const { tokenizer } = this; @@ -9013,11 +9365,17 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc, strip } = rawMustache; + if ('original' in rawMustache.path && rawMustache.path.original === '...attributes') { + throw generateSyntaxError('Illegal use of ...attributes', this.source.spanFor(rawMustache.loc)); + } if (isHBSLiteral(rawMustache.path)) { mustache = b.mustache({ path: this.acceptNode(rawMustache.path), params: [], - hash: b.hash([], this.source.spanFor(rawMustache.path.loc).collapse('end')), + hash: b.hash({ + pairs: [], + loc: this.source.spanFor(rawMustache.path.loc).collapse('end') + }), trusting: !escaped, loc: this.source.spanFor(loc), strip @@ -9110,7 +9468,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba value, loc } = rawComment; - const comment = b.mustacheComment(value, this.source.spanFor(loc)); + const comment = b.mustacheComment({ + value, + loc: this.source.spanFor(loc) + }); switch (tokenizer.state) { case 'beforeAttributeName': case 'afterAttributeName': @@ -9188,50 +9549,51 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } let pathHead; if (thisHead) { - pathHead = { - type: 'ThisHead', - loc: { + pathHead = b.this({ + loc: this.source.spanFor({ start: path.loc.start, end: { line: path.loc.start.line, column: path.loc.start.column + 4 } - } - }; + }) + }); } else if (path.data) { const head = parts.shift(); if (head === undefined) { throw generateSyntaxError("Attempted to parse a path expression, but it was not valid. Paths beginning with @ must start with a-z.", this.source.spanFor(path.loc)); } - pathHead = { - type: 'AtHead', + pathHead = b.atName({ name: "@" + head, - loc: { + loc: this.source.spanFor({ start: path.loc.start, end: { line: path.loc.start.line, column: path.loc.start.column + head.length + 1 } - } - }; + }) + }); } else { const head = parts.shift(); if (head === undefined) { throw generateSyntaxError("Attempted to parse a path expression, but it was not valid. Paths must start with a-z or A-Z.", this.source.spanFor(path.loc)); } - pathHead = { - type: 'VarHead', + pathHead = b.var({ name: head, - loc: { + loc: this.source.spanFor({ start: path.loc.start, end: { line: path.loc.start.line, column: path.loc.start.column + head.length } - } - }; + }) + }); } - return new PathExpressionImplV1(path.original, pathHead, parts, this.source.spanFor(path.loc)); + return b.path({ + head: pathHead, + tail: parts, + loc: this.source.spanFor(path.loc) + }); } Hash(hash) { const pairs = hash.pairs.map(pair => b.pair({ @@ -9239,41 +9601,44 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba value: this.acceptNode(pair.value), loc: this.source.spanFor(pair.loc) })); - return b.hash(pairs, this.source.spanFor(hash.loc)); + return b.hash({ + pairs, + loc: this.source.spanFor(hash.loc) + }); } StringLiteral(string) { return b.literal({ type: 'StringLiteral', value: string.value, - loc: string.loc + loc: this.source.spanFor(string.loc) }); } BooleanLiteral(boolean) { return b.literal({ type: 'BooleanLiteral', value: boolean.value, - loc: boolean.loc + loc: this.source.spanFor(boolean.loc) }); } NumberLiteral(number) { return b.literal({ type: 'NumberLiteral', value: number.value, - loc: number.loc + loc: this.source.spanFor(number.loc) }); } UndefinedLiteral(undef) { return b.literal({ type: 'UndefinedLiteral', value: undefined, - loc: undef.loc + loc: this.source.spanFor(undef.loc) }); } NullLiteral(nul) { return b.literal({ type: 'NullLiteral', value: null, - loc: nul.loc + loc: this.source.spanFor(nul.loc) }); } } @@ -9311,33 +9676,44 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba tokenizer.column = column; } function acceptCallNodes(compiler, node) { - if (node.path.type.endsWith('Literal')) { - const path = node.path; - let value = ''; - if (path.type === 'BooleanLiteral') { - value = path.original.toString(); - } else if (path.type === 'StringLiteral') { - value = "\"" + path.original + "\""; - } else if (path.type === 'NullLiteral') { - value = 'null'; - } else if (path.type === 'NumberLiteral') { - value = path.value.toString(); - } else { - value = 'undefined'; - } - throw generateSyntaxError(path.type + " \"" + (path.type === 'StringLiteral' ? path.original : value) + "\" cannot be called as a sub-expression, replace (" + value + ") with " + value, compiler.source.spanFor(path.loc)); + let path; + switch (node.path.type) { + case 'PathExpression': + path = compiler.PathExpression(node.path); + break; + case 'SubExpression': + path = compiler.SubExpression(node.path); + break; + case 'StringLiteral': + case 'UndefinedLiteral': + case 'NullLiteral': + case 'NumberLiteral': + case 'BooleanLiteral': + { + let value; + if (node.path.type === 'BooleanLiteral') { + value = node.path.original.toString(); + } else if (node.path.type === 'StringLiteral') { + value = "\"" + node.path.original + "\""; + } else if (node.path.type === 'NullLiteral') { + value = 'null'; + } else if (node.path.type === 'NumberLiteral') { + value = node.path.value.toString(); + } else { + value = 'undefined'; + } + throw generateSyntaxError(node.path.type + " \"" + (node.path.type === 'StringLiteral' ? node.path.original : value) + "\" cannot be called as a sub-expression, replace (" + value + ") with " + value, compiler.source.spanFor(node.path.loc)); + } } - const path = node.path.type === 'PathExpression' ? compiler.PathExpression(node.path) : compiler.SubExpression(node.path); const params = node.params ? node.params.map(e => compiler.acceptNode(e)) : []; // if there is no hash, position it as a collapsed node immediately after the last param (or the // path, if there are also no params) const end = (0, _util.isPresentArray)(params) ? (0, _util.getLast)(params).loc : path.loc; - const hash = node.hash ? compiler.Hash(node.hash) : { - type: 'Hash', + const hash = node.hash ? compiler.Hash(node.hash) : b.hash({ pairs: [], loc: compiler.source.spanFor(end).collapse('end') - }; + }); return { path, params, @@ -9364,6 +9740,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba }); element.modifiers.push(modifier); } + + // vendored from simple-html-tokenizer because it's unexported + function isSpace(char) { + return /[\t\n\f ]/u.test(char); + } class TokenizerEventHandlers extends HandlebarsNodeVisitors { constructor() { super(...arguments); @@ -9377,29 +9758,33 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // Comment beginComment() { - this.currentNode = b.comment('', this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn)); + this.currentNode = { + type: 'CommentStatement', + value: '', + start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) + }; } appendToCommentData(char) { this.currentComment.value += char; } finishComment() { - appendChild(this.currentElement(), this.finish(this.currentComment)); + appendChild(this.currentElement(), b.comment(this.finish(this.currentComment))); } // Data beginData() { - this.currentNode = b.text({ + this.currentNode = { + type: 'TextNode', chars: '', - loc: this.offset().collapsed() - }); + start: this.offset() + }; } appendToData(char) { this.currentData.chars += char; } finishData() { - this.currentData.loc = this.currentData.loc.withEnd(this.offset()); - appendChild(this.currentElement(), this.currentData); + appendChild(this.currentElement(), b.text(this.finish(this.currentData))); } // Tags - basic @@ -9412,22 +9797,21 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba this.currentNode = { type: 'StartTag', name: '', + nameStart: null, + nameEnd: null, attributes: [], modifiers: [], comments: [], + params: [], selfClosing: false, - loc: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) + start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) }; } beginEndTag() { this.currentNode = { type: 'EndTag', name: '', - attributes: [], - modifiers: [], - comments: [], - selfClosing: false, - loc: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) + start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) }; } finishTag() { @@ -9436,7 +9820,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba this.finishStartTag(); if (tag.name === ':') { throw generateSyntaxError('Invalid named block named detected, you may have created a named block without a name, or you may have began your name with a number. Named blocks must have names that are at least one character long, and begin with a lower case letter', this.source.spanFor({ - start: this.currentTag.loc.toJSON(), + start: this.currentTag.start.toJSON(), end: this.offset().toJSON() })); } @@ -9450,41 +9834,93 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba finishStartTag() { let { name, - attributes: attrs, + nameStart, + nameEnd + } = this.currentStartTag; + + // <> should probably be a syntax error, but s-h-t is currently broken for that case + (0, _util.assert)(name !== '', 'tag name cannot be empty'); + (0, _util.assert)(nameStart !== null, 'nameStart unexpectedly null'); + (0, _util.assert)(nameEnd !== null, 'nameEnd unexpectedly null'); + let nameLoc = nameStart.until(nameEnd); + let [head, ...tail] = (0, _util.asPresentArray)(name.split('.')); + let path = b.path({ + head: b.head({ + original: head, + loc: nameLoc.sliceStartChars({ + chars: head.length + }) + }), + tail, + loc: nameLoc + }); + let { + attributes, modifiers, comments, + params, selfClosing, loc } = this.finish(this.currentStartTag); let element = b.element({ - tag: name, + path, selfClosing, - attrs, + attributes, modifiers, comments, + params, children: [], - blockParams: [], + openTag: loc, + closeTag: selfClosing ? null : SourceSpan.broken(), loc }); this.elementStack.push(element); } finishEndTag(isVoid) { + let { + start: closeTagStart + } = this.currentTag; let tag = this.finish(this.currentTag); let element = this.elementStack.pop(); this.validateEndTag(tag, element, isVoid); let parent = this.currentElement(); + if (isVoid) { + element.closeTag = null; + } else if (element.selfClosing) { + (0, _util.assert)(element.closeTag === null, 'element.closeTag unexpectedly present'); + } else { + element.closeTag = closeTagStart.until(this.offset()); + } element.loc = element.loc.withEnd(this.offset()); - parseElementBlockParams(element); - appendChild(parent, element); + appendChild(parent, b.element(element)); } markTagAsSelfClosing() { - this.currentTag.selfClosing = true; + let tag = this.currentTag; + if (tag.type === 'StartTag') { + tag.selfClosing = true; + } else { + throw generateSyntaxError("Invalid end tag: closing tag must not be self-closing", this.source.spanFor({ + start: tag.start.toJSON(), + end: this.offset().toJSON() + })); + } } // Tags - name appendToTagName(char) { - this.currentTag.name += char; + let tag = this.currentTag; + tag.name += char; + if (tag.type === 'StartTag') { + let offset = this.offset(); + if (tag.nameStart === null) { + (0, _util.assert)(tag.nameEnd === null, 'nameStart and nameEnd must both be null'); + + // Note that the tokenizer already consumed the token here + tag.nameStart = offset.move(-1); + } + tag.nameEnd = offset; + } } // Tags - attributes @@ -9503,6 +9939,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } appendToAttributeName(char) { this.currentAttr.name += char; + + // The block params parsing code can actually handle peek=non-space just + // fine, but this check was added as an optimization, as there is a little + // bit of setup overhead for the parsing logic just to immediately bail + if (this.currentAttr.name === 'as') { + this.parsePossibleBlockParams(); + } } beginAttributeValue(isQuoted) { this.currentAttr.isQuoted = isQuoted; @@ -9540,7 +9983,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba let tokenizerPos = this.offset(); if (tag.type === 'EndTag') { throw generateSyntaxError("Invalid end tag: closing tag must not have attributes", this.source.spanFor({ - start: tag.loc.toJSON(), + start: tag.start.toJSON(), end: tokenizerPos.toJSON() })); } @@ -9552,6 +9995,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba isDynamic, valueSpan } = this.currentAttr; + + // Just trying to be helpful with `` rather than letting it through as an attribute + if (name.startsWith('|') && parts.length === 0 && !isQuoted && !isDynamic) { + throw generateSyntaxError('Invalid block parameters syntax: block parameters must be preceded by the `as` keyword', start.until(start.move(name.length))); + } let value = this.assembleAttributeValue(parts, isQuoted, isDynamic, start.until(tokenizerPos)); value.loc = valueSpan.withEnd(tokenizerPos); let attribute = b.attr({ @@ -9561,6 +10009,195 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba }); this.currentStartTag.attributes.push(attribute); } + parsePossibleBlockParams() { + // const enums that we can't use directly + const BEFORE_ATTRIBUTE_NAME = 'beforeAttributeName'; + const ATTRIBUTE_NAME = 'attributeName'; + const AFTER_ATTRIBUTE_NAME = 'afterAttributeName'; + + // Regex to validate the identifier for block parameters. + // Based on the ID validation regex in Handlebars. + const ID_INVERSE_PATTERN = /[!"#%&'()*+./;<=>@[\\\]^`{|}~]/u; + (0, _util.assert)(this.tokenizer.state === ATTRIBUTE_NAME, 'must be in TokenizerState.attributeName'); + const element = this.currentStartTag; + const as = this.currentAttr; + let state = { + state: 'PossibleAs' + }; + const handlers = { + PossibleAs: next => { + (0, _util.assert)(state.state === 'PossibleAs', 'bug in block params parser'); + if (isSpace(next)) { + // " as ..." + state = { + state: 'BeforeStartPipe' + }; + this.tokenizer.transitionTo(AFTER_ATTRIBUTE_NAME); + this.tokenizer.consume(); + } else if (next === '|') { + // " as|..." + // Following Handlebars and require a space between "as" and the pipe + throw generateSyntaxError("Invalid block parameters syntax: expecting at least one space character between \"as\" and \"|\"", as.start.until(this.offset().move(1))); + } else { + // " as{{...", " async...", " as=...", " as>...", " as/>..." + // Don't consume, let the normal tokenizer code handle the next steps + state = { + state: 'Done' + }; + } + }, + BeforeStartPipe: next => { + (0, _util.assert)(state.state === 'BeforeStartPipe', 'bug in block params parser'); + if (isSpace(next)) { + this.tokenizer.consume(); + } else if (next === '|') { + state = { + state: 'BeforeBlockParamName' + }; + this.tokenizer.transitionTo(BEFORE_ATTRIBUTE_NAME); + this.tokenizer.consume(); + } else { + // " as {{...", " as bs...", " as =...", " as ...", " as/>..." + // Don't consume, let the normal tokenizer code handle the next steps + state = { + state: 'Done' + }; + } + }, + BeforeBlockParamName: next => { + (0, _util.assert)(state.state === 'BeforeBlockParamName', 'bug in block params parser'); + if (isSpace(next)) { + this.tokenizer.consume(); + } else if (next === '') { + // The HTML tokenizer ran out of characters, so we are either + // encountering mustache or + state = { + state: 'Done' + }; + this.pendingError = { + mustache(loc) { + throw generateSyntaxError("Invalid block parameters syntax: mustaches cannot be used inside parameters list", loc); + }, + eof(loc) { + throw generateSyntaxError("Invalid block parameters syntax: expecting the tag to be closed with \">\" or \"/>\" after parameters list", as.start.until(loc)); + } + }; + } else if (next === '|') { + if (element.params.length === 0) { + // Following Handlebars and treat empty block params a syntax error + throw generateSyntaxError("Invalid block parameters syntax: empty parameters list, expecting at least one identifier", as.start.until(this.offset().move(1))); + } else { + state = { + state: 'AfterEndPipe' + }; + this.tokenizer.consume(); + } + } else if (next === '>' || next === '/') { + throw generateSyntaxError("Invalid block parameters syntax: incomplete parameters list, expecting \"|\" but the tag was closed prematurely", as.start.until(this.offset().move(1))); + } else { + // slurp up anything else into the name, validate later + state = { + state: 'BlockParamName', + name: next, + start: this.offset() + }; + this.tokenizer.consume(); + } + }, + BlockParamName: next => { + (0, _util.assert)(state.state === 'BlockParamName', 'bug in block params parser'); + if (next === '') { + // The HTML tokenizer ran out of characters, so we are either + // encountering mustache or , HBS side will attach the error + // to the next span + state = { + state: 'Done' + }; + this.pendingError = { + mustache(loc) { + throw generateSyntaxError("Invalid block parameters syntax: mustaches cannot be used inside parameters list", loc); + }, + eof(loc) { + throw generateSyntaxError("Invalid block parameters syntax: expecting the tag to be closed with \">\" or \"/>\" after parameters list", as.start.until(loc)); + } + }; + } else if (next === '|' || isSpace(next)) { + let loc = state.start.until(this.offset()); + if (state.name === 'this' || ID_INVERSE_PATTERN.test(state.name)) { + throw generateSyntaxError("Invalid block parameters syntax: invalid identifier name `" + state.name + "`", loc); + } + element.params.push(b.var({ + name: state.name, + loc + })); + state = next === '|' ? { + state: 'AfterEndPipe' + } : { + state: 'BeforeBlockParamName' + }; + this.tokenizer.consume(); + } else if (next === '>' || next === '/') { + throw generateSyntaxError("Invalid block parameters syntax: expecting \"|\" but the tag was closed prematurely", as.start.until(this.offset().move(1))); + } else { + // slurp up anything else into the name, validate later + state.name += next; + this.tokenizer.consume(); + } + }, + AfterEndPipe: next => { + (0, _util.assert)(state.state === 'AfterEndPipe', 'bug in block params parser'); + if (isSpace(next)) { + this.tokenizer.consume(); + } else if (next === '') { + // The HTML tokenizer ran out of characters, so we are either + // encountering mustache or , HBS side will attach the error + // to the next span + state = { + state: 'Done' + }; + this.pendingError = { + mustache(loc) { + throw generateSyntaxError("Invalid block parameters syntax: modifiers cannot follow parameters list", loc); + }, + eof(loc) { + throw generateSyntaxError("Invalid block parameters syntax: expecting the tag to be closed with \">\" or \"/>\" after parameters list", as.start.until(loc)); + } + }; + } else if (next === '>' || next === '/') { + // Don't consume, let the normal tokenizer code handle the next steps + state = { + state: 'Done' + }; + } else { + // Slurp up the next "token" for the error span + state = { + state: 'Error', + message: 'Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list', + start: this.offset() + }; + this.tokenizer.consume(); + } + }, + Error: next => { + (0, _util.assert)(state.state === 'Error', 'bug in block params parser'); + if (next === '' || next === '/' || next === '>' || isSpace(next)) { + throw generateSyntaxError(state.message, state.start.until(this.offset())); + } else { + // Slurp up the next "token" for the error span + this.tokenizer.consume(); + } + }, + Done: () => { + (0, _util.assert)(false, 'This should never be called'); + } + }; + let next; + do { + next = this.tokenizer.peek(); + handlers[state.state](next); + } while (state.state !== 'Done' && next !== ''); + (0, _util.assert)(state.state === 'Done', 'bug in block params parser'); + } reportSyntaxError(message) { throw generateSyntaxError(message, this.offset().collapsed()); } @@ -9573,7 +10210,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba (0, _util.assertPresentArray)(parts, "the concatenation parts of an element should not be empty"); let first = (0, _util.getFirst)(parts); let last = (0, _util.getLast)(parts); - return b.concat(parts, this.source.spanFor(first.loc).extend(this.source.spanFor(last.loc))); + return b.concat({ + parts, + loc: this.source.spanFor(first.loc).extend(this.source.spanFor(last.loc)) + }); } validateEndTag(tag, element, selfClosing) { if (voidMap.has(tag.name) && !selfClosing) { @@ -9632,8 +10272,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return undefined; } } - function preprocess(input) { - let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; + function preprocess(input, options) { + var _options$locals, _options; + if (options === void 0) { + options = {}; + } let mode = options.mode || 'precompile'; let source; let ast; @@ -9667,12 +10310,8 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba start: offsets.startPosition, end: offsets.endPosition }; - let program = new TokenizerEventHandlers(source, entityParser, mode).acceptTemplate(ast); - if (options.strictMode) { - var _options$locals; - program.blockParams = (_options$locals = options.locals) != null ? _options$locals : []; - } - if (options && options.plugins && options.plugins.ast) { + let template = new TokenizerEventHandlers(source, entityParser, mode).parse(ast, (_options$locals = options.locals) != null ? _options$locals : []); + if ((_options = options) != null && (_options = _options.plugins) != null && _options.ast) { for (const transform of options.plugins.ast) { let env = (0, _util.assign)({}, options, { syntax @@ -9680,10 +10319,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba plugins: undefined }); let pluginResult = transform(env); - traverse(program, pluginResult.visitor); + traverse(template, pluginResult.visitor); } } - return program; + return template; } /** @@ -9747,28 +10386,31 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * referenced that could possible come from the parent scope. Can exclude known keywords * optionally. */ - function getTemplateLocals(html) { - let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : { - includeHtmlElements: false, - includeKeywords: false - }; + function getTemplateLocals(html, options) { + var _options2; + if (options === void 0) { + options = { + includeHtmlElements: false, + includeKeywords: false + }; + } const ast = preprocess(html); const tokensSet = new Set(); const scopedTokens = []; traverse(ast, { Block: { - enter(_ref) { + enter(_ref38) { let { blockParams - } = _ref; + } = _ref38; blockParams.forEach(param => { scopedTokens.push(param); }); }, - exit(_ref2) { + exit(_ref39) { let { blockParams - } = _ref2; + } = _ref39; blockParams.forEach(() => { scopedTokens.pop(); }); @@ -9781,10 +10423,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba }); addTokens(tokensSet, node, scopedTokens, options); }, - exit(_ref3) { + exit(_ref40) { let { blockParams - } = _ref3; + } = _ref40; blockParams.forEach(() => { scopedTokens.pop(); }); @@ -9796,7 +10438,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba }); let tokens = []; tokensSet.forEach(s => tokens.push(s)); - if (!(options != null && options.includeKeywords)) { + if (!((_options2 = options) != null && _options2.includeKeywords)) { tokens = tokens.filter(token => !isKeyword(token)); } return tokens; @@ -10094,7 +10736,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba /** * Returns true if an input {@see ExpressionNode} is a literal. */ - function isLiteral(node, kind) { + function isLiteral$1(node, kind) { if (node.type === 'Literal') { if (kind === undefined) { return true; @@ -10122,6 +10764,14 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba */ class PathExpression extends node('Path').fields() {} + /** + * Corresponds to a known strict-mode keyword. It behaves similarly to a + * PathExpression with a FreeVarReference, but implies StrictResolution and + * is guaranteed to not have a tail, since `{{outlet.foo}}` would have been + * illegal. + */ + class KeywordExpression extends node('Keyword').fields() {} + /** * Corresponds to a parenthesized call expression. * @@ -10134,21 +10784,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba */ class CallExpression extends node('Call').fields() {} - /** - * Corresponds to a possible deprecated helper call. Must be: - * - * 1. A free variable (not this.foo, not @foo, not local). - * 2. Argument-less. - * 3. In a component invocation's named argument position. - * 4. Not parenthesized (not @bar={{(helper)}}). - * 5. Not interpolated (not @bar="{{helper}}"). - * - * ```hbs - * - * ``` - */ - class DeprecatedCallExpression extends node('DeprecatedCall').fields() {} - /** * Corresponds to an interpolation in attribute value position. * @@ -10227,14 +10862,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * * 1. Strict resolution * 2. Namespaced resolution - * 3. Fallback resolution */ /** * Strict resolution is used: * * 1. in a strict mode template - * 2. in an unambiguous invocation with dot paths + * 2. in an local variable invocation with dot paths */ const STRICT_RESOLUTION = { resolution: () => _wireFormat.SexpOpcodes.GetStrictKeyword, @@ -10250,13 +10884,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } /** - * A `LooseModeResolution` includes: - * - * - 0 or more namespaces to resolve the variable in - * - optional fallback behavior + * A `LooseModeResolution` includes one or more namespaces to resolve the variable in * * In practice, there are a limited number of possible combinations of these degrees of freedom, - * and they are captured by the `Ambiguity` union below. + * and they are captured by the `Namespaces` union below. */ class LooseModeResolution { /** @@ -10266,162 +10897,78 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * 2. `{{#block}}` (namespace: `Component`) * 3. `` (namespace: `Modifier`) * 4. `` (namespace: `Component`) - * - * @see {NamespacedAmbiguity} - */ - static namespaced(namespace) { - let isAngleBracket = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; - return new LooseModeResolution({ - namespaces: [namespace], - fallback: false - }, isAngleBracket); - } - - /** - * Fallback resolution is used when no namespaced resolutions are possible, but fallback - * resolution is still allowed. - * - * ```hbs - * {{x.y}} - * ``` - * - * @see {FallbackAmbiguity} */ - static fallback() { - return new LooseModeResolution({ - namespaces: [], - fallback: true - }); + static namespaced(namespace, isAngleBracket) { + if (isAngleBracket === void 0) { + isAngleBracket = false; + } + return new LooseModeResolution([namespace], isAngleBracket); } /** * Append resolution is used when the variable should be resolved in both the `component` and - * `helper` namespaces. Fallback resolution is optional. + * `helper` namespaces. * * ```hbs * {{x}} * ``` * - * ^ `x` should be resolved in the `component` and `helper` namespaces with fallback resolution. - * * ```hbs * {{x y}} * ``` * - * ^ `x` should be resolved in the `component` and `helper` namespaces without fallback - * resolution. - * - * @see {ComponentOrHelperAmbiguity} + * ^ In either case, `x` should be resolved in the `component` and `helper` namespaces. */ - static append(_ref) { - let { - invoke - } = _ref; - return new LooseModeResolution({ - namespaces: [FreeVarNamespace.Component, FreeVarNamespace.Helper], - fallback: !invoke - }); + static append() { + return new LooseModeResolution([FreeVarNamespace.Component, FreeVarNamespace.Helper]); } /** - * Trusting append resolution is used when the variable should be resolved in both the `component` and - * `helper` namespaces. Fallback resolution is optional. + * Trusting append resolution is used when the variable should be resolved only in the + * `helper` namespaces. * * ```hbs * {{{x}}} * ``` * - * ^ `x` should be resolved in the `component` and `helper` namespaces with fallback resolution. - * * ```hbs * {{{x y}}} * ``` * - * ^ `x` should be resolved in the `component` and `helper` namespaces without fallback - * resolution. - * - * @see {HelperAmbiguity} - */ - static trustingAppend(_ref2) { - let { - invoke - } = _ref2; - return new LooseModeResolution({ - namespaces: [FreeVarNamespace.Helper], - fallback: !invoke - }); - } - - /** - * Attribute resolution is used when the variable should be resolved as a `helper` with fallback - * resolution. - * - * ```hbs - * - * - * ``` - * - * ^ resolved in the `helper` namespace with fallback - * - * @see {HelperAmbiguity} + * ^ In either case, `x` should be resolved in the `helper` namespace. */ - static attr() { - return new LooseModeResolution({ - namespaces: [FreeVarNamespace.Helper], - fallback: true - }); + static trustingAppend() { + return this.namespaced(FreeVarNamespace.Helper); } - constructor(ambiguity) { - let isAngleBracket = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; - this.ambiguity = ambiguity; + constructor(namespaces, isAngleBracket) { + if (isAngleBracket === void 0) { + isAngleBracket = false; + } + this.namespaces = namespaces; this.isAngleBracket = isAngleBracket; } resolution() { - if (this.ambiguity.namespaces.length === 0) { - return _wireFormat.SexpOpcodes.GetStrictKeyword; - } else if (this.ambiguity.namespaces.length === 1) { - if (this.ambiguity.fallback) { - // simple namespaced resolution with fallback must be attr={{x}} - return _wireFormat.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback; - } else { - // simple namespaced resolution without fallback - switch (this.ambiguity.namespaces[0]) { - case FreeVarNamespace.Helper: - return _wireFormat.SexpOpcodes.GetFreeAsHelperHead; - case FreeVarNamespace.Modifier: - return _wireFormat.SexpOpcodes.GetFreeAsModifierHead; - case FreeVarNamespace.Component: - return _wireFormat.SexpOpcodes.GetFreeAsComponentHead; - } + if (this.namespaces.length === 1) { + switch (this.namespaces[0]) { + case FreeVarNamespace.Helper: + return _wireFormat.SexpOpcodes.GetFreeAsHelperHead; + case FreeVarNamespace.Modifier: + return _wireFormat.SexpOpcodes.GetFreeAsModifierHead; + case FreeVarNamespace.Component: + return _wireFormat.SexpOpcodes.GetFreeAsComponentHead; } - } else if (this.ambiguity.fallback) { - // component or helper + fallback ({{something}}) - return _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback; } else { - // component or helper without fallback ({{something something}}) return _wireFormat.SexpOpcodes.GetFreeAsComponentOrHelperHead; } } serialize() { - if (this.ambiguity.namespaces.length === 0) { - return 'Loose'; - } else if (this.ambiguity.namespaces.length === 1) { - if (this.ambiguity.fallback) { - // simple namespaced resolution with fallback must be attr={{x}} - return ['ambiguous', SerializedAmbiguity.Attr]; - } else { - return ['ns', this.ambiguity.namespaces[0]]; - } - } else if (this.ambiguity.fallback) { - // component or helper + fallback ({{something}}) - return ['ambiguous', SerializedAmbiguity.Append]; + if (this.namespaces.length === 1) { + return this.namespaces[0]; } else { - // component or helper without fallback ({{something something}}) - return ['ambiguous', SerializedAmbiguity.Invoke]; + return 'ComponentOrHelper'; } } } - const ARGUMENT_RESOLUTION = LooseModeResolution.fallback(); let FreeVarNamespace = /*#__PURE__*/function (FreeVarNamespace) { FreeVarNamespace["Helper"] = "Helper"; FreeVarNamespace["Modifier"] = "Modifier"; @@ -10433,91 +10980,40 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba const COMPONENT_NAMESPACE = FreeVarNamespace.Component; /** - * A `ComponentOrHelperAmbiguity` might be a component or a helper, with an optional fallback - * - * ```hbs - * {{x}} - * ``` - * - * ^ `x` is resolved in the `component` and `helper` namespaces, with fallback - * - * ```hbs - * {{x y}} - * ``` - * - * ^ `x` is resolved in the `component` and `helper` namespaces, without fallback - */ - - /** - * A `HelperAmbiguity` must be a helper, but it has fallback. If it didn't have fallback, it would - * be a `NamespacedAmbiguity`. - * - * ```hbs - * - * - * ``` - * - * ^ `x` is resolved in the `helper` namespace with fallback - */ - - /** - * A `NamespacedAmbiguity` must be resolved in a particular namespace, without fallback. + * A `Namespaced` must be resolved in one or more namespaces. * * ```hbs * * ``` * - * ^ `X` is resolved in the `component` namespace without fallback + * ^ `X` is resolved in the `component` namespace * * ```hbs * (x) * ``` * - * ^ `x` is resolved in the `helper` namespace without fallback + * ^ `x` is resolved in the `helper` namespace * * ```hbs * * ``` * - * ^ `x` is resolved in the `modifier` namespace without fallback + * ^ `x` is resolved in the `modifier` namespace */ + // Serialization - var SerializedAmbiguity = /*#__PURE__*/function (SerializedAmbiguity) { - SerializedAmbiguity["Append"] = "Append"; - SerializedAmbiguity["Attr"] = "Attr"; - SerializedAmbiguity["Invoke"] = "Invoke"; - return SerializedAmbiguity; - }(SerializedAmbiguity || {}); + function loadResolution(resolution) { - if (typeof resolution === 'string') { - switch (resolution) { - case 'Loose': - return LooseModeResolution.fallback(); - case 'Strict': - return STRICT_RESOLUTION; - } - } - switch (resolution[0]) { - case 'ambiguous': - switch (resolution[1]) { - case SerializedAmbiguity.Append: - return LooseModeResolution.append({ - invoke: false - }); - case SerializedAmbiguity.Attr: - return LooseModeResolution.attr(); - case SerializedAmbiguity.Invoke: - return LooseModeResolution.append({ - invoke: true - }); - } - case 'ns': - return LooseModeResolution.namespaced(resolution[1]); + if (resolution === 'Strict') { + return STRICT_RESOLUTION; + } else if (resolution === 'ComponentOrHelper') { + return LooseModeResolution.append(); + } else { + return LooseModeResolution.namespaced(resolution); } } var api$1 = _exports.ASTv2 = /*#__PURE__*/Object.freeze({ __proto__: null, - ARGUMENT_RESOLUTION: ARGUMENT_RESOLUTION, AppendContent: AppendContent, ArgReference: ArgReference, Args: Args, @@ -10525,7 +11021,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba COMPONENT_NAMESPACE: COMPONENT_NAMESPACE, CallExpression: CallExpression, ComponentArg: ComponentArg, - DeprecatedCallExpression: DeprecatedCallExpression, ElementModifier: ElementModifier, FreeVarNamespace: FreeVarNamespace, FreeVarReference: FreeVarReference, @@ -10538,6 +11033,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba InterpolateExpression: InterpolateExpression, InvokeBlock: InvokeBlock, InvokeComponent: InvokeComponent, + KeywordExpression: KeywordExpression, LiteralExpression: LiteralExpression, LocalVarReference: LocalVarReference, LooseModeResolution: LooseModeResolution, @@ -10553,14 +11049,14 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba SplatAttr: SplatAttr, Template: Template, ThisReference: ThisReference, - isLiteral: isLiteral, + isLiteral: isLiteral$1, isStrictResolution: isStrictResolution, loadResolution: loadResolution, node: node }); class SymbolTable { - static top(locals, options) { - return new ProgramSymbolTable(locals, options); + static top(locals, keywords, options) { + return new ProgramSymbolTable(locals, keywords, options); } child(locals) { let symbols = locals.map(name => this.allocate(name)); @@ -10570,7 +11066,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba _exports.SymbolTable = SymbolTable; var _hasDebugger = /*#__PURE__*/(0, _emberBabel.classPrivateFieldLooseKey)("hasDebugger"); class ProgramSymbolTable extends SymbolTable { - constructor(templateLocals, options) { + constructor(templateLocals, keywords, options) { super(); this.symbols = []; this.upvars = []; @@ -10583,13 +11079,17 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba value: false }); this.templateLocals = templateLocals; + this.keywords = keywords; this.options = options; } hasLexical(name) { return this.options.lexicalScope(name); } - getLexical(name) { - return this.allocateFree(name, HTML_RESOLUTION); + hasKeyword(name) { + return this.keywords.includes(name); + } + getKeyword(name) { + return this.allocateFree(name, STRICT_RESOLUTION); } getUsedTemplateLocals() { return this.usedTemplateLocals; @@ -10669,12 +11169,15 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba get locals() { return this.symbols; } - getLexical(name) { - return this.parent.getLexical(name); - } hasLexical(name) { return this.parent.hasLexical(name); } + getKeyword(name) { + return this.parent.getKeyword(name); + } + hasKeyword(name) { + return this.parent.hasKeyword(name); + } has(name) { return this.symbols.indexOf(name) !== -1 || this.parent.has(name); } @@ -10784,12 +11287,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba entries }); } - attr(_ref, loc) { + attr(_ref41, loc) { let { name, value, trusting - } = _ref; + } = _ref41; return new HtmlAttr({ loc, name, @@ -10803,12 +11306,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }); } - arg(_ref2, loc) { + arg(_ref42, loc) { let { name, value, trusting - } = _ref2; + } = _ref42; return new ComponentArg({ name, value, @@ -10826,6 +11329,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba tail }); } + keyword(name, symbol, loc) { + return new KeywordExpression({ + loc, + name, + symbol + }); + } self(loc) { return new ThisReference({ loc @@ -10843,13 +11353,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba symbol }); } - freeVar(_ref3) { + freeVar(_ref43) { let { name, context, symbol, loc - } = _ref3; + } = _ref43; (0, _util.assert)(name !== 'this', "You called builders.freeVar() with 'this'. Call builders.this instead"); (0, _util.assert)(name[0] !== '@', "You called builders.freeVar() with '" + name + "'. Call builders.at('" + name + "') instead"); return new FreeVarReference({ @@ -10876,13 +11386,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba args: parts.args }); } - deprecatedCall(arg, callee, loc) { - return new DeprecatedCallExpression({ - loc, - arg, - callee - }); - } interpolate(parts, loc) { (0, _util.assertPresentArray)(parts); return new InterpolateExpression({ @@ -10899,12 +11402,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba // STATEMENTS // - append(_ref4, loc) { + append(_ref44, loc) { let { table, trusting, value - } = _ref4; + } = _ref44; return new AppendContent({ table, trusting, @@ -10912,11 +11415,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba loc }); } - modifier(_ref5, loc) { + modifier(_ref45, loc) { let { callee, args - } = _ref5; + } = _ref45; return new ElementModifier({ loc, callee, @@ -10929,12 +11432,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba blocks }); } - blockStatement(_ref6, loc) { + blockStatement(_ref46, loc) { let { program, inverse = null, ...call - } = _ref6; + } = _ref46; let blocksLoc = program.loc; let blocks = [this.namedBlock(SourceSlice.synthetic('default'), program, program.loc)]; if (inverse) { @@ -11024,50 +11527,43 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba if (isSimpleCallee(node)) { return LooseModeResolution.namespaced(COMPONENT_NAMESPACE); } else { - return LooseModeResolution.fallback(); + return null; } } function ComponentSyntaxContext(node) { if (isSimplePath(node)) { - return LooseModeResolution.namespaced(FreeVarNamespace.Component, true); + return LooseModeResolution.namespaced(COMPONENT_NAMESPACE, true); } else { return null; } } /** - * This corresponds to append positions (text curlies or attribute - * curlies). In strict mode, this also corresponds to arg curlies. + * This corresponds to attribute curlies (). + * In strict mode, this also corresponds to arg curlies. */ function AttrValueSyntaxContext(node) { - let isSimple = isSimpleCallee(node); - let isInvoke = isInvokeNode(node); - if (isSimple) { - return isInvoke ? LooseModeResolution.namespaced(FreeVarNamespace.Helper) : LooseModeResolution.attr(); + if (isSimpleCallee(node)) { + return LooseModeResolution.namespaced(HELPER_NAMESPACE); } else { - return isInvoke ? STRICT_RESOLUTION : LooseModeResolution.fallback(); + return null; } } /** - * This corresponds to append positions (text curlies or attribute - * curlies). In strict mode, this also corresponds to arg curlies. + * This corresponds to append positions text curlies. */ function AppendSyntaxContext(node) { let isSimple = isSimpleCallee(node); - let isInvoke = isInvokeNode(node); let trusting = node.trusting; if (isSimple) { - return trusting ? LooseModeResolution.trustingAppend({ - invoke: isInvoke - }) : LooseModeResolution.append({ - invoke: isInvoke - }); + return trusting ? LooseModeResolution.trustingAppend() : LooseModeResolution.append(); } else { - return LooseModeResolution.fallback(); + return null; } } // UTILITIES + /** * A call node has a simple callee if its head is: * @@ -11094,8 +11590,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * ``` */ function isSimpleCallee(node) { - let path = node.path; - return isSimplePath(path); + return isSimplePath(node.path); } function isSimplePath(node) { if (node.type === 'PathExpression' && node.head.type === 'VarHead') { @@ -11104,25 +11599,21 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return false; } } - - /** - * The call expression has at least one argument. - */ - function isInvokeNode(node) { - return node.params.length > 0 || node.hash.pairs.length > 0; - } - function normalize(source) { - var _options$customizeCom; - let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : { - lexicalScope: () => false - }; + function normalize(source, options) { + var _options$keywords, _options$customizeCom; + if (options === void 0) { + options = { + lexicalScope: () => false + }; + } let ast = preprocess(source, options); let normalizeOptions = { strictMode: false, - locals: [], - ...options + ...options, + locals: ast.blockParams, + keywords: (_options$keywords = options.keywords) != null ? _options$keywords : [] }; - let top = SymbolTable.top(normalizeOptions.locals, { + let top = SymbolTable.top(normalizeOptions.locals, normalizeOptions.keywords, { customizeComponentName: (_options$customizeCom = options.customizeComponentName) != null ? _options$customizeCom : name => name, lexicalScope: options.lexicalScope }); @@ -11185,6 +11676,9 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba isLexicalVar(variable) { return this.table.hasLexical(variable); } + isKeyword(name) { + return this.strict && !this.table.hasLexical(name) && this.table.hasKeyword(name); + } isFreeVar(callee) { if (callee.type === 'PathExpression') { if (callee.head.type !== 'VarHead') { @@ -11238,9 +11732,14 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba case 'UndefinedLiteral': return this.block.builder.literal(expr.value, this.block.loc(expr.loc)); case 'PathExpression': + (0, _util.assert)(resolution, '[BUG] resolution is required'); return this.path(expr, resolution); case 'SubExpression': { + // expr.path used to incorrectly have the type ASTv1.Expression + if (isLiteral(expr.path)) { + assertIllegalLiteral(expr.path, expr.loc); + } let resolution = this.block.resolutionFor(expr, SexpSyntaxContext); if (resolution.result === 'error') { throw generateSyntaxError("You attempted to invoke a path (`" + resolution.path + "`) but " + resolution.head + " was not in scope", expr.loc); @@ -11250,6 +11749,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } } path(expr, resolution) { + let loc = this.block.loc(expr.loc); + if (expr.head.type === 'VarHead' && expr.tail.length === 0 && this.block.isKeyword(expr.head.name)) { + return this.block.builder.keyword(expr.head.name, this.block.table.getKeyword(expr.head.name), loc); + } let headOffsets = this.block.loc(expr.head.loc); let tail = []; @@ -11265,7 +11768,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba chars: part })); } - return this.block.builder.path(this.ref(expr.head, resolution), tail, this.block.loc(expr.loc)); + return this.block.builder.path(this.ref(expr.head, resolution), tail, loc); } /** @@ -11276,15 +11779,24 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba let { path, params, - hash + hash, + loc } = parts; let callee = this.normalize(path, context); - let paramList = params.map(p => this.normalize(p, ARGUMENT_RESOLUTION)); + let paramList = params.map(p => this.normalize(p, STRICT_RESOLUTION)); let paramLoc = SpanList.range(paramList, callee.loc.collapse('end')); let namedLoc = this.block.loc(hash.loc); let argsLoc = SpanList.range([paramLoc, namedLoc]); - let positional = this.block.builder.positional(params.map(p => this.normalize(p, ARGUMENT_RESOLUTION)), paramLoc); + let positional = this.block.builder.positional(params.map(p => this.normalize(p, STRICT_RESOLUTION)), paramLoc); let named = this.block.builder.named(hash.pairs.map(p => this.namedArgument(p)), this.block.loc(hash.loc)); + switch (callee.type) { + case 'Literal': + throw generateSyntaxError("Invalid invocation of a literal value (`" + callee.value + "`)", loc); + + // This really shouldn't be possible, something has gone pretty wrong + case 'Interpolate': + throw generateSyntaxError("Invalid invocation of a interpolated string", loc); + } return { callee, args: this.block.builder.args(positional, named, argsLoc) @@ -11298,7 +11810,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba return this.block.builder.namedArgument(new SourceSlice({ chars: pair.key, loc: keyOffsets - }), this.normalize(pair.value, ARGUMENT_RESOLUTION)); + }), this.normalize(pair.value, STRICT_RESOLUTION)); } /** @@ -11357,8 +11869,6 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } normalize(node) { switch (node.type) { - case 'PartialStatement': - throw new Error("Handlebars partial syntax ({{> ...}}) is not allowed in Glimmer"); case 'BlockStatement': return this.BlockStatement(node); case 'ElementNode': @@ -11412,20 +11922,37 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba */ MustacheStatement(mustache) { let { - escaped + path, + params, + hash, + trusting } = mustache; let loc = this.block.loc(mustache.loc); + let value; + if (isLiteral(path)) { + if (params.length === 0 && hash.pairs.length === 0) { + value = this.expr.normalize(path); + } else { + assertIllegalLiteral(path, loc); + } + } else { + let resolution = this.block.resolutionFor(mustache, AppendSyntaxContext); + if (resolution.result === 'error') { + throw generateSyntaxError("You attempted to render a path (`{{" + resolution.path + "}}`), but " + resolution.head + " was not in scope", loc); + } - // Normalize the call parts in AppendSyntaxContext - let callParts = this.expr.callParts({ - path: mustache.path, - params: mustache.params, - hash: mustache.hash - }, AppendSyntaxContext(mustache)); - let value = callParts.args.isEmpty() ? callParts.callee : this.block.builder.sexp(callParts, loc); + // Normalize the call parts in AppendSyntaxContext + let callParts = this.expr.callParts({ + path, + params, + hash, + loc + }, resolution.result); + value = callParts.args.isEmpty() ? callParts.callee : this.block.builder.sexp(callParts, loc); + } return this.block.builder.append({ table: this.block.table, - trusting: !escaped, + trusting, value }, loc); } @@ -11439,6 +11966,11 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba inverse } = block; let loc = this.block.loc(block.loc); + + // block.path used to incorrectly have the type ASTv1.Expression + if (isLiteral(block.path)) { + assertIllegalLiteral(block.path, loc); + } let resolution = this.block.resolutionFor(block, BlockSyntaxContext); if (resolution.result === 'error') { throw generateSyntaxError("You attempted to invoke a path (`{{#" + resolution.path + "}}`) but " + resolution.head + " was not in scope", loc); @@ -11450,12 +11982,12 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba inverse: inverse ? this.Block(inverse) : null }, callParts), loc); } - Block(_ref) { + Block(_ref47) { let { body, loc, blockParams - } = _ref; + } = _ref47; let child = this.block.child(blockParams); let normalizer = new StatementNormalizer(child); return new BlockChildren(this.block.loc(loc), body.map(b => normalizer.normalize(b)), this.block).assertBlock(child.table); @@ -11532,9 +12064,13 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } } modifier(m) { + // modifier.path used to incorrectly have the type ASTv1.Expression + if (isLiteral(m.path)) { + assertIllegalLiteral(m.path, m.loc); + } let resolution = this.ctx.resolutionFor(m, ModifierSyntaxContext); if (resolution.result === 'error') { - throw generateSyntaxError("You attempted to invoke a path (`{{#" + resolution.path + "}}`) as a modifier, but " + resolution.head + " was not in scope. Try adding `this` to the beginning of the path", m.loc); + throw generateSyntaxError("You attempted to invoke a path (`{{" + resolution.path + "}}`) as a modifier, but " + resolution.head + " was not in scope", m.loc); } let callParts = this.expr.callParts(m, resolution.result); return this.ctx.builder.modifier(callParts, this.ctx.loc(m.loc)); @@ -11550,8 +12086,26 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba * ``` */ mustacheAttr(mustache) { + let { + path, + params, + hash, + loc + } = mustache; + if (isLiteral(path)) { + if (params.length === 0 && hash.pairs.length === 0) { + return this.expr.normalize(path); + } else { + assertIllegalLiteral(path, loc); + } + } + // Normalize the call parts in AttrValueSyntaxContext - let sexp = this.ctx.builder.sexp(this.expr.callParts(mustache, AttrValueSyntaxContext(mustache)), this.ctx.loc(mustache.loc)); + let resolution = this.ctx.resolutionFor(mustache, AttrValueSyntaxContext); + if (resolution.result === 'error') { + throw generateSyntaxError("You attempted to render a path (`{{" + resolution.path + "}}`), but " + resolution.head + " was not in scope", mustache.loc); + } + let sexp = this.ctx.builder.sexp(this.expr.callParts(mustache, resolution.result), this.ctx.loc(mustache.loc)); // If there are no params or hash, just return the function part as its own expression if (sexp.args.isEmpty()) { @@ -11570,7 +12124,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba case 'MustacheStatement': return { expr: this.mustacheAttr(part), - trusting: !part.escaped + trusting: part.trusting }; case 'TextNode': return { @@ -11609,56 +12163,46 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba trusting: value.trusting }, offsets); } - maybeDeprecatedCall(arg, part) { - if (this.ctx.strict) { - return null; + + // An arg curly is the same as an attribute curly for + // our purposes, except that in loose mode is an error: + checkArgCall(arg) { + let { + value + } = arg; + if (value.type !== 'MustacheStatement') { + return; } - if (part.type !== 'MustacheStatement') { - return null; + if (value.params.length !== 0 || value.hash.pairs.length !== 0) { + return; } let { path - } = part; + } = value; if (path.type !== 'PathExpression') { - return null; - } - if (path.head.type !== 'VarHead') { - return null; - } - let { - name - } = path.head; - if (name === 'has-block' || name === 'has-block-params') { - return null; - } - if (this.ctx.hasBinding(name)) { - return null; + return; } - if (path.tail.length !== 0) { - return null; + if (path.tail.length > 0) { + return; } - if (part.params.length !== 0 || part.hash.pairs.length !== 0) { + let resolution = this.ctx.resolutionFor(path, () => { + // We deliberately don't want this to resolve anything. The purpose of + // calling `resolutionFor` here is to check for strict mode, in-scope + // local variables, etc. return null; - } - let context = LooseModeResolution.attr(); - let callee = this.ctx.builder.freeVar({ - name, - context, - symbol: this.ctx.table.allocateFree(name, context), - loc: path.loc }); - return { - expr: this.ctx.builder.deprecatedCall(arg, callee, part.loc), - trusting: false - }; + if (resolution.result === 'error' && resolution.path !== 'has-block') { + throw generateSyntaxError("You attempted to pass a path as argument (`" + arg.name + "={{" + resolution.path + "}}`) but " + resolution.head + " was not in scope. Try:\n" + ("* `" + arg.name + "={{this." + resolution.path + "}}` if this is meant to be a property lookup, or\n") + ("* `" + arg.name + "={{(" + resolution.path + ")}}` if this is meant to invoke the resolved helper, or\n") + ("* `" + arg.name + "={{helper \"" + resolution.path + "\"}}` if this is meant to pass the resolved helper by value"), arg.loc); + } } arg(arg) { (0, _util.assert)(arg.name[0] === '@', 'An arg name must start with `@`'); + this.checkArgCall(arg); let offsets = this.ctx.loc(arg.loc); let nameSlice = offsets.sliceStartChars({ chars: arg.name.length }).toSlice(arg.name); - let value = this.maybeDeprecatedCall(nameSlice, arg.value) || this.attrValue(arg.value); + let value = this.attrValue(arg.value); return this.ctx.builder.arg({ name: nameSlice, value: value.expr, @@ -11706,7 +12250,10 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba let pathLoc = variableLoc.withEnd(pathEnd); if (isComponent) { let path = b.path({ - head: b.head(variable, variableLoc), + head: b.head({ + original: variable, + loc: variableLoc + }), tail, loc: pathLoc }); @@ -11797,7 +12344,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } assertElement(name, hasBlockParams) { if (hasBlockParams) { - throw generateSyntaxError("Unexpected block params in <" + name + ">: simple elements cannot have block params", this.loc); + throw generateSyntaxError("Unexpected block params in <" + name.chars + ">: simple elements cannot have block params", this.loc); } if ((0, _util.isPresentArray)(this.namedBlocks)) { let names = this.namedBlocks.map(b => b.name); @@ -11835,6 +12382,22 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } } } + function isLiteral(node) { + switch (node.type) { + case 'StringLiteral': + case 'BooleanLiteral': + case 'NumberLiteral': + case 'UndefinedLiteral': + case 'NullLiteral': + return true; + default: + return false; + } + } + function assertIllegalLiteral(node, loc) { + let value = node.type === 'StringLiteral' ? JSON.stringify(node.value) : String(node.value); + throw generateSyntaxError("Unexpected literal `" + value + "`", loc); + } function printPath(node) { if (node.type !== 'PathExpression' && node.path.type === 'PathExpression') { return printPath(node.path); @@ -11846,13 +12409,7 @@ define("@glimmer/syntax", ["exports", "ember-babel", "@glimmer/util", "@handleba } function printHead(node) { if (node.type === 'PathExpression') { - switch (node.head.type) { - case 'AtHead': - case 'VarHead': - return node.head.name; - case 'ThisHead': - return 'this'; - } + return node.head.original; } else if (node.path.type === 'PathExpression') { return printHead(node.path); } else { @@ -11900,7 +12457,6 @@ define("@glimmer/util", ["exports"], function (_exports) { _exports.exhausted = exhausted; _exports.expect = expect; _exports.extractHandle = extractHandle; - _exports.fillNulls = fillNulls; _exports.getFirst = getFirst; _exports.getLast = getLast; _exports.ifPresent = ifPresent; @@ -11984,8 +12540,10 @@ define("@glimmer/util", ["exports"], function (_exports) { if (val === null || val === undefined) throw new Error(message); return val; } - function unreachable() { - let message = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'unreachable'; + function unreachable(message) { + if (message === void 0) { + message = 'unreachable'; + } return new Error(message); } function exhausted(value) { @@ -12023,14 +12581,18 @@ define("@glimmer/util", ["exports"], function (_exports) { return null; } } - function assertPresentArray(list) { - let message = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "unexpected empty list"; + function assertPresentArray(list, message) { + if (message === void 0) { + message = "unexpected empty list"; + } if (!isPresentArray(list)) { throw new Error(message); } } - function asPresentArray(list) { - let message = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "unexpected empty list"; + function asPresentArray(list, message) { + if (message === void 0) { + message = "unexpected empty list"; + } assertPresentArray(list, message); return list; } @@ -12060,10 +12622,12 @@ define("@glimmer/util", ["exports"], function (_exports) { return typeof u === 'function' || typeof u === 'object' && u !== null; } class StackImpl { - constructor() { + constructor(values) { + if (values === void 0) { + values = []; + } this.stack = void 0; this.current = null; - let values = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : []; this.stack = values; } get size() { @@ -12225,8 +12789,8 @@ define("@glimmer/util", ["exports"], function (_exports) { return value > ImmediateConstants.ENCODED_UNDEFINED_HANDLE; } function constants() { - for (var _len = arguments.length, values = new Array(_len), _key = 0; _key < _len; _key++) { - values[_key] = arguments[_key]; + for (var _len2 = arguments.length, values = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { + values[_key2] = arguments[_key2]; } return [false, true, null, undefined, ...values]; } @@ -12315,13 +12879,6 @@ define("@glimmer/util", ["exports"], function (_exports) { return node.nodeValue === SERIALIZATION_FIRST_NODE_STRING; } let assign = _exports.assign = Object.assign; - function fillNulls(count) { - let arr = new Array(count); - for (let i = 0; i < count; i++) { - arr[i] = null; - } - return arr; - } function values(obj) { return Object.values(obj); } @@ -12342,8 +12899,10 @@ define("@glimmer/util", ["exports"], function (_exports) { // If we don't know what this is, but the check requires it to be an element, // the cast will mandate that it's a browser element + // Finally, if it's a more generic check, the cast will mandate that it's a // browser node and return a BrowserNodeUtils corresponding to the check + function castToBrowser(node, sugaryCheck) { if (node === null || node === undefined) { return null; @@ -12408,8 +12967,8 @@ define("@glimmer/util", ["exports"], function (_exports) { } function strip(strings) { let out = ''; - for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { - args[_key - 1] = arguments[_key]; + for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) { + args[_key3 - 1] = arguments[_key3]; } for (const [i, string] of enumerate(strings)) { let dynamic = args[i] !== undefined ? String(args[i]) : ''; @@ -12501,8 +13060,10 @@ define("@glimmer/util", ["exports"], function (_exports) { * actually appropriate. */ const LOGGER = _exports.LOGGER = console; - function assertNever(value) { - let desc = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'unexpected unreachable branch'; + function assertNever(value, desc) { + if (desc === void 0) { + desc = 'unexpected unreachable branch'; + } LOGGER.log('unreachable', value); LOGGER.log(desc + " :: " + JSON.stringify(value) + " (" + value + ")"); throw new Error("code reached unreachable"); @@ -12758,17 +13319,13 @@ define("@glimmer/wire-format", ["exports"], function (_exports) { GetSymbol: 30, GetLexicalSymbol: 32, GetStrictKeyword: 31, - GetFreeAsComponentOrHelperHeadOrThisFallback: 34, GetFreeAsComponentOrHelperHead: 35, - GetFreeAsHelperHeadOrThisFallback: 36, - GetFreeAsDeprecatedHelperHeadOrThisFallback: 99, GetFreeAsHelperHead: 37, GetFreeAsModifierHead: 38, GetFreeAsComponentHead: 39, InElement: 40, If: 41, Each: 42, - With: 43, Let: 44, WithDynamicVars: 45, InvokeComponent: 46, @@ -12785,10 +13342,8 @@ define("@glimmer/wire-format", ["exports"], function (_exports) { const resolution = _exports.VariableResolutionContext = { Strict: 0, - AmbiguousAppend: 1, - AmbiguousAppendInvoke: 2, - AmbiguousInvoke: 3, - ResolveAsCallHead: 5, + ResolveAsComponentOrHelperHead: 1, + ResolveAsHelperHead: 5, ResolveAsModifierHead: 6, ResolveAsComponentHead: 7 }; @@ -14513,7 +15068,6 @@ define("@handlebars/parser/index", ["exports"], function (_exports) { } return false; // rule action called reject() implying the next rule should be tested instead. } - return false; }, // return next match in input @@ -15410,7 +15964,15 @@ define("ember-template-compiler/lib/plugins/assert-against-attrs", ["exports", " return { name: 'assert-against-attrs', visitor: { - Program: { + Template: { + enter(node) { + updateBlockParamsStack(node.blockParams); + }, + exit() { + stack.pop(); + } + }, + Block: { enter(node) { updateBlockParamsStack(node.blockParams); }, @@ -15428,26 +15990,34 @@ define("ember-template-compiler/lib/plugins/assert-against-attrs", ["exports", " }, PathExpression(node) { if (isAttrs(node, stack[stack.length - 1])) { - let path = b.path(node.original.substring(6)); - (true && !(node.this !== false) && (0, _debug.assert)("Using {{attrs}} to reference named arguments is not supported. {{attrs." + path.original + "}} should be updated to {{@" + path.original + "}}. " + (0, _calculateLocationDisplay.default)(moduleName, node.loc), node.this !== false)); + (true && !(false) && (0, _debug.assert)("Using {{attrs}} to reference named arguments is not supported. {{" + node.original + "}} should be updated to {{@" + node.original.slice(6) + "}}. " + (0, _calculateLocationDisplay.default)(moduleName, node.loc))); + } else if (isThisDotAttrs(node)) { + // When removing this, ensure `{{this.attrs.foo}}` is left as-is, without triggering + // any assertions/deprecations. It's perfectly legal to reference `{{this.attrs.foo}}` + // in the template since it is a real property on the backing class – it will give you + // a `MutableCell` wrapper object, but maybe that's what you want. And in any case, + // there is no compelling to special case that property access. + (true && !(false) && (0, _debug.deprecate)("Using {{this.attrs}} to reference named arguments has been deprecated. {{" + node.original + "}} should be updated to {{@" + node.original.slice(11) + "}}. " + (0, _calculateLocationDisplay.default)(moduleName, node.loc), false, { + id: 'attrs-arg-access', + url: 'https://deprecations.emberjs.com/v3.x/#toc_attrs-arg-access', + until: '6.0.0', + for: 'ember-source', + since: { + available: '3.26.0', + enabled: '3.26.0' + } + })); + return b.path("@" + node.original.slice(11), node.loc); } } } }; } function isAttrs(node, symbols) { - let name = node.parts[0]; - if (name && symbols.indexOf(name) !== -1) { - return false; - } - if (name === 'attrs') { - if (node.this === true) { - node.parts.shift(); - node.original = node.original.slice(5); - } - return true; - } - return false; + return node.head.type === 'VarHead' && node.head.name === 'attrs' && symbols.indexOf(node.head.name) === -1; + } + function isThisDotAttrs(node) { + return node.head.type === 'ThisHead' && node.tail[0] === 'attrs'; } }); define("ember-template-compiler/lib/plugins/assert-against-named-outlets", ["exports", "@ember/debug", "ember-template-compiler/lib/system/calculate-location-display"], function (_exports, _debug, _calculateLocationDisplay) { @@ -15563,48 +16133,25 @@ define("ember-template-compiler/lib/plugins/assert-reserved-named-arguments", [" return "'" + name + "' is reserved."; } }); -define("ember-template-compiler/lib/plugins/assert-splattribute-expression", ["exports", "@ember/debug", "ember-template-compiler/lib/system/calculate-location-display"], function (_exports, _debug, _calculateLocationDisplay) { - "use strict"; - - Object.defineProperty(_exports, "__esModule", { - value: true - }); - _exports.default = assertSplattributeExpressions; - function assertSplattributeExpressions(env) { - var _env$meta; - let moduleName = (_env$meta = env.meta) == null ? void 0 : _env$meta.moduleName; - return { - name: 'assert-splattribute-expressions', - visitor: { - PathExpression(_ref) { - let { - original, - loc - } = _ref; - if (original === '...attributes') { - (true && !(false) && (0, _debug.assert)(errorMessage() + " " + (0, _calculateLocationDisplay.default)(moduleName, loc))); - } - } - } - }; - } - function errorMessage() { - return '`...attributes` can only be used in the element position e.g. `
`. It cannot be used as a path.'; - } -}); -define("ember-template-compiler/lib/plugins/index", ["exports", "ember-template-compiler/lib/plugins/assert-against-attrs", "ember-template-compiler/lib/plugins/assert-against-named-outlets", "ember-template-compiler/lib/plugins/assert-input-helper-without-block", "ember-template-compiler/lib/plugins/assert-reserved-named-arguments", "ember-template-compiler/lib/plugins/assert-splattribute-expression", "ember-template-compiler/lib/plugins/transform-action-syntax", "ember-template-compiler/lib/plugins/transform-each-in-into-each", "ember-template-compiler/lib/plugins/transform-each-track-array", "ember-template-compiler/lib/plugins/transform-in-element", "ember-template-compiler/lib/plugins/transform-quoted-bindings-into-just-bindings", "ember-template-compiler/lib/plugins/transform-resolutions", "ember-template-compiler/lib/plugins/transform-wrap-mount-and-outlet"], function (_exports, _assertAgainstAttrs, _assertAgainstNamedOutlets, _assertInputHelperWithoutBlock, _assertReservedNamedArguments, _assertSplattributeExpression, _transformActionSyntax, _transformEachInIntoEach, _transformEachTrackArray, _transformInElement, _transformQuotedBindingsIntoJustBindings, _transformResolutions, _transformWrapMountAndOutlet) { +define("ember-template-compiler/lib/plugins/index", ["exports", "ember-template-compiler/lib/plugins/assert-against-attrs", "ember-template-compiler/lib/plugins/assert-against-named-outlets", "ember-template-compiler/lib/plugins/assert-input-helper-without-block", "ember-template-compiler/lib/plugins/assert-reserved-named-arguments", "ember-template-compiler/lib/plugins/transform-action-syntax", "ember-template-compiler/lib/plugins/transform-each-in-into-each", "ember-template-compiler/lib/plugins/transform-each-track-array", "ember-template-compiler/lib/plugins/transform-in-element", "ember-template-compiler/lib/plugins/transform-quoted-bindings-into-just-bindings", "ember-template-compiler/lib/plugins/transform-resolutions", "ember-template-compiler/lib/plugins/transform-wrap-mount-and-outlet"], function (_exports, _assertAgainstAttrs, _assertAgainstNamedOutlets, _assertInputHelperWithoutBlock, _assertReservedNamedArguments, _transformActionSyntax, _transformEachInIntoEach, _transformEachTrackArray, _transformInElement, _transformQuotedBindingsIntoJustBindings, _transformResolutions, _transformWrapMountAndOutlet) { "use strict"; Object.defineProperty(_exports, "__esModule", { value: true }); - _exports.STRICT_MODE_TRANSFORMS = _exports.RESOLUTION_MODE_TRANSFORMS = void 0; + _exports.STRICT_MODE_TRANSFORMS = _exports.STRICT_MODE_KEYWORDS = _exports.RESOLUTION_MODE_TRANSFORMS = void 0; // order of plugins is important - const RESOLUTION_MODE_TRANSFORMS = _exports.RESOLUTION_MODE_TRANSFORMS = Object.freeze([_transformQuotedBindingsIntoJustBindings.default, _assertReservedNamedArguments.default, _transformActionSyntax.default, _assertAgainstAttrs.default, _transformEachInIntoEach.default, _assertInputHelperWithoutBlock.default, _transformInElement.default, _assertSplattributeExpression.default, _transformEachTrackArray.default, _assertAgainstNamedOutlets.default, _transformWrapMountAndOutlet.default, _transformResolutions.default].filter(notNull)); - const STRICT_MODE_TRANSFORMS = _exports.STRICT_MODE_TRANSFORMS = Object.freeze([_transformQuotedBindingsIntoJustBindings.default, _assertReservedNamedArguments.default, _transformActionSyntax.default, _transformEachInIntoEach.default, _transformInElement.default, _assertSplattributeExpression.default, _transformEachTrackArray.default, _assertAgainstNamedOutlets.default, _transformWrapMountAndOutlet.default].filter(notNull)); - function notNull(value) { - return value !== null; - } + const RESOLUTION_MODE_TRANSFORMS = _exports.RESOLUTION_MODE_TRANSFORMS = Object.freeze([_transformQuotedBindingsIntoJustBindings.default, _assertReservedNamedArguments.default, _transformActionSyntax.default, _assertAgainstAttrs.default, _transformEachInIntoEach.default, _assertInputHelperWithoutBlock.default, _transformInElement.default, _transformEachTrackArray.default, _assertAgainstNamedOutlets.default, _transformWrapMountAndOutlet.default, _transformResolutions.default]); + const STRICT_MODE_TRANSFORMS = _exports.STRICT_MODE_TRANSFORMS = Object.freeze([_transformQuotedBindingsIntoJustBindings.default, _assertReservedNamedArguments.default, _transformActionSyntax.default, _transformEachInIntoEach.default, _transformInElement.default, _transformEachTrackArray.default, _assertAgainstNamedOutlets.default, _transformWrapMountAndOutlet.default]); + const STRICT_MODE_KEYWORDS = _exports.STRICT_MODE_KEYWORDS = Object.freeze(['action', 'mut', 'readonly', 'unbound', + // TransformEachInIntoEach + '-each-in', + // TransformInElement + '-in-el-null', + // TransformEachTrackArray + '-track-array', + // TransformWrapMountAndOutlet + '-mount', '-outlet']); }); define("ember-template-compiler/lib/plugins/transform-action-syntax", ["exports", "ember-template-compiler/lib/plugins/utils"], function (_exports, _utils) { "use strict"; @@ -15987,7 +16534,7 @@ define("ember-template-compiler/lib/plugins/transform-resolutions", ["exports", }; } function isLocalVariable(node, hasLocal) { - return !node.this && node.parts.length === 1 && hasLocal(node.parts[0]); + return !(node.head.type === 'ThisHead') && node.tail.length === 1 && hasLocal(node.head.original); } function transformParams(b, params, type, moduleName, loc) { let [first, ...rest] = params; @@ -16050,8 +16597,9 @@ define("ember-template-compiler/lib/plugins/transform-wrap-mount-and-outlet", [" return { name: 'transform-wrap-mount-and-outlet', visitor: { - Program: node, + Template: node, ElementNode: node, + Block: node, MustacheStatement(node) { if ((0, _utils.isPath)(node.path) && (node.path.original === 'mount' || node.path.original === 'outlet') && !hasLocal(node.path.original)) { let subexpression = b.sexpr(b.path("-" + node.path.original), node.params, node.hash, node.loc); @@ -16081,22 +16629,33 @@ define("ember-template-compiler/lib/plugins/utils", ["exports"], function (_expo function isStringLiteral(node) { return node.type === 'StringLiteral'; } + function getLocalName(node) { + if (typeof node === 'string') { + return node; + } else { + return node.original; + } + } function trackLocals() { let locals = new Map(); let node = { enter(node) { - for (let param of node.blockParams) { + let params = 'params' in node ? node.params : node.blockParams; + for (let param of params) { + let name = getLocalName(param); let value = locals.get(param) || 0; - locals.set(param, value + 1); + locals.set(name, value + 1); } }, exit(node) { - for (let param of node.blockParams) { - let value = locals.get(param) - 1; + let params = 'params' in node ? node.params : node.blockParams; + for (let param of params) { + let name = getLocalName(param); + let value = locals.get(name) - 1; if (value === 0) { - locals.delete(param); + locals.delete(name); } else { - locals.set(param, value); + locals.set(name, value); } } } @@ -16320,6 +16879,9 @@ define("ember-template-compiler/lib/system/compile-options", ["exports", "@ember (true && !(meta) && (0, _debug.assert)('has meta', meta)); // We just set it meta.moduleName = options.moduleName; } + if (options.strictMode) { + options.keywords = _index.STRICT_MODE_KEYWORDS; + } return options; } function transformsFor(options) { @@ -16498,7 +17060,7 @@ define("ember/version", ["exports"], function (_exports) { value: true }); _exports.default = void 0; - var _default = _exports.default = "5.6.0"; + var _default = _exports.default = "5.10.0-alpha.1+aa913464"; }); define("simple-html-tokenizer", ["exports"], function (_exports) { "use strict"; @@ -18764,7 +19326,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeDoctypeName" /* beforeDoctypeName */); } }, - beforeDoctypeName: function () { var char = this.consume(); if (isSpace(char)) { @@ -18811,7 +19372,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { } } }, - afterDoctypePublicKeyword: function () { var char = this.peek(); if (isSpace(char)) { @@ -18829,7 +19389,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeData" /* beforeData */); } }, - doctypePublicIdentifierDoubleQuoted: function () { var char = this.consume(); if (char === '"') { @@ -18865,7 +19424,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("doctypeSystemIdentifierSingleQuoted" /* doctypeSystemIdentifierSingleQuoted */); } }, - betweenDoctypePublicAndSystemIdentifiers: function () { var char = this.consume(); if (isSpace(char)) { @@ -18879,7 +19437,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("doctypeSystemIdentifierSingleQuoted" /* doctypeSystemIdentifierSingleQuoted */); } }, - doctypeSystemIdentifierDoubleQuoted: function () { var char = this.consume(); if (char === '"') { @@ -18911,7 +19468,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeData" /* beforeData */); } }, - commentStart: function () { var char = this.consume(); if (char === '-') { @@ -18924,7 +19480,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("comment" /* comment */); } }, - commentStartDash: function () { var char = this.consume(); if (char === '-') { @@ -18937,7 +19492,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("comment" /* comment */); } }, - comment: function () { var char = this.consume(); if (char === '-') { @@ -18955,7 +19509,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("comment" /* comment */); } }, - commentEnd: function () { var char = this.consume(); if (char === '>') { @@ -18966,7 +19519,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("comment" /* comment */); } }, - tagName: function () { var char = this.consume(); if (isSpace(char)) { @@ -19161,7 +19713,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeAttributeName" /* beforeAttributeName */); } }, - selfClosingStartTag: function () { var char = this.peek(); if (char === '>') { @@ -19173,7 +19724,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeAttributeName" /* beforeAttributeName */); } }, - endTagOpen: function () { var char = this.consume(); if (char === '@' || char === ':' || isAlpha(char)) { @@ -19223,7 +19773,6 @@ define("simple-html-tokenizer", ["exports"], function (_exports) { this.transitionTo("beforeData" /* beforeData */); } }; - EventedTokenizer.prototype.peek = function () { return this.input.charAt(this.index); }; diff --git a/ember/ember-5.6.0.prod.js b/ember/ember-git-05-5c8df04a.prod.js similarity index 76% rename from ember/ember-5.6.0.prod.js rename to ember/ember-git-05-5c8df04a.prod.js index 6c34bf1..ba135b1 100644 --- a/ember/ember-5.6.0.prod.js +++ b/ember/ember-git-05-5c8df04a.prod.js @@ -33,7 +33,7 @@ if(!r||"new"===r.state)return(r=new s(e,[],a,null)).module.exports=t,r.state="fi * Portions Copyright 2008-2011 Apple Inc. All rights reserved. * @license Licensed under MIT license * See https://raw.github.com/emberjs/ember.js/master/LICENSE - * @version 5.6.0 + * @version 5.10.0-alpha.1+5c8df04a */ var e,t;(function(){var r="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:null if(null===r)throw new Error("unable to locate global object") @@ -97,14 +97,19 @@ if(void 0!==r&&void 0!==r[t])return r[t] let n=e.split(":")[0] return r=this._typeOptions[n],r&&void 0!==r[t]?r[t]:null!==this.fallback?this.fallback.getOption(e,t):void 0}knownForType(e){let r,n,i=(0,t.dictionary)(null),o=Object.keys(this.registrations) for(let t of o){t.split(":")[0]===e&&(i[t]=!0)}return null!==this.fallback&&(r=this.fallback.knownForType(e)),null!==this.resolver&&this.resolver.knownForType&&(n=this.resolver.knownForType(e)),Object.assign({},r,i,n)}isValidFullName(e){return h.test(e)}}e.Registry=f -const m=(0,t.dictionary)(null),g=`${Math.random()}${Date.now()}`.replace(".","")})),e("@ember/-internals/environment/index",["exports"],(function(e){"use strict" +const m=(0,t.dictionary)(null),g=`${Math.random()}${Date.now()}`.replace(".","")})),e("@ember/-internals/deprecations/index",["exports","@ember/-internals/environment","@ember/version","@ember/debug"],(function(e,t,r,n){"use strict" +function i(e){return Object.hasOwnProperty.call(e.since,"enabled")||t.ENV._ALL_DEPRECATIONS_ENABLED}Object.defineProperty(e,"__esModule",{value:!0}),e.DEPRECATIONS=void 0,e.deprecateUntil=function(e,t){const{options:r}=t +if(t.isRemoved)throw new Error(`The API deprecated by ${r.id} was removed in ember-source ${r.until}. The message was: ${e}. Please see ${r.url} for more details.`)},e.emberVersionGte=s,e.isRemoved=a +let o=parseFloat(t.ENV._OVERRIDE_DEPRECATION_VERSION??r.VERSION) +function s(e,t=o){let r=e.replace(/(\.0+)/g,"") +return t>=parseFloat(r)}function a(e){return s(e.until)}function l(e){return{options:e,test:!i(e),isEnabled:i(e)||a(e),isRemoved:a(e)}}e.DEPRECATIONS={DEPRECATE_IMPLICIT_ROUTE_MODEL:l({id:"deprecate-implicit-route-model",for:"ember-source",since:{available:"5.3.0",enabled:"5.3.0"},until:"6.0.0",url:"https://deprecations.emberjs.com/v5.x/#toc_deprecate-implicit-route-model"}),DEPRECATE_TEMPLATE_ACTION:l({id:"template-action",url:"https://deprecations.emberjs.com/id/template-action",until:"6.0.0",for:"ember-source",since:{available:"5.9.0"}}),DEPRECATE_COMPONENT_TEMPLATE_RESOLVING:l({id:"component-template-resolving",url:"https://deprecations.emberjs.com/id/component-template-resolving",until:"6.0.0",for:"ember-source",since:{available:"5.9.0"}})}})),e("@ember/-internals/environment/index",["exports"],(function(e){"use strict" function t(e){return e&&e.Object===Object?e:void 0}Object.defineProperty(e,"__esModule",{value:!0}),e.context=e.ENV=void 0,e.getENV=function(){return o},e.getLookup=function(){return i.lookup},e.global=void 0,e.setLookup=function(e){i.lookup=e} var r,n=e.global=t((r="object"==typeof global&&global)&&void 0===r.nodeType?r:void 0)||t("object"==typeof self&&self)||t("object"==typeof window&&window)||"undefined"!=typeof mainContext&&mainContext||new Function("return this")() const i=e.context=function(e,t){return void 0===t?{imports:e,exports:e,lookup:e}:{imports:t.imports||e,exports:t.exports||e,lookup:t.lookup||e}}(n,n.Ember) -const o=e.ENV={ENABLE_OPTIONAL_FEATURES:!1,EXTEND_PROTOTYPES:{Array:!0},LOG_STACKTRACE_ON_DEPRECATION:!0,LOG_VERSION:!0,RAISE_ON_DEPRECATION:!1,STRUCTURED_PROFILE:!1,_APPLICATION_TEMPLATE_WRAPPER:!0,_TEMPLATE_ONLY_GLIMMER_COMPONENTS:!1,_DEBUG_RENDER_TREE:!1,_DEFAULT_ASYNC_OBSERVERS:!1,_RERENDER_LOOP_LIMIT:1e3,EMBER_LOAD_HOOKS:{},FEATURES:{}};(e=>{if("object"!=typeof e||null===e)return +const o=e.ENV={ENABLE_OPTIONAL_FEATURES:!1,EXTEND_PROTOTYPES:{Array:!0},LOG_STACKTRACE_ON_DEPRECATION:!0,LOG_VERSION:!0,RAISE_ON_DEPRECATION:!1,STRUCTURED_PROFILE:!1,_DEBUG_RENDER_TREE:!1,_ALL_DEPRECATIONS_ENABLED:!1,_OVERRIDE_DEPRECATION_VERSION:null,_DEFAULT_ASYNC_OBSERVERS:!1,_NO_IMPLICIT_ROUTE_MODEL:!1,_RERENDER_LOOP_LIMIT:1e3,EMBER_LOAD_HOOKS:{},FEATURES:{}};(e=>{if("object"!=typeof e||null===e)return for(let i in e){if(!Object.prototype.hasOwnProperty.call(e,i)||"EXTEND_PROTOTYPES"===i||"EMBER_LOAD_HOOKS"===i)continue let t=o[i] -!0===t?o[i]=!1!==e[i]:!1===t&&(o[i]=!0===e[i])}let{EXTEND_PROTOTYPES:t}=e +o[i]=!0===t?!1!==e[i]:!1===t?!0===e[i]:e[i]}let{EXTEND_PROTOTYPES:t}=e void 0!==t&&(o.EXTEND_PROTOTYPES.Array="object"==typeof t&&null!==t?!1!==t.Array:!1!==t) let{EMBER_LOAD_HOOKS:r}=e if("object"==typeof r&&null!==r)for(let i in r){if(!Object.prototype.hasOwnProperty.call(r,i))continue @@ -114,60 +119,60 @@ if("object"==typeof n&&null!==n)for(let i in n)Object.prototype.hasOwnProperty.c let t Object.defineProperty(e,"__esModule",{value:!0}),e.getDispatchOverride=function(){return r},e.getOnerror=function(){return t},e.onErrorTarget=void 0,e.setDispatchOverride=function(e){r=e},e.setOnerror=function(e){t=e} e.onErrorTarget={get onerror(){return t}} -let r=null})),e("@ember/-internals/glimmer/index",["exports","@glimmer/opcode-compiler","@ember/-internals/browser-environment","@ember/debug","@ember/object","@glimmer/reference","@glimmer/validator","@ember/modifier","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/utils","@glimmer/manager","@ember/-internals/views","@ember/engine","@ember/engine/instance","@ember/instrumentation","@ember/service","@ember/-internals/runtime","@glimmer/runtime","@glimmer/util","@ember/-internals/string","@glimmer/destroyable","@ember/runloop","@ember/object/-internals","@ember/-internals/container","@ember/-internals/environment","@glimmer/vm","@glimmer/program","rsvp","@glimmer/node","@glimmer/global-context","@ember/array/-internals","@ember/-internals/glimmer","@ember/array","@ember/routing/-internals","@ember/template-factory"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v,_,O,w,C,E,k,T,S,R,P,x,A,M,N,j,D){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.Component=void 0,Object.defineProperty(e,"DOMChanges",{enumerable:!0,get:function(){return y.DOMChanges}}),Object.defineProperty(e,"DOMTreeConstruction",{enumerable:!0,get:function(){return y.DOMTreeConstruction}}),e.LinkTo=e.Input=e.Helper=void 0,Object.defineProperty(e,"NodeDOMTreeConstruction",{enumerable:!0,get:function(){return P.NodeDOMTreeConstruction}}),e.Textarea=e.SafeString=e.RootTemplate=e.Renderer=e.OutletView=void 0,e._resetRenderers=function(){lr.length=0},e.componentCapabilities=void 0,e.escapeExpression=function(e){let t -if("string"!=typeof e){if(lt(e))return e.toHTML() +let r=null})),e("@ember/-internals/glimmer/index",["exports","@glimmer/opcode-compiler","@ember/-internals/browser-environment","@ember/debug","@ember/object","@glimmer/reference","@glimmer/validator","@ember/modifier","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/utils","@glimmer/manager","@ember/-internals/views","@ember/engine","@ember/engine/instance","@ember/instrumentation","@ember/service","@ember/-internals/runtime","@glimmer/runtime","@glimmer/util","@ember/-internals/string","@glimmer/destroyable","@ember/-internals/deprecations","@ember/runloop","@ember/object/-internals","@ember/-internals/container","@ember/-internals/environment","@glimmer/vm","@glimmer/program","rsvp","@glimmer/node","@glimmer/global-context","@ember/array/-internals","@ember/-internals/glimmer","@ember/array","@ember/routing/-internals","@ember/template-factory"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v,_,O,w,E,C,k,T,R,S,P,A,x,M,N,D,j,I){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.Component=void 0,Object.defineProperty(e,"DOMChanges",{enumerable:!0,get:function(){return y.DOMChanges}}),Object.defineProperty(e,"DOMTreeConstruction",{enumerable:!0,get:function(){return y.DOMTreeConstruction}}),e.LinkTo=e.Input=e.Helper=void 0,Object.defineProperty(e,"NodeDOMTreeConstruction",{enumerable:!0,get:function(){return A.NodeDOMTreeConstruction}}),e.Textarea=e.SafeString=e.RootTemplate=e.Renderer=e.OutletView=void 0,e._resetRenderers=function(){ur.length=0},e.componentCapabilities=void 0,e.escapeExpression=function(e){let t +if("string"!=typeof e){if(ut(e))return e.toHTML() if(null==e)return"" if(!e)return String(e) t=String(e)}else t=e -if(!ot.test(t))return t -return t.replace(st,at)},e.getTemplate=function(e){if(Object.prototype.hasOwnProperty.call(hr,e))return hr[e]},e.getTemplates=function(){return hr},e.hasTemplate=function(e){return Object.prototype.hasOwnProperty.call(hr,e)},e.helper=rt,e.htmlSafe=function(e){null==e?e="":"string"!=typeof e&&(e=String(e)) -return new nt(e)},e.isHTMLSafe=lt,Object.defineProperty(e,"isSerializationFirstNode",{enumerable:!0,get:function(){return y.isSerializationFirstNode}}),e.modifierCapabilities=void 0,e.renderSettled=function(){null===cr&&(cr=R.default.defer(),(0,w._getCurrentRunLoop)()||w._backburner.schedule("actions",null,sr)) -return cr.promise},e.setComponentManager=function(e,t){return(0,p.setComponentManager)(e,t)},e.setTemplate=function(e,t){return hr[e]=t},e.setTemplates=function(e){hr=e},e.setupApplicationRegistry=function(e){e.register("service:-dom-builder",{create(e){let t=(0,u.getOwner)(e) -switch(t.lookup("-environment:main")._renderMode){case"serialize":return P.serializeBuilder.bind(null) +if(!st.test(t))return t +return t.replace(at,lt)},e.getTemplate=function(e){if(Object.prototype.hasOwnProperty.call(fr,e))return fr[e]},e.getTemplates=function(){return fr},e.hasTemplate=function(e){return Object.prototype.hasOwnProperty.call(fr,e)},e.helper=nt,e.htmlSafe=function(e){null==e?e="":"string"!=typeof e&&(e=String(e)) +return new it(e)},e.isHTMLSafe=ut,Object.defineProperty(e,"isSerializationFirstNode",{enumerable:!0,get:function(){return y.isSerializationFirstNode}}),e.modifierCapabilities=void 0,e.renderSettled=function(){null===pr&&(pr=P.default.defer(),(0,E._getCurrentRunLoop)()||E._backburner.schedule("actions",null,ar)) +return pr.promise},e.setComponentManager=function(e,t){return(0,p.setComponentManager)(e,t)},e.setTemplate=function(e,t){return fr[e]=t},e.setTemplates=function(e){fr=e},e.setupApplicationRegistry=function(e){e.register("service:-dom-builder",{create(e){let t=(0,u.getOwner)(e) +switch(t.lookup("-environment:main")._renderMode){case"serialize":return A.serializeBuilder.bind(null) case"rehydrate":return y.rehydrationBuilder.bind(null) -default:return y.clientBuilder.bind(null)}}}),e.register(E.privatize`template:-root`,I),e.register("renderer:-dom",dr)},e.setupEngineRegistry=function(e){e.optionsForType("template",{instantiate:!1}),e.register("view:-outlet",ir),e.register("template:-outlet",fr),e.optionsForType("helper",{instantiate:!1}),e.register("component:input",te),e.register("component:link-to",de),e.register("component:textarea",ge),k.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS||e.register(E.privatize`component:-default`,We)},Object.defineProperty(e,"template",{enumerable:!0,get:function(){return t.templateFactory}}),Object.defineProperty(e,"templateCacheCounters",{enumerable:!0,get:function(){return t.templateCacheCounters}}),e.uniqueId=Bt -var I=e.RootTemplate=(0,D.createTemplateFactory)({id:"tjANIXCV",block:'[[[46,[30,0],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/root.hbs",isStrictMode:!0}),F=(0,D.createTemplateFactory)({id:"4z3DuGQ3",block:'[[[11,"input"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,4,[30,0,["type"]]],[16,"checked",[30,0,["checked"]]],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/input.hbs",scope:()=>[a.on],isStrictMode:!0}) -function L(){}class B{static toString(){return"internal component"}constructor(e,t,r){this.owner=e,this.args=t,this.caller=r,(0,u.setOwner)(this,e)}get id(){return(0,c.guidFor)(this)}get class(){return"ember-view"}validateArguments(){for(let e of Object.keys(this.args.named))this.isSupportedArgument(e)||this.onUnsupportedArgument(e)}named(e){let t=this.args.named[e] +default:return y.clientBuilder.bind(null)}}}),e.register(k.privatize`template:-root`,F),e.register("renderer:-dom",hr)},e.setupEngineRegistry=function(e){e.optionsForType("template",{instantiate:!1}),e.register("view:-outlet",or),e.register("template:-outlet",mr),e.optionsForType("helper",{instantiate:!1}),e.register("component:input",re),e.register("component:link-to",he),e.register("component:textarea",be)},Object.defineProperty(e,"template",{enumerable:!0,get:function(){return t.templateFactory}}),Object.defineProperty(e,"templateCacheCounters",{enumerable:!0,get:function(){return t.templateCacheCounters}}),e.uniqueId=Bt +var F=e.RootTemplate=(0,I.createTemplateFactory)({id:"tjANIXCV",block:'[[[46,[30,0],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/root.hbs",isStrictMode:!0}),L=(0,I.createTemplateFactory)({id:"4z3DuGQ3",block:'[[[11,"input"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,4,[30,0,["type"]]],[16,"checked",[30,0,["checked"]]],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/input.hbs",scope:()=>[a.on],isStrictMode:!0}) +function B(){}class U{static toString(){return"internal component"}constructor(e,t,r){this.owner=e,this.args=t,this.caller=r,(0,u.setOwner)(this,e)}get id(){return(0,c.guidFor)(this)}get class(){return"ember-view"}validateArguments(){for(let e of Object.keys(this.args.named))this.isSupportedArgument(e)||this.onUnsupportedArgument(e)}named(e){let t=this.args.named[e] return t?(0,o.valueForRef)(t):void 0}positional(e){let t=this.args.positional[e] return t?(0,o.valueForRef)(t):void 0}listenerFor(e){let t=this.named(e) -return t||L}isSupportedArgument(e){return!1}onUnsupportedArgument(e){}toString(){return`<${this.constructor}:${(0,c.guidFor)(this)}>`}}const U=new WeakMap -function H(e,t){let r={create(){throw(0,n.assert)("Use constructor instead of create")},toString:()=>e.toString()} -return U.set(r,e),(0,p.setInternalComponentManager)(V,r),(0,p.setComponentTemplate)(t,r),r}const $={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!1,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -const V=new class{getCapabilities(){return $}create(e,t,r,n,i,a){var l -let u=new(l=t,U.get(l))(e,r.capture(),(0,o.valueForRef)(a)) +return t||B}isSupportedArgument(e){return!1}onUnsupportedArgument(e){}toString(){return`<${this.constructor}:${(0,c.guidFor)(this)}>`}}const H=new WeakMap +function $(e,t){let r={create(){throw(0,n.assert)("Use constructor instead of create")},toString:()=>e.toString()} +return H.set(r,e),(0,p.setInternalComponentManager)(z,r),(0,p.setComponentTemplate)(t,r),r}const V={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!1,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +const z=new class{getCapabilities(){return V}create(e,t,r,n,i,a){var l +let u=new(l=t,H.get(l))(e,r.capture(),(0,o.valueForRef)(a)) return(0,s.untrack)(u.validateArguments.bind(u)),u}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}getDebugName(e){return e.toString()}getSelf(e){return(0,o.createConstRef)(e,"this")}getDestroyable(e){return e}} -var z=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +var q=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -const q=Object.freeze({}) -function G(e){return function(e){return e.target}(e).value}function W(e){return void 0===e?new Y(void 0):(0,o.isConstRef)(e)?new Y((0,o.valueForRef)(e)):(0,o.isUpdatableRef)(e)?new Q(e):new K(e)}class Y{constructor(e){this.value=e}get(){return this.value}set(e){this.value=e}}z([l.tracked],Y.prototype,"value",void 0) -class Q{constructor(e){this.reference=e}get(){return(0,o.valueForRef)(this.reference)}set(e){(0,o.updateRef)(this.reference,e)}}class K{constructor(e){this.lastUpstreamValue=q,this.upstream=new Q(e)}get(){let e=this.upstream.get() -return e!==this.lastUpstreamValue&&(this.lastUpstreamValue=e,this.local=new Y(e)),this.local.get()}set(e){this.local.set(e)}}class J extends B{constructor(){super(...arguments),this._value=W(this.args.named.value)}validateArguments(){super.validateArguments()}get value(){return this._value.get()}set value(e){this._value.set(e)}valueDidChange(e){this.value=G(e)}change(e){this.valueDidChange(e)}input(e){this.valueDidChange(e)}keyUp(e){switch(e.key){case"Enter":this.listenerFor("enter")(e),this.listenerFor("insert-newline")(e) +const G=Object.freeze({}) +function W(e){return function(e){return e.target}(e).value}function Y(e){return void 0===e?new Q(void 0):(0,o.isConstRef)(e)?new Q((0,o.valueForRef)(e)):(0,o.isUpdatableRef)(e)?new K(e):new J(e)}class Q{constructor(e){this.value=e}get(){return this.value}set(e){this.value=e}}q([l.tracked],Q.prototype,"value",void 0) +class K{constructor(e){this.reference=e}get(){return(0,o.valueForRef)(this.reference)}set(e){(0,o.updateRef)(this.reference,e)}}class J{constructor(e){this.lastUpstreamValue=G,this.upstream=new K(e)}get(){let e=this.upstream.get() +return e!==this.lastUpstreamValue&&(this.lastUpstreamValue=e,this.local=new Q(e)),this.local.get()}set(e){this.local.set(e)}}class X extends U{constructor(){super(...arguments),this._value=Y(this.args.named.value)}validateArguments(){super.validateArguments()}get value(){return this._value.get()}set value(e){this._value.set(e)}valueDidChange(e){this.value=W(e)}change(e){this.valueDidChange(e)}input(e){this.valueDidChange(e)}keyUp(e){switch(e.key){case"Enter":this.listenerFor("enter")(e),this.listenerFor("insert-newline")(e) break case"Escape":this.listenerFor("escape-press")(e)}}listenerFor(e){let t=super.listenerFor(e) -return this.isVirtualEventListener(e,t)?(r=t,e=>r(G(e),e)):t -var r}isVirtualEventListener(e,t){return-1!==["enter","insert-newline","escape-press"].indexOf(e)}}z([i.action],J.prototype,"valueDidChange",null),z([i.action],J.prototype,"keyUp",null) -var X=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +return this.isVirtualEventListener(e,t)?(r=t,e=>r(W(e),e)):t +var r}isVirtualEventListener(e,t){return-1!==["enter","insert-newline","escape-press"].indexOf(e)}}q([i.action],X.prototype,"valueDidChange",null),q([i.action],X.prototype,"keyUp",null) +var Z=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -let Z +let ee if(r.hasDOM){const e=Object.create(null),t=document.createElement("input") -e[""]=!1,e.text=!0,e.checkbox=!0,Z=r=>{let n=e[r] -if(void 0===n){try{t.type=r,n=t.type===r}catch(i){n=!1}finally{t.type="text"}e[r]=n}return n}}else Z=e=>""!==e -class ee extends J{constructor(){super(...arguments),this._checked=W(this.args.named.checked)}static toString(){return"Input"}get class(){return this.isCheckbox?"ember-checkbox ember-view":"ember-text-field ember-view"}get type(){let e=this.named("type") -return null==e?"text":Z(e)?e:"text"}get isCheckbox(){return"checkbox"===this.named("type")}get checked(){return this.isCheckbox?this._checked.get():void 0}set checked(e){this._checked.set(e)}change(e){this.isCheckbox?this.checkedDidChange(e):super.change(e)}input(e){this.isCheckbox||super.input(e)}checkedDidChange(e){let t=e.target -this.checked=t.checked}isSupportedArgument(e){return-1!==["type","value","checked","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}X([i.action],ee.prototype,"change",null),X([i.action],ee.prototype,"input",null),X([i.action],ee.prototype,"checkedDidChange",null) -const te=e.Input=H(ee,F) -var re=(0,D.createTemplateFactory)({id:"Ub0nir+H",block:'[[[11,3],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[16,"role",[30,0,["role"]]],[16,"title",[30,0,["title"]]],[16,"rel",[30,0,["rel"]]],[16,"tabindex",[30,0,["tabindex"]]],[16,"target",[30,0,["target"]]],[17,1],[16,6,[30,0,["href"]]],[4,[32,0],["click",[30,0,["click"]]],null],[12],[18,2,null],[13]],["&attrs","&default"],false,["yield"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/link-to.hbs",scope:()=>[a.on],isStrictMode:!0}),ne=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +e[""]=!1,e.text=!0,e.checkbox=!0,ee=r=>{let n=e[r] +if(void 0===n){try{t.type=r,n=t.type===r}catch(i){n=!1}finally{t.type="text"}e[r]=n}return n}}else ee=e=>""!==e +class te extends X{constructor(){super(...arguments),this._checked=Y(this.args.named.checked)}static toString(){return"Input"}get class(){return this.isCheckbox?"ember-checkbox ember-view":"ember-text-field ember-view"}get type(){let e=this.named("type") +return null==e?"text":ee(e)?e:"text"}get isCheckbox(){return"checkbox"===this.named("type")}get checked(){return this.isCheckbox?this._checked.get():void 0}set checked(e){this._checked.set(e)}change(e){this.isCheckbox?this.checkedDidChange(e):super.change(e)}input(e){this.isCheckbox||super.input(e)}checkedDidChange(e){let t=e.target +this.checked=t.checked}isSupportedArgument(e){return-1!==["type","value","checked","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}Z([i.action],te.prototype,"change",null),Z([i.action],te.prototype,"input",null),Z([i.action],te.prototype,"checkedDidChange",null) +const re=e.Input=$(te,L) +var ne=(0,I.createTemplateFactory)({id:"Ub0nir+H",block:'[[[11,3],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[16,"role",[30,0,["role"]]],[16,"title",[30,0,["title"]]],[16,"rel",[30,0,["rel"]]],[16,"tabindex",[30,0,["tabindex"]]],[16,"target",[30,0,["target"]]],[17,1],[16,6,[30,0,["href"]]],[4,[32,0],["click",[30,0,["click"]]],null],[12],[18,2,null],[13]],["&attrs","&default"],false,["yield"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/link-to.hbs",scope:()=>[a.on],isStrictMode:!0}),ie=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -const ie=[],oe={} -function se(e){return null==e}function ae(e){return!se(e)}function le(e){return"object"==typeof e&&null!==e&&!0===e.isQueryParams}(0,n.debugFreeze)(ie),(0,n.debugFreeze)(oe) -class ue extends B{constructor(){super(...arguments),this.currentRouteCache=(0,s.createCache)((()=>((0,s.consumeTag)((0,s.tagFor)(this.routing,"currentState")),(0,s.untrack)((()=>this.routing.currentRouteName)))))}static toString(){return"LinkTo"}validateArguments(){super.validateArguments()}get class(){let e="ember-view" +const oe=[],se={} +function ae(e){return null==e}function le(e){return!ae(e)}function ue(e){return"object"==typeof e&&null!==e&&!0===e.isQueryParams}(0,n.debugFreeze)(oe),(0,n.debugFreeze)(se) +class ce extends U{constructor(){super(...arguments),this.currentRouteCache=(0,s.createCache)((()=>((0,s.consumeTag)((0,s.tagFor)(this.routing,"currentState")),(0,s.untrack)((()=>this.routing.currentRouteName)))))}static toString(){return"LinkTo"}validateArguments(){super.validateArguments()}get class(){let e="ember-view" return this.isActive?(e+=this.classFor("active"),!1===this.willBeActive&&(e+=" ember-transitioning-out")):this.willBeActive&&(e+=" ember-transitioning-in"),this.isLoading&&(e+=this.classFor("loading")),this.isDisabled&&(e+=this.classFor("disabled")),e}get href(){if(this.isLoading)return"#" let{routing:e,route:t,models:r,query:n}=this return(0,s.consumeTag)((0,s.tagFor)(e,"currentState")),e.generateURL(t,r,n)}click(e){if(!(0,d.isSimpleClick)(e))return @@ -177,77 +182,78 @@ if(this.preventDefault(e),this.isDisabled)return if(this.isLoading)return let{routing:r,route:n,models:i,query:o,replace:s}=this,a={routeName:n,queryParams:o,transition:void 0};(0,m.flaggedInstrument)("interaction.link-to",a,(()=>{a.transition=r.transitionTo(n,i,o,s)}))}get route(){if("route"in this.args.named){let e=this.named("route") return e&&this.namespaceRoute(e)}return this.currentRoute}get currentRoute(){return(0,s.getValue)(this.currentRouteCache)}get models(){if("models"in this.args.named){let e=this.named("models") -return e}return"model"in this.args.named?[this.named("model")]:ie}get query(){if("query"in this.args.named){let e=this.named("query") -return{...e}}return oe}get replace(){return!0===this.named("replace")}get isActive(){return this.isActiveForState(this.routing.currentState)}get willBeActive(){let e=this.routing.currentState,t=this.routing.targetState -return e===t?null:this.isActiveForState(t)}get isLoading(){return se(this.route)||this.models.some((e=>se(e)))}get isDisabled(){return Boolean(this.named("disabled"))}get isEngine(){let e=this.owner +return e}return"model"in this.args.named?[this.named("model")]:oe}get query(){if("query"in this.args.named){let e=this.named("query") +return{...e}}return se}get replace(){return!0===this.named("replace")}get isActive(){return this.isActiveForState(this.routing.currentState)}get willBeActive(){let e=this.routing.currentState,t=this.routing.targetState +return e===t?null:this.isActiveForState(t)}get isLoading(){return ae(this.route)||this.models.some((e=>ae(e)))}get isDisabled(){return Boolean(this.named("disabled"))}get isEngine(){let e=this.owner return e instanceof f.default&&void 0!==(0,h.getEngineParent)(e)}get engineMountPoint(){let e=this.owner return e instanceof f.default?e.mountPoint:void 0}classFor(e){let t=this.named(`${e}Class`) -return!0===t||se(t)?` ${e}`:t?` ${t}`:""}namespaceRoute(e){let{engineMountPoint:t}=this -return void 0===t?e:"application"===e?t:`${t}.${e}`}isActiveForState(e){if(!ae(e))return!1 +return!0===t||ae(t)?` ${e}`:t?` ${t}`:""}namespaceRoute(e){let{engineMountPoint:t}=this +return void 0===t?e:"application"===e?t:`${t}.${e}`}isActiveForState(e){if(!le(e))return!1 if(this.isLoading)return!1 let t=this.named("current-when") if("boolean"==typeof t)return t if("string"==typeof t){let{models:r,routing:n}=this return t.split(" ").some((t=>n.isActiveForRoute(r,void 0,this.namespaceRoute(t),e)))}{let{route:t,models:r,query:n,routing:i}=this -return i.isActiveForRoute(r,n,t,e)}}preventDefault(e){e.preventDefault()}isSupportedArgument(e){return-1!==["route","model","models","query","replace","disabled","current-when","activeClass","loadingClass","disabledClass"].indexOf(e)||super.isSupportedArgument(e)}}ne([(0,g.service)("-routing")],ue.prototype,"routing",void 0),ne([i.action],ue.prototype,"click",null) -let{prototype:ce}=ue,pe=(e,t)=>e?Object.getOwnPropertyDescriptor(e,t)||pe(Object.getPrototypeOf(e),t):null -{let e=ce.onUnsupportedArgument -Object.defineProperty(ce,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"href"===t||e.call(this,t)}})}{let e=pe(ce,"models"),t=e.get -Object.defineProperty(ce,"models",{configurable:!0,enumerable:!1,get:function(){let e=t.call(this) -return e.length>0&&!("query"in this.args.named)&&le(e[e.length-1])&&(e=e.slice(0,-1)),e}}) -let r=pe(ce,"query"),n=r.get -Object.defineProperty(ce,"query",{configurable:!0,enumerable:!1,get:function(){if("query"in this.args.named){let e=n.call(this) -return le(e)?e.values??oe:e}{let e=t.call(this) +return i.isActiveForRoute(r,n,t,e)}}preventDefault(e){e.preventDefault()}isSupportedArgument(e){return-1!==["route","model","models","query","replace","disabled","current-when","activeClass","loadingClass","disabledClass"].indexOf(e)||super.isSupportedArgument(e)}}ie([(0,g.service)("-routing")],ce.prototype,"routing",void 0),ie([i.action],ce.prototype,"click",null) +let{prototype:pe}=ce,de=(e,t)=>e?Object.getOwnPropertyDescriptor(e,t)||de(Object.getPrototypeOf(e),t):null +{let e=pe.onUnsupportedArgument +Object.defineProperty(pe,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"href"===t||e.call(this,t)}})}{let e=de(pe,"models"),t=e.get +Object.defineProperty(pe,"models",{configurable:!0,enumerable:!1,get:function(){let e=t.call(this) +return e.length>0&&!("query"in this.args.named)&&ue(e[e.length-1])&&(e=e.slice(0,-1)),e}}) +let r=de(pe,"query"),n=r.get +Object.defineProperty(pe,"query",{configurable:!0,enumerable:!1,get:function(){if("query"in this.args.named){let e=n.call(this) +return ue(e)?e.values??se:e}{let e=t.call(this) if(e.length>0){let t=e[e.length-1] -if(le(t)&&null!==t.values)return t.values}return oe}}})}{let e=ce.onUnsupportedArgument -Object.defineProperty(ce,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"params"!==t&&e.call(this,t)}})}const de=e.LinkTo=H(ue,re) -var he=(0,D.createTemplateFactory)({id:"112WKCh2",block:'[[[11,"textarea"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/textarea.hbs",scope:()=>[a.on],isStrictMode:!0}),fe=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if(ue(t)&&null!==t.values)return t.values}return se}}})}{let e=pe.onUnsupportedArgument +Object.defineProperty(pe,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"params"!==t&&e.call(this,t)}})}const he=e.LinkTo=$(ce,ne) +var fe=(0,I.createTemplateFactory)({id:"112WKCh2",block:'[[[11,"textarea"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/textarea.hbs",scope:()=>[a.on],isStrictMode:!0}),me=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -class me extends J{static toString(){return"Textarea"}get class(){return"ember-text-area ember-view"}change(e){super.change(e)}input(e){super.input(e)}isSupportedArgument(e){return-1!==["type","value","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}fe([i.action],me.prototype,"change",null),fe([i.action],me.prototype,"input",null) -const ge=e.Textarea=H(me,he) -function be(e){return"function"==typeof e}function ye(e,t){return"attrs"===t[0]&&(t.shift(),1===t.length)?(0,o.childRefFor)(e,t[0]):(0,o.childRefFromParts)(e,t)}function ve(e){let t=e.indexOf(":") +class ge extends X{static toString(){return"Textarea"}get class(){return"ember-text-area ember-view"}change(e){super.change(e)}input(e){super.input(e)}isSupportedArgument(e){return-1!==["type","value","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}me([i.action],ge.prototype,"change",null),me([i.action],ge.prototype,"input",null) +const be=e.Textarea=$(ge,fe) +function ye(e){return"function"==typeof e}function ve(e,t){return"attrs"===t[0]&&(t.shift(),1===t.length)?(0,o.childRefFor)(e,t[0]):(0,o.childRefFromParts)(e,t)}function _e(e){let t=e.indexOf(":") if(-1===t)return[e,e,!0] {let r=e.substring(0,t),n=e.substring(t+1) -return[r,n,!1]}}function _e(e,t,r,n){let[i,s,a]=r +return[r,n,!1]}}function Oe(e,t,r,n){let[i,s,a]=r if("id"===s){let t=(0,l.get)(e,i) null==t&&(t=e.elementId) let r=(0,o.createPrimitiveRef)(t) -return void n.setAttribute("id",r,!0,null)}let u=i.indexOf(".")>-1,c=u?ye(t,i.split(".")):(0,o.childRefFor)(t,i) -n.setAttribute(s,c,!1,null)}function Oe(e,t,r){let n=t.split(":"),[i,s,a]=n +return void n.setAttribute("id",r,!0,null)}let u=i.indexOf(".")>-1,c=u?ve(t,i.split(".")):(0,o.childRefFor)(t,i) +n.setAttribute(s,c,!1,null)}function we(e,t,r){let n=t.split(":"),[i,s,a]=n if(""===i)r.setAttribute("class",(0,o.createPrimitiveRef)(s),!0,null) -else{let t,n=i.indexOf(".")>-1,l=n?i.split("."):[],u=n?ye(e,l):(0,o.childRefFor)(e,i) -t=void 0===s?we(u,n?l[l.length-1]:i):function(e,t,r){return(0,o.createComputeRef)((()=>(0,o.valueForRef)(e)?t:r))}(u,s,a),r.setAttribute("class",t,!1,null)}}function we(e,t){let r +else{let t,n=i.indexOf(".")>-1,l=n?i.split("."):[],u=n?ve(e,l):(0,o.childRefFor)(e,i) +t=void 0===s?Ee(u,n?l[l.length-1]:i):function(e,t,r){return(0,o.createComputeRef)((()=>(0,o.valueForRef)(e)?t:r))}(u,s,a),r.setAttribute("class",t,!1,null)}}function Ee(e,t){let r return(0,o.createComputeRef)((()=>{let n=(0,o.valueForRef)(e) -return!0===n?r||(r=(0,_.dasherize)(t)):n||0===n?String(n):null}))}function Ce(){}class Ee{constructor(e,t,r,n,i,a){this.component=e,this.args=t,this.argsTag=r,this.finalizer=n,this.hasWrappedElement=i,this.isInteractive=a,this.classRef=null,this.classRef=null,this.argsRevision=null===t?0:(0,s.valueForTag)(r),this.rootRef=(0,o.createConstRef)(e,"this"),(0,O.registerDestructor)(this,(()=>this.willDestroy()),!0),(0,O.registerDestructor)(this,(()=>this.component.destroy()))}willDestroy(){let{component:e,isInteractive:t}=this +return!0===n?r||(r=(0,_.dasherize)(t)):n||0===n?String(n):null}))}function Ce(){}class ke{constructor(e,t,r,n,i,a){this.component=e,this.args=t,this.argsTag=r,this.finalizer=n,this.hasWrappedElement=i,this.isInteractive=a,this.classRef=null,this.classRef=null,this.argsRevision=null===t?0:(0,s.valueForTag)(r),this.rootRef=(0,o.createConstRef)(e,"this"),(0,O.registerDestructor)(this,(()=>this.willDestroy()),!0),(0,O.registerDestructor)(this,(()=>this.component.destroy()))}willDestroy(){let{component:e,isInteractive:t}=this if(t){(0,s.beginUntrackFrame)(),e.trigger("willDestroyElement"),e.trigger("willClearRender"),(0,s.endUntrackFrame)() let t=(0,d.getViewElement)(e) t&&((0,d.clearElementView)(t),(0,d.clearViewElement)(e))}e.renderer.unregister(e)}finalize(){let{finalizer:e}=this -e(),this.finalizer=Ce}}function ke(e){return(0,p.setInternalHelperManager)(e,{})}const Te=new WeakSet -var Se=ke((e=>{let t,{named:r,positional:n}=e,[i,s,...a]=n,u=s.debugLabel,c="target"in r?r.target:i,p=function(e,t){let r,n +e(),this.finalizer=Ce}}function Te(e){return(0,p.setInternalHelperManager)(e,{})}const Re=new WeakSet +var Se=Te((e=>{(0,w.deprecateUntil)("Usage of the `(action)` helper is deprecated. Migrate to native functions and function invocation.",w.DEPRECATIONS.DEPRECATE_TEMPLATE_ACTION) +let t,{named:r,positional:n}=e,[i,s,...a]=n,u=s.debugLabel,c="target"in r?r.target:i,p=function(e,t){let r,n t.length>0&&(r=e=>t.map(o.valueForRef).concat(e)) e&&(n=t=>{let r=(0,o.valueForRef)(e) return r&&t.length>0&&(t[0]=(0,l.get)(t[0],r)),t}) -return r&&n?e=>n(r(e)):r||n||Re}("value"in r&&r.value||!1,a) -return t=(0,o.isInvokableRef)(s)?Pe(s,s,xe,p,u):function(e,t,r,n,i){const s=(0,o.valueForRef)(r) +return r&&n?e=>n(r(e)):r||n||Pe}("value"in r&&r.value||!1,a) +return t=(0,o.isInvokableRef)(s)?Ae(s,s,xe,p,u):function(e,t,r,n,i){const s=(0,o.valueForRef)(r) 0 -return(...r)=>Pe(e,(0,o.valueForRef)(t),s,n,i)(...r)}((0,o.valueForRef)(i),c,s,p,u),Te.add(t),(0,o.createUnboundRef)(t,"(result of an `action` helper)")})) -function Re(e){return e}function Pe(e,t,r,n,i){let o,s +return(...r)=>Ae(e,(0,o.valueForRef)(t),s,n,i)(...r)}((0,o.valueForRef)(i),c,s,p,u),Re.add(t),(0,o.createUnboundRef)(t,"(result of an `action` helper)")})) +function Pe(e){return e}function Ae(e,t,r,n,i){let o,s if("string"==typeof r){o=t let e=t.actions?.[r] s=e}else"function"==typeof r&&(o=e,s=r) return(...e)=>{let t={target:o,args:e,label:"@glimmer/closure-action"} -return(0,m.flaggedInstrument)("interaction.ember-action",t,(()=>(0,w.join)(o,s,...n(e))))}}function xe(e){(0,o.updateRef)(this,e)}function Ae(e){let t=Object.create(null),r=Object.create(null) +return(0,m.flaggedInstrument)("interaction.ember-action",t,(()=>(0,E.join)(o,s,...n(e))))}}function xe(e){(0,o.updateRef)(this,e)}function Me(e){let t=Object.create(null),r=Object.create(null) r[je]=e -for(let n in e){let i=e[n],s=(0,o.valueForRef)(i),a="function"==typeof s&&Te.has(s);(0,o.isUpdatableRef)(i)&&!a?t[n]=new Ne(i,s):t[n]=s,r[n]=s}return r.attrs=t,r}const Me=Symbol("REF") -class Ne{constructor(e,t){this[d.MUTABLE_CELL]=!0,this[Me]=e,this.value=t}update(e){(0,o.updateRef)(this[Me],e)}}const je=(0,c.enumerableSymbol)("ARGS"),De=(0,c.enumerableSymbol)("HAS_BLOCK"),Ie=Symbol("DIRTY_TAG"),Fe=Symbol("IS_DISPATCHING_ATTRS"),Le=Symbol("BOUNDS"),Be=(0,o.createPrimitiveRef)("ember-view");(0,n.debugFreeze)([]) -class Ue{templateFor(e){let t,{layout:r,layoutName:n}=e,i=(0,u.getOwner)(e) +for(let n in e){let i=e[n],s=(0,o.valueForRef)(i),a="function"==typeof s&&Re.has(s);(0,o.isUpdatableRef)(i)&&!a?t[n]=new De(i,s):t[n]=s,r[n]=s}return r.attrs=t,r}const Ne=Symbol("REF") +class De{constructor(e,t){this[d.MUTABLE_CELL]=!0,this[Ne]=e,this.value=t}update(e){(0,o.updateRef)(this[Ne],e)}}const je=(0,c.enumerableSymbol)("ARGS"),Ie=(0,c.enumerableSymbol)("HAS_BLOCK"),Fe=Symbol("DIRTY_TAG"),Le=Symbol("IS_DISPATCHING_ATTRS"),Be=Symbol("BOUNDS"),Ue=(0,o.createPrimitiveRef)("ember-view");(0,n.debugFreeze)([]) +class He{templateFor(e){let t,{layout:r,layoutName:n}=e,i=(0,u.getOwner)(e) if(void 0===r){if(void 0===n)return null {let e=i.lookup(`template:${n}`) -t=e}}else{if(!be(r))return null +t=e}}else{if(!ye(r))return null t=r}return(0,v.unwrapTemplate)(t(i)).asWrappedLayout()}getDynamicLayout(e){return this.templateFor(e.component)}getTagName(e){let{component:t,hasWrappedElement:r}=e -return r?t&&t.tagName||"div":null}getCapabilities(){return Ve}prepareArgs(e,t){if(t.named.has("__ARGS__")){let{__ARGS__:e,...r}=t.named.capture(),n=(0,o.valueForRef)(e) +return r?t&&t.tagName||"div":null}getCapabilities(){return ze}prepareArgs(e,t){if(t.named.has("__ARGS__")){let{__ARGS__:e,...r}=t.named.capture(),n=(0,o.valueForRef)(e) return{positional:n.positional,named:{...r,...n.named}}}const{positionalParams:r}=e.class??e if(null==r||0===t.positional.length)return null let n @@ -257,68 +263,68 @@ n={[r]:(0,o.createComputeRef)((()=>(0,y.reifyPositional)(e)))},Object.assign(n,t n={},Object.assign(n,t.named.capture()) for(let i=0;i{a.setAttribute("class",(0,o.createPrimitiveRef)(e),!1,null)})),p&&p.length&&p.forEach((e=>{Oe(n,e,a)})),a.setAttribute("class",Be,!1,null),"ariaRole"in e&&a.setAttribute("role",(0,o.childRefFor)(n,"ariaRole"),!1,null),e._transitionTo("hasElement"),r&&((0,s.beginUntrackFrame)(),e.trigger("willInsertElement"),(0,s.endUntrackFrame)())}didRenderLayout(e,t){e.component[Le]=t,e.finalize()}didCreate({component:e,isInteractive:t}){t&&(e._transitionTo("inDOM"),e.trigger("didInsertElement"),e.trigger("didRender"))}update(e){let{component:t,args:r,argsTag:n,argsRevision:i,isInteractive:o}=e -if(e.finalizer=(0,m._instrumentStart)("render.component",$e,t),(0,s.beginUntrackFrame)(),null!==r&&!(0,s.validateTag)(n,i)){(0,s.beginTrackFrame)() -let i=Ae(r) -n=e.argsTag=(0,s.endTrackFrame)(),e.argsRevision=(0,s.valueForTag)(n),t[Fe]=!0,t.setProperties(i),t[Fe]=!1,t.trigger("didUpdateAttrs"),t.trigger("didReceiveAttrs")}o&&(t.trigger("willUpdate"),t.trigger("willRender")),(0,s.endUntrackFrame)(),(0,s.consumeTag)(n),(0,s.consumeTag)(t[Ie])}didUpdateLayout(e){e.finalize()}didUpdate({component:e,isInteractive:t}){t&&(e.trigger("didUpdate"),e.trigger("didRender"))}getDestroyable(e){return e}}function He(e){return e.instrumentDetails({initialRender:!0})}function $e(e){return e.instrumentDetails({initialRender:!1})}const Ve={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!0,hasSubOwner:!1},ze=new Ue -function qe(e){return e===ze}let Ge=new WeakMap -class We extends(d.CoreView.extend(d.ChildViewsSupport,d.ViewStateSupport,d.ClassNamesSupport,b.TargetActionSupport,d.ActionSupport,d.ViewMixin,{didReceiveAttrs(){},didRender(){},didUpdate(){},didUpdateAttrs(){},willRender(){},willUpdate(){}})){constructor(){super(...arguments),this.isComponent=!0}init(e){super.init(e),this._superRerender=this.rerender,this.rerender=this._rerender,this[Fe]=!1,this[Ie]=(0,s.createTag)(),this[Le]=null +a.setAttribute("id",(0,o.createPrimitiveRef)(t),!1,null)}if(t){const e=Ee(t) +a.setAttribute("class",e,!1,null)}u&&u.length&&u.forEach((e=>{a.setAttribute("class",(0,o.createPrimitiveRef)(e),!1,null)})),p&&p.length&&p.forEach((e=>{we(n,e,a)})),a.setAttribute("class",Ue,!1,null),"ariaRole"in e&&a.setAttribute("role",(0,o.childRefFor)(n,"ariaRole"),!1,null),e._transitionTo("hasElement"),r&&((0,s.beginUntrackFrame)(),e.trigger("willInsertElement"),(0,s.endUntrackFrame)())}didRenderLayout(e,t){e.component[Be]=t,e.finalize()}didCreate({component:e,isInteractive:t}){t&&(e._transitionTo("inDOM"),e.trigger("didInsertElement"),e.trigger("didRender"))}update(e){let{component:t,args:r,argsTag:n,argsRevision:i,isInteractive:o}=e +if(e.finalizer=(0,m._instrumentStart)("render.component",Ve,t),(0,s.beginUntrackFrame)(),null!==r&&!(0,s.validateTag)(n,i)){(0,s.beginTrackFrame)() +let i=Me(r) +n=e.argsTag=(0,s.endTrackFrame)(),e.argsRevision=(0,s.valueForTag)(n),t[Le]=!0,t.setProperties(i),t[Le]=!1,t.trigger("didUpdateAttrs"),t.trigger("didReceiveAttrs")}o&&(t.trigger("willUpdate"),t.trigger("willRender")),(0,s.endUntrackFrame)(),(0,s.consumeTag)(n),(0,s.consumeTag)(t[Fe])}didUpdateLayout(e){e.finalize()}didUpdate({component:e,isInteractive:t}){t&&(e.trigger("didUpdate"),e.trigger("didRender"))}getDestroyable(e){return e}}function $e(e){return e.instrumentDetails({initialRender:!0})}function Ve(e){return e.instrumentDetails({initialRender:!1})}const ze={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!0,hasSubOwner:!1},qe=new He +function Ge(e){return e===qe}let We=new WeakMap +class Ye extends(d.CoreView.extend(d.ChildViewsSupport,d.ViewStateSupport,d.ClassNamesSupport,b.TargetActionSupport,d.ActionSupport,d.ViewMixin,{didReceiveAttrs(){},didRender(){},didUpdate(){},didUpdateAttrs(){},willRender(){},willUpdate(){}})){constructor(){super(...arguments),this.isComponent=!0}init(e){super.init(e),this._superRerender=this.rerender,this.rerender=this._rerender,this[Le]=!1,this[Fe]=(0,s.createTag)(),this[Be]=null const t=this._dispatcher -if(t){let e=Ge.get(t) -e||(e=new WeakSet,Ge.set(t,e)) +if(t){let e=We.get(t) +e||(e=new WeakSet,We.set(t,e)) let r=Object.getPrototypeOf(this) if(!e.has(r)){t.lazyEvents.forEach(((e,r)=>{null!==e&&"function"==typeof this[e]&&t.setupHandlerForBrowserEvent(r)})),e.add(r)}}}get _dispatcher(){if(void 0===this.__dispatcher){let e=(0,u.getOwner)(this) if(e.lookup("-environment:main").isInteractive){let t=e.lookup("event_dispatcher:main") -this.__dispatcher=t}else this.__dispatcher=null}return this.__dispatcher}on(e,t,r){return this._dispatcher?.setupHandlerForEmberEvent(e),super.on(e,t,r)}_rerender(){(0,s.dirtyTag)(this[Ie]),this._superRerender()}[l.PROPERTY_DID_CHANGE](e,t){if(this[Fe])return +this.__dispatcher=t}else this.__dispatcher=null}return this.__dispatcher}on(e,t,r){return this._dispatcher?.setupHandlerForEmberEvent(e),super.on(e,t,r)}_rerender(){(0,s.dirtyTag)(this[Fe]),this._superRerender()}[l.PROPERTY_DID_CHANGE](e,t){if(this[Le])return let r=this[je],n=void 0!==r?r[e]:void 0 void 0!==n&&(0,o.isUpdatableRef)(n)&&(0,o.updateRef)(n,2===arguments.length?t:(0,l.get)(this,e))}getAttr(e){return this.get(e)}readDOMAttr(e){let t=(0,d.getViewElement)(this),r=t,n="http://www.w3.org/2000/svg"===r.namespaceURI,{type:i,normalized:o}=(0,y.normalizeProperty)(r,e) -return n||"attr"===i?r.getAttribute(o):r[o]}static toString(){return"@ember/component"}}var Ye -e.Component=We,We.isComponentFactory=!0,We.reopenClass({positionalParams:[]}),(0,p.setInternalComponentManager)(ze,We) -const Qe=Symbol("RECOMPUTE_TAG"),Ke=Symbol("IS_CLASSIC_HELPER") -class Je extends C.FrameworkObject{init(e){super.init(e),this[Qe]=(0,s.createTag)()}recompute(){(0,w.join)((()=>(0,s.dirtyTag)(this[Qe])))}}e.Helper=Je,Ye=Ke,Je.isHelperFactory=!0,Je[Ye]=!0,Je.helper=rt -class Xe{constructor(e){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0,hasDestroyable:!0}) +return n||"attr"===i?r.getAttribute(o):r[o]}static toString(){return"@ember/component"}}var Qe +e.Component=Ye,Ye.isComponentFactory=!0,Ye.reopenClass({positionalParams:[]}),(0,p.setInternalComponentManager)(qe,Ye) +const Ke=Symbol("RECOMPUTE_TAG"),Je=Symbol("IS_CLASSIC_HELPER") +class Xe extends C.FrameworkObject{init(e){super.init(e),this[Ke]=(0,s.createTag)()}recompute(){(0,E.join)((()=>(0,s.dirtyTag)(this[Ke])))}}e.Helper=Xe,Qe=Je,Xe.isHelperFactory=!0,Xe[Qe]=!0,Xe.helper=nt +class Ze{constructor(e){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0,hasDestroyable:!0}) let t={};(0,u.setOwner)(t,e),this.ownerInjection=t}createHelper(e,t){let r=null!=(n=e)&&"class"in n?e.create():e.create(this.ownerInjection) var n return{instance:r,args:t}}getDestroyable({instance:e}){return e}getValue({instance:e,args:t}){let{positional:r,named:n}=t,i=e.compute(r,n) -return(0,s.consumeTag)(e[Qe]),i}getDebugName(e){return(0,c.getDebugName)((e.class||e).prototype)}}(0,p.setHelperManager)((e=>new Xe(e)),Je) -const Ze=(0,p.getInternalHelperManager)(Je) -class et{constructor(e){this.compute=e,this.isHelperFactory=!0}create(){return{compute:this.compute}}}const tt=new class{constructor(){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0})}createHelper(e,t){return()=>e.compute.call(null,t.positional,t.named)}getValue(e){return e()}getDebugName(e){return(0,c.getDebugName)(e.compute)}} -function rt(e){return new et(e)}(0,p.setHelperManager)((()=>tt),et.prototype) -class nt{constructor(e){this.__string=e}toString(){return`${this.__string}`}toHTML(){return this.toString()}}e.SafeString=nt -const it={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},ot=/[&<>"'`=]/,st=/[&<>"'`=]/g -function at(e){return it[e]}function lt(e){return null!==e&&"object"==typeof e&&"toHTML"in e&&"function"==typeof e.toHTML}function ut(e){return{object:`${e.name}:main`}}const ct={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class pt{create(e,t,r,n,i){let s=i.get("outletState"),a=t.ref +return(0,s.consumeTag)(e[Ke]),i}getDebugName(e){return(0,c.getDebugName)((e.class||e).prototype)}}(0,p.setHelperManager)((e=>new Ze(e)),Xe) +const et=(0,p.getInternalHelperManager)(Xe) +class tt{constructor(e){this.compute=e,this.isHelperFactory=!0}create(){return{compute:this.compute}}}const rt=new class{constructor(){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0})}createHelper(e,t){return()=>e.compute.call(null,t.positional,t.named)}getValue(e){return e()}getDebugName(e){return(0,c.getDebugName)(e.compute)}} +function nt(e){return new tt(e)}(0,p.setHelperManager)((()=>rt),tt.prototype) +class it{constructor(e){this.__string=e}toString(){return`${this.__string}`}toHTML(){return this.toString()}}e.SafeString=it +const ot={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},st=/[&<>"'`=]/,at=/[&<>"'`=]/g +function lt(e){return ot[e]}function ut(e){return null!==e&&"object"==typeof e&&"toHTML"in e&&"function"==typeof e.toHTML}function ct(e){return{object:`${e.name}:main`}}const pt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +const dt=new class{create(e,t,r,n,i){let s=i.get("outletState"),a=t.ref i.set("outletState",a) -let l={self:(0,o.createConstRef)(t.controller,"this"),finalize:(0,m._instrumentStart)("render.outlet",ut,t)} +let l={self:(0,o.createConstRef)(t.controller,"this"),finalize:(0,m._instrumentStart)("render.outlet",ct,t)} if(void 0!==n.debugRenderTree){l.outletBucket={} let e=(0,o.valueForRef)(s),t=e&&e.render&&e.render.owner,r=(0,o.valueForRef)(a).render.owner if(t&&t!==r){let e=r.mountPoint l.engine=r,e&&(l.engineBucket={mountPoint:e})}}return l}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r){let n=[] -return n.push({bucket:t.outletBucket,type:"outlet",name:"main",args:y.EMPTY_ARGS,instance:void 0,template:void 0}),t.engineBucket&&n.push({bucket:t.engineBucket,type:"engine",name:t.engineBucket.mountPoint,args:y.EMPTY_ARGS,instance:t.engine,template:void 0}),n.push({bucket:t,type:"route-template",name:e.name,args:r,instance:e.controller,template:(0,v.unwrapTemplate)(e.template).moduleName}),n}getCapabilities(){return ct}getSelf({self:e}){return e}didCreate(){}didUpdate(){}didRenderLayout(e){e.finalize()}didUpdateLayout(){}getDestroyable(){return null}}const dt=new pt +return n.push({bucket:t.outletBucket,type:"outlet",name:"main",args:y.EMPTY_ARGS,instance:void 0,template:void 0}),t.engineBucket&&n.push({bucket:t.engineBucket,type:"engine",name:t.engineBucket.mountPoint,args:y.EMPTY_ARGS,instance:t.engine,template:void 0}),n.push({bucket:t,type:"route-template",name:e.name,args:r,instance:e.controller,template:(0,v.unwrapTemplate)(e.template).moduleName}),n}getCapabilities(){return pt}getSelf({self:e}){return e}didCreate(){}didUpdate(){}didRenderLayout(e){e.finalize()}didUpdateLayout(){}getDestroyable(){return null}} class ht{constructor(e,t=dt){this.state=e,this.manager=t,this.handle=-1 let r=t.getCapabilities() -this.capabilities=(0,p.capabilityFlagsFrom)(r),this.compilable=r.wrapped?(0,v.unwrapTemplate)(e.template).asWrappedLayout():(0,v.unwrapTemplate)(e.template).asLayout(),this.resolvedName=e.name}}class ft extends Ue{constructor(e){super(),this.component=e}create(e,t,r,{isInteractive:n},i){let o=this.component,a=(0,m._instrumentStart)("render.component",He,o) +this.capabilities=(0,p.capabilityFlagsFrom)(r),this.compilable=r.wrapped?(0,v.unwrapTemplate)(e.template).asWrappedLayout():(0,v.unwrapTemplate)(e.template).asLayout(),this.resolvedName=e.name}}class ft extends He{constructor(e){super(),this.component=e}create(e,t,r,{isInteractive:n},i){let o=this.component,a=(0,m._instrumentStart)("render.component",$e,o) i.view=o let l=""!==o.tagName l||(n&&o.trigger("willRender"),o._transitionTo("hasElement"),n&&o.trigger("willInsertElement")) -let u=new Ee(o,null,s.CONSTANT_TAG,a,l,n) -return(0,s.consumeTag)(o[Ie]),u}}const mt={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!1,createArgs:!1,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!1,hasSubOwner:!1} +let u=new ke(o,null,s.CONSTANT_TAG,a,l,n) +return(0,s.consumeTag)(o[Fe]),u}}const mt={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!1,createArgs:!1,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!1,hasSubOwner:!1} class gt{constructor(e){this.handle=-1,this.resolvedName="-top-level",this.capabilities=(0,p.capabilityFlagsFrom)(mt),this.compilable=null,this.manager=new ft(e) -let t=(0,E.getFactoryFor)(e) -this.state=t}}class bt{constructor(e){this.inner=e}}var yt=ke((({positional:e})=>{const t=e[0] +let t=(0,k.getFactoryFor)(e) +this.state=t}}class bt{constructor(e){this.inner=e}}var yt=Te((({positional:e})=>{const t=e[0] return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(t) return(0,s.consumeTag)((0,l.tagForObject)(e)),(0,c.isProxy)(e)&&(e=(0,b._contentFor)(e)),new bt(e)}))})) class vt{constructor(e){this.length=e,this.position=0}isEmpty(){return!1}memoFor(e){return e}next(){let{length:e,position:t}=this @@ -330,28 +336,28 @@ if(0===t.length)return null {let r=[] for(let n of t){let t t=e[n],(0,s.isTracking)()&&((0,s.consumeTag)((0,s.tagFor)(e,n)),Array.isArray(t)&&(0,s.consumeTag)((0,s.tagFor)(t,"[]"))),r.push(t)}return new this(t,r)}}static fromForEachable(e){let t=[],r=[],n=0,i=!1 -return e.forEach((function(e,o){i=i||arguments.length>=2,i&&t.push(o),r.push(e),n++})),0===n?null:i?new this(t,r):new _t(r)}constructor(e,t){super(t.length),this.keys=e,this.values=t}valueFor(e){return this.values[e]}memoFor(e){return this.keys[e]}}class Ct{static from(e){let t=e[Symbol.iterator](),r=t.next(),{done:n}=r +return e.forEach((function(e,o){i=i||arguments.length>=2,i&&t.push(o),r.push(e),n++})),0===n?null:i?new this(t,r):new _t(r)}constructor(e,t){super(t.length),this.keys=e,this.values=t}valueFor(e){return this.values[e]}memoFor(e){return this.keys[e]}}class Et{static from(e){let t=e[Symbol.iterator](),r=t.next(),{done:n}=r return n?null:new this(t,r)}constructor(e,t){this.iterable=e,this.result=t,this.position=0}isEmpty(){return!1}next(){let{iterable:e,result:t,position:r}=this if(t.done)return null let n=this.valueFor(t,r),i=this.memoFor(t,r) -return this.position++,this.result=e.next(),{value:n,memo:i}}}class Et extends Ct{valueFor(e){return e.value}memoFor(e,t){return t}}class kt extends Ct{valueFor(e){return e.value[1]}memoFor(e){return e.value[0]}}function Tt(e){return null!=e&&"function"==typeof e.forEach}function St(e){return null!=e&&"function"==typeof e[Symbol.iterator]}(0,x.default)({FEATURES:{DEFAULT_HELPER_MANAGER:!0},scheduleRevalidate(){w._backburner.ensureInstance()},toBool:function(e){return(0,c.isProxy)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"content")),Boolean((0,l.get)(e,"isTruthy"))):(0,N.isArray)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),0!==e.length):(0,M.isHTMLSafe)(e)?Boolean(e.toString()):Boolean(e)},toIterator:function(e){return e instanceof bt?function(e){if(t=e,null===t||"object"!=typeof t&&"function"!=typeof t)return null +return this.position++,this.result=e.next(),{value:n,memo:i}}}class Ct extends Et{valueFor(e){return e.value}memoFor(e,t){return t}}class kt extends Et{valueFor(e){return e.value[1]}memoFor(e){return e.value[0]}}function Tt(e){return null!=e&&"function"==typeof e.forEach}function Rt(e){return null!=e&&"function"==typeof e[Symbol.iterator]}(0,x.default)({FEATURES:{DEFAULT_HELPER_MANAGER:!0},scheduleRevalidate(){E._backburner.ensureInstance()},toBool:function(e){return(0,c.isProxy)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"content")),Boolean((0,l.get)(e,"isTruthy"))):(0,D.isArray)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),0!==e.length):(0,N.isHTMLSafe)(e)?Boolean(e.toString()):Boolean(e)},toIterator:function(e){return e instanceof bt?function(e){if(t=e,null===t||"object"!=typeof t&&"function"!=typeof t)return null var t -return Array.isArray(e)||(0,A.isEmberArray)(e)?wt.fromIndexable(e):St(e)?kt.from(e):Tt(e)?wt.fromForEachable(e):wt.fromIndexable(e)}(e.inner):function(e){if(!(0,c.isObject)(e))return null -return Array.isArray(e)?_t.from(e):(0,A.isEmberArray)(e)?Ot.from(e):St(e)?Et.from(e):Tt(e)?_t.fromForEachable(e):null}(e)},getProp:l._getProp,setProp:l._setProp,getPath:l.get,setPath:l.set,scheduleDestroy(e,t){(0,w.schedule)("actions",null,t,e)},scheduleDestroyed(e){(0,w.schedule)("destroy",null,e)},warnIfStyleNotTrusted(e){},assert(e,t,r){0},deprecate(e,t,r){0}}) -class Rt{constructor(e,t){this.owner=e,this.isInteractive=t,this.enableDebugTooling=k.ENV._DEBUG_RENDER_TREE}onTransactionCommit(){}}var Pt=ke((({positional:e,named:t})=>{const r=e[0] +return Array.isArray(e)||(0,M.isEmberArray)(e)?wt.fromIndexable(e):Rt(e)?kt.from(e):Tt(e)?wt.fromForEachable(e):wt.fromIndexable(e)}(e.inner):function(e){if(!(0,c.isObject)(e))return null +return Array.isArray(e)?_t.from(e):(0,M.isEmberArray)(e)?Ot.from(e):Rt(e)?Ct.from(e):Tt(e)?_t.fromForEachable(e):null}(e)},getProp:l._getProp,setProp:l._setProp,getPath:l.get,setPath:l.set,scheduleDestroy(e,t){(0,E.schedule)("actions",null,t,e)},scheduleDestroyed(e){(0,E.schedule)("destroy",null,e)},warnIfStyleNotTrusted(e){},assert(e,t,r){0},deprecate(e,t,r){0}}) +class St{constructor(e,t){this.owner=e,this.isInteractive=t,this.enableDebugTooling=T.ENV._DEBUG_RENDER_TREE}onTransactionCommit(){}}var Pt=Te((({positional:e,named:t})=>{const r=e[0] let n=t.type,i=t.loc,s=t.original;(0,o.valueForRef)(n),(0,o.valueForRef)(i),(0,o.valueForRef)(s) return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(r) return e}))})) -let xt -xt=e=>{let t=e.positional[0] +let At +At=e=>{let t=e.positional[0] return t} -var At=ke(xt),Mt=ke((({positional:e})=>(0,o.createComputeRef)((()=>{let t=e[0],r=e[1],n=(0,o.valueForRef)(t).split("."),i=n[n.length-1],s=(0,o.valueForRef)(r) -return!0===s?(0,_.dasherize)(i):s||0===s?String(s):""})))),Nt=ke((({positional:e},t)=>{let r=e[0],n=(0,o.valueForRef)(r) -return(0,o.createConstRef)(t.factoryFor(n)?.class,`(-resolve "${n}")`)})),jt=ke((({positional:e})=>{const t=e[0] +var xt=Te(At),Mt=Te((({positional:e})=>(0,o.createComputeRef)((()=>{let t=e[0],r=e[1],n=(0,o.valueForRef)(t).split("."),i=n[n.length-1],s=(0,o.valueForRef)(r) +return!0===s?(0,_.dasherize)(i):s||0===s?String(s):""})))),Nt=Te((({positional:e},t)=>{let r=e[0],n=(0,o.valueForRef)(r) +return(0,o.createConstRef)(t.factoryFor(n)?.class,`(-resolve "${n}")`)})),Dt=Te((({positional:e})=>{const t=e[0] return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(t) -return(0,c.isObject)(e)&&(0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),e}))})),Dt=ke((({positional:e})=>{let t=e[0] -return(0,o.createInvokableRef)(t)})),It=ke((({positional:e})=>{let t=e[0] -return(0,o.createReadOnlyRef)(t)})),Ft=ke((({positional:e,named:t})=>(0,o.createUnboundRef)((0,o.valueForRef)(e[0]),"(result of an `unbound` helper)"))),Lt=ke((()=>(0,o.createConstRef)(Bt(),"unique-id"))) +return(0,c.isObject)(e)&&(0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),e}))})),jt=Te((({positional:e})=>{let t=e[0] +return(0,o.createInvokableRef)(t)})),It=Te((({positional:e})=>{let t=e[0] +return(0,o.createReadOnlyRef)(t)})),Ft=Te((({positional:e,named:t})=>(0,o.createUnboundRef)((0,o.valueForRef)(e[0]),"(result of an `unbound` helper)"))),Lt=Te((()=>(0,o.createConstRef)(Bt(),"unique-id"))) function Bt(){return([3e7]+-1e3+-4e3+-2e3+-1e11).replace(/[0-3]/g,(e=>(4*e^16*Math.random()>>(2&e)).toString(16)))}const Ut=["alt","shift","meta","ctrl"],Ht=/^click|mouse|touch/ let $t={registeredActions:d.ActionManager.registeredActions,registerAction(e){let{actionId:t}=e return d.ActionManager.registeredActions[t]=e,t},unregisterAction(e){let{actionId:t}=e @@ -364,10 +370,11 @@ return void 0!==r?(0,o.valueForRef)(r):(0,o.valueForRef)(e)}handler(e){let{actio return!function(e,t){if(null==t){if(Ht.test(e.type))return(0,d.isSimpleClick)(e) t=""}if(t.indexOf("any")>=0)return!0 for(let r=0;r{let e=this.getActionArgs(),r={args:e,target:c,name:null};(0,o.isInvokableRef)(t)?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{(0,o.updateRef)(t,e[0])})):"function"!=typeof t?(r.name=t,c.send?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c.send.apply(c,[t,...e])})):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c[t].apply(c,e)}))):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{t.apply(c,e)}))})),p)}}const zt=new class{create(e,t,r,{named:n,positional:i}){let o=[] +return!0}(e,u)||(!1!==l&&e.preventDefault(),p||e.stopPropagation(),(0,E.join)((()=>{let e=this.getActionArgs(),r={args:e,target:c,name:null};(0,o.isInvokableRef)(t)?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{(0,o.updateRef)(t,e[0])})):"function"!=typeof t?(r.name=t,c.send?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c.send.apply(c,[t,...e])})):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c[t].apply(c,e)}))):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{t.apply(c,e)}))})),p)}}const zt=new class{create(e,t,r,{named:n,positional:i}){let o=[] for(let a=2;a1&&(n=a[0],r=a[1],t=(0,o.isInvokableRef)(r)?r:(0,o.valueForRef)(r)),e.actionName=t,e.implicitTarget=n,this.ensureEventSetup(e),$t.registerAction(e),i.setAttribute("data-ember-action",""),i.setAttribute(`data-ember-action-${s}`,String(s))}update(e){let{positional:t}=e,r=t[1];(0,o.isInvokableRef)(r)||(e.actionName=(0,o.valueForRef)(r)),e.getEventName()!==e.eventName&&(this.ensureEventSetup(e),e.eventName=e.getEventName())}ensureEventSetup(e){let t=e.owner.lookup("event_dispatcher:main") t?.setupHandlerForEmberEvent(e.eventName)}getTag(e){return e.tag}getDestroyable(e){return e}} var qt=(0,p.setInternalModifierManager)(zt,{}) @@ -380,42 +387,43 @@ if(r.named.has("model")&&(u=r.named.get("model")),void 0===u)s=c.create(),a=(0,o else{let e=(0,o.valueForRef)(u) s=c.create({model:e}),a=(0,o.createConstRef)(s,"this"),l={engine:i,controller:s,self:a,modelRef:u}}return n.debugRenderTree&&(0,O.associateDestroyableChild)(i,s),l}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r,n){return[{bucket:t.engine,instance:t.engine,type:"engine",name:e.name,args:r},{bucket:t.controller,instance:t.controller,type:"route-template",name:"application",args:r,template:n}]}getSelf({self:e}){return e}getDestroyable(e){return e.engine}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}update(e){let{controller:t,modelRef:r}=e void 0!==r&&t.set("model",(0,o.valueForRef)(r))}} -class Yt{constructor(e){this.resolvedName=e,this.handle=-1,this.manager=Wt,this.compilable=null,this.capabilities=(0,p.capabilityFlagsFrom)(Gt),this.state={name:e}}}const Qt=ke(((e,t)=>{let r,n,i,s=e.positional[0] +class Yt{constructor(e){this.resolvedName=e,this.handle=-1,this.manager=Wt,this.compilable=null,this.capabilities=(0,p.capabilityFlagsFrom)(Gt),this.state={name:e}}}const Qt=Te(((e,t)=>{let r,n,i,s=e.positional[0] return r=(0,y.createCapturedArgs)(e.named,y.EMPTY_POSITIONAL),(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(s) -return"string"==typeof e?(n===e||(n=e,i=(0,y.curry)(T.CurriedType.Component,new Yt(e),t,r,!0)),i):(i=null,n=null,null)}))})),Kt=ke(((e,t,r)=>{let n=(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(r.get("outletState")) +return"string"==typeof e?(n===e||(n=e,i=(0,y.curry)(R.CurriedType.Component,new Yt(e),t,r,!0)),i):(i=null,n=null,null)}))})),Kt=Te(((e,t,r)=>{let n=(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(r.get("outletState")) return e?.outlets?.main})),i=null,s=null return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(n),r=function(e,t){if(void 0===t)return null let r=t.render if(void 0===r)return null let n=r.template if(void 0===n)return null -be(n)&&(n=n(r.owner)) +ye(n)&&(n=n(r.owner)) return{ref:e,name:r.name,template:n,controller:r.controller,model:r.model}}(n,e) if(!function(e,t){if(null===e)return null===t if(null===t)return!1 return e.template===t.template&&e.controller===t.controller}(r,i))if(i=r,null!==r){let a=(0,v.dict)(),l=(0,o.childRefFromParts)(n,["render","model"]),u=(0,o.valueForRef)(l) a.model=(0,o.createComputeRef)((()=>(i===r&&(u=(0,o.valueForRef)(l)),u))) let c=(0,y.createCapturedArgs)(a,y.EMPTY_POSITIONAL) -s=(0,y.curry)(T.CurriedType.Component,new ht(r),e?.render?.owner??t,c,!0)}else s=null +s=(0,y.curry)(R.CurriedType.Component,new ht(r),e?.render?.owner??t,c,!0)}else s=null return s}))})) -function Jt(e){return{object:`component:${e}`}}const Xt={action:Se,mut:Dt,readonly:It,unbound:Ft,"-hash":y.hash,"-each-in":yt,"-normalize-class":Mt,"-resolve":Nt,"-track-array":jt,"-mount":Qt,"-outlet":Kt,"-in-el-null":At},Zt={...Xt,array:y.array,concat:y.concat,fn:y.fn,get:y.get,hash:y.hash,"unique-id":Lt} -Zt["-disallow-dynamic-resolution"]=Pt -const er={action:qt},tr={...er,on:y.on} +function Jt(e){return{object:`component:${e}`}}function Xt(e,t,r){let n=function(e,t){let r=`component:${e}` +return t.factoryFor(r)||null}(t,e) +if((0,u.isFactory)(n)&&n.class){let e=(0,p.getComponentTemplate)(n.class) +if(void 0!==e)return{component:n,layout:e}}let i=function(e,t,r){if(w.DEPRECATIONS.DEPRECATE_COMPONENT_TEMPLATE_RESOLVING.isRemoved)return null +let n=`template:components/${e}`,i=t.lookup(n,r)||null +return i&&(0,w.deprecateUntil)(`Components with separately resolved templates are deprecated. Migrate to either co-located js/ts + hbs files or to gjs/gts. Tried to lookup '${n}'.`,w.DEPRECATIONS.DEPRECATE_COMPONENT_TEMPLATE_RESOLVING),i}(t,e,r) +return null===n&&null===i?null:{component:n,layout:i}}const Zt={action:Se,mut:jt,readonly:It,unbound:Ft,"-hash":y.hash,"-each-in":yt,"-normalize-class":Mt,"-resolve":Nt,"-track-array":Dt,"-mount":Qt,"-outlet":Kt,"-in-el-null":xt},er={...Zt,array:y.array,concat:y.concat,fn:y.fn,get:y.get,hash:y.hash,"unique-id":Lt} +er["-disallow-dynamic-resolution"]=Pt +const tr={action:qt},rr={...tr,on:y.on} new WeakSet -class rr{constructor(){this.componentDefinitionCache=new Map}lookupPartial(){return null}lookupHelper(e,t){let r=Zt[e] +class nr{constructor(){this.componentDefinitionCache=new Map}lookupPartial(){return null}lookupHelper(e,t){let r=er[e] if(void 0!==r)return r let n=t.factoryFor(`helper:${e}`) if(void 0===n)return null let i=n.class -return void 0===i?null:"function"==typeof i&&!0===i[Ke]?((0,p.setInternalHelperManager)(Ze,n),n):i}lookupBuiltInHelper(e){return Xt[e]??null}lookupModifier(e,t){let r=tr[e] +return void 0===i?null:"function"==typeof i&&!0===i[Je]?((0,p.setInternalHelperManager)(et,n),n):i}lookupBuiltInHelper(e){return Zt[e]??null}lookupModifier(e,t){let r=rr[e] if(void 0!==r)return r let n=t.factoryFor(`modifier:${e}`) -return void 0===n?null:n.class||null}lookupBuiltInModifier(e){return er[e]??null}lookupComponent(e,t){let r=function(e,t,r){let n=function(e,t){let r=`component:${e}` -return t.factoryFor(r)||null}(t,e) -if((0,u.isFactory)(n)&&n.class){let e=(0,p.getComponentTemplate)(n.class) -if(void 0!==e)return{component:n,layout:e}}let i=function(e,t,r){let n=`template:components/${e}` -return t.lookup(n,r)||null}(t,e,r) -return null===n&&null===i?null:{component:n,layout:i}}(t,e) +return void 0===n?null:n.class||null}lookupBuiltInModifier(e){return tr[e]??null}lookupComponent(e,t){let r=Xt(t,e) if(null===r)return null let n,i=null n=null===r.component?i=r.layout(t):r.component @@ -423,56 +431,54 @@ let o=this.componentDefinitionCache.get(n) if(void 0!==o)return o null===i&&null!==r.layout&&(i=r.layout(t)) let s=(0,m._instrumentStart)("render.getComponentDefinition",Jt,e),a=null -if(null===r.component)if(k.ENV._TEMPLATE_ONLY_GLIMMER_COMPONENTS)a={state:(0,y.templateOnlyComponent)(void 0,e),manager:y.TEMPLATE_ONLY_COMPONENT_MANAGER,template:i} -else{let e=t.factoryFor(E.privatize`component:-default`) -a={state:e,manager:(0,p.getInternalComponentManager)(e.class),template:i}}else{let e=r.component,t=e.class,n=(0,p.getInternalComponentManager)(t) -a={state:qe(n)?e:t,manager:n,template:i}}return s(),this.componentDefinitionCache.set(n,a),a}}const nr="-top-level" -class ir{static extend(e){return class extends ir{static create(t){return t?super.create(Object.assign({},e,t)):super.create(e)}}}static reopenClass(e){Object.assign(this,e)}static create(e){let{environment:t,application:r,template:n}=e,i=(0,u.getOwner)(e),o=n(i) -return new ir(t,i,o,r)}constructor(e,t,r,n){this._environment=e,this.owner=t,this.template=r,this.namespace=n -let i=(0,s.createTag)(),a={outlets:{main:void 0},render:{owner:t,into:void 0,outlet:"main",name:nr,controller:void 0,model:void 0,template:r}},l=this.ref=(0,o.createComputeRef)((()=>((0,s.consumeTag)(i),a)),(e=>{(0,s.dirtyTag)(i),a.outlets.main=e})) -this.state={ref:l,name:nr,template:r,controller:void 0,model:void 0}}appendTo(e){let t +if(null===r.component)a={state:(0,y.templateOnlyComponent)(void 0,e),manager:y.TEMPLATE_ONLY_COMPONENT_MANAGER,template:i} +else{let e=r.component,t=e.class,n=(0,p.getInternalComponentManager)(t) +a={state:Ge(n)?e:t,manager:n,template:i}}return s(),this.componentDefinitionCache.set(n,a),a}}const ir="-top-level" +class or{static extend(e){return class extends or{static create(t){return t?super.create(Object.assign({},e,t)):super.create(e)}}}static reopenClass(e){Object.assign(this,e)}static create(e){let{environment:t,application:r,template:n}=e,i=(0,u.getOwner)(e),o=n(i) +return new or(t,i,o,r)}constructor(e,t,r,n){this._environment=e,this.owner=t,this.template=r,this.namespace=n +let i=(0,s.createTag)(),a={outlets:{main:void 0},render:{owner:t,into:void 0,outlet:"main",name:ir,controller:void 0,model:void 0,template:r}},l=this.ref=(0,o.createComputeRef)((()=>((0,s.consumeTag)(i),a)),(e=>{(0,s.dirtyTag)(i),a.outlets.main=e})) +this.state={ref:l,name:ir,template:r,controller:void 0,model:void 0}}appendTo(e){let t t=this._environment.hasDOM&&"string"==typeof e?document.querySelector(e):e -let r=this.owner.lookup("renderer:-dom");(0,w.schedule)("render",r,"appendOutletView",this,t)}rerender(){}setOutletState(e){(0,o.updateRef)(this.ref,e)}destroy(){}}e.OutletView=ir -class or{constructor(e,t){this.view=e,this.outletState=t}child(){return new or(this.view,this.outletState)}get(e){return this.outletState}set(e,t){return this.outletState=t,t}}const sr=()=>{} -class ar{constructor(e,t,r,n,i,o,s,a,l){this.root=e,this.runtime=t,this.id=e instanceof ir?(0,c.guidFor)(e):(0,d.getViewId)(e),this.result=void 0,this.destroyed=!1,this.render=()=>{let e=(0,v.unwrapTemplate)(i).asLayout(),u=(0,y.renderMain)(t,r,n,o,l(t.env,{element:s,nextSibling:null}),e,a),c=this.result=u.sync() +let r=this.owner.lookup("renderer:-dom");(0,E.schedule)("render",r,"appendOutletView",this,t)}rerender(){}setOutletState(e){(0,o.updateRef)(this.ref,e)}destroy(){}}e.OutletView=or +class sr{constructor(e,t){this.view=e,this.outletState=t}child(){return new sr(this.view,this.outletState)}get(e){return this.outletState}set(e,t){return this.outletState=t,t}}const ar=()=>{} +class lr{constructor(e,t,r,n,i,o,s,a,l){this.root=e,this.runtime=t,this.id=e instanceof or?(0,c.guidFor)(e):(0,d.getViewId)(e),this.result=void 0,this.destroyed=!1,this.render=()=>{let e=(0,v.unwrapTemplate)(i).asLayout(),u=(0,y.renderMain)(t,r,n,o,l(t.env,{element:s,nextSibling:null}),e,a),c=this.result=u.sync() this.render=()=>c.rerender({alwaysRevalidate:!1})}}isFor(e){return this.root===e}destroy(){let{result:e,runtime:{env:t}}=this -this.destroyed=!0,this.runtime=void 0,this.root=null,this.result=void 0,this.render=void 0,void 0!==e&&(0,y.inTransaction)(t,(()=>(0,O.destroy)(e)))}}const lr=[] -function ur(e){let t=lr.indexOf(e) -lr.splice(t,1)}let cr=null -let pr=0 -w._backburner.on("begin",(function(){for(let e of lr)e._scheduleRevalidate()})),w._backburner.on("end",(function(){for(let e of lr)if(!e._isValid()){if(pr>k.ENV._RERENDER_LOOP_LIMIT)throw pr=0,e.destroy(),new Error("infinite rendering invalidation detected") -return pr++,w._backburner.join(null,sr)}pr=0,function(){if(null!==cr){let e=cr.resolve -cr=null,w._backburner.join(null,e)}}()})) -class dr{static create(e){let{_viewRegistry:t}=e,r=(0,u.getOwner)(e),n=r.lookup("service:-document"),i=r.lookup("-environment:main"),o=r.lookup(E.privatize`template:-root`),s=r.lookup("service:-dom-builder") +this.destroyed=!0,this.runtime=void 0,this.root=null,this.result=void 0,this.render=void 0,void 0!==e&&(0,y.inTransaction)(t,(()=>(0,O.destroy)(e)))}}const ur=[] +function cr(e){let t=ur.indexOf(e) +ur.splice(t,1)}let pr=null +let dr=0 +E._backburner.on("begin",(function(){for(let e of ur)e._scheduleRevalidate()})),E._backburner.on("end",(function(){for(let e of ur)if(!e._isValid()){if(dr>T.ENV._RERENDER_LOOP_LIMIT)throw dr=0,e.destroy(),new Error("infinite rendering invalidation detected") +return dr++,E._backburner.join(null,ar)}dr=0,function(){if(null!==pr){let e=pr.resolve +pr=null,E._backburner.join(null,e)}}()})) +class hr{static create(e){let{_viewRegistry:t}=e,r=(0,u.getOwner)(e),n=r.lookup("service:-document"),i=r.lookup("-environment:main"),o=r.lookup(k.privatize`template:-root`),s=r.lookup("service:-dom-builder") return new this(r,n,i,o,t,s)}constructor(e,r,n,i,o,s=y.clientBuilder){this._inRenderTransaction=!1,this._lastRevision=-1,this._destroyed=!1,this._owner=e,this._rootTemplate=i(e),this._viewRegistry=o||e.lookup("-view-registry:main"),this._roots=[],this._removedRoots=[],this._builder=s,this._isInteractive=n.isInteractive -let a=this._runtimeResolver=new rr,l=(0,S.artifacts)() +let a=this._runtimeResolver=new nr,l=(0,S.artifacts)() this._context=(0,t.programCompilationContext)(l,a,(e=>new S.RuntimeOpImpl(e))) -let u=new Rt(e,n.isInteractive) -this._runtime=(0,y.runtimeContext)({appendOperations:n.hasDOM?new y.DOMTreeConstruction(r):new P.NodeDOMTreeConstruction(r),updateOperations:new y.DOMChanges(r)},u,l,a)}get debugRenderTree(){let{debugRenderTree:e}=this._runtime.env -return e}appendOutletView(e,t){let r=function(e){if(k.ENV._APPLICATION_TEMPLATE_WRAPPER){const t=Object.assign({},ct,{dynamicTag:!0,elementHook:!0,wrapped:!0}),r=new class extends pt{getTagName(){return"div"}getCapabilities(){return t}didCreateElement(e,t){t.setAttribute("class","ember-view"),t.setAttribute("id",(0,c.guidFor)(e))}} -return new ht(e.state,r)}return new ht(e.state)}(e) -this._appendDefinition(e,(0,y.curry)(T.CurriedType.Component,r,e.owner,null,!0),t)}appendTo(e,t){let r=new gt(e) -this._appendDefinition(e,(0,y.curry)(T.CurriedType.Component,r,this._owner,null,!0),t)}_appendDefinition(e,t,r){let n=(0,o.createConstRef)(t,"this"),i=new or(null,o.UNDEFINED_REFERENCE),s=new ar(e,this._runtime,this._context,this._owner,this._rootTemplate,n,r,i,this._builder) +let u=new St(e,n.isInteractive) +this._runtime=(0,y.runtimeContext)({appendOperations:n.hasDOM?new y.DOMTreeConstruction(r):new A.NodeDOMTreeConstruction(r),updateOperations:new y.DOMChanges(r)},u,l,a)}get debugRenderTree(){let{debugRenderTree:e}=this._runtime.env +return e}appendOutletView(e,t){let r=new ht(e.state) +this._appendDefinition(e,(0,y.curry)(R.CurriedType.Component,r,e.owner,null,!0),t)}appendTo(e,t){let r=new gt(e) +this._appendDefinition(e,(0,y.curry)(R.CurriedType.Component,r,this._owner,null,!0),t)}_appendDefinition(e,t,r){let n=(0,o.createConstRef)(t,"this"),i=new sr(null,o.UNDEFINED_REFERENCE),s=new lr(e,this._runtime,this._context,this._owner,this._rootTemplate,n,r,i,this._builder) this._renderRoot(s)}rerender(){this._scheduleRevalidate()}register(e){let t=(0,d.getViewId)(e) this._viewRegistry[t]=e}unregister(e){delete this._viewRegistry[(0,d.getViewId)(e)]}remove(e){e._transitionTo("destroying"),this.cleanupRootFor(e),this._isInteractive&&e.trigger("didDestroyElement")}cleanupRootFor(e){if(this._destroyed)return let t=this._roots,r=this._roots.length for(;r--;){let n=t[r] n.isFor(e)&&(n.destroy(),t.splice(r,1))}}destroy(){this._destroyed||(this._destroyed=!0,this._clearAllRoots())}getElement(e){if(this._isInteractive)return(0,d.getViewElement)(e) -throw new Error("Accessing `this.element` is not allowed in non-interactive environments (such as FastBoot).")}getBounds(e){let t=e[Le] +throw new Error("Accessing `this.element` is not allowed in non-interactive environments (such as FastBoot).")}getBounds(e){let t=e[Be] return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}createElement(e){return this._runtime.env.getAppendOperations().createElement(e)}_renderRoot(e){let{_roots:t}=this var r -t.push(e),1===t.length&&(r=this,lr.push(r)),this._renderRootsTransaction()}_renderRoots(){let e,{_roots:t,_runtime:r,_removedRoots:n}=this +t.push(e),1===t.length&&(r=this,ur.push(r)),this._renderRootsTransaction()}_renderRoots(){let e,{_roots:t,_runtime:r,_removedRoots:n}=this do{e=t.length,(0,y.inTransaction)(r.env,(()=>{for(let r=0;r=e||i.render()}this._lastRevision=(0,s.valueForTag)(s.CURRENT_TAG)}))}while(t.length>e) for(;n.length;){let e=n.pop(),r=t.indexOf(e) -t.splice(r,1)}0===this._roots.length&&ur(this)}_renderRootsTransaction(){if(this._inRenderTransaction)return +t.splice(r,1)}0===this._roots.length&&cr(this)}_renderRootsTransaction(){if(this._inRenderTransaction)return this._inRenderTransaction=!0 let e=!1 try{this._renderRoots(),e=!0}finally{e||(this._lastRevision=(0,s.valueForTag)(s.CURRENT_TAG)),this._inRenderTransaction=!1}}_clearAllRoots(){let e=this._roots for(let t of e)t.destroy() -this._removedRoots.length=0,this._roots=[],e.length&&ur(this)}_scheduleRevalidate(){w._backburner.scheduleOnce("render",this,this._revalidate)}_isValid(){return this._destroyed||0===this._roots.length||(0,s.validateTag)(s.CURRENT_TAG,this._lastRevision)}_revalidate(){this._isValid()||this._renderRootsTransaction()}}e.Renderer=dr -let hr={} -var fr=(0,D.createTemplateFactory)({id:"2c6+lAmT",block:'[[[46,[28,[32,0],null,null],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/outlet.hbs",scope:()=>[Kt],isStrictMode:!0}) +this._removedRoots.length=0,this._roots=[],e.length&&cr(this)}_scheduleRevalidate(){E._backburner.scheduleOnce("render",this,this._revalidate)}_isValid(){return this._destroyed||0===this._roots.length||(0,s.validateTag)(s.CURRENT_TAG,this._lastRevision)}_revalidate(){this._isValid()||this._renderRootsTransaction()}}e.Renderer=hr +let fr={} +var mr=(0,I.createTemplateFactory)({id:"2c6+lAmT",block:'[[[46,[28,[32,0],null,null],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/outlet.hbs",scope:()=>[Kt],isStrictMode:!0}) e.componentCapabilities=p.componentCapabilities,e.modifierCapabilities=p.modifierCapabilities})),e("@ember/-internals/meta/index",["exports","@ember/-internals/meta/lib/meta"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Meta",{enumerable:!0,get:function(){return t.Meta}}),Object.defineProperty(e,"UNDEFINED",{enumerable:!0,get:function(){return t.UNDEFINED}}),Object.defineProperty(e,"counters",{enumerable:!0,get:function(){return t.counters}}),Object.defineProperty(e,"meta",{enumerable:!0,get:function(){return t.meta}}),Object.defineProperty(e,"peekMeta",{enumerable:!0,get:function(){return t.peekMeta}}),Object.defineProperty(e,"setMeta",{enumerable:!0,get:function(){return t.setMeta}})})),e("@ember/-internals/meta/lib/meta",["exports","@ember/-internals/utils","@ember/debug","@glimmer/destroyable"],(function(e,t,r,n){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.meta=e.counters=e.UNDEFINED=e.Meta=void 0,e.peekMeta=d,e.setMeta=p @@ -523,7 +529,7 @@ let r=new l(e) return p(e,r),r} function f(e,t,r,n){for(let i=e.length-1;i>=0;i--){let o=e[i] if(o.event===t&&o.target===r&&o.method===n)return i}return-1}})),e("@ember/-internals/metal/index",["exports","@ember/-internals/meta","@ember/-internals/utils","@ember/debug","@glimmer/destroyable","@glimmer/validator","@ember/-internals/environment","@ember/runloop","@glimmer/manager","@ember/array/-internals","ember/version","@ember/-internals/owner"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.TrackedDescriptor=e.SYNC_OBSERVERS=e.PROXY_CONTENT=e.PROPERTY_DID_CHANGE=e.NAMESPACES_BY_ID=e.NAMESPACES=e.Libraries=e.DEBUG_INJECTION_FUNCTIONS=e.ComputedProperty=e.ComputedDescriptor=e.ASYNC_OBSERVERS=void 0,e._getPath=Ee,e._getProp=Ce,e._setProp=Se,e.activateObserver=w,e.addArrayObserver=function(e,t,r){return q(e,t,r,d)},e.addListener=d,e.addNamespace=function(e){Be.unprocessedNamespaces=!0,He.push(e)},e.addObserver=_,e.alias=function(e){return re(new Pe(e),Re)},e.arrayContentDidChange=U,e.arrayContentWillChange=B,e.autoComputed=function(...e){return re(new he(e),fe)},e.beginPropertyChanges=I,e.cached=void 0,e.changeProperties=L,e.computed=me,Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return o.createCache}}),e.defineDecorator=be,e.defineProperty=ge,e.defineValue=ye,e.deprecateProperty=function(e,t,r,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,set(e){Te(this,r,e)},get(){return we(this,r)}})},e.descriptorForDecorator=oe,e.descriptorForProperty=ie,e.eachProxyArrayDidChange=function(e,t,r,n){let i=Me.get(e) +Object.defineProperty(e,"__esModule",{value:!0}),e.TrackedDescriptor=e.SYNC_OBSERVERS=e.PROXY_CONTENT=e.PROPERTY_DID_CHANGE=e.NAMESPACES_BY_ID=e.NAMESPACES=e.Libraries=e.DEBUG_INJECTION_FUNCTIONS=e.ComputedProperty=e.ComputedDescriptor=e.ASYNC_OBSERVERS=void 0,e._getPath=Ce,e._getProp=Ee,e._setProp=Re,e.activateObserver=w,e.addArrayObserver=function(e,t,r){return q(e,t,r,d)},e.addListener=d,e.addNamespace=function(e){Be.unprocessedNamespaces=!0,He.push(e)},e.addObserver=_,e.alias=function(e){return re(new Pe(e),Se)},e.arrayContentDidChange=U,e.arrayContentWillChange=B,e.autoComputed=function(...e){return re(new he(e),fe)},e.beginPropertyChanges=I,e.cached=void 0,e.changeProperties=L,e.computed=me,Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return o.createCache}}),e.defineDecorator=be,e.defineProperty=ge,e.defineValue=ye,e.deprecateProperty=function(e,t,r,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,set(e){Te(this,r,e)},get(){return we(this,r)}})},e.descriptorForDecorator=oe,e.descriptorForProperty=ie,e.eachProxyArrayDidChange=function(e,t,r,n){let i=Me.get(e) void 0!==i&&i.arrayDidChange(e,t,r,n)},e.eachProxyArrayWillChange=function(e,t,r,n){let i=Me.get(e) void 0!==i&&i.arrayWillChange(e,t,r,n)},e.endPropertyChanges=F,e.expandProperties=ue,e.findNamespace=function(e){Le||qe() return $e[e]} @@ -535,8 +541,8 @@ if(!s)continue a&&h(e,r,o,s),o||(o=e) let l=typeof s "string"!==l&&"symbol"!==l||(s=o[s]),s.apply(o,n)}return!0}e.findNamespaces=Ve,e.flushAsyncObservers=function(e=!0){let r=(0,o.valueForTag)(o.CURRENT_TAG) -if(S===r)return -S=r,v.forEach(((r,n)=>{let i=(0,t.peekMeta)(n) +if(R===r)return +R=r,v.forEach(((r,n)=>{let i=(0,t.peekMeta)(n) r.forEach(((r,s)=>{if(!(0,o.validateTag)(r.tag,r.lastRevision)){let l=()=>{try{f(n,s,[n,r.path],void 0,i)}finally{r.tag=Q(n,r.path,(0,o.tagMetaFor)(n),(0,t.peekMeta)(n)),r.lastRevision=(0,o.valueForTag)(r.tag)}} e?(0,a.schedule)("actions",l):l()}}))}))},e.get=we,e.getCachedValueFor=function(e,r){let n=(0,t.peekMeta)(e) return n?n.valueFor(r):void 0},e.getProperties=function(e,t){let r,n={},i=1 @@ -552,7 +558,7 @@ return r.lookup(`${e}:${n||t}`)} 0 let o=me({get:i,set(e,t){ge(this,e,null,t)}}) return r?o(r[0],r[1],r[2]):o},e.isClassicDecorator=se,e.isComputed=function(e,t){return Boolean(ie(e,t))},Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return o.isConst}}),e.isElementDescriptor=J,e.isNamespaceSearchDisabled=function(){return Le},e.libraries=void 0,e.makeComputedDecorator=re,e.markObjectAsDirty=M,e.nativeDescDecorator=function(e){let t=function(){return e} -return ae(t),t},e.notifyPropertyChange=D,e.objectAt=$,e.on=function(...e){let t=e.pop(),n=e +return ae(t),t},e.notifyPropertyChange=j,e.objectAt=$,e.on=function(...e){let t=e.pop(),n=e return(0,r.setListeners)(t,n),t},e.processAllNamespaces=qe,e.processNamespace=ze,e.removeArrayObserver=function(e,t,r){return q(e,t,r,h)},e.removeListener=h,e.removeNamespace=function(e){let t=(0,r.getName)(e) delete $e[t],He.splice(He.indexOf(e),1),t in s.context.lookup&&e===s.context.lookup[t]&&(s.context.lookup[t]=void 0)},e.removeObserver=function(e,r,n,i,o=b){let s=g(r),a=(0,t.peekMeta)(e) null!==a&&(a.isPrototypeMeta(e)||a.isInitializing())||k(e,s,o) @@ -560,8 +566,8 @@ h(e,s,n,i)},e.replace=function(e,t,r,n=H){i=e,null!=i&&"function"==typeof i.repl var i},e.replaceInNativeArray=z,e.revalidateObservers=T e.sendEvent=f,e.set=Te,e.setClassicDecorator=ae,e.setNamespaceSearchDisabled=function(e){Le=Boolean(e)},e.setProperties=function(e,t){if(null===t||"object"!=typeof t)return t return L((()=>{let r=Object.keys(t) -for(let n of r)Te(e,n,t[n])})),t},e.setUnprocessedMixins=function(){Ue=!0},e.tagForObject=function(e){if((0,r.isObject)(e))return(0,o.tagFor)(e,x) -return o.CONSTANT_TAG},e.tagForProperty=A,e.tracked=je,e.trySet=function(e,t,r){return Te(e,t,r,!0)} +for(let n of r)Te(e,n,t[n])})),t},e.setUnprocessedMixins=function(){Ue=!0},e.tagForObject=function(e){if((0,r.isObject)(e))return(0,o.tagFor)(e,A) +return o.CONSTANT_TAG},e.tagForProperty=x,e.tracked=De,e.trySet=function(e,t,r){return Te(e,t,r,!0)} const m=":change" function g(e){return e+m}const b=!s.ENV._DEFAULT_ASYNC_OBSERVERS,y=e.SYNC_OBSERVERS=new Map,v=e.ASYNC_OBSERVERS=new Map function _(e,r,n,i,o=b){let s=g(r) @@ -572,29 +578,29 @@ return r.has(e)||(r.set(e,new Map),(0,i.registerDestructor)(e,(()=>function(e){y v.size>0&&v.delete(e)}(e)),!0)),r.get(e)}function w(e,r,n=!1){let i=O(e,n) if(i.has(r))i.get(r).count++ else{let n=r.substring(0,r.lastIndexOf(":")),s=Q(e,n,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)) -i.set(r,{count:1,path:n,tag:s,lastRevision:(0,o.valueForTag)(s),suspended:!1})}}let C=!1,E=[] -function k(e,t,r=!1){if(!0===C)return void E.push([e,t,r]) +i.set(r,{count:1,path:n,tag:s,lastRevision:(0,o.valueForTag)(s),suspended:!1})}}let E=!1,C=[] +function k(e,t,r=!1){if(!0===E)return void C.push([e,t,r]) let n=!0===r?y:v,i=n.get(e) if(void 0!==i){let r=i.get(t) -r.count--,0===r.count&&(i.delete(t),0===i.size&&n.delete(e))}}function T(e){v.has(e)&&v.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)})),y.has(e)&&y.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)}))}let S=0 -function R(){y.forEach(((e,r)=>{let n=(0,t.peekMeta)(r) +r.count--,0===r.count&&(i.delete(t),0===i.size&&n.delete(e))}}function T(e){v.has(e)&&v.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)})),y.has(e)&&y.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)}))}let R=0 +function S(){y.forEach(((e,r)=>{let n=(0,t.peekMeta)(r) e.forEach(((e,i)=>{if(!e.suspended&&!(0,o.validateTag)(e.tag,e.lastRevision))try{e.suspended=!0,f(r,i,[r,e.path],void 0,n)}finally{e.tag=Q(r,e.path,(0,o.tagMetaFor)(r),(0,t.peekMeta)(r)),e.lastRevision=(0,o.valueForTag)(e.tag),e.suspended=!1}}))}))}function P(e,t,r){let n=y.get(e) if(!n)return let i=n.get(g(t)) -i&&(i.suspended=r)}const x=(0,r.symbol)("SELF_TAG") -function A(e,t,r=!1,n){let i=(0,l.getCustomTagFor)(e) +i&&(i.suspended=r)}const A=(0,r.symbol)("SELF_TAG") +function x(e,t,r=!1,n){let i=(0,l.getCustomTagFor)(e) if(void 0!==i)return i(e,t,r) let s=(0,o.tagFor)(e,t,n) -return s}function M(e,t){(0,o.dirtyTagFor)(e,t),(0,o.dirtyTagFor)(e,x)}const N=e.PROPERTY_DID_CHANGE=Symbol("PROPERTY_DID_CHANGE") -let j=0 -function D(e,r,n,i){let o=void 0===n?(0,t.peekMeta)(e):n -null!==o&&(o.isInitializing()||o.isPrototypeMeta(e))||(M(e,r),j<=0&&R(),N in e&&(4===arguments.length?e[N](r,i):e[N](r)))}function I(){j++,C=!0}function F(){j--,j<=0&&(R(),function(){C=!1 -for(let[e,t,r]of E)k(e,t,r) -E=[]}())}function L(e){I() +return s}function M(e,t){(0,o.dirtyTagFor)(e,t),(0,o.dirtyTagFor)(e,A)}const N=e.PROPERTY_DID_CHANGE=Symbol("PROPERTY_DID_CHANGE") +let D=0 +function j(e,r,n,i){let o=void 0===n?(0,t.peekMeta)(e):n +null!==o&&(o.isInitializing()||o.isPrototypeMeta(e))||(M(e,r),D<=0&&S(),N in e&&(4===arguments.length?e[N](r,i):e[N](r)))}function I(){D++,E=!0}function F(){D--,D<=0&&(S(),function(){E=!1 +for(let[e,t,r]of C)k(e,t,r) +C=[]}())}function L(e){I() try{e()}finally{F()}}function B(e,t,r,n){return void 0===t?(t=0,r=n=-1):(void 0===r&&(r=-1),void 0===n&&(n=-1)),f(e,"@array:before",[e,t,r,n]),e}function U(e,r,n,i,o=!0){void 0===r?(r=0,n=i=-1):(void 0===n&&(n=-1),void 0===i&&(i=-1)) let s=(0,t.peekMeta)(e) -if(o&&((i<0||n<0||i-n!=0)&&D(e,"length",s),D(e,"[]",s)),f(e,"@array:change",[e,r,n,i]),null!==s){let t=-1===n?0:n,o=e.length-((-1===i?0:i)-t),a=r<0?o+r:r -if(void 0!==s.revisionFor("firstObject")&&0===a&&D(e,"firstObject",s),void 0!==s.revisionFor("lastObject")){o-1{n=t.call(e,r)}));(0,o.updateTag)(a,s),i.setValueFor(r,n),i.setRevisionFor(r,(0,o.valueForTag)(a)),W(i,r,n)}return(0,o.consumeTag)(a),Array.isArray(n)&&(0,o.consumeTag)((0,o.tagFor)(n,"[]",s)),n}}class fe extends Function{readOnly(){let e=oe(this) @@ -661,34 +667,34 @@ return 0===arguments.length?t._meta||{}:(t._meta=e,this)}get _getter(){return oe l&&a.teardown(e,r,s),se(n)?be(e,r,n,s):null==n?ye(e,r,i,l,!0):Object.defineProperty(e,r,n),s.isPrototypeMeta(e)||T(e)}function be(e,t,r,n){let i return i=r(e,t,void 0,n),Object.defineProperty(e,t,i),r}function ye(e,t,r,n,i=!0){return!0===n||!1===i?Object.defineProperty(e,t,{configurable:!0,enumerable:i,writable:!0,value:r}):e[t]=r,r}const ve=new r.Cache(1e3,(e=>e.indexOf("."))) function _e(e){return"string"==typeof e&&-1!==ve.get(e)}e.PROXY_CONTENT=(0,r.symbol)("PROXY_CONTENT") -function Oe(e){return"object"==typeof e&&null!==e&&"function"==typeof e.unknownProperty}function we(e,t){return _e(t)?Ee(e,t):Ce(e,t)}function Ce(e,t){if(null==e)return +function Oe(e){return"object"==typeof e&&null!==e&&"function"==typeof e.unknownProperty}function we(e,t){return _e(t)?Ce(e,t):Ee(e,t)}function Ee(e,t){if(null==e)return let r -return"object"==typeof e||"function"==typeof e?(r=e[t],void 0===r&&"object"==typeof e&&!(t in e)&&Oe(e)&&(r=e.unknownProperty(t)),(0,o.isTracking)()&&((0,o.consumeTag)((0,o.tagFor)(e,t)),(Array.isArray(r)||(0,u.isEmberArray)(r))&&(0,o.consumeTag)((0,o.tagFor)(r,"[]")))):r=e[t],r}function Ee(e,t,r){let n="string"==typeof t?t.split("."):t +return"object"==typeof e||"function"==typeof e?(r=e[t],void 0===r&&"object"==typeof e&&!(t in e)&&Oe(e)&&(r=e.unknownProperty(t)),(0,o.isTracking)()&&((0,o.consumeTag)((0,o.tagFor)(e,t)),(Array.isArray(r)||(0,u.isEmberArray)(r))&&(0,o.consumeTag)((0,o.tagFor)(r,"[]")))):r=e[t],r}function Ce(e,t,r){let n="string"==typeof t?t.split("."):t for(let i of n){if(null==e||e.isDestroyed)return if(r&&("__proto__"===i||"constructor"===i))return -e=Ce(e,i)}return e}Ce("foo","a"),Ce("foo",1),Ce({},"a"),Ce({},1),Ce({unknownProperty(){}},"a"),Ce({unknownProperty(){}},1),we({},"foo"),we({},"foo.bar") +e=Ee(e,i)}return e}Ee("foo","a"),Ee("foo",1),Ee({},"a"),Ee({},1),Ee({unknownProperty(){}},"a"),Ee({unknownProperty(){}},1),we({},"foo"),we({},"foo.bar") let ke={} function Te(e,t,r,n){return e.isDestroyed?r:_e(t)?function(e,t,r,n){let i=t.split("."),o=i.pop() -let s=Ee(e,i,!0) +let s=Ce(e,i,!0) if(null!=s)return Te(s,o,r) -if(!n)throw new Error(`Property set failed: object in path "${i.join(".")}" could not be found.`)}(e,t,r,n):Se(e,t,r)}function Se(e,t,n){let i,o=(0,r.lookupDescriptor)(e,t) -return null!==o&&te.has(o.set)?(e[t]=n,n):(i=e[t],void 0!==i||"object"!=typeof e||t in e||"function"!=typeof e.setUnknownProperty?(e[t]=n,i!==n&&D(e,t)):e.setUnknownProperty(t,n),n)}(0,r.setProxy)(ke),(0,o.track)((()=>Ce({},"a"))),(0,o.track)((()=>Ce({},1))),(0,o.track)((()=>Ce({a:[]},"a"))),(0,o.track)((()=>Ce({a:ke},"a"))) -class Re extends Function{readOnly(){return oe(this).readOnly(),this}oneWay(){return oe(this).oneWay(),this}meta(e){let t=oe(this) +if(!n)throw new Error(`Property set failed: object in path "${i.join(".")}" could not be found.`)}(e,t,r,n):Re(e,t,r)}function Re(e,t,n){let i,o=(0,r.lookupDescriptor)(e,t) +return null!==o&&te.has(o.set)?(e[t]=n,n):(i=e[t],void 0!==i||"object"!=typeof e||t in e||"function"!=typeof e.setUnknownProperty?(e[t]=n,i!==n&&j(e,t)):e.setUnknownProperty(t,n),n)}(0,r.setProxy)(ke),(0,o.track)((()=>Ee({},"a"))),(0,o.track)((()=>Ee({},1))),(0,o.track)((()=>Ee({a:[]},"a"))),(0,o.track)((()=>Ee({a:ke},"a"))) +class Se extends Function{readOnly(){return oe(this).readOnly(),this}oneWay(){return oe(this).oneWay(),this}meta(e){let t=oe(this) if(0===arguments.length)return t._meta||{} t._meta=e}}class Pe extends X{constructor(e){super(),this.altKey=e}setup(e,t,r,n){super.setup(e,t,r,n),G.add(this)}get(e,r){let n,i=(0,t.meta)(e),s=(0,o.tagMetaFor)(e),a=(0,o.tagFor)(e,r,s);(0,o.untrack)((()=>{n=we(e,this.altKey)})) let l=i.revisionFor(r) -return void 0!==l&&(0,o.validateTag)(a,l)||((0,o.updateTag)(a,Q(e,this.altKey,s,i)),i.setRevisionFor(r,(0,o.valueForTag)(a)),W(i,r,n)),(0,o.consumeTag)(a),n}set(e,t,r){return Te(e,this.altKey,r)}readOnly(){this.set=xe}oneWay(){this.set=Ae}}function xe(e,t){throw new Error(`Cannot set read-only property '${t}' on object: ${(0,n.inspect)(e)}`)}function Ae(e,t,r){return ge(e,t,null),Te(e,t,r)}const Me=new WeakMap +return void 0!==l&&(0,o.validateTag)(a,l)||((0,o.updateTag)(a,Q(e,this.altKey,s,i)),i.setRevisionFor(r,(0,o.valueForTag)(a)),W(i,r,n)),(0,o.consumeTag)(a),n}set(e,t,r){return Te(e,this.altKey,r)}readOnly(){this.set=Ae}oneWay(){this.set=xe}}function Ae(e,t){throw new Error(`Cannot set read-only property '${t}' on object: ${(0,n.inspect)(e)}`)}function xe(e,t,r){return ge(e,t,null),Te(e,t,r)}const Me=new WeakMap class Ne{constructor(){this._registry=[],this._coreLibIndex=0}_getLibraryByName(e){let t=this._registry for(let r of t)if(r.name===e)return r}register(e,t,r){let n=this._registry.length this._getLibraryByName(e)||(r&&(n=this._coreLibIndex++),this._registry.splice(n,0,{name:e,version:t}))}registerCoreLibrary(e,t){this.register(e,t,!0)}deRegister(e){let t,r=this._getLibraryByName(e) r&&(t=this._registry.indexOf(r),this._registry.splice(t,1))}}e.Libraries=Ne;(e.libraries=new Ne).registerCoreLibrary("Ember",c.default) e.DEBUG_INJECTION_FUNCTIONS=void 0 -function je(...e){if(!J(e)){let t=e[0] +function De(...e){if(!J(e)){let t=e[0] 0 -let r=t?t.initializer:void 0,n=t?t.value:void 0,i=function(e,t,i,o,s){return De([e,t,{initializer:r||(()=>n)}])} -return ae(i),i}return De(e)}function De([e,r,n]){let{getter:i,setter:s}=(0,o.trackedData)(r,n?n.initializer:void 0) +let r=t?t.initializer:void 0,n=t?t.value:void 0,i=function(e,t,i,o,s){return je([e,t,{initializer:r||(()=>n)}])} +return ae(i),i}return je(e)}function je([e,r,n]){let{getter:i,setter:s}=(0,o.trackedData)(r,n?n.initializer:void 0) function a(){let e=i(this) -return(Array.isArray(e)||(0,u.isEmberArray)(e))&&(0,o.consumeTag)((0,o.tagFor)(e,"[]")),e}function l(e){s(this,e),(0,o.dirtyTagFor)(this,x)}let c={enumerable:!0,configurable:!0,isTracked:!0,get:a,set:l} +return(Array.isArray(e)||(0,u.isEmberArray)(e))&&(0,o.consumeTag)((0,o.tagFor)(e,"[]")),e}function l(e){s(this,e),(0,o.dirtyTagFor)(this,A)}let c={enumerable:!0,configurable:!0,isTracked:!0,get:a,set:l} return te.add(l),(0,t.meta)(e).writeDescriptors(r,new Ie(a,l)),c}class Ie{constructor(e,t){this._get=e,this._set=t,G.add(this)}get(e){return this._get.call(e)}set(e,t,r){this._set.call(e,r)}}e.TrackedDescriptor=Ie e.cached=(...e)=>{const[t,r,n]=e const i=new WeakMap,s=n.get @@ -782,11 +788,11 @@ return t._dict=null,delete t._dict,t},e.enumerableSymbol=function(e){let t=u+Mat 0 return n},e.generateGuid=function(e,t=s){let r=t+o().toString() n(e)&&a.set(e,r) -return r},e.getDebugName=void 0,e.getName=function(e){return E.get(e)},e.guidFor=function(e){let t +return r},e.getDebugName=void 0,e.getName=function(e){return C.get(e)},e.guidFor=function(e){let t if(n(e))t=a.get(e),void 0===t&&(t=`${s}${o()}`,a.set(e,t)) else if(t=l.get(e),void 0===t){let r=typeof e -t="string"===r?`st${o()}`:"number"===r?`nu${o()}`:"symbol"===r?`sy${o()}`:`(${e})`,l.set(e,t)}return t},e.intern=r,e.isInternalSymbol=function(e){return-1!==c.indexOf(e)},e.isObject=n,e.isProxy=function(e){if(n(e))return S.has(e) -return!1},e.lookupDescriptor=C,e.observerListenerMetaFor=function(e){return v.get(e)},e.setListeners=function(e,t){_(e).listeners=t},e.setName=function(e,t){n(e)&&E.set(e,t)},e.setObservers=function(e,t){_(e).observers=t},e.setProxy=function(e){n(e)&&S.add(e)},e.teardownMandatorySetter=e.symbol=e.setupMandatorySetter=e.setWithMandatorySetter=void 0,e.toString=function e(t){if("string"==typeof t)return t +t="string"===r?`st${o()}`:"number"===r?`nu${o()}`:"symbol"===r?`sy${o()}`:`(${e})`,l.set(e,t)}return t},e.intern=r,e.isInternalSymbol=function(e){return-1!==c.indexOf(e)},e.isObject=n,e.isProxy=function(e){if(n(e))return R.has(e) +return!1},e.lookupDescriptor=E,e.observerListenerMetaFor=function(e){return v.get(e)},e.setListeners=function(e,t){_(e).listeners=t},e.setName=function(e,t){n(e)&&C.set(e,t)},e.setObservers=function(e,t){_(e).observers=t},e.setProxy=function(e){n(e)&&R.add(e)},e.teardownMandatorySetter=e.symbol=e.setupMandatorySetter=e.setWithMandatorySetter=void 0,e.toString=function e(t){if("string"==typeof t)return t if(null===t)return"null" if(void 0===t)return"undefined" if(Array.isArray(t)){let r="" @@ -812,13 +818,13 @@ this._super=t let n=e.apply(this,arguments) return this._super=r,n}O.add(r) let n=v.get(e) -return void 0!==n&&v.set(r,n),r}function C(e,t){let r=e +return void 0!==n&&v.set(r,n),r}function E(e,t){let r=e do{let e=Object.getOwnPropertyDescriptor(r,t) if(void 0!==e)return e r=Object.getPrototypeOf(r)}while(null!==r) -return null}const E=new WeakMap +return null}const C=new WeakMap const k=Object.prototype.toString -function T(e){return null==e}const S=new WeakSet +function T(e){return null==e}const R=new WeakSet e.Cache=class{constructor(e,t,r=new Map){this.limit=e,this.func=t,this.store=r,this.size=0,this.misses=0,this.hits=0}get(e){return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,this.set(e,this.func(e)))}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}} e.setupMandatorySetter=void 0,e.teardownMandatorySetter=void 0,e.setWithMandatorySetter=void 0})),e("@ember/-internals/views/index",["exports","@ember/-internals/views/lib/system/utils","@ember/-internals/views/lib/system/event_dispatcher","@ember/-internals/views/lib/component_lookup","@ember/-internals/views/lib/views/core_view","@ember/-internals/views/lib/mixins/class_names_support","@ember/-internals/views/lib/mixins/child_views_support","@ember/-internals/views/lib/mixins/view_state_support","@ember/-internals/views/lib/mixins/view_support","@ember/-internals/views/lib/mixins/action_support","@ember/-internals/views/lib/compat/attrs","@ember/-internals/views/lib/system/action_manager"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ActionManager",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(e,"ActionSupport",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(e,"ChildViewsSupport",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"ClassNamesSupport",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"ComponentLookup",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"CoreView",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"EventDispatcher",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"MUTABLE_CELL",{enumerable:!0,get:function(){return c.MUTABLE_CELL}}),Object.defineProperty(e,"ViewMixin",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"ViewStateSupport",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"addChildView",{enumerable:!0,get:function(){return t.addChildView}}),Object.defineProperty(e,"clearElementView",{enumerable:!0,get:function(){return t.clearElementView}}),Object.defineProperty(e,"clearViewElement",{enumerable:!0,get:function(){return t.clearViewElement}}),Object.defineProperty(e,"constructStyleDeprecationMessage",{enumerable:!0,get:function(){return t.constructStyleDeprecationMessage}}),Object.defineProperty(e,"getChildViews",{enumerable:!0,get:function(){return t.getChildViews}}),Object.defineProperty(e,"getElementView",{enumerable:!0,get:function(){return t.getElementView}}),Object.defineProperty(e,"getRootViews",{enumerable:!0,get:function(){return t.getRootViews}}),Object.defineProperty(e,"getViewBoundingClientRect",{enumerable:!0,get:function(){return t.getViewBoundingClientRect}}),Object.defineProperty(e,"getViewBounds",{enumerable:!0,get:function(){return t.getViewBounds}}),Object.defineProperty(e,"getViewClientRects",{enumerable:!0,get:function(){return t.getViewClientRects}}),Object.defineProperty(e,"getViewElement",{enumerable:!0,get:function(){return t.getViewElement}}),Object.defineProperty(e,"getViewId",{enumerable:!0,get:function(){return t.getViewId}}),Object.defineProperty(e,"isSimpleClick",{enumerable:!0,get:function(){return t.isSimpleClick}}),Object.defineProperty(e,"setElementView",{enumerable:!0,get:function(){return t.setElementView}}),Object.defineProperty(e,"setViewElement",{enumerable:!0,get:function(){return t.setViewElement}})})),e("@ember/-internals/views/lib/compat/attrs",["exports"],(function(e){"use strict" @@ -840,12 +846,12 @@ const i=r.default.create({childViews:(0,t.nativeDescDecorator)({configurable:!1, e.default=i})),e("@ember/-internals/views/lib/mixins/class_names_support",["exports","@ember/-internals/metal","@ember/object/mixin","@ember/debug"],(function(e,t,r,n){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const i=Object.freeze([]),o=r.default.create({concatenatedProperties:["classNames","classNameBindings"],init(){this._super(...arguments)},classNames:i,classNameBindings:i}) -e.default=o})),e("@ember/-internals/views/lib/mixins/view_state_support",["exports","@ember/object/mixin"],(function(e,t){"use strict" +e.default=o})) +e("@ember/-internals/views/lib/mixins/view_state_support",["exports","@ember/object/mixin"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const r=t.default.create({_transitionTo(e){let t=this._currentState,r=this._currentState=this._states[e] this._state=e,t&&t.exit&&t.exit(this),r.enter&&r.enter(this)}}) -e.default=r})) -e("@ember/-internals/views/lib/mixins/view_support",["exports","@ember/-internals/utils","@ember/-internals/metal","@ember/object/mixin","@ember/debug","@ember/-internals/browser-environment","@ember/-internals/views/lib/system/utils"],(function(e,t,r,n,i,o,s){"use strict" +e.default=r})),e("@ember/-internals/views/lib/mixins/view_support",["exports","@ember/-internals/utils","@ember/-internals/metal","@ember/object/mixin","@ember/debug","@ember/-internals/browser-environment","@ember/-internals/views/lib/system/utils"],(function(e,t,r,n,i,o,s){"use strict" function a(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const l=n.default.create({concatenatedProperties:["attributeBindings"],nearestOfType(e){let t=this.parentView,r=e instanceof n.default?t=>e.detect(t):t=>e.detect(t.constructor) for(;t;){if(r(t))return t @@ -950,36 +956,36 @@ return void 0===i&&(i=(0,n.guidFor)(this),(0,n.setName)(this,i)),i}nameClasses() e.default=o})),e("@ember/array/-internals",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.isEmberArray=function(e){return t.has(e)},e.setEmberArray=function(e){t.add(e)} const t=new WeakSet})),e("@ember/array/index",["exports","@ember/-internals/metal","@ember/object","@ember/object/mixin","@ember/debug","@ember/enumerable","@ember/enumerable/mutable","@ember/utils","@ember/-internals/environment","@ember/object/observable","@ember/array/-internals","@ember/array/lib/make-array"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.NativeArray=e.MutableArray=e.A=void 0,e.isArray=C,Object.defineProperty(e,"makeArray",{enumerable:!0,get:function(){return p.default}}),e.removeAt=O,e.uniqBy=f +Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.NativeArray=e.MutableArray=e.A=void 0,e.isArray=E,Object.defineProperty(e,"makeArray",{enumerable:!0,get:function(){return p.default}}),e.removeAt=O,e.uniqBy=f const d=Object.freeze([]),h=e=>e -function f(e,t=h){let n=x(),i=new Set,o="function"==typeof t?t:e=>(0,r.get)(e,t) +function f(e,t=h){let n=A(),i=new Set,o="function"==typeof t?t:e=>(0,r.get)(e,t) return e.forEach((e=>{let t=o(e) i.has(t)||(i.add(t),n.push(e))})),n}function m(...e){let t=2===e.length,[n,i]=e return t?e=>i===(0,r.get)(e,n):e=>Boolean((0,r.get)(e,n))}function g(e,r,n){let i=e.length for(let o=n;o!n(e,t,r)),0)}function _(e,t,r=0,n){let i=e.length -return r<0&&(r+=i),g(e,n&&t!=t?e=>e!=e:e=>e===t,r)}function O(e,r,n){return(0,t.replace)(e,r,n??1,d),e}function w(e,r,n){return(0,t.replace)(e,r,0,[n]),n}function C(e){if(!e||e.setInterval)return!1 +return r<0&&(r+=i),g(e,n&&t!=t?e=>e!=e:e=>e===t,r)}function O(e,r,n){return(0,t.replace)(e,r,n??1,d),e}function w(e,r,n){return(0,t.replace)(e,r,0,[n]),n}function E(e){if(!e||e.setInterval)return!1 if(Array.isArray(e)||T.detect(e))return!0 let t=(0,a.typeOf)(e) if("array"===t)return!0 let r=e.length -return"number"==typeof r&&r==r&&"object"===t}function E(e){let r=(0,t.computed)(e) -return r.enumerable=!1,r}function k(e){return this.map((t=>(0,r.get)(t,e)))}const T=n.default.create(o.default,{init(){this._super(...arguments),(0,c.setEmberArray)(this)},objectsAt(e){return e.map((e=>(0,t.objectAt)(this,e)))},"[]":E({get(){return this},set(e,t){return this.replace(0,this.length,t),this}}),firstObject:E((function(){return(0,t.objectAt)(this,0)})).readOnly(),lastObject:E((function(){return(0,t.objectAt)(this,this.length-1)})).readOnly(),slice(e=0,r){let n,i=x(),o=this.length +return"number"==typeof r&&r==r&&"object"===t}function C(e){let r=(0,t.computed)(e) +return r.enumerable=!1,r}function k(e){return this.map((t=>(0,r.get)(t,e)))}const T=n.default.create(o.default,{init(){this._super(...arguments),(0,c.setEmberArray)(this)},objectsAt(e){return e.map((e=>(0,t.objectAt)(this,e)))},"[]":C({get(){return this},set(e,t){return this.replace(0,this.length,t),this}}),firstObject:C((function(){return(0,t.objectAt)(this,0)})).readOnly(),lastObject:C((function(){return(0,t.objectAt)(this,this.length-1)})).readOnly(),slice(e=0,r){let n,i=A(),o=this.length for(e<0&&(e=o+e),n=void 0===r||r>o?o:r<0?o+r:r;e=n)&&(r=n-1),r<0&&(r+=n) for(let i=r;i>=0;i--)if((0,t.objectAt)(this,i)===e)return i return-1},forEach(e,t=null){let r=this.length for(let n=0;n(0,r.set)(n,e,t)))},map(e,t=null){let r=x() -return this.forEach(((n,i,o)=>r[i]=e.call(t,n,i,o))),r},mapBy:k,filter(e,t=null){let r=x() +e.call(t,r,n,this)}return this},getEach:k,setEach(e,t){return this.forEach((n=>(0,r.set)(n,e,t)))},map(e,t=null){let r=A() +return this.forEach(((n,i,o)=>r[i]=e.call(t,n,i,o))),r},mapBy:k,filter(e,t=null){let r=A() return this.forEach(((n,i,o)=>{e.call(t,n,i,o)&&r.push(n)})),r},reject(e,t=null){return this.filter((function(){return!e.apply(t,arguments)}))},filterBy(){return this.filter(m(...arguments))},rejectBy(){return this.reject(m(...arguments))},find(e,t=null){return b(this,e,t)},findBy(){return b(this,m(...arguments))},every(e,t=null){return v(this,e,t)},isEvery(){return v(this,m(...arguments))},any(e,t=null){return y(this,e,t)},isAny(){return y(this,m(...arguments))},reduce(e,t){let r=t -return this.forEach((function(t,n){r=e(r,t,n,this)}),this),r},invoke(e,...t){let r=x() +return this.forEach((function(t,n){r=e(r,t,n,this)}),this),r},invoke(e,...t){let r=A() return this.forEach((n=>r.push(n[e]?.(...t)))),r},toArray(){return this.map((e=>e))},compact(){return this.filter((e=>null!=e))},includes(e,t){return-1!==_(this,e,t,!0)},sortBy(){let e=arguments return this.toArray().sort(((t,n)=>{for(let i=0;it!==e:e=>e==e -return this.filter(t)}}),S=e.MutableArray=n.default.create(T,s.default,{clear(){let e=this.length +return this.filter(t)}}),R=e.MutableArray=n.default.create(T,s.default,{clear(){let e=this.length return 0===e||this.replace(0,e,d),this},insertAt(e,t){return w(this,e,t),this},removeAt(e,t){return O(this,e,t)},pushObject(e){return w(this,this.length,e)},pushObjects(e){return this.replace(this.length,0,e),this},popObject(){let e=this.length if(0===e)return null let r=(0,t.objectAt)(this,e-1) @@ -994,11 +1000,11 @@ return this.replace(0,t,e),this},removeObject(e){let r=this.length||0 for(;--r>=0;){(0,t.objectAt)(this,r)===e&&this.removeAt(r)}return this},removeObjects(e){(0,t.beginPropertyChanges)() for(let t=e.length-1;t>=0;t--)this.removeObject(e[t]) return(0,t.endPropertyChanges)(),this},addObject(e){return this.includes(e)||this.pushObject(e),this},addObjects(e){return(0,t.beginPropertyChanges)(),e.forEach((e=>this.addObject(e))),(0,t.endPropertyChanges)(),this}}) -let R=e.NativeArray=n.default.create(S,u.default,{objectAt(e){return this[e]},replace(e,r,n=d){return(0,t.replaceInNativeArray)(this,e,r,n),this}}) +let S=e.NativeArray=n.default.create(R,u.default,{objectAt(e){return this[e]},replace(e,r,n=d){return(0,t.replaceInNativeArray)(this,e,r,n),this}}) const P=["length"] -R.keys().forEach((e=>{Array.prototype[e]&&P.push(e)})),e.NativeArray=R=R.without(...P) -let x=e.A=void 0 -l.ENV.EXTEND_PROTOTYPES.Array?(R.apply(Array.prototype,!0),e.A=x=function(e){return e||[]}):e.A=x=function(e){return(0,c.isEmberArray)(e)?e:R.apply(e??[])} +S.keys().forEach((e=>{Array.prototype[e]&&P.push(e)})),e.NativeArray=S=S.without(...P) +let A=e.A=void 0 +l.ENV.EXTEND_PROTOTYPES.Array?(S.apply(Array.prototype,!0),e.A=A=function(e){return e||[]}):e.A=A=function(e){return(0,c.isEmberArray)(e)?e:S.apply(e??[])} e.default=T})),e("@ember/array/lib/make-array",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const{isArray:t}=Array @@ -1107,10 +1113,10 @@ let n=()=>{} e.registerHandler=n let i=()=>{} e.missingOptionsDeprecation=void 0,e.missingOptionsIdDeprecation=void 0 -e.default=i})),e("@ember/deprecated-features/index",["exports"],(function(e){"use strict" +e.default=i})) +e("@ember/deprecated-features/index",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.ASSIGN=void 0 -e.ASSIGN=!0})) -e("@ember/destroyable/index",["exports","@glimmer/destroyable"],(function(e,t){"use strict" +e.ASSIGN=!0})),e("@ember/destroyable/index",["exports","@glimmer/destroyable"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"assertDestroyablesDestroyed",{enumerable:!0,get:function(){return t.assertDestroyablesDestroyed}}),Object.defineProperty(e,"associateDestroyableChild",{enumerable:!0,get:function(){return t.associateDestroyableChild}}),Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return t.destroy}}),Object.defineProperty(e,"enableDestroyableTracking",{enumerable:!0,get:function(){return t.enableDestroyableTracking}}),Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return t.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return t.isDestroying}}),e.registerDestructor=function(e,r){return(0,t.registerDestructor)(e,r)},e.unregisterDestructor=function(e,r){return(0,t.unregisterDestructor)(e,r)}})),e("@ember/engine/index",["exports","@ember/engine/lib/engine-parent","@ember/-internals/utils","@ember/controller","@ember/application/namespace","@ember/-internals/container","dag-map","@ember/debug","@ember/debug/container-debug-adapter","@ember/object","@ember/engine/instance","@ember/routing/-internals","@ember/-internals/views","@ember/-internals/glimmer","@ember/-internals/runtime"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.buildInitializerMethod=b,e.default=void 0,Object.defineProperty(e,"getEngineParent",{enumerable:!0,get:function(){return t.getEngineParent}}),Object.defineProperty(e,"setEngineParent",{enumerable:!0,get:function(){return t.setEngineParent}}) class m extends(i.default.extend(f.RegistryProxyMixin)){constructor(){super(...arguments),this._initializersRan=!1}static buildRegistry(e){let t=new o.Registry({resolver:g(e)}) @@ -1340,15 +1346,15 @@ return this.mixins=this.mixins.concat(O(e)),this}apply(e,t=!1){return y(e,[this] if(v.has(e))return w(e,this) let t=(0,r.peekMeta)(e) return null!==t&&t.hasMixin(this)}without(...e){let t=new _([this]) -return t._without=e,t}keys(){let e=C(this) +return t._without=e,t}keys(){let e=E(this) return e}toString(){return"(unknown mixin)"}}function O(e){let t,r=e&&e.length||0 if(r>0){t=new Array(r) for(let n=0;nw(e,t,r)))}function C(e,t=new Set,r=new Set){if(!r.has(e)){if(r.add(e),e.properties){let r=Object.keys(e.properties) -for(let e of r)t.add(e)}else e.mixins&&e.mixins.forEach((e=>C(e,t,r))) +return!!n&&n.some((e=>w(e,t,r)))}function E(e,t=new Set,r=new Set){if(!r.has(e)){if(r.add(e),e.properties){let r=Object.keys(e.properties) +for(let e of r)t.add(e)}else e.mixins&&e.mixins.forEach((e=>E(e,t,r))) return t}}e.default=_})),e("@ember/object/observable",["exports","@ember/-internals/meta","@ember/-internals/metal","@ember/object","@ember/object/mixin","@ember/debug"],(function(e,t,r,n,i,o){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 const s=i.default.create({get(e){return(0,n.get)(this,e)},getProperties(...e){return(0,n.getProperties)(this,...e)},set(e,t){return(0,n.set)(this,e,t)},setProperties(e){return(0,n.setProperties)(this,e)},beginPropertyChanges(){return(0,r.beginPropertyChanges)(),this},endPropertyChanges(){return(0,r.endPropertyChanges)(),this},notifyPropertyChange(e){return(0,r.notifyPropertyChange)(this,e),this},addObserver(e,t,n,i){return(0,r.addObserver)(this,e,t,n,i),this},removeObserver(e,t,n,i){return(0,r.removeObserver)(this,e,t,n,i),this},hasObserverFor(e){return(0,r.hasListeners)(this,`${e}:change`)},incrementProperty(e,t=1){return(0,n.set)(this,e,(parseFloat((0,n.get)(this,e))||0)+t)},decrementProperty(e,t=1){return(0,n.set)(this,e,((0,n.get)(this,e)||0)-t)},toggleProperty(e){return(0,n.set)(this,e,!(0,n.get)(this,e))},cacheFor(e){let r=(0,t.peekMeta)(this) @@ -1385,9 +1391,9 @@ e=this.formatURL(e),t&&t.path===e||this.pushState(e)}replaceURL(e){let{state:t}= e=this.formatURL(e),t&&t.path===e||this.replaceState(e)}pushState(e){let t={path:e,uuid:o()} this.history.pushState(t,"",e),this._previousURL=this.getURL()}replaceState(e){let t={path:e,uuid:o()} this.history.replaceState(t,"",e),this._previousURL=this.getURL()}onUpdateURL(e){this._removeEventListener(),this._popstateHandler=()=>{(i||(i=!0,this.getURL()!==this._previousURL))&&e(this.getURL())},window.addEventListener("popstate",this._popstateHandler)}formatURL(e){let{rootURL:t,baseURL:r}=this -return""!==e?(t=t.replace(/\/$/,""),r=r.replace(/\/$/,"")):"/"===r[0]&&"/"===t[0]&&(r=r.replace(/\/$/,"")),r+t+e}willDestroy(){this._removeEventListener()}_removeEventListener(){this._popstateHandler&&window.removeEventListener("popstate",this._popstateHandler)}}e.default=s})),e("@ember/routing/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"LinkTo",{enumerable:!0,get:function(){return t.LinkTo}})})) -e("@ember/routing/lib/cache",["exports"],(function(e){"use strict" +return""!==e?(t=t.replace(/\/$/,""),r=r.replace(/\/$/,"")):"/"===r[0]&&"/"===t[0]&&(r=r.replace(/\/$/,"")),r+t+e}willDestroy(){this._removeEventListener()}_removeEventListener(){this._popstateHandler&&window.removeEventListener("popstate",this._popstateHandler)}}e.default=s})) +e("@ember/routing/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"LinkTo",{enumerable:!0,get:function(){return t.LinkTo}})})),e("@ember/routing/lib/cache",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 e.default=class{constructor(){this.cache=new Map}has(e){return this.cache.has(e)}stash(e,t,r){let n=this.cache.get(e) void 0===n&&(n=new Map,this.cache.set(e,n)),n.set(t,r)}lookup(e,t,r){if(!this.has(e))return r @@ -1479,103 +1485,104 @@ class n extends t.default{initState(){this._super(...arguments) let{rootURL:e}=this}getURL(){let{path:e,rootURL:t}=this return t=t.replace(/\/$/,""),e.replace(new RegExp(`^${t}(?=/|$)`),"")}setURL(e){this.path=e}onUpdateURL(e){this.updateCallback=e}handleURL(e){this.path=e,this.updateCallback&&this.updateCallback(e)}formatURL(e){let{rootURL:t}=this return""!==e&&(t=t.replace(/\/$/,"")),t+e}}e.default=n,n.reopen({path:"",rootURL:"/"})})),e("@ember/routing/route-info",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/routing/route",["exports","@ember/-internals/container","@ember/-internals/metal","@ember/-internals/owner","@ember/routing/-internals","@ember/object","@ember/object/evented","@ember/array","@ember/-internals/runtime","@ember/utils","@ember/-internals/utils","@ember/controller","@ember/debug","@ember/engine/instance","@ember/object/compat","@ember/runloop","router_js","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.defaultSerialize=e.default=void 0,e.getFullQueryParams=E,e.getRenderState=function(e){return e[w]},e.hasDefaultSerialize=function(e){return e.serialize===R} -var v,_=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/routing/route",["exports","@ember/-internals/container","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/environment","@ember/routing/-internals","@ember/object","@ember/object/evented","@ember/array","@ember/-internals/runtime","@ember/utils","@ember/-internals/utils","@ember/controller","@ember/debug","@ember/-internals/deprecations","@ember/engine/instance","@ember/object/compat","@ember/runloop","router_js","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v,_){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.defaultSerialize=e.default=void 0,e.getFullQueryParams=T,e.getRenderState=function(e){return e[C]},e.hasDefaultSerialize=function(e){return e.serialize===A} +var O,w=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) return o>3&&s&&Object.defineProperty(t,r,s),s} -const O=Symbol("render"),w=Symbol("render-state") -class C extends(o.default.extend(l.ActionHandler,s.default)){constructor(e){if(super(e),this.context={},this[v]=void 0,e){let r=e.lookup("router:main"),n=e.lookup(t.privatize`-bucket-cache:main`) +const E=Symbol("render"),C=Symbol("render-state") +class k extends(s.default.extend(u.ActionHandler,a.default)){constructor(e){if(super(e),this.context={},this[O]=void 0,e){let r=e.lookup("router:main"),n=e.lookup(t.privatize`-bucket-cache:main`) this._router=r,this._bucketCache=n,this._topLevelViewTemplate=e.lookup("template:-outlet"),this._environment=e.lookup("-environment:main")}}serialize(e,t){if(t.length<1||!e)return let r={} if(1===t.length){let[n]=t -"object"==typeof e&&n in e?r[n]=(0,o.get)(e,n):/_id$/.test(n)?r[n]=(0,o.get)(e,"id"):(0,c.isProxy)(e)&&(r[n]=(0,o.get)(e,n))}else r=(0,o.getProperties)(e,t) +"object"==typeof e&&n in e?r[n]=(0,s.get)(e,n):/_id$/.test(n)?r[n]=(0,s.get)(e,"id"):(0,p.isProxy)(e)&&(r[n]=(0,s.get)(e,n))}else r=(0,s.getProperties)(e,t) return r}_setRouteName(e){this.routeName=e let t=(0,n.getOwner)(this) -this.fullRouteName=S(t,e)}_stashNames(e,t){if(this._names)return +this.fullRouteName=P(t,e)}_stashNames(e,t){if(this._names)return let r=this._names=e._names r.length||(r=(e=t)&&e._names||[]) -let n=(0,o.get)(this,"_qp").qps,i=new Array(r.length) +let n=(0,s.get)(this,"_qp").qps,i=new Array(r.length) for(let o=0;o(e[t]=r,e)),a)}serializeQueryParamKey(e){return e}serializeQueryParam(e,t,r){return this._router._serializeQueryParam(e,r)}deserializeQueryParam(e,t,r){return this._router._deserializeQueryParam(e,r)}_optionsForQueryParam(e){const t=(0,o.get)(this,"queryParams") -return(0,o.get)(t,e.urlKey)||(0,o.get)(t,e.prop)||t[e.urlKey]||t[e.prop]||{}}resetController(e,t,r){return this}exit(e){this.deactivate(e),this.trigger("deactivate",e),this.teardownViews()}_internalReset(e,t){let r=this.controller -r._qpDelegate=(0,o.get)(this,"_qp").states.inactive,this.resetController(r,e,t)}enter(e){this[w]=void 0,this.activate(e),this.trigger("activate",e)}deactivate(e){}activate(e){}intermediateTransitionTo(...e){let[t,...r]=(0,y.prefixRouteNameArg)(this,e) -this._router.intermediateTransitionTo(t,...r)}refresh(){return this._router._routerMicrolib.refresh(this)}setup(e,t){let n=this.controllerName||this.routeName,i=this.controllerFor(n,!0)??this.generateController(n),s=(0,o.get)(this,"_qp") -if(!this.controller){let e=s.propertyNames;(function(e,t){t.forEach((t=>{if(void 0===(0,r.descriptorForProperty)(e,t)){let n=(0,c.lookupDescriptor)(e,t) -null===n||"function"!=typeof n.get&&"function"!=typeof n.set||(0,r.defineProperty)(e,t,(0,f.dependentKeyCompat)({get:n.get,set:n.set}))}(0,r.addObserver)(e,`${t}.[]`,e,e._qpChanged,!1)}))})(i,e),this.controller=i}let a=s.states -if(i._qpDelegate=a.allowOverrides,t){(0,y.stashParamNames)(this._router,t[g.STATE_SYMBOL].routeInfos) -let e=this._bucketCache,r=t[g.PARAMS_SYMBOL] -s.propertyNames.forEach((t=>{let n=s.map[t] +let i=this._router._routerMicrolib.activeTransition,o=i?i[y.STATE_SYMBOL]:this._router._routerMicrolib.state,s=r.fullRouteName,a={...o.params[s]},l=R(r,o) +return Object.entries(l).reduce(((e,[t,r])=>(e[t]=r,e)),a)}serializeQueryParamKey(e){return e}serializeQueryParam(e,t,r){return this._router._serializeQueryParam(e,r)}deserializeQueryParam(e,t,r){return this._router._deserializeQueryParam(e,r)}_optionsForQueryParam(e){const t=(0,s.get)(this,"queryParams") +return(0,s.get)(t,e.urlKey)||(0,s.get)(t,e.prop)||t[e.urlKey]||t[e.prop]||{}}resetController(e,t,r){return this}exit(e){this.deactivate(e),this.trigger("deactivate",e),this.teardownViews()}_internalReset(e,t){let r=this.controller +r._qpDelegate=(0,s.get)(this,"_qp").states.inactive,this.resetController(r,e,t)}enter(e){this[C]=void 0,this.activate(e),this.trigger("activate",e)}deactivate(e){}activate(e){}intermediateTransitionTo(...e){let[t,...r]=(0,_.prefixRouteNameArg)(this,e) +this._router.intermediateTransitionTo(t,...r)}refresh(){return this._router._routerMicrolib.refresh(this)}setup(e,t){let n=this.controllerName||this.routeName,i=this.controllerFor(n,!0)??this.generateController(n),o=(0,s.get)(this,"_qp") +if(!this.controller){let e=o.propertyNames;(function(e,t){t.forEach((t=>{if(void 0===(0,r.descriptorForProperty)(e,t)){let n=(0,p.lookupDescriptor)(e,t) +null===n||"function"!=typeof n.get&&"function"!=typeof n.set||(0,r.defineProperty)(e,t,(0,g.dependentKeyCompat)({get:n.get,set:n.set}))}(0,r.addObserver)(e,`${t}.[]`,e,e._qpChanged,!1)}))})(i,e),this.controller=i}let a=o.states +if(i._qpDelegate=a.allowOverrides,t){(0,_.stashParamNames)(this._router,t[y.STATE_SYMBOL].routeInfos) +let e=this._bucketCache,r=t[y.PARAMS_SYMBOL] +o.propertyNames.forEach((t=>{let n=o.map[t] n.values=r -let a=(0,y.calculateCacheKey)(n.route.fullRouteName,n.parts,n.values),l=e.lookup(a,t,n.undecoratedDefaultValue);(0,o.set)(i,t,l)})) -let n=k(this,t[g.STATE_SYMBOL]);(0,o.setProperties)(i,n)}this.setupController(i,e,t),this._environment.options.shouldRender&&this[O](),(0,r.flushAsyncObservers)(!1)}_qpChanged(e,t,r){if(!r)return -let n=this._bucketCache,i=(0,y.calculateCacheKey)(r.route.fullRouteName,r.parts,r.values) -n.stash(i,e,t)}beforeModel(e){}afterModel(e,t){}redirect(e,t){}contextDidChange(){this.currentModel=this.context}model(e,t){let r,n,i,s=(0,o.get)(this,"_qp").map -for(let o in e){if("queryParams"===o||s&&o in s)continue -let t=o.match(/^(.*)_id$/) -null!==t&&(r=t[1],i=e[o]),n=!0}if(!r){if(n)return Object.assign({},e) +let a=(0,_.calculateCacheKey)(n.route.fullRouteName,n.parts,n.values),l=e.lookup(a,t,n.undecoratedDefaultValue);(0,s.set)(i,t,l)})) +let n=R(this,t[y.STATE_SYMBOL]);(0,s.setProperties)(i,n)}this.setupController(i,e,t),this._environment.options.shouldRender&&this[E](),(0,r.flushAsyncObservers)(!1)}_qpChanged(e,t,r){if(!r)return +let n=this._bucketCache,i=(0,_.calculateCacheKey)(r.route.fullRouteName,r.parts,r.values) +n.stash(i,e,t)}beforeModel(e){}afterModel(e,t){}redirect(e,t){}contextDidChange(){this.currentModel=this.context}model(e,t){let r,n,i,o=(0,s.get)(this,"_qp").map +for(let s in e){if("queryParams"===s||o&&s in o)continue +let t=s.match(/^(.*)_id$/) +null!==t&&(r=t[1],i=e[s]),n=!0}if(!r){if(n)return Object.assign({},e) if(t.resolveIndex<1)return -return t[g.STATE_SYMBOL].routeInfos[t.resolveIndex-1].context}return this.findModel(r,i)}deserialize(e,t){return this.model(this._paramsFor(this.routeName,e),t)}findModel(e,t){const r="store"in this?this.store:(0,o.get)(this,"_store") -return r.find(e,t)}setupController(e,t,r){e&&void 0!==t&&(0,o.set)(e,"model",t)}controllerFor(e,t=!1){let r=(0,n.getOwner)(this),i=r.lookup(`route:${e}`) +return t[y.STATE_SYMBOL].routeInfos[t.resolveIndex-1].context}return this.findModel(r,i)}deserialize(e,t){return this.model(this._paramsFor(this.routeName,e),t)}findModel(e,t){if(i.ENV._NO_IMPLICIT_ROUTE_MODEL)return;(0,f.deprecateUntil)(`The implicit model loading behavior for routes is deprecated. Please define an explicit model hook for ${this.fullRouteName}.`,f.DEPRECATIONS.DEPRECATE_IMPLICIT_ROUTE_MODEL) +const r="store"in this?this.store:(0,s.get)(this,"_store") +return r.find(e,t)}setupController(e,t,r){e&&void 0!==t&&(0,s.set)(e,"model",t)}controllerFor(e,t=!1){let r=(0,n.getOwner)(this),i=r.lookup(`route:${e}`) i&&i.controllerName&&(e=i.controllerName) let o=r.lookup(`controller:${e}`) return o}generateController(e){let t=(0,n.getOwner)(this) -return(0,i.generateController)(t,e)}modelFor(e){let t,r=(0,n.getOwner)(this),i=this._router&&this._router._routerMicrolib?this._router._routerMicrolib.activeTransition:void 0 -t=r.routable&&void 0!==i?S(r,e):e +return(0,o.generateController)(t,e)}modelFor(e){let t,r=(0,n.getOwner)(this),i=this._router&&this._router._routerMicrolib?this._router._routerMicrolib.activeTransition:void 0 +t=r.routable&&void 0!==i?P(r,e):e let o=r.lookup(`route:${t}`) if(null!=i){let e=o&&o.routeName||t -if(Object.prototype.hasOwnProperty.call(i.resolvedModels,e))return i.resolvedModels[e]}return o?.currentModel}[(v=w,O)](){this[w]=function(e){let t=(0,n.getOwner)(e) +if(Object.prototype.hasOwnProperty.call(i.resolvedModels,e))return i.resolvedModels[e]}return o?.currentModel}[(O=C,E)](){this[C]=function(e){let t=(0,n.getOwner)(e) let r=e.routeName,i=t.lookup(`controller:${e.controllerName||r}`) let o=e.currentModel,s=t.lookup(`template:${e.templateName||r}`),a={owner:t,into:void 0,outlet:"main",name:r,controller:i,model:o,template:s?.(t)??e._topLevelViewTemplate(t)} 0 -return a}(this),(0,m.once)(this._router,"_setOutlets")}willDestroy(){this.teardownViews()}teardownViews(){this[w]&&(this[w]=void 0,(0,m.once)(this._router,"_setOutlets"))}buildRouteInfoMetadata(){}_paramsFor(e,t){return void 0!==this._router._routerMicrolib.activeTransition?this.paramsFor(e):t}get _store(){const e=(0,n.getOwner)(this) +return a}(this),(0,b.once)(this._router,"_setOutlets")}willDestroy(){this.teardownViews()}teardownViews(){this[C]&&(this[C]=void 0,(0,b.once)(this._router,"_setOutlets"))}buildRouteInfoMetadata(){}_paramsFor(e,t){return void 0!==this._router._routerMicrolib.activeTransition?this.paramsFor(e):t}get _store(){const e=(0,n.getOwner)(this) this.routeName return{find(t,r){let n=e.factoryFor(`model:${t}`) -if(n)return n=n.class,n.find(r)}}}get _qp(){let e={},t=this.controllerName||this.routeName,r=(0,n.getOwner)(this),s=r.lookup(`controller:${t}`),a=(0,o.get)(this,"queryParams"),l=Object.keys(a).length>0 -if(s){let t=(0,o.get)(s,"queryParams")||[] +if(n)return n=n.class,n.find(r)}}}get _qp(){let e={},t=this.controllerName||this.routeName,r=(0,n.getOwner)(this),i=r.lookup(`controller:${t}`),a=(0,s.get)(this,"queryParams"),l=Object.keys(a).length>0 +if(i){let t=(0,s.get)(i,"queryParams")||[] e=function(e,t){let r={},n={defaultValue:!0,type:!0,scope:!0,as:!0} for(let i in e)Object.prototype.hasOwnProperty.call(e,i)&&(r[i]={...e[i],...t[i]},n[i]=!0) for(let i in t)Object.prototype.hasOwnProperty.call(t,i)&&!n[i]&&(r[i]={...t[i],...e[i]}) -return r}((0,y.normalizeControllerQueryParams)(t),a)}else l&&(s=(0,i.generateController)(r,t),e=a) -let c=[],p={},d=[] +return r}((0,_.normalizeControllerQueryParams)(t),a)}else l&&(i=(0,o.generateController)(r,t),e=a) +let u=[],p={},d=[] for(let n in e){if(!Object.prototype.hasOwnProperty.call(e,n))continue if("unknownProperty"===n||"_super"===n)continue -let r,i=e[n],a=i.scope||"model" +let r,o=e[n],a=o.scope||"model" "controller"===a&&(r=[]) -let l=i.as||this.serializeQueryParamKey(n),h=(0,o.get)(s,n) -h=T(h) -let f=i.type||(0,u.typeOf)(h),m=this.serializeQueryParam(h,l,f),g=`${t}:${n}`,b={undecoratedDefaultValue:(0,o.get)(s,n),defaultValue:h,serializedDefaultValue:m,serializedValue:m,type:f,urlKey:l,prop:n,scopedPropertyName:g,controllerName:t,route:this,parts:r,values:null,scope:a} -p[n]=p[l]=p[g]=b,c.push(b),d.push(n)}return{qps:c,map:p,propertyNames:d,states:{inactive:(e,t)=>{let r=p[e] +let l=o.as||this.serializeQueryParamKey(n),h=(0,s.get)(i,n) +h=S(h) +let f=o.type||(0,c.typeOf)(h),m=this.serializeQueryParam(h,l,f),g=`${t}:${n}`,b={undecoratedDefaultValue:(0,s.get)(i,n),defaultValue:h,serializedDefaultValue:m,serializedValue:m,type:f,urlKey:l,prop:n,scopedPropertyName:g,controllerName:t,route:this,parts:r,values:null,scope:a} +p[n]=p[l]=p[g]=b,u.push(b),d.push(n)}return{qps:u,map:p,propertyNames:d,states:{inactive:(e,t)=>{let r=p[e] this._qpChanged(e,t,r)},active:(e,t)=>{let r=p[e] return this._qpChanged(e,t,r),this._activeQPChanged(r,t)},allowOverrides:(e,t)=>{let r=p[e] -return this._qpChanged(e,t,r),this._updatingQPChanged(r)}}}}}function E(e,t){if(t.fullQueryParams)return t.fullQueryParams +return this._qpChanged(e,t,r),this._updatingQPChanged(r)}}}}}function T(e,t){if(t.fullQueryParams)return t.fullQueryParams let r=t.routeInfos.every((e=>e.route)),n={...t.queryParams} -return e._deserializeQueryParams(t.routeInfos,n),r&&(t.fullQueryParams=n),n}function k(e,t){t.queryParamsFor=t.queryParamsFor||{} +return e._deserializeQueryParams(t.routeInfos,n),r&&(t.fullQueryParams=n),n}function R(e,t){t.queryParamsFor=t.queryParamsFor||{} let r=e.fullRouteName,n=t.queryParamsFor[r] if(n)return n -let i=E(e._router,t),s=t.queryParamsFor[r]={},a=(0,o.get)(e,"_qp").qps -for(let o of a){let e=o.prop in i -s[o.prop]=e?i[o.prop]:T(o.defaultValue)}return s}function T(e){return Array.isArray(e)?(0,a.A)(e.slice()):e}function S(e,t){if(e.routable){let r=e.mountPoint -return"application"===t?r:`${r}.${t}`}return t}C.isRouteFactory=!0,_([o.computed],C.prototype,"_store",null),_([o.computed],C.prototype,"_qp",null) -const R=e.defaultSerialize=C.prototype.serialize -C.reopen({mergedProperties:["queryParams"],queryParams:{},templateName:null,controllerName:null,send(...e){if(this._router&&this._router._routerMicrolib||!(0,d.isTesting)())this._router.send(...e) +let i=T(e._router,t),o=t.queryParamsFor[r]={},a=(0,s.get)(e,"_qp").qps +for(let s of a){let e=s.prop in i +o[s.prop]=e?i[s.prop]:S(s.defaultValue)}return o}function S(e){return Array.isArray(e)?(0,l.A)(e.slice()):e}function P(e,t){if(e.routable){let r=e.mountPoint +return"application"===t?r:`${r}.${t}`}return t}k.isRouteFactory=!0,w([s.computed],k.prototype,"_store",null),w([s.computed],k.prototype,"_qp",null) +const A=e.defaultSerialize=k.prototype.serialize +k.reopen({mergedProperties:["queryParams"],queryParams:{},templateName:null,controllerName:null,send(...e){if(this._router&&this._router._routerMicrolib||!(0,h.isTesting)())this._router.send(...e) else{let t=e.shift(),r=this.actions[t] -if(r)return r.apply(this,e)}},actions:{queryParamsDidChange(e,t,r){let n=(0,o.get)(this,"_qp").map,i=Object.keys(e).concat(Object.keys(r)) -for(let s of i){let e=n[s] +if(r)return r.apply(this,e)}},actions:{queryParamsDidChange(e,t,r){let n=(0,s.get)(this,"_qp").map,i=Object.keys(e).concat(Object.keys(r)) +for(let o of i){let e=n[o] if(e){let t=this._optionsForQueryParam(e) -if((0,o.get)(t,"refreshModel")&&this._router.currentState){this.refresh() +if((0,s.get)(t,"refreshModel")&&this._router.currentState){this.refresh() break}}}return!0},finalizeQueryParamChange(e,t,n){if("application"!==this.fullRouteName)return!0 if(!n)return -let i,s=n[g.STATE_SYMBOL].routeInfos,a=this._router,l=a._queryParamsFor(s),u=a._qpUpdates,c=!1;(0,y.stashParamNames)(a,s) -for(let r of l.qps){let s,a,l=r.route,p=l.controller,d=r.urlKey in e&&r.urlKey -if(u.has(r.urlKey)?(s=(0,o.get)(p,r.prop),a=l.serializeQueryParam(s,r.urlKey,r.type)):d?(a=e[d],void 0!==a&&(s=l.deserializeQueryParam(a,r.urlKey,r.type))):(a=r.serializedDefaultValue,s=T(r.defaultValue)),p._qpDelegate=(0,o.get)(l,"_qp").states.inactive,a!==r.serializedValue){if(n.queryParamsOnly&&!1!==i){let e=l._optionsForQueryParam(r),t=(0,o.get)(e,"replace") -t?i=!0:!1===t&&(i=!1)}(0,o.set)(p,r.prop,s),c=!0}r.serializedValue=a,r.serializedDefaultValue===a||t.push({value:a,visible:!0,key:d||r.urlKey})}!0===c&&(0,r.flushAsyncObservers)(!1),i&&n.method("replace"),l.qps.forEach((e=>{let t=(0,o.get)(e.route,"_qp") -e.route.controller._qpDelegate=(0,o.get)(t,"states.active")})),a._qpUpdates.clear()}}}) -e.default=C})),e("@ember/routing/router-service",["exports","@ember/-internals/owner","@ember/object/evented","@ember/debug","@ember/object/computed","@ember/service","@glimmer/validator","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,o,s,a,l){"use strict" +let i,o=n[y.STATE_SYMBOL].routeInfos,a=this._router,l=a._queryParamsFor(o),u=a._qpUpdates,c=!1;(0,_.stashParamNames)(a,o) +for(let r of l.qps){let o,a,l=r.route,p=l.controller,d=r.urlKey in e&&r.urlKey +if(u.has(r.urlKey)?(o=(0,s.get)(p,r.prop),a=l.serializeQueryParam(o,r.urlKey,r.type)):d?(a=e[d],void 0!==a&&(o=l.deserializeQueryParam(a,r.urlKey,r.type))):(a=r.serializedDefaultValue,o=S(r.defaultValue)),p._qpDelegate=(0,s.get)(l,"_qp").states.inactive,a!==r.serializedValue){if(n.queryParamsOnly&&!1!==i){let e=l._optionsForQueryParam(r),t=(0,s.get)(e,"replace") +t?i=!0:!1===t&&(i=!1)}(0,s.set)(p,r.prop,o),c=!0}r.serializedValue=a,r.serializedDefaultValue===a||t.push({value:a,visible:!0,key:d||r.urlKey})}!0===c&&(0,r.flushAsyncObservers)(!1),i&&n.method("replace"),l.qps.forEach((e=>{let t=(0,s.get)(e.route,"_qp") +e.route.controller._qpDelegate=(0,s.get)(t,"states.active")})),a._qpUpdates.clear()}}}) +e.default=k})),e("@ember/routing/router-service",["exports","@ember/-internals/owner","@ember/object/evented","@ember/debug","@ember/object/computed","@ember/service","@glimmer/validator","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,o,s,a,l){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ROUTER=void 0 var u=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) @@ -1599,7 +1606,7 @@ let t=p(e,this.rootURL) return this._router._routerMicrolib.recognizeAndLoad(t)}refresh(e){if(!e)return this._router._routerMicrolib.refresh() let r=(0,t.getOwner)(this),n=r.lookup(`route:${e}`) return this._router._routerMicrolib.refresh(n)}}e.default=d,u([(0,i.readOnly)("_router.currentRouteName")],d.prototype,"currentRouteName",void 0),u([(0,i.readOnly)("_router.currentURL")],d.prototype,"currentURL",void 0),u([(0,i.readOnly)("_router.location")],d.prototype,"location",void 0),u([(0,i.readOnly)("_router.rootURL")],d.prototype,"rootURL",void 0),u([(0,i.readOnly)("_router.currentRoute")],d.prototype,"currentRoute",void 0)})),e("@ember/routing/router",["exports","@ember/-internals/container","@ember/object","@ember/owner","@ember/routing/-internals","@ember/routing/lib/utils","@ember/array","@ember/utils","@ember/object/evented","@ember/debug","@ember/runloop","@ember/routing/route","router_js","@ember/engine/instance"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h){"use strict" -function f(e){T(this),this._cancelSlowTransitionTimer(),this.notifyPropertyChange("url"),this.set("currentState",this.targetState)}function m(e,t){0}function g(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.triggerEvent=E +function f(e){T(this),this._cancelSlowTransitionTimer(),this.notifyPropertyChange("url"),this.set("currentState",this.targetState)}function m(e,t){0}function g(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.triggerEvent=C const{slice:b}=Array.prototype class y extends(r.default.extend(l.default)){static map(e){return this.dslCallbacks||(this.dslCallbacks=[],this.reopenClass({dslCallbacks:this.dslCallbacks})),this.dslCallbacks.push(e),this}static _routePath(e){let t,r,n,i=[] function o(e,t){for(let r=0;r{e.setURL(n),(0,r.set)(t,"currentURL",n)}))}didTransition(e){t.didTransition(e)}willTransition(e,r){t.willTransition(e,r)}triggerEvent(e,r,n,i){return E.bind(t)(e,r,n,i)}routeWillChange(e){t.trigger("routeWillChange",e),t._routerService.trigger("routeWillChange",e),e.isIntermediate&&t.set("currentRoute",e.to)}routeDidChange(e){t.set("currentRoute",e.to),(0,c.once)((()=>{t.trigger("routeDidChange",e),t._routerService.trigger("routeDidChange",e)}))}transitionDidError(e,r){return e.wasAborted||r.isAborted?(0,d.logAbort)(r):(r.trigger(!1,"error",e.error,r,e.route),t._isErrorHandled(e.error)?(r.rollback(),this.routeDidChange(r),e.error):(r.abort(),e.error))}replaceURL(n){if(e.replaceURL){let i=()=>{e.replaceURL(n),(0,r.set)(t,"currentURL",n)};(0,c.once)(i)}else this.updateURL(n)}}let a=this._routerMicrolib=new s,l=this.constructor.dslCallbacks||[g],u=this._buildDSL() +if(r)return r.serializeMethod||p.defaultSerialize}updateURL(n){(0,c.once)((()=>{e.setURL(n),(0,r.set)(t,"currentURL",n)}))}didTransition(e){t.didTransition(e)}willTransition(e,r){t.willTransition(e,r)}triggerEvent(e,r,n,i){return C.bind(t)(e,r,n,i)}routeWillChange(e){t.trigger("routeWillChange",e),t._routerService.trigger("routeWillChange",e),e.isIntermediate&&t.set("currentRoute",e.to)}routeDidChange(e){t.set("currentRoute",e.to),(0,c.once)((()=>{t.trigger("routeDidChange",e),t._routerService.trigger("routeDidChange",e)}))}transitionDidError(e,r){return e.wasAborted||r.isAborted?(0,d.logAbort)(r):(r.trigger(!1,"error",e.error,r,e.route),t._isErrorHandled(e.error)?(r.rollback(),this.routeDidChange(r),e.error):(r.abort(),e.error))}replaceURL(n){if(e.replaceURL){let i=()=>{e.replaceURL(n),(0,r.set)(t,"currentURL",n)};(0,c.once)(i)}else this.updateURL(n)}}let a=this._routerMicrolib=new s,l=this.constructor.dslCallbacks||[g],u=this._buildDSL() u.route("application",{path:"/",resetNamespace:!0,overrideNameAssertion:!0},(function(){for(let e=0;er.factoryFor(`route-map:${e}`),addRouteForEngine(e,r){t._engineInfoByRoute[e]||(t._engineInfoByRoute[e]=r)}} @@ -1643,7 +1650,7 @@ let a=e.lookup("-application-instance:main") a&&a.didCreateRootView(this._toplevelView)}}handleURL(e){let t=e.split(/#(.+)?/)[0] return this._doURLTransition("handleURL",t)}_doURLTransition(e,t){this._initialTransitionStarted=!0 let r=this._routerMicrolib[e](t||"/") -return S(r,this),r}transitionTo(...e){if((0,o.resemblesURL)(e[0]))return this._doURLTransition("transitionTo",e[0]) +return R(r,this),r}transitionTo(...e){if((0,o.resemblesURL)(e[0]))return this._doURLTransition("transitionTo",e[0]) let{routeName:t,models:r,queryParams:n}=(0,o.extractRouteArgs)(e) return this._doTransition(t,r,n)}intermediateTransitionTo(e,...t){this._routerMicrolib.intermediateTransitionTo(e,...t),T(this)}replaceWith(...e){return this.transitionTo(...e).method("replace")}generate(e,...t){let r=this._routerMicrolib.generate(e,...t) return this.location.formatURL(r)}isActive(e){return this._routerMicrolib.isActive(e)}isActiveIntent(e,t,r){return this.currentState.isActiveIntent(e,t,r)}send(e,...t){this._routerMicrolib.trigger(e,...t)}hasRoute(e){return this._routerMicrolib.hasRoute(e)}reset(){this._didSetupRouter=!1,this._initialTransitionStarted=!1,this._routerMicrolib&&this._routerMicrolib.reset()}willDestroy(){this._toplevelView&&(this._toplevelView.destroy(),this._toplevelView=null),super.willDestroy(),this.reset() @@ -1651,16 +1658,16 @@ let e=this._engineInstances for(let t in e){let r=e[t] for(let e in r){let t=r[e];(0,c.run)(t,"destroy")}}}_activeQPChanged(e,t){this._queuedQPChanges[e]=t,(0,c.once)(this,this._fireQueryParamTransition)}_updatingQPChanged(e){this._qpUpdates.add(e)}_fireQueryParamTransition(){this.transitionTo({queryParams:this._queuedQPChanges}),this._resetQueuedQueryParameterChanges()}_setupLocation(){let e=this.location,t=this.rootURL,i=(0,n.getOwner)(this) if("string"==typeof e){let t=i.lookup(`location:${e}`) -e=(0,r.set)(this,"location",t)}null!==e&&"object"==typeof e&&(t&&(0,r.set)(e,"rootURL",t),"function"==typeof e.initState&&e.initState())}_serializeQueryParams(e,t){R(this,e,t,((e,r,n)=>{if(n)delete t[e],t[n.urlKey]=n.route.serializeQueryParam(r,n.urlKey,n.type) +e=(0,r.set)(this,"location",t)}null!==e&&"object"==typeof e&&(t&&(0,r.set)(e,"rootURL",t),"function"==typeof e.initState&&e.initState())}_serializeQueryParams(e,t){S(this,e,t,((e,r,n)=>{if(n)delete t[e],t[n.urlKey]=n.route.serializeQueryParam(r,n.urlKey,n.type) else{if(void 0===r)return -t[e]=this._serializeQueryParam(r,(0,a.typeOf)(r))}}))}_serializeQueryParam(e,t){return null==e?e:"array"===t?JSON.stringify(e):`${e}`}_deserializeQueryParams(e,t){R(this,e,t,((e,r,n)=>{n&&(delete t[e],t[n.prop]=n.route.deserializeQueryParam(r,n.urlKey,n.type))}))}_deserializeQueryParam(e,t){return null==e?e:"boolean"===t?"true"===e:"number"===t?Number(e).valueOf():"array"===t?(0,s.A)(JSON.parse(e)):e}_pruneDefaultQueryParamValues(e,t){let r=this._queryParamsFor(e) +t[e]=this._serializeQueryParam(r,(0,a.typeOf)(r))}}))}_serializeQueryParam(e,t){return null==e?e:"array"===t?JSON.stringify(e):`${e}`}_deserializeQueryParams(e,t){S(this,e,t,((e,r,n)=>{n&&(delete t[e],t[n.prop]=n.route.deserializeQueryParam(r,n.urlKey,n.type))}))}_deserializeQueryParam(e,t){return null==e?e:"boolean"===t?"true"===e:"number"===t?Number(e).valueOf():"array"===t?(0,s.A)(JSON.parse(e)):e}_pruneDefaultQueryParamValues(e,t){let r=this._queryParamsFor(e) for(let n in t){let e=r.map[n] e&&e.serializedDefaultValue===t[n]&&delete t[n]}}_doTransition(e,t,r,n){let i=e||(0,o.getActiveTargetName)(this._routerMicrolib) this._initialTransitionStarted=!0 let s={} this._processActiveTransitionQueryParams(i,t,s,r),Object.assign(s,r),this._prepareQueryParams(i,t,s,Boolean(n)) let a=this._routerMicrolib.transitionTo(i,...t,{queryParams:s}) -return S(a,this),a}_processActiveTransitionQueryParams(e,t,r,n){if(!this._routerMicrolib.activeTransition)return +return R(a,this),a}_processActiveTransitionQueryParams(e,t,r,n){if(!this._routerMicrolib.activeTransition)return let i={},o=this._qpUpdates,s=(0,p.getFullQueryParams)(this,this._routerMicrolib.activeTransition[d.STATE_SYMBOL]) for(let a in s)o.has(a)||(i[a]=s[a]) this._fullyScopeQueryParams(e,t,n),this._fullyScopeQueryParams(e,t,i),Object.assign(r,i)}_prepareQueryParams(e,t,r,n){let i=k(this,e,t) @@ -1695,9 +1702,9 @@ v(e,((e,i)=>{if(i!==n){let t=w(e,"loading") if(t)return r.intermediateTransitionTo(t),!1}let o=O(e,"loading") return o?(r.intermediateTransitionTo(o),!1):t.pivotHandler!==e}))}} function O(e,t){let r=(0,n.getOwner)(e),{routeName:i,fullRouteName:o,_router:s}=e,a=`${o}_${t}` -return C(r,s,`${i}_${t}`,a)?a:""}function w(e,t){let r=(0,n.getOwner)(e),{routeName:i,fullRouteName:o,_router:s}=e,a="application"===o?t:`${o}.${t}` -return C(r,s,"application"===i?t:`${i}.${t}`,a)?a:""}function C(e,t,r,n){let i=t.hasRoute(n),o=e.factoryFor(`template:${r}`)||e.factoryFor(`route:${r}`) -return i&&o}function E(e,t,r,n){if(!e){if(t)return +return E(r,s,`${i}_${t}`,a)?a:""}function w(e,t){let r=(0,n.getOwner)(e),{routeName:i,fullRouteName:o,_router:s}=e,a="application"===o?t:`${o}.${t}` +return E(r,s,"application"===i?t:`${i}.${t}`,a)?a:""}function E(e,t,r,n){let i=t.hasRoute(n),o=e.factoryFor(`template:${r}`)||e.factoryFor(`route:${r}`) +return i&&o}function C(e,t,r,n){if(!e){if(t)return throw new Error(`Can't trigger action '${r}' because your app hasn't finished transitioning into its first route. To trigger an action on destination routes during a transition, you can call \`.send()\` on the \`Transition\` object passed to the \`model/beforeModel/afterModel\` hooks.`)}let i,o,s,a=!1 for(let u=e.length-1;u>=0;u--)if(i=e[u],o=i.route,s=o&&o.actions&&o.actions[r],s){if(!0!==s.apply(o,n))return void("error"===r&&o._router._markErrorAsHandled(n[0])) a=!0}let l=_[r] @@ -1706,9 +1713,9 @@ else if(!a&&!t)throw new Error(`Nothing handled the action '${r}'. If you did ha for(let s of i)s.isResolved?o[s.name]=s.params:o[s.name]=s.serialize(s.context) return n}function T(e){let t=e._routerMicrolib.currentRouteInfos if(0===t.length)return -let n=y._routePath(t),i=t[t.length-1],o=i.name,s=e.location,a=s.getURL();(0,r.set)(e,"currentPath",n),(0,r.set)(e,"currentRouteName",o),(0,r.set)(e,"currentURL",a)}function S(e,t){let r=new i.RouterState(t,t._routerMicrolib,e[d.STATE_SYMBOL]) +let n=y._routePath(t),i=t[t.length-1],o=i.name,s=e.location,a=s.getURL();(0,r.set)(e,"currentPath",n),(0,r.set)(e,"currentRouteName",o),(0,r.set)(e,"currentURL",a)}function R(e,t){let r=new i.RouterState(t,t._routerMicrolib,e[d.STATE_SYMBOL]) t.currentState||t.set("currentState",r),t.set("targetState",r),e.promise=e.catch((e=>{if(!t._isErrorHandled(e))throw e -t._clearHandledError(e)}),"Transition Error")}function R(e,t,r,n){let i=e._queryParamsFor(t) +t._clearHandledError(e)}),"Transition Error")}function S(e,t,r,n){let i=e._queryParamsFor(t) for(let o in r){if(!Object.prototype.hasOwnProperty.call(r,o))continue n(o,r[o],i.map[o])}}y.reopen({didTransition:f,willTransition:m,rootURL:"/",location:"hash",url:(0,r.computed)((function(){let e=(0,r.get)(this,"location") if("string"!=typeof e)return e.getURL()}))}) @@ -1753,9 +1760,9 @@ const i={undefined:0,null:1,boolean:2,number:3,string:4,array:5,object:6,instanc function o(e,t){return Math.sign(e-t)}function s(e){return r.Comparable.detect(e)}})),e("@ember/utils/lib/is-equal",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){if(e&&"function"==typeof e.isEqual)return e.isEqual(t) if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime() -return e===t}})),e("@ember/utils/lib/is_blank",["exports","@ember/utils/lib/is_empty"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return(0,t.default)(e)||"string"==typeof e&&!1===/\S/.test(e)}})) -e("@ember/utils/lib/is_empty",["exports","@ember/object","@ember/-internals/metal"],(function(e,t,r){"use strict" +return e===t}})) +e("@ember/utils/lib/is_blank",["exports","@ember/utils/lib/is_empty"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return(0,t.default)(e)||"string"==typeof e&&!1===/\S/.test(e)}})),e("@ember/utils/lib/is_empty",["exports","@ember/object","@ember/-internals/metal"],(function(e,t,r){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){if(null==e)return!0 if(!(0,r.hasUnknownProperty)(e)&&"number"==typeof e.size)return!e.size if("object"==typeof e){let r=(0,t.get)(e,"size") @@ -1772,82 +1779,73 @@ let i=r[n.call(e)]||"object" return i} const r={"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object AsyncFunction]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regexp","[object Object]":"object","[object FileList]":"filelist"},{toString:n}=Object.prototype})),e("@ember/version/index",["exports","ember/version"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"VERSION",{enumerable:!0,get:function(){return t.default}})})),e("@glimmer/debug",["exports","@glimmer/util","@glimmer/vm"],(function(e,t,r){"use strict" -function n(e){let t=new Array(e) -for(let r=0;r{o.push(` ${e.name} = ${r+t},`),i=t})),o.push(` Size = ${i+r+1},`),o.push("}") let s,a=o.join("\n") -s=n?d` +s=n?p` export function is${e}(value: number): value is ${e} { return value >= ${r} && value <= ${n}; } - `:d` + `:p` export function is${e}(value: number): value is ${e} { return value >= ${r}; } ` return{enumString:a,predicate:s}},e.buildMetas=function(e,t){let r=[] -for(let n of Object.keys(t))r.push(h(e,t,n)) -return r.join("\n\n")},e.buildSingleMeta=h,e.check=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:T -if("function"==typeof t)return t(e),e +for(let n of Object.keys(t))r.push(d(e,t,n)) +return r.join("\n\n")},e.buildSingleMeta=d,e.check=function(e,t,r=k){if("function"==typeof t)return t(e),e if(t.validate(e))return e -throw new Error(r(e,t.expected()))},e.debug=function(e,t,r){return},e.debugSlice=function(e,t,r){},e.expectStackChange=function(e,t,r){let n=e.sp-S +throw new Error(r(e,t.expected()))},e.debug=function(e,t,r){return},e.debugSlice=function(e,t,r){},e.expectStackChange=function(e,t,r){let n=e.sp-T if(n===t)return -throw new Error(`Expected stack to change by ${t}, but it changed by ${n} in ${r}`)},e.logOpcode=function(e,t){},e.normalize=a,e.normalizeAll=function(e){let t=p(e.machine),r=p(e.syscall) -return{machine:t,syscall:r}},e.normalizeParsed=p,e.opcodeMetadata=function(e,t){let r=t?o[e]:i[e] -return r||null},e.recordStackSize=function(e){S=e},e.strip=d,e.wrap=function(e){return new class{validate(t){return e().validate(t)}expected(){return e().expected()}}} -const i=n(r.Op.Size),o=n(r.MachineOp.Size) -o[r.MachineOp.PushFrame]={name:"PushFrame",mnemonic:"pushf",before:null,stackChange:2,ops:[],operands:0,check:!0},o[r.MachineOp.PopFrame]={name:"PopFrame",mnemonic:"popf",before:null,stackChange:-2,ops:[],operands:0,check:!1},o[r.MachineOp.InvokeVirtual]={name:"InvokeVirtual",mnemonic:"vcall",before:null,stackChange:-1,ops:[],operands:0,check:!0},o[r.MachineOp.InvokeStatic]={name:"InvokeStatic",mnemonic:"scall",before:null,stackChange:0,ops:[{name:"offset",type:"u32"}],operands:1,check:!0},o[r.MachineOp.Jump]={name:"Jump",mnemonic:"goto",before:null,stackChange:0,ops:[{name:"to",type:"u32"}],operands:1,check:!0},o[r.MachineOp.Return]={name:"Return",mnemonic:"ret",before:null,stackChange:0,ops:[],operands:0,check:!1},o[r.MachineOp.ReturnTo]={name:"ReturnTo",mnemonic:"setra",before:null,stackChange:0,ops:[{name:"offset",type:"i32"}],operands:1,check:!0},i[r.Op.Helper]={name:"Helper",mnemonic:"ncall",before:null,stackChange:null,ops:[{name:"helper",type:"handle"}],operands:1,check:!0},i[r.Op.DynamicHelper]={name:"DynamicHelper",mnemonic:"dynamiccall",before:null,stackChange:null,ops:[],operands:0,check:!0},i[r.Op.SetNamedVariables]={name:"SetNamedVariables",mnemonic:"vsargs",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},i[r.Op.SetBlocks]={name:"SetBlocks",mnemonic:"vbblocks",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},i[r.Op.SetVariable]={name:"SetVariable",mnemonic:"sbvar",before:null,stackChange:-1,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},i[r.Op.SetBlock]={name:"SetBlock",mnemonic:"sblock",before:null,stackChange:-3,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},i[r.Op.GetVariable]={name:"GetVariable",mnemonic:"symload",before:null,stackChange:1,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},i[r.Op.GetProperty]={name:"GetProperty",mnemonic:"getprop",before:null,stackChange:0,ops:[{name:"property",type:"str"}],operands:1,check:!0},i[r.Op.GetBlock]={name:"GetBlock",mnemonic:"blockload",before:null,stackChange:1,ops:[{name:"block",type:"u32"}],operands:1,check:!0},i[r.Op.SpreadBlock]={name:"SpreadBlock",mnemonic:"blockspread",before:null,stackChange:2,ops:[],operands:0,check:!0},i[r.Op.HasBlock]={name:"HasBlock",mnemonic:"hasblockload",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.HasBlockParams]={name:"HasBlockParams",mnemonic:"hasparamsload",before:null,stackChange:-2,ops:[],operands:0,check:!0},i[r.Op.Concat]={name:"Concat",mnemonic:"concat",before:null,stackChange:null,ops:[{name:"count",type:"u32"}],operands:1,check:!0},i[r.Op.IfInline]={name:"IfInline",mnemonic:"ifinline",before:null,stackChange:-2,ops:[{name:"count",type:"u32"}],operands:1,check:!0},i[r.Op.Not]={name:"Not",mnemonic:"not",before:null,stackChange:0,ops:[{name:"count",type:"u32"}],operands:1,check:!0},i[r.Op.Constant]={name:"Constant",mnemonic:"rconstload",before:null,stackChange:1,ops:[{name:"constant",type:"unknown"}],operands:1,check:!0},i[r.Op.ConstantReference]={name:"ConstantReference",mnemonic:"rconstrefload",before:null,stackChange:1,ops:[{name:"constant",type:"unknown"}],operands:1,check:!0},i[r.Op.Primitive]={name:"Primitive",mnemonic:"pconstload",before:null,stackChange:1,ops:[{name:"constant",type:"primitive"}],operands:1,check:!0},i[r.Op.PrimitiveReference]={name:"PrimitiveReference",mnemonic:"ptoref",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.ReifyU32]={name:"ReifyU32",mnemonic:"reifyload",before:null,stackChange:1,ops:[],operands:0,check:!0},i[r.Op.Dup]={name:"Dup",mnemonic:"dup",before:null,stackChange:1,ops:[{name:"register",type:"u32"},{name:"offset",type:"u32"}],operands:2,check:!0},i[r.Op.Pop]={name:"Pop",mnemonic:"pop",before:null,stackChange:0,ops:[{name:"count",type:"u32"}],operands:1,check:!1},i[r.Op.Load]={name:"Load",mnemonic:"put",before:null,stackChange:-1,ops:[{name:"register",type:"u32"}],operands:1,check:!0} -i[r.Op.Fetch]={name:"Fetch",mnemonic:"regload",before:null,stackChange:1,ops:[{name:"register",type:"u32"}],operands:1,check:!0},i[r.Op.RootScope]={name:"RootScope",mnemonic:"rscopepush",before:null,stackChange:0,ops:[{name:"symbols",type:"u32"}],operands:1,check:!0},i[r.Op.VirtualRootScope]={name:"VirtualRootScope",mnemonic:"vrscopepush",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},i[r.Op.ChildScope]={name:"ChildScope",mnemonic:"cscopepush",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.PopScope]={name:"PopScope",mnemonic:"scopepop",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.Text]={name:"Text",mnemonic:"apnd_text",before:null,stackChange:0,ops:[{name:"contents",type:"str"}],operands:1,check:!0},i[r.Op.Comment]={name:"Comment",mnemonic:"apnd_comment",before:null,stackChange:0,ops:[{name:"contents",type:"str"}],operands:1,check:!0},i[r.Op.AppendHTML]={name:"AppendHTML",mnemonic:"apnd_dynhtml",before:null,stackChange:-1,ops:[],operands:0,check:!0},i[r.Op.AppendSafeHTML]={name:"AppendSafeHTML",mnemonic:"apnd_dynshtml",before:null,stackChange:-1,ops:[],operands:0,check:!0},i[r.Op.AppendDocumentFragment]={name:"AppendDocumentFragment",mnemonic:"apnd_dynfrag",before:null,stackChange:-1,ops:[],operands:0,check:!0},i[r.Op.AppendNode]={name:"AppendNode",mnemonic:"apnd_dynnode",before:null,stackChange:-1,ops:[],operands:0,check:!0},i[r.Op.AppendText]={name:"AppendText",mnemonic:"apnd_dyntext",before:null,stackChange:-1,ops:[],operands:0,check:!0},i[r.Op.OpenElement]={name:"OpenElement",mnemonic:"apnd_tag",before:null,stackChange:0,ops:[{name:"tag",type:"str"}],operands:1,check:!0},i[r.Op.OpenDynamicElement]={name:"OpenDynamicElement",mnemonic:"apnd_dyntag",before:null,stackChange:-1,ops:[],operands:0,check:!0},i[r.Op.PushRemoteElement]={name:"PushRemoteElement",mnemonic:"apnd_remotetag",before:null,stackChange:-3,ops:[],operands:0,check:!0},i[r.Op.StaticAttr]={name:"StaticAttr",mnemonic:"apnd_attr",before:null,stackChange:0,ops:[{name:"name",type:"str"},{name:"value",type:"str"},{name:"namespace",type:"option-str"}],operands:3,check:!0},i[r.Op.DynamicAttr]={name:"DynamicAttr",mnemonic:"apnd_dynattr",before:null,stackChange:-1,ops:[{name:"name",type:"str"},{name:"trusting",type:"bool"},{name:"namespace",type:"option-str"}],operands:3,check:!0},i[r.Op.ComponentAttr]={name:"ComponentAttr",mnemonic:"apnd_cattr",before:null,stackChange:-1,ops:[{name:"name",type:"str"},{name:"trusting",type:"bool"},{name:"namespace",type:"option-str"}],operands:3,check:!0},i[r.Op.FlushElement]={name:"FlushElement",mnemonic:"apnd_flushtag",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.CloseElement]={name:"CloseElement",mnemonic:"apnd_closetag",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.PopRemoteElement]={name:"PopRemoteElement",mnemonic:"apnd_closeremotetag",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.Modifier]={name:"Modifier",mnemonic:"apnd_modifier",before:null,stackChange:-1,ops:[{name:"helper",type:"handle"}],operands:1,check:!0},i[r.Op.BindDynamicScope]={name:"BindDynamicScope",mnemonic:"setdynscope",before:null,stackChange:null,ops:[{name:"names",type:"str-array"}],operands:1,check:!0},i[r.Op.PushDynamicScope]={name:"PushDynamicScope",mnemonic:"dynscopepush",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.PopDynamicScope]={name:"PopDynamicScope",mnemonic:"dynscopepop",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.CompileBlock]={name:"CompileBlock",mnemonic:"cmpblock",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.PushBlockScope]={name:"PushBlockScope",mnemonic:"scopeload",before:null,stackChange:1,ops:[{name:"scope",type:"scope"}],operands:1,check:!0},i[r.Op.PushSymbolTable]={name:"PushSymbolTable",mnemonic:"dsymload",before:null,stackChange:1,ops:[{name:"table",type:"symbol-table"}],operands:1,check:!0},i[r.Op.InvokeYield]={name:"InvokeYield",mnemonic:"invokeyield",before:null,stackChange:null,ops:[],operands:0,check:!0},i[r.Op.JumpIf]={name:"JumpIf",mnemonic:"iftrue",before:null,stackChange:-1,ops:[{name:"to",type:"u32"}],operands:1,check:!0} -i[r.Op.JumpUnless]={name:"JumpUnless",mnemonic:"iffalse",before:null,stackChange:-1,ops:[{name:"to",type:"u32"}],operands:1,check:!0},i[r.Op.JumpEq]={name:"JumpEq",mnemonic:"ifeq",before:null,stackChange:0,ops:[{name:"to",type:"i32"},{name:"comparison",type:"i32"}],operands:2,check:!0},i[r.Op.AssertSame]={name:"AssertSame",mnemonic:"assert_eq",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.Enter]={name:"Enter",mnemonic:"blk_start",before:null,stackChange:0,ops:[{name:"args",type:"u32"}],operands:1,check:!0},i[r.Op.Exit]={name:"Exit",mnemonic:"blk_end",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.ToBoolean]={name:"ToBoolean",mnemonic:"anytobool",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.EnterList]={name:"EnterList",mnemonic:"list_start",before:null,stackChange:null,ops:[{name:"address",type:"u32"},{name:"address",type:"u32"}],operands:2,check:!0},i[r.Op.ExitList]={name:"ExitList",mnemonic:"list_end",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.Iterate]={name:"Iterate",mnemonic:"iter",before:null,stackChange:0,ops:[{name:"end",type:"u32"}],operands:1,check:!1},i[r.Op.Main]={name:"Main",mnemonic:"main",before:null,stackChange:-2,ops:[{name:"state",type:"register"}],operands:1,check:!0},i[r.Op.ContentType]={name:"ContentType",mnemonic:"ctload",before:null,stackChange:1,ops:[],operands:0,check:!0},i[r.Op.DynamicContentType]={name:"DynamicContentType",mnemonic:"dctload",before:null,stackChange:1,ops:[],operands:0,check:!0},i[r.Op.Curry]={name:"Curry",mnemonic:"curry",before:null,stackChange:null,ops:[{name:"type",type:"u32"},{name:"is-strict",type:"bool"}],operands:2,check:!0},i[r.Op.PushComponentDefinition]={name:"PushComponentDefinition",mnemonic:"cmload",before:null,stackChange:1,ops:[{name:"spec",type:"handle"}],operands:1,check:!0},i[r.Op.PushDynamicComponentInstance]={name:"PushDynamicComponentInstance",mnemonic:"dciload",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.ResolveDynamicComponent]={name:"ResolveDynamicComponent",mnemonic:"cdload",before:null,stackChange:0,ops:[{name:"owner",type:"owner"}],operands:1,check:!0},i[r.Op.PushArgs]={name:"PushArgs",mnemonic:"argsload",before:null,stackChange:null,ops:[{name:"names",type:"str-array"},{name:"block-names",type:"str-array"},{name:"flags",type:"u32"}],operands:3,check:!0},i[r.Op.PushEmptyArgs]={name:"PushEmptyArgs",mnemonic:"emptyargsload",before:null,stackChange:1,ops:[],operands:0,check:!0},i[r.Op.PopArgs]={name:"PopArgs",mnemonic:"argspop",before:null,stackChange:null,ops:[],operands:0,check:!0},i[r.Op.PrepareArgs]={name:"PrepareArgs",mnemonic:"argsprep",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!1},i[r.Op.CaptureArgs]={name:"CaptureArgs",mnemonic:"argscapture",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.CreateComponent]={name:"CreateComponent",mnemonic:"comp_create",before:null,stackChange:0,ops:[{name:"flags",type:"u32"},{name:"state",type:"register"}],operands:2,check:!0},i[r.Op.RegisterComponentDestructor]={name:"RegisterComponentDestructor",mnemonic:"comp_dest",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},i[r.Op.PutComponentOperations]={name:"PutComponentOperations",mnemonic:"comp_elops",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.GetComponentSelf]={name:"GetComponentSelf",mnemonic:"comp_selfload",before:null,stackChange:1,ops:[{name:"state",type:"register"}],operands:1,check:!0},i[r.Op.GetComponentTagName]={name:"GetComponentTagName",mnemonic:"comp_tagload",before:null,stackChange:1,ops:[{name:"state",type:"register"}],operands:1,check:!0},i[r.Op.GetComponentLayout]={name:"GetComponentLayout",mnemonic:"comp_layoutload",before:null,stackChange:2,ops:[{name:"state",type:"register"}],operands:1,check:!0},i[r.Op.BindEvalScope]={name:"BindEvalScope",mnemonic:"eval_scope",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},i[r.Op.SetupForEval]={name:"SetupForEval",mnemonic:"eval_setup",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},i[r.Op.PopulateLayout]={name:"PopulateLayout",mnemonic:"comp_layoutput",before:null,stackChange:-2,ops:[{name:"state",type:"register"}],operands:1,check:!0} -i[r.Op.InvokeComponentLayout]={name:"InvokeComponentLayout",mnemonic:"comp_invokelayout",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},i[r.Op.BeginComponentTransaction]={name:"BeginComponentTransaction",mnemonic:"comp_begin",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.CommitComponentTransaction]={name:"CommitComponentTransaction",mnemonic:"comp_commit",before:null,stackChange:0,ops:[],operands:0,check:!0},i[r.Op.DidCreateElement]={name:"DidCreateElement",mnemonic:"comp_created",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},i[r.Op.DidRenderLayout]={name:"DidRenderLayout",mnemonic:"comp_rendered",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},i[r.Op.ResolveMaybeLocal]={name:"ResolveMaybeLocal",mnemonic:"eval_varload",before:null,stackChange:1,ops:[{name:"local",type:"str"}],operands:1,check:!0},i[r.Op.Debugger]={name:"Debugger",mnemonic:"debugger",before:null,stackChange:0,ops:[{name:"symbols",type:"str-array"},{name:"debugInfo",type:"array"}],operands:2,check:!0} -const s=e.OPERAND_TYPES=["u32","i32","owner","handle","str","option-str","array","str-array","bool","primitive","register","unknown","symbol-table","scope"] -function a(e,t){let r +throw new Error(`Expected stack to change by ${t}, but it changed by ${n} in ${r}`)},e.logOpcode=function(e,t){},e.normalize=s,e.normalizeAll=function(e){let t=c(e.machine),r=c(e.syscall) +return{machine:t,syscall:r}},e.normalizeParsed=c,e.opcodeMetadata=function(e,t){let r=t?i[e]:n[e] +return r||null},e.recordStackSize=function(e){T=e},e.strip=p,e.wrap=function(e){return new class{validate(t){return e().validate(t)}expected(){return e().expected()}}} +const n=new Array(r.Op.Size).fill(null),i=new Array(r.Op.Size).fill(null) +i[r.MachineOp.PushFrame]={name:"PushFrame",mnemonic:"pushf",before:null,stackChange:2,ops:[],operands:0,check:!0},i[r.MachineOp.PopFrame]={name:"PopFrame",mnemonic:"popf",before:null,stackChange:-2,ops:[],operands:0,check:!1},i[r.MachineOp.InvokeVirtual]={name:"InvokeVirtual",mnemonic:"vcall",before:null,stackChange:-1,ops:[],operands:0,check:!0},i[r.MachineOp.InvokeStatic]={name:"InvokeStatic",mnemonic:"scall",before:null,stackChange:0,ops:[{name:"offset",type:"u32"}],operands:1,check:!0},i[r.MachineOp.Jump]={name:"Jump",mnemonic:"goto",before:null,stackChange:0,ops:[{name:"to",type:"u32"}],operands:1,check:!0},i[r.MachineOp.Return]={name:"Return",mnemonic:"ret",before:null,stackChange:0,ops:[],operands:0,check:!1},i[r.MachineOp.ReturnTo]={name:"ReturnTo",mnemonic:"setra",before:null,stackChange:0,ops:[{name:"offset",type:"i32"}],operands:1,check:!0},n[r.Op.Helper]={name:"Helper",mnemonic:"ncall",before:null,stackChange:null,ops:[{name:"helper",type:"handle"}],operands:1,check:!0},n[r.Op.DynamicHelper]={name:"DynamicHelper",mnemonic:"dynamiccall",before:null,stackChange:null,ops:[],operands:0,check:!0},n[r.Op.SetNamedVariables]={name:"SetNamedVariables",mnemonic:"vsargs",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},n[r.Op.SetBlocks]={name:"SetBlocks",mnemonic:"vbblocks",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},n[r.Op.SetVariable]={name:"SetVariable",mnemonic:"sbvar",before:null,stackChange:-1,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},n[r.Op.SetBlock]={name:"SetBlock",mnemonic:"sblock",before:null,stackChange:-3,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},n[r.Op.GetVariable]={name:"GetVariable",mnemonic:"symload",before:null,stackChange:1,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},n[r.Op.GetProperty]={name:"GetProperty",mnemonic:"getprop",before:null,stackChange:0,ops:[{name:"property",type:"str"}],operands:1,check:!0},n[r.Op.GetBlock]={name:"GetBlock",mnemonic:"blockload",before:null,stackChange:1,ops:[{name:"block",type:"u32"}],operands:1,check:!0},n[r.Op.SpreadBlock]={name:"SpreadBlock",mnemonic:"blockspread",before:null,stackChange:2,ops:[],operands:0,check:!0},n[r.Op.HasBlock]={name:"HasBlock",mnemonic:"hasblockload",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.HasBlockParams]={name:"HasBlockParams",mnemonic:"hasparamsload",before:null,stackChange:-2,ops:[],operands:0,check:!0},n[r.Op.Concat]={name:"Concat",mnemonic:"concat",before:null,stackChange:null,ops:[{name:"count",type:"u32"}],operands:1,check:!0},n[r.Op.IfInline]={name:"IfInline",mnemonic:"ifinline",before:null,stackChange:-2,ops:[{name:"count",type:"u32"}],operands:1,check:!0},n[r.Op.Not]={name:"Not",mnemonic:"not",before:null,stackChange:0,ops:[{name:"count",type:"u32"}],operands:1,check:!0},n[r.Op.Constant]={name:"Constant",mnemonic:"rconstload",before:null,stackChange:1,ops:[{name:"constant",type:"unknown"}],operands:1,check:!0},n[r.Op.ConstantReference]={name:"ConstantReference",mnemonic:"rconstrefload",before:null,stackChange:1,ops:[{name:"constant",type:"unknown"}],operands:1,check:!0},n[r.Op.Primitive]={name:"Primitive",mnemonic:"pconstload",before:null,stackChange:1,ops:[{name:"constant",type:"primitive"}],operands:1,check:!0},n[r.Op.PrimitiveReference]={name:"PrimitiveReference",mnemonic:"ptoref",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.ReifyU32]={name:"ReifyU32",mnemonic:"reifyload",before:null,stackChange:1,ops:[],operands:0,check:!0},n[r.Op.Dup]={name:"Dup",mnemonic:"dup",before:null,stackChange:1,ops:[{name:"register",type:"u32"},{name:"offset",type:"u32"}],operands:2,check:!0},n[r.Op.Pop]={name:"Pop",mnemonic:"pop",before:null,stackChange:0,ops:[{name:"count",type:"u32"}],operands:1,check:!1},n[r.Op.Load]={name:"Load",mnemonic:"put",before:null,stackChange:-1,ops:[{name:"register",type:"u32"}],operands:1,check:!0} +n[r.Op.Fetch]={name:"Fetch",mnemonic:"regload",before:null,stackChange:1,ops:[{name:"register",type:"u32"}],operands:1,check:!0},n[r.Op.RootScope]={name:"RootScope",mnemonic:"rscopepush",before:null,stackChange:0,ops:[{name:"symbols",type:"u32"}],operands:1,check:!0},n[r.Op.VirtualRootScope]={name:"VirtualRootScope",mnemonic:"vrscopepush",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},n[r.Op.ChildScope]={name:"ChildScope",mnemonic:"cscopepush",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.PopScope]={name:"PopScope",mnemonic:"scopepop",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.Text]={name:"Text",mnemonic:"apnd_text",before:null,stackChange:0,ops:[{name:"contents",type:"str"}],operands:1,check:!0},n[r.Op.Comment]={name:"Comment",mnemonic:"apnd_comment",before:null,stackChange:0,ops:[{name:"contents",type:"str"}],operands:1,check:!0},n[r.Op.AppendHTML]={name:"AppendHTML",mnemonic:"apnd_dynhtml",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.AppendSafeHTML]={name:"AppendSafeHTML",mnemonic:"apnd_dynshtml",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.AppendDocumentFragment]={name:"AppendDocumentFragment",mnemonic:"apnd_dynfrag",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.AppendNode]={name:"AppendNode",mnemonic:"apnd_dynnode",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.AppendText]={name:"AppendText",mnemonic:"apnd_dyntext",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.OpenElement]={name:"OpenElement",mnemonic:"apnd_tag",before:null,stackChange:0,ops:[{name:"tag",type:"str"}],operands:1,check:!0},n[r.Op.OpenDynamicElement]={name:"OpenDynamicElement",mnemonic:"apnd_dyntag",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.PushRemoteElement]={name:"PushRemoteElement",mnemonic:"apnd_remotetag",before:null,stackChange:-3,ops:[],operands:0,check:!0},n[r.Op.StaticAttr]={name:"StaticAttr",mnemonic:"apnd_attr",before:null,stackChange:0,ops:[{name:"name",type:"str"},{name:"value",type:"str"},{name:"namespace",type:"option-str"}],operands:3,check:!0},n[r.Op.DynamicAttr]={name:"DynamicAttr",mnemonic:"apnd_dynattr",before:null,stackChange:-1,ops:[{name:"name",type:"str"},{name:"trusting",type:"bool"},{name:"namespace",type:"option-str"}],operands:3,check:!0},n[r.Op.ComponentAttr]={name:"ComponentAttr",mnemonic:"apnd_cattr",before:null,stackChange:-1,ops:[{name:"name",type:"str"},{name:"trusting",type:"bool"},{name:"namespace",type:"option-str"}],operands:3,check:!0},n[r.Op.FlushElement]={name:"FlushElement",mnemonic:"apnd_flushtag",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.CloseElement]={name:"CloseElement",mnemonic:"apnd_closetag",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.PopRemoteElement]={name:"PopRemoteElement",mnemonic:"apnd_closeremotetag",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.Modifier]={name:"Modifier",mnemonic:"apnd_modifier",before:null,stackChange:-1,ops:[{name:"helper",type:"handle"}],operands:1,check:!0},n[r.Op.BindDynamicScope]={name:"BindDynamicScope",mnemonic:"setdynscope",before:null,stackChange:null,ops:[{name:"names",type:"str-array"}],operands:1,check:!0},n[r.Op.PushDynamicScope]={name:"PushDynamicScope",mnemonic:"dynscopepush",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.PopDynamicScope]={name:"PopDynamicScope",mnemonic:"dynscopepop",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.CompileBlock]={name:"CompileBlock",mnemonic:"cmpblock",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.PushBlockScope]={name:"PushBlockScope",mnemonic:"scopeload",before:null,stackChange:1,ops:[{name:"scope",type:"scope"}],operands:1,check:!0},n[r.Op.PushSymbolTable]={name:"PushSymbolTable",mnemonic:"dsymload",before:null,stackChange:1,ops:[{name:"table",type:"symbol-table"}],operands:1,check:!0},n[r.Op.InvokeYield]={name:"InvokeYield",mnemonic:"invokeyield",before:null,stackChange:null,ops:[],operands:0,check:!0},n[r.Op.JumpIf]={name:"JumpIf",mnemonic:"iftrue",before:null,stackChange:-1,ops:[{name:"to",type:"u32"}],operands:1,check:!0} +n[r.Op.JumpUnless]={name:"JumpUnless",mnemonic:"iffalse",before:null,stackChange:-1,ops:[{name:"to",type:"u32"}],operands:1,check:!0},n[r.Op.JumpEq]={name:"JumpEq",mnemonic:"ifeq",before:null,stackChange:0,ops:[{name:"to",type:"i32"},{name:"comparison",type:"i32"}],operands:2,check:!0},n[r.Op.AssertSame]={name:"AssertSame",mnemonic:"assert_eq",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.Enter]={name:"Enter",mnemonic:"blk_start",before:null,stackChange:0,ops:[{name:"args",type:"u32"}],operands:1,check:!0},n[r.Op.Exit]={name:"Exit",mnemonic:"blk_end",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.ToBoolean]={name:"ToBoolean",mnemonic:"anytobool",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.EnterList]={name:"EnterList",mnemonic:"list_start",before:null,stackChange:null,ops:[{name:"address",type:"u32"},{name:"address",type:"u32"}],operands:2,check:!0},n[r.Op.ExitList]={name:"ExitList",mnemonic:"list_end",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.Iterate]={name:"Iterate",mnemonic:"iter",before:null,stackChange:0,ops:[{name:"end",type:"u32"}],operands:1,check:!1},n[r.Op.Main]={name:"Main",mnemonic:"main",before:null,stackChange:-2,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.ContentType]={name:"ContentType",mnemonic:"ctload",before:null,stackChange:1,ops:[],operands:0,check:!0},n[r.Op.DynamicContentType]={name:"DynamicContentType",mnemonic:"dctload",before:null,stackChange:1,ops:[],operands:0,check:!0},n[r.Op.Curry]={name:"Curry",mnemonic:"curry",before:null,stackChange:null,ops:[{name:"type",type:"u32"},{name:"is-strict",type:"bool"}],operands:2,check:!0},n[r.Op.PushComponentDefinition]={name:"PushComponentDefinition",mnemonic:"cmload",before:null,stackChange:1,ops:[{name:"spec",type:"handle"}],operands:1,check:!0},n[r.Op.PushDynamicComponentInstance]={name:"PushDynamicComponentInstance",mnemonic:"dciload",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.ResolveDynamicComponent]={name:"ResolveDynamicComponent",mnemonic:"cdload",before:null,stackChange:0,ops:[{name:"owner",type:"owner"}],operands:1,check:!0},n[r.Op.PushArgs]={name:"PushArgs",mnemonic:"argsload",before:null,stackChange:null,ops:[{name:"names",type:"str-array"},{name:"block-names",type:"str-array"},{name:"flags",type:"u32"}],operands:3,check:!0},n[r.Op.PushEmptyArgs]={name:"PushEmptyArgs",mnemonic:"emptyargsload",before:null,stackChange:1,ops:[],operands:0,check:!0},n[r.Op.PopArgs]={name:"PopArgs",mnemonic:"argspop",before:null,stackChange:null,ops:[],operands:0,check:!0},n[r.Op.PrepareArgs]={name:"PrepareArgs",mnemonic:"argsprep",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!1},n[r.Op.CaptureArgs]={name:"CaptureArgs",mnemonic:"argscapture",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.CreateComponent]={name:"CreateComponent",mnemonic:"comp_create",before:null,stackChange:0,ops:[{name:"flags",type:"u32"},{name:"state",type:"register"}],operands:2,check:!0},n[r.Op.RegisterComponentDestructor]={name:"RegisterComponentDestructor",mnemonic:"comp_dest",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.PutComponentOperations]={name:"PutComponentOperations",mnemonic:"comp_elops",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.GetComponentSelf]={name:"GetComponentSelf",mnemonic:"comp_selfload",before:null,stackChange:1,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.GetComponentTagName]={name:"GetComponentTagName",mnemonic:"comp_tagload",before:null,stackChange:1,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.GetComponentLayout]={name:"GetComponentLayout",mnemonic:"comp_layoutload",before:null,stackChange:2,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.BindEvalScope]={name:"BindEvalScope",mnemonic:"eval_scope",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.SetupForEval]={name:"SetupForEval",mnemonic:"eval_setup",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.PopulateLayout]={name:"PopulateLayout",mnemonic:"comp_layoutput",before:null,stackChange:-2,ops:[{name:"state",type:"register"}],operands:1,check:!0} +n[r.Op.InvokeComponentLayout]={name:"InvokeComponentLayout",mnemonic:"comp_invokelayout",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.BeginComponentTransaction]={name:"BeginComponentTransaction",mnemonic:"comp_begin",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.CommitComponentTransaction]={name:"CommitComponentTransaction",mnemonic:"comp_commit",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.DidCreateElement]={name:"DidCreateElement",mnemonic:"comp_created",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.DidRenderLayout]={name:"DidRenderLayout",mnemonic:"comp_rendered",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.ResolveMaybeLocal]={name:"ResolveMaybeLocal",mnemonic:"eval_varload",before:null,stackChange:1,ops:[{name:"local",type:"str"}],operands:1,check:!0},n[r.Op.Debugger]={name:"Debugger",mnemonic:"debugger",before:null,stackChange:0,ops:[{name:"symbols",type:"str-array"},{name:"debugInfo",type:"array"}],operands:2,check:!0} +const o=e.OPERAND_TYPES=["u32","i32","owner","handle","str","option-str","array","str-array","bool","primitive","register","unknown","symbol-table","scope"] +function s(e,t){let r if(void 0===t.format)throw new Error(`Missing format in ${JSON.stringify(t)}`) r=Array.isArray(t.format)?t.format[0]:t.format let n=Array.isArray(t.format)?function(e){if(!Array.isArray(e))throw new Error(`Expected operands array, got ${JSON.stringify(e)}`) -return e.map(c)}(t.format.slice(1)):[] -return{name:r,mnemonic:e,before:null,stackChange:l(t["operand-stack"]),ops:n,operands:n.length,check:!0!==t.skip}}function l(e){if(void 0===e)return 0 +return e.map(u)}(t.format.slice(1)):[] +return{name:r,mnemonic:e,before:null,stackChange:a(t["operand-stack"]),ops:n,operands:n.length,check:!0!==t.skip}}function a(e){if(void 0===e)return 0 let t=e[0],r=e[1] -return u(t)||u(r)?null:r.length-t.length}function u(e){if(!Array.isArray(e))throw new Error(`Unexpected stack entry: ${JSON.stringify(e)}`) -return e.some((e=>"..."===e.slice(-3)))}function c(e){let[t,r]=e.split(":") -if(n=r,-1!==s.indexOf(n))return{name:t,type:r} +return l(t)||l(r)?null:r.length-t.length}function l(e){if(!Array.isArray(e))throw new Error(`Unexpected stack entry: ${JSON.stringify(e)}`) +return e.some((e=>"..."===e.slice(-3)))}function u(e){let[t,r]=e.split(":") +if(n=r,-1!==o.indexOf(n))return{name:t,type:r} throw new Error(`Expected operand, found ${JSON.stringify(e)}`) -var n}function p(e){let t=Object.create(null) -for(const[r,n]of Object.entries(e))t[r]=a(r,n) -return t}function d(e){let t="" -for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;if(e,t))).join(", ")}]` +var n}function c(e){let t=Object.create(null) +for(const[r,n]of Object.entries(e))t[r]=s(r,n) +return t}function p(e,...t){let r="" +for(let o=0;oh(e,t))).join(", ")}]` let r=["{"] -for(let n of Object.keys(e))r.push(`${" ".repeat(t+2)}${n}: ${f(e[n],t+2)},`) -return r.push(`${" ".repeat(t)}}`),r.join("\n")}class m{constructor(e){this.expectedType=e}validate(e){return typeof e===this.expectedType}expected(){return`typeof ${this.expectedType}`}}class g{constructor(e){this.Class=e}validate(e){return!!e&&e instanceof this.Class}expected(){return`an instance of ${this.Class.name}`}}class b{constructor(e,t){this.checker=e,this.emptyValue=t}validate(e){return e===this.emptyValue||this.checker.validate(e)}expected(){return`${this.checker.expected()} or null`}}class y{constructor(e){this.checker=e}validate(e){return null==e||this.checker.validate(e)}expected(){return`${this.checker.expected()} or null or undefined`}}class v{constructor(e,t){this.left=e,this.right=t}validate(e){return this.left.validate(e)||this.right.validate(e)}expected(){return`${this.left.expected()} or ${this.right.expected()}`}}class _{constructor(e,t){this.value=e,this.desc=t}validate(e){return e===this.value}expected(){return this.desc}}class O{constructor(e){this.checkers=e}validate(e){return"object"==typeof e&&(null!=e&&Object.entries(this.checkers).every((t=>{let[r,n]=t -return r in e&&n.validate(e[r])})))}expected(){return`{ ${Object.entries(this.checkers).map((e=>{let[t,r]=e -return`${t}: ${r.expected()}`})).join(",")} }`}}class w{constructor(e){this.checker=e}validate(e){return null!=e&&(!!Array.isArray(e)&&e.every((e=>this.checker.validate(e))))}expected(){return`Array<${this.checker.expected()}>`}}class C{constructor(e){this.checker=e}validate(e){if(!("object"==typeof e&&null!==e&&null===Object.getPrototypeOf(e)))return!1 +for(let n of Object.keys(e))r.push(`${" ".repeat(t+2)}${n}: ${h(e[n],t+2)},`) +return r.push(`${" ".repeat(t)}}`),r.join("\n")}class f{constructor(e){this.expectedType=e}validate(e){return typeof e===this.expectedType}expected(){return`typeof ${this.expectedType}`}}class m{constructor(e){this.Class=e}validate(e){return!!e&&e instanceof this.Class}expected(){return`an instance of ${this.Class.name}`}}class g{constructor(e,t){this.checker=e,this.emptyValue=t}validate(e){return e===this.emptyValue||this.checker.validate(e)}expected(){return`${this.checker.expected()} or null`}}class b{constructor(e){this.checker=e}validate(e){return null==e||this.checker.validate(e)}expected(){return`${this.checker.expected()} or null or undefined`}}class y{constructor(e,t){this.left=e,this.right=t}validate(e){return this.left.validate(e)||this.right.validate(e)}expected(){return`${this.left.expected()} or ${this.right.expected()}`}}class v{constructor(e,t){this.value=e,this.desc=t}validate(e){return e===this.value}expected(){return this.desc}}class _{constructor(e){this.checkers=e}validate(e){return"object"==typeof e&&(null!=e&&Object.entries(this.checkers).every((([t,r])=>t in e&&r.validate(e[t]))))}expected(){return`{ ${Object.entries(this.checkers).map((([e,t])=>`${e}: ${t.expected()}`)).join(",")} }`}}class O{constructor(e){this.checker=e}validate(e){return null!=e&&(!!Array.isArray(e)&&e.every((e=>this.checker.validate(e))))}expected(){return`Array<${this.checker.expected()}>`}}class w{constructor(e){this.checker=e}validate(e){if(!("object"==typeof e&&null!==e&&null===Object.getPrototypeOf(e)))return!1 let{checker:t}=this for(let r in e)if(!t.validate(e[r]))return!1 -return!0}expected(){return"a primitive"}}function E(e){return new O(e)}function k(e){return new w(e)}function T(e,t){return`Got ${e}, expected:\n${t}`}let S=0 -e.CheckPrimitive=new class{validate(e){return"string"!=typeof e||"number"==typeof e||"string"==typeof e||null==e}expected(){return"a primitive"}},e.CheckFunction=new m("function") -const R=e.CheckNumber=new m("number"),P=e.CheckBoolean=new m("boolean"),x=(e.CheckHandle=R,e.CheckString=new m("string")),A=(e.CheckNull=new class{validate(e){return null===e}expected(){return"null"}},e.CheckUnknown=new class{constructor(){this.type=void 0}validate(e){return!0}expected(){return"any"}}) +return!0}expected(){return"a primitive"}}function E(e){return new _(e)}function C(e){return new O(e)}function k(e,t){return`Got ${e}, expected:\n${t}`}let T=0 +e.CheckPrimitive=new class{validate(e){return"string"!=typeof e||"number"==typeof e||"string"==typeof e||null==e}expected(){return"a primitive"}},e.CheckFunction=new f("function") +const R=e.CheckNumber=new f("number"),S=e.CheckBoolean=new f("boolean"),P=(e.CheckHandle=R,e.CheckString=new f("string")),A=(e.CheckNull=new class{validate(e){return null===e}expected(){return"null"}},e.CheckUndefined=new class{validate(e){return void 0===e}expected(){return"undefined"}},e.CheckUnknown=new class{constructor(){this.type=void 0}validate(e){return!0}expected(){return"any"}}) e.CheckSafeString=new class{validate(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}expected(){return"SafeString"}},e.CheckObject=new class{validate(e){return"function"==typeof e||"object"==typeof e&&null!==e}expected(){return"an object or function (valid WeakMap key)"}} -function M(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:String(e) -return new _(e,t)}e.CheckBlockSymbolTable=E({parameters:k(R)}),e.CheckProgramSymbolTable=E({hasEval:P,symbols:k(x)}),e.CheckElement=E({nodeType:M(1),tagName:x,nextSibling:A}),e.CheckDocumentFragment=E({nodeType:M(11),nextSibling:A}),e.CheckNode=E({nodeType:R,nextSibling:A})})),e("@glimmer/destroyable",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" +function x(e,t=String(e)){return new v(e,t)}e.CheckBlockSymbolTable=E({parameters:C(R)}),e.CheckProgramSymbolTable=E({hasEval:S,symbols:C(P)}),e.CheckElement=E({nodeType:x(1),tagName:P,nextSibling:A}),e.CheckDocumentFragment=E({nodeType:x(11),nextSibling:A}),e.CheckNode=E({nodeType:R,nextSibling:A})})),e("@glimmer/destroyable",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e._hasDestroyableChildren=function(e){let t=i.get(e) return void 0!==t&&null!==t.children},e.assertDestroyablesDestroyed=void 0,e.associateDestroyableChild=function(e,t){0 let r=l(e),n=l(t) return r.children=o(r.children,t),n.parents=o(n.parents,e),t},e.destroy=u,e.destroyChildren=function(e){let{children:t}=l(e) s(t,u)},e.enableDestroyableTracking=void 0,e.isDestroyed=function(e){let t=i.get(e) -return void 0!==t&&t.state>=n.Destroyed},e.isDestroying=c,e.registerDestructor=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2] -0 +return void 0!==t&&t.state>=n.Destroyed},e.isDestroying=c,e.registerDestructor=function(e,t,r=!1){0 let n=l(e),i=!0===r?"eagerDestructors":"destructors" -return n[i]=o(n[i],t),t},e.unregisterDestructor=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2] -0 +return n[i]=o(n[i],t),t},e.unregisterDestructor=function(e,t,r=!1){0 let n=l(e),i=!0===r?"eagerDestructors":"destructors" n[i]=a(n[i],t,!1)} var n=function(e){return e[e.Live=0]="Live",e[e.Destroying=1]="Destroying",e[e.Destroyed=2]="Destroyed",e}(n||{}) @@ -1861,11 +1859,10 @@ r.state=n.Destroying,s(o,u),s(c,(t=>t(e))),s(p,(r=>(0,t.scheduleDestroy)(e,r))), r.state===n.Live&&(r.children=a(r.children,e))}(e,t))),r.state=n.Destroyed}))}function c(e){let t=i.get(e) return void 0!==t&&t.state>=n.Destroying}e.enableDestroyableTracking=void 0,e.assertDestroyablesDestroyed=void 0})),e("@glimmer/encoder",["exports","@glimmer/vm"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.InstructionEncoderImpl=void 0 -e.InstructionEncoderImpl=class{constructor(e){this.size=0,this.buffer=e}encode(e,r){for(var n=arguments.length,i=new Array(n>2?n-2:0),o=2;ot.TYPE_SIZE)throw new Error(`Opcode type over 8-bits. Got ${e}.`) -let s=e|r|arguments.length-2<t.TYPE_SIZE)throw new Error(`Opcode type over 8-bits. Got ${e}.`) +let i=e|r|arguments.length-2<{} e.scheduleRevalidate=t let r=e.scheduleDestroy=void 0,n=e.scheduleDestroyed=void 0,i=e.toIterator=void 0,o=e.toBool=void 0,s=e.getProp=void 0,a=e.setProp=void 0,l=e.getPath=void 0,u=e.setPath=void 0,c=e.warnIfStyleNotTrusted=void 0,p=e.assert=void 0,d=e.deprecate=void 0 e.assertGlobalContextWasSet=void 0,e.testOverrideGlobalContext=void 0})),e("@glimmer/manager",["exports","@glimmer/util","@glimmer/destroyable","@glimmer/reference","@glimmer/validator","@glimmer/debug","@glimmer/vm"],(function(e,t,r,n,i,o,s){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.CustomModifierManager=e.CustomHelperManager=e.CustomComponentManager=void 0,e.capabilityFlagsFrom=function(e){return f|m(e,"dynamicLayout")|m(e,"dynamicTag")|m(e,"prepareArgs")|m(e,"createArgs")|m(e,"attributeHook")|m(e,"elementHook")|m(e,"dynamicScope")|m(e,"createCaller")|m(e,"updateHook")|m(e,"createInstance")|m(e,"wrapped")|m(e,"willDestroy")|m(e,"hasSubOwner")},e.componentCapabilities=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{} -0 +Object.defineProperty(e,"__esModule",{value:!0}),e.CustomModifierManager=e.CustomHelperManager=e.CustomComponentManager=void 0,e.capabilityFlagsFrom=function(e){return f|m(e,"dynamicLayout")|m(e,"dynamicTag")|m(e,"prepareArgs")|m(e,"createArgs")|m(e,"attributeHook")|m(e,"elementHook")|m(e,"dynamicScope")|m(e,"createCaller")|m(e,"updateHook")|m(e,"createInstance")|m(e,"wrapped")|m(e,"willDestroy")|m(e,"hasSubOwner")},e.componentCapabilities=function(e,t={}){0 let r=Boolean(t.updateHook) return h({asyncLifeCycleCallbacks:Boolean(t.asyncLifecycleCallbacks),destructor:Boolean(t.destructor),updateHook:r})},e.getComponentTemplate=function(e){let t=e for(;null!==t;){let e=I.get(t) @@ -1887,21 +1883,19 @@ const r=k(_,e) if(void 0===r&&!0===t)return null return r},e.getInternalHelperManager=function(e,t){0 let r=k(w,e) -void 0===r&&"function"==typeof e&&(r=R) +void 0===r&&"function"==typeof e&&(r=S) if(r)return r if(!0===t)return null return null},e.getInternalModifierManager=function(e,t){0 const r=k(O,e) if(void 0===r&&!0===t)return null -return r},e.hasCapability=function(e,t){return(0,o.check)(e,o.CheckNumber),!!(e&t)},e.hasDestroyable=b,e.hasInternalComponentManager=function(e){return void 0!==k(_,e)},e.hasInternalHelperManager=function(e){return function(e){return"function"==typeof e}(e)||void 0!==k(w,e)},e.hasInternalModifierManager=function(e){return void 0!==k(O,e)},e.hasValue=g,e.helperCapabilities=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{} -0 -0 +return r},e.hasCapability=function(e,t){return(0,o.check)(e,o.CheckNumber),!!(e&t)},e.hasDestroyable=b,e.hasInternalComponentManager=function(e){return void 0!==k(_,e)},e.hasInternalHelperManager=function(e){return function(e){return"function"==typeof e}(e)||void 0!==k(w,e)},e.hasInternalModifierManager=function(e){return void 0!==k(O,e)},e.hasValue=g,e.helperCapabilities=function(e,t={}){0 0 -return h({hasValue:Boolean(t.hasValue),hasDestroyable:Boolean(t.hasDestroyable),hasScheduledEffect:Boolean(t.hasScheduledEffect)})},e.managerHasCapability=function(e,t,r){return(0,o.check)(t,o.CheckNumber),!!(t&r)},e.modifierCapabilities=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{} 0 +return h({hasValue:Boolean(t.hasValue),hasDestroyable:Boolean(t.hasDestroyable),hasScheduledEffect:Boolean(t.hasScheduledEffect)})},e.managerHasCapability=function(e,t,r){return(0,o.check)(t,o.CheckNumber),!!(t&r)},e.modifierCapabilities=function(e,t={}){0 return h({disableAutoTracking:Boolean(t.disableAutoTracking)})},e.setComponentManager=function(e,t){return P(new N(e),t)},e.setComponentTemplate=function(e,t){0 0 -return I.set(t,e),t},e.setCustomTagFor=l,e.setHelperManager=function(e,t){return S(new y(e),t)},e.setInternalComponentManager=P,e.setInternalHelperManager=S,e.setInternalModifierManager=T,e.setModifierManager=function(e,t){return T(new D(e),t)} +return I.set(t,e),t},e.setCustomTagFor=l,e.setHelperManager=function(e,t){return R(new y(e),t)},e.setInternalComponentManager=P,e.setInternalHelperManager=R,e.setInternalModifierManager=T,e.setModifierManager=function(e,t){return T(new j(e),t)} const a=new WeakMap function l(e,t){a.set(e,t)}function u(e){if("symbol"==typeof e)return null const t=Number(e) @@ -1926,31 +1920,26 @@ const s=d(t),a=o.createHelper(e,s) if(g(o)){let e=(0,n.createComputeRef)((()=>o.getValue(a)),null,!1) return b(o)&&(0,r.associateDestroyableChild)(e,o.getDestroyable(a)),e}if(b(o)){let e=(0,n.createConstRef)(void 0,!1) return(0,r.associateDestroyableChild)(e,o.getDestroyable(a)),e}return n.UNDEFINED_REFERENCE}}}e.CustomHelperManager=y -class v{constructor(){this.capabilities={hasValue:!0,hasDestroyable:!1,hasScheduledEffect:!1}}createHelper(e,t){return{fn:e,args:t}}getValue(e){let{fn:t,args:r}=e -if(Object.keys(r.named).length>0){return t(...[...r.positional,r.named])}return t(...r.positional)}getDebugName(e){return e.name?`(helper function ${e.name})`:"(anonymous helper function)"}}const _=new WeakMap,O=new WeakMap,w=new WeakMap,C=Object.getPrototypeOf -function E(e,t,r){return e.set(r,t),r}function k(e,t){let r=t +class v{constructor(){this.capabilities={hasValue:!0,hasDestroyable:!1,hasScheduledEffect:!1}}createHelper(e,t){return{fn:e,args:t}}getValue({fn:e,args:t}){if(Object.keys(t.named).length>0){return e(...[...t.positional,t.named])}return e(...t.positional)}getDebugName(e){return e.name?`(helper function ${e.name})`:"(anonymous helper function)"}}const _=new WeakMap,O=new WeakMap,w=new WeakMap,E=Object.getPrototypeOf +function C(e,t,r){return e.set(r,t),r}function k(e,t){let r=t for(;null!=r;){const t=e.get(r) if(void 0!==t)return t -r=C(r)}}function T(e,t){return E(O,e,t)}function S(e,t){return E(w,e,t)}const R=new y((()=>new v)) -function P(e,t){return E(_,e,t)}const x={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -function A(e){return e.capabilities.asyncLifeCycleCallbacks}function M(e){return e.capabilities.updateHook}class N{constructor(e){this.componentManagerDelegates=new WeakMap,this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) +r=E(r)}}function T(e,t){return C(O,e,t)}function R(e,t){return C(w,e,t)}const S=new y((()=>new v)) +function P(e,t){return C(_,e,t)}const A={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +function x(e){return e.capabilities.asyncLifeCycleCallbacks}function M(e){return e.capabilities.updateHook}class N{constructor(e){this.componentManagerDelegates=new WeakMap,this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) if(void 0===r){let{factory:n}=this r=n(e),t.set(e,r)}return r}create(e,t,r){let n=this.getDelegateFor(e),i=d(r.capture()),o=n.createComponent(t,i) -return new j(o,n,i)}getDebugName(e){return"function"==typeof e?e.name:e.toString()}update(e){let{delegate:t}=e +return new D(o,n,i)}getDebugName(e){return"function"==typeof e?e.name:e.toString()}update(e){let{delegate:t}=e if(M(t)){let{component:r,args:n}=e -t.updateComponent(r,n)}}didCreate(e){let{component:t,delegate:r}=e -A(r)&&r.didCreateComponent(t)}didUpdate(e){let{component:t,delegate:r}=e;(function(e){return A(e)&&M(e)})(r)&&r.didUpdateComponent(t)}didRenderLayout(){}didUpdateLayout(){}getSelf(e){let{component:t,delegate:r}=e -return(0,n.createConstRef)(r.getContext(t),"this")}getDestroyable(e){const{delegate:t}=e +t.updateComponent(r,n)}}didCreate({component:e,delegate:t}){x(t)&&t.didCreateComponent(e)}didUpdate({component:e,delegate:t}){(function(e){return x(e)&&M(e)})(t)&&t.didUpdateComponent(e)}didRenderLayout(){}didUpdateLayout(){}getSelf({component:e,delegate:t}){return(0,n.createConstRef)(t.getContext(e),"this")}getDestroyable(e){const{delegate:t}=e if(function(e){return e.capabilities.destructor}(t)){const{component:n}=e -return(0,r.registerDestructor)(e,(()=>t.destroyComponent(n))),e}return null}getCapabilities(){return x}}e.CustomComponentManager=N -class j{constructor(e,t,r){this.component=e,this.delegate=t,this.args=r}}class D{constructor(e){this.componentManagerDelegates=new WeakMap,this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) +return(0,r.registerDestructor)(e,(()=>t.destroyComponent(n))),e}return null}getCapabilities(){return A}}e.CustomComponentManager=N +class D{constructor(e,t,r){this.component=e,this.delegate=t,this.args=r}}class j{constructor(e){this.componentManagerDelegates=new WeakMap,this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) if(void 0===r){let{factory:n}=this r=n(e),t.set(e,r)}return r}create(e,t,n,o){let s,a=this.getDelegateFor(e),l=d(o),u=a.createModifier(n,l) -return s={tag:(0,i.createUpdatableTag)(),element:t,delegate:a,args:l,modifier:u},(0,r.registerDestructor)(s,(()=>a.destroyModifier(u,l))),s}getDebugName(e){let{debugName:t}=e -return t}getTag(e){let{tag:t}=e -return t}install(e){let{element:r,args:n,modifier:o,delegate:s}=e,{capabilities:a}=s -!0===a.disableAutoTracking?(0,i.untrack)((()=>s.installModifier(o,(0,t.castToBrowser)(r,"ELEMENT"),n))):s.installModifier(o,(0,t.castToBrowser)(r,"ELEMENT"),n)}update(e){let{args:t,modifier:r,delegate:n}=e,{capabilities:o}=n -!0===o.disableAutoTracking?(0,i.untrack)((()=>n.updateModifier(r,t))):n.updateModifier(r,t)}getDestroyable(e){return e}}e.CustomModifierManager=D +return s={tag:(0,i.createUpdatableTag)(),element:t,delegate:a,args:l,modifier:u},(0,r.registerDestructor)(s,(()=>a.destroyModifier(u,l))),s}getDebugName(e){return"function"==typeof e?e.name||e.toString():""}getDebugInstance({modifier:e}){return e}getTag({tag:e}){return e}install({element:e,args:r,modifier:n,delegate:o}){let{capabilities:s}=o +!0===s.disableAutoTracking?(0,i.untrack)((()=>o.installModifier(n,(0,t.castToBrowser)(e,"ELEMENT"),r))):o.installModifier(n,(0,t.castToBrowser)(e,"ELEMENT"),r)}update({args:e,modifier:t,delegate:r}){let{capabilities:n}=r +!0===n.disableAutoTracking?(0,i.untrack)((()=>r.updateModifier(t,e))):r.updateModifier(t,e)}getDestroyable(e){return e}}e.CustomModifierManager=j const I=new WeakMap,F=Object.getPrototypeOf})),e("@glimmer/node",["exports","@glimmer/runtime","@simple-dom/document"],(function(e,t,r){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.NodeDOMTreeConstruction=void 0,e.serializeBuilder=function(e,t){return o.forInitialRender(e,t)} class n extends t.DOMTreeConstruction{constructor(e){super(e||(0,r.default)())}setupUselessElement(){}insertHTMLBefore(e,r,n){let i=this.document.createRawHTMLSection(n) @@ -1968,221 +1957,169 @@ if(t>-1){"tr"===e.slice(t+1,t+3)&&(e=`${e}`)}}""===e?this.__appen let i=this.__appendComment("%glmr%") return new t.ConcreteBounds(this.element,n,i)}__appendText(e){let{tagName:t}=this.element,r=function(e){let{element:t,nextSibling:r}=e return null===r?t.lastChild:r.previousSibling}(this) -return"TITLE"===t||"SCRIPT"===t||"STYLE"===t?super.__appendText(e):""===e?this.__appendComment("% %"):(r&&3===r.nodeType&&this.__appendComment("%|%"),super.__appendText(e))}closeElement(){return i.has(this.element)&&(i.delete(this.element),super.closeElement()),super.closeElement()}openElement(e){return"tr"===e&&"TBODY"!==this.element.tagName&&"THEAD"!==this.element.tagName&&"TFOOT"!==this.element.tagName&&(this.openElement("tbody"),i.set(this.constructing,!0),this.flushElement(null)),super.openElement(e)}pushRemoteElement(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,{dom:n}=this,i=n.createElement("script") -return i.setAttribute("glmr",t),n.insertBefore(e,i,r),super.pushRemoteElement(e,t,r)}}})),e("@glimmer/opcode-compiler",["exports","@glimmer/util","@glimmer/debug","@glimmer/vm","@glimmer/encoder","@glimmer/wire-format","@glimmer/manager","@glimmer/global-context"],(function(e,t,r,n,i,o,s,a){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.WrappedBuilder=e.StdLib=e.MINIMAL_CAPABILITIES=e.EMPTY_BLOCKS=e.DEFAULT_CAPABILITIES=e.CompileTimeCompilationContextImpl=void 0,e.compilable=ye,e.compileStatements=ve,e.compileStd=se,e.debugCompiler=void 0,e.invokeStaticBlock=W,e.invokeStaticBlockWithStack=Y,e.meta=V,e.programCompilationContext=function(e,t,r){return new ue(e,t,r)},e.templateCacheCounters=void 0,e.templateCompilationContext=ce,e.templateFactory=function(e){let t,{id:r,moduleName:n,block:i,scope:o,isStrictMode:s}=e,a=r||"client-"+Oe++,l=null,u=new WeakMap,c=e=>{if(void 0===t&&(t=JSON.parse(i)),void 0===e)return null===l?(we.cacheMiss++,l=new Ce({id:a,block:t,moduleName:n,owner:null,scope:o,isStrictMode:s})):we.cacheHit++,l -let r=u.get(e) -return void 0===r?(we.cacheMiss++,r=new Ce({id:a,block:t,moduleName:n,owner:e,scope:o,isStrictMode:s}),u.set(e,r)):we.cacheHit++,r} -return c.__id=a,c.__meta={moduleName:n},c} +return"TITLE"===t||"SCRIPT"===t||"STYLE"===t?super.__appendText(e):""===e?this.__appendComment("% %"):(r&&3===r.nodeType&&this.__appendComment("%|%"),super.__appendText(e))}closeElement(){return i.has(this.element)&&(i.delete(this.element),super.closeElement()),super.closeElement()}openElement(e){return"tr"===e&&"TBODY"!==this.element.tagName&&"THEAD"!==this.element.tagName&&"TFOOT"!==this.element.tagName&&(this.openElement("tbody"),i.set(this.constructing,!0),this.flushElement(null)),super.openElement(e)}pushRemoteElement(e,t,r=null){let{dom:n}=this,i=n.createElement("script") +return i.setAttribute("glmr",t),n.insertBefore(e,i,r),super.pushRemoteElement(e,t,r)}}})),e("@glimmer/opcode-compiler",["exports","@glimmer/util","@glimmer/debug","@glimmer/vm","@glimmer/encoder","@glimmer/wire-format","@glimmer/manager"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.WrappedBuilder=e.StdLib=e.MINIMAL_CAPABILITIES=e.EMPTY_BLOCKS=e.DEFAULT_CAPABILITIES=e.CompileTimeCompilationContextImpl=void 0,e.compilable=fe,e.compileStatements=me,e.compileStd=re,e.debugCompiler=void 0,e.invokeStaticBlock=V,e.invokeStaticBlockWithStack=z,e.meta=B,e.programCompilationContext=function(e,t,r){return new oe(e,t,r)},e.templateCacheCounters=void 0,e.templateCompilationContext=se,e.templateFactory=function({id:e,moduleName:t,block:r,scope:n,isStrictMode:i}){let o,s=e||"client-"+be++,a=null,l=new WeakMap,u=e=>{if(void 0===o&&(o=JSON.parse(r)),void 0===e)return null===a?(ye.cacheMiss++,a=new ve({id:s,block:o,moduleName:t,owner:null,scope:n,isStrictMode:i})):ye.cacheHit++,a +let u=l.get(e) +return void 0===u?(ye.cacheMiss++,u=new ve({id:s,block:o,moduleName:t,owner:e,scope:n,isStrictMode:i}),l.set(e,u)):ye.cacheHit++,u} +return u.__id=s,u.__meta={moduleName:t},u} e.debugCompiler=void 0 -function l(e){return t=>{if(!function(e){return Array.isArray(e)&&2===e.length}(t))return!1 +function a(e){return t=>{if(!function(e){return Array.isArray(e)&&2===e.length}(t))return!1 let r=t[0] -return r===o.SexpOpcodes.GetStrictKeyword||r===o.SexpOpcodes.GetLexicalSymbol||r===e}}const u=l(o.SexpOpcodes.GetFreeAsComponentHead),c=l(o.SexpOpcodes.GetFreeAsModifierHead),p=l(o.SexpOpcodes.GetFreeAsHelperHead),d=l(o.SexpOpcodes.GetFreeAsComponentOrHelperHead),h=l(o.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback) -const f=l(o.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback) -function m(e,r,n,i){let[,s,{ifHelper:a}]=i -var l;(0,t.assert)(h(s)||(l=s,Array.isArray(l)&&l[0]===o.SexpOpcodes.GetFreeAsDeprecatedHelperHeadOrThisFallback),"Attempted to resolve a helper with incorrect opcode") -let{upvars:u,owner:c}=n,p=(0,t.unwrap)(u[s[1]]),d=e.lookupHelper(p,c) -d&&a(r.helper(d,p),p,n.moduleName)}function g(e,r,n,i,o){let{upvars:s}=n,a=(0,t.unwrap)(s[e[1]]),l=r.lookupBuiltInHelper(a) -return i.helper(l,a)}const b={Modifier:1003,Component:1004,Helper:1005,OptionalHelper:1006,ComponentOrHelper:1007,OptionalComponentOrHelper:1008,Free:1009,Local:1010,TemplateLocal:1011},y={Label:1e3,StartLabels:1001,StopLabels:1002,Start:1e3,End:1002},v={Label:1,IsStrictMode:2,DebugSymbols:3,Block:4,StdLib:5,NonSmallInt:6,SymbolTable:7,Layout:8} -function _(e){return{type:v.Label,value:e}}function O(){return{type:v.IsStrictMode,value:void 0}}function w(e){return{type:v.StdLib,value:e}}function C(e){return{type:v.SymbolTable,value:e}}function E(e){return{type:v.Layout,value:e}}class k{constructor(){this.labels=(0,t.dict)(),this.targets=[]}label(e,t){this.labels[e]=t}target(e,t){this.targets.push({at:e,target:t})}patch(e){let{targets:r,labels:n}=this -for(const{at:i,target:o}of r){let r=n[o]-i;(0,t.assert)(-1===e.getbyaddr(i),"Expected heap to contain a placeholder, but it did not"),e.setbyaddr(i,r)}}}function T(e,r,n,i,s){if(function(e){return e=0;a--){let r=(0,t.unwrap)(o[a]) -e(y.Label,r.label),e(n.Op.Pop,1),r.callback(),0!==a&&e(n.MachineOp.Jump,_("END"))}e(y.Label,"END"),e(y.StopLabels),e(n.Op.Exit)}function J(e,t,r){e(y.StartLabels),e(n.MachineOp.PushFrame),e(n.MachineOp.ReturnTo,_("ENDINITIAL")) +e(f.Label,r.label),e(n.Op.Pop,1),r.callback(),0!==a&&e(n.MachineOp.Jump,g("END"))}e(f.Label,"END"),e(f.StopLabels),e(n.Op.Exit)}function W(e,t,r){e(f.StartLabels),e(n.MachineOp.PushFrame),e(n.MachineOp.ReturnTo,g("ENDINITIAL")) let i=t() -e(n.Op.Enter,i),r(),e(y.Label,"FINALLY"),e(n.Op.Exit),e(n.MachineOp.Return),e(y.Label,"ENDINITIAL"),e(n.MachineOp.PopFrame),e(y.StopLabels)}function X(e,t,r,i){return J(e,t,(()=>{e(n.Op.JumpUnless,_("ELSE")),r(),e(n.MachineOp.Jump,_("FINALLY")),e(y.Label,"ELSE"),void 0!==i&&i()}))}L.add(o.SexpOpcodes.Concat,((e,t)=>{let[,r]=t -for(let n of r)U(e,n) -e(n.Op.Concat,r.length)})),L.add(o.SexpOpcodes.Call,((e,t)=>{let[,r,n,i]=t -p(r)?e(b.Helper,r,(t=>{j(e,t,n,i)})):(U(e,r),D(e,n,i))})),L.add(o.SexpOpcodes.Curry,((e,t)=>{let[,r,n,i,o]=t -I(e,n,r,i,o)})),L.add(o.SexpOpcodes.GetSymbol,((e,t)=>{let[,r,i]=t -e(n.Op.GetVariable,r),B(e,i)})),L.add(o.SexpOpcodes.GetLexicalSymbol,((e,t)=>{let[,r,i]=t -e(b.TemplateLocal,r,(t=>{e(n.Op.ConstantReference,t),B(e,i)}))})),L.add(o.SexpOpcodes.GetStrictKeyword,((e,t)=>{let[,r,n]=t -e(b.Free,r,(e=>{}))})),L.add(o.SexpOpcodes.GetFreeAsComponentOrHelperHeadOrThisFallback,(()=>{throw new Error("unimplemented opcode")})),L.add(o.SexpOpcodes.GetFreeAsHelperHeadOrThisFallback,((e,t)=>{e(b.Local,t[1],(r=>{e(b.OptionalHelper,t,{ifHelper:t=>{j(e,t,null,null)}})}))})),L.add(o.SexpOpcodes.GetFreeAsDeprecatedHelperHeadOrThisFallback,((e,t)=>{e(b.Local,t[1],(r=>{e(b.OptionalHelper,t,{ifHelper:(r,n,i)=>{t[2][0] -j(e,r,null,null)}})}))})),L.add(o.SexpOpcodes.Undefined,(e=>M(e,void 0))),L.add(o.SexpOpcodes.HasBlock,((e,t)=>{let[,r]=t -U(e,r),e(n.Op.HasBlock)})),L.add(o.SexpOpcodes.HasBlockParams,((e,t)=>{let[,r]=t -U(e,r),e(n.Op.SpreadBlock),e(n.Op.CompileBlock),e(n.Op.HasBlockParams)})),L.add(o.SexpOpcodes.IfInline,((e,t)=>{let[,r,i,o]=t -U(e,o),U(e,i),U(e,r),e(n.Op.IfInline)})),L.add(o.SexpOpcodes.Not,((e,t)=>{let[,r]=t -U(e,r),e(n.Op.Not)})),L.add(o.SexpOpcodes.GetDynamicVar,((e,t)=>{let[,r]=t -U(e,r),e(n.Op.GetDynamicVar)})),L.add(o.SexpOpcodes.Log,((e,t)=>{let[,r]=t -e(n.MachineOp.PushFrame),H(e,r,null,!1),e(n.Op.Log),e(n.MachineOp.PopFrame),e(n.Op.Fetch,n.$v0)})) -const Z="&attrs" -function ee(e,r,i,o,a,l){let{compilable:u,capabilities:c,handle:p}=r,d=i?[i,[]]:null,h=Array.isArray(l)||null===l?A(l):l -u?(e(n.Op.PushComponentDefinition,p),function(e,r){let{capabilities:i,layout:o,elementBlock:a,positional:l,named:u,blocks:c}=r,{symbolTable:p}=o,d=p.hasEval||(0,s.hasCapability)(i,n.InternalComponentCapabilities.prepareArgs) -if(d)return void re(e,{capabilities:i,elementBlock:a,positional:l,named:u,atNames:!0,blocks:c,layout:o}) +e(n.Op.Enter,i),r(),e(f.Label,"FINALLY"),e(n.Op.Exit),e(n.MachineOp.Return),e(f.Label,"ENDINITIAL"),e(n.MachineOp.PopFrame),e(f.StopLabels)}function Y(e,t,r,i){return W(e,t,(()=>{e(n.Op.JumpUnless,g("ELSE")),r(),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"ELSE"),void 0!==i&&i()}))}D.add(o.SexpOpcodes.Concat,((e,[,t])=>{for(let r of t)I(e,r) +e(n.Op.Concat,t.length)})),D.add(o.SexpOpcodes.Call,((e,[,t,r,n])=>{c(t)?e(h.Helper,t,(t=>{A(e,t,r,n)})):(I(e,t),x(e,r,n))})),D.add(o.SexpOpcodes.Curry,((e,[,t,r,n,i])=>{M(e,r,t,n,i)})),D.add(o.SexpOpcodes.GetSymbol,((e,[,t,r])=>{e(n.Op.GetVariable,t),j(e,r)})),D.add(o.SexpOpcodes.GetLexicalSymbol,((e,[,t,r])=>{e(h.TemplateLocal,t,(t=>{e(n.Op.ConstantReference,t),j(e,r)}))})),D.add(o.SexpOpcodes.GetStrictKeyword,((e,t)=>{e(h.Local,t[1],(r=>{e(h.Helper,t,(t=>{A(e,t,null,null)}))}))})),D.add(o.SexpOpcodes.GetFreeAsHelperHead,((e,t)=>{e(h.Local,t[1],(r=>{e(h.Helper,t,(t=>{A(e,t,null,null)}))}))})),D.add(o.SexpOpcodes.Undefined,(e=>S(e,void 0))),D.add(o.SexpOpcodes.HasBlock,((e,[,t])=>{I(e,t),e(n.Op.HasBlock)})),D.add(o.SexpOpcodes.HasBlockParams,((e,[,t])=>{I(e,t),e(n.Op.SpreadBlock),e(n.Op.CompileBlock),e(n.Op.HasBlockParams)})),D.add(o.SexpOpcodes.IfInline,((e,[,t,r,i])=>{I(e,i),I(e,r),I(e,t),e(n.Op.IfInline)})),D.add(o.SexpOpcodes.Not,((e,[,t])=>{I(e,t),e(n.Op.Not)})),D.add(o.SexpOpcodes.GetDynamicVar,((e,[,t])=>{I(e,t),e(n.Op.GetDynamicVar)})),D.add(o.SexpOpcodes.Log,((e,[,t])=>{e(n.MachineOp.PushFrame),F(e,t,null,!1),e(n.Op.Log),e(n.MachineOp.PopFrame),e(n.Op.Fetch,n.$v0)})) +const Q="&attrs" +function K(e,r,i,o,a,l){let{compilable:u,capabilities:c,handle:p}=r,d=i?[i,[]]:null,h=Array.isArray(l)||null===l?R(l):l +u?(e(n.Op.PushComponentDefinition,p),function(e,{capabilities:r,layout:i,elementBlock:o,positional:a,named:l,blocks:u}){let{symbolTable:c}=i,p=c.hasEval||(0,s.hasCapability)(r,n.InternalComponentCapabilities.prepareArgs) +if(p)return void X(e,{capabilities:r,elementBlock:o,positional:a,named:l,atNames:!0,blocks:u,layout:i}) e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame) -let{symbols:h}=p,f=[],m=[],g=[],b=c.names -if(null!==a){let t=h.indexOf(Z);-1!==t&&(G(e,a),f.push(t))}for(const t of b){let r=h.indexOf(`&${t}`);-1!==r&&(G(e,c.get(t)),f.push(r))}if((0,s.hasCapability)(i,n.InternalComponentCapabilities.createArgs)){let r=$(e,l)<<4 +let{symbols:d}=c,h=[],f=[],m=[],g=u.names +if(null!==o){let t=d.indexOf(Q);-1!==t&&($(e,o),h.push(t))}for(const t of g){let r=d.indexOf(`&${t}`);-1!==r&&($(e,u.get(t)),h.push(r))}if((0,s.hasCapability)(r,n.InternalComponentCapabilities.createArgs)){let r=L(e,a)<<4 r|=8 let i=t.EMPTY_STRING_ARRAY -if(null!==u){i=u[0] -let r=u[1] -for(let n=0;n0?1:0),e(n.Op.SetVariable,0) -for(const s of(0,t.reverse)(m))-1===s?e(n.Op.Pop,1):e(n.Op.SetVariable,s+1) -null!==l&&e(n.Op.Pop,l.length) -for(const s of(0,t.reverse)(f))e(n.Op.SetBlock,s+1) -e(n.Op.Constant,E(o)),e(n.Op.CompileBlock),e(n.MachineOp.InvokeVirtual),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),(0,s.hasCapability)(i,n.InternalComponentCapabilities.dynamicScope)&&e(n.Op.PopDynamicScope) -e(n.Op.CommitComponentTransaction),e(n.Op.Load,n.$s0)}(e,{capabilities:c,layout:u,elementBlock:d,positional:o,named:a,blocks:h})):(e(n.Op.PushComponentDefinition,p),re(e,{capabilities:c,elementBlock:d,positional:o,named:a,atNames:!0,blocks:h}))}function te(e,t,r,i,o,s,a,l){let u=r?[r,[]]:null,c=Array.isArray(s)||null===s?A(s):s -J(e,(()=>(U(e,t),e(n.Op.Dup,n.$sp,0),2)),(()=>{e(n.Op.JumpUnless,_("ELSE")),l?e(n.Op.ResolveCurriedComponent):e(n.Op.ResolveDynamicComponent,O()),e(n.Op.PushDynamicComponentInstance),re(e,{capabilities:!0,elementBlock:u,positional:i,named:o,atNames:a,blocks:c}),e(y.Label,"ELSE")}))}function re(e,r){let{capabilities:i,elementBlock:o,positional:a,named:l,atNames:u,blocks:c,layout:p}=r,d=!!c,h=!0===i||(0,s.hasCapability)(i,n.InternalComponentCapabilities.prepareArgs)||!(!l||0===l[0].length),f=c.with("attrs",o) +if(null!==l){i=l[0] +let r=l[1] +for(let n=0;n0?1:0),e(n.Op.SetVariable,0) +for(const s of(0,t.reverse)(f))-1===s?e(n.Op.Pop,1):e(n.Op.SetVariable,s+1) +null!==a&&e(n.Op.Pop,a.length) +for(const s of(0,t.reverse)(h))e(n.Op.SetBlock,s+1) +e(n.Op.Constant,_(i)),e(n.Op.CompileBlock),e(n.MachineOp.InvokeVirtual),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),(0,s.hasCapability)(r,n.InternalComponentCapabilities.dynamicScope)&&e(n.Op.PopDynamicScope) +e(n.Op.CommitComponentTransaction),e(n.Op.Load,n.$s0)}(e,{capabilities:c,layout:u,elementBlock:d,positional:o,named:a,blocks:h})):(e(n.Op.PushComponentDefinition,p),X(e,{capabilities:c,elementBlock:d,positional:o,named:a,atNames:!0,blocks:h}))}function J(e,t,r,i,o,s,a,l){let u=r?[r,[]]:null,c=Array.isArray(s)||null===s?R(s):s +W(e,(()=>(I(e,t),e(n.Op.Dup,n.$sp,0),2)),(()=>{e(n.Op.JumpUnless,g("ELSE")),l?e(n.Op.ResolveCurriedComponent):e(n.Op.ResolveDynamicComponent,b()),e(n.Op.PushDynamicComponentInstance),X(e,{capabilities:!0,elementBlock:u,positional:i,named:o,atNames:a,blocks:c}),e(f.Label,"ELSE")}))}function X(e,{capabilities:r,elementBlock:i,positional:o,named:a,atNames:l,blocks:u,layout:c}){let p=!!u,d=!0===r||(0,s.hasCapability)(r,n.InternalComponentCapabilities.prepareArgs)||!(!a||0===a[0].length),h=u.with("attrs",i) e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame),function(e,r,i,o,s){let a=o.names -for(const t of a)G(e,o.get(t)) -let l=$(e,r)<<4 +for(const t of a)$(e,o.get(t)) +let l=L(e,r)<<4 s&&(l|=8),o&&(l|=7) let u=t.EMPTY_ARRAY if(i){u=i[0] let t=i[1] -for(let r=0;r{p?(e(n.Op.PushSymbolTable,C(p.symbolTable)),e(n.Op.Constant,E(p)),e(n.Op.CompileBlock)):e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}function ne(e,t,r){e(y.StartLabels),function(e,t,r){e(n.Op.Fetch,t),r(),e(n.Op.Load,t)}(e,n.$s1,(()=>{e(n.Op.GetComponentTagName,n.$s0),e(n.Op.PrimitiveReference),e(n.Op.Dup,n.$sp,0)})),e(n.Op.JumpUnless,_("BODY")),e(n.Op.Fetch,n.$s1),e(n.Op.PutComponentOperations),e(n.Op.OpenDynamicElement),e(n.Op.DidCreateElement,n.$s0),q(e,r,null),e(n.Op.FlushElement),e(y.Label,"BODY"),W(e,[t.block[0],[]]),e(n.Op.Fetch,n.$s1),e(n.Op.JumpUnless,_("END")),e(n.Op.CloseElement),e(y.Label,"END"),e(n.Op.Load,n.$s1),e(y.StopLabels)}function ie(e,t,r,i){let o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null -e(n.Op.BeginComponentTransaction,n.$s0),e(n.Op.PushDynamicScope),e(n.Op.CreateComponent,0|t,n.$s0),o&&o(),e(n.Op.RegisterComponentDestructor,n.$s0),e(n.Op.GetComponentSelf,n.$s0),e(n.Op.VirtualRootScope,n.$s0),e(n.Op.SetVariable,0),e(n.Op.SetupForEval,n.$s0),i&&e(n.Op.SetNamedVariables,n.$s0),r&&e(n.Op.SetBlocks,n.$s0),e(n.Op.Pop,1),e(n.Op.InvokeComponentLayout,n.$s0),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),e(n.Op.PopDynamicScope),e(n.Op.CommitComponentTransaction)}function oe(e,t,r){K(e,(()=>e(n.Op.ContentType)),(i=>{i(n.ContentType.String,(()=>{t?(e(n.Op.AssertSame),e(n.Op.AppendHTML)):e(n.Op.AppendText)})),"number"==typeof r?(i(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),function(e){e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame),e(n.Op.PushEmptyArgs),e(n.Op.PrepareArgs,n.$s0),ie(e,!1,!1,!0,(()=>{e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}(e)})),i(n.ContentType.Helper,(()=>{D(e,null,null,(()=>{e(n.MachineOp.InvokeStatic,r)}))}))):(i(n.ContentType.Component,(()=>{e(n.Op.AppendText)})),i(n.ContentType.Helper,(()=>{e(n.Op.AppendText)}))),i(n.ContentType.SafeString,(()=>{e(n.Op.AssertSame),e(n.Op.AppendSafeHTML)})),i(n.ContentType.Fragment,(()=>{e(n.Op.AssertSame),e(n.Op.AppendDocumentFragment)})),i(n.ContentType.Node,(()=>{e(n.Op.AssertSame),e(n.Op.AppendNode)}))}))}function se(e){let t=le(e,(e=>function(e){e(n.Op.Main,n.$s0),ie(e,!1,!1,!0)}(e))),r=le(e,(e=>oe(e,!0,null))),i=le(e,(e=>oe(e,!1,null))),o=le(e,(e=>oe(e,!0,r))),s=le(e,(e=>oe(e,!1,i))) -return new R(t,o,s,r,i)}const ae={evalSymbols:null,upvars:null,moduleName:"stdlib",scopeValues:null,isStrictMode:!0,owner:null,size:0} -function le(e,t){let{constants:r,heap:n,resolver:i}=e,o=new S(n,ae) -t((function(){for(var e=arguments.length,t=new Array(e),n=0;n{c?(e(n.Op.PushSymbolTable,v(c.symbolTable)),e(n.Op.Constant,_(c)),e(n.Op.CompileBlock)):e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}function Z(e,t,r){e(f.StartLabels),function(e,t,r){e(n.Op.Fetch,t),r(),e(n.Op.Load,t)}(e,n.$s1,(()=>{e(n.Op.GetComponentTagName,n.$s0),e(n.Op.PrimitiveReference),e(n.Op.Dup,n.$sp,0)})),e(n.Op.JumpUnless,g("BODY")),e(n.Op.Fetch,n.$s1),e(n.Op.PutComponentOperations),e(n.Op.OpenDynamicElement),e(n.Op.DidCreateElement,n.$s0),H(e,r,null),e(n.Op.FlushElement),e(f.Label,"BODY"),V(e,[t.block[0],[]]),e(n.Op.Fetch,n.$s1),e(n.Op.JumpUnless,g("END")),e(n.Op.CloseElement),e(f.Label,"END"),e(n.Op.Load,n.$s1),e(f.StopLabels)}function ee(e,t,r,i,o=null){e(n.Op.BeginComponentTransaction,n.$s0),e(n.Op.PushDynamicScope),e(n.Op.CreateComponent,0|t,n.$s0),o&&o(),e(n.Op.RegisterComponentDestructor,n.$s0),e(n.Op.GetComponentSelf,n.$s0),e(n.Op.VirtualRootScope,n.$s0),e(n.Op.SetVariable,0),e(n.Op.SetupForEval,n.$s0),i&&e(n.Op.SetNamedVariables,n.$s0),r&&e(n.Op.SetBlocks,n.$s0),e(n.Op.Pop,1),e(n.Op.InvokeComponentLayout,n.$s0),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),e(n.Op.PopDynamicScope),e(n.Op.CommitComponentTransaction)}function te(e,t,r){G(e,(()=>e(n.Op.ContentType)),(i=>{i(n.ContentType.String,(()=>{t?(e(n.Op.AssertSame),e(n.Op.AppendHTML)):e(n.Op.AppendText)})),"number"==typeof r?(i(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),function(e){e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame),e(n.Op.PushEmptyArgs),e(n.Op.PrepareArgs,n.$s0),ee(e,!1,!1,!0,(()=>{e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}(e)})),i(n.ContentType.Helper,(()=>{x(e,null,null,(()=>{e(n.MachineOp.InvokeStatic,r)}))}))):(i(n.ContentType.Component,(()=>{e(n.Op.AppendText)})),i(n.ContentType.Helper,(()=>{e(n.Op.AppendText)}))),i(n.ContentType.SafeString,(()=>{e(n.Op.AssertSame),e(n.Op.AppendSafeHTML)})),i(n.ContentType.Fragment,(()=>{e(n.Op.AssertSame),e(n.Op.AppendDocumentFragment)})),i(n.ContentType.Node,(()=>{e(n.Op.AssertSame),e(n.Op.AppendNode)}))}))}function re(e){let t=ie(e,(e=>function(e){e(n.Op.Main,n.$s0),ee(e,!1,!1,!0)}(e))),r=ie(e,(e=>te(e,!0,null))),i=ie(e,(e=>te(e,!1,null))),o=ie(e,(e=>te(e,!0,r))),s=ie(e,(e=>te(e,!1,i))) +return new C(t,o,s,r,i)}const ne={evalSymbols:null,upvars:null,moduleName:"stdlib",scopeValues:null,isStrictMode:!0,owner:null,size:0} +function ie(e,t){let{constants:r,heap:n,resolver:i}=e,o=new E(n,ne) +t((function(...e){w(o,r,i,ne,e)})) let s=o.commit(0) if("number"!=typeof s)throw new Error("Unexpected errors compiling std") -return s}class ue{constructor(e,t,r){this.constants=void 0,this.heap=void 0,this.stdlib=void 0 -let{constants:n,heap:i}=e -this.resolver=t,this.createOp=r,this.constants=n,this.heap=i,this.stdlib=se(this)}}function ce(e,t){return{program:e,encoder:new S(e.heap,t,e.stdlib),meta:t}}e.CompileTimeCompilationContextImpl=ue -const pe=new F,de=["class","id","value","name","type","style","href"],he=["div","span","p","a"] -function fe(e){return"string"==typeof e?e:he[e]}function me(e){return"string"==typeof e?e:de[e]}function ge(e){if(null===e)return null -return[e[0].map((e=>`@${e}`)),e[1]]}pe.add(o.SexpOpcodes.Comment,((e,t)=>e(n.Op.Comment,t[1]))),pe.add(o.SexpOpcodes.CloseElement,(e=>e(n.Op.CloseElement))),pe.add(o.SexpOpcodes.FlushElement,(e=>e(n.Op.FlushElement))),pe.add(o.SexpOpcodes.Modifier,((e,t)=>{let[,r,i,o]=t -c(r)?e(b.Modifier,r,(t=>{e(n.MachineOp.PushFrame),H(e,i,o,!1),e(n.Op.Modifier,t),e(n.MachineOp.PopFrame)})):(U(e,r),e(n.MachineOp.PushFrame),H(e,i,o,!1),e(n.Op.Dup,n.$fp,1),e(n.Op.DynamicModifier),e(n.MachineOp.PopFrame))})),pe.add(o.SexpOpcodes.StaticAttr,((e,t)=>{let[,r,i,o]=t -e(n.Op.StaticAttr,me(r),i,o??null)})),pe.add(o.SexpOpcodes.StaticComponentAttr,((e,t)=>{let[,r,i,o]=t -e(n.Op.StaticComponentAttr,me(r),i,o??null)})),pe.add(o.SexpOpcodes.DynamicAttr,((e,t)=>{let[,r,i,o]=t -U(e,i),e(n.Op.DynamicAttr,me(r),!1,o??null)})),pe.add(o.SexpOpcodes.TrustingDynamicAttr,((e,t)=>{let[,r,i,o]=t -U(e,i),e(n.Op.DynamicAttr,me(r),!0,o??null)})),pe.add(o.SexpOpcodes.ComponentAttr,((e,t)=>{let[,r,i,o]=t -U(e,i),e(n.Op.ComponentAttr,me(r),!1,o??null)})),pe.add(o.SexpOpcodes.TrustingComponentAttr,((e,t)=>{let[,r,i,o]=t -U(e,i),e(n.Op.ComponentAttr,me(r),!0,o??null)})),pe.add(o.SexpOpcodes.OpenElement,((e,t)=>{let[,r]=t -e(n.Op.OpenElement,fe(r))})),pe.add(o.SexpOpcodes.OpenElementWithSplat,((e,t)=>{let[,r]=t -e(n.Op.PutComponentOperations),e(n.Op.OpenElement,fe(r))})),pe.add(o.SexpOpcodes.Component,((e,t)=>{let[,r,n,i,o]=t -u(r)?e(b.Component,r,(t=>{ee(e,t,n,null,i,o)})):te(e,r,n,null,i,o,!0,!0)})),pe.add(o.SexpOpcodes.Yield,((e,t)=>{let[,r,n]=t -return q(e,r,n)})),pe.add(o.SexpOpcodes.AttrSplat,((e,t)=>{let[,r]=t -return q(e,r,null)})),pe.add(o.SexpOpcodes.Debugger,((e,t)=>{let[,r]=t -return e(n.Op.Debugger,{type:v.DebugSymbols,value:void 0},r)})),pe.add(o.SexpOpcodes.Append,((e,t)=>{let[,r]=t -if(Array.isArray(r))if(f(r))e(b.OptionalComponentOrHelper,r,{ifComponent(t){ee(e,t,null,null,null,null)},ifHelper(t){e(n.MachineOp.PushFrame),j(e,t,null,null),e(n.MachineOp.InvokeStatic,w("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)},ifValue(t){e(n.MachineOp.PushFrame),e(n.Op.ConstantReference,t),e(n.MachineOp.InvokeStatic,w("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}) -else if(r[0]===o.SexpOpcodes.Call){let[,t,i,o]=r -d(t)?e(b.ComponentOrHelper,t,{ifComponent(t){ee(e,t,null,i,ge(o),null)},ifHelper(t){e(n.MachineOp.PushFrame),j(e,t,i,o),e(n.MachineOp.InvokeStatic,w("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}):K(e,(()=>{U(e,t),e(n.Op.DynamicContentType)}),(t=>{t(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),re(e,{capabilities:!0,elementBlock:null,positional:i,named:o,atNames:!1,blocks:A(null)})})),t(n.ContentType.Helper,(()=>{D(e,i,o,(()=>{e(n.MachineOp.InvokeStatic,w("cautious-non-dynamic-append"))}))}))}))}else e(n.MachineOp.PushFrame),U(e,r),e(n.MachineOp.InvokeStatic,w("cautious-append")),e(n.MachineOp.PopFrame) -else e(n.Op.Text,null==r?"":String(r))})),pe.add(o.SexpOpcodes.TrustingAppend,((e,t)=>{let[,r]=t -Array.isArray(r)?(e(n.MachineOp.PushFrame),U(e,r),e(n.MachineOp.InvokeStatic,w("trusting-append")),e(n.MachineOp.PopFrame)):e(n.Op.Text,null==r?"":String(r))})),pe.add(o.SexpOpcodes.Block,((e,t)=>{let[,r,n,i,o]=t -u(r)?e(b.Component,r,(t=>{ee(e,t,null,n,ge(i),o)})):te(e,r,null,n,i,o,!1,!1)})),pe.add(o.SexpOpcodes.InElement,((e,t)=>{let[,r,i,o,s]=t -X(e,(()=>(U(e,i),void 0===s?M(e,void 0):U(e,s),U(e,o),e(n.Op.Dup,n.$sp,0),4)),(()=>{e(n.Op.PushRemoteElement),W(e,r),e(n.Op.PopRemoteElement)}))})),pe.add(o.SexpOpcodes.If,((e,t)=>{let[,r,i,o]=t -return X(e,(()=>(U(e,r),e(n.Op.ToBoolean),1)),(()=>{W(e,i)}),o?()=>{W(e,o)}:void 0)})),pe.add(o.SexpOpcodes.Each,((e,t)=>{let[,r,i,o,s]=t -return J(e,(()=>(i?U(e,i):M(e,null),U(e,r),2)),(()=>{e(n.Op.EnterList,_("BODY"),_("ELSE")),e(n.MachineOp.PushFrame),e(n.Op.Dup,n.$fp,1),e(n.MachineOp.ReturnTo,_("ITER")),e(y.Label,"ITER"),e(n.Op.Iterate,_("BREAK")),e(y.Label,"BODY"),Y(e,o,2),e(n.Op.Pop,2),e(n.MachineOp.Jump,_("FINALLY")),e(y.Label,"BREAK"),e(n.MachineOp.PopFrame),e(n.Op.ExitList),e(n.MachineOp.Jump,_("FINALLY")),e(y.Label,"ELSE"),s&&W(e,s)}))})),pe.add(o.SexpOpcodes.With,((e,t)=>{let[,r,i,o]=t -X(e,(()=>(U(e,r),e(n.Op.Dup,n.$sp,0),e(n.Op.ToBoolean),2)),(()=>{Y(e,i,1)}),(()=>{o&&W(e,o)}))})),pe.add(o.SexpOpcodes.Let,((e,t)=>{let[,r,n]=t -Y(e,n,$(e,r))})),pe.add(o.SexpOpcodes.WithDynamicVars,((e,t)=>{let[,r,i]=t -if(r){let[t,o]=r -$(e,o),function(e,t,r){e(n.Op.PushDynamicScope),e(n.Op.BindDynamicScope,t),r(),e(n.Op.PopDynamicScope)}(e,t,(()=>{W(e,i)}))}else W(e,i)})),pe.add(o.SexpOpcodes.InvokeComponent,((e,t)=>{let[,r,n,i,o]=t -u(r)?e(b.Component,r,(t=>{ee(e,t,null,n,ge(i),o)})):te(e,r,null,n,i,o,!1,!1)})) -class be{constructor(e,t,r){this.compiled=null -let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"plain block" -this.statements=e,this.meta=t,this.symbolTable=r,this.moduleName=n}compile(e){return function(e,t){if(null!==e.compiled)return e.compiled +return s}class oe{constructor({constants:e,heap:t},r,n){this.constants=void 0,this.heap=void 0,this.stdlib=void 0,this.resolver=r,this.createOp=n,this.constants=e,this.heap=t,this.stdlib=re(this)}}function se(e,t){return{program:e,encoder:new E(e.heap,t,e.stdlib),meta:t}}e.CompileTimeCompilationContextImpl=oe +const ae=new N,le=["class","id","value","name","type","style","href"],ue=["div","span","p","a"] +function ce(e){return"string"==typeof e?e:ue[e]}function pe(e){return"string"==typeof e?e:le[e]}function de(e){if(null===e)return null +return[e[0].map((e=>`@${e}`)),e[1]]}ae.add(o.SexpOpcodes.Comment,((e,t)=>e(n.Op.Comment,t[1]))),ae.add(o.SexpOpcodes.CloseElement,(e=>e(n.Op.CloseElement))),ae.add(o.SexpOpcodes.FlushElement,(e=>e(n.Op.FlushElement))),ae.add(o.SexpOpcodes.Modifier,((e,[,t,r,i])=>{u(t)?e(h.Modifier,t,(t=>{e(n.MachineOp.PushFrame),F(e,r,i,!1),e(n.Op.Modifier,t),e(n.MachineOp.PopFrame)})):(I(e,t),e(n.MachineOp.PushFrame),F(e,r,i,!1),e(n.Op.Dup,n.$fp,1),e(n.Op.DynamicModifier),e(n.MachineOp.PopFrame))})),ae.add(o.SexpOpcodes.StaticAttr,((e,[,t,r,i])=>{e(n.Op.StaticAttr,pe(t),r,i??null)})),ae.add(o.SexpOpcodes.StaticComponentAttr,((e,[,t,r,i])=>{e(n.Op.StaticComponentAttr,pe(t),r,i??null)})),ae.add(o.SexpOpcodes.DynamicAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.DynamicAttr,pe(t),!1,i??null)})),ae.add(o.SexpOpcodes.TrustingDynamicAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.DynamicAttr,pe(t),!0,i??null)})),ae.add(o.SexpOpcodes.ComponentAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.ComponentAttr,pe(t),!1,i??null)})),ae.add(o.SexpOpcodes.TrustingComponentAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.ComponentAttr,pe(t),!0,i??null)})),ae.add(o.SexpOpcodes.OpenElement,((e,[,t])=>{e(n.Op.OpenElement,ce(t))})),ae.add(o.SexpOpcodes.OpenElementWithSplat,((e,[,t])=>{e(n.Op.PutComponentOperations),e(n.Op.OpenElement,ce(t))})),ae.add(o.SexpOpcodes.Component,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,r,null,n,i)})):J(e,t,r,null,n,i,!0,!0)})),ae.add(o.SexpOpcodes.Yield,((e,[,t,r])=>H(e,t,r))),ae.add(o.SexpOpcodes.AttrSplat,((e,[,t])=>H(e,t,null))),ae.add(o.SexpOpcodes.Debugger,((e,[,t])=>e(n.Op.Debugger,{type:m.DebugSymbols,value:void 0},t))),ae.add(o.SexpOpcodes.Append,((e,[,t])=>{if(Array.isArray(t))if(p(t))e(h.OptionalComponentOrHelper,t,{ifComponent(t){K(e,t,null,null,null,null)},ifHelper(t){e(n.MachineOp.PushFrame),A(e,t,null,null),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)},ifValue(t){e(n.MachineOp.PushFrame),e(n.Op.ConstantReference,t),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}) +else if(t[0]===o.SexpOpcodes.Call){let[,r,i,o]=t +p(r)?e(h.ComponentOrHelper,r,{ifComponent(t){K(e,t,null,i,de(o),null)},ifHelper(t){e(n.MachineOp.PushFrame),A(e,t,i,o),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}):G(e,(()=>{I(e,r),e(n.Op.DynamicContentType)}),(t=>{t(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),X(e,{capabilities:!0,elementBlock:null,positional:i,named:o,atNames:!1,blocks:R(null)})})),t(n.ContentType.Helper,(()=>{x(e,i,o,(()=>{e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append"))}))}))}))}else e(n.MachineOp.PushFrame),I(e,t),e(n.MachineOp.InvokeStatic,y("cautious-append")),e(n.MachineOp.PopFrame) +else e(n.Op.Text,null==t?"":String(t))})),ae.add(o.SexpOpcodes.TrustingAppend,((e,[,t])=>{Array.isArray(t)?(e(n.MachineOp.PushFrame),I(e,t),e(n.MachineOp.InvokeStatic,y("trusting-append")),e(n.MachineOp.PopFrame)):e(n.Op.Text,null==t?"":String(t))})),ae.add(o.SexpOpcodes.Block,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,null,r,de(n),i)})):J(e,t,null,r,n,i,!1,!1)})),ae.add(o.SexpOpcodes.InElement,((e,[,t,r,i,o])=>{Y(e,(()=>(I(e,r),void 0===o?S(e,void 0):I(e,o),I(e,i),e(n.Op.Dup,n.$sp,0),4)),(()=>{e(n.Op.PushRemoteElement),V(e,t),e(n.Op.PopRemoteElement)}))})),ae.add(o.SexpOpcodes.If,((e,[,t,r,i])=>Y(e,(()=>(I(e,t),e(n.Op.ToBoolean),1)),(()=>{V(e,r)}),i?()=>{V(e,i)}:void 0))),ae.add(o.SexpOpcodes.Each,((e,[,t,r,i,o])=>W(e,(()=>(r?I(e,r):S(e,null),I(e,t),2)),(()=>{e(n.Op.EnterList,g("BODY"),g("ELSE")),e(n.MachineOp.PushFrame),e(n.Op.Dup,n.$fp,1),e(n.MachineOp.ReturnTo,g("ITER")),e(f.Label,"ITER"),e(n.Op.Iterate,g("BREAK")),e(f.Label,"BODY"),z(e,i,2),e(n.Op.Pop,2),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"BREAK"),e(n.MachineOp.PopFrame),e(n.Op.ExitList),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"ELSE"),o&&V(e,o)})))),ae.add(o.SexpOpcodes.Let,((e,[,t,r])=>{z(e,r,L(e,t))})),ae.add(o.SexpOpcodes.WithDynamicVars,((e,[,t,r])=>{if(t){let[i,o]=t +L(e,o),function(e,t,r){e(n.Op.PushDynamicScope),e(n.Op.BindDynamicScope,t),r(),e(n.Op.PopDynamicScope)}(e,i,(()=>{V(e,r)}))}else V(e,r)})),ae.add(o.SexpOpcodes.InvokeComponent,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,null,r,de(n),i)})):J(e,t,null,r,n,i,!1,!1)})) +class he{constructor(e,t,r,n="plain block"){this.compiled=null,this.statements=e,this.meta=t,this.symbolTable=r,this.moduleName=n}compile(e){return function(e,t){if(null!==e.compiled)return e.compiled e.compiled=-1 -let{statements:r,meta:n}=e,i=ve(r,n,t) -return e.compiled=i,i}(this,e)}}function ye(e,t){let[r,n,i]=e.block -return new be(r,V(e),{symbols:n,hasEval:i},t)}function ve(e,t,r){let n=pe,i=ce(r,t),{encoder:o,program:{constants:s,resolver:a}}=i -function l(){for(var e=arguments.length,r=new Array(e),n=0;n2?arguments[2]:void 0,i=this.helperDefinitionCache.get(e) -if(void 0===i){let o=(0,t.getInternalHelperManager)(e,r) -if(null===o)return this.helperDefinitionCache.set(e,null),null;(0,n.assert)(o,"BUG: expected manager or helper") -let s="function"==typeof o?o:o.getHelper(e) -i=this.value(s),this.helperDefinitionCache.set(e,i),this.helperDefinitionCount++}return i}modifier(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2?arguments[2]:void 0,i=this.modifierDefinitionCache.get(e) +class d extends p{constructor(...e){super(...e),this.reifiedArrs={[c]:l},this.defaultTemplate=(0,r.templateFactory)(a)(),this.helperDefinitionCount=0,this.modifierDefinitionCount=0,this.componentDefinitionCount=0,this.helperDefinitionCache=new WeakMap,this.modifierDefinitionCache=new WeakMap,this.componentDefinitionCache=new WeakMap}helper(e,r=null,i){let o=this.helperDefinitionCache.get(e) +if(void 0===o){let r=(0,t.getInternalHelperManager)(e,i) +if(null===r)return this.helperDefinitionCache.set(e,null),null;(0,n.assert)(r,"BUG: expected manager or helper") +let s="function"==typeof r?r:r.getHelper(e) +o=this.value(s),this.helperDefinitionCache.set(e,o),this.helperDefinitionCount++}return o}modifier(e,r=null,n){let i=this.modifierDefinitionCache.get(e) if(void 0===i){let o=(0,t.getInternalModifierManager)(e,n) if(null===o)return this.modifierDefinitionCache.set(e,null),null let s={resolvedName:r,manager:o,state:e} @@ -2225,7 +2162,7 @@ t.set(e,0),this.heap=t}}getbyaddr(e){return(0,n.unwrap)(this.heap[e])}setbyaddr( for(let o=0;o0&&void 0!==arguments[0]?arguments[0]:this.offset,t=function(e,t,r){if(void 0!==e.slice)return e.slice(t,r) +t[o]=s-e}else l===f.Pointer&&(t[o]=s-e)}this.offset=this.offset-e}capture(e=this.offset){let t=function(e,t,r){if(void 0!==e.slice)return e.slice(t,r) let i=new Int32Array(r) for(;tm(e)),(t=>g(e,t))) return t.debugLabel=e.debugLabel,t[i]=l,t},e.createIteratorItemRef=function(e){let t=e,r=(0,n.createTag)() -return h((()=>((0,n.consumeTag)(r),t)),(e=>{t!==e&&(t=e,(0,n.dirtyTag)(r))}))},e.createIteratorRef=function(e,n){return h((()=>{let i=m(e),o=function(e){switch(e){case"@key":return E(v) -case"@index":return E(_) -case"@identity":return E(O) +return h((()=>((0,n.consumeTag)(r),t)),(e=>{t!==e&&(t=e,(0,n.dirtyTag)(r))}))},e.createIteratorRef=function(e,n){return h((()=>{let i=m(e),o=function(e){switch(e){case"@key":return C(v) +case"@index":return C(_) +case"@identity":return C(O) default:return function(e){0 -return E((r=>(0,t.getPath)(r,e)))}(e)}}(n) +return C((r=>(0,t.getPath)(r,e)))}(e)}}(n) if(Array.isArray(i))return new T(i,o) let s=(0,t.toIterator)(i) return null===s?new T(r.EMPTY_ARRAY,(()=>null)):new k(s,o)}))},e.createPrimitiveRef=c,e.createReadOnlyRef=function(e){return f(e)?h((()=>m(e)),null,e.debugLabel):e},e.createUnboundRef=d,e.isConstRef=function(e){return e.tag===n.CONSTANT_TAG},e.isInvokableRef=function(e){return e[i]===l},e.isUpdatableRef=f,e.updateRef=g,e.valueForRef=m @@ -2250,9 +2187,8 @@ class u{constructor(e){this[i]=void 0,this.tag=null,this.lastRevision=n.INITIAL, return t.tag=n.CONSTANT_TAG,t.lastValue=e,t}const p=e.UNDEFINED_REFERENCE=c(void 0) e.NULL_REFERENCE=c(null),e.TRUE_REFERENCE=c(!0),e.FALSE_REFERENCE=c(!1) function d(e,t){const r=new u(a) -return r.lastValue=e,r.tag=n.CONSTANT_TAG,r}function h(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null -const r=new u(s) -return r.compute=e,r.update=t,r}function f(e){return null!==e.update}function m(e){const t=e +return r.lastValue=e,r.tag=n.CONSTANT_TAG,r}function h(e,t=null,r="unknown"){const n=new u(s) +return n.compute=e,n.update=t,n}function f(e){return null!==e.update}function m(e){const t=e let{tag:r}=t if(r===n.CONSTANT_TAG)return t.lastValue const{lastRevision:i}=t @@ -2269,82 +2205,76 @@ if((0,r.isDict)(e))return(0,t.getProp)(e,n)}),(e=>{const i=m(o) if((0,r.isDict)(i))return(0,t.setProp)(i,n,e)})) return u.set(n,l),l}e.createDebugAliasRef=void 0 const y={},v=(e,t)=>t,_=(e,t)=>String(t),O=e=>null===e?y:e -class w{constructor(){this._weakMap=void 0,this._primitiveMap=void 0}get weakMap(){return void 0===this._weakMap&&(this._weakMap=new WeakMap),this._weakMap}get primitiveMap(){return void 0===this._primitiveMap&&(this._primitiveMap=new Map),this._primitiveMap}set(e,t){(0,r.isObject)(e)?this.weakMap.set(e,t):this.primitiveMap.set(e,t)}get(e){return(0,r.isObject)(e)?this.weakMap.get(e):this.primitiveMap.get(e)}}const C=new w -function E(e){let t=new w +class w{constructor(){this._weakMap=void 0,this._primitiveMap=void 0}get weakMap(){return void 0===this._weakMap&&(this._weakMap=new WeakMap),this._weakMap}get primitiveMap(){return void 0===this._primitiveMap&&(this._primitiveMap=new Map),this._primitiveMap}set(e,t){(0,r.isObject)(e)?this.weakMap.set(e,t):this.primitiveMap.set(e,t)}get(e){return(0,r.isObject)(e)?this.weakMap.get(e):this.primitiveMap.get(e)}}const E=new w +function C(e){let t=new w return(r,n)=>{let i=e(r,n),o=t.get(i)||0 -return t.set(i,o+1),0===o?i:function(e,t){let r=C.get(e) -void 0===r&&(r=[],C.set(e,r)) +return t.set(i,o+1),0===o?i:function(e,t){let r=E.get(e) +void 0===r&&(r=[],E.set(e,r)) let n=r[t] return void 0===n&&(n={value:e,count:t},r[t]=n),n}(i,o)}}class k{constructor(e,t){this.inner=e,this.keyFor=t}isEmpty(){return this.inner.isEmpty()}next(){let e=this.inner.next() return null!==e&&(e.key=this.keyFor(e.value,e.memo)),e}}class T{constructor(e,t){this.current=void 0,this.pos=0,this.iterator=e,this.keyFor=t,0===e.length?this.current={kind:"empty"}:this.current={kind:"first",value:e[this.pos]}}isEmpty(){return"empty"===this.current.kind}next(){let e,t=this.current if("first"===t.kind)this.current={kind:"progress"},e=t.value else{if(this.pos>=this.iterator.length-1)return null e=this.iterator[++this.pos]}let{keyFor:r}=this -return{key:r(e,this.pos),value:e,memo:this.pos}}}})),e("@glimmer/runtime",["exports","@glimmer/debug","@glimmer/reference","@glimmer/util","@glimmer/vm","@glimmer/destroyable","@glimmer/global-context","@glimmer/validator","@glimmer/manager","@glimmer/program","@glimmer/owner"],(function(e,t,r,n,i,o,s,a,l,u,c){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.array=e.UpdatingVM=e.UpdatableBlockImpl=e.TemplateOnlyComponentManager=e.TemplateOnlyComponent=e.TEMPLATE_ONLY_COMPONENT_MANAGER=e.SimpleDynamicAttribute=e.SERIALIZATION_FIRST_NODE_STRING=e.RemoteLiveBlock=e.RehydrateBuilder=e.PartialScopeImpl=e.NewElementBuilder=e.LowLevelVM=e.IDOMChanges=e.EnvironmentImpl=e.EMPTY_POSITIONAL=e.EMPTY_NAMED=e.EMPTY_ARGS=e.DynamicScopeImpl=e.DynamicAttribute=e.DOMTreeConstruction=e.DOMChanges=e.CursorImpl=e.CurriedValue=e.ConcreteBounds=void 0,e.clear=E,e.clientBuilder=function(e,t){return re.forInitialRender(e,t)},e.concat=void 0,e.createCapturedArgs=lt,e.curry=ye,Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return o.destroy}}),e.dynamicAttribute=V,e.hash=e.get=e.fn=void 0,e.inTransaction=Gt,e.invokeHelper=function(e,t,r){0 -const n=(0,c.getOwner)(e),i=(0,l.getInternalHelperManager)(t) +return{key:r(e,this.pos),value:e,memo:this.pos}}}})),e("@glimmer/runtime",["exports","@glimmer/debug","@glimmer/reference","@glimmer/util","@glimmer/vm","@glimmer/destroyable","@glimmer/global-context","@glimmer/manager","@glimmer/validator","@glimmer/program","@glimmer/owner"],(function(e,t,r,n,i,o,s,a,l,u,c){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.array=e.UpdatingVM=e.UpdatableBlockImpl=e.TemplateOnlyComponentManager=e.TemplateOnlyComponent=e.TEMPLATE_ONLY_COMPONENT_MANAGER=e.SimpleDynamicAttribute=e.SERIALIZATION_FIRST_NODE_STRING=e.RemoteLiveBlock=e.RehydrateBuilder=e.PartialScopeImpl=e.NewElementBuilder=e.LowLevelVM=e.IDOMChanges=e.EnvironmentImpl=e.EMPTY_POSITIONAL=e.EMPTY_NAMED=e.EMPTY_ARGS=e.DynamicScopeImpl=e.DynamicAttribute=e.DOMTreeConstruction=e.DOMChanges=e.CursorImpl=e.CurriedValue=e.ConcreteBounds=void 0,e.clear=E,e.clientBuilder=function(e,t){return re.forInitialRender(e,t)},e.concat=void 0,e.createCapturedArgs=lt,e.curry=ye,Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return o.destroy}}),e.dynamicAttribute=V,e.hash=e.get=e.fn=void 0,e.inTransaction=Qt,e.invokeHelper=function(e,t,r){0 +const n=(0,c.getOwner)(e),i=(0,a.getInternalHelperManager)(t) 0 0 const s=i.getDelegateFor(n) -let u,p=new Xt(e,r),d=s.createHelper(t,p) -if(!(0,l.hasValue)(s))throw new Error("TODO: unreachable, to be implemented with hasScheduledEffect") -u=(0,a.createCache)((()=>s.getValue(d))),(0,o.associateDestroyableChild)(e,u) -if((0,l.hasDestroyable)(s)){let e=s.getDestroyable(d);(0,o.associateDestroyableChild)(u,e)}return u},Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return o.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return o.isDestroying}}),e.isSerializationFirstNode=function(e){return e.nodeValue===Or},e.isWhitespace=function(e){return It.test(e)},e.normalizeProperty=x,e.on=void 0,Object.defineProperty(e,"registerDestructor",{enumerable:!0,get:function(){return o.registerDestructor}}),e.rehydrationBuilder=function(e,t){return Cr.forInitialRender(e,t)},e.reifyArgs=pt,e.reifyNamed=ut,e.reifyPositional=ct,e.renderComponent=function(e,t,i,o,s){let a=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},l=arguments.length>6&&void 0!==arguments[6]?arguments[6]:new p,u=br.empty(e,{treeBuilder:t,handle:i.stdlib.main,dynamicScope:l,owner:o},i) -return function(e,t,r,i,o){const s=Object.keys(o).map((e=>[e,o[e]])),a=["main","else","attrs"],l=s.map((e=>{let[t]=e -return`@${t}`})) +let u,p=new tr(e,r),d=s.createHelper(t,p) +if(!(0,a.hasValue)(s))throw new Error("TODO: unreachable, to be implemented with hasScheduledEffect") +u=(0,l.createCache)((()=>s.getValue(d))),(0,o.associateDestroyableChild)(e,u) +if((0,a.hasDestroyable)(s)){let e=s.getDestroyable(d);(0,o.associateDestroyableChild)(u,e)}return u},Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return o.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return o.isDestroying}}),e.isSerializationFirstNode=function(e){return e.nodeValue===Or},e.isWhitespace=function(e){return Bt.test(e)},e.normalizeProperty=P,e.on=void 0,Object.defineProperty(e,"registerDestructor",{enumerable:!0,get:function(){return o.registerDestructor}}),e.rehydrationBuilder=function(e,t){return Er.forInitialRender(e,t)},e.reifyArgs=function(e){return{named:ut(e.named),positional:ct(e.positional)}},e.reifyNamed=ut,e.reifyPositional=ct,e.renderComponent=function(e,t,i,o,s,a={},l=new p){let u=br.empty(e,{treeBuilder:t,handle:i.stdlib.main,dynamicScope:l,owner:o},i) +return function(e,t,r,i,o){const s=Object.keys(o).map((e=>[e,o[e]])),a=["main","else","attrs"],l=s.map((([e])=>`@${e}`)) let u=e[y].component(i,r) e.pushFrame() for(let n=0;n<3*a.length;n++)e.stack.push(null) -e.stack.push(null),s.forEach((t=>{let[,r]=t -e.stack.push(r)})),e[v].setup(e.stack,l,a,0,!0) +e.stack.push(null),s.forEach((([,t])=>{e.stack.push(t)})),e[v].setup(e.stack,l,a,0,!0) const c=(0,n.expect)(u.compilable,"BUG: Expected the root component rendered with renderComponent to have an associated template, set with setComponentTemplate"),p=(0,n.unwrapHandle)(c.compile(t)),d={handle:p,symbolTable:c.symbolTable} return e.stack.push(e[v]),e.stack.push(d),e.stack.push(u),new _r(e)}(u,i,o,s,function(e){const t=(0,r.createConstRef)(e,"args") -return Object.keys(e).reduce(((e,n)=>(e[n]=(0,r.childRefFor)(t,n),e)),{})}(a))},e.renderMain=function(e,t,r,i,o,s){let a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:new p,l=(0,n.unwrapHandle)(s.compile(t)),u=s.symbolTable.symbols.length,c=br.initial(e,t,{self:i,dynamicScope:a,treeBuilder:o,handle:l,numSymbols:u,owner:r}) +return Object.keys(e).reduce(((e,n)=>(e[n]=(0,r.childRefFor)(t,n),e)),{})}(a))},e.renderMain=function(e,t,r,i,o,s,a=new p){let l=(0,n.unwrapHandle)(s.compile(t)),u=s.symbolTable.symbols.length,c=br.initial(e,t,{self:i,dynamicScope:a,treeBuilder:o,handle:l,numSymbols:u,owner:r}) return new _r(c)},e.renderSync=function(e,t){let r -return Gt(e,(()=>r=t.sync())),r},e.resetDebuggerCallback=function(){wt=Ot},e.runtimeContext=function(e,t,r,n){return{env:new qt(e,t),program:new u.RuntimeProgramImpl(r.constants,r.heap),resolver:n}},e.setDebuggerCallback=function(e){wt=e},e.templateOnlyComponent=function(e,t){return new St(e,t)} +return Qt(e,(()=>r=t.sync())),r},e.resetDebuggerCallback=function(){kt=Ct},e.runtimeContext=function(e,t,r,n){return{env:new Yt(e,t),program:new u.RuntimeProgramImpl(r.constants,r.heap),resolver:n}},e.setDebuggerCallback=function(e){kt=e},e.templateOnlyComponent=function(e,t){return new At(e,t)} class p{constructor(e){this.bucket=void 0,this.bucket=e?(0,n.assign)({},e):{}}get(e){return(0,n.unwrap)(this.bucket[e])}set(e,t){return this.bucket[e]=t}child(){return new p(this.bucket)}}e.DynamicScopeImpl=p -class d{static root(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2?arguments[2]:void 0,i=new Array(t+1) -for(let o=0;o<=t;o++)i[o]=r.UNDEFINED_REFERENCE -return new d(i,n,null,null,null).init({self:e})}static sized(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,t=arguments.length>1?arguments[1]:void 0,n=new Array(e+1) -for(let i=0;i<=e;i++)n[i]=r.UNDEFINED_REFERENCE -return new d(n,t,null,null,null)}constructor(e,t,r,n,i){this.slots=e,this.owner=t,this.callerScope=r,this.evalScope=n,this.partialMap=i}init(e){let{self:t}=e -return this.slots[0]=t,this}getSelf(){return this.get(0)}getSymbol(e){return this.get(e)}getBlock(e){let t=this.get(e) +class d{static root(e,t=0,n){let i=new Array(t+1).fill(r.UNDEFINED_REFERENCE) +return new d(i,n,null,null,null).init({self:e})}static sized(e=0,t){let n=new Array(e+1).fill(r.UNDEFINED_REFERENCE) +return new d(n,t,null,null,null)}constructor(e,t,r,n,i){this.slots=e,this.owner=t,this.callerScope=r,this.evalScope=n,this.partialMap=i}init({self:e}){return this.slots[0]=e,this}getSelf(){return this.get(0)}getSymbol(e){return this.get(e)}getBlock(e){let t=this.get(e) return t===r.UNDEFINED_REFERENCE?null:t}getEvalScope(){return this.evalScope}getPartialMap(){return this.partialMap}bind(e,t){this.set(e,t)}bindSelf(e){this.set(0,e)}bindSymbol(e,t){this.set(e,t)}bindBlock(e,t){this.set(e,t)}bindEvalScope(e){this.evalScope=e}bindPartialMap(e){this.partialMap=e}bindCallerScope(e){this.callerScope=e}getCallerScope(){return this.callerScope}child(){return new d(this.slots.slice(),this.owner,this.callerScope,this.evalScope,this.partialMap)}get(e){if(e>=this.slots.length)throw new RangeError(`BUG: cannot get $${e} from scope; length=${this.slots.length}`) return this.slots[e]}set(e,t){if(e>=this.slots.length)throw new RangeError(`BUG: cannot get $${e} from scope; length=${this.slots.length}`) this.slots[e]=t}}e.PartialScopeImpl=d const h=Symbol("INNER_VM"),f=Symbol("DESTROYABLE_STACK"),m=Symbol("STACKS"),g=Symbol("REGISTERS"),b=Symbol("HEAP"),y=Symbol("CONSTANTS"),v=Symbol("ARGS") class _{constructor(e,t){this.element=e,this.nextSibling=t}}e.CursorImpl=_ -class O{constructor(e,t,r){this.parentNode=e,this.first=t,this.last=r}parentElement(){return this.parentNode}firstNode(){return this.first}lastNode(){return this.last}}e.ConcreteBounds=O -class w{constructor(e,t){this.parentNode=e,this.node=t}parentElement(){return this.parentNode}firstNode(){return this.node}lastNode(){return this.node}}function C(e,t){let r=e.parentElement(),i=e.firstNode(),o=e.lastNode(),s=i +class O{constructor(e,t,r){this.parentNode=e,this.first=t,this.last=r}parentElement(){return this.parentNode}firstNode(){return this.first}lastNode(){return this.last}}function w(e,t){let r=e.parentElement(),i=e.firstNode(),o=e.lastNode(),s=i for(;;){let e=s.nextSibling if(r.insertBefore(s,t),s===o)return e s=(0,n.expect)(e,"invalid bounds")}}function E(e){let t=e.parentElement(),r=e.firstNode(),i=e.lastNode(),o=r for(;;){let e=o.nextSibling if(t.removeChild(o),o===i)return e -o=(0,n.expect)(e,"invalid bounds")}}function k(e){return T(e)?"":String(e)}function T(e){return null==e||"function"!=typeof e.toString}function S(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}function R(e){return"object"==typeof e&&null!==e&&"number"==typeof e.nodeType}function P(e){return"string"==typeof e}function x(e,t){let r,n +o=(0,n.expect)(e,"invalid bounds")}}function C(e){return k(e)?"":String(e)}function k(e){return null==e||"function"!=typeof e.toString}function T(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}function R(e){return"object"==typeof e&&null!==e&&"number"==typeof e.nodeType}function S(e){return"string"==typeof e}function P(e,t){let r,n if(t in e)n=t,r="prop" else{let i=t.toLowerCase() i in e?(r="prop",n=i):(r="attr",n=t)}return"prop"!==r||"style"!==n.toLowerCase()&&!function(e,t){let r=A[e.toUpperCase()] -return r&&r[t.toLowerCase()]||!1}(e.tagName,n)||(r="attr"),{normalized:n,type:r}}const A={INPUT:{form:!0,autocorrect:!0,list:!0},SELECT:{form:!0},OPTION:{form:!0},TEXTAREA:{form:!0},LABEL:{form:!0},FIELDSET:{form:!0},LEGEND:{form:!0},OBJECT:{form:!0},OUTPUT:{form:!0},BUTTON:{form:!0}} -const M=["javascript:","vbscript:"],N=["A","BODY","LINK","IMG","IFRAME","BASE","FORM"],j=["EMBED"],D=["href","src","background","action"],I=["src"] -function F(e,t){return-1!==e.indexOf(t)}function L(e,t){return(null===e||F(N,e))&&F(D,t)}function B(e,t){return null!==e&&(F(j,e)&&F(I,t))}function U(e,t){return L(e,t)||B(e,t)}let H -if("object"==typeof URL&&null!==URL&&"function"==typeof URL.parse){let e=URL -H=t=>{let r=null -return"string"==typeof t&&(r=e.parse(t).protocol),null===r?":":r}}else if("function"==typeof URL)H=e=>{try{return new URL(e).protocol}catch(t){return":"}} -else{let e=document.createElement("a") -H=t=>(e.href=t,e.protocol)}function $(e,t,r){let n=null +return r&&r[t.toLowerCase()]||!1}(e.tagName,n)||(r="attr"),{normalized:n,type:r}}e.ConcreteBounds=O +const A={INPUT:{form:!0,autocorrect:!0,list:!0},SELECT:{form:!0},OPTION:{form:!0},TEXTAREA:{form:!0},LABEL:{form:!0},FIELDSET:{form:!0},LEGEND:{form:!0},OBJECT:{form:!0},OUTPUT:{form:!0},BUTTON:{form:!0}} +const x=["javascript:","vbscript:"],M=["A","BODY","LINK","IMG","IFRAME","BASE","FORM"],N=["EMBED"],D=["href","src","background","action"],j=["src"] +function I(e,t){return-1!==e.indexOf(t)}function F(e,t){return(null===e||I(M,e))&&I(D,t)}function L(e,t){return null!==e&&(I(N,e)&&I(j,t))}function B(e,t){return F(e,t)||L(e,t)}let U +function H(e){return U||(U=function(){if("object"==typeof URL&&null!==URL&&"function"==typeof URL.parse){let e=URL +return t=>{let r=null +return"string"==typeof t&&(r=e.parse(t).protocol),null===r?":":r}}if("function"==typeof URL)return e=>{try{return new URL(e).protocol}catch(t){return":"}} +throw new Error('@glimmer/runtime needs a valid "globalThis.URL"')}()),U(e)}function $(e,t,r){let n=null if(null==r)return r -if(S(r))return r.toHTML() +if(T(r))return r.toHTML() n=e?e.tagName.toUpperCase():null -let i=k(r) -if(L(n,t)){let e=H(i) -if(F(M,e))return`unsafe:${i}`}return B(n,t)?`unsafe:${i}`:i}function V(e,t,r){const{tagName:i,namespaceURI:o}=e,s={element:e,name:t,namespace:r} -if(o===n.NS_SVG)return z(i,t,s) -const{type:a,normalized:l}=x(e,t) -return"attr"===a?z(i,l,s):function(e,t,r){if(U(e,t))return new Y(t,r) +let i=C(r) +if(F(n,t)){let e=H(i) +if(I(x,e))return`unsafe:${i}`}return L(n,t)?`unsafe:${i}`:i}function V(e,t,r,i=!1){const{tagName:o,namespaceURI:s}=e,a={element:e,name:t,namespace:r} +if(s===n.NS_SVG)return z(o,t,a) +const{type:l,normalized:u}=P(e,t) +return"attr"===l?z(o,u,a):function(e,t,r){if(B(e,t))return new Y(t,r) if(function(e,t){return("INPUT"===e||"TEXTAREA"===e)&&"value"===t}(e,t))return new K(t,r) if(function(e,t){return"OPTION"===e&&"selected"===t}(e,t))return new J(t,r) -return new W(t,r)}(i,l,s)}function z(e,t,r){return U(e,t)?new Q(r):new G(r)}class q{constructor(e){this.attribute=e}}e.DynamicAttribute=q +return new W(t,r)}(o,u,a)}function z(e,t,r){return B(e,t)?new Q(r):new G(r)}class q{constructor(e){this.attribute=e}}e.DynamicAttribute=q class G extends q{set(e,t,r){const n=X(t) if(null!==n){const{name:t,namespace:r}=this.attribute e.__setAttribute(t,n,r)}}update(e,t){const r=X(e),{element:n,name:i}=this.attribute @@ -2355,23 +2285,24 @@ t?e.removeAttributeNS(t,this.normalizedName):e.removeAttribute(this.normalizedNa super.set(e,o,r)}update(e,t){const{element:r,name:n}=this.attribute,i=$(r,n,e) super.update(i,t)}}class Q extends G{set(e,t,r){const{element:n,name:i}=this.attribute,o=$(n,i,t) super.set(e,o,r)}update(e,t){const{element:r,name:n}=this.attribute,i=$(r,n,e) -super.update(i,t)}}class K extends W{set(e,t){e.__setProperty("value",k(t))}update(e){const t=(0,n.castToBrowser)(this.attribute.element,["input","textarea"]),r=t.value,i=k(e) +super.update(i,t)}}class K extends W{set(e,t){e.__setProperty("value",C(t))}update(e){const t=(0,n.castToBrowser)(this.attribute.element,["input","textarea"]),r=t.value,i=C(e) r!==i&&(t.value=i)}}class J extends W{set(e,t){null!=t&&!1!==t&&e.__setProperty("selected",!0)}update(e){const t=(0,n.castToBrowser)(this.attribute.element,"option") t.selected=!!e}}function X(e){return!1===e||null==e||void 0===e.toString?null:!0===e?"":"function"==typeof e?null:String(e)}class Z{constructor(e){this.node=e}firstNode(){return this.node}}class ee{constructor(e){this.node=e}lastNode(){return this.node}}const te=Symbol("CURSOR_STACK") class re{static forInitialRender(e,t){return new this(e,t.element,t.nextSibling).initialize()}static resume(e,t){let r=new this(e,t.parentElement(),t.reset(e)).initialize() -return r.pushLiveBlock(t),r}constructor(e,t,r){this.dom=void 0,this.updateOperations=void 0,this.constructing=null,this.operations=null,this.env=void 0,this[te]=new n.Stack,this.modifierStack=new n.Stack,this.blockStack=new n.Stack,this.pushElement(t,r),this.env=e,this.dom=e.getAppendOperations(),this.updateOperations=e.getDOM()}initialize(){return this.pushSimpleBlock(),this}debugBlocks(){return this.blockStack.toArray()}get element(){return this[te].current.element}get nextSibling(){return this[te].current.nextSibling}get hasBlocks(){return this.blockStack.size>0}block(){return(0,n.expect)(this.blockStack.current,"Expected a current live block")}popElement(){this[te].pop(),(0,n.expect)(this[te].current,"can't pop past the last element")}pushSimpleBlock(){return this.pushLiveBlock(new ne(this.element))}pushUpdatableBlock(){return this.pushLiveBlock(new oe(this.element))}pushBlockList(e){return this.pushLiveBlock(new se(this.element,e))}pushLiveBlock(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=this.blockStack.current +return r.pushLiveBlock(t),r}constructor(e,t,r){this.dom=void 0,this.updateOperations=void 0,this.constructing=null,this.operations=null,this.env=void 0,this[te]=new n.Stack,this.modifierStack=new n.Stack,this.blockStack=new n.Stack,this.pushElement(t,r),this.env=e,this.dom=e.getAppendOperations(),this.updateOperations=e.getDOM()}initialize(){return this.pushSimpleBlock(),this}debugBlocks(){return this.blockStack.toArray()}get element(){return this[te].current.element}get nextSibling(){return this[te].current.nextSibling}get hasBlocks(){return this.blockStack.size>0}block(){return(0,n.expect)(this.blockStack.current,"Expected a current live block")}popElement(){this[te].pop(),(0,n.expect)(this[te].current,"can't pop past the last element")}pushSimpleBlock(){return this.pushLiveBlock(new ne(this.element))}pushUpdatableBlock(){return this.pushLiveBlock(new oe(this.element))}pushBlockList(e){return this.pushLiveBlock(new se(this.element,e))}pushLiveBlock(e,t=!1){let r=this.blockStack.current return null!==r&&(t||r.didAppendBounds(e)),this.__openBlock(),this.blockStack.push(e),e}popBlock(){return this.block().finalize(this),this.__closeBlock(),(0,n.expect)(this.blockStack.pop(),"Expected popBlock to return a block")}__openBlock(){}__closeBlock(){}openElement(e){let t=this.__openElement(e) return this.constructing=t,t}__openElement(e){return this.dom.createElement(e,this.element)}flushElement(e){let t=this.element,r=(0,n.expect)(this.constructing,"flushElement should only be called when constructing an element") this.__flushElement(t,r),this.constructing=null,this.operations=null,this.pushModifiers(e),this.pushElement(r,null),this.didOpenElement(r)}__flushElement(e,t){this.dom.insertBefore(e,t,this.nextSibling)}closeElement(){return this.willCloseElement(),this.popElement(),this.popModifiers()}pushRemoteElement(e,t,r){return this.__pushRemoteElement(e,t,r)}__pushRemoteElement(e,t,r){if(this.pushElement(e,r),void 0===r)for(;e.lastChild;)e.removeChild(e.lastChild) let n=new ie(e) -return this.pushLiveBlock(n,!0)}popRemoteElement(){this.popBlock(),this.popElement()}pushElement(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null -this[te].push(new _(e,t))}pushModifiers(e){this.modifierStack.push(e)}popModifiers(){return this.modifierStack.pop()}didAppendBounds(e){return this.block().didAppendBounds(e),e}didAppendNode(e){return this.block().didAppendNode(e),e}didOpenElement(e){return this.block().openElement(e),e}willCloseElement(){this.block().closeElement()}appendText(e){return this.didAppendNode(this.__appendText(e))}__appendText(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createTextNode(e) +return this.pushLiveBlock(n,!0)}popRemoteElement(){const e=this.popBlock() +return(0,n.assert)(e instanceof ie,"[BUG] expecting a RemoteLiveBlock"),this.popElement(),e}pushElement(e,t=null){this[te].push(new _(e,t))}pushModifiers(e){this.modifierStack.push(e)}popModifiers(){return this.modifierStack.pop()}didAppendBounds(e){return this.block().didAppendBounds(e),e}didAppendNode(e){return this.block().didAppendNode(e),e}didOpenElement(e){return this.block().openElement(e),e}willCloseElement(){this.block().closeElement()}appendText(e){return this.didAppendNode(this.__appendText(e))}__appendText(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createTextNode(e) return t.insertBefore(r,i,n),i}__appendNode(e){return this.dom.insertBefore(this.element,e,this.nextSibling),e}__appendFragment(e){let t=e.firstChild if(t){let r=new O(this.element,t,e.lastChild) -return this.dom.insertBefore(this.element,e,this.nextSibling),r}return new w(this.element,this.__appendComment(""))}__appendHTML(e){return this.dom.insertHTMLBefore(this.element,this.nextSibling,e)}appendDynamicHTML(e){let t=this.trustedContent(e) +return this.dom.insertBefore(this.element,e,this.nextSibling),r}{const e=this.__appendComment("") +return new O(this.element,e,e)}}__appendHTML(e){return this.dom.insertHTMLBefore(this.element,this.nextSibling,e)}appendDynamicHTML(e){let t=this.trustedContent(e) this.didAppendBounds(t)}appendDynamicText(e){let t=this.untrustedContent(e) return this.didAppendNode(t),t}appendDynamicFragment(e){let t=this.__appendFragment(e) -this.didAppendBounds(t)}appendDynamicNode(e){let t=this.__appendNode(e),r=new w(this.element,t) +this.didAppendBounds(t)}appendDynamicNode(e){let t=this.__appendNode(e),r=new O(this.element,t,t) this.didAppendBounds(r)}trustedContent(e){return this.__appendHTML(e)}untrustedContent(e){return this.__appendText(e)}appendComment(e){return this.didAppendNode(this.__appendComment(e))}__appendComment(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createComment(e) return t.insertBefore(r,i,n),i}__setAttribute(e,t,r){this.dom.setAttribute(this.constructing,e,t,r)}__setProperty(e,t){this.constructing[e]=t}setStaticAttribute(e,t,r){this.__setAttribute(e,t,r)}setDynamicAttribute(e,t,r,n){let i=V(this.constructing,e,n,r) return i.set(this,t,this.env),i}}e.NewElementBuilder=re @@ -2380,149 +2311,140 @@ class oe extends ne{reset(){(0,o.destroy)(this) let e=E(this) return this.first=null,this.last=null,this.nesting=0,e}}e.UpdatableBlockImpl=oe class se{constructor(e,t){this.parent=e,this.boundList=t,this.parent=e,this.boundList=t}parentElement(){return this.parent}firstNode(){return(0,n.expect)(this.boundList[0],"cannot call `firstNode()` while `LiveBlockList` is still initializing").firstNode()}lastNode(){let e=this.boundList -return(0,n.expect)(e[e.length-1],"cannot call `lastNode()` while `LiveBlockList` is still initializing").lastNode()}openElement(e){(0,n.assert)(!1,"Cannot openElement directly inside a block list")}closeElement(){(0,n.assert)(!1,"Cannot closeElement directly inside a block list")}didAppendNode(e){(0,n.assert)(!1,"Cannot create a new node directly inside a block list")}didAppendBounds(e){}finalize(e){(0,n.assert)(this.boundList.length>0,"boundsList cannot be empty")}}const ae=new class{constructor(){this.evaluateOpcode=(0,n.fillNulls)(i.Op.Size).slice()}add(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"syscall" -this.evaluateOpcode[e]={syscall:"machine"!==r,evaluate:t}}debugBefore(e,r){let n,o +return(0,n.expect)(e[e.length-1],"cannot call `lastNode()` while `LiveBlockList` is still initializing").lastNode()}openElement(e){(0,n.assert)(!1,"Cannot openElement directly inside a block list")}closeElement(){(0,n.assert)(!1,"Cannot closeElement directly inside a block list")}didAppendNode(e){(0,n.assert)(!1,"Cannot create a new node directly inside a block list")}didAppendBounds(e){}finalize(e){(0,n.assert)(this.boundList.length>0,"boundsList cannot be empty")}}const ae=new class{constructor(){this.evaluateOpcode=new Array(i.Op.Size).fill(null)}add(e,t,r="syscall"){this.evaluateOpcode[e]={syscall:"machine"!==r,evaluate:t}}debugBefore(e,r){let n,o return(0,t.recordStackSize)(e.fetchValue(i.$sp)),{sp:undefined,pc:e.fetchValue(i.$pc),name:o,params:n,type:r.type,isMachine:r.isMachine,size:r.size,state:void 0}}debugAfter(e,t){}evaluate(e,t,r){let i=(0,n.unwrap)(this.evaluateOpcode[r]) i.syscall?((0,n.assert)(!t.isMachine,`BUG: Mismatch between operation.syscall (${i.syscall}) and opcode.isMachine (${t.isMachine}) for ${t.type}`),i.evaluate(e,t)):((0,n.assert)(t.isMachine,`BUG: Mismatch between operation.syscall (${i.syscall}) and opcode.isMachine (${t.isMachine}) for ${t.type}`),i.evaluate(e[h],t))}},le=Symbol("TYPE"),ue=Symbol("INNER"),ce=Symbol("OWNER"),pe=Symbol("ARGS"),de=Symbol("RESOLVED"),he=new WeakSet -function fe(e){return he.has(e)}function me(e,t){return fe(e)&&e[le]===t}class ge{constructor(e,t,r,n){this[le]=void 0,this[ue]=void 0,this[ce]=void 0,this[pe]=void 0,this[de]=void 0 -let i=arguments.length>4&&void 0!==arguments[4]&&arguments[4] -he.add(this),this[le]=e,this[ue]=t,this[ce]=r,this[pe]=n,this[de]=i}}function be(e){let t,r,n,i,o,s=e +function fe(e){return he.has(e)}function me(e,t){return fe(e)&&e[le]===t}class ge{constructor(e,t,r,n,i=!1){this[le]=void 0,this[ue]=void 0,this[ce]=void 0,this[pe]=void 0,this[de]=void 0,he.add(this),this[le]=e,this[ue]=t,this[ce]=r,this[pe]=n,this[de]=i}}function be(e){let t,r,n,i,o,s=e for(;;){let{[pe]:e,[ue]:a}=s if(null!==e){let{named:n,positional:i}=e i.length>0&&(t=void 0===t?i:i.concat(t)),void 0===r&&(r=[]),r.unshift(n)}if(!fe(a)){n=a,i=s[ce],o=s[de] -break}s=a}return{definition:n,owner:i,resolved:o,positional:t,named:r}}function ye(e,t,r,n){return new ge(e,t,r,n,arguments.length>4&&void 0!==arguments[4]&&arguments[4])}function ve(e){return"getDebugCustomRenderTree"in e}e.CurriedValue=ge,ae.add(i.Op.ChildScope,(e=>e.pushChildScope())),ae.add(i.Op.PopScope,(e=>e.popScope())),ae.add(i.Op.PushDynamicScope,(e=>e.pushDynamicScope())),ae.add(i.Op.PopDynamicScope,(e=>e.popDynamicScope())),ae.add(i.Op.Constant,((e,t)=>{let{op1:r}=t -e.stack.push(e[y].getValue((0,n.decodeHandle)(r)))})),ae.add(i.Op.ConstantReference,((e,t)=>{let{op1:i}=t -e.stack.push((0,r.createConstRef)(e[y].getValue((0,n.decodeHandle)(i)),!1))})),ae.add(i.Op.Primitive,((e,t)=>{let{op1:r}=t,i=e.stack -if((0,n.isHandle)(r)){let t=e[y].getValue((0,n.decodeHandle)(r)) -i.push(t)}else i.push((0,n.decodeImmediate)(r))})),ae.add(i.Op.PrimitiveReference,(e=>{let n,i=e.stack,o=(0,t.check)(i.pop(),t.CheckPrimitive) -n=void 0===o?r.UNDEFINED_REFERENCE:null===o?r.NULL_REFERENCE:!0===o?r.TRUE_REFERENCE:!1===o?r.FALSE_REFERENCE:(0,r.createPrimitiveRef)(o),i.push(n)})),ae.add(i.Op.Dup,((e,r)=>{let{op1:n,op2:i}=r,o=(0,t.check)(e.fetchValue(n),t.CheckNumber)-i -e.stack.dup(o)})),ae.add(i.Op.Pop,((e,t)=>{let{op1:r}=t -e.stack.pop(r)})),ae.add(i.Op.Load,((e,t)=>{let{op1:r}=t -e.load(r)})),ae.add(i.Op.Fetch,((e,t)=>{let{op1:r}=t -e.fetch(r)})),ae.add(i.Op.BindDynamicScope,((e,t)=>{let{op1:r}=t,n=e[y].getArray(r) -e.bindDynamicScope(n)})),ae.add(i.Op.Enter,((e,t)=>{let{op1:r}=t -e.enter(r)})),ae.add(i.Op.Exit,(e=>{e.exit()})),ae.add(i.Op.PushSymbolTable,((e,t)=>{let{op1:r}=t -e.stack.push(e[y].getValue(r))})),ae.add(i.Op.PushBlockScope,(e=>{e.stack.push(e.scope())})),ae.add(i.Op.CompileBlock,(e=>{let t=e.stack,r=t.pop() +break}s=a}return{definition:n,owner:i,resolved:o,positional:t,named:r}}function ye(e,t,r,n,i=!1){return new ge(e,t,r,n,i)}function ve(e){return"getDebugCustomRenderTree"in e}e.CurriedValue=ge,ae.add(i.Op.ChildScope,(e=>e.pushChildScope())),ae.add(i.Op.PopScope,(e=>e.popScope())),ae.add(i.Op.PushDynamicScope,(e=>e.pushDynamicScope())),ae.add(i.Op.PopDynamicScope,(e=>e.popDynamicScope())),ae.add(i.Op.Constant,((e,{op1:t})=>{e.stack.push(e[y].getValue((0,n.decodeHandle)(t)))})),ae.add(i.Op.ConstantReference,((e,{op1:t})=>{e.stack.push((0,r.createConstRef)(e[y].getValue((0,n.decodeHandle)(t)),!1))})),ae.add(i.Op.Primitive,((e,{op1:t})=>{let r=e.stack +if((0,n.isHandle)(t)){let i=e[y].getValue((0,n.decodeHandle)(t)) +r.push(i)}else r.push((0,n.decodeImmediate)(t))})),ae.add(i.Op.PrimitiveReference,(e=>{let n,i=e.stack,o=(0,t.check)(i.pop(),t.CheckPrimitive) +n=void 0===o?r.UNDEFINED_REFERENCE:null===o?r.NULL_REFERENCE:!0===o?r.TRUE_REFERENCE:!1===o?r.FALSE_REFERENCE:(0,r.createPrimitiveRef)(o),i.push(n)})),ae.add(i.Op.Dup,((e,{op1:r,op2:n})=>{let i=(0,t.check)(e.fetchValue(r),t.CheckNumber)-n +e.stack.dup(i)})),ae.add(i.Op.Pop,((e,{op1:t})=>{e.stack.pop(t)})),ae.add(i.Op.Load,((e,{op1:t})=>{e.load(t)})),ae.add(i.Op.Fetch,((e,{op1:t})=>{e.fetch(t)})),ae.add(i.Op.BindDynamicScope,((e,{op1:t})=>{let r=e[y].getArray(t) +e.bindDynamicScope(r)})),ae.add(i.Op.Enter,((e,{op1:t})=>{e.enter(t)})),ae.add(i.Op.Exit,(e=>{e.exit()})),ae.add(i.Op.PushSymbolTable,((e,{op1:t})=>{e.stack.push(e[y].getValue(t))})),ae.add(i.Op.PushBlockScope,(e=>{e.stack.push(e.scope())})),ae.add(i.Op.CompileBlock,(e=>{let t=e.stack,r=t.pop() r?t.push(e.compile(r)):t.push(null)})),ae.add(i.Op.InvokeYield,(e=>{let{stack:r}=e,i=(0,t.check)(r.pop(),(0,t.CheckOption)(t.CheckHandle)),o=(0,t.check)(r.pop(),(0,t.CheckOption)(Ve)),s=(0,t.check)(r.pop(),(0,t.CheckOption)(t.CheckBlockSymbolTable));(0,n.assert)(null===s||s&&"object"==typeof s&&Array.isArray(s.parameters),`Expected top of stack to be ${"Option"}, was ${String(s)}`) let a=(0,t.check)(r.pop(),(0,t.CheckInstanceof)(et)) if(null===s)return e.pushFrame(),void e.pushScope(o??e.scope()) let l=(0,n.expect)(o,"BUG: expected scope") {let e=s.parameters,t=e.length if(t>0){l=l.child() -for(let r=0;r{let{op1:i}=n,o=(0,t.check)(e.stack.pop(),Fe),s=Boolean((0,r.valueForRef)(o));(0,r.isConstRef)(o)?!0===s&&e.goto(i):(!0===s&&e.goto(i),e.updateWith(new _e(o)))})),ae.add(i.Op.JumpUnless,((e,n)=>{let{op1:i}=n,o=(0,t.check)(e.stack.pop(),Fe),s=Boolean((0,r.valueForRef)(o));(0,r.isConstRef)(o)?!1===s&&e.goto(i):(!1===s&&e.goto(i),e.updateWith(new _e(o)))})),ae.add(i.Op.JumpEq,((e,r)=>{let{op1:n,op2:i}=r;(0,t.check)(e.stack.peek(),t.CheckNumber)===i&&e.goto(n)})),ae.add(i.Op.AssertSame,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) +for(let r=0;r{let i=(0,t.check)(e.stack.pop(),Fe),o=Boolean((0,r.valueForRef)(i));(0,r.isConstRef)(i)?!0===o&&e.goto(n):(!0===o&&e.goto(n),e.updateWith(new _e(i)))})),ae.add(i.Op.JumpUnless,((e,{op1:n})=>{let i=(0,t.check)(e.stack.pop(),Fe),o=Boolean((0,r.valueForRef)(i));(0,r.isConstRef)(i)?!1===o&&e.goto(n):(!1===o&&e.goto(n),e.updateWith(new _e(i)))})),ae.add(i.Op.JumpEq,((e,{op1:r,op2:n})=>{(0,t.check)(e.stack.peek(),t.CheckNumber)===n&&e.goto(r)})),ae.add(i.Op.AssertSame,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) !1===(0,r.isConstRef)(n)&&e.updateWith(new _e(n))})),ae.add(i.Op.ToBoolean,(e=>{let{stack:n}=e,i=(0,t.check)(n.pop(),Fe) n.push((0,r.createComputeRef)((()=>(0,s.toBool)((0,r.valueForRef)(i)))))})) class _e{constructor(e){this.last=void 0,this.ref=e,this.last=(0,r.valueForRef)(e)}evaluate(e){let{last:t,ref:n}=this t!==(0,r.valueForRef)(n)&&e.throw()}}class Oe{constructor(e,t){this.last=void 0,this.ref=e,this.filter=t,this.last=t((0,r.valueForRef)(e))}evaluate(e){let{last:t,ref:n,filter:i}=this -t!==i((0,r.valueForRef)(n))&&e.throw()}}class we{constructor(){this.tag=a.CONSTANT_TAG,this.lastRevision=a.INITIAL,this.target=void 0}finalize(e,t){this.target=t,this.didModify(e)}evaluate(e){let{tag:t,target:r,lastRevision:i}=this -!e.alwaysRevalidate&&(0,a.validateTag)(t,i)&&((0,a.consumeTag)(t),e.goto((0,n.expect)(r,"VM BUG: Target must be set before attempting to jump")))}didModify(e){this.tag=e,this.lastRevision=(0,a.valueForTag)(this.tag),(0,a.consumeTag)(e)}}class Ce{constructor(e){this.debugLabel=e}evaluate(){(0,a.beginTrackFrame)(this.debugLabel)}}class Ee{constructor(e){this.target=e}evaluate(){let e=(0,a.endTrackFrame)() -this.target.didModify(e)}}ae.add(i.Op.Text,((e,t)=>{let{op1:r}=t -e.elements().appendText(e[y].getValue(r))})),ae.add(i.Op.Comment,((e,t)=>{let{op1:r}=t -e.elements().appendComment(e[y].getValue(r))})),ae.add(i.Op.OpenElement,((e,t)=>{let{op1:r}=t -e.elements().openElement(e[y].getValue(r))})),ae.add(i.Op.OpenDynamicElement,(e=>{let n=(0,t.check)((0,r.valueForRef)((0,t.check)(e.stack.pop(),Fe)),t.CheckString) -e.elements().openElement(n)})),ae.add(i.Op.PushRemoteElement,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),o=(0,t.check)(e.stack.pop(),Fe),s=(0,t.check)((0,r.valueForRef)(n),t.CheckElement),a=(0,t.check)((0,r.valueForRef)(i),(0,t.CheckMaybe)((0,t.CheckOption)(t.CheckNode))),l=(0,r.valueForRef)(o);(0,r.isConstRef)(n)||e.updateWith(new _e(n)),void 0===a||(0,r.isConstRef)(i)||e.updateWith(new _e(i)) -let u=e.elements().pushRemoteElement(s,l,a) -u&&e.associateDestroyable(u)})),ae.add(i.Op.PopRemoteElement,(e=>{e.elements().popRemoteElement()})),ae.add(i.Op.FlushElement,(e=>{let r=(0,t.check)(e.fetchValue(i.$t0),Ie),n=null +t!==i((0,r.valueForRef)(n))&&e.throw()}}class we{constructor(){this.tag=l.CONSTANT_TAG,this.lastRevision=l.INITIAL,this.target=void 0}finalize(e,t){this.target=t,this.didModify(e)}evaluate(e){let{tag:t,target:r,lastRevision:i}=this +!e.alwaysRevalidate&&(0,l.validateTag)(t,i)&&((0,l.consumeTag)(t),e.goto((0,n.expect)(r,"VM BUG: Target must be set before attempting to jump")))}didModify(e){this.tag=e,this.lastRevision=(0,l.valueForTag)(this.tag),(0,l.consumeTag)(e)}}class Ee{constructor(e){this.debugLabel=e}evaluate(){(0,l.beginTrackFrame)(this.debugLabel)}}class Ce{constructor(e){this.target=e}evaluate(){let e=(0,l.endTrackFrame)() +this.target.didModify(e)}}ae.add(i.Op.Text,((e,{op1:t})=>{e.elements().appendText(e[y].getValue(t))})),ae.add(i.Op.Comment,((e,{op1:t})=>{e.elements().appendComment(e[y].getValue(t))})),ae.add(i.Op.OpenElement,((e,{op1:t})=>{e.elements().openElement(e[y].getValue(t))})),ae.add(i.Op.OpenDynamicElement,(e=>{let n=(0,t.check)((0,r.valueForRef)((0,t.check)(e.stack.pop(),Fe)),t.CheckString) +e.elements().openElement(n)})),ae.add(i.Op.PushRemoteElement,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),s=(0,t.check)(e.stack.pop(),Fe),a=(0,t.check)((0,r.valueForRef)(n),t.CheckElement),l=(0,t.check)((0,r.valueForRef)(i),(0,t.CheckMaybe)((0,t.CheckOption)(t.CheckNode))),u=(0,r.valueForRef)(s);(0,r.isConstRef)(n)||e.updateWith(new _e(n)),void 0===l||(0,r.isConstRef)(i)||e.updateWith(new _e(i)) +let c=e.elements().pushRemoteElement(a,u,l) +if(c&&e.associateDestroyable(c),void 0!==e.env.debugRenderTree){let t=lt(void 0===l?{}:{insertBefore:i},[n]) +e.env.debugRenderTree.create(c,{type:"keyword",name:"in-element",args:t,instance:null}),(0,o.registerDestructor)(c,(()=>{e.env.debugRenderTree?.willDestroy(c)}))}})),ae.add(i.Op.PopRemoteElement,(e=>{let t=e.elements().popRemoteElement() +void 0!==e.env.debugRenderTree&&e.env.debugRenderTree.didRender(t,t)})),ae.add(i.Op.FlushElement,(e=>{let r=(0,t.check)(e.fetchValue(i.$t0),Ie),n=null r&&(n=r.flush(e),e.loadValue(i.$t0,null)),e.elements().flushElement(n)})),ae.add(i.Op.CloseElement,(e=>{let t=e.elements().closeElement() -t&&t.forEach((t=>{e.env.scheduleInstallModifier(t) -let{manager:r,state:n}=t,i=r.getDestroyable(n) -i&&e.associateDestroyable(i)}))})),ae.add(i.Op.Modifier,((e,r)=>{let{op1:o}=r -if(!1===e.env.isInteractive)return -let s=e.getOwner(),l=(0,t.check)(e.stack.pop(),Be),u=e[y].getValue(o),{manager:c}=u,{constructing:p}=e.elements(),d=c.create(s,(0,n.expect)(p,"BUG: ElementModifier could not find the element it applies to"),u.state,l.capture()),h={manager:c,state:d,definition:u};(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(h) -let f=c.getTag(d) -return null!==f?((0,a.consumeTag)(f),e.updateWith(new ke(f,h))):void 0})),ae.add(i.Op.DynamicModifier,(e=>{if(!1===e.env.isInteractive)return -let{stack:o,[y]:s}=e,l=(0,t.check)(o.pop(),Fe),u=(0,t.check)(o.pop(),Be).capture(),{constructing:c}=e.elements(),p=e.getOwner(),d=(0,r.createComputeRef)((()=>{let e,t,o=(0,r.valueForRef)(l) +null!==t&&t.forEach((t=>{e.env.scheduleInstallModifier(t) +const r=t.manager.getDestroyable(t.state) +null!==r&&e.associateDestroyable(r)}))})),ae.add(i.Op.Modifier,((e,{op1:r})=>{if(!1===e.env.isInteractive)return +let o=e.getOwner(),s=(0,t.check)(e.stack.pop(),Be),a=e[y].getValue(r),{manager:u}=a,{constructing:c}=e.elements(),p=s.capture(),d=u.create(o,(0,n.expect)(c,"BUG: ElementModifier could not find the element it applies to"),a.state,p),h={manager:u,state:d,definition:a};(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(e,h,p) +let f=u.getTag(d) +return null!==f?((0,l.consumeTag)(f),e.updateWith(new ke(f,h))):void 0})),ae.add(i.Op.DynamicModifier,(e=>{if(!1===e.env.isInteractive)return +let{stack:o}=e,s=(0,t.check)(o.pop(),Fe),u=(0,t.check)(o.pop(),Be).capture(),{positional:c,named:p}=u,{constructing:d}=e.elements(),h=e.getOwner(),f=(0,r.createComputeRef)((()=>{let e,t,o=(0,r.valueForRef)(s) if(!(0,n.isObject)(o))return -if(me(o,i.CurriedTypes.Modifier)){let{definition:r,owner:i,positional:s,named:a}=be(o) -t=r,e=i,void 0!==s&&(u.positional=s.concat(u.positional)),void 0!==a&&(u.named=(0,n.assign)({},...a,u.named))}else t=o,e=p -let a=s.modifier(t,null,!0) -let d=s.getValue((0,n.expect)(a,"BUG: modifier handle expected")),{manager:h}=d,f=h.create(e,(0,n.expect)(c,"BUG: ElementModifier could not find the element it applies to"),d.state,u) -return{manager:h,state:f,definition:d}})),h=(0,r.valueForRef)(d),f=null -if(void 0!==h){(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(h),f=h.manager.getTag(h.state),null!==f&&(0,a.consumeTag)(f)}return!(0,r.isConstRef)(l)||f?e.updateWith(new Te(f,h,d)):void 0})) -class ke{constructor(e,t){this.lastUpdated=void 0,this.tag=e,this.modifier=t,this.lastUpdated=(0,a.valueForTag)(e)}evaluate(e){let{modifier:t,tag:r,lastUpdated:n}=this;(0,a.consumeTag)(r),(0,a.validateTag)(r,n)||(e.env.scheduleUpdateModifier(t),this.lastUpdated=(0,a.valueForTag)(r))}}class Te{constructor(e,t,r){this.lastUpdated=void 0,this.tag=e,this.instance=t,this.instanceRef=r,this.lastUpdated=(0,a.valueForTag)(e??a.CURRENT_TAG)}evaluate(e){let{tag:t,lastUpdated:n,instance:i,instanceRef:s}=this,l=(0,r.valueForRef)(s) -if(l!==i){if(void 0!==i){let e=i.manager.getDestroyable(i.state) -null!==e&&(0,o.destroy)(e)}if(void 0!==l){let{manager:r,state:n}=l,i=r.getDestroyable(n) -null!==i&&(0,o.associateDestroyableChild)(this,i),t=r.getTag(n),null!==t&&(this.lastUpdated=(0,a.valueForTag)(t)),this.tag=t,e.env.scheduleInstallModifier(l)}this.instance=l}else null===t||(0,a.validateTag)(t,n)||(e.env.scheduleUpdateModifier(i),this.lastUpdated=(0,a.valueForTag)(t)) -null!==t&&(0,a.consumeTag)(t)}}ae.add(i.Op.StaticAttr,((e,t)=>{let{op1:r,op2:n,op3:i}=t,o=e[y].getValue(r),s=e[y].getValue(n),a=i?e[y].getValue(i):null -e.elements().setStaticAttribute(o,s,a)})),ae.add(i.Op.DynamicAttr,((e,n)=>{let{op1:i,op2:o,op3:s}=n,a=e[y].getValue(i),l=e[y].getValue(o),u=(0,t.check)(e.stack.pop(),Fe),c=(0,r.valueForRef)(u),p=s?e[y].getValue(s):null,d=e.elements().setDynamicAttribute(a,c,l,p);(0,r.isConstRef)(u)||e.updateWith(new Se(u,d,e.env))})) -class Se{constructor(e,t,n){this.updateRef=void 0 +if(me(o,i.CurriedTypes.Modifier)){let{definition:r,owner:n,positional:i,named:s}=be(o) +t=r,e=n,void 0!==i&&(u.positional=i.concat(c)),void 0!==s&&(u.named=Object.assign({},...s,p))}else t=o,e=h +let l=(0,a.getInternalModifierManager)(t,!0) +if(null===l)throw new Error("BUG: modifier manager expected") +let f={resolvedName:null,manager:l,state:t},m=l.create(e,(0,n.expect)(d,"BUG: ElementModifier could not find the element it applies to"),f.state,u) +return{manager:l,state:m,definition:f}})),m=(0,r.valueForRef)(f),g=null +if(void 0!==m){(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(e,m,u),g=m.manager.getTag(m.state),null!==g&&(0,l.consumeTag)(g)}return!(0,r.isConstRef)(s)||g?e.updateWith(new Te(g,m,f)):void 0})) +class ke{constructor(e,t){this.lastUpdated=void 0,this.tag=e,this.modifier=t,this.lastUpdated=(0,l.valueForTag)(e)}evaluate(e){let{modifier:t,tag:r,lastUpdated:n}=this;(0,l.consumeTag)(r),(0,l.validateTag)(r,n)||(e.env.scheduleUpdateModifier(t),this.lastUpdated=(0,l.valueForTag)(r))}}class Te{constructor(e,t,r){this.lastUpdated=void 0,this.tag=e,this.instance=t,this.instanceRef=r,this.lastUpdated=(0,l.valueForTag)(e??l.CURRENT_TAG)}evaluate(e){let{tag:t,lastUpdated:n,instance:i,instanceRef:s}=this,a=(0,r.valueForRef)(s) +if(a!==i){if(void 0!==i){let e=i.manager.getDestroyable(i.state) +null!==e&&(0,o.destroy)(e)}if(void 0!==a){let{manager:r,state:n}=a,i=r.getDestroyable(n) +null!==i&&(0,o.associateDestroyableChild)(this,i),t=r.getTag(n),null!==t&&(this.lastUpdated=(0,l.valueForTag)(t)),this.tag=t,e.env.scheduleInstallModifier(a)}this.instance=a}else null===t||(0,l.validateTag)(t,n)||(e.env.scheduleUpdateModifier(i),this.lastUpdated=(0,l.valueForTag)(t)) +null!==t&&(0,l.consumeTag)(t)}}ae.add(i.Op.StaticAttr,((e,{op1:t,op2:r,op3:n})=>{let i=e[y].getValue(t),o=e[y].getValue(r),s=n?e[y].getValue(n):null +e.elements().setStaticAttribute(i,o,s)})),ae.add(i.Op.DynamicAttr,((e,{op1:n,op2:i,op3:o})=>{let s=e[y].getValue(n),a=e[y].getValue(i),l=(0,t.check)(e.stack.pop(),Fe),u=(0,r.valueForRef)(l),c=o?e[y].getValue(o):null,p=e.elements().setDynamicAttribute(s,u,a,c);(0,r.isConstRef)(l)||e.updateWith(new Re(l,p,e.env))})) +class Re{constructor(e,t,n){this.updateRef=void 0 let i=!1 this.updateRef=(0,r.createComputeRef)((()=>{let o=(0,r.valueForRef)(e) -!0===i?t.update(o,n):i=!0})),(0,r.valueForRef)(this.updateRef)}evaluate(){(0,r.valueForRef)(this.updateRef)}}ae.add(i.Op.PushComponentDefinition,((e,t)=>{let{op1:r}=t,i=e[y].getValue(r);(0,n.assert)(!!i,`Missing component for ${r}`) -let{manager:o,capabilities:s}=i,a={definition:i,manager:o,capabilities:s,state:null,handle:null,table:null,lookup:null} -e.stack.push(a)})),ae.add(i.Op.ResolveDynamicComponent,((e,o)=>{let s,{op1:a}=o,l=e.stack,u=(0,t.check)((0,r.valueForRef)((0,t.check)(l.pop(),Fe)),(0,t.CheckOr)(t.CheckString,We)),c=e[y],p=e.getOwner() -c.getValue(a) -if(e.loadValue(i.$t1,null),"string"==typeof u){0 +!0===i?t.update(o,n):i=!0})),(0,r.valueForRef)(this.updateRef)}evaluate(){(0,r.valueForRef)(this.updateRef)}}ae.add(i.Op.PushComponentDefinition,((e,{op1:t})=>{let r=e[y].getValue(t);(0,n.assert)(!!r,`Missing component for ${t}`) +let{manager:i,capabilities:o}=r,s={definition:r,manager:i,capabilities:o,state:null,handle:null,table:null,lookup:null} +e.stack.push(s)})),ae.add(i.Op.ResolveDynamicComponent,((e,{op1:o})=>{let s,a=e.stack,l=(0,t.check)((0,r.valueForRef)((0,t.check)(a.pop(),Fe)),(0,t.CheckOr)(t.CheckString,We)),u=e[y],c=e.getOwner() +u.getValue(o) +if(e.loadValue(i.$t1,null),"string"==typeof l){0 let t=function(e,t,r,i){let o=e.lookupComponent(r,(0,n.expect)(i,"BUG: expected owner when looking up component")) -return t.resolvedComponent(o,r)}(e.runtime.resolver,c,u,p) -s=(0,n.expect)(t,`Could not find a component named "${u}"`)}else s=fe(u)?u:c.component(u,p) -l.push(s)})),ae.add(i.Op.ResolveCurriedComponent,(e=>{let n,i=e.stack,o=(0,t.check)(i.pop(),Fe),s=(0,r.valueForRef)(o),a=e[y] +return t.resolvedComponent(o,r)}(e.runtime.resolver,u,l,c) +s=(0,n.expect)(t,`Could not find a component named "${l}"`)}else s=fe(l)?l:u.component(l,c) +a.push(s)})),ae.add(i.Op.ResolveCurriedComponent,(e=>{let n,i=e.stack,o=(0,t.check)(i.pop(),Fe),s=(0,r.valueForRef)(o),a=e[y] n=fe(s)?s:a.component(s,e.getOwner(),!0),i.push(n)})),ae.add(i.Op.PushDynamicComponentInstance,(e=>{let t,r,{stack:n}=e,i=n.pop() -fe(i)?r=t=null:(r=i.manager,t=i.capabilities),n.push({definition:i,capabilities:t,manager:r,state:null,handle:null,table:null})})),ae.add(i.Op.PushArgs,((e,t)=>{let{op1:r,op2:i,op3:o}=t,s=e.stack,a=e[y].getArray(r),l=o>>4,u=8&o,c=7&o?e[y].getArray(i):n.EMPTY_STRING_ARRAY -e[v].setup(s,a,c,l,!!u),s.push(e[v])})),ae.add(i.Op.PushEmptyArgs,(e=>{let{stack:t}=e +fe(i)?r=t=null:(r=i.manager,t=i.capabilities),n.push({definition:i,capabilities:t,manager:r,state:null,handle:null,table:null})})),ae.add(i.Op.PushArgs,((e,{op1:t,op2:r,op3:i})=>{let o=e.stack,s=e[y].getArray(t),a=i>>4,l=8&i,u=7&i?e[y].getArray(r):n.EMPTY_STRING_ARRAY +e[v].setup(o,s,u,a,!!l),o.push(e[v])})),ae.add(i.Op.PushEmptyArgs,(e=>{let{stack:t}=e t.push(e[v].empty(t))})),ae.add(i.Op.CaptureArgs,(e=>{let r=e.stack,n=(0,t.check)(r.pop(),(0,t.CheckInstanceof)(et)).capture() -r.push(n)})),ae.add(i.Op.PrepareArgs,((e,r)=>{let{op1:o}=r,s=e.stack,a=e.fetchValue(o),u=(0,t.check)(s.pop(),(0,t.CheckInstanceof)(et)),{definition:c}=a -if(me(c,i.CurriedTypes.Component)){(0,n.assert)(!c.manager,"If the component definition was curried, we don't yet have a manager") -let t=e[y],{definition:r,owner:o,resolved:s,positional:l,named:p}=be(c) -if(!0===s)c=r +r.push(n)})),ae.add(i.Op.PrepareArgs,((e,{op1:r})=>{let o=e.stack,s=e.fetchValue(r),l=(0,t.check)(o.pop(),(0,t.CheckInstanceof)(et)),{definition:u}=s +if(me(u,i.CurriedTypes.Component)){(0,n.assert)(!u.manager,"If the component definition was curried, we don't yet have a manager") +let t=e[y],{definition:r,owner:o,resolved:a,positional:c,named:p}=be(u) +if(!0===a)u=r else if("string"==typeof r){let i=e.runtime.resolver.lookupComponent(r,o) -c=t.resolvedComponent((0,n.expect)(i,"BUG: expected resolved component"),r)}else c=t.component(r,o) -void 0!==p&&u.named.merge((0,n.assign)({},...p)),void 0!==l&&(u.realloc(l.length),u.positional.prepend(l)) -let{manager:d}=c;(0,n.assert)(null===a.manager,"component instance manager should not be populated yet"),(0,n.assert)(null===a.capabilities,"component instance manager should not be populated yet"),a.definition=c,a.manager=d,a.capabilities=c.capabilities,e.loadValue(i.$t1,o)}let{manager:p,state:d}=c,h=a.capabilities -if(!(0,l.managerHasCapability)(p,h,i.InternalComponentCapabilities.prepareArgs))return void s.push(u) -let f=u.blocks.values,m=u.blocks.names,g=p.prepareArgs(d,u) -if(g){u.clear() -for(let n=0;n{let{op1:n,op2:o}=r,s=(0,t.check)(e.fetchValue(o),Ge),{definition:a,manager:u,capabilities:c}=s -if(!(0,l.managerHasCapability)(u,c,i.InternalComponentCapabilities.createInstance))return -let p=null;(0,l.managerHasCapability)(u,c,i.InternalComponentCapabilities.dynamicScope)&&(p=e.dynamicScope()) -let d=1&n,h=null;(0,l.managerHasCapability)(u,c,i.InternalComponentCapabilities.createArgs)&&(h=(0,t.check)(e.stack.peek(),Be)) -let f=null;(0,l.managerHasCapability)(u,c,i.InternalComponentCapabilities.createCaller)&&(f=e.getSelf()) -let m=u.create(e.getOwner(),a.state,h,e.env,p,f,!!d) -s.state=m,(0,l.managerHasCapability)(u,c,i.InternalComponentCapabilities.updateHook)&&e.updateWith(new Me(m,u,p))})),ae.add(i.Op.RegisterComponentDestructor,((e,r)=>{let{op1:n}=r,{manager:i,state:o,capabilities:s}=(0,t.check)(e.fetchValue(n),Ge),a=i.getDestroyable(o) -a&&e.associateDestroyable(a)})),ae.add(i.Op.BeginComponentTransaction,((e,t)=>{let r,{op1:n}=t -e.beginCacheGroup(r),e.elements().pushSimpleBlock()})),ae.add(i.Op.PutComponentOperations,(e=>{e.loadValue(i.$t0,new Re)})),ae.add(i.Op.ComponentAttr,((e,r)=>{let{op1:n,op2:o,op3:s}=r,a=e[y].getValue(n),l=e[y].getValue(o),u=(0,t.check)(e.stack.pop(),Fe),c=s?e[y].getValue(s):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Re)).setAttribute(a,u,l,c)})),ae.add(i.Op.StaticComponentAttr,((e,r)=>{let{op1:n,op2:o,op3:s}=r,a=e[y].getValue(n),l=e[y].getValue(o),u=s?e[y].getValue(s):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Re)).setStaticAttribute(a,l,u)})) -class Re{constructor(){this.attributes=(0,n.dict)(),this.classes=[],this.modifiers=[]}setAttribute(e,t,r,n){let i={value:t,namespace:n,trusting:r} +for(let s=0;s{let o=(0,t.check)(e.fetchValue(n),Ge),{definition:s,manager:l,capabilities:u}=o +if(!(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.createInstance))return +let c=null;(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.dynamicScope)&&(c=e.dynamicScope()) +let p=1&r,d=null;(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.createArgs)&&(d=(0,t.check)(e.stack.peek(),Be)) +let h=null;(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.createCaller)&&(h=e.getSelf()) +let f=l.create(e.getOwner(),s.state,d,e.env,c,h,!!p) +o.state=f,(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.updateHook)&&e.updateWith(new Me(f,l,c))})),ae.add(i.Op.RegisterComponentDestructor,((e,{op1:r})=>{let{manager:n,state:i,capabilities:o}=(0,t.check)(e.fetchValue(r),Ge),s=n.getDestroyable(i) +s&&e.associateDestroyable(s)})),ae.add(i.Op.BeginComponentTransaction,((e,{op1:t})=>{let r +e.beginCacheGroup(r),e.elements().pushSimpleBlock()})),ae.add(i.Op.PutComponentOperations,(e=>{e.loadValue(i.$t0,new Se)})),ae.add(i.Op.ComponentAttr,((e,{op1:r,op2:n,op3:o})=>{let s=e[y].getValue(r),a=e[y].getValue(n),l=(0,t.check)(e.stack.pop(),Fe),u=o?e[y].getValue(o):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)).setAttribute(s,l,a,u)})),ae.add(i.Op.StaticComponentAttr,((e,{op1:r,op2:n,op3:o})=>{let s=e[y].getValue(r),a=e[y].getValue(n),l=o?e[y].getValue(o):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)).setStaticAttribute(s,a,l)})) +class Se{constructor(){this.attributes=(0,n.dict)(),this.classes=[],this.modifiers=[]}setAttribute(e,t,r,n){let i={value:t,namespace:n,trusting:r} "class"===e&&this.classes.push(t),this.attributes[e]=i}setStaticAttribute(e,t,r){let n={value:t,namespace:r} -"class"===e&&this.classes.push(t),this.attributes[e]=n}addModifier(e){this.modifiers.push(e)}flush(e){let t,r=this.attributes +"class"===e&&this.classes.push(t),this.attributes[e]=n}addModifier(e,t,r){if(this.modifiers.push(t),void 0!==e.env.debugRenderTree){const{manager:i,definition:s,state:a}=t +if(null===a||"object"!=typeof a&&"function"!=typeof a)return +let{element:l,constructing:u}=e.elements(),c=i.getDebugName(s.state),p=i.getDebugInstance(a);(0,n.assert)(u,"Expected a constructing element in addModifier") +let d=new O(l,u,u) +e.env.debugRenderTree.create(a,{type:"modifier",name:c,args:r,instance:p}),e.env.debugRenderTree.didRender(a,d),e.associateDestroyable(a),e.updateWith(new De(a)),e.updateWith(new je(a,d)),(0,o.registerDestructor)(a,(()=>{e.env.debugRenderTree?.willDestroy(a)}))}}flush(e){let t,r=this.attributes for(let i in this.attributes){if("type"===i){t=r[i] continue}let o=(0,n.unwrap)(this.attributes[i]) -"class"===i?xe(e,"class",Pe(this.classes),o.namespace,o.trusting):xe(e,i,o.value,o.namespace,o.trusting)}return void 0!==t&&xe(e,"type",t.value,t.namespace,t.trusting),this.modifiers}}function Pe(e){return 0===e.length?"":1===e.length?(0,n.unwrap)(e[0]):function(e){for(let t=0;t{let e=[] -for(const n of t){let t=k("string"==typeof n?n:(0,r.valueForRef)(n)) +"class"===i?Ae(e,"class",Pe(this.classes),o.namespace,o.trusting):Ae(e,i,o.value,o.namespace,o.trusting)}return void 0!==t&&Ae(e,"type",t.value,t.namespace,t.trusting),this.modifiers}}function Pe(e){return 0===e.length?"":1===e.length?(0,n.unwrap)(e[0]):function(e){return e.every((e=>"string"==typeof e))}(e)?e.join(" "):(t=e,(0,r.createComputeRef)((()=>{let e=[] +for(const n of t){let t=C("string"==typeof n?n:(0,r.valueForRef)(n)) t&&e.push(t)}return 0===e.length?null:e.join(" ")}))) -var t}function xe(e,t,n,i){let o=arguments.length>4&&void 0!==arguments[4]&&arguments[4] -if("string"==typeof n)e.elements().setStaticAttribute(t,n,i) -else{let s=e.elements().setDynamicAttribute(t,(0,r.valueForRef)(n),o,i);(0,r.isConstRef)(n)||e.updateWith(new Se(n,s,e.env))}}function Ae(e,t,r,n,i){let o=r.table.symbols.indexOf(e),s=n.get(t);-1!==o&&i.scope().bindBlock(o+1,s),r.lookup&&(r.lookup[e]=s)}ae.add(i.Op.DidCreateElement,((e,r)=>{let{op1:o}=r,{definition:s,state:a}=(0,t.check)(e.fetchValue(o),Ge),{manager:l}=s,u=(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Re)) -l.didCreateElement(a,(0,n.expect)(e.elements().constructing,"Expected a constructing element in DidCreateOpcode"),u)})),ae.add(i.Op.GetComponentSelf,((e,s)=>{let{op1:a,op2:u}=s,c=(0,t.check)(e.fetchValue(a),Ge),{definition:p,state:d}=c,{manager:h}=p,f=h.getSelf(d) -if(void 0!==e.env.debugRenderTree){let s,c,p=(0,t.check)(e.fetchValue(a),Ge),{definition:h,manager:m}=p -if(e.stack.peek()===e[v])s=e[v].capture() -else{let t=e[y].getArray(u) -e[v].setup(e.stack,t,[],0,!0),s=e[v].capture()}let g=h.compilable -if(null===g?((0,n.assert)((0,l.managerHasCapability)(m,p.capabilities,i.InternalComponentCapabilities.dynamicLayout),"BUG: No template was found for this component, and the component did not have the dynamic layout capability"),g=m.getDynamicLayout(d,e.runtime.resolver),c=null!==g?g.moduleName:"__default__.hbs"):c=g.moduleName,e.associateDestroyable(p),ve(m)){m.getDebugCustomRenderTree(p.definition.state,p.state,s,c).forEach((t=>{let{bucket:r}=t -e.env.debugRenderTree.create(r,t),(0,o.registerDestructor)(p,(()=>{e.env.debugRenderTree?.willDestroy(r)})),e.updateWith(new je(r))}))}else{let t=h.resolvedName??m.getDebugName(h.state) -e.env.debugRenderTree.create(p,{type:"component",name:t,args:s,template:c,instance:(0,r.valueForRef)(f)}),e.associateDestroyable(p),(0,o.registerDestructor)(p,(()=>{e.env.debugRenderTree?.willDestroy(p)})),e.updateWith(new je(p))}}e.stack.push(f)})),ae.add(i.Op.GetComponentTagName,((e,r)=>{let{op1:n}=r,{definition:i,state:o}=(0,t.check)(e.fetchValue(n),Ge),{manager:s}=i,a=s.getTagName(o) -e.stack.push(a)})),ae.add(i.Op.GetComponentLayout,((e,r)=>{let{op1:o}=r,s=(0,t.check)(e.fetchValue(o),Ge),{manager:a,definition:u}=s,{stack:c}=e,{compilable:p}=u -if(null===p){let{capabilities:t}=s;(0,n.assert)((0,l.managerHasCapability)(a,t,i.InternalComponentCapabilities.dynamicLayout),"BUG: No template was found for this component, and the component did not have the dynamic layout capability"),p=a.getDynamicLayout(s.state,e.runtime.resolver),null===p&&(p=(0,l.managerHasCapability)(a,t,i.InternalComponentCapabilities.wrapped)?(0,n.unwrapTemplate)(e[y].defaultTemplate).asWrappedLayout():(0,n.unwrapTemplate)(e[y].defaultTemplate).asLayout())}let d=p.compile(e.context) -c.push(p.symbolTable),c.push(d)})),ae.add(i.Op.Main,((e,r)=>{let{op1:n}=r,i=(0,t.check)(e.stack.pop(),Ze),o=(0,t.check)(e.stack.pop(),Ye),{manager:s,capabilities:a}=i,l={definition:i,manager:s,capabilities:a,state:null,handle:o.handle,table:o.symbolTable,lookup:null} -e.loadValue(n,l)})),ae.add(i.Op.PopulateLayout,((e,r)=>{let{op1:n}=r,{stack:i}=e,o=(0,t.check)(i.pop(),t.CheckHandle),s=(0,t.check)(i.pop(),t.CheckProgramSymbolTable),a=(0,t.check)(e.fetchValue(n),Ge) -a.handle=o,a.table=s})),ae.add(i.Op.VirtualRootScope,((e,r)=>{let n,{op1:o}=r,{table:s,manager:a,capabilities:u,state:c}=(0,t.check)(e.fetchValue(o),Qe);(0,l.managerHasCapability)(a,u,i.InternalComponentCapabilities.hasSubOwner)?(n=a.getOwner(c),e.loadValue(i.$t1,null)):(n=e.fetchValue(i.$t1),null===n?n=e.getOwner():e.loadValue(i.$t1,null)),e.pushRootScope(s.symbols.length+1,n)})),ae.add(i.Op.SetupForEval,((e,r)=>{let{op1:i}=r,o=(0,t.check)(e.fetchValue(i),Qe) -if(o.table.hasEval){let t=o.lookup=(0,n.dict)() -e.scope().bindEvalScope(t)}})),ae.add(i.Op.SetNamedVariables,((e,r)=>{let{op1:i}=r,o=(0,t.check)(e.fetchValue(i),Qe),s=e.scope(),a=(0,t.check)(e.stack.peek(),Be),l=a.named.atNames -for(let t=l.length-1;t>=0;t--){let e=(0,n.unwrap)(l[t]),r=o.table.symbols.indexOf(e),i=a.named.get(e,!0);-1!==r&&s.bindSymbol(r+1,i),o.lookup&&(o.lookup[e]=i)}})),ae.add(i.Op.SetBlocks,((e,r)=>{let{op1:i}=r,o=(0,t.check)(e.fetchValue(i),Qe),{blocks:s}=(0,t.check)(e.stack.peek(),Be) -for(const[t]of(0,n.enumerate)(s.names))Ae((0,n.unwrap)(s.symbolNames[t]),(0,n.unwrap)(s.names[t]),o,s,e)})),ae.add(i.Op.InvokeComponentLayout,((e,r)=>{let{op1:n}=r,i=(0,t.check)(e.fetchValue(n),Qe) -e.call(i.handle)})),ae.add(i.Op.DidRenderLayout,((e,r)=>{let{op1:n}=r,o=(0,t.check)(e.fetchValue(n),Ge),{manager:s,state:a,capabilities:u}=o,c=e.elements().popBlock() -if(void 0!==e.env.debugRenderTree)if(ve(s)){s.getDebugCustomRenderTree(o.definition.state,a,ft).reverse().forEach((t=>{let{bucket:r}=t -e.env.debugRenderTree.didRender(r,c),e.updateWith(new De(r,c))}))}else e.env.debugRenderTree.didRender(o,c),e.updateWith(new De(o,c)) -if((0,l.managerHasCapability)(s,u,i.InternalComponentCapabilities.createInstance)){(0,t.check)(s,(0,t.CheckInterface)({didRenderLayout:t.CheckFunction})).didRenderLayout(a,c),e.env.didCreate(o),e.updateWith(new Ne(o,c))}})),ae.add(i.Op.CommitComponentTransaction,(e=>{e.commitCacheGroup()})) +var t}function Ae(e,t,n,i,o=!1){if("string"==typeof n)e.elements().setStaticAttribute(t,n,i) +else{let s=e.elements().setDynamicAttribute(t,(0,r.valueForRef)(n),o,i);(0,r.isConstRef)(n)||e.updateWith(new Re(n,s,e.env))}}function xe(e,t,r,n,i){let o=r.table.symbols.indexOf(e),s=n.get(t);-1!==o&&i.scope().bindBlock(o+1,s),r.lookup&&(r.lookup[e]=s)}ae.add(i.Op.DidCreateElement,((e,{op1:r})=>{let{definition:o,state:s}=(0,t.check)(e.fetchValue(r),Ge),{manager:a}=o,l=(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)) +a.didCreateElement(s,(0,n.expect)(e.elements().constructing,"Expected a constructing element in DidCreateOpcode"),l)})),ae.add(i.Op.GetComponentSelf,((e,{op1:s,op2:l})=>{let u=(0,t.check)(e.fetchValue(s),Ge),{definition:c,state:p}=u,{manager:d}=c,h=d.getSelf(p) +if(void 0!==e.env.debugRenderTree){let u,c,d=(0,t.check)(e.fetchValue(s),Ge),{definition:f,manager:m}=d +if(e.stack.peek()===e[v])u=e[v].capture() +else{let t=e[y].getArray(l) +e[v].setup(e.stack,t,[],0,!0),u=e[v].capture()}let g=f.compilable +if(null===g?((0,n.assert)((0,a.managerHasCapability)(m,d.capabilities,i.InternalComponentCapabilities.dynamicLayout),"BUG: No template was found for this component, and the component did not have the dynamic layout capability"),g=m.getDynamicLayout(p,e.runtime.resolver),c=null!==g?g.moduleName:"__default__.hbs"):c=g.moduleName,e.associateDestroyable(d),ve(m)){m.getDebugCustomRenderTree(d.definition.state,d.state,u,c).forEach((t=>{let{bucket:r}=t +e.env.debugRenderTree.create(r,t),(0,o.registerDestructor)(d,(()=>{e.env.debugRenderTree?.willDestroy(r)})),e.updateWith(new De(r))}))}else{let t=f.resolvedName??m.getDebugName(f.state) +e.env.debugRenderTree.create(d,{type:"component",name:t,args:u,template:c,instance:(0,r.valueForRef)(h)}),(0,o.registerDestructor)(d,(()=>{e.env.debugRenderTree?.willDestroy(d)})),e.updateWith(new De(d))}}e.stack.push(h)})),ae.add(i.Op.GetComponentTagName,((e,{op1:r})=>{let{definition:n,state:i}=(0,t.check)(e.fetchValue(r),Ge),{manager:o}=n,s=o.getTagName(i) +e.stack.push(s)})),ae.add(i.Op.GetComponentLayout,((e,{op1:r})=>{let o=(0,t.check)(e.fetchValue(r),Ge),{manager:s,definition:l}=o,{stack:u}=e,{compilable:c}=l +if(null===c){let{capabilities:t}=o;(0,n.assert)((0,a.managerHasCapability)(s,t,i.InternalComponentCapabilities.dynamicLayout),"BUG: No template was found for this component, and the component did not have the dynamic layout capability"),c=s.getDynamicLayout(o.state,e.runtime.resolver),null===c&&(c=(0,a.managerHasCapability)(s,t,i.InternalComponentCapabilities.wrapped)?(0,n.unwrapTemplate)(e[y].defaultTemplate).asWrappedLayout():(0,n.unwrapTemplate)(e[y].defaultTemplate).asLayout())}let p=c.compile(e.context) +u.push(c.symbolTable),u.push(p)})),ae.add(i.Op.Main,((e,{op1:r})=>{let n=(0,t.check)(e.stack.pop(),Ze),i=(0,t.check)(e.stack.pop(),Ye),{manager:o,capabilities:s}=n,a={definition:n,manager:o,capabilities:s,state:null,handle:i.handle,table:i.symbolTable,lookup:null} +e.loadValue(r,a)})),ae.add(i.Op.PopulateLayout,((e,{op1:r})=>{let{stack:n}=e,i=(0,t.check)(n.pop(),t.CheckHandle),o=(0,t.check)(n.pop(),t.CheckProgramSymbolTable),s=(0,t.check)(e.fetchValue(r),Ge) +s.handle=i,s.table=o})),ae.add(i.Op.VirtualRootScope,((e,{op1:r})=>{let n,{table:o,manager:s,capabilities:l,state:u}=(0,t.check)(e.fetchValue(r),Qe);(0,a.managerHasCapability)(s,l,i.InternalComponentCapabilities.hasSubOwner)?(n=s.getOwner(u),e.loadValue(i.$t1,null)):(n=e.fetchValue(i.$t1),null===n?n=e.getOwner():e.loadValue(i.$t1,null)),e.pushRootScope(o.symbols.length+1,n)})),ae.add(i.Op.SetupForEval,((e,{op1:r})=>{let i=(0,t.check)(e.fetchValue(r),Qe) +if(i.table.hasEval){let t=i.lookup=(0,n.dict)() +e.scope().bindEvalScope(t)}})),ae.add(i.Op.SetNamedVariables,((e,{op1:r})=>{let i=(0,t.check)(e.fetchValue(r),Qe),o=e.scope(),s=(0,t.check)(e.stack.peek(),Be),a=s.named.atNames +for(let t=a.length-1;t>=0;t--){let e=(0,n.unwrap)(a[t]),r=i.table.symbols.indexOf(e),l=s.named.get(e,!0);-1!==r&&o.bindSymbol(r+1,l),i.lookup&&(i.lookup[e]=l)}})),ae.add(i.Op.SetBlocks,((e,{op1:r})=>{let i=(0,t.check)(e.fetchValue(r),Qe),{blocks:o}=(0,t.check)(e.stack.peek(),Be) +for(const[t]of(0,n.enumerate)(o.names))xe((0,n.unwrap)(o.symbolNames[t]),(0,n.unwrap)(o.names[t]),i,o,e)})),ae.add(i.Op.InvokeComponentLayout,((e,{op1:r})=>{let n=(0,t.check)(e.fetchValue(r),Qe) +e.call(n.handle)})),ae.add(i.Op.DidRenderLayout,((e,{op1:r})=>{let n=(0,t.check)(e.fetchValue(r),Ge),{manager:o,state:s,capabilities:l}=n,u=e.elements().popBlock() +if(void 0!==e.env.debugRenderTree)if(ve(o)){o.getDebugCustomRenderTree(n.definition.state,s,bt).reverse().forEach((t=>{let{bucket:r}=t +e.env.debugRenderTree.didRender(r,u),e.updateWith(new je(r,u))}))}else e.env.debugRenderTree.didRender(n,u),e.updateWith(new je(n,u)) +if((0,a.managerHasCapability)(o,l,i.InternalComponentCapabilities.createInstance)){(0,t.check)(o,(0,t.CheckInterface)({didRenderLayout:t.CheckFunction})).didRenderLayout(s,u),e.env.didCreate(n),e.updateWith(new Ne(n,u))}})),ae.add(i.Op.CommitComponentTransaction,(e=>{e.commitCacheGroup()})) class Me{constructor(e,t,r){this.component=e,this.manager=t,this.dynamicScope=r}evaluate(e){let{component:t,manager:r,dynamicScope:n}=this r.update(t,n)}}class Ne{constructor(e,t){this.component=e,this.bounds=t}evaluate(e){let{component:t,bounds:r}=this,{manager:n,state:i}=t -n.didUpdateLayout(i,r),e.env.didUpdate(t)}}class je{constructor(e){this.bucket=e}evaluate(e){e.env.debugRenderTree?.update(this.bucket)}}class De{constructor(e,t){this.bucket=e,this.bounds=t}evaluate(e){e.env.debugRenderTree?.didRender(this.bucket,this.bounds)}}(0,t.CheckInterface)({[a.COMPUTE]:t.CheckFunction}) -const Ie=(0,t.wrap)((()=>(0,t.CheckOption)((0,t.CheckInstanceof)(Re)))) +n.didUpdateLayout(i,r),e.env.didUpdate(t)}}class De{constructor(e){this.bucket=e}evaluate(e){e.env.debugRenderTree?.update(this.bucket)}}class je{constructor(e,t){this.bucket=e,this.bounds=t}evaluate(e){e.env.debugRenderTree?.didRender(this.bucket,this.bounds)}}(0,t.CheckInterface)({[l.COMPUTE]:t.CheckFunction}) +const Ie=(0,t.wrap)((()=>(0,t.CheckOption)((0,t.CheckInstanceof)(Se)))) const Fe=new class{validate(e){return"object"==typeof e&&null!==e&&r.REFERENCE in e}expected(){return"Reference"}},Le=(0,t.CheckInterface)({next:t.CheckFunction,isEmpty:t.CheckFunction}),Be=(0,t.wrap)((()=>(0,t.CheckInstanceof)(et))),Ue=t.CheckFunction const He=new class{validate(e){return e===r.UNDEFINED_REFERENCE}expected(){return"undefined"}},$e=(0,t.CheckInterface)({positional:(0,t.wrap)((()=>(0,t.CheckArray)(Fe))),named:(0,t.wrap)((()=>(0,t.CheckDict)(Fe)))}),Ve=(0,t.wrap)((()=>(0,t.CheckInstanceof)(d))),ze=(0,t.CheckInterface)({getCapabilities:t.CheckFunction}),qe=t.CheckNumber,Ge=(0,t.CheckInterface)({definition:t.CheckUnknown,state:t.CheckUnknown,handle:t.CheckUnknown,table:t.CheckUnknown}),We=(0,t.CheckOr)(t.CheckObject,t.CheckFunction),Ye=(0,t.CheckInterface)({handle:t.CheckNumber,symbolTable:t.CheckProgramSymbolTable});(0,t.CheckInterface)({setAttribute:t.CheckFunction}) const Qe=(0,t.CheckInterface)({definition:t.CheckUnknown,state:t.CheckUnknown,handle:t.CheckHandle,table:t.CheckProgramSymbolTable}),Ke=(0,t.CheckInterface)({compile:t.CheckFunction,symbolTable:t.CheckBlockSymbolTable}),Je=(0,t.CheckInterface)({compile:t.CheckFunction,symbolTable:t.CheckProgramSymbolTable}),Xe=(0,t.CheckInterface)({0:Ke,1:Ve,2:t.CheckBlockSymbolTable}),Ze=(0,t.CheckInterface)({resolvedName:(0,t.CheckOption)(t.CheckString),handle:t.CheckNumber,state:(0,t.CheckOr)(t.CheckObject,t.CheckFunction),manager:ze,capabilities:qe,compilable:Je}) @@ -2536,8 +2458,8 @@ let c=this.blocks,p=r.length,d=u-3*p c.setup(e,d,p,r)}get base(){return this.blocks.base}get length(){return this.positional.length+this.named.length+3*this.blocks.length}at(e){return this.positional.at(e)}realloc(e){let{stack:t}=this if(e>0&&null!==t){let{positional:r,named:n}=this,o=r.base+e for(let e=r.length+n.length-1;e>=0;e--)t.copy(e+r.base,e+o) -r.base+=e,n.base+=e,t[g][i.$sp]+=e}}capture(){let e=0===this.positional.length?ht:this.positional.capture() -return{named:0===this.named.length?dt:this.named.capture(),positional:e}}clear(){let{stack:e,length:t}=this +r.base+=e,n.base+=e,t[g][i.$sp]+=e}}capture(){let e=0===this.positional.length?gt:this.positional.capture() +return{named:0===this.named.length?mt:this.named.capture(),positional:e}}clear(){let{stack:e,length:t}=this t>0&&null!==e&&e.pop(t)}}const tt=(0,n.emptyArray)() class rt{constructor(){this.base=0,this.length=0,this.stack=null,this._references=null}empty(e,t){this.stack=e,this.base=t,this.length=0,this._references=tt}setup(e,t,r){this.stack=e,this.base=t,this.length=r,this._references=0===r?tt:null}at(e){let{base:n,length:i,stack:o}=this return e<0||e>=i?r.UNDEFINED_REFERENCE:(0,t.check)(o.get(e,n),Fe)}capture(){return this.references}prepend(e){let t=e.length @@ -2548,7 +2470,7 @@ this._references=null}}get references(){let e=this._references if(!e){let{stack:t,base:r,length:n}=this e=this._references=t.slice(r,r+n)}return e}}class nt{constructor(){this.base=0,this.length=0,this._references=null,this._names=n.EMPTY_STRING_ARRAY,this._atNames=n.EMPTY_STRING_ARRAY}empty(e,t){this.stack=e,this.base=t,this.length=0,this._references=tt,this._names=n.EMPTY_STRING_ARRAY,this._atNames=n.EMPTY_STRING_ARRAY}setup(e,t,r,i,o){this.stack=e,this.base=t,this.length=r,0===r?(this._references=tt,this._names=n.EMPTY_STRING_ARRAY,this._atNames=n.EMPTY_STRING_ARRAY):(this._references=null,o?(this._names=null,this._atNames=i):(this._names=i,this._atNames=null))}get names(){let e=this._names return e||(e=this._names=this._atNames.map(this.toSyntheticName)),e}get atNames(){let e=this._atNames -return e||(e=this._atNames=this._names.map(this.toAtName)),e}has(e){return-1!==this.names.indexOf(e)}get(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],{base:n,stack:i}=this,o=(t?this.atNames:this.names).indexOf(e) +return e||(e=this._atNames=this._names.map(this.toAtName)),e}has(e){return-1!==this.names.indexOf(e)}get(e,t=!1){let{base:n,stack:i}=this,o=(t?this.atNames:this.names).indexOf(e) if(-1===o)return r.UNDEFINED_REFERENCE let s=i.get(o,n) return s}capture(){let{names:e,references:t}=this,r=(0,n.dict)() @@ -2558,7 +2480,7 @@ if(t.length>0){let{names:r,length:n,stack:i}=this,o=r.slice() for(const s of t){-1===o.indexOf(s)&&(n=o.push(s),i.push(e[s]))}this.length=n,this._references=null,this._names=o,this._atNames=null}}get references(){let e=this._references if(!e){let{base:t,length:r,stack:n}=this e=this._references=n.slice(t,t+r)}return e}toSyntheticName(e){return e.slice(1)}toAtName(e){return`@${e}`}}function it(e){return`&${e}`}const ot=(0,n.emptyArray)() -class st{constructor(){this.internalValues=null,this._symbolNames=null,this.internalTag=null,this.names=n.EMPTY_STRING_ARRAY,this.length=0,this.base=0}empty(e,t){this.stack=e,this.names=n.EMPTY_STRING_ARRAY,this.base=t,this.length=0,this._symbolNames=null,this.internalTag=a.CONSTANT_TAG,this.internalValues=ot}setup(e,t,r,n){this.stack=e,this.names=n,this.base=t,this.length=r,this._symbolNames=null,0===r?(this.internalTag=a.CONSTANT_TAG,this.internalValues=ot):(this.internalTag=null,this.internalValues=null)}get values(){let e=this.internalValues +class st{constructor(){this.internalValues=null,this._symbolNames=null,this.internalTag=null,this.names=n.EMPTY_STRING_ARRAY,this.length=0,this.base=0}empty(e,t){this.stack=e,this.names=n.EMPTY_STRING_ARRAY,this.base=t,this.length=0,this._symbolNames=null,this.internalTag=l.CONSTANT_TAG,this.internalValues=ot}setup(e,t,r,n){this.stack=e,this.names=n,this.base=t,this.length=r,this._symbolNames=null,0===r?(this.internalTag=l.CONSTANT_TAG,this.internalValues=ot):(this.internalTag=null,this.internalValues=null)}get values(){let e=this.internalValues if(!e){let{base:t,length:r,stack:n}=this e=this.internalValues=n.slice(t,t+3*r)}return e}has(e){return-1!==this.names.indexOf(e)}get(e){let r=this.names.indexOf(e) if(-1===r)return null @@ -2567,64 +2489,63 @@ return null===a?null:[a,s,o]}capture(){return new at(this.names,this.values)}get return null===e&&(e=this._symbolNames=this.names.map(it)),e}}class at{constructor(e,t){this.length=void 0,this.names=e,this.values=t,this.length=e.length}has(e){return-1!==this.names.indexOf(e)}get(e){let t=this.names.indexOf(e) return-1===t?null:[this.values[3*t+2],this.values[3*t+1],this.values[3*t]]}}function lt(e,t){return{named:e,positional:t}}function ut(e){let t=(0,n.dict)() for(const[n,i]of Object.entries(e))t[n]=(0,r.valueForRef)(i) -return t}function ct(e){return e.map(r.valueForRef)}function pt(e){return{named:ut(e.named),positional:ct(e.positional)}}const dt=e.EMPTY_NAMED=Object.freeze(Object.create(null)),ht=e.EMPTY_POSITIONAL=tt,ft=e.EMPTY_ARGS=lt(dt,ht) -function mt(e){return"function"!=typeof e.toString?"":String(e)}function gt(e,t,r){let n=e.helper(t,null,!0) -return e.getValue(n)}function bt(e){return(0,n.assert)(Array.isArray(e)||e===r.UNDEFINED_REFERENCE,"a reference other than UNDEFINED_REFERENCE is illegal here"),e===r.UNDEFINED_REFERENCE}ae.add(i.Op.Curry,((e,o)=>{let{op1:s,op2:a}=o,l=e.stack,u=(0,t.check)(l.pop(),Fe),c=(0,t.check)(l.pop(),$e),p=e.getOwner() +return t}function ct(e){return e.map(r.valueForRef)}const pt=Symbol("ARGUMENT_ERROR") +function dt(e){return null!==e&&"object"==typeof e&&e[pt]}function ht(e){return{[pt]:!0,error:e}}function ft(e){return{named:function(e){let t=(0,n.dict)() +for(const[n,o]of Object.entries(e))try{t[n]=(0,r.valueForRef)(o)}catch(i){t[n]=ht(i)}return t}(e.named),positional:function(e){return e.map((e=>{try{return(0,r.valueForRef)(e)}catch(t){return ht(t)}}))}(e.positional)}}const mt=e.EMPTY_NAMED=Object.freeze(Object.create(null)),gt=e.EMPTY_POSITIONAL=tt,bt=e.EMPTY_ARGS=lt(mt,gt) +function yt(e){return"string"==typeof e?e:"function"!=typeof e.toString?"":String(e)}function vt(e,t){let r,i=(0,a.getInternalHelperManager)(e,!0) +return null===i?r=null:(r="function"==typeof i?i:i.getHelper(e),(0,n.assert)(i,"BUG: expected manager or helper")),r}function _t(e){return(0,n.assert)(Array.isArray(e)||e===r.UNDEFINED_REFERENCE,"a reference other than UNDEFINED_REFERENCE is illegal here"),e===r.UNDEFINED_REFERENCE}ae.add(i.Op.Curry,((e,{op1:o,op2:s})=>{let a=e.stack,l=(0,t.check)(a.pop(),Fe),u=(0,t.check)(a.pop(),$e),c=e.getOwner() e.runtime.resolver e.loadValue(i.$v0,function(e,t,o,s,a,l){let u,c return(0,r.createComputeRef)((()=>{let a=(0,r.valueForRef)(t) -return a===u||(c=me(a,e)?s?ye(e,a,o,s):s:e===i.CurriedTypes.Component&&"string"==typeof a&&a||(0,n.isObject)(a)?ye(e,a,o,s):null,u=a),c}))}(s,u,p,c))})),ae.add(i.Op.DynamicHelper,(e=>{let s,a=e.stack,l=(0,t.check)(a.pop(),Fe),u=(0,t.check)(a.pop(),Be).capture(),c=e.getOwner(),p=(0,r.createComputeRef)((()=>{void 0!==s&&(0,o.destroy)(s) -let t=(0,r.valueForRef)(l) -if(me(t,i.CurriedTypes.Helper)){let{definition:r,owner:i,positional:a,named:c}=be(t),d=gt(e[y],r,l) -void 0!==c&&(u.named=(0,n.assign)({},...c,u.named)),void 0!==a&&(u.positional=a.concat(u.positional)),s=d(u,i),(0,o.associateDestroyableChild)(p,s)}else if((0,n.isObject)(t)){let r=gt(e[y],t,l) -s=r(u,c),(0,o._hasDestroyableChildren)(s)&&(0,o.associateDestroyableChild)(p,s)}else s=r.UNDEFINED_REFERENCE})),d=(0,r.createComputeRef)((()=>((0,r.valueForRef)(p),(0,r.valueForRef)(s)))) -e.associateDestroyable(p),e.loadValue(i.$v0,d)})),ae.add(i.Op.Helper,((e,r)=>{let{op1:n}=r,s=e.stack,a=(0,t.check)(e[y].getValue(n),Ue)((0,t.check)(s.pop(),Be).capture(),e.getOwner(),e.dynamicScope());(0,o._hasDestroyableChildren)(a)&&e.associateDestroyable(a),e.loadValue(i.$v0,a)})),ae.add(i.Op.GetVariable,((e,t)=>{let{op1:r}=t,n=e.referenceForSymbol(r) -e.stack.push(n)})),ae.add(i.Op.SetVariable,((e,r)=>{let{op1:n}=r,i=(0,t.check)(e.stack.pop(),Fe) -e.scope().bindSymbol(n,i)})),ae.add(i.Op.SetBlock,((e,r)=>{let{op1:n}=r,i=(0,t.check)(e.stack.pop(),Ke),o=(0,t.check)(e.stack.pop(),Ve),s=(0,t.check)(e.stack.pop(),t.CheckBlockSymbolTable) -e.scope().bindBlock(n,[i,o,s])})),ae.add(i.Op.ResolveMaybeLocal,((e,t)=>{let{op1:n}=t,i=e[y].getValue(n),o=e.scope().getPartialMap()[i] -void 0===o&&(o=(0,r.childRefFor)(e.getSelf(),i)),e.stack.push(o)})),ae.add(i.Op.RootScope,((e,t)=>{let{op1:r}=t -e.pushRootScope(r,e.getOwner())})),ae.add(i.Op.GetProperty,((e,n)=>{let{op1:i}=n,o=e[y].getValue(i),s=(0,t.check)(e.stack.pop(),Fe) -e.stack.push((0,r.childRefFor)(s,o))})),ae.add(i.Op.GetBlock,((e,t)=>{let{op1:r}=t,{stack:n}=e,i=e.scope().getBlock(r) -n.push(i)})),ae.add(i.Op.SpreadBlock,(e=>{let{stack:r}=e,n=(0,t.check)(r.pop(),(0,t.CheckOption)((0,t.CheckOr)(Xe,He))) -if(n&&!bt(n)){let[e,t,i]=n +return a===u||(c=me(a,e)?s?ye(e,a,o,s):s:e===i.CurriedTypes.Component&&"string"==typeof a&&a||(0,n.isObject)(a)?ye(e,a,o,s):null,u=a),c}))}(o,l,c,u))})),ae.add(i.Op.DynamicHelper,(e=>{let s,a=e.stack,l=(0,t.check)(a.pop(),Fe),u=(0,t.check)(a.pop(),Be).capture(),c=e.getOwner(),p=(0,r.createComputeRef)((()=>{void 0!==s&&(0,o.destroy)(s) +let e=(0,r.valueForRef)(l) +if(me(e,i.CurriedTypes.Helper)){let{definition:t,owner:r,positional:i,named:a}=be(e),c=vt(t,l) +void 0!==a&&(u.named=(0,n.assign)({},...a,u.named)),void 0!==i&&(u.positional=i.concat(u.positional)),s=c(u,r),(0,o.associateDestroyableChild)(p,s)}else if((0,n.isObject)(e)){let t=vt(e,l) +s=t(u,c),(0,o._hasDestroyableChildren)(s)&&(0,o.associateDestroyableChild)(p,s)}else s=r.UNDEFINED_REFERENCE})),d=(0,r.createComputeRef)((()=>((0,r.valueForRef)(p),(0,r.valueForRef)(s)))) +e.associateDestroyable(p),e.loadValue(i.$v0,d)})),ae.add(i.Op.Helper,((e,{op1:r})=>{let n=e.stack,s=(0,t.check)(e[y].getValue(r),Ue)((0,t.check)(n.pop(),Be).capture(),e.getOwner(),e.dynamicScope());(0,o._hasDestroyableChildren)(s)&&e.associateDestroyable(s),e.loadValue(i.$v0,s)})),ae.add(i.Op.GetVariable,((e,{op1:t})=>{let r=e.referenceForSymbol(t) +e.stack.push(r)})),ae.add(i.Op.SetVariable,((e,{op1:r})=>{let n=(0,t.check)(e.stack.pop(),Fe) +e.scope().bindSymbol(r,n)})),ae.add(i.Op.SetBlock,((e,{op1:r})=>{let n=(0,t.check)(e.stack.pop(),Ke),i=(0,t.check)(e.stack.pop(),Ve),o=(0,t.check)(e.stack.pop(),t.CheckBlockSymbolTable) +e.scope().bindBlock(r,[n,i,o])})),ae.add(i.Op.ResolveMaybeLocal,((e,{op1:t})=>{let n=e[y].getValue(t),i=e.scope().getPartialMap()[n] +void 0===i&&(i=(0,r.childRefFor)(e.getSelf(),n)),e.stack.push(i)})),ae.add(i.Op.RootScope,((e,{op1:t})=>{e.pushRootScope(t,e.getOwner())})),ae.add(i.Op.GetProperty,((e,{op1:n})=>{let i=e[y].getValue(n),o=(0,t.check)(e.stack.pop(),Fe) +e.stack.push((0,r.childRefFor)(o,i))})),ae.add(i.Op.GetBlock,((e,{op1:t})=>{let{stack:r}=e,n=e.scope().getBlock(t) +r.push(n)})),ae.add(i.Op.SpreadBlock,(e=>{let{stack:r}=e,n=(0,t.check)(r.pop(),(0,t.CheckOption)((0,t.CheckOr)(Xe,He))) +if(n&&!_t(n)){let[e,t,i]=n r.push(i),r.push(t),r.push(e)}else r.push(null),r.push(null),r.push(null)})),ae.add(i.Op.HasBlock,(e=>{let{stack:n}=e,i=(0,t.check)(n.pop(),(0,t.CheckOption)((0,t.CheckOr)(Xe,He))) -i&&!bt(i)?n.push(r.TRUE_REFERENCE):n.push(r.FALSE_REFERENCE)})),ae.add(i.Op.HasBlockParams,(e=>{let n=e.stack.pop(),i=e.stack.pop();(0,t.check)(n,(0,t.CheckMaybe)((0,t.CheckOr)(t.CheckHandle,Ke))),(0,t.check)(i,(0,t.CheckMaybe)(Ve)) +i&&!_t(i)?n.push(r.TRUE_REFERENCE):n.push(r.FALSE_REFERENCE)})),ae.add(i.Op.HasBlockParams,(e=>{let n=e.stack.pop(),i=e.stack.pop();(0,t.check)(n,(0,t.CheckMaybe)((0,t.CheckOr)(t.CheckHandle,Ke))),(0,t.check)(i,(0,t.CheckMaybe)(Ve)) let o=(0,t.check)(e.stack.pop(),(0,t.CheckMaybe)(t.CheckBlockSymbolTable)),s=o&&o.parameters.length -e.stack.push(s?r.TRUE_REFERENCE:r.FALSE_REFERENCE)})),ae.add(i.Op.Concat,((e,i)=>{let{op1:o}=i,s=new Array(o) -for(let r=o;r>0;r--){s[r-1]=(0,t.check)(e.stack.pop(),Fe)}var a -e.stack.push((a=s,(0,r.createComputeRef)((()=>{let e=new Array -for(const[t,i]of(0,n.enumerate)(a)){let n=(0,r.valueForRef)(i) -null!=n&&(e[t]=mt(n))}return e.length>0?e.join(""):null}))))})),ae.add(i.Op.IfInline,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),o=(0,t.check)(e.stack.pop(),Fe) +e.stack.push(s?r.TRUE_REFERENCE:r.FALSE_REFERENCE)})),ae.add(i.Op.Concat,((e,{op1:n})=>{let i=new Array(n) +for(let r=n;r>0;r--){i[r-1]=(0,t.check)(e.stack.pop(),Fe)}var o +e.stack.push((o=i,(0,r.createComputeRef)((()=>{const e=[] +for(const t of o){const n=(0,r.valueForRef)(t) +null!=n&&e.push(yt(n))}return e.length>0?e.join(""):null}))))})),ae.add(i.Op.IfInline,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),o=(0,t.check)(e.stack.pop(),Fe) e.stack.push((0,r.createComputeRef)((()=>!0===(0,s.toBool)((0,r.valueForRef)(n))?(0,r.valueForRef)(i):(0,r.valueForRef)(o))))})),ae.add(i.Op.Not,(e=>{let n=(0,t.check)(e.stack.pop(),Fe) e.stack.push((0,r.createComputeRef)((()=>!(0,s.toBool)((0,r.valueForRef)(n)))))})),ae.add(i.Op.GetDynamicVar,(e=>{let n=e.dynamicScope(),i=e.stack,o=(0,t.check)(i.pop(),Fe) i.push((0,r.createComputeRef)((()=>{let e=String((0,r.valueForRef)(o)) return(0,r.valueForRef)(n.get(e))})))})),ae.add(i.Op.Log,(e=>{let{positional:n}=(0,t.check)(e.stack.pop(),Be).capture() e.loadValue(i.$v0,(0,r.createComputeRef)((()=>{console.log(...ct(n))})))})) -class yt{constructor(e,t,r){this.node=e,this.reference=t,this.lastValue=r}evaluate(){let e,t=(0,r.valueForRef)(this.reference),{lastValue:n}=this -if(t!==n&&(e=T(t)?"":P(t)?t:String(t),e!==n)){this.node.nodeValue=this.lastValue=e}}}function vt(e){return function(e){return P(e)||T(e)||"boolean"==typeof e||"number"==typeof e}(e)?i.ContentType.String:me(e,i.CurriedType.Component)||(0,l.hasInternalComponentManager)(e)?i.ContentType.Component:me(e,i.CurriedType.Helper)||(0,l.hasInternalHelperManager)(e)?i.ContentType.Helper:S(e)?i.ContentType.SafeString:function(e){return R(e)&&11===e.nodeType}(e)?i.ContentType.Fragment:R(e)?i.ContentType.Node:i.ContentType.String}function _t(e){return(0,n.isObject)(e)?me(e,i.CurriedType.Component)||(0,l.hasInternalComponentManager)(e)?i.ContentType.Component:i.ContentType.Helper:i.ContentType.String}function Ot(e,t){console.info("Use `context`, and `get()` to debug this template."),t("this")}ae.add(i.Op.ContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) -e.stack.push(vt((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,vt))})),ae.add(i.Op.DynamicContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) -e.stack.push(_t((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,_t))})),ae.add(i.Op.AppendHTML,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=T(i)?"":String(i) -e.elements().appendDynamicHTML(o)})),ae.add(i.Op.AppendSafeHTML,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckSafeString).toHTML(),o=T(i)?"":(0,t.check)(i,t.CheckString) -e.elements().appendDynamicHTML(o)})),ae.add(i.Op.AppendText,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=T(i)?"":String(i),s=e.elements().appendDynamicText(o);(0,r.isConstRef)(n)||e.updateWith(new yt(s,n,o))})),ae.add(i.Op.AppendDocumentFragment,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckDocumentFragment) +class Ot{constructor(e,t,r){this.node=e,this.reference=t,this.lastValue=r}evaluate(){let e,t=(0,r.valueForRef)(this.reference),{lastValue:n}=this +if(t!==n&&(e=k(t)?"":S(t)?t:String(t),e!==n)){this.node.nodeValue=this.lastValue=e}}}function wt(e){return function(e){return S(e)||k(e)||"boolean"==typeof e||"number"==typeof e}(e)?i.ContentType.String:me(e,i.CurriedType.Component)||(0,a.hasInternalComponentManager)(e)?i.ContentType.Component:me(e,i.CurriedType.Helper)||(0,a.hasInternalHelperManager)(e)?i.ContentType.Helper:T(e)?i.ContentType.SafeString:function(e){return R(e)&&11===e.nodeType}(e)?i.ContentType.Fragment:R(e)?i.ContentType.Node:i.ContentType.String}function Et(e){return(0,n.isObject)(e)?me(e,i.CurriedType.Component)||(0,a.hasInternalComponentManager)(e)?i.ContentType.Component:i.ContentType.Helper:i.ContentType.String}function Ct(e,t){console.info("Use `context`, and `get()` to debug this template."),t("this")}ae.add(i.Op.ContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) +e.stack.push(wt((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,wt))})),ae.add(i.Op.DynamicContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) +e.stack.push(Et((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,Et))})),ae.add(i.Op.AppendHTML,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=k(i)?"":String(i) +e.elements().appendDynamicHTML(o)})),ae.add(i.Op.AppendSafeHTML,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckSafeString).toHTML(),o=k(i)?"":(0,t.check)(i,t.CheckString) +e.elements().appendDynamicHTML(o)})),ae.add(i.Op.AppendText,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=k(i)?"":String(i),s=e.elements().appendDynamicText(o);(0,r.isConstRef)(n)||e.updateWith(new Ot(s,n,o))})),ae.add(i.Op.AppendDocumentFragment,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckDocumentFragment) e.elements().appendDynamicFragment(i)})),ae.add(i.Op.AppendNode,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckNode) e.elements().appendDynamicNode(i)})) -let wt=Ot -class Ct{constructor(e,t,r){this.locals=(0,n.dict)(),this.scope=e +let kt=Ct +class Tt{constructor(e,t,r){this.locals=(0,n.dict)(),this.scope=e for(const i of r){let r=(0,n.unwrap)(t[i-1]),o=e.getSymbol(i) this.locals[r]=o}}get(e){let t,{scope:i,locals:o}=this,s=e.split("."),[a,...l]=e.split("."),u=i.getEvalScope() -return"this"===a?t=i.getSelf():o[a]?t=(0,n.unwrap)(o[a]):0===a.indexOf("@")&&u[a]?t=u[a]:(t=this.scope.getSelf(),l=s),l.reduce(((e,t)=>(0,r.childRefFor)(e,t)),t)}}ae.add(i.Op.Debugger,((e,t)=>{let{op1:i,op2:o}=t,s=e[y].getArray(i),a=e[y].getArray((0,n.decodeHandle)(o)),l=new Ct(e.scope(),s,a) -wt((0,r.valueForRef)(e.getSelf()),(e=>(0,r.valueForRef)(l.get(e))))})),ae.add(i.Op.EnterList,((e,n)=>{let{op1:i,op2:o}=n,s=e.stack,a=(0,t.check)(s.pop(),Fe),l=(0,t.check)(s.pop(),Fe),u=(0,r.valueForRef)(l),c=null===u?"@identity":String(u),p=(0,r.createIteratorRef)(a,c),d=(0,r.valueForRef)(p) -e.updateWith(new Oe(p,(e=>e.isEmpty()))),!0===d.isEmpty()?e.goto(o+1):(e.enterList(p,i),e.stack.push(d))})),ae.add(i.Op.ExitList,(e=>{e.exitList()})),ae.add(i.Op.Iterate,((e,r)=>{let{op1:n}=r,i=e.stack,o=(0,t.check)(i.peek(),Le).next() -null!==o?e.registerItem(e.enterItem(o)):e.goto(n)})) -const Et={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} -class kt{getCapabilities(){return Et}getDebugName(e){let{name:t}=e -return t}getSelf(){return r.NULL_REFERENCE}getDestroyable(){return null}}e.TemplateOnlyComponentManager=kt -const Tt=e.TEMPLATE_ONLY_COMPONENT_MANAGER=new kt -class St{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"@glimmer/component/template-only",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"(unknown template-only component)" -this.moduleName=e,this.name=t}toString(){return this.moduleName}}e.TemplateOnlyComponent=St,(0,l.setInternalComponentManager)(Tt,St.prototype) -const Rt={foreignObject:1,desc:1,title:1},Pt=Object.create(null) -class xt{constructor(e){this.document=e,this.setupUselessElement()}setupUselessElement(){this.uselessElement=this.document.createElement("div")}createElement(e,t){let r,i -if(t?(r=t.namespaceURI===n.NS_SVG||"svg"===e,i=!!Rt[t.tagName]):(r="svg"===e,i=!1),r&&!i){if(Pt[e])throw new Error(`Cannot create a ${e} inside an SVG context`) +return"this"===a?t=i.getSelf():o[a]?t=(0,n.unwrap)(o[a]):0===a.indexOf("@")&&u[a]?t=u[a]:(t=this.scope.getSelf(),l=s),l.reduce(((e,t)=>(0,r.childRefFor)(e,t)),t)}}ae.add(i.Op.Debugger,((e,{op1:t,op2:i})=>{let o=e[y].getArray(t),s=e[y].getArray((0,n.decodeHandle)(i)),a=new Tt(e.scope(),o,s) +kt((0,r.valueForRef)(e.getSelf()),(e=>(0,r.valueForRef)(a.get(e))))})),ae.add(i.Op.EnterList,((e,{op1:n,op2:i})=>{let o=e.stack,s=(0,t.check)(o.pop(),Fe),a=(0,t.check)(o.pop(),Fe),l=(0,r.valueForRef)(a),u=null===l?"@identity":String(l),c=(0,r.createIteratorRef)(s,u),p=(0,r.valueForRef)(c) +e.updateWith(new Oe(c,(e=>e.isEmpty()))),!0===p.isEmpty()?e.goto(i+1):(e.enterList(c,n),e.stack.push(p))})),ae.add(i.Op.ExitList,(e=>{e.exitList()})),ae.add(i.Op.Iterate,((e,{op1:r})=>{let n=e.stack,i=(0,t.check)(n.peek(),Le).next() +null!==i?e.registerItem(e.enterItem(i)):e.goto(r)})) +const Rt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +class St{getCapabilities(){return Rt}getDebugName({name:e}){return e}getSelf(){return r.NULL_REFERENCE}getDestroyable(){return null}}e.TemplateOnlyComponentManager=St +const Pt=e.TEMPLATE_ONLY_COMPONENT_MANAGER=new St +class At{constructor(e="@glimmer/component/template-only",t="(unknown template-only component)"){this.moduleName=e,this.name=t}toString(){return this.moduleName}}e.TemplateOnlyComponent=At,(0,a.setInternalComponentManager)(Pt,At.prototype) +const xt={foreignObject:1,desc:1,title:1},Mt=Object.create(null) +class Nt{constructor(e){this.document=e,this.setupUselessElement()}setupUselessElement(){this.uselessElement=this.document.createElement("div")}createElement(e,t){let r,i +if(t?(r=t.namespaceURI===n.NS_SVG||"svg"===e,i=!!xt[t.tagName]):(r="svg"===e,i=!1),r&&!i){if(Mt[e])throw new Error(`Cannot create a ${e} inside an SVG context`) return this.document.createElementNS(n.NS_SVG,e)}return this.document.createElement(e)}insertBefore(e,t,r){e.insertBefore(t,r)}insertHTMLBefore(e,t,r){if(""===r){const r=this.createComment("") return e.insertBefore(r,t),new O(e,r,r)}const i=t?t.previousSibling:e.lastChild let o @@ -2632,7 +2553,7 @@ if(null===t)e.insertAdjacentHTML(n.INSERT_BEFORE_END,r),o=(0,n.expect)(e.lastChi else if(t instanceof HTMLElement)t.insertAdjacentHTML("beforebegin",r),o=(0,n.expect)(t.previousSibling,"bug in insertAdjacentHTML?") else{const{uselessElement:i}=this e.insertBefore(i,t),i.insertAdjacentHTML(n.INSERT_BEFORE_BEGIN,r),o=(0,n.expect)(i.previousSibling,"bug in insertAdjacentHTML?"),e.removeChild(i)}const s=(0,n.expect)(i?i.nextSibling:e.firstChild,"bug in insertAdjacentHTML?") -return new O(e,s,o)}createTextNode(e){return this.document.createTextNode(e)}createComment(e){return this.document.createComment(e)}}function At(e,t,r){if(!e)return t +return new O(e,s,o)}createTextNode(e){return this.document.createTextNode(e)}createComment(e){return this.document.createComment(e)}}function Dt(e,t,r){if(!e)return t if(!function(e,t){const r=e.createElementNS(t,"svg") try{r.insertAdjacentHTML(n.INSERT_BEFORE_END,"")}catch(i){}finally{return 1!==r.childNodes.length||(0,n.castToBrowser)((0,n.unwrap)(r.firstChild),"SVG").namespaceURI!==n.NS_SVG}}(e,r))return t const i=e.createElement("div") @@ -2640,82 +2561,69 @@ return class extends t{insertHTMLBefore(e,t,o){return""===o||e.namespaceURI!==r? if((0,n.assert)(""!==r,"html cannot be empty"),"FOREIGNOBJECT"===e.tagName.toUpperCase()){const e=""+r+"";(0,n.clearElement)(t),t.insertAdjacentHTML(n.INSERT_AFTER_BEGIN,e),o=t.firstChild.firstChild}else{const e=""+r+"";(0,n.clearElement)(t),t.insertAdjacentHTML(n.INSERT_AFTER_BEGIN,e),o=t.firstChild}return function(e,t,r){const i=(0,n.expect)(e.firstChild,"source is empty") let o=i,s=i for(;s;){const e=s.nextSibling -t.insertBefore(s,r),o=s,s=e}return new O(t,i,o)}(o,e,i)}(e,i,o,t)}}}function Mt(e,t){return e&&function(e){const t=e.createElement("div") +t.insertBefore(s,r),o=s,s=e}return new O(t,i,o)}(o,e,i)}(e,i,o,t)}}}function jt(e,t){return e&&function(e){const t=e.createElement("div") if(t.appendChild(e.createTextNode("first")),t.insertAdjacentHTML(n.INSERT_BEFORE_END,"second"),2===t.childNodes.length)return!1 return!0}(e)?class extends t{constructor(e){super(e),this.uselessComment=void 0,this.uselessComment=e.createComment("")}insertHTMLBefore(e,t,r){if(""===r)return super.insertHTMLBefore(e,t,r) let n=!1 const i=t?t.previousSibling:e.lastChild i&&i instanceof Text&&(n=!0,e.insertBefore(this.uselessComment,t)) const o=super.insertHTMLBefore(e,t,r) -return n&&e.removeChild(this.uselessComment),o}}:t}const Nt="undefined"==typeof document?null:(0,n.castToSimple)(document) -let jt=class extends xt{createElementNS(e,t){return this.document.createElementNS(e,t)}setAttribute(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null -n?e.setAttributeNS(n,t,r):e.setAttribute(t,r)}} -jt=Mt(Nt,jt),jt=At(Nt,jt,n.NS_SVG) -const Dt=e.DOMTreeConstruction=jt;["b","big","blockquote","body","br","center","code","dd","div","dl","dt","em","embed","h1","h2","h3","h4","h5","h6","head","hr","i","img","li","listing","main","meta","nobr","ol","p","pre","ruby","s","small","span","strong","strike","sub","sup","table","tt","u","ul","var"].forEach((e=>Pt[e]=1)) -const It=/[\t\n\v\f\r \xA0\u{1680}\u{180e}\u{2000}-\u{200a}\u{2028}\u{2029}\u{202f}\u{205f}\u{3000}\u{feff}]/u,Ft="undefined"==typeof document?null:(0,n.castToSimple)(document) -class Lt extends xt{constructor(e){super(e),this.namespace=void 0,this.document=e,this.namespace=null}setAttribute(e,t,r){e.setAttribute(t,r)}removeAttribute(e,t){e.removeAttribute(t)}insertAfter(e,t,r){this.insertBefore(e,t,r.nextSibling)}}e.IDOMChanges=Lt -let Bt=Lt -Bt=Mt(Ft,Bt),Bt=At(Ft,Bt,n.NS_SVG) -e.DOMChanges=Bt -let Ut=0 -class Ht{constructor(e){this.id=Ut++,this.value=void 0,this.value=e}get(){return this.value}release(){this.value=null}toString(){let e=`Ref ${this.id}` +return n&&e.removeChild(this.uselessComment),o}}:t}const It="undefined"==typeof document?null:(0,n.castToSimple)(document) +let Ft=class extends Nt{createElementNS(e,t){return this.document.createElementNS(e,t)}setAttribute(e,t,r,n=null){n?e.setAttributeNS(n,t,r):e.setAttribute(t,r)}} +Ft=jt(It,Ft),Ft=Dt(It,Ft,n.NS_SVG) +const Lt=e.DOMTreeConstruction=Ft;["b","big","blockquote","body","br","center","code","dd","div","dl","dt","em","embed","h1","h2","h3","h4","h5","h6","head","hr","i","img","li","listing","main","meta","nobr","ol","p","pre","ruby","s","small","span","strong","strike","sub","sup","table","tt","u","ul","var"].forEach((e=>Mt[e]=1)) +const Bt=/[\t\n\v\f\r \xA0\u{1680}\u{180e}\u{2000}-\u{200a}\u{2028}\u{2029}\u{202f}\u{205f}\u{3000}\u{feff}]/u,Ut="undefined"==typeof document?null:(0,n.castToSimple)(document) +class Ht extends Nt{constructor(e){super(e),this.namespace=void 0,this.document=e,this.namespace=null}setAttribute(e,t,r){e.setAttribute(t,r)}removeAttribute(e,t){e.removeAttribute(t)}insertAfter(e,t,r){this.insertBefore(e,t,r.nextSibling)}}e.IDOMChanges=Ht +let $t=Ht +$t=jt(Ut,$t),$t=Dt(Ut,$t,n.NS_SVG) +e.DOMChanges=$t +let Vt=0 +class zt{constructor(e){this.id=Vt++,this.value=void 0,this.value=e}get(){return this.value}release(){this.value=null}toString(){let e=`Ref ${this.id}` if(null===this.value)return`${e} (released)` -try{return`${e}: ${this.value}`}catch{return e}}}class $t{constructor(){this.stack=new n.Stack,this.refs=new WeakMap,this.roots=new Set,this.nodes=new WeakMap}begin(){this.reset()}create(e,t){let r=(0,n.assign)({},t,{bounds:null,refs:new Set}) +try{return`${e}: ${this.value}`}catch{return e}}}class qt{constructor(){this.stack=new n.Stack,this.refs=new WeakMap,this.roots=new Set,this.nodes=new WeakMap}begin(){this.reset()}create(e,t){let r=(0,n.assign)({},t,{bounds:null,refs:new Set}) this.nodes.set(e,r),this.appendChild(r,e),this.enter(e)}update(e){this.enter(e)}didRender(e,t){this.nodeFor(e).bounds=t,this.exit()}willDestroy(e){(0,n.expect)(this.refs.get(e),"BUG: missing ref").release()}commit(){this.reset()}capture(){return this.captureRefs(this.roots)}reset(){if(0!==this.stack.size){let e=(0,n.expect)(this.stack.toArray()[0],"expected root state when resetting render tree"),t=this.refs.get(e) -for(void 0!==t&&this.roots.delete(t);!this.stack.isEmpty();)this.stack.pop()}}enter(e){this.stack.push(e)}exit(){this.stack.pop()}nodeFor(e){return(0,n.expect)(this.nodes.get(e),"BUG: missing node")}appendChild(e,t){let r=this.stack.current,n=new Ht(t) +for(void 0!==t&&this.roots.delete(t);!this.stack.isEmpty();)this.stack.pop()}}enter(e){this.stack.push(e)}exit(){this.stack.pop()}nodeFor(e){return(0,n.expect)(this.nodes.get(e),"BUG: missing node")}appendChild(e,t){let r=this.stack.current,n=new zt(t) if(this.refs.set(t,n),r){let t=this.nodeFor(r) t.refs.add(n),e.parent=t}else this.roots.add(n)}captureRefs(e){let t=[] return e.forEach((r=>{let n=r.get() n?t.push(this.captureNode(`render-node:${r.id}`,n)):e.delete(r)})),t}captureNode(e,t){let r=this.nodeFor(t),{type:n,name:i,args:o,instance:s,refs:a}=r,l=this.captureTemplate(r),u=this.captureBounds(r),c=this.captureRefs(a) -return{id:e,type:n,name:i,args:pt(o),instance:s,template:l,bounds:u,children:c}}captureTemplate(e){let{template:t}=e -return t||null}captureBounds(e){let t=(0,n.expect)(e.bounds,"BUG: missing bounds") -return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}}const Vt=Symbol("TRANSACTION") -class zt{constructor(){this.scheduledInstallModifiers=[],this.scheduledUpdateModifiers=[],this.createdComponents=[],this.updatedComponents=[]}didCreate(e){this.createdComponents.push(e)}didUpdate(e){this.updatedComponents.push(e)}scheduleInstallModifier(e){this.scheduledInstallModifiers.push(e)}scheduleUpdateModifier(e){this.scheduledUpdateModifiers.push(e)}commit(){let{createdComponents:e,updatedComponents:t}=this +return{id:e,type:n,name:i,args:ft(o),instance:s,template:l,bounds:u,children:c}}captureTemplate({template:e}){return e||null}captureBounds(e){let t=(0,n.expect)(e.bounds,"BUG: missing bounds") +return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}}const Gt=Symbol("TRANSACTION") +class Wt{constructor(){this.scheduledInstallModifiers=[],this.scheduledUpdateModifiers=[],this.createdComponents=[],this.updatedComponents=[]}didCreate(e){this.createdComponents.push(e)}didUpdate(e){this.updatedComponents.push(e)}scheduleInstallModifier(e){this.scheduledInstallModifiers.push(e)}scheduleUpdateModifier(e){this.scheduledUpdateModifiers.push(e)}commit(){let{createdComponents:e,updatedComponents:t}=this for(const{manager:i,state:o}of e)i.didCreate(o) for(const{manager:i,state:o}of t)i.didUpdate(o) let{scheduledInstallModifiers:r,scheduledUpdateModifiers:n}=this for(const{manager:i,state:o,definition:s}of r){let e=i.getTag(o) -if(null!==e){let t=(0,a.track)((()=>i.install(o)),!1);(0,a.updateTag)(e,t)}else i.install(o)}for(const{manager:i,state:o,definition:s}of n){let e=i.getTag(o) -if(null!==e){let t=(0,a.track)((()=>i.update(o)),!1);(0,a.updateTag)(e,t)}else i.update(o)}}}class qt{constructor(e,t){this[Vt]=null,this.updateOperations=void 0,this.isInteractive=void 0,this.debugRenderTree=void 0,this.delegate=t,this.isInteractive=t.isInteractive,this.debugRenderTree=this.delegate.enableDebugTooling?new $t:void 0,e.appendOperations?(this.appendOperations=e.appendOperations,this.updateOperations=e.updateOperations):e.document&&(this.appendOperations=new Dt(e.document),this.updateOperations=new Lt(e.document))}getAppendOperations(){return this.appendOperations}getDOM(){return(0,n.expect)(this.updateOperations,"Attempted to get DOM updateOperations, but they were not provided by the environment. You may be attempting to rerender in an environment which does not support rerendering, such as SSR.")}begin(){(0,n.assert)(!this[Vt],"A glimmer transaction was begun, but one already exists. You may have a nested transaction, possibly caused by an earlier runtime exception while rendering. Please check your console for the stack trace of any prior exceptions."),this.debugRenderTree?.begin(),this[Vt]=new zt}get transaction(){return(0,n.expect)(this[Vt],"must be in a transaction")}didCreate(e){this.transaction.didCreate(e)}didUpdate(e){this.transaction.didUpdate(e)}scheduleInstallModifier(e){this.isInteractive&&this.transaction.scheduleInstallModifier(e)}scheduleUpdateModifier(e){this.isInteractive&&this.transaction.scheduleUpdateModifier(e)}commit(){let e=this.transaction -this[Vt]=null,e.commit(),this.debugRenderTree?.commit(),this.delegate.onTransactionCommit()}}function Gt(e,t){if(e[Vt])t() +if(null!==e){let t=(0,l.track)((()=>i.install(o)),!1);(0,l.updateTag)(e,t)}else i.install(o)}for(const{manager:i,state:o,definition:s}of n){let e=i.getTag(o) +if(null!==e){let t=(0,l.track)((()=>i.update(o)),!1);(0,l.updateTag)(e,t)}else i.update(o)}}}class Yt{constructor(e,t){this[Gt]=null,this.updateOperations=void 0,this.isInteractive=void 0,this.isArgumentCaptureError=void 0,this.debugRenderTree=void 0,this.delegate=t,this.isInteractive=t.isInteractive,this.debugRenderTree=this.delegate.enableDebugTooling?new qt:void 0,this.isArgumentCaptureError=this.delegate.enableDebugTooling?dt:void 0,e.appendOperations?(this.appendOperations=e.appendOperations,this.updateOperations=e.updateOperations):e.document&&(this.appendOperations=new Lt(e.document),this.updateOperations=new Ht(e.document))}getAppendOperations(){return this.appendOperations}getDOM(){return(0,n.expect)(this.updateOperations,"Attempted to get DOM updateOperations, but they were not provided by the environment. You may be attempting to rerender in an environment which does not support rerendering, such as SSR.")}begin(){(0,n.assert)(!this[Gt],"A glimmer transaction was begun, but one already exists. You may have a nested transaction, possibly caused by an earlier runtime exception while rendering. Please check your console for the stack trace of any prior exceptions."),this.debugRenderTree?.begin(),this[Gt]=new Wt}get transaction(){return(0,n.expect)(this[Gt],"must be in a transaction")}didCreate(e){this.transaction.didCreate(e)}didUpdate(e){this.transaction.didUpdate(e)}scheduleInstallModifier(e){this.isInteractive&&this.transaction.scheduleInstallModifier(e)}scheduleUpdateModifier(e){this.isInteractive&&this.transaction.scheduleUpdateModifier(e)}commit(){let e=this.transaction +this[Gt]=null,e.commit(),this.debugRenderTree?.commit(),this.delegate.onTransactionCommit()}}function Qt(e,t){if(e[Gt])t() else{e.begin() -try{t()}finally{e.commit()}}}function Wt(e){return(0,l.setInternalHelperManager)(e,{})}e.EnvironmentImpl=qt -e.array=Wt((e=>{let{positional:t}=e -return(0,r.createComputeRef)((()=>ct(t)),null,"array")})) -const Yt=e=>(e=>null==e||"function"!=typeof e.toString)(e)?"":String(e),Qt=(e.concat=Wt((e=>{let{positional:t}=e -return(0,r.createComputeRef)((()=>ct(t).map(Yt).join("")),null,"concat")})),(0,n.buildUntouchableThis)("`fn` helper")) -e.fn=Wt((e=>{let{positional:n}=e,i=(0,t.check)(n[0],Kt) -return(0,r.createComputeRef)((()=>function(){let[e,...t]=ct(n) -for(var o=arguments.length,s=new Array(o),a=0;a0?t[0]:s[0] -return(0,r.updateRef)(i,e)}return e.call(Qt,...t,...s)}),null,"fn")})) -function Kt(e){if(!e||!(0,r.isInvokableRef)(e)&&"function"!=typeof(0,r.valueForRef)(e))throw new Error(`You must pass a function as the \`fn\` helper's first argument, you passed ${e?(0,r.valueForRef)(e):e}. While rendering:\n\n${e?.debugLabel}`)}e.get=Wt((e=>{let{positional:t}=e,i=t[0]??r.UNDEFINED_REFERENCE,o=t[1]??r.UNDEFINED_REFERENCE -return(0,r.createComputeRef)((()=>{let e=(0,r.valueForRef)(i) -if((0,n.isDict)(e))return(0,s.getPath)(e,String((0,r.valueForRef)(o)))}),(e=>{let t=(0,r.valueForRef)(i) -if((0,n.isDict)(t))return(0,s.setPath)(t,String((0,r.valueForRef)(o)),e)}),"get")})) -e.hash=Wt((e=>{let{named:t}=e,n=(0,r.createComputeRef)((()=>{let e=ut(t) -return e}),null,"hash"),i=new Map -for(let r in t)i.set(r,t[r]) -return n.children=i,n})) -function Jt(e){return(0,a.getValue)(e.argsCache)}class Xt{constructor(e){this.argsCache=void 0 -let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:()=>ft,r=(0,a.createCache)((()=>t(e))) -this.argsCache=r}get named(){return Jt(this).named||dt}get positional(){return Jt(this).positional||ht}}const Zt=(0,n.buildUntouchableThis)("`on` modifier"),er=(()=>{try{const e=document.createElement("div") -let t,r=0 -return e.addEventListener("click",(()=>r++),{once:!0}),"function"==typeof Event?t=new Event("click"):(t=document.createEvent("Event"),t.initEvent("click",!0,!0)),e.dispatchEvent(t),e.dispatchEvent(t),1===r}catch(e){return!1}})() -class tr{constructor(e,t){this.tag=(0,a.createUpdatableTag)(),this.element=void 0,this.args=void 0,this.once=void 0,this.passive=void 0,this.capture=void 0,this.options=void 0,this.shouldUpdate=!0,this.element=e,this.args=t}updateFromArgs(){let e,{args:i}=this,{once:o,passive:s,capture:a}=ut(i.named) -o!==this.once&&(this.once=o,this.shouldUpdate=!0),s!==this.passive&&(this.passive=s,this.shouldUpdate=!0),a!==this.capture&&(this.capture=a,this.shouldUpdate=!0),void 0!==o||void 0!==s||void 0!==a?e=this.options={once:o,passive:s,capture:a}:this.options=void 0 -let l=(0,n.expect)(i.positional[0],"You must pass a valid DOM event name as the first argument to the `on` modifier"),u=(0,t.check)((0,r.valueForRef)(l),t.CheckString,(()=>"You must pass a valid DOM event name as the first argument to the `on` modifier")) -u!==this.eventName&&(this.eventName=u,this.shouldUpdate=!0) -const c=(0,n.expect)(i.positional[1],"You must pass a function as the second argument to the `on` modifier"),p=(0,t.check)((0,r.valueForRef)(c),t.CheckFunction,(e=>`You must pass a function as the second argument to the \`on\` modifier; you passed ${null===e?"null":typeof e}. While rendering:\n\n${c.debugLabel??"{unlabeled value}"}`)) -p!==this.userProvidedCallback&&(this.userProvidedCallback=p,this.shouldUpdate=!0) -let d=!1===er&&o||!1 -if(this.shouldUpdate)if(d){let t=this.callback=function(r){return!er&&o&&ir(this,u,t,e),p.call(Zt,r)}}else this.callback=p}}let rr=0,nr=0 -function ir(e,t,r,n){nr++,er?e.removeEventListener(t,r,n):void 0!==n&&n.capture?e.removeEventListener(t,r,!0):e.removeEventListener(t,r)}function or(e,t,r,n){rr++,er?e.addEventListener(t,r,n):void 0!==n&&n.capture?e.addEventListener(t,r,!0):e.addEventListener(t,r)}e.on=(0,l.setInternalModifierManager)(new class{constructor(){this.SUPPORTS_EVENT_OPTIONS=er}getDebugName(){return"on"}get counters(){return{adds:rr,removes:nr}}create(e,t,r,n){return new tr(t,n)}getTag(e){return null===e?null:e.tag}install(e){if(null===e)return -e.updateFromArgs() -let{element:t,eventName:r,callback:n,options:i}=e -or(t,r,n,i),(0,o.registerDestructor)(e,(()=>ir(t,r,n,i))),e.shouldUpdate=!1}update(e){if(null===e)return -let{element:t,eventName:r,callback:n,options:i}=e -e.updateFromArgs(),e.shouldUpdate&&(ir(t,r,n,i),or(e.element,e.eventName,e.callback,e.options),e.shouldUpdate=!1)}getDestroyable(e){return e}},{}) +try{t()}finally{e.commit()}}}function Kt(e){return(0,a.setInternalHelperManager)(e,{})}e.EnvironmentImpl=Yt +e.array=Kt((({positional:e})=>(0,r.createComputeRef)((()=>ct(e)),null,"array"))) +const Jt=e=>(e=>null==e||"function"!=typeof e.toString)(e)?"":String(e),Xt=(e.concat=Kt((({positional:e})=>(0,r.createComputeRef)((()=>ct(e).map(Jt).join("")),null,"concat"))),(0,n.buildUntouchableThis)("`fn` helper")) +e.fn=Kt((({positional:e})=>{let n=(0,t.check)(e[0],Zt) +return(0,r.createComputeRef)((()=>(...t)=>{let[i,...o]=ct(e) +if((0,r.isInvokableRef)(n)){let e=o.length>0?o[0]:t[0] +return(0,r.updateRef)(n,e)}return i.call(Xt,...o,...t)}),null,"fn")})) +function Zt(e){if(!e||!(0,r.isInvokableRef)(e)&&"function"!=typeof(0,r.valueForRef)(e))throw new Error(`You must pass a function as the \`fn\` helper's first argument, you passed ${e?(0,r.valueForRef)(e):e}. While rendering:\n\n${e?.debugLabel}`)}e.get=Kt((({positional:e})=>{let t=e[0]??r.UNDEFINED_REFERENCE,i=e[1]??r.UNDEFINED_REFERENCE +return(0,r.createComputeRef)((()=>{let e=(0,r.valueForRef)(t) +if((0,n.isDict)(e))return(0,s.getPath)(e,String((0,r.valueForRef)(i)))}),(e=>{let o=(0,r.valueForRef)(t) +if((0,n.isDict)(o))return(0,s.setPath)(o,String((0,r.valueForRef)(i)),e)}),"get")})),e.hash=Kt((({named:e})=>{let t=(0,r.createComputeRef)((()=>ut(e)),null,"hash"),n=new Map +for(let r in e)n.set(r,e[r]) +return t.children=n,t})) +function er(e){return(0,l.getValue)(e.argsCache)}class tr{constructor(e,t=(()=>bt)){this.argsCache=void 0 +let r=(0,l.createCache)((()=>t(e))) +this.argsCache=r}get named(){return er(this).named||mt}get positional(){return er(this).positional||gt}}(0,n.buildUntouchableThis)("`on` modifier") +class rr{constructor(e,t){this.tag=(0,l.createUpdatableTag)(),this.element=void 0,this.args=void 0,this.listener=null,this.element=e,this.args=t,(0,o.registerDestructor)(this,(()=>{let{element:e,listener:t}=this +if(t){let{eventName:r,callback:n,options:i}=t +or(e,r,n,i)}}))}updateListener(){let{element:e,args:i,listener:o}=this;(0,n.assert)(i.positional[0],"You must pass a valid DOM event name as the first argument to the `on` modifier") +let s=(0,t.check)((0,r.valueForRef)(i.positional[0]),t.CheckString,(()=>"You must pass a valid DOM event name as the first argument to the `on` modifier"));(0,n.assert)(i.positional[1],"You must pass a function as the second argument to the `on` modifier") +let a,l,u,c=(0,t.check)((0,r.valueForRef)(i.positional[1]),t.CheckFunction,(e=>`You must pass a function as the second argument to the \`on\` modifier; you passed ${null===e?"null":typeof e}. While rendering:\n\n${i.positional[1]?.debugLabel??"{unlabeled value}"}`)) +{let{once:e,passive:t,capture:n}=i.named +e&&(a=(0,r.valueForRef)(e)),t&&(l=(0,r.valueForRef)(t)),n&&(u=(0,r.valueForRef)(n))}let p,d=!1 +if(d=null===o||(s!==o.eventName||c!==o.userProvidedCallback||a!==o.once||l!==o.passive||u!==o.capture),d&&(void 0===a&&void 0===l&&void 0===u||(p={once:a,passive:l,capture:u})),d){let t=c +0,this.listener={eventName:s,callback:t,userProvidedCallback:c,once:a,passive:l,capture:u,options:p},o&&or(e,o.eventName,o.callback,o.options),function(e,t,r,n){nr++,e.addEventListener(t,r,n)}(e,s,t,p)}}}let nr=0,ir=0 +function or(e,t,r,n){ir++,e.removeEventListener(t,r,n)}e.on=(0,a.setInternalModifierManager)(new class{getDebugName(){return"on"}getDebugInstance(){return null}get counters(){return{adds:nr,removes:ir}}create(e,t,r,n){return new rr(t,n)}getTag({tag:e}){return e}install(e){e.updateListener()}update(e){e.updateListener()}getDestroyable(e){return e}},{}) class sr{constructor(e,t,r,n,i){this.currentOpSize=0,this.stack=e,this.heap=t,this.program=r,this.externs=n,this.registers=i}fetchRegister(e){return this.registers[e]}loadRegister(e,t){this.registers[e]=t}setPc(e){(0,n.assert)("number"==typeof e&&!isNaN(e),"pc is set to a number"),this.registers[i.$pc]=e}pushFrame(){this.stack.push(this.registers[i.$ra]),this.stack.push(this.registers[i.$fp]),this.registers[i.$fp]=this.registers[i.$sp]-1}popFrame(){this.registers[i.$sp]=this.registers[i.$fp]-1,this.registers[i.$ra]=this.stack.get(0),this.registers[i.$fp]=this.stack.get(1)}pushSmallFrame(){this.stack.push(this.registers[i.$ra])}popSmallFrame(){this.registers[i.$ra]=this.stack.pop()}goto(e){this.setPc(this.target(e))}target(e){return this.registers[i.$pc]+e-this.currentOpSize}call(e){(0,n.assert)(e<4294967295,"Jumping to placeholder address"),this.registers[i.$ra]=this.registers[i.$pc],this.setPc(this.heap.getaddr(e))}returnTo(e){this.registers[i.$ra]=this.target(e)}return(){this.setPc(this.registers[i.$ra])}nextStatement(){let{registers:e,program:t}=this,r=e[i.$pc] if((0,n.assert)("number"==typeof r,"pc is a number"),-1===r)return null let o=t.opcode(r),s=this.currentOpSize=o.size @@ -2725,9 +2633,7 @@ case i.MachineOp.InvokeStatic:return this.call(e.op1) case i.MachineOp.InvokeVirtual:return this.call(this.stack.pop()) case i.MachineOp.Jump:return this.goto(e.op1) case i.MachineOp.Return:return this.return() -case i.MachineOp.ReturnTo:return this.returnTo(e.op1)}}evaluateSyscall(e,t){ae.evaluate(t,e,e.type)}}class ar{constructor(e,t){this.env=void 0,this.dom=void 0,this.alwaysRevalidate=void 0,this.frameStack=new n.Stack -let{alwaysRevalidate:r=!1}=t -this.env=e,this.dom=e.getDOM(),this.alwaysRevalidate=r}execute(e,t){this._execute(e,t)}_execute(e,t){let{frameStack:r}=this +case i.MachineOp.ReturnTo:return this.returnTo(e.op1)}}evaluateSyscall(e,t){ae.evaluate(t,e,e.type)}}class ar{constructor(e,{alwaysRevalidate:t=!1}){this.env=void 0,this.dom=void 0,this.alwaysRevalidate=void 0,this.frameStack=new n.Stack,this.env=e,this.dom=e.getDOM(),this.alwaysRevalidate=t}execute(e,t){this._execute(e,t)}_execute(e,t){let{frameStack:r}=this for(this.try(e,t);!r.isEmpty();){let e=this.frame.nextStatement() void 0!==e?e.evaluate(this):r.pop()}}get frame(){return(0,n.expect)(this.frameStack.current,"bug: expected a frame")}goto(e){this.frame.goto(e)}try(e,t){this.frameStack.push(new hr(e,t))}throw(){this.frame.handleException(),this.frameStack.pop()}}e.UpdatingVM=ar class lr{constructor(e,t){this.state=e,this.resumeCallback=t}resume(e,t){return this.resumeCallback(e,this.state,t)}}class ur{constructor(e,t,r,n){this.children=void 0,this.bounds=void 0,this.state=e,this.runtime=t,this.children=n,this.bounds=r}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}evaluate(e){e.try(this.children,null)}}class cr extends ur{constructor(...e){super(...e),this.type="try"}evaluate(e){e.try(this.children,this)}handleException(){let{state:e,bounds:t,runtime:r}=this;(0,o.destroyChildren)(this) @@ -2747,15 +2653,9 @@ for(let e=i+1;e{t.pushUpdating() let n=t.enterItem(e) -n.index=a.length,a.push(n),r.set(l,n),(0,o.associateDestroyableChild)(this,n)}))}moveItem(e,t,n){let i,o,{children:s}=this;(0,r.updateRef)(e.memo,t.memo),(0,r.updateRef)(e.value,t.value),e.retained=!0,void 0===n?C(e,this.marker):(i=e.lastNode().nextSibling,o=n.firstNode(),i!==o&&C(e,o)),e.index=s.length,s.push(e)}deleteItem(e){(0,o.destroy)(e),E(e),this.opcodeMap.delete(e.key)}}class hr{constructor(e,t){this.current=0,this.ops=e,this.exceptionHandler=t}goto(e){this.current=e}nextStatement(){return this.ops[this.current++]}handleException(){this.exceptionHandler&&this.exceptionHandler.handleException()}}class fr{constructor(e,t,r,n){this.env=e,this.updating=t,this.bounds=r,this.drop=n,(0,o.associateDestroyableChild)(this,n),(0,o.registerDestructor)(this,(()=>E(this.bounds)))}rerender(){let{alwaysRevalidate:e=!1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{alwaysRevalidate:!1},{env:t,updating:r}=this -new ar(t,{alwaysRevalidate:e}).execute(r,this)}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}handleException(){throw"this should never happen"}}class mr{static restore(e){return new this(e.slice(),[0,-1,e.length-1,0])}constructor(){this[g]=void 0 -let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0 -this.stack=e,this[g]=t}push(e){this.stack[++this[g][i.$sp]]=e}dup(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this[g][i.$sp] -this.stack[++this[g][i.$sp]]=this.stack[e]}copy(e,t){this.stack[t]=this.stack[e]}pop(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=this.stack[this[g][i.$sp]] -return this[g][i.$sp]-=e,t}peek(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0 -return this.stack[this[g][i.$sp]-e]}get(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this[g][i.$fp] -return this.stack[t+e]}set(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this[g][i.$fp] -this.stack[r+t]=e}slice(e,t){return this.stack.slice(e,t)}capture(e){let t=this[g][i.$sp]+1,r=t-e +n.index=a.length,a.push(n),r.set(l,n),(0,o.associateDestroyableChild)(this,n)}))}moveItem(e,t,n){let i,o,{children:s}=this;(0,r.updateRef)(e.memo,t.memo),(0,r.updateRef)(e.value,t.value),e.retained=!0,void 0===n?w(e,this.marker):(i=e.lastNode().nextSibling,o=n.firstNode(),i!==o&&w(e,o)),e.index=s.length,s.push(e)}deleteItem(e){(0,o.destroy)(e),E(e),this.opcodeMap.delete(e.key)}}class hr{constructor(e,t){this.current=0,this.ops=e,this.exceptionHandler=t}goto(e){this.current=e}nextStatement(){return this.ops[this.current++]}handleException(){this.exceptionHandler&&this.exceptionHandler.handleException()}}class fr{constructor(e,t,r,n){this.env=e,this.updating=t,this.bounds=r,this.drop=n,(0,o.associateDestroyableChild)(this,n),(0,o.registerDestructor)(this,(()=>E(this.bounds)))}rerender({alwaysRevalidate:e=!1}={alwaysRevalidate:!1}){let{env:t,updating:r}=this +new ar(t,{alwaysRevalidate:e}).execute(r,this)}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}handleException(){throw"this should never happen"}}class mr{static restore(e){return new this(e.slice(),[0,-1,e.length-1,0])}constructor(e=[],t){this[g]=void 0,this.stack=e,this[g]=t}push(e){this.stack[++this[g][i.$sp]]=e}dup(e=this[g][i.$sp]){this.stack[++this[g][i.$sp]]=this.stack[e]}copy(e,t){this.stack[t]=this.stack[e]}pop(e=1){let t=this.stack[this[g][i.$sp]] +return this[g][i.$sp]-=e,t}peek(e=0){return this.stack[this[g][i.$sp]-e]}get(e,t=this[g][i.$fp]){return this.stack[t+e]}set(e,t,r=this[g][i.$fp]){this.stack[r+t]=e}slice(e,t){return this.stack.slice(e,t)}capture(e){let t=this[g][i.$sp]+1,r=t-e return this.stack.slice(r,t)}reset(){this.stack.length=0}toArray(){return this.stack.slice(this[g][i.$fp],this[g][i.$sp]+1)}}class gr{constructor(){this.scope=new n.Stack,this.dynamicScope=new n.Stack,this.updating=new n.Stack,this.cache=new n.Stack,this.list=new n.Stack}}class br{get stack(){return this[h].stack}get pc(){return this[h].fetchRegister(i.$pc)}fetch(e){let t=this.fetchValue(e) this.stack.push(t)}load(e){let t=this.stack.pop() this.loadValue(e,t)}fetchValue(e){if((0,i.isLowLevelRegister)(e))return this[h].fetchRegister(e) @@ -2771,21 +2671,17 @@ case i.$t0:this.t0=t break case i.$t1:this.t1=t break -case i.$v0:this.v0=t}}pushFrame(){this[h].pushFrame()}popFrame(){this[h].popFrame()}goto(e){this[h].goto(e)}call(e){this[h].call(e)}returnTo(e){this[h].returnTo(e)}return(){this[h].return()}constructor(e,t,r,o){this[m]=new gr,this[b]=void 0,this.destructor=void 0,this[f]=new n.Stack,this[y]=void 0,this[v]=void 0,this[h]=void 0,this.s0=null,this.s1=null,this.t0=null,this.t1=null,this.v0=null,this.resume=void 0 -let{pc:s,scope:a,dynamicScope:l,stack:u}=t -this.runtime=e,this.elementStack=r,this.context=o,this.resume=vr(o) -let c=mr.restore(u);(0,n.assert)("number"==typeof s,"pc is a number"),c[g][i.$pc]=s,c[g][i.$sp]=u.length-1,c[g][i.$fp]=-1,this[b]=this.program.heap,this[y]=this.program.constants,this.elementStack=r,this[m].scope.push(a),this[m].dynamicScope.push(l),this[v]=new et,this[h]=new sr(c,this[b],e.program,{debugBefore:e=>ae.debugBefore(this,e),debugAfter:e=>{ae.debugAfter(this,e)}},c[g]),this.destructor={},this[f].push(this.destructor)}static initial(e,t,r){let{handle:n,self:i,dynamicScope:o,treeBuilder:s,numSymbols:a,owner:l}=r,u=d.root(i,a,l),c=yr(e.program.heap.getaddr(n),u,o),p=vr(t)(e,c,s) -return p.pushUpdating(),p}static empty(e,t,n){let{handle:i,treeBuilder:o,dynamicScope:s,owner:a}=t,l=vr(n)(e,yr(e.program.heap.getaddr(i),d.root(r.UNDEFINED_REFERENCE,0,a),s),o) -return l.pushUpdating(),l}compile(e){return(0,n.unwrapHandle)(e.compile(this.context))}get program(){return this.runtime.program}get env(){return this.runtime.env}captureState(e){return{pc:arguments.length>1&&void 0!==arguments[1]?arguments[1]:this[h].fetchRegister(i.$pc),scope:this.scope(),dynamicScope:this.dynamicScope(),stack:this.stack.capture(e)}}capture(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this[h].fetchRegister(i.$pc) -return new lr(this.captureState(e,t),this.resume)}beginCacheGroup(e){let t=this.updating(),r=new we -t.push(r),t.push(new Ce(e)),this[m].cache.push(r),(0,a.beginTrackFrame)(e)}commitCacheGroup(){let e=this.updating(),t=(0,n.expect)(this[m].cache.pop(),"VM BUG: Expected a cache group"),r=(0,a.endTrackFrame)() -e.push(new Ee(t)),t.finalize(r,e.length)}enter(e){let t=this.capture(e),r=this.elements().pushUpdatableBlock(),n=new cr(t,this.runtime,r,[]) -this.didEnter(n)}enterItem(e){let{key:t,value:n,memo:i}=e,{stack:o}=this,s=(0,r.createIteratorItemRef)(n),a=(0,r.createIteratorItemRef)(i) -o.push(s),o.push(a) -let l=this.capture(2),u=this.elements().pushUpdatableBlock(),c=new pr(l,this.runtime,u,t,a,s) -return this.didEnter(c),c}registerItem(e){this.listBlock().initializeChild(e)}enterList(e,t){let r=[],n=this[h].target(t),i=this.capture(0,n),o=this.elements().pushBlockList(r),s=new dr(i,this.runtime,o,r,e) -this[m].list.push(s),this.didEnter(s)}didEnter(e){this.associateDestroyable(e),this[f].push(e),this.updateWith(e),this.pushUpdating(e.children)}exit(){this[f].pop(),this.elements().popBlock(),this.popUpdating()}exitList(){this.exit(),this[m].list.pop()}pushUpdating(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[] -this[m].updating.push(e)}popUpdating(){return(0,n.expect)(this[m].updating.pop(),"can't pop an empty stack")}updateWith(e){this.updating().push(e)}listBlock(){return(0,n.expect)(this[m].list.current,"expected a list block")}associateDestroyable(e){let t=(0,n.expect)(this[f].current,"Expected destructor parent");(0,o.associateDestroyableChild)(t,e)}tryUpdating(){return this[m].updating.current}updating(){return(0,n.expect)(this[m].updating.current,"expected updating opcode on the updating opcode stack")}elements(){return this.elementStack}scope(){return(0,n.expect)(this[m].scope.current,"expected scope on the scope stack")}dynamicScope(){return(0,n.expect)(this[m].dynamicScope.current,"expected dynamic scope on the dynamic scope stack")}pushChildScope(){this[m].scope.push(this.scope().child())}pushDynamicScope(){let e=this.dynamicScope().child() +case i.$v0:this.v0=t}}pushFrame(){this[h].pushFrame()}popFrame(){this[h].popFrame()}goto(e){this[h].goto(e)}call(e){this[h].call(e)}returnTo(e){this[h].returnTo(e)}return(){this[h].return()}constructor(e,{pc:t,scope:r,dynamicScope:o,stack:s},a,l){this[m]=new gr,this[b]=void 0,this.destructor=void 0,this[f]=new n.Stack,this[y]=void 0,this[v]=void 0,this[h]=void 0,this.s0=null,this.s1=null,this.t0=null,this.t1=null,this.v0=null,this.resume=void 0,this.runtime=e,this.elementStack=a,this.context=l,this.resume=vr(l) +let u=mr.restore(s);(0,n.assert)("number"==typeof t,"pc is a number"),u[g][i.$pc]=t,u[g][i.$sp]=s.length-1,u[g][i.$fp]=-1,this[b]=this.program.heap,this[y]=this.program.constants,this.elementStack=a,this[m].scope.push(r),this[m].dynamicScope.push(o),this[v]=new et,this[h]=new sr(u,this[b],e.program,{debugBefore:e=>ae.debugBefore(this,e),debugAfter:e=>{ae.debugAfter(this,e)}},u[g]),this.destructor={},this[f].push(this.destructor)}static initial(e,t,{handle:r,self:n,dynamicScope:i,treeBuilder:o,numSymbols:s,owner:a}){let l=d.root(n,s,a),u=yr(e.program.heap.getaddr(r),l,i),c=vr(t)(e,u,o) +return c.pushUpdating(),c}static empty(e,{handle:t,treeBuilder:n,dynamicScope:i,owner:o},s){let a=vr(s)(e,yr(e.program.heap.getaddr(t),d.root(r.UNDEFINED_REFERENCE,0,o),i),n) +return a.pushUpdating(),a}compile(e){return(0,n.unwrapHandle)(e.compile(this.context))}get program(){return this.runtime.program}get env(){return this.runtime.env}captureState(e,t=this[h].fetchRegister(i.$pc)){return{pc:t,scope:this.scope(),dynamicScope:this.dynamicScope(),stack:this.stack.capture(e)}}capture(e,t=this[h].fetchRegister(i.$pc)){return new lr(this.captureState(e,t),this.resume)}beginCacheGroup(e){let t=this.updating(),r=new we +t.push(r),t.push(new Ee(e)),this[m].cache.push(r),(0,l.beginTrackFrame)(e)}commitCacheGroup(){let e=this.updating(),t=(0,n.expect)(this[m].cache.pop(),"VM BUG: Expected a cache group"),r=(0,l.endTrackFrame)() +e.push(new Ce(t)),t.finalize(r,e.length)}enter(e){let t=this.capture(e),r=this.elements().pushUpdatableBlock(),n=new cr(t,this.runtime,r,[]) +this.didEnter(n)}enterItem({key:e,value:t,memo:n}){let{stack:i}=this,o=(0,r.createIteratorItemRef)(t),s=(0,r.createIteratorItemRef)(n) +i.push(o),i.push(s) +let a=this.capture(2),l=this.elements().pushUpdatableBlock(),u=new pr(a,this.runtime,l,e,s,o) +return this.didEnter(u),u}registerItem(e){this.listBlock().initializeChild(e)}enterList(e,t){let r=[],n=this[h].target(t),i=this.capture(0,n),o=this.elements().pushBlockList(r),s=new dr(i,this.runtime,o,r,e) +this[m].list.push(s),this.didEnter(s)}didEnter(e){this.associateDestroyable(e),this[f].push(e),this.updateWith(e),this.pushUpdating(e.children)}exit(){this[f].pop(),this.elements().popBlock(),this.popUpdating()}exitList(){this.exit(),this[m].list.pop()}pushUpdating(e=[]){this[m].updating.push(e)}popUpdating(){return(0,n.expect)(this[m].updating.pop(),"can't pop an empty stack")}updateWith(e){this.updating().push(e)}listBlock(){return(0,n.expect)(this[m].list.current,"expected a list block")}associateDestroyable(e){let t=(0,n.expect)(this[f].current,"Expected destructor parent");(0,o.associateDestroyableChild)(t,e)}tryUpdating(){return this[m].updating.current}updating(){return(0,n.expect)(this[m].updating.current,"expected updating opcode on the updating opcode stack")}elements(){return this.elementStack}scope(){return(0,n.expect)(this[m].scope.current,"expected scope on the scope stack")}dynamicScope(){return(0,n.expect)(this[m].dynamicScope.current,"expected dynamic scope on the dynamic scope stack")}pushChildScope(){this[m].scope.push(this.scope().child())}pushDynamicScope(){let e=this.dynamicScope().child() return this[m].dynamicScope.push(e),e}pushRootScope(e,t){let r=d.sized(e,t) return this[m].scope.push(r),r}pushScope(e){this[m].scope.push(e)}popScope(){this[m].scope.pop()}popDynamicScope(){this[m].dynamicScope.pop()}getOwner(){return this.scope().owner}getSelf(){return this.scope().getSelf()}referenceForSymbol(e){return this.scope().getSymbol(e)}execute(e){return this._execute(e)}_execute(e){let t e&&e(this) @@ -2794,9 +2690,9 @@ return t.value}next(){let e,{env:t,elementStack:r}=this,n=this[h].nextStatement( return null!==n?(this[h].evaluateOuter(n,this),e={done:!1,value:null}):(this.stack.reset(),e={done:!0,value:new fr(t,this.popUpdating(),r.popBlock(),this.destructor)}),e}bindDynamicScope(e){let t=this.dynamicScope() for(const r of(0,n.reverse)(e))t.set(r,this.stack.pop())}}function yr(e,t,r){return{pc:e,scope:t,dynamicScope:r,stack:[]}}function vr(e){return(t,r,n)=>new br(t,r,n,e)}e.LowLevelVM=br class _r{constructor(e){this.vm=e}next(){return this.vm.next()}sync(){return this.vm.execute()}}const Or=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" -class wr extends _{constructor(e,t,r){super(e,t),this.candidate=null,this.openBlockDepth=void 0,this.injectedOmittedNode=!1,this.startingBlockDepth=r,this.openBlockDepth=r-1}}class Cr extends re{constructor(e,t,r){if(super(e,t,r),this.unmatchedAttributes=null,this.blockDepth=0,this.startingBlockOffset=void 0,r)throw new Error("Rehydration with nextSibling not supported") +class wr extends _{constructor(e,t,r){super(e,t),this.candidate=null,this.openBlockDepth=void 0,this.injectedOmittedNode=!1,this.startingBlockDepth=r,this.openBlockDepth=r-1}}class Er extends re{constructor(e,t,r){if(super(e,t,r),this.unmatchedAttributes=null,this.blockDepth=0,this.startingBlockOffset=void 0,r)throw new Error("Rehydration with nextSibling not supported") let i=this.currentCursor.element.firstChild -for(;null!==i&&!Er(i);)i=i.nextSibling;(0,n.assert)(i,"Must have opening comment for rehydration."),this.candidate=i +for(;null!==i&&!Cr(i);)i=i.nextSibling;(0,n.assert)(i,"Must have opening comment for rehydration."),this.candidate=i const o=Tr(i) if(0!==o){const e=o-1,t=this.dom.createComment(`%+b:${e}%`) i.parentNode.insertBefore(t,this.candidate) @@ -2805,11 +2701,11 @@ for(;null!==r&&(!kr(r)||Tr(r)!==o);)r=r.nextSibling;(0,n.assert)(r,"Must have cl const s=this.dom.createComment(`%-b:${e}%`) i.parentNode.insertBefore(s,r.nextSibling),this.candidate=t,this.startingBlockOffset=e}else this.startingBlockOffset=0}get currentCursor(){return this[te].current}get candidate(){return this.currentCursor?this.currentCursor.candidate:null}set candidate(e){this.currentCursor.candidate=e}disableRehydration(e){const t=this.currentCursor t.candidate=null,t.nextSibling=e}enableRehydration(e){const t=this.currentCursor -t.candidate=e,t.nextSibling=null}pushElement(e){const t=new wr(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,this.blockDepth||0) -null!==this.candidate&&(t.candidate=e.firstChild,this.candidate=e.nextSibling),this[te].push(t)}clearMismatch(e){let t=e +t.candidate=e,t.nextSibling=null}pushElement(e,t=null){const r=new wr(e,t,this.blockDepth||0) +null!==this.candidate&&(r.candidate=e.firstChild,this.candidate=e.nextSibling),this[te].push(r)}clearMismatch(e){let t=e const r=this.currentCursor if(null!==r){const e=r.openBlockDepth -if(e>=r.startingBlockDepth)for(;t;){if(kr(t)){if(e>=Sr(t,this.startingBlockOffset))break}t=this.remove(t)}else for(;null!==t;)t=this.remove(t) +if(e>=r.startingBlockDepth)for(;t;){if(kr(t)){if(e>=Rr(t,this.startingBlockOffset))break}t=this.remove(t)}else for(;null!==t;)t=this.remove(t) this.disableRehydration(t)}}__openBlock(){const{currentCursor:e}=this if(null===e)return const t=this.blockDepth @@ -2817,34 +2713,34 @@ this.blockDepth++ const{candidate:r}=e if(null===r)return const{tagName:n}=e.element -Er(r)&&Sr(r,this.startingBlockOffset)===t?(this.candidate=this.remove(r),e.openBlockDepth=t):"TITLE"!==n&&"SCRIPT"!==n&&"STYLE"!==n&&this.clearMismatch(r)}__closeBlock(){const{currentCursor:e}=this +Cr(r)&&Rr(r,this.startingBlockOffset)===t?(this.candidate=this.remove(r),e.openBlockDepth=t):"TITLE"!==n&&"SCRIPT"!==n&&"STYLE"!==n&&this.clearMismatch(r)}__closeBlock(){const{currentCursor:e}=this if(null===e)return const t=e.openBlockDepth this.blockDepth-- const{candidate:r}=e let n=!1 -if(null!==r)if(n=!0,kr(r)&&Sr(r,this.startingBlockOffset)===t){const t=this.remove(r) +if(null!==r)if(n=!0,kr(r)&&Rr(r,this.startingBlockOffset)===t){const t=this.remove(r) this.candidate=t,e.openBlockDepth--}else this.clearMismatch(r),n=!1 if(!1===n){const t=e.nextSibling -if(null!==t&&kr(t)&&Sr(t,this.startingBlockOffset)===this.blockDepth){const r=this.remove(t) +if(null!==t&&kr(t)&&Rr(t,this.startingBlockOffset)===this.blockDepth){const r=this.remove(t) this.enableRehydration(r),e.openBlockDepth--}}}__appendNode(e){const{candidate:t}=this return t||super.__appendNode(e)}__appendHTML(e){const t=this.markerBounds() if(t){const e=t.firstNode(),r=t.lastNode(),n=new O(this.element,e.nextSibling,r.previousSibling),i=this.remove(e) -return this.remove(r),null!==i&&xr(i)&&(this.candidate=this.remove(i),null!==this.candidate&&this.clearMismatch(this.candidate)),n}return super.__appendHTML(e)}remove(e){const t=(0,n.expect)(e.parentNode,"cannot remove a detached node"),r=e.nextSibling +return this.remove(r),null!==i&&Ar(i)&&(this.candidate=this.remove(i),null!==this.candidate&&this.clearMismatch(this.candidate)),n}return super.__appendHTML(e)}remove(e){const t=(0,n.expect)(e.parentNode,"cannot remove a detached node"),r=e.nextSibling return t.removeChild(e),r}markerBounds(){const e=this.candidate if(e&&Pr(e)){const t=e let r=(0,n.expect)(t.nextSibling,"BUG: serialization markers must be paired") for(;r&&!Pr(r);)r=(0,n.expect)(r.nextSibling,"BUG: serialization markers must be paired") return new O(this.element,t,r)}return null}__appendText(e){const{candidate:t}=this -return t?3===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):function(e){return 8===e.nodeType&&"%|%"===e.nodeValue}(t)||xr(t)&&""===e?(this.candidate=this.remove(t),this.__appendText(e)):(this.clearMismatch(t),super.__appendText(e)):super.__appendText(e)}__appendComment(e){const t=this.candidate +return t?3===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):function(e){return 8===e.nodeType&&"%|%"===e.nodeValue}(t)||Ar(t)&&""===e?(this.candidate=this.remove(t),this.__appendText(e)):(this.clearMismatch(t),super.__appendText(e)):super.__appendText(e)}__appendComment(e){const t=this.candidate return t&&8===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):(t&&this.clearMismatch(t),super.__appendComment(e))}__openElement(e){const t=this.candidate -if(t&&Rr(t)&&function(e,t){if(e.namespaceURI===n.NS_SVG)return e.tagName===t +if(t&&Sr(t)&&function(e,t){if(e.namespaceURI===n.NS_SVG)return e.tagName===t return e.tagName===t.toUpperCase()}(t,e))return this.unmatchedAttributes=[].slice.call(t.attributes),t -if(t){if(Rr(t)&&"TBODY"===t.tagName)return this.pushElement(t,null),this.currentCursor.injectedOmittedNode=!0,this.__openElement(e) +if(t){if(Sr(t)&&"TBODY"===t.tagName)return this.pushElement(t,null),this.currentCursor.injectedOmittedNode=!0,this.__openElement(e) this.clearMismatch(t)}return super.__openElement(e)}__setAttribute(e,t,r){const n=this.unmatchedAttributes -if(n){const r=Ar(n,e) +if(n){const r=xr(n,e) if(r)return r.value!==t&&(r.value=t),void n.splice(n.indexOf(r),1)}return super.__setAttribute(e,t,r)}__setProperty(e,t){const r=this.unmatchedAttributes -if(r){const n=Ar(r,e) +if(r){const n=xr(r,e) if(n)return n.value!==t&&(n.value=t),void r.splice(r.indexOf(n),1)}return super.__setProperty(e,t)}__flushElement(e,t){const{unmatchedAttributes:r}=this if(r){for(const e of r)this.constructing.removeAttribute(e.name) this.unmatchedAttributes=null}else super.__flushElement(e,t)}willCloseElement(){const{candidate:e,currentCursor:t}=this @@ -2855,54 +2751,44 @@ r=null}const o=new wr(e,null,this.blockDepth) this[te].push(o),null===i?this.disableRehydration(r):this.candidate=this.remove(i) const s=new ie(e) return this.pushLiveBlock(s,!0)}didAppendBounds(e){if(super.didAppendBounds(e),this.candidate){const t=e.lastNode() -this.candidate=t&&t.nextSibling}return e}}function Er(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%+b:",0)}function kr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%-b:",0)}function Tr(e){return parseInt(e.nodeValue.slice(4),10)}function Sr(e,t){return Tr(e)-t}function Rr(e){return 1===e.nodeType}function Pr(e){return 8===e.nodeType&&"%glmr%"===e.nodeValue}function xr(e){return 8===e.nodeType&&"% %"===e.nodeValue}function Ar(e,t){for(const r of e)if(r.name===t)return r}e.RehydrateBuilder=Cr})),e("@glimmer/tracking/index",["exports","@ember/-internals/metal"],(function(e,t){"use strict" +this.candidate=t&&t.nextSibling}return e}}function Cr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%+b:",0)}function kr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%-b:",0)}function Tr(e){return parseInt(e.nodeValue.slice(4),10)}function Rr(e,t){return Tr(e)-t}function Sr(e){return 1===e.nodeType}function Pr(e){return 8===e.nodeType&&"%glmr%"===e.nodeValue}function Ar(e){return 8===e.nodeType&&"% %"===e.nodeValue}function xr(e,t){for(const r of e)if(r.name===t)return r}e.RehydrateBuilder=Er})),e("@glimmer/tracking/index",["exports","@ember/-internals/metal"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"cached",{enumerable:!0,get:function(){return t.cached}}),Object.defineProperty(e,"tracked",{enumerable:!0,get:function(){return t.tracked}})})),e("@glimmer/tracking/primitives/cache",["exports","@ember/-internals/metal"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return t.createCache}}),Object.defineProperty(e,"getValue",{enumerable:!0,get:function(){return t.getValue}}),Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return t.isConst}})})),e("@glimmer/util",["exports"],(function(e){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.TEXT_NODE=e.Stack=e.SERIALIZATION_FIRST_NODE_STRING=e.RAW_NODE=e.NS_XMLNS=e.NS_XML=e.NS_XLINK=e.NS_SVG=e.NS_MATHML=e.NS_HTML=e.LOGGER=e.LOCAL_LOGGER=e.ImmediateConstants=e.INSERT_BEFORE_END=e.INSERT_BEFORE_BEGIN=e.INSERT_AFTER_END=e.INSERT_AFTER_BEGIN=e.EMPTY_STRING_ARRAY=e.EMPTY_NUMBER_ARRAY=e.EMPTY_ARRAY=e.ELEMENT_NODE=e.DOCUMENT_TYPE_NODE=e.DOCUMENT_NODE=e.DOCUMENT_FRAGMENT_NODE=e.COMMENT_NODE=void 0,e.arrayToOption=function(e){return a(e)?e:null},e.asPresentArray=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"unexpected empty list" -return l(e,t),e},e.assert=function(e,t){if(!e)throw new Error(t||"assertion failure")},e.assertNever=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"unexpected unreachable branch" -throw S.log("unreachable",e),S.log(`${t} :: ${JSON.stringify(e)} (${e})`),new Error("code reached unreachable")},e.assertPresent=function(e,t){if(!s(e))throw new Error(`Expected present, got ${"string"==typeof e?e:t}`)},e.assertPresentArray=l,e.beginTestSteps=e.assign=void 0,e.buildUntouchableThis=function(e){let t=null +Object.defineProperty(e,"__esModule",{value:!0}),e.TEXT_NODE=e.Stack=e.SERIALIZATION_FIRST_NODE_STRING=e.RAW_NODE=e.NS_XMLNS=e.NS_XML=e.NS_XLINK=e.NS_SVG=e.NS_MATHML=e.NS_HTML=e.LOGGER=e.LOCAL_LOGGER=e.ImmediateConstants=e.INSERT_BEFORE_END=e.INSERT_BEFORE_BEGIN=e.INSERT_AFTER_END=e.INSERT_AFTER_BEGIN=e.EMPTY_STRING_ARRAY=e.EMPTY_NUMBER_ARRAY=e.EMPTY_ARRAY=e.ELEMENT_NODE=e.DOCUMENT_TYPE_NODE=e.DOCUMENT_NODE=e.DOCUMENT_FRAGMENT_NODE=e.COMMENT_NODE=void 0,e.arrayToOption=function(e){return a(e)?e:null},e.asPresentArray=function(e,t="unexpected empty list"){return l(e,t),e},e.assert=function(e,t){if(!e)throw new Error(t||"assertion failure")},e.assertNever=function(e,t="unexpected unreachable branch"){throw R.log("unreachable",e),R.log(`${t} :: ${JSON.stringify(e)} (${e})`),new Error("code reached unreachable")},e.assertPresent=function(e,t){if(!s(e))throw new Error(`Expected present, got ${"string"==typeof e?e:t}`)},e.assertPresentArray=l,e.beginTestSteps=e.assign=void 0,e.buildUntouchableThis=function(e){let t=null 0 return t},e.castToBrowser=function(e,t){if(null==e)return null if(void 0===typeof document)throw new Error("Attempted to cast to a browser node in a non-browser context") if(w(e))return e if(e.ownerDocument!==document)throw new Error("Attempted to cast to a browser node with a node that was not created from this document") -return E(e,t)},e.castToSimple=function(e){return w(e)||C(e),e},e.checkNode=E,e.clearElement=function(e){let t=e.firstChild +return C(e,t)},e.castToSimple=function(e){return w(e)||E(e),e},e.checkNode=C,e.clearElement=function(e){let t=e.firstChild for(;t;){let r=t.nextSibling -e.removeChild(t),t=r}},e.constants=function(){for(var e=arguments.length,t=new Array(e),r=0;r=0},e.isNonPrimitiveHandle=function(e){return e>f.ENCODED_UNDEFINED_HANDLE},e.isObject=function(e){return"function"==typeof e||"object"==typeof e&&null!==e},e.isOkHandle=function(e){return"number"==typeof e},e.isPresent=s,e.isPresentArray=a,e.isSerializationFirstNode=function(e){return e.nodeValue===O},e.isSimpleElement=C,e.isSmallInt=function(e){return e%1==0&&e<=f.MAX_INT&&e>=f.MIN_INT},e.keys=function(e){return Object.keys(e)},e.logStep=void 0,e.mapPresentArray=function(e,t){if(null===e)return null +return e},e.isDict=function(e){return null!=e},e.isElement=function(e){return e?.nodeType===d&&e instanceof Element},e.isEmptyArray=function(e){return e===t},e.isErrHandle=function(e){return"number"==typeof e},e.isHandle=function(e){return e>=0},e.isNonPrimitiveHandle=function(e){return e>f.ENCODED_UNDEFINED_HANDLE},e.isObject=function(e){return"function"==typeof e||"object"==typeof e&&null!==e},e.isOkHandle=function(e){return"number"==typeof e},e.isPresent=s,e.isPresentArray=a,e.isSerializationFirstNode=function(e){return e.nodeValue===O},e.isSimpleElement=E,e.isSmallInt=function(e){return e%1==0&&e<=f.MAX_INT&&e>=f.MIN_INT},e.keys=function(e){return Object.keys(e)},e.logStep=void 0,e.mapPresentArray=function(e,t){if(null===e)return null let r=[] for(let n of e)r.push(t(n)) -return r},e.reverse=function*(e){for(let t=e.length-1;t>=0;t--)yield e[t]},e.strip=function(e){let t="" -for(var r=arguments.length,i=new Array(r>1?r-1:0),o=1;o=0;t--)yield e[t]},e.strip=function(e,...t){let r="" +for(const[a,l]of n(e)){r+=`${l}${void 0!==t[a]?String(t[a]):""}`}let i=r.split("\n") +for(;a(i)&&/^\s*$/u.test(c(i));)i.shift() +for(;a(i)&&/^\s*$/u.test(u(i));)i.pop() +let o=1/0 +for(let n of i){let e=/^\s*/u.exec(n)[0].length +o=Math.min(o,e)}let s=[] +for(let n of i)s.push(n.slice(o)) +return s.join("\n")},e.tuple=void 0,e.unreachable=o,e.unwrap=i,e.unwrapHandle=function(e){if("number"==typeof e)return e {let t=e.errors[0] -throw new Error(`Compile Error: ${t.problem} @ ${t.span.start}..${t.span.end}`)}} -e.unwrapTemplate=function(e){if("error"===e.result)throw new Error(`Compile Error: ${e.problem} @ ${e.span.start}..${e.span.end}`) -return e},e.values=function(e){return Object.values(e)},e.verifySteps=void 0 +throw new Error(`Compile Error: ${t.problem} @ ${t.span.start}..${t.span.end}`)}},e.unwrapTemplate=function(e){if("error"===e.result)throw new Error(`Compile Error: ${e.problem} @ ${e.span.start}..${e.span.end}`) +return e} +e.values=function(e){return Object.values(e)},e.verifySteps=void 0 const t=e.EMPTY_ARRAY=Object.freeze([]) function r(){return t}e.EMPTY_STRING_ARRAY=r(),e.EMPTY_NUMBER_ARRAY=r() function*n(e){let t=0 for(const r of e)yield[t++,r]}function i(e){if(null==e)throw new Error("Expected value to be present") -return e}function o(){return new Error(arguments.length>0&&void 0!==arguments[0]?arguments[0]:"unreachable")}function s(e){return null!=e}function a(e){return e.length>0}function l(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"unexpected empty list" -if(!a(e))throw new Error(t)}function u(e){return 0===e.length?void 0:e[e.length-1]}function c(e){return 0===e.length?void 0:e[0]}e.tuple=function(){for(var e=arguments.length,t=new Array(e),r=0;r0&&void 0!==arguments[0]?arguments[0]:[] -this.stack=e}get size(){return this.stack.length}push(e){this.current=e,this.stack.push(e)}pop(){let e=this.stack.pop() +return e}function o(e="unreachable"){return new Error(e)}function s(e){return null!=e}function a(e){return e.length>0}function l(e,t="unexpected empty list"){if(!a(e))throw new Error(t)}function u(e){return 0===e.length?void 0:e[e.length-1]}function c(e){return 0===e.length?void 0:e[0]}e.tuple=(...e)=>e +e.Stack=class{constructor(e=[]){this.stack=void 0,this.current=null,this.stack=e}get size(){return this.stack.length}push(e){this.current=e,this.stack.push(e)}pop(){let e=this.stack.pop() return this.current=u(this.stack)??null,void 0===e?null:e}nth(e){let t=this.stack.length return tf.SIGN_BIT?y(e):g(e)}[1,-1].forEach((e=>_(v(e)))) const O=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" e.assign=Object.assign -function w(e){return e.nodeType===h}function C(e){return e?.nodeType===d}function E(e,t){let r=!1 +function w(e){return e.nodeType===h}function E(e){return e?.nodeType===d}function C(e,t){let r=!1 if(null!==e)if("string"==typeof t)r=k(e,t) else{if(!Array.isArray(t))throw o() r=t.some((t=>k(e,t)))}if(r&&e instanceof Node)return e @@ -2924,24 +2810,24 @@ case"HTML":return e instanceof HTMLElement case"SVG":return e instanceof SVGElement case"ELEMENT":return e instanceof Element default:if(t.toUpperCase()===t)throw new Error("BUG: this code is missing handling for a generic node type") -return e instanceof Element&&e.tagName.toLowerCase()===t}}const T=e.LOCAL_LOGGER=console,S=e.LOGGER=console})),e("@glimmer/validator",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" +return e instanceof Element&&e.tagName.toLowerCase()===t}}const T=e.LOCAL_LOGGER=console,R=e.LOGGER=console})),e("@glimmer/validator",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" function n(e){if(null==e)throw new Error("Expected value to be present") -return e}Object.defineProperty(e,"__esModule",{value:!0}),e.VolatileTag=e.VOLATILE_TAG=e.VOLATILE=e.INITIAL=e.CurrentTag=e.CURRENT_TAG=e.CONSTANT_TAG=e.CONSTANT=e.COMPUTE=e.ALLOW_CYCLES=void 0,e.beginTrackFrame=M,e.beginUntrackFrame=j,e.bump=function(){s++},e.combine=void 0,e.consumeTag=I,e.createCache=function(e,t){0 +return e}Object.defineProperty(e,"__esModule",{value:!0}),e.VolatileTag=e.VOLATILE_TAG=e.VOLATILE=e.INITIAL=e.CurrentTag=e.CURRENT_TAG=e.CONSTANT_TAG=e.CONSTANT=e.COMPUTE=e.ALLOW_CYCLES=void 0,e.beginTrackFrame=M,e.beginUntrackFrame=D,e.bump=function(){s++},e.combine=void 0,e.consumeTag=I,e.createCache=function(e,t){0 let r={[F]:e,[L]:void 0,[B]:void 0,[U]:-1} 0 -return r},e.createTag=function(){return new h(a)},e.createUpdatableTag=g,e.dirtyTag=e.debug=void 0,e.dirtyTagFor=T,e.endTrackFrame=N,e.endUntrackFrame=D,e.getValue=function(e){H(e,"getValue") +return r},e.createTag=function(){return new h(a)},e.createUpdatableTag=g,e.dirtyTag=e.debug=void 0,e.dirtyTagFor=T,e.endTrackFrame=N,e.endUntrackFrame=j,e.getValue=function(e){H(e,"getValue") let t=e[F],r=e[B],n=e[U] if(void 0!==r&&p(r,n))I(r) else{M() try{e[L]=t()}finally{r=N(),e[B]=r,e[U]=c(r),I(r)}}return e[L]},e.isConst=function(e){H(e,"isConst") let t=e[B] -return function(e,t){0}(),y(t)},e.isConstTag=y,e.isTracking=function(){return null!==x},e.resetTracking=function(){for(;A.length>0;)A.pop() -x=null,!1},e.tagFor=R,e.tagMetaFor=S,e.track=function(e,t){let r +return function(e,t){0}(),y(t)},e.isConstTag=y,e.isTracking=function(){return null!==A},e.resetTracking=function(){for(;x.length>0;)x.pop() +A=null,!1},e.tagFor=S,e.tagMetaFor=R,e.track=function(e,t){let r M(t) try{e()}finally{r=N()}return r},e.trackedData=function(e,t){let r=new WeakMap,n="function"==typeof t return{getter:function(i){let o -return I(R(i,e)),n&&!r.has(i)?(o=t.call(i),r.set(i,o)):o=r.get(i),o},setter:function(t,n){T(t,e),r.set(t,n)}}},e.untrack=function(e){j() -try{return e()}finally{D()}},e.updateTag=void 0,e.validateTag=p,e.valueForTag=c +return I(S(i,e)),n&&!r.has(i)?(o=t.call(i),r.set(i,o)):o=r.get(i),o},setter:function(t,n){T(t,e),r.set(t,n)}}},e.untrack=function(e){D() +try{return e()}finally{j()}},e.updateTag=void 0,e.validateTag=p,e.valueForTag=c e.debug={} e.CONSTANT=0 const i=e.INITIAL=1,o=e.VOLATILE=NaN @@ -2966,22 +2852,19 @@ e.VOLATILE_TAG=new v class _{constructor(){this[d]=101}[u](){return s}}e.CurrentTag=_ e.CURRENT_TAG=new _ const O=e.combine=h.combine -let w=g(),C=g(),E=g() -c(w),f(w),c(w),m(w,O([C,E])),c(w),f(C),c(w),f(E),c(w),m(w,E),c(w),f(E),c(w) +let w=g(),E=g(),C=g() +c(w),f(w),c(w),m(w,O([E,C])),c(w),f(E),c(w),f(C),c(w),m(w,C),c(w),f(C),c(w) const k=new WeakMap function T(e,t,r){let n=void 0===r?k.get(e):r if(void 0===n)return let i=n.get(t) -void 0!==i&&f(i,!0)}function S(e){let t=k.get(e) -return void 0===t&&(t=new Map,k.set(e,t)),t}function R(e,t,r){let n=void 0===r?S(e):r,i=n.get(t) +void 0!==i&&f(i,!0)}function R(e){let t=k.get(e) +return void 0===t&&(t=new Map,k.set(e,t)),t}function S(e,t,r){let n=void 0===r?R(e):r,i=n.get(t) return void 0===i&&(i=g(),n.set(t,i)),i}class P{constructor(){this.tags=new Set,this.last=null}add(e){e!==b&&(this.tags.add(e),this.last=e)}combine(){let{tags:e}=this -if(0===e.size)return b -if(1===e.size)return this.last -{let t=[] -return e.forEach((e=>t.push(e))),O(t)}}}let x=null -const A=[] -function M(e){A.push(x),x=new P}function N(){let e=x -return x=A.pop()||null,n(e).combine()}function j(){A.push(x),x=null}function D(){x=A.pop()||null}function I(e){null!==x&&x.add(e)}const F=Symbol("FN"),L=Symbol("LAST_VALUE"),B=Symbol("TAG"),U=Symbol("SNAPSHOT") +return 0===e.size?b:1===e.size?this.last:O(Array.from(this.tags))}}let A=null +const x=[] +function M(e){x.push(A),A=new P}function N(){let e=A +return A=x.pop()||null,n(e).combine()}function D(){x.push(A),A=null}function j(){A=x.pop()||null}function I(e){null!==A&&A.add(e)}const F=Symbol("FN"),L=Symbol("LAST_VALUE"),B=Symbol("TAG"),U=Symbol("SNAPSHOT") Symbol("DEBUG_LABEL") function H(e,t){0}const $=Symbol("GLIMMER_VALIDATOR_REGISTRATION"),V=function(){if("undefined"!=typeof globalThis)return globalThis if("undefined"!=typeof self)return self @@ -2998,8 +2881,8 @@ e.$s0=4,e.$s1=5,e.$t0=6,e.$t1=7,e.$v0=8 e.MachineRegister=function(e){return e[e.pc=0]="pc",e[e.ra=1]="ra",e[e.fp=2]="fp",e[e.sp=3]="sp",e}({}) e.SavedRegister=function(e){return e[e.s0=4]="s0",e[e.s1=5]="s1",e}({}),e.TemporaryRegister=function(e){return e[e.t0=6]="t0",e[e.t1=7]="t1",e}({})})),e("@glimmer/wire-format",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.WellKnownTagNames=e.WellKnownAttrNames=e.VariableResolutionContext=e.SexpOpcodes=void 0,e.getStringFromValue=function(e){return e},e.is=r,e.isArgument=function(e){return e[0]===t.StaticArg||e[0]===t.DynamicArg},e.isAttribute=function(e){return e[0]===t.StaticAttr||e[0]===t.DynamicAttr||e[0]===t.TrustingDynamicAttr||e[0]===t.ComponentAttr||e[0]===t.StaticComponentAttr||e[0]===t.TrustingComponentAttr||e[0]===t.AttrSplat||e[0]===t.Modifier},e.isGet=e.isFlushElement=void 0,e.isHelper=function(e){return Array.isArray(e)&&e[0]===t.Call},e.isStringLiteral=function(e){return"string"==typeof e} -const t=e.SexpOpcodes={Append:1,TrustingAppend:2,Comment:3,Modifier:4,StrictModifier:5,Block:6,StrictBlock:7,Component:8,OpenElement:10,OpenElementWithSplat:11,FlushElement:12,CloseElement:13,StaticAttr:14,DynamicAttr:15,ComponentAttr:16,AttrSplat:17,Yield:18,DynamicArg:20,StaticArg:21,TrustingDynamicAttr:22,TrustingComponentAttr:23,StaticComponentAttr:24,Debugger:26,Undefined:27,Call:28,Concat:29,GetSymbol:30,GetLexicalSymbol:32,GetStrictKeyword:31,GetFreeAsComponentOrHelperHeadOrThisFallback:34,GetFreeAsComponentOrHelperHead:35,GetFreeAsHelperHeadOrThisFallback:36,GetFreeAsDeprecatedHelperHeadOrThisFallback:99,GetFreeAsHelperHead:37,GetFreeAsModifierHead:38,GetFreeAsComponentHead:39,InElement:40,If:41,Each:42,With:43,Let:44,WithDynamicVars:45,InvokeComponent:46,HasBlock:48,HasBlockParams:49,Curry:50,Not:51,IfInline:52,GetDynamicVar:53,Log:54} -e.VariableResolutionContext={Strict:0,AmbiguousAppend:1,AmbiguousAppendInvoke:2,AmbiguousInvoke:3,ResolveAsCallHead:5,ResolveAsModifierHead:6,ResolveAsComponentHead:7},e.WellKnownAttrNames={class:0,id:1,value:2,name:3,type:4,style:5,href:6},e.WellKnownTagNames={div:0,span:1,p:2,a:3} +const t=e.SexpOpcodes={Append:1,TrustingAppend:2,Comment:3,Modifier:4,StrictModifier:5,Block:6,StrictBlock:7,Component:8,OpenElement:10,OpenElementWithSplat:11,FlushElement:12,CloseElement:13,StaticAttr:14,DynamicAttr:15,ComponentAttr:16,AttrSplat:17,Yield:18,DynamicArg:20,StaticArg:21,TrustingDynamicAttr:22,TrustingComponentAttr:23,StaticComponentAttr:24,Debugger:26,Undefined:27,Call:28,Concat:29,GetSymbol:30,GetLexicalSymbol:32,GetStrictKeyword:31,GetFreeAsComponentOrHelperHead:35,GetFreeAsHelperHead:37,GetFreeAsModifierHead:38,GetFreeAsComponentHead:39,InElement:40,If:41,Each:42,Let:44,WithDynamicVars:45,InvokeComponent:46,HasBlock:48,HasBlockParams:49,Curry:50,Not:51,IfInline:52,GetDynamicVar:53,Log:54} +e.VariableResolutionContext={Strict:0,ResolveAsComponentOrHelperHead:1,ResolveAsHelperHead:5,ResolveAsModifierHead:6,ResolveAsComponentHead:7},e.WellKnownAttrNames={class:0,id:1,value:2,name:3,type:4,style:5,href:6},e.WellKnownTagNames={div:0,span:1,p:2,a:3} function r(e){return function(t){return Array.isArray(t)&&t[0]===e}}e.isFlushElement=r(t.FlushElement) e.isGet=r(t.GetSymbol)})),e("@simple-dom/document",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){const e=new d(null,9,"#document",null,"http://www.w3.org/1999/xhtml"),t=new d(e,10,"html",null,"http://www.w3.org/1999/xhtml"),r=new d(e,1,"HTML",null,"http://www.w3.org/1999/xhtml"),n=new d(e,1,"HEAD",null,"http://www.w3.org/1999/xhtml"),i=new d(e,1,"BODY",null,"http://www.w3.org/1999/xhtml") @@ -3097,10 +2980,10 @@ else{let i=2,o=arguments[0],s=arguments[1],a=typeof s if("function"===a?(r=o,t=s):null!==o&&"string"===a&&s in o?(r=o,t=r[s]):"function"==typeof o&&(i=1,r=null,t=o),n>i){let t=n-i e=new Array(t) for(let r=0;r{F++,!1!==this._autorun&&(this._autorun=!1,this._autorunStack=null,this._end(!0))} let r=this.options._buildPlatform||i -this._platform=r(this._boundAutorunEnd)}get counters(){return{begin:_,end:O,events:{begin:w,end:0},autoruns:{created:I,completed:F},run:C,join:E,defer:k,schedule:T,scheduleIterable:S,deferOnce:R,scheduleOnce:P,setTimeout:x,later:A,throttle:M,debounce:N,cancelTimers:j,cancel:D,loops:{total:L,nested:B}}}get defaultQueue(){return this._defaultQueue}begin(){_++ +this._platform=r(this._boundAutorunEnd)}get counters(){return{begin:_,end:O,events:{begin:w,end:0},autoruns:{created:I,completed:F},run:E,join:C,defer:k,schedule:T,scheduleIterable:R,deferOnce:S,scheduleOnce:P,setTimeout:A,later:x,throttle:M,debounce:N,cancelTimers:D,cancel:j,loops:{total:L,nested:B}}}get defaultQueue(){return this._defaultQueue}begin(){_++ let e,t=this.options,r=this.currentInstance return!1!==this._autorun?(e=r,this._cancelAutorun()):(null!==r&&(B++,this.instanceStack.push(r)),L++,e=this.currentInstance=new h(this.queueNames,t),w++,this._trigger("begin",e,r)),this._onBegin(e,r),e}end(){O++,this._end(!1)}on(e,t){if("function"!=typeof t)throw new TypeError("Callback must be a function") let r=this._eventCallbacks[e] @@ -3109,17 +2992,17 @@ r.push(t)}off(e,t){let r=this._eventCallbacks[e] if(!e||void 0===r)throw new TypeError(`Cannot off() event ${e} because it does not exist`) let n=!1 if(t)for(let i=0;i0&&s(r[i-1])&&(n=parseInt(r.pop(),10)) return[e,t,r,n]}(...arguments) @@ -3136,7 +3019,7 @@ s[l]===g&&(n=g),e=s[a+1] let u=p(o,s) if(a+6===u)s[a]=o,s[l]=n else{let i=this._timers[a+5] -this._timers.splice(u,0,o,e,t,r,n,i),this._timers.splice(a,6)}0===a&&this._reinstallTimerTimeout()}return e}cancelTimers(){j++,this._clearTimerTimeout(),this._timers=[],this._cancelAutorun()}hasTimers(){return this._timers.length>0||this._autorun}cancel(e){if(D++,null==e)return!1 +this._timers.splice(u,0,o,e,t,r,n,i),this._timers.splice(a,6)}0===a&&this._reinstallTimerTimeout()}return e}cancelTimers(){D++,this._clearTimerTimeout(),this._timers=[],this._cancelAutorun()}hasTimers(){return this._timers.length>0||this._autorun}cancel(e){if(j++,null==e)return!1 let t=typeof e return"number"===t?this._cancelLaterTimer(e):!("object"!==t||!e.queue||!e.method)&&e.queue.cancel(e)}ensureInstance(){this._ensureInstance()}getDebugInfo(){if(this.DEBUG)return{autorun:this._autorunStack,counters:this.counters,timers:c(this._timers,6,2),instanceStack:[this.currentInstance,...this.instanceStack].map((e=>e&&e._getDebugInfo(this.DEBUG)))}}_end(e){let t=this.currentInstance,r=null if(null===t)throw new Error("end called without begin") @@ -3205,19 +3088,21 @@ function s(e,t){for(let r=0;re.length)&&(t=e.length) let r=new Array(t) for(let n=0;n(re.__emberTemplateCompiler&&(se.precompile=oe.precompile=re.__emberTemplateCompiler.precompile,se.compile=oe.compile=re.compileTemplate,Object.defineProperty(ne,"HTMLBars",{configurable:!0,writable:!0,enumerable:!0,value:se}),Object.defineProperty(ne,"Handlebars",{configurable:!0,writable:!0,enumerable:!0,value:oe})),"Handlebars"===e?oe:se)})}function le(e){Object.defineProperty(ne,e,{configurable:!0,enumerable:!0,get(){if(te._impl){let{Test:t,Adapter:r,QUnitAdapter:n,setupForTesting:i}=te._impl -return t.Adapter=r,t.QUnitAdapter=n,Object.defineProperty(ne,"Test",{configurable:!0,writable:!0,enumerable:!0,value:t}),Object.defineProperty(ne,"setupForTesting",{configurable:!0,writable:!0,enumerable:!0,value:i}),"Test"===e?t:i}}})}ae("HTMLBars"),ae("Handlebars"),le("Test"),le("setupForTesting"),(0,P.runLoadHooks)("Ember") -e.default=ne})),e("ember/version",["exports"],(function(e){"use strict" +var re,ne=l;(function(e){e.isNamespace=!0,e.toString=function(){return"Ember"},e.Container=n.Container,e.Registry=n.Registry,e._setComponentManager=y.setComponentManager,e._componentManagerCapabilities=y.componentCapabilities,e._modifierManagerCapabilities=y.modifierCapabilities,e.meta=o.meta,e._createCache=s.createCache,e._cacheGetValue=s.getValue,e._cacheIsConst=s.isConst,e._descriptor=s.nativeDescDecorator,e._getPath=s._getPath,e._setClassicDecorator=s.setClassicDecorator,e._tracked=s.tracked,e.beginPropertyChanges=s.beginPropertyChanges,e.changeProperties=s.changeProperties,e.endPropertyChanges=s.endPropertyChanges,e.hasListeners=s.hasListeners,e.libraries=s.libraries,e._ContainerProxyMixin=b.ContainerProxyMixin,e._ProxyMixin=b._ProxyMixin,e._RegistryProxyMixin=b.RegistryProxyMixin,e.ActionHandler=b.ActionHandler,e.Comparable=b.Comparable,e.RSVP=b.RSVP,e.ComponentLookup=_.ComponentLookup,e.EventDispatcher=_.EventDispatcher,e._Cache=r.Cache,e.GUID_KEY=r.GUID_KEY +e.canInvoke=r.canInvoke,e.generateGuid=r.generateGuid,e.guidFor=r.guidFor,e.uuid=r.uuid,e.wrap=r.wrap,e.getOwner=S.getOwner,e.onLoad=S.onLoad,e.runLoadHooks=S.runLoadHooks,e.setOwner=S.setOwner,e.Application=S.default,e.ApplicationInstance=P.default,e.Namespace=A.default,e.A=k.A,e.Array=k.default,e.NativeArray=k.NativeArray,e.isArray=k.isArray,e.makeArray=k.makeArray,e.MutableArray=T.default,e.ArrayProxy=R.default,e.FEATURES={isEnabled:a.isEnabled,...a.FEATURES},e._Input=x.Input,e.Component=x.default,e.Helper=M.default,e.Controller=c.default,e.ControllerMixin=c.ControllerMixin,e._captureRenderTree=l.captureRenderTree,e.assert=ne.assert,e.warn=ne.warn,e.debug=ne.debug,e.deprecate=ne.deprecate +e.deprecateFunc=ne.deprecateFunc,e.runInDebug=ne.runInDebug,e.inspect=ne.inspect,e.Debug={registerDeprecationHandler:ne.registerDeprecationHandler,registerWarnHandler:ne.registerWarnHandler,isComputed:s.isComputed},e.ContainerDebugAdapter=O.default,e.DataAdapter=w.default,e._assertDestroyablesDestroyed=Z.assertDestroyablesDestroyed,e._associateDestroyableChild=Z.associateDestroyableChild,e._enableDestroyableTracking=Z.enableDestroyableTracking,e._isDestroying=Z.isDestroying,e._isDestroyed=Z.isDestroyed,e._registerDestructor=Z.registerDestructor,e._unregisterDestructor=Z.unregisterDestructor,e.destroy=Z.destroy,e.Engine=N.default,e.EngineInstance=D.default,e.Enumerable=j.default,e.MutableEnumerable=I.default,e.instrument=i.instrument,e.subscribe=i.subscribe,e.Instrumentation={instrument:i.instrument,subscribe:i.subscribe,unsubscribe:i.unsubscribe,reset:i.reset},e.Object=d.default,e._action=d.action,e.computed=d.computed,e.defineProperty=d.defineProperty,e.get=d.get,e.getProperties=d.getProperties,e.notifyPropertyChange=d.notifyPropertyChange,e.observer=d.observer,e.set=d.set +function t(){}e.trySet=d.trySet,e.setProperties=d.setProperties,e.cacheFor=h.cacheFor,e._dependentKeyCompat=f.dependentKeyCompat,e.ComputedProperty=m.default,e.expandProperties=m.expandProperties,e.CoreObject=F.default,e.Evented=L.default,e.on=L.on,e.addListener=g.addListener,e.removeListener=g.removeListener,e.sendEvent=g.sendEvent,e.Mixin=B.default,e.mixin=B.mixin,e.Observable=U.default,e.addObserver=H.addObserver,e.removeObserver=H.removeObserver,e.PromiseProxyMixin=V.default,e.ObjectProxy=$.default,e.RouterDSL=Q.DSL,e.controllerFor=Q.controllerFor,e.generateController=Q.generateController,e.generateControllerFactory=Q.generateControllerFactory,e.HashLocation=z.default,e.HistoryLocation=q.default,e.NoneLocation=G.default,e.Route=W.default,e.Router=Y.default,e.run=E.run,e.Service=p.default +e.compare=K.compare,e.isBlank=K.isBlank,e.isEmpty=K.isEmpty,e.isEqual=K.isEqual,e.isNone=K.isNone,e.isPresent=K.isPresent,e.typeOf=K.typeOf,e.VERSION=v.default,e.ViewUtils={getChildViews:_.getChildViews,getElementView:_.getElementView,getRootViews:_.getRootViews,getViewBounds:_.getViewBounds,getViewBoundingClientRect:_.getViewBoundingClientRect,getViewClientRects:_.getViewClientRects,getViewElement:_.getViewElement,isSimpleClick:_.isSimpleClick,isSerializationFirstNode:y.isSerializationFirstNode},e._getComponentTemplate=X.getComponentTemplate,e._helperManagerCapabilities=X.helperCapabilities,e._setComponentTemplate=X.setComponentTemplate,e._setHelperManager=X.setHelperManager,e._setModifierManager=X.setModifierManager,e._templateOnlyComponent=J.templateOnlyComponent,e._invokeHelper=J.invokeHelper,e._hash=J.hash,e._array=J.array,e._concat=J.concat,e._get=J.get,e._on=J.on,e._fn=J.fn,e._Backburner=u.default,e.inject=t,t.controller=c.inject,t.service=p.service,e.__loader={get require(){return globalThis.require},get define(){return globalThis.define},get registry(){let e=globalThis +return e.requirejs?.entries??e.require.entries}}})(re||(re={})),Object.defineProperty(re,"ENV",{get:t.getENV,enumerable:!1}),Object.defineProperty(re,"lookup",{get:t.getLookup,set:t.setLookup,enumerable:!1}),Object.defineProperty(re,"onerror",{get:C.getOnerror,set:C.setOnerror,enumerable:!1}),Object.defineProperty(re,"testing",{get:ne.isTesting,set:ne.setTesting,enumerable:!1}),Object.defineProperty(re,"BOOTED",{configurable:!1,enumerable:!1,get:s.isNamespaceSearchDisabled,set:s.setNamespaceSearchDisabled}),Object.defineProperty(re,"TEMPLATES",{get:y.getTemplates,set:y.setTemplates,configurable:!1,enumerable:!1}),Object.defineProperty(re,"TEMPLATES",{get:y.getTemplates,set:y.setTemplates,configurable:!1,enumerable:!1}),Object.defineProperty(re,"testing",{get:ne.isTesting,set:ne.setTesting,enumerable:!1}),(0,S.runLoadHooks)("Ember.Application",S.default) +let ie={template:y.template,Utils:{escapeExpression:y.escapeExpression}},oe={template:y.template} +function se(e){Object.defineProperty(re,e,{configurable:!0,enumerable:!0,get:()=>(te.__emberTemplateCompiler&&(oe.precompile=ie.precompile=te.__emberTemplateCompiler.precompile,oe.compile=ie.compile=te.compileTemplate,Object.defineProperty(re,"HTMLBars",{configurable:!0,writable:!0,enumerable:!0,value:oe}),Object.defineProperty(re,"Handlebars",{configurable:!0,writable:!0,enumerable:!0,value:ie})),"Handlebars"===e?ie:oe)})}function ae(e){Object.defineProperty(re,e,{configurable:!0,enumerable:!0,get(){if(ee._impl){let{Test:t,Adapter:r,QUnitAdapter:n,setupForTesting:i}=ee._impl +return t.Adapter=r,t.QUnitAdapter=n,Object.defineProperty(re,"Test",{configurable:!0,writable:!0,enumerable:!0,value:t}),Object.defineProperty(re,"setupForTesting",{configurable:!0,writable:!0,enumerable:!0,value:i}),"Test"===e?t:i}}})}se("HTMLBars"),se("Handlebars"),ae("Test"),ae("setupForTesting"),(0,S.runLoadHooks)("Ember") +e.default=re})),e("ember/version",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 -e.default="5.6.0"})),e("route-recognizer",["exports"],(function(e){"use strict" +e.default="5.10.0-alpha.1+5c8df04a"})) +e("route-recognizer",["exports"],(function(e){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 var t=Object.create function r(){var e=t(null) @@ -3255,26 +3140,26 @@ return P.ENCODE_AND_DECODE_PATH_SEGMENTS?d(r):r},v[2]=function(e,t){return g(t,e var _=Object.freeze({}),O=Object.freeze([]) function w(e,t,r){t.length>0&&47===t.charCodeAt(0)&&(t=t.substr(1)) for(var n=t.split("/"),i=void 0,o=void 0,s=0;s2&&"[]"===o.slice(s-2)&&(a=!0,r[o=o.slice(0,s-2)]||(r[o]=[])),l=i[1]?R(i[1]):""),a?r[o].push(l):r[o]=l}return r},P.prototype.recognize=function(e){var t,r=[this.rootState],n={},i=!1,o=e.indexOf("#");-1!==o&&(e=e.substr(0,o)) +t.push(l)}else s+="="+encodeURIComponent(o),t.push(s)}}return 0===t.length?"":"?"+t.join("&")},P.prototype.parseQueryString=function(e){for(var t=e.split("&"),r={},n=0;n2&&"[]"===o.slice(s-2)&&(a=!0,r[o=o.slice(0,s-2)]||(r[o]=[])),l=i[1]?S(i[1]):""),a?r[o].push(l):r[o]=l}return r},P.prototype.recognize=function(e){var t,r=[this.rootState],n={},i=!1,o=e.indexOf("#");-1!==o&&(e=e.substr(0,o)) var s=e.indexOf("?") if(-1!==s){var a=e.substr(s+1,e.length) e=e.substr(0,s),n=this.parseQueryString(a)}"/"!==e.charAt(0)&&(e="/"+e) @@ -3305,15 +3190,14 @@ if(i!==l)return l-i}return i!==l?i-l:n!==a?a-n:0}))}(d) var f=d[0] return f&&f.handlers&&(i&&f.pattern&&"(.+)$"===f.pattern.slice(-5)&&(u+="/"),t=function(e,t,r){var n=e.handlers,i=e.regex() if(!i||!n)throw new Error("state not initialized") -var o=t.match(i),s=1,a=new S(r) +var o=t.match(i),s=1,a=new R(r) a.length=n.length for(var l=0;l{let{name:o,params:s,paramNames:a,context:l,route:u}=n,c=n -if(w.has(c)&&r){let e=w.get(c) +function E(e,t={},r={includeAttributes:!1,localizeMapUpdates:!1}){const n=new WeakMap +return e.map(((i,o)=>{let{name:s,params:a,paramNames:l,context:u,route:c}=i,p=i +if(w.has(p)&&r.includeAttributes){let e=w.get(p) e=function(e,t){let r={get metadata(){return k(e)}} if(!Object.isExtensible(t)||t.hasOwnProperty("metadata"))return Object.freeze(Object.assign({},t,r)) -return Object.assign(t,r)}(u,e) -let t=E(e,l) -return w.set(c,t),t}let p={find(t,r){let n,i=[] -3===t.length&&(i=e.map((e=>w.get(e)))) -for(let o=0;e.length>o;o++)if(n=w.get(e[o]),t.call(r,n,o,i))return n},get name(){return o},get paramNames(){return a},get metadata(){return k(n.route)},get parent(){let t=e[i-1] -return void 0===t?null:w.get(t)},get child(){let t=e[i+1] -return void 0===t?null:w.get(t)},get localName(){let e=this.name.split(".") -return e[e.length-1]},get params(){return s},get queryParams(){return t}} -return r&&(p=E(p,l)),w.set(n,p),p}))}function E(e,t){let r={get attributes(){return t}} +return Object.assign(t,r)}(c,e) +let t=C(e,u) +return n.set(p,e),r.localizeMapUpdates||w.set(p,t),t}const d=r.localizeMapUpdates?n:w +let h={find(t,r){let n,i=[] +3===t.length&&(i=e.map((e=>d.get(e)))) +for(let o=0;e.length>o;o++)if(n=d.get(e[o]),t.call(r,n,o,i))return n},get name(){return s},get paramNames(){return l},get metadata(){return k(i.route)},get parent(){let t=e[o-1] +return void 0===t?null:d.get(t)},get child(){let t=e[o+1] +return void 0===t?null:d.get(t)},get localName(){let e=this.name.split(".") +return e[e.length-1]},get params(){return a},get queryParams(){return t}} +return r.includeAttributes&&(h=C(h,u)),n.set(i,h),r.localizeMapUpdates||w.set(i,h),h}))}function C(e,t){let r={get attributes(){return t}} return!Object.isExtensible(e)||e.hasOwnProperty("attributes")?Object.freeze(Object.assign({},e,r)):Object.assign(e,r)}function k(e){return null!=e&&void 0!==e.buildRouteInfoMetadata?e.buildRouteInfoMetadata():null}class T{constructor(e,t,r,n){this._routePromise=void 0,this._route=null,this.params={},this.isResolved=!1,this.name=t,this.paramNames=r,this.router=e,n&&this._processRoute(n)}getModel(e){return r.Promise.resolve(this.context)}serialize(e){return this.params||{}}resolve(e){return r.Promise.resolve(this.routePromise).then((t=>(i(e),t))).then((()=>this.runBeforeModelHook(e))).then((()=>i(e))).then((()=>this.getModel(e))).then((t=>(i(e),t))).then((t=>this.runAfterModelHook(e,t))).then((t=>this.becomeResolved(e,t)))}becomeResolved(e,t){let r,n=this.serialize(t) e&&(this.stashResolvedModel(e,t),e[b]=e[b]||{},e[b][this.name]=n) let i=t===this.context !("context"in this)&&i||(r=t) -let o=w.get(this),s=new S(this.router,this.name,this.paramNames,n,this.route,r) +let o=w.get(this),s=new R(this.router,this.name,this.paramNames,n,this.route,r) return void 0!==o&&w.set(s,o),s}shouldSupersede(e){if(!e)return!0 let t=e.context===this.context return e.name!==this.name||"context"in this&&!t||this.hasOwnProperty("params")&&!function(e,t){if(e===t)return!0 @@ -3375,7 +3261,7 @@ var o return this.stashResolvedModel(e,t),void 0!==this.route&&void 0!==this.route.afterModel&&(n=this.route.afterModel(t,e)),n=O(o=n)?null:o,r.Promise.resolve(n).then((()=>e.resolvedModels[i]))}stashResolvedModel(e,t){e.resolvedModels=e.resolvedModels||{},e.resolvedModels[this.name]=t}fetchRoute(){let e=this.router.getRoute(this.name) return this._processRoute(e)}_processRoute(e){return this.routePromise=r.Promise.resolve(e),null!==(t=e)&&"object"==typeof t&&"function"==typeof t.then?(this.routePromise=this.routePromise.then((e=>this.updateRoute(e))),this.route=void 0):e?this.updateRoute(e):void 0 var t}}e.InternalRouteInfo=T -class S extends T{constructor(e,t,r,n,i,o){super(e,t,r,i),this.params=n,this.isResolved=!0,this.context=o}resolve(e){return e&&e.resolvedModels&&(e.resolvedModels[this.name]=this.context),r.Promise.resolve(this)}}class R extends T{constructor(e,t,r,n,i){super(e,t,r,i),this.params={},n&&(this.params=n)}getModel(e){let t=this.params +class R extends T{constructor(e,t,r,n,i,o){super(e,t,r,i),this.params=n,this.isResolved=!0,this.context=o}resolve(e){return e&&e.resolvedModels&&(e.resolvedModels[this.name]=this.context),r.Promise.resolve(this)}}class S extends T{constructor(e,t,r,n,i){super(e,t,r,i),this.params={},n&&(this.params=n)}getModel(e){let t=this.params e&&e[y]&&(t={},a(t,this.params),t.queryParams=e[y]) let n,i=this.route return i.deserialize?n=i.deserialize(t,e):i.model&&(n=i.model(t,e)),n&&O(n)&&(n=void 0),r.Promise.resolve(n)}}class P extends T{constructor(e,t,r,n){super(e,t,r),this.context=n,this.serializer=this.router.getSerializer(t)}getModel(e){return void 0!==this.router.log&&this.router.log(this.name+": resolving provided model"),super.getModel(e)}serialize(e){let{paramNames:t,context:r}=this @@ -3386,26 +3272,26 @@ if(this.serializer)return this.serializer.call(null,e,t) if(void 0!==this.route&&this.route.serialize)return this.route.serialize(e,t) if(1!==t.length)return let i=t[0] -return/_id$/.test(i)?n[i]=e.id:n[i]=e,n}}class x{constructor(e,t={}){this.router=e,this.data=t}}function A(e,t,r){let n=e.routeInfos,i=t.resolveIndex>=n.length?n.length-1:t.resolveIndex,o=t.isAborted -throw new D(r,e.routeInfos[i].route,o,e)}function M(e,t){if(t.resolveIndex===e.routeInfos.length)return +return/_id$/.test(i)?n[i]=e.id:n[i]=e,n}}class A{constructor(e,t={}){this.router=e,this.data=t}}function x(e,t,r){let n=e.routeInfos,i=t.resolveIndex>=n.length?n.length-1:t.resolveIndex,o=t.isAborted +throw new j(r,e.routeInfos[i].route,o,e)}function M(e,t){if(t.resolveIndex===e.routeInfos.length)return let r=e.routeInfos[t.resolveIndex],n=N.bind(null,e,t) return r.resolve(t).then(n,null,e.promiseLabel("Proceed"))}function N(e,t,r){let n=e.routeInfos[t.resolveIndex].isResolved if(e.routeInfos[t.resolveIndex++]=r,!n){let{route:e}=r -void 0!==e&&e.redirect&&e.redirect(r.context,t)}return i(t),M(e,t)}class j{constructor(){this.routeInfos=[],this.queryParams={},this.params={}}promiseLabel(e){let t="" +void 0!==e&&e.redirect&&e.redirect(r.context,t)}return i(t),M(e,t)}class D{constructor(){this.routeInfos=[],this.queryParams={},this.params={}}promiseLabel(e){let t="" return d(this.routeInfos,(function(e){return""!==t&&(t+="."),t+=e.name,!0})),m("'"+t+"': "+e)}resolve(e){let t=this.params d(this.routeInfos,(e=>(t[e.name]=e.params||{},!0))),e.resolveIndex=0 -let n=M.bind(null,this,e),i=A.bind(null,this,e) -return r.Promise.resolve(null,this.promiseLabel("Start transition")).then(n,null,this.promiseLabel("Resolve route")).catch(i,this.promiseLabel("Handle error")).then((()=>this))}}e.TransitionState=j -class D{constructor(e,t,r,n){this.error=e,this.route=t,this.wasAborted=r,this.state=n}}e.TransitionError=D -class I extends x{constructor(e,t,r,n=[],i={},o){super(e,o),this.preTransitionState=void 0,this.name=t,this.pivotHandler=r,this.contexts=n,this.queryParams=i}applyToState(e,t){let r=this.router.recognizer.handlersFor(this.name),n=r[r.length-1].handler -return this.applyToHandlers(e,r,n,t,!1)}applyToHandlers(e,t,r,n,i){let o,s,l=new j,u=this.contexts.slice(0),c=t.length +let n=M.bind(null,this,e),i=x.bind(null,this,e) +return r.Promise.resolve(null,this.promiseLabel("Start transition")).then(n,null,this.promiseLabel("Resolve route")).catch(i,this.promiseLabel("Handle error")).then((()=>this))}}e.TransitionState=D +class j{constructor(e,t,r,n){this.error=e,this.route=t,this.wasAborted=r,this.state=n}}e.TransitionError=j +class I extends A{constructor(e,t,r,n=[],i={},o){super(e,o),this.preTransitionState=void 0,this.name=t,this.pivotHandler=r,this.contexts=n,this.queryParams=i}applyToState(e,t){let r=this.router.recognizer.handlersFor(this.name),n=r[r.length-1].handler +return this.applyToHandlers(e,r,n,t,!1)}applyToHandlers(e,t,r,n,i){let o,s,l=new D,u=this.contexts.slice(0),c=t.length if(this.pivotHandler)for(o=0,s=t.length;o=0;--o){let s=t[o],a=s.handler,p=e.routeInfos[o],d=null if(d=s.names.length>0?o>=c?this.createParamHandlerInfo(a,s.names,u,p):this.getHandlerInfoForDynamicSegment(a,s.names,u,p,r,o):this.createParamHandlerInfo(a,s.names,u,p),i){d=d.becomeResolved(null,d.context) let e=p&&p.context s.names.length>0&&void 0!==p.context&&d.context===e&&(d.params=p&&p.params),d.context=e}let h=p;(o>=c||d.shouldSupersede(p))&&(c=Math.min(o,c),h=d),n&&!i&&(h=h.becomeResolved(null,h.context)),l.routeInfos.unshift(h)}if(u.length>0)throw new Error("More context objects were passed than there are dynamic segments for the route: "+r) return n||this.invalidateChildren(l.routeInfos,c),a(l.queryParams,this.queryParams||{}),n&&e.queryParams&&a(l.queryParams,e.queryParams),l}invalidateChildren(e,t){for(let r=t,n=e.length;r0){if(s=r[r.length-1],p(s))return this.createParamHandlerInfo(e,t,r,n) r.pop()}else{if(n&&n.name===e)return n if(!this.preTransitionState)return n @@ -3413,15 +3299,15 @@ if(!this.preTransitionState)return n s=null==e?void 0:e.context}}return new P(this.router,e,t,s)}createParamHandlerInfo(e,t,r,n){let i={},o=t.length,s=[] for(;o--;){let a=n&&e===n.name&&n.params||{},l=r[r.length-1],u=t[o] p(l)?i[u]=""+r.pop():a.hasOwnProperty(u)?i[u]=a[u]:s.push(u)}if(s.length>0)throw new Error(`You didn't provide enough string/numeric parameters to satisfy all of the dynamic segments for route ${e}. Missing params: ${s}`) -return new R(this.router,e,t,i)}}const F=function(){function e(t){let r=Error.call(this,t) +return new S(this.router,e,t,i)}}const F=function(){function e(t){let r=Error.call(this,t) this.name="UnrecognizedURLError",this.message=t||"UnrecognizedURL",Error.captureStackTrace?Error.captureStackTrace(this,e):this.stack=r.stack}return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}() -class L extends x{constructor(e,t,r){super(e,r),this.url=t,this.preTransitionState=void 0}applyToState(e){let t,r,n=new j,i=this.router.recognizer.recognize(this.url) +class L extends A{constructor(e,t,r){super(e,r),this.url=t,this.preTransitionState=void 0}applyToState(e){let t,r,n=new D,i=this.router.recognizer.recognize(this.url) if(!i)throw new F(this.url) let o=!1,s=this.url function l(e){if(e&&e.inaccessibleByURL)throw new F(s) return e}for(t=0,r=i.length;t(e.isAborted||(this._updateURL(e,r),this.didTransition(this.currentRouteInfos),this.toInfos(e,n.routeInfos,!0),this.routeDidChange(e)),t)),null,m("Transition complete")),e}}transitionByIntent(e,t){try{return this.getTransitionByIntent(e,t)}catch(r){return new v(this,e,void 0,r,void 0)}}recognize(e){let t=new L(this,e),r=this.generateNewState(t) if(null===r)return r -let n=C(r.routeInfos,r.queryParams) +let n=E(r.routeInfos,r.queryParams,{includeAttributes:!1,localizeMapUpdates:!0}) return n[n.length-1]}recognizeAndLoad(e){let t=new L(this,e),n=this.generateNewState(t) if(null===n)return r.Promise.reject(`URL ${e} was not recognized`) let i=new v(this,t,n,void 0) -return i.then((()=>{let e=C(n.routeInfos,i[y],!0) +return i.then((()=>{let e=E(n.routeInfos,i[y],{includeAttributes:!0,localizeMapUpdates:!1}) return e[e.length-1]}))}generateNewState(e){try{return e.applyToState(this.state,!1)}catch(t){return null}}getTransitionByIntent(e,t){let r,n=!!this.activeTransition,i=n?this.activeTransition[g]:this.state,o=e.applyToState(i,t),s=h(i.queryParams,o.queryParams) if(B(o.routeInfos,i.routeInfos)){if(s){let e=this.queryParamsTransition(s,n,i,o) return e.queryParamsOnly=!0,e}return this.activeTransition||new v(this,void 0,void 0)}if(t){let e=new v(this,void 0,o) @@ -3476,12 +3362,12 @@ this.triggerEvent(e,!0,"finalizeQueryParamChange",[t,n,r]),r&&(r._visibleQueryPa let i={} for(let o=0,s=n.length;o0){let r=C(t,Object.assign({},this._lastQueryParams),!0) -e.from=r[r.length-1]||null}}toInfos(e,t,r=!1){if(void 0!==e&&t.length>0){let n=C(t,Object.assign({},e[y]),r) +this.fromInfos(e,r),this.toInfos(e,t.routeInfos),this._lastQueryParams=t.queryParams}fromInfos(e,t){if(void 0!==e&&t.length>0){let r=E(t,Object.assign({},this._lastQueryParams),{includeAttributes:!0,localizeMapUpdates:!1}) +e.from=r[r.length-1]||null}}toInfos(e,t,r=!1){if(void 0!==e&&t.length>0){let n=E(t,Object.assign({},e[y]),{includeAttributes:r,localizeMapUpdates:!1}) e.to=n[n.length-1]||null}}notifyExistingHandlers(e,t){let r,n,i,o,s=this.state.routeInfos for(n=s.length,r=0;r_(o,s,r,l)))}return s}class w{constructor(e,t,r,n){this._instanceConstructor=e,this.promise=new e(u,n),this._abortOnReject=r,this._isUsingOwnPromise=e===S,this._isUsingOwnResolve=e.resolve===l,this._init(...arguments)}_init(e,t){let r=t.length||0 +i.async((()=>_(o,s,r,l)))}return s}class w{constructor(e,t,r,n){this._instanceConstructor=e,this.promise=new e(u,n),this._abortOnReject=r,this._isUsingOwnPromise=e===R,this._isUsingOwnResolve=e.resolve===l,this._init(...arguments)}_init(e,t){let r=t.length||0 this.length=r,this._remaining=r,this._result=new Array(r),this._enumerate(t)}_enumerate(e){let t=this.length,r=this.promise for(let n=0;r._state===c&&nt(e))),t,r)}else this._willSettleAt(n.resolve(e),t,r)}_eachEntry(e,t,r){null!==e&&"object"==typeof e?this._settleMaybeThenable(e,t,r):this._setResultAt(p,t,e,r)}_settledAt(e,t,r,n){let i=this.promise -i._state===c&&(this._abortOnReject&&e===d?b(i,r):(this._setResultAt(e,t,r,n),this._checkFullfillment()))}_setResultAt(e,t,r,n){this._remaining--,this._result[t]=r}_willSettleAt(e,t,r){y(e,void 0,(e=>this._settledAt(p,t,e,r)),(e=>this._settledAt(d,t,e,r)))}}function C(e,t,r){this._remaining--,this._result[t]=e===p?{state:"fulfilled",value:r}:{state:"rejected",reason:r}}const E="rsvp_"+Date.now()+"-" +i._state===c&&(this._abortOnReject&&e===d?b(i,r):(this._setResultAt(e,t,r,n),this._checkFullfillment()))}_setResultAt(e,t,r,n){this._remaining--,this._result[t]=r}_willSettleAt(e,t,r){y(e,void 0,(e=>this._settledAt(p,t,e,r)),(e=>this._settledAt(d,t,e,r)))}}function E(e,t,r){this._remaining--,this._result[t]=e===p?{state:"fulfilled",value:r}:{state:"rejected",reason:r}}const C="rsvp_"+Date.now()+"-" let k=0 let T=class e{constructor(t,r){this._id=k++,this._label=r,this._state=void 0,this._result=void 0,this._subscribers=[],i.instrument&&a("created",this),u!==t&&("function"!=typeof t&&function(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}(),this instanceof e?function(e,t){let r=!1 try{t((t=>{r||(r=!0,f(e,t))}),(t=>{r||(r=!0,b(e,t))}))}catch(n){b(e,n)}}(this,t):function(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}())}_onError(e){i.after((()=>{this._onError&&i.trigger("error",e,this._label)}))}catch(e,t){return this.then(void 0,e,t)}finally(e,t){let r=this,n=r.constructor @@ -3553,36 +3439,36 @@ T.cast=l,T.all=function(e,t){return Array.isArray(e)?new w(this,e,!0,t).promise: if(!Array.isArray(e))return b(n,new TypeError("Promise.race must be called with an array")),n for(let i=0;n._state===c&&if(n,e)),(e=>b(n,e))) return n},T.resolve=l,T.reject=function(e,t){let r=new this(u,t) -return b(r,e),r},T.prototype._guidKey=E,T.prototype.then=O -var S=e.Promise=T -function R(e,t){return{then:(r,n)=>e.call(t,r,n)}}function P(e,t){let r=function(){let r=arguments.length,n=new Array(r+1),i=!1 +return b(r,e),r},T.prototype._guidKey=C,T.prototype.then=O +var R=e.Promise=T +function S(e,t){return{then:(r,n)=>e.call(t,r,n)}}function P(e,t){let r=function(){let r=arguments.length,n=new Array(r+1),i=!1 for(let e=0;ex(e,t,r,n)))}(o,n,e,this):x(o,n,e,this)} -return r.__proto__=e,r}function x(e,t,r,n){try{r.apply(n,t)}catch(i){b(e,i)}return e}function A(e,t){return S.all(e,t)}class M extends w{constructor(e,t,r){super(e,t,!1,r)}}function N(e,t){return Array.isArray(e)?new M(S,e,t).promise:S.reject(new TypeError("Promise.allSettled must be called with an array"),t)}function j(e,t){return S.race(e,t)}M.prototype._setResultAt=C -class D extends w{constructor(e,t,r=!0,n){super(e,t,r,n)}_init(e,t){this._result={},this._enumerate(t)}_enumerate(e){let t,r,n=Object.keys(e),i=n.length,o=this.promise +return r}(arguments,t)):f(o,r)},i?function(e,t,r,n){return R.all(t).then((t=>A(e,t,r,n)))}(o,n,e,this):A(o,n,e,this)} +return r.__proto__=e,r}function A(e,t,r,n){try{r.apply(n,t)}catch(i){b(e,i)}return e}function x(e,t){return R.all(e,t)}class M extends w{constructor(e,t,r){super(e,t,!1,r)}}function N(e,t){return Array.isArray(e)?new M(R,e,t).promise:R.reject(new TypeError("Promise.allSettled must be called with an array"),t)}function D(e,t){return R.race(e,t)}M.prototype._setResultAt=E +class j extends w{constructor(e,t,r=!0,n){super(e,t,r,n)}_init(e,t){this._result={},this._enumerate(t)}_enumerate(e){let t,r,n=Object.keys(e),i=n.length,o=this.promise this._remaining=i for(let s=0;o._state===c&&s{throw e})),e}function U(e){let t={resolve:void 0,reject:void 0} -return t.promise=new S(((e,r)=>{t.resolve=e,t.reject=r}),e),t}F.prototype._setResultAt=C +this._checkFullfillment()}}function I(e,t){return R.resolve(e,t).then((function(e){if(null===e||"object"!=typeof e)throw new TypeError("Promise.hash must be called with an object") +return new j(R,e,t).promise}))}class F extends j{constructor(e,t,r){super(e,t,!1,r)}}function L(e,t){return R.resolve(e,t).then((function(e){if(null===e||"object"!=typeof e)throw new TypeError("hashSettled must be called with an object") +return new F(R,e,!1,t).promise}))}function B(e){throw setTimeout((()=>{throw e})),e}function U(e){let t={resolve:void 0,reject:void 0} +return t.promise=new R(((e,r)=>{t.resolve=e,t.reject=r}),e),t}F.prototype._setResultAt=E class H extends w{constructor(e,t,r,n){super(e,t,!0,n,r)}_init(e,t,r,n,i){let o=t.length||0 -this.length=o,this._remaining=o,this._result=new Array(o),this._mapFn=i,this._enumerate(t)}_setResultAt(e,t,r,n){if(n)try{this._eachEntry(this._mapFn(r,t),t,!1)}catch(i){this._settledAt(d,t,i,!1)}else this._remaining--,this._result[t]=r}}function $(e,t,r){return"function"!=typeof t?S.reject(new TypeError("map expects a function as a second argument"),r):S.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("map must be called with an array") -return new H(S,e,t,r).promise}))}function V(e,t){return S.resolve(e,t)}function z(e,t){return S.reject(e,t)}const q={} +this.length=o,this._remaining=o,this._result=new Array(o),this._mapFn=i,this._enumerate(t)}_setResultAt(e,t,r,n){if(n)try{this._eachEntry(this._mapFn(r,t),t,!1)}catch(i){this._settledAt(d,t,i,!1)}else this._remaining--,this._result[t]=r}}function $(e,t,r){return"function"!=typeof t?R.reject(new TypeError("map expects a function as a second argument"),r):R.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("map must be called with an array") +return new H(R,e,t,r).promise}))}function V(e,t){return R.resolve(e,t)}function z(e,t){return R.reject(e,t)}const q={} class G extends H{_checkFullfillment(){if(0===this._remaining&&null!==this._result){let e=this._result.filter((e=>e!==q)) g(this.promise,e),this._result=null}}_setResultAt(e,t,r,n){if(n){this._result[t]=r let e,n=!0 -try{e=this._mapFn(r,t)}catch(i){n=!1,this._settledAt(d,t,i,!1)}n&&this._eachEntry(e,t,!1)}else this._remaining--,r||(this._result[t]=q)}}function W(e,t,r){return"function"!=typeof t?S.reject(new TypeError("filter expects function as a second argument"),r):S.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("filter must be called with an array") -return new G(S,e,t,r).promise}))}let Y,Q=0 +try{e=this._mapFn(r,t)}catch(i){n=!1,this._settledAt(d,t,i,!1)}n&&this._eachEntry(e,t,!1)}else this._remaining--,r||(this._result[t]=q)}}function W(e,t,r){return"function"!=typeof t?R.reject(new TypeError("filter expects function as a second argument"),r):R.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("filter must be called with an array") +return new G(R,e,t,r).promise}))}let Y,Q=0 function K(e,t){ne[Q]=e,ne[Q+1]=t,Q+=2,2===Q&&oe()}const J="undefined"!=typeof window?window:void 0,X=J||{},Z=X.MutationObserver||X.WebKitMutationObserver,ee="undefined"==typeof self&&"undefined"!=typeof process&&"[object process]"==={}.toString.call(process),te="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel function re(){return()=>setTimeout(ie,1)}const ne=new Array(1e3) function ie(){for(let e=0;ei.async(e,t) function le(){i.on(...arguments)}function ue(){i.off(...arguments)}if(e.async=ae,"undefined"!=typeof window&&"object"==typeof window.__PROMISE_INSTRUMENTATION__){let e=window.__PROMISE_INSTRUMENTATION__ o("instrument",!0) -for(let t in e)e.hasOwnProperty(t)&&le(t,e[t])}e.default={asap:K,cast:se,Promise:S,EventTarget:n,all:A,allSettled:N,race:j,hash:I,hashSettled:L,rethrow:B,defer:U,denodeify:P,configure:o,on:le,off:ue,resolve:V,reject:z,map:$,async:ae,filter:W}})),"object"==typeof module&&"function"==typeof module.require&&(module.exports=t("ember").default)}(),"undefined"==typeof FastBoot){var preferNative=!1;(function(e){define("fetch",["exports","ember","rsvp"],(function(t,r,n){"use strict" +for(let t in e)e.hasOwnProperty(t)&&le(t,e[t])}e.default={asap:K,cast:se,Promise:R,EventTarget:n,all:x,allSettled:N,race:D,hash:I,hashSettled:L,rethrow:B,defer:U,denodeify:P,configure:o,on:le,off:ue,resolve:V,reject:z,map:$,async:ae,filter:W}})),"object"==typeof module&&"function"==typeof module.require&&(module.exports=t("ember").default)}(),"undefined"==typeof FastBoot){var preferNative=!1;(function(e){define("fetch",["exports","ember","rsvp"],(function(t,r,n){"use strict" var i="default"in r?r.default:r,o=("default"in n?n.default:n).Promise,s=["FormData","FileReader","Blob","URLSearchParams","Symbol","ArrayBuffer"],a=s preferNative&&(a=s.concat(["fetch","Headers","Request","Response","AbortController"])),a.forEach((function(r){e[r]&&Object.defineProperty(t,r,{configurable:!0,get:function(){return e[r]},set:function(t){e[r]=t}})})) var l=t,u=t;(function(){class e{constructor(){Object.defineProperty(this,"listeners",{value:{},writable:!0,configurable:!0})}addEventListener(e,t,r){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push({callback:t,options:r})}removeEventListener(e,t){if(!(e in this.listeners))return @@ -3628,7 +3514,7 @@ if(this._bodyBlob)return e=this._bodyBlob,t=new FileReader,r=b(t),n=/charset=([A if(this._bodyArrayBuffer)return o.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?i:n),this.mode=r.mode||this.mode||null,this.signal=r.signal||this.signal||function(){if("AbortController"in t)return(new AbortController).signal}(),this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests") if(this._initBody(o),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==r.cache&&"no-cache"!==r.cache)){var s=/([?&])_=[^&]*/ if(s.test(this.url))this.url=this.url.replace(s,"$1_="+(new Date).getTime()) -else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function C(e){var t=new FormData +else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function E(e){var t=new FormData return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ") -t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function E(e,t){if(!(this instanceof E))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.') +t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function C(e,t){if(!(this instanceof C))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.') if(t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].") -this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new m(t.headers),this.url=t.url||"",this._initBody(e)}w.prototype.clone=function(){return new w(this,{body:this._bodyInit})},_.call(w.prototype),_.call(E.prototype),E.prototype.clone=function(){return new E(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},E.error=function(){var e=new E(null,{status:200,statusText:""}) +this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new m(t.headers),this.url=t.url||"",this._initBody(e)}w.prototype.clone=function(){return new w(this,{body:this._bodyInit})},_.call(w.prototype),_.call(C.prototype),C.prototype.clone=function(){return new C(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},C.error=function(){var e=new C(null,{status:200,statusText:""}) return e.ok=!1,e.status=0,e.type="error",e} var k=[301,302,303,307,308] -E.redirect=function(e,t){if(-1===k.indexOf(t))throw new RangeError("Invalid status code") -return new E(null,{status:t,headers:{location:e}})},e.DOMException=t.DOMException -try{new e.DOMException}catch(S){e.DOMException=function(e,t){this.message=e,this.name=t +C.redirect=function(e,t){if(-1===k.indexOf(t))throw new RangeError("Invalid status code") +return new C(null,{status:t,headers:{location:e}})},e.DOMException=t.DOMException +try{new e.DOMException}catch(R){e.DOMException=function(e,t){this.message=e,this.name=t var r=Error(e) this.stack=r.stack},e.DOMException.prototype=Object.create(Error.prototype),e.DOMException.prototype.constructor=e.DOMException}function T(r,n){return new o((function(o,s){var l=new w(r,n) if(l.signal&&l.signal.aborted)return s(new e.DOMException("Aborted","AbortError")) @@ -3661,9 +3547,9 @@ if(n){var i=r.join(":").trim() try{t.append(n,i)}catch(o){console.warn("Response "+o.message)}}})),t)} 0===l.url.indexOf("file://")&&(u.status<200||u.status>599)?r.status=200:r.status=u.status,r.url="responseURL"in u?u.responseURL:r.headers.get("X-Request-URL") var n="response"in u?u.response:u.responseText -setTimeout((function(){o(new E(n,r))}),0)},u.onerror=function(){setTimeout((function(){s(new TypeError("Network request failed"))}),0)},u.ontimeout=function(){setTimeout((function(){s(new TypeError("Network request timed out"))}),0)},u.onabort=function(){setTimeout((function(){s(new e.DOMException("Aborted","AbortError"))}),0)},u.open(l.method,function(e){try{return""===e&&t.location.href?t.location.href:e}catch(r){return e}}(l.url),!0),"include"===l.credentials?u.withCredentials=!0:"omit"===l.credentials&&(u.withCredentials=!1),"responseType"in u&&(i?u.responseType="blob":a&&(u.responseType="arraybuffer")),n&&"object"==typeof n.headers&&!(n.headers instanceof m||t.Headers&&n.headers instanceof t.Headers)){var p=[] +setTimeout((function(){o(new C(n,r))}),0)},u.onerror=function(){setTimeout((function(){s(new TypeError("Network request failed"))}),0)},u.ontimeout=function(){setTimeout((function(){s(new TypeError("Network request timed out"))}),0)},u.onabort=function(){setTimeout((function(){s(new e.DOMException("Aborted","AbortError"))}),0)},u.open(l.method,function(e){try{return""===e&&t.location.href?t.location.href:e}catch(r){return e}}(l.url),!0),"include"===l.credentials?u.withCredentials=!0:"omit"===l.credentials&&(u.withCredentials=!1),"responseType"in u&&(i?u.responseType="blob":a&&(u.responseType="arraybuffer")),n&&"object"==typeof n.headers&&!(n.headers instanceof m||t.Headers&&n.headers instanceof t.Headers)){var p=[] Object.getOwnPropertyNames(n.headers).forEach((function(e){p.push(d(e)),u.setRequestHeader(e,h(n.headers[e]))})),l.headers.forEach((function(e,t){-1===p.indexOf(t)&&u.setRequestHeader(t,e)}))}else l.headers.forEach((function(e,t){u.setRequestHeader(t,e)})) -l.signal&&(l.signal.addEventListener("abort",c),u.onreadystatechange=function(){4===u.readyState&&l.signal.removeEventListener("abort",c)}),u.send(void 0===l._bodyInit?null:l._bodyInit)}))}T.polyfill=!0,t.fetch||(t.fetch=T,t.Headers=m,t.Request=w,t.Response=E),e.Headers=m,e.Request=w,e.Response=E,e.fetch=T})({}) +l.signal&&(l.signal.addEventListener("abort",c),u.onreadystatechange=function(){4===u.readyState&&l.signal.removeEventListener("abort",c)}),u.send(void 0===l._bodyInit?null:l._bodyInit)}))}T.polyfill=!0,t.fetch||(t.fetch=T,t.Headers=m,t.Request=w,t.Response=C),e.Headers=m,e.Request=w,e.Response=C,e.fetch=T})({}) if(!l.fetch)throw new Error("fetch is not defined - maybe your browser targets are not covering everything you need?") var c=0 function p(e){return c--,e}i.Test?(i.Test.registerWaiter((function(){return 0===c})),t.default=function(){return c++,t.fetch.apply(e,arguments).then((function(e){return e.clone().blob().then(p,p),e}),(function(e){throw p(e),e}))}):t.default=t.fetch,s.forEach((function(e){delete t[e]}))}))})("undefined"!=typeof window&&window||"undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||"undefined"!=typeof global&&global)}define("@ember/string/cache",["exports"],(function(e){"use strict" @@ -3716,19 +3602,18 @@ const n={packages:{},global:{}} let i="undefined"!=typeof window?window._embroider_macros_runtime_config:void 0 if(i){let e={config:t,getGlobalConfig:r,setConfig(e,t){n.packages[e]=t},setGlobalConfig(e,t){n.global[e]=t}} for(let t of i)t(e)}})),define("@glimmer/component/-private/base-component-manager",["exports","@glimmer/component/-private/component"],(function(e,t){"use strict" -Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return class{static create(e){return new this(t(e))}constructor(t){var n,i,o -n=this,o=r,(i=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return class{static create(e){return new this(t(e))}constructor(t){(function(e,t,r){(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e var r=e[Symbol.toPrimitive] if(void 0!==r){var n=r.call(e,t||"default") if("object"!=typeof n)return n throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(i="capabilities"))in n?Object.defineProperty(n,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[i]=o,e(this,t)}createComponent(e,r){return new e(t(this),r.named)}getContext(e){return e}}}})),define("@glimmer/component/-private/component",["exports","@glimmer/component/-private/owner","@glimmer/component/-private/destroyables"],(function(e,t,r){"use strict" -function n(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})(this,"capabilities",r),e(this,t)}createComponent(e,r){return new e(t(this),r.named)}getContext(e){return e}}}})),define("@glimmer/component/-private/component",["exports","@glimmer/component/-private/owner","@glimmer/component/-private/destroyables"],(function(e,t,r){"use strict" +function n(e,t,r){var n +return(t="symbol"==typeof(n=function(e,t){if("object"!=typeof e||!e)return e var r=e[Symbol.toPrimitive] if(void 0!==r){var n=r.call(e,t||"default") if("object"!=typeof n)return n -throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") -return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ARGS_SET=void 0 +throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"))?n:n+"")in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ARGS_SET=void 0 e.ARGS_SET=void 0 e.default=class{constructor(e,r){n(this,"args",void 0),this.args=r,(0,t.setOwner)(this,e)}get isDestroying(){return(0,r.isDestroying)(this)}get isDestroyed(){return(0,r.isDestroyed)(this)}willDestroy(){}}})),define("@glimmer/component/-private/destroyables",["exports","ember"],(function(e,t){"use strict" Object.defineProperty(e,"__esModule",{value:!0}),e.isDestroying=e.isDestroyed=void 0 diff --git a/ember/ember-git-05-5c8df04a.template-compiler.js b/ember/ember-git-05-5c8df04a.template-compiler.js new file mode 100644 index 0000000..e424648 --- /dev/null +++ b/ember/ember-git-05-5c8df04a.template-compiler.js @@ -0,0 +1,20034 @@ +(function() { +/*! + * @overview Ember - JavaScript Application Framework + * @copyright Copyright 2011 Tilde Inc. and contributors + * Portions Copyright 2006-2011 Strobe Inc. + * Portions Copyright 2008-2011 Apple Inc. All rights reserved. + * @license Licensed under MIT license + * See https://raw.github.com/emberjs/ember.js/master/LICENSE + * @version 5.10.0-alpha.1+5c8df04a + */ + +/* eslint-disable no-var */ +/* globals global globalThis self */ +/* eslint-disable-next-line no-unused-vars */ +var define, require; + +(function () { + var globalObj = + typeof globalThis !== 'undefined' + ? globalThis + : typeof self !== 'undefined' + ? self + : typeof window !== 'undefined' + ? window + : typeof global !== 'undefined' + ? global + : null; + + if (globalObj === null) { + throw new Error('unable to locate global object'); + } + + if (typeof globalObj.define === 'function' && typeof globalObj.require === 'function') { + define = globalObj.define; + require = globalObj.require; + + return; + } + + var registry = Object.create(null); + var seen = Object.create(null); + + function missingModule(name, referrerName) { + if (referrerName) { + throw new Error('Could not find module ' + name + ' required by: ' + referrerName); + } else { + throw new Error('Could not find module ' + name); + } + } + + function internalRequire(_name, referrerName) { + var name = _name; + var mod = registry[name]; + + if (!mod) { + name = name + '/index'; + mod = registry[name]; + } + + var exports = seen[name]; + + if (exports !== undefined) { + return exports; + } + + exports = seen[name] = {}; + + if (!mod) { + missingModule(_name, referrerName); + } + + var deps = mod.deps; + var callback = mod.callback; + var reified = new Array(deps.length); + + for (var i = 0; i < deps.length; i++) { + if (deps[i] === 'exports') { + reified[i] = exports; + } else if (deps[i] === 'require') { + reified[i] = require; + } else { + reified[i] = require(deps[i], name); + } + } + + callback.apply(this, reified); + + return exports; + } + + require = function (name) { + return internalRequire(name, null); + }; + + define = function (name, deps, callback) { + registry[name] = { deps: deps, callback: callback }; + }; + + // setup `require` module + require['default'] = require; + + require.has = function registryHas(moduleName) { + return Boolean(registry[moduleName]) || Boolean(registry[moduleName + '/index']); + }; + + require._eak_seen = require.entries = registry; +})(); + +define("@ember/-internals/browser-environment/index", ["exports"], function (_exports) { + "use strict"; + + Object.defineProperty(_exports, "__esModule", { + value: true + }); + _exports.window = _exports.userAgent = _exports.location = _exports.isFirefox = _exports.isChrome = _exports.history = _exports.hasDOM = void 0; + // check if window exists and actually is the global + var hasDom = _exports.hasDOM = typeof self === 'object' && self !== null && self.Object === Object && typeof Window !== 'undefined' && self.constructor === Window && typeof document === 'object' && document !== null && self.document === document && typeof location === 'object' && location !== null && self.location === location && typeof history === 'object' && history !== null && self.history === history && typeof navigator === 'object' && navigator !== null && self.navigator === navigator && typeof navigator.userAgent === 'string'; + const window = _exports.window = hasDom ? self : null; + const location$1 = _exports.location = hasDom ? self.location : null; + const history$1 = _exports.history = hasDom ? self.history : null; + const userAgent = _exports.userAgent = hasDom ? self.navigator.userAgent : 'Lynx (textmode)'; + const isChrome = _exports.isChrome = hasDom ? typeof chrome === 'object' && !(typeof opera === 'object') : false; + const isFirefox = _exports.isFirefox = hasDom ? /Firefox|FxiOS/.test(userAgent) : false; +}); +define("@ember/-internals/environment/index", ["exports"], function (_exports) { + "use strict"; + + Object.defineProperty(_exports, "__esModule", { + value: true + }); + _exports.context = _exports.ENV = void 0; + _exports.getENV = getENV; + _exports.getLookup = getLookup; + _exports.global = void 0; + _exports.setLookup = setLookup; + // from lodash to catch fake globals + function checkGlobal(value) { + return value && value.Object === Object ? value : undefined; + } + // element ids can ruin global miss checks + function checkElementIdShadowing(value) { + return value && value.nodeType === undefined ? value : undefined; + } + // export real global + var global$1 = _exports.global = checkGlobal(checkElementIdShadowing(typeof global === 'object' && global)) || checkGlobal(typeof self === 'object' && self) || checkGlobal(typeof window === 'object' && window) || typeof mainContext !== 'undefined' && mainContext || + // set before strict mode in Ember loader/wrapper + new Function('return this')(); // eval outside of strict mode + + // legacy imports/exports/lookup stuff (should we keep this??) + const context = _exports.context = function (global, Ember) { + return Ember === undefined ? { + imports: global, + exports: global, + lookup: global + } : { + // import jQuery + imports: Ember.imports || global, + // export Ember + exports: Ember.exports || global, + // search for Namespaces + lookup: Ember.lookup || global + }; + }(global$1, global$1.Ember); + function getLookup() { + return context.lookup; + } + function setLookup(value) { + context.lookup = value; + } + + /** + The hash of environment variables used to control various configuration + settings. To specify your own or override default settings, add the + desired properties to a global hash named `EmberENV` (or `ENV` for + backwards compatibility with earlier versions of Ember). The `EmberENV` + hash must be created before loading Ember. + + @class EmberENV + @type Object + @public + */ + const ENV = _exports.ENV = { + ENABLE_OPTIONAL_FEATURES: false, + /** + Determines whether Ember should add to `Array` + native object prototypes, a few extra methods in order to provide a more + friendly API. + We generally recommend leaving this option set to true however, if you need + to turn it off, you can add the configuration property + `EXTEND_PROTOTYPES` to `EmberENV` and set it to `false`. + Note, when disabled (the default configuration for Ember Addons), you will + instead have to access all methods and functions from the Ember + namespace. + @property EXTEND_PROTOTYPES + @type Boolean + @default true + @for EmberENV + @public + */ + EXTEND_PROTOTYPES: { + Array: true + }, + /** + The `LOG_STACKTRACE_ON_DEPRECATION` property, when true, tells Ember to log + a full stack trace during deprecation warnings. + @property LOG_STACKTRACE_ON_DEPRECATION + @type Boolean + @default true + @for EmberENV + @public + */ + LOG_STACKTRACE_ON_DEPRECATION: true, + /** + The `LOG_VERSION` property, when true, tells Ember to log versions of all + dependent libraries in use. + @property LOG_VERSION + @type Boolean + @default true + @for EmberENV + @public + */ + LOG_VERSION: true, + RAISE_ON_DEPRECATION: false, + STRUCTURED_PROFILE: false, + /** + Whether to perform extra bookkeeping needed to make the `captureRenderTree` + API work. + This has to be set before the ember JavaScript code is evaluated. This is + usually done by setting `window.EmberENV = { _DEBUG_RENDER_TREE: true };` + before the "vendor" `'; + }; + return EventedTokenizer; + }(); + var Tokenizer = _exports.Tokenizer = /** @class */function () { + function Tokenizer(entityParser, options) { + if (options === void 0) { + options = {}; + } + this.options = options; + this.token = null; + this.startLine = 1; + this.startColumn = 0; + this.tokens = []; + this.tokenizer = new EventedTokenizer(this, entityParser, options.mode); + this._currentAttribute = undefined; + } + Tokenizer.prototype.tokenize = function (input) { + this.tokens = []; + this.tokenizer.tokenize(input); + return this.tokens; + }; + Tokenizer.prototype.tokenizePart = function (input) { + this.tokens = []; + this.tokenizer.tokenizePart(input); + return this.tokens; + }; + Tokenizer.prototype.tokenizeEOF = function () { + this.tokens = []; + this.tokenizer.tokenizeEOF(); + return this.tokens[0]; + }; + Tokenizer.prototype.reset = function () { + this.token = null; + this.startLine = 1; + this.startColumn = 0; + }; + Tokenizer.prototype.current = function () { + var token = this.token; + if (token === null) { + throw new Error('token was unexpectedly null'); + } + if (arguments.length === 0) { + return token; + } + for (var i = 0; i < arguments.length; i++) { + if (token.type === arguments[i]) { + return token; + } + } + throw new Error("token type was unexpectedly " + token.type); + }; + Tokenizer.prototype.push = function (token) { + this.token = token; + this.tokens.push(token); + }; + Tokenizer.prototype.currentAttribute = function () { + return this._currentAttribute; + }; + Tokenizer.prototype.addLocInfo = function () { + if (this.options.loc) { + this.current().loc = { + start: { + line: this.startLine, + column: this.startColumn + }, + end: { + line: this.tokenizer.line, + column: this.tokenizer.column + } + }; + } + this.startLine = this.tokenizer.line; + this.startColumn = this.tokenizer.column; + }; + // Data + Tokenizer.prototype.beginDoctype = function () { + this.push({ + type: "Doctype" /* Doctype */, + name: '' + }); + }; + Tokenizer.prototype.appendToDoctypeName = function (char) { + this.current("Doctype" /* Doctype */).name += char; + }; + Tokenizer.prototype.appendToDoctypePublicIdentifier = function (char) { + var doctype = this.current("Doctype" /* Doctype */); + if (doctype.publicIdentifier === undefined) { + doctype.publicIdentifier = char; + } else { + doctype.publicIdentifier += char; + } + }; + Tokenizer.prototype.appendToDoctypeSystemIdentifier = function (char) { + var doctype = this.current("Doctype" /* Doctype */); + if (doctype.systemIdentifier === undefined) { + doctype.systemIdentifier = char; + } else { + doctype.systemIdentifier += char; + } + }; + Tokenizer.prototype.endDoctype = function () { + this.addLocInfo(); + }; + Tokenizer.prototype.beginData = function () { + this.push({ + type: "Chars" /* Chars */, + chars: '' + }); + }; + Tokenizer.prototype.appendToData = function (char) { + this.current("Chars" /* Chars */).chars += char; + }; + Tokenizer.prototype.finishData = function () { + this.addLocInfo(); + }; + // Comment + Tokenizer.prototype.beginComment = function () { + this.push({ + type: "Comment" /* Comment */, + chars: '' + }); + }; + Tokenizer.prototype.appendToCommentData = function (char) { + this.current("Comment" /* Comment */).chars += char; + }; + Tokenizer.prototype.finishComment = function () { + this.addLocInfo(); + }; + // Tags - basic + Tokenizer.prototype.tagOpen = function () {}; + Tokenizer.prototype.beginStartTag = function () { + this.push({ + type: "StartTag" /* StartTag */, + tagName: '', + attributes: [], + selfClosing: false + }); + }; + Tokenizer.prototype.beginEndTag = function () { + this.push({ + type: "EndTag" /* EndTag */, + tagName: '' + }); + }; + Tokenizer.prototype.finishTag = function () { + this.addLocInfo(); + }; + Tokenizer.prototype.markTagAsSelfClosing = function () { + this.current("StartTag" /* StartTag */).selfClosing = true; + }; + // Tags - name + Tokenizer.prototype.appendToTagName = function (char) { + this.current("StartTag" /* StartTag */, "EndTag" /* EndTag */).tagName += char; + }; + // Tags - attributes + Tokenizer.prototype.beginAttribute = function () { + this._currentAttribute = ['', '', false]; + }; + Tokenizer.prototype.appendToAttributeName = function (char) { + this.currentAttribute()[0] += char; + }; + Tokenizer.prototype.beginAttributeValue = function (isQuoted) { + this.currentAttribute()[2] = isQuoted; + }; + Tokenizer.prototype.appendToAttributeValue = function (char) { + this.currentAttribute()[1] += char; + }; + Tokenizer.prototype.finishAttributeValue = function () { + this.current("StartTag" /* StartTag */).attributes.push(this._currentAttribute); + }; + Tokenizer.prototype.reportSyntaxError = function (message) { + this.current().syntaxError = message; + }; + return Tokenizer; + }(); + function tokenize(input, options) { + var tokenizer = new Tokenizer(new EntityParser(namedCharRefs), options); + return tokenizer.tokenize(input); + } +}); + + try { + // in the browser, the ember-template-compiler.js and ember.js bundles find each other via globalThis.require. + require('@ember/template-compilation'); + } catch (err) { + // in node, that coordination is a no-op + define('@ember/template-compilation', ['exports'], function (e) { + e.__registerTemplateCompiler = function () {}; + }); + define('ember', [ + 'exports', + '@ember/-internals/environment', + '@ember/canary-features', + 'ember/version', + ], function (e, env, fea, ver) { + e.default = { + ENV: env.ENV, + FEATURES: fea.FEATURES, + VERSION: ver.default, + }; + }); + define('@ember/-internals/glimmer', ['exports'], function(e) { + e.template = undefined; + }); + define('@ember/application', ['exports'], function(e) {}); + } + + (function (m) { + if (typeof module === 'object' && module.exports) { + module.exports = m; + } + })(require('ember-template-compiler')); + + +}()); +//# sourceMappingURL=ember-template-compiler.map diff --git a/ember/ember-git-06-12f617ec.prod.js b/ember/ember-git-06-12f617ec.prod.js new file mode 100644 index 0000000..1f3f42c --- /dev/null +++ b/ember/ember-git-06-12f617ec.prod.js @@ -0,0 +1,3732 @@ +window.EmberENV=function(e,t){for(var r in t)e[r]=t[r] +return e}(window.EmberENV||{},{EXTEND_PROTOTYPES:!1,FEATURES:{},_APPLICATION_TEMPLATE_WRAPPER:!1,_DEFAULT_ASYNC_OBSERVERS:!0,_JQUERY_INTEGRATION:!1,_TEMPLATE_ONLY_GLIMMER_COMPONENTS:!0}) +var loader,define,requireModule,require,requirejs,runningTests=!1 +if(function(e){"use strict" +function t(){var e=Object.create(null) +return e.__=void 0,delete e.__,e}var r={loader:loader,define:define,requireModule:requireModule,require:require,requirejs:requirejs} +requirejs=require=requireModule=function(e){for(var t=[],r=u(e,"(require)",t),n=t.length-1;n>=0;n--)t[n].exports() +return r.module.exports},loader={noConflict:function(t){var n,i +for(n in t)t.hasOwnProperty(n)&&r.hasOwnProperty(n)&&(i=t[n],e[i]=e[n],e[n]=r[n])},makeDefaultExport:!0} +var n=t(),i=(t(),0) +var o=["require","exports","module"] +function s(e,t,r,n){this.uuid=i++,this.id=e,this.deps=!t.length&&r.length?o:t,this.module={exports:{}},this.callback=r,this.hasExportsAsDep=!1,this.isAlias=n,this.reified=new Array(t.length),this.state="new"}function a(){}function l(e){this.id=e}function u(e,t,r){for(var i=n[e]||n[e+"/index"];i&&i.isAlias;)i=n[i.id]||n[i.id+"/index"] +return i||function(e,t){throw new Error("Could not find module `"+e+"` imported from `"+t+"`")}(e,t),r&&"pending"!==i.state&&"finalized"!==i.state&&(i.findDeps(r),r.push(i)),i}function c(e,t){if("."!==e.charAt(0))return e +for(var r=e.split("/"),n=t.split("/").slice(0,-1),i=0,o=r.length;i=parseFloat(r)}function a(e){return s(e.until)}function l(e){return{options:e,test:!i(e),isEnabled:i(e)||a(e),isRemoved:a(e)}}e.DEPRECATIONS={DEPRECATE_IMPLICIT_ROUTE_MODEL:l({id:"deprecate-implicit-route-model",for:"ember-source",since:{available:"5.3.0",enabled:"5.3.0"},until:"6.0.0",url:"https://deprecations.emberjs.com/v5.x/#toc_deprecate-implicit-route-model"}),DEPRECATE_TEMPLATE_ACTION:l({id:"template-action",url:"https://deprecations.emberjs.com/id/template-action",until:"6.0.0",for:"ember-source",since:{available:"5.9.0"}}),DEPRECATE_COMPONENT_TEMPLATE_RESOLVING:l({id:"component-template-resolving",url:"https://deprecations.emberjs.com/id/component-template-resolving",until:"6.0.0",for:"ember-source",since:{available:"5.9.0"}})}})),e("@ember/-internals/environment/index",["exports"],(function(e){"use strict" +function t(e){return e&&e.Object===Object?e:void 0}Object.defineProperty(e,"__esModule",{value:!0}),e.context=e.ENV=void 0,e.getENV=function(){return o},e.getLookup=function(){return i.lookup},e.global=void 0,e.setLookup=function(e){i.lookup=e} +var r,n=e.global=t((r="object"==typeof global&&global)&&void 0===r.nodeType?r:void 0)||t("object"==typeof self&&self)||t("object"==typeof window&&window)||"undefined"!=typeof mainContext&&mainContext||new Function("return this")() +const i=e.context=function(e,t){return void 0===t?{imports:e,exports:e,lookup:e}:{imports:t.imports||e,exports:t.exports||e,lookup:t.lookup||e}}(n,n.Ember) +const o=e.ENV={ENABLE_OPTIONAL_FEATURES:!1,EXTEND_PROTOTYPES:{Array:!0},LOG_STACKTRACE_ON_DEPRECATION:!0,LOG_VERSION:!0,RAISE_ON_DEPRECATION:!1,STRUCTURED_PROFILE:!1,_DEBUG_RENDER_TREE:!1,_ALL_DEPRECATIONS_ENABLED:!1,_OVERRIDE_DEPRECATION_VERSION:null,_DEFAULT_ASYNC_OBSERVERS:!1,_NO_IMPLICIT_ROUTE_MODEL:!1,_RERENDER_LOOP_LIMIT:1e3,EMBER_LOAD_HOOKS:{},FEATURES:{}};(e=>{if("object"!=typeof e||null===e)return +for(let i in e){if(!Object.prototype.hasOwnProperty.call(e,i)||"EXTEND_PROTOTYPES"===i||"EMBER_LOAD_HOOKS"===i)continue +let t=o[i] +o[i]=!0===t?!1!==e[i]:!1===t?!0===e[i]:e[i]}let{EXTEND_PROTOTYPES:t}=e +void 0!==t&&(o.EXTEND_PROTOTYPES.Array="object"==typeof t&&null!==t?!1!==t.Array:!1!==t) +let{EMBER_LOAD_HOOKS:r}=e +if("object"==typeof r&&null!==r)for(let i in r){if(!Object.prototype.hasOwnProperty.call(r,i))continue +let e=r[i] +Array.isArray(e)&&(o.EMBER_LOAD_HOOKS[i]=e.filter((e=>"function"==typeof e)))}let{FEATURES:n}=e +if("object"==typeof n&&null!==n)for(let i in n)Object.prototype.hasOwnProperty.call(n,i)&&(o.FEATURES[i]=!0===n[i])})(n.EmberENV)})),e("@ember/-internals/error-handling/index",["exports"],(function(e){"use strict" +let t +Object.defineProperty(e,"__esModule",{value:!0}),e.getDispatchOverride=function(){return r},e.getOnerror=function(){return t},e.onErrorTarget=void 0,e.setDispatchOverride=function(e){r=e},e.setOnerror=function(e){t=e} +e.onErrorTarget={get onerror(){return t}} +let r=null})),e("@ember/-internals/glimmer/index",["exports","@glimmer/opcode-compiler","@ember/-internals/browser-environment","@ember/debug","@ember/object","@glimmer/reference","@glimmer/validator","@ember/modifier","@ember/-internals/metal","@ember/-internals/owner","@ember/-internals/utils","@glimmer/manager","@ember/-internals/views","@ember/engine","@ember/engine/instance","@ember/instrumentation","@ember/service","@ember/-internals/runtime","@glimmer/runtime","@glimmer/util","@ember/-internals/string","@glimmer/destroyable","@ember/-internals/deprecations","@ember/runloop","@ember/object/-internals","@ember/-internals/container","@ember/-internals/environment","@glimmer/vm","@glimmer/program","rsvp","@glimmer/node","@glimmer/global-context","@ember/array/-internals","@ember/-internals/glimmer","@ember/array","@ember/routing/-internals","@ember/template-factory"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v,_,O,w,E,C,k,T,R,S,P,A,x,M,N,D,j,I){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.Component=void 0,Object.defineProperty(e,"DOMChanges",{enumerable:!0,get:function(){return y.DOMChanges}}),Object.defineProperty(e,"DOMTreeConstruction",{enumerable:!0,get:function(){return y.DOMTreeConstruction}}),e.LinkTo=e.Input=e.Helper=void 0,Object.defineProperty(e,"NodeDOMTreeConstruction",{enumerable:!0,get:function(){return A.NodeDOMTreeConstruction}}),e.Textarea=e.SafeString=e.RootTemplate=e.Renderer=e.OutletView=void 0,e._resetRenderers=function(){ur.length=0},Object.defineProperty(e,"componentCapabilities",{enumerable:!0,get:function(){return p.componentCapabilities}}),e.escapeExpression=function(e){let t +if("string"!=typeof e){if(ut(e))return e.toHTML() +if(null==e)return"" +if(!e)return String(e) +t=String(e)}else t=e +if(!st.test(t))return t +return t.replace(at,lt)},e.getTemplate=function(e){if(Object.prototype.hasOwnProperty.call(fr,e))return fr[e]},e.getTemplates=function(){return fr},e.hasTemplate=function(e){return Object.prototype.hasOwnProperty.call(fr,e)},e.helper=nt,e.htmlSafe=function(e){null==e?e="":"string"!=typeof e&&(e=String(e)) +return new it(e)},e.isHTMLSafe=ut,Object.defineProperty(e,"isSerializationFirstNode",{enumerable:!0,get:function(){return y.isSerializationFirstNode}}),Object.defineProperty(e,"modifierCapabilities",{enumerable:!0,get:function(){return p.modifierCapabilities}}),e.renderSettled=function(){null===pr&&(pr=P.default.defer(),(0,E._getCurrentRunLoop)()||E._backburner.schedule("actions",null,ar)) +return pr.promise},e.setComponentManager=function(e,t){return(0,p.setComponentManager)(e,t)},e.setTemplate=function(e,t){return fr[e]=t},e.setTemplates=function(e){fr=e},e.setupApplicationRegistry=function(e){e.register("service:-dom-builder",{create(e){let t=(0,u.getOwner)(e) +switch(t.lookup("-environment:main")._renderMode){case"serialize":return A.serializeBuilder.bind(null) +case"rehydrate":return y.rehydrationBuilder.bind(null) +default:return y.clientBuilder.bind(null)}}}),e.register(k.privatize`template:-root`,F),e.register("renderer:-dom",hr)},e.setupEngineRegistry=function(e){e.optionsForType("template",{instantiate:!1}),e.register("view:-outlet",or),e.register("template:-outlet",mr),e.optionsForType("helper",{instantiate:!1}),e.register("component:input",re),e.register("component:link-to",he),e.register("component:textarea",be)},Object.defineProperty(e,"template",{enumerable:!0,get:function(){return t.templateFactory}}),Object.defineProperty(e,"templateCacheCounters",{enumerable:!0,get:function(){return t.templateCacheCounters}}),e.uniqueId=Bt +var F=e.RootTemplate=(0,I.createTemplateFactory)({id:"tjANIXCV",block:'[[[46,[30,0],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/root.hbs",isStrictMode:!0}),L=(0,I.createTemplateFactory)({id:"4z3DuGQ3",block:'[[[11,"input"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,4,[30,0,["type"]]],[16,"checked",[30,0,["checked"]]],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/input.hbs",scope:()=>[a.on],isStrictMode:!0}) +function B(){}class U{static toString(){return"internal component"}constructor(e,t,r){this.owner=e,this.args=t,this.caller=r,(0,u.setOwner)(this,e)}get id(){return(0,c.guidFor)(this)}get class(){return"ember-view"}validateArguments(){for(let e of Object.keys(this.args.named))this.isSupportedArgument(e)||this.onUnsupportedArgument(e)}named(e){let t=this.args.named[e] +return t?(0,o.valueForRef)(t):void 0}positional(e){let t=this.args.positional[e] +return t?(0,o.valueForRef)(t):void 0}listenerFor(e){let t=this.named(e) +return t||B}isSupportedArgument(e){return!1}onUnsupportedArgument(e){}toString(){return`<${this.constructor}:${(0,c.guidFor)(this)}>`}}const H=new WeakMap +function $(e,t){let r={create(){throw(0,n.assert)("Use constructor instead of create")},toString:()=>e.toString()} +return H.set(r,e),(0,p.setInternalComponentManager)(z,r),(0,p.setComponentTemplate)(t,r),r}const V={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!1,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +const z=new class{getCapabilities(){return V}create(e,t,r,n,i,a){var l +let u=new(l=t,H.get(l))(e,r.capture(),(0,o.valueForRef)(a)) +return(0,s.untrack)(u.validateArguments.bind(u)),u}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}getDebugName(e){return e.toString()}getSelf(e){return(0,o.createConstRef)(e,"this")}getDestroyable(e){return e}} +var q=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +const G=Object.freeze({}) +function W(e){return function(e){return e.target}(e).value}function Y(e){return void 0===e?new Q(void 0):(0,o.isConstRef)(e)?new Q((0,o.valueForRef)(e)):(0,o.isUpdatableRef)(e)?new K(e):new J(e)}class Q{constructor(e){this.value=e}get(){return this.value}set(e){this.value=e}}q([l.tracked],Q.prototype,"value",void 0) +class K{constructor(e){this.reference=e}get(){return(0,o.valueForRef)(this.reference)}set(e){(0,o.updateRef)(this.reference,e)}}class J{constructor(e){this.lastUpstreamValue=G,this.upstream=new K(e)}get(){let e=this.upstream.get() +return e!==this.lastUpstreamValue&&(this.lastUpstreamValue=e,this.local=new Q(e)),this.local.get()}set(e){this.local.set(e)}}class X extends U{constructor(){super(...arguments),this._value=Y(this.args.named.value)}validateArguments(){super.validateArguments()}get value(){return this._value.get()}set value(e){this._value.set(e)}valueDidChange(e){this.value=W(e)}change(e){this.valueDidChange(e)}input(e){this.valueDidChange(e)}keyUp(e){switch(e.key){case"Enter":this.listenerFor("enter")(e),this.listenerFor("insert-newline")(e) +break +case"Escape":this.listenerFor("escape-press")(e)}}listenerFor(e){let t=super.listenerFor(e) +return this.isVirtualEventListener(e,t)?(r=t,e=>r(W(e),e)):t +var r}isVirtualEventListener(e,t){return-1!==["enter","insert-newline","escape-press"].indexOf(e)}}q([i.action],X.prototype,"valueDidChange",null),q([i.action],X.prototype,"keyUp",null) +var Z=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +let ee +if(r.hasDOM){const e=Object.create(null),t=document.createElement("input") +e[""]=!1,e.text=!0,e.checkbox=!0,ee=r=>{let n=e[r] +if(void 0===n){try{t.type=r,n=t.type===r}catch(i){n=!1}finally{t.type="text"}e[r]=n}return n}}else ee=e=>""!==e +class te extends X{constructor(){super(...arguments),this._checked=Y(this.args.named.checked)}static toString(){return"Input"}get class(){return this.isCheckbox?"ember-checkbox ember-view":"ember-text-field ember-view"}get type(){let e=this.named("type") +return null==e?"text":ee(e)?e:"text"}get isCheckbox(){return"checkbox"===this.named("type")}get checked(){return this.isCheckbox?this._checked.get():void 0}set checked(e){this._checked.set(e)}change(e){this.isCheckbox?this.checkedDidChange(e):super.change(e)}input(e){this.isCheckbox||super.input(e)}checkedDidChange(e){let t=e.target +this.checked=t.checked}isSupportedArgument(e){return-1!==["type","value","checked","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}Z([i.action],te.prototype,"change",null),Z([i.action],te.prototype,"input",null),Z([i.action],te.prototype,"checkedDidChange",null) +const re=e.Input=$(te,L) +var ne=(0,I.createTemplateFactory)({id:"Ub0nir+H",block:'[[[11,3],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[16,"role",[30,0,["role"]]],[16,"title",[30,0,["title"]]],[16,"rel",[30,0,["rel"]]],[16,"tabindex",[30,0,["tabindex"]]],[16,"target",[30,0,["target"]]],[17,1],[16,6,[30,0,["href"]]],[4,[32,0],["click",[30,0,["click"]]],null],[12],[18,2,null],[13]],["&attrs","&default"],false,["yield"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/link-to.hbs",scope:()=>[a.on],isStrictMode:!0}),ie=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +const oe=[],se={} +function ae(e){return null==e}function le(e){return!ae(e)}function ue(e){return"object"==typeof e&&null!==e&&!0===e.isQueryParams}(0,n.debugFreeze)(oe),(0,n.debugFreeze)(se) +class ce extends U{constructor(){super(...arguments),this.currentRouteCache=(0,s.createCache)((()=>((0,s.consumeTag)((0,s.tagFor)(this.routing,"currentState")),(0,s.untrack)((()=>this.routing.currentRouteName)))))}static toString(){return"LinkTo"}validateArguments(){super.validateArguments()}get class(){let e="ember-view" +return this.isActive?(e+=this.classFor("active"),!1===this.willBeActive&&(e+=" ember-transitioning-out")):this.willBeActive&&(e+=" ember-transitioning-in"),this.isLoading&&(e+=this.classFor("loading")),this.isDisabled&&(e+=this.classFor("disabled")),e}get href(){if(this.isLoading)return"#" +let{routing:e,route:t,models:r,query:n}=this +return(0,s.consumeTag)((0,s.tagFor)(e,"currentState")),e.generateURL(t,r,n)}click(e){if(!(0,d.isSimpleClick)(e))return +let t=e.currentTarget +if(!(""===t.target||"_self"===t.target))return +if(this.preventDefault(e),this.isDisabled)return +if(this.isLoading)return +let{routing:r,route:n,models:i,query:o,replace:s}=this,a={routeName:n,queryParams:o,transition:void 0};(0,m.flaggedInstrument)("interaction.link-to",a,(()=>{a.transition=r.transitionTo(n,i,o,s)}))}get route(){if("route"in this.args.named){let e=this.named("route") +return e&&this.namespaceRoute(e)}return this.currentRoute}get currentRoute(){return(0,s.getValue)(this.currentRouteCache)}get models(){if("models"in this.args.named){let e=this.named("models") +return e}return"model"in this.args.named?[this.named("model")]:oe}get query(){if("query"in this.args.named){let e=this.named("query") +return{...e}}return se}get replace(){return!0===this.named("replace")}get isActive(){return this.isActiveForState(this.routing.currentState)}get willBeActive(){let e=this.routing.currentState,t=this.routing.targetState +return e===t?null:this.isActiveForState(t)}get isLoading(){return ae(this.route)||this.models.some((e=>ae(e)))}get isDisabled(){return Boolean(this.named("disabled"))}get isEngine(){let e=this.owner +return e instanceof f.default&&void 0!==(0,h.getEngineParent)(e)}get engineMountPoint(){let e=this.owner +return e instanceof f.default?e.mountPoint:void 0}classFor(e){let t=this.named(`${e}Class`) +return!0===t||ae(t)?` ${e}`:t?` ${t}`:""}namespaceRoute(e){let{engineMountPoint:t}=this +return void 0===t?e:"application"===e?t:`${t}.${e}`}isActiveForState(e){if(!le(e))return!1 +if(this.isLoading)return!1 +let t=this.named("current-when") +if("boolean"==typeof t)return t +if("string"==typeof t){let{models:r,routing:n}=this +return t.split(" ").some((t=>n.isActiveForRoute(r,void 0,this.namespaceRoute(t),e)))}{let{route:t,models:r,query:n,routing:i}=this +return i.isActiveForRoute(r,n,t,e)}}preventDefault(e){e.preventDefault()}isSupportedArgument(e){return-1!==["route","model","models","query","replace","disabled","current-when","activeClass","loadingClass","disabledClass"].indexOf(e)||super.isSupportedArgument(e)}}ie([(0,g.service)("-routing")],ce.prototype,"routing",void 0),ie([i.action],ce.prototype,"click",null) +let{prototype:pe}=ce,de=(e,t)=>e?Object.getOwnPropertyDescriptor(e,t)||de(Object.getPrototypeOf(e),t):null +{let e=pe.onUnsupportedArgument +Object.defineProperty(pe,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"href"===t||e.call(this,t)}})}{let e=de(pe,"models"),t=e.get +Object.defineProperty(pe,"models",{configurable:!0,enumerable:!1,get:function(){let e=t.call(this) +return e.length>0&&!("query"in this.args.named)&&ue(e[e.length-1])&&(e=e.slice(0,-1)),e}}) +let r=de(pe,"query"),n=r.get +Object.defineProperty(pe,"query",{configurable:!0,enumerable:!1,get:function(){if("query"in this.args.named){let e=n.call(this) +return ue(e)?e.values??se:e}{let e=t.call(this) +if(e.length>0){let t=e[e.length-1] +if(ue(t)&&null!==t.values)return t.values}return se}}})}{let e=pe.onUnsupportedArgument +Object.defineProperty(pe,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"params"!==t&&e.call(this,t)}})}const he=e.LinkTo=$(ce,ne) +var fe=(0,I.createTemplateFactory)({id:"112WKCh2",block:'[[[11,"textarea"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/textarea.hbs",scope:()=>[a.on],isStrictMode:!0}),me=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +class ge extends X{static toString(){return"Textarea"}get class(){return"ember-text-area ember-view"}change(e){super.change(e)}input(e){super.input(e)}isSupportedArgument(e){return-1!==["type","value","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}me([i.action],ge.prototype,"change",null),me([i.action],ge.prototype,"input",null) +const be=e.Textarea=$(ge,fe) +function ye(e){return"function"==typeof e}function ve(e,t){return"attrs"===t[0]&&(t.shift(),1===t.length)?(0,o.childRefFor)(e,t[0]):(0,o.childRefFromParts)(e,t)}function _e(e){let t=e.indexOf(":") +if(-1===t)return[e,e,!0] +{let r=e.substring(0,t),n=e.substring(t+1) +return[r,n,!1]}}function Oe(e,t,r,n){let[i,s,a]=r +if("id"===s){let t=(0,l.get)(e,i) +null==t&&(t=e.elementId) +let r=(0,o.createPrimitiveRef)(t) +return void n.setAttribute("id",r,!0,null)}let u=i.indexOf(".")>-1,c=u?ve(t,i.split(".")):(0,o.childRefFor)(t,i) +n.setAttribute(s,c,!1,null)}function we(e,t,r){let n=t.split(":"),[i,s,a]=n +if(""===i)r.setAttribute("class",(0,o.createPrimitiveRef)(s),!0,null) +else{let t,n=i.indexOf(".")>-1,l=n?i.split("."):[],u=n?ve(e,l):(0,o.childRefFor)(e,i) +t=void 0===s?Ee(u,n?l[l.length-1]:i):function(e,t,r){return(0,o.createComputeRef)((()=>(0,o.valueForRef)(e)?t:r))}(u,s,a),r.setAttribute("class",t,!1,null)}}function Ee(e,t){let r +return(0,o.createComputeRef)((()=>{let n=(0,o.valueForRef)(e) +return!0===n?r||(r=(0,_.dasherize)(t)):n||0===n?String(n):null}))}function Ce(){}class ke{constructor(e,t,r,n,i,a){this.component=e,this.args=t,this.argsTag=r,this.finalizer=n,this.hasWrappedElement=i,this.isInteractive=a,this.classRef=null,this.classRef=null,this.argsRevision=null===t?0:(0,s.valueForTag)(r),this.rootRef=(0,o.createConstRef)(e,"this"),(0,O.registerDestructor)(this,(()=>this.willDestroy()),!0),(0,O.registerDestructor)(this,(()=>this.component.destroy()))}willDestroy(){let{component:e,isInteractive:t}=this +if(t){(0,s.beginUntrackFrame)(),e.trigger("willDestroyElement"),e.trigger("willClearRender"),(0,s.endUntrackFrame)() +let t=(0,d.getViewElement)(e) +t&&((0,d.clearElementView)(t),(0,d.clearViewElement)(e))}e.renderer.unregister(e)}finalize(){let{finalizer:e}=this +e(),this.finalizer=Ce}}function Te(e){return(0,p.setInternalHelperManager)(e,{})}const Re=new WeakSet +var Se=Te((e=>{(0,w.deprecateUntil)("Usage of the `(action)` helper is deprecated. Migrate to native functions and function invocation.",w.DEPRECATIONS.DEPRECATE_TEMPLATE_ACTION) +let t,{named:r,positional:n}=e,[i,s,...a]=n,u=s.debugLabel,c="target"in r?r.target:i,p=function(e,t){let r,n +t.length>0&&(r=e=>t.map(o.valueForRef).concat(e)) +e&&(n=t=>{let r=(0,o.valueForRef)(e) +return r&&t.length>0&&(t[0]=(0,l.get)(t[0],r)),t}) +return r&&n?e=>n(r(e)):r||n||Pe}("value"in r&&r.value||!1,a) +return t=(0,o.isInvokableRef)(s)?Ae(s,s,xe,p,u):function(e,t,r,n,i){const s=(0,o.valueForRef)(r) +0 +return(...r)=>Ae(e,(0,o.valueForRef)(t),s,n,i)(...r)}((0,o.valueForRef)(i),c,s,p,u),Re.add(t),(0,o.createUnboundRef)(t,"(result of an `action` helper)")})) +function Pe(e){return e}function Ae(e,t,r,n,i){let o,s +if("string"==typeof r){o=t +let e=t.actions?.[r] +s=e}else"function"==typeof r&&(o=e,s=r) +return(...e)=>{let t={target:o,args:e,label:"@glimmer/closure-action"} +return(0,m.flaggedInstrument)("interaction.ember-action",t,(()=>(0,E.join)(o,s,...n(e))))}}function xe(e){(0,o.updateRef)(this,e)}function Me(e){let t=Object.create(null),r=Object.create(null) +r[je]=e +for(let n in e){let i=e[n],s=(0,o.valueForRef)(i),a="function"==typeof s&&Re.has(s);(0,o.isUpdatableRef)(i)&&!a?t[n]=new De(i,s):t[n]=s,r[n]=s}return r.attrs=t,r}const Ne=Symbol("REF") +class De{constructor(e,t){this[d.MUTABLE_CELL]=!0,this[Ne]=e,this.value=t}update(e){(0,o.updateRef)(this[Ne],e)}}const je=(0,c.enumerableSymbol)("ARGS"),Ie=(0,c.enumerableSymbol)("HAS_BLOCK"),Fe=Symbol("DIRTY_TAG"),Le=Symbol("IS_DISPATCHING_ATTRS"),Be=Symbol("BOUNDS"),Ue=(0,o.createPrimitiveRef)("ember-view");(0,n.debugFreeze)([]) +class He{templateFor(e){let t,{layout:r,layoutName:n}=e,i=(0,u.getOwner)(e) +if(void 0===r){if(void 0===n)return null +{let e=i.lookup(`template:${n}`) +t=e}}else{if(!ye(r))return null +t=r}return(0,v.unwrapTemplate)(t(i)).asWrappedLayout()}getDynamicLayout(e){return this.templateFor(e.component)}getTagName(e){let{component:t,hasWrappedElement:r}=e +return r?t&&t.tagName||"div":null}getCapabilities(){return ze}prepareArgs(e,t){if(t.named.has("__ARGS__")){let{__ARGS__:e,...r}=t.named.capture(),n=(0,o.valueForRef)(e) +return{positional:n.positional,named:{...r,...n.named}}}const{positionalParams:r}=e.class??e +if(null==r||0===t.positional.length)return null +let n +if("string"==typeof r){let e=t.positional.capture() +n={[r]:(0,o.createComputeRef)((()=>(0,y.reifyPositional)(e)))},Object.assign(n,t.named.capture())}else{if(!(Array.isArray(r)&&r.length>0))return null +{const e=Math.min(r.length,t.positional.length) +n={},Object.assign(n,t.named.capture()) +for(let i=0;i{a.setAttribute("class",(0,o.createPrimitiveRef)(e),!1,null)})),p&&p.length&&p.forEach((e=>{we(n,e,a)})),a.setAttribute("class",Ue,!1,null),"ariaRole"in e&&a.setAttribute("role",(0,o.childRefFor)(n,"ariaRole"),!1,null),e._transitionTo("hasElement"),r&&((0,s.beginUntrackFrame)(),e.trigger("willInsertElement"),(0,s.endUntrackFrame)())}didRenderLayout(e,t){e.component[Be]=t,e.finalize()}didCreate({component:e,isInteractive:t}){t&&(e._transitionTo("inDOM"),e.trigger("didInsertElement"),e.trigger("didRender"))}update(e){let{component:t,args:r,argsTag:n,argsRevision:i,isInteractive:o}=e +if(e.finalizer=(0,m._instrumentStart)("render.component",Ve,t),(0,s.beginUntrackFrame)(),null!==r&&!(0,s.validateTag)(n,i)){(0,s.beginTrackFrame)() +let i=Me(r) +n=e.argsTag=(0,s.endTrackFrame)(),e.argsRevision=(0,s.valueForTag)(n),t[Le]=!0,t.setProperties(i),t[Le]=!1,t.trigger("didUpdateAttrs"),t.trigger("didReceiveAttrs")}o&&(t.trigger("willUpdate"),t.trigger("willRender")),(0,s.endUntrackFrame)(),(0,s.consumeTag)(n),(0,s.consumeTag)(t[Fe])}didUpdateLayout(e){e.finalize()}didUpdate({component:e,isInteractive:t}){t&&(e.trigger("didUpdate"),e.trigger("didRender"))}getDestroyable(e){return e}}function $e(e){return e.instrumentDetails({initialRender:!0})}function Ve(e){return e.instrumentDetails({initialRender:!1})}const ze={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!0,hasSubOwner:!1},qe=new He +function Ge(e){return e===qe}let We=new WeakMap +class Ye extends(d.CoreView.extend(d.ChildViewsSupport,d.ViewStateSupport,d.ClassNamesSupport,b.TargetActionSupport,d.ActionSupport,d.ViewMixin,{didReceiveAttrs(){},didRender(){},didUpdate(){},didUpdateAttrs(){},willRender(){},willUpdate(){}})){constructor(){super(...arguments),this.isComponent=!0}init(e){super.init(e),this._superRerender=this.rerender,this.rerender=this._rerender,this[Le]=!1,this[Fe]=(0,s.createTag)(),this[Be]=null +const t=this._dispatcher +if(t){let e=We.get(t) +e||(e=new WeakSet,We.set(t,e)) +let r=Object.getPrototypeOf(this) +if(!e.has(r)){t.lazyEvents.forEach(((e,r)=>{null!==e&&"function"==typeof this[e]&&t.setupHandlerForBrowserEvent(r)})),e.add(r)}}}get _dispatcher(){if(void 0===this.__dispatcher){let e=(0,u.getOwner)(this) +if(e.lookup("-environment:main").isInteractive){let t=e.lookup("event_dispatcher:main") +this.__dispatcher=t}else this.__dispatcher=null}return this.__dispatcher}on(e,t,r){return this._dispatcher?.setupHandlerForEmberEvent(e),super.on(e,t,r)}_rerender(){(0,s.dirtyTag)(this[Fe]),this._superRerender()}[l.PROPERTY_DID_CHANGE](e,t){if(this[Le])return +let r=this[je],n=void 0!==r?r[e]:void 0 +void 0!==n&&(0,o.isUpdatableRef)(n)&&(0,o.updateRef)(n,2===arguments.length?t:(0,l.get)(this,e))}getAttr(e){return this.get(e)}readDOMAttr(e){let t=(0,d.getViewElement)(this),r=t,n="http://www.w3.org/2000/svg"===r.namespaceURI,{type:i,normalized:o}=(0,y.normalizeProperty)(r,e) +return n||"attr"===i?r.getAttribute(o):r[o]}static toString(){return"@ember/component"}}var Qe +e.Component=Ye,Ye.isComponentFactory=!0,Ye.reopenClass({positionalParams:[]}),(0,p.setInternalComponentManager)(qe,Ye) +const Ke=Symbol("RECOMPUTE_TAG"),Je=Symbol("IS_CLASSIC_HELPER") +class Xe extends C.FrameworkObject{init(e){super.init(e),this[Ke]=(0,s.createTag)()}recompute(){(0,E.join)((()=>(0,s.dirtyTag)(this[Ke])))}}e.Helper=Xe,Qe=Je,Xe.isHelperFactory=!0,Xe[Qe]=!0,Xe.helper=nt +class Ze{constructor(e){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0,hasDestroyable:!0}) +let t={};(0,u.setOwner)(t,e),this.ownerInjection=t}createHelper(e,t){let r=null!=(n=e)&&"class"in n?e.create():e.create(this.ownerInjection) +var n +return{instance:r,args:t}}getDestroyable({instance:e}){return e}getValue({instance:e,args:t}){let{positional:r,named:n}=t,i=e.compute(r,n) +return(0,s.consumeTag)(e[Ke]),i}getDebugName(e){return(0,c.getDebugName)((e.class||e).prototype)}}(0,p.setHelperManager)((e=>new Ze(e)),Xe) +const et=(0,p.getInternalHelperManager)(Xe) +class tt{constructor(e){this.compute=e,this.isHelperFactory=!0}create(){return{compute:this.compute}}}const rt=new class{constructor(){this.capabilities=(0,p.helperCapabilities)("3.23",{hasValue:!0})}createHelper(e,t){return()=>e.compute.call(null,t.positional,t.named)}getValue(e){return e()}getDebugName(e){return(0,c.getDebugName)(e.compute)}} +function nt(e){return new tt(e)}(0,p.setHelperManager)((()=>rt),tt.prototype) +class it{constructor(e){this.__string=e}toString(){return`${this.__string}`}toHTML(){return this.toString()}}e.SafeString=it +const ot={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},st=/[&<>"'`=]/,at=/[&<>"'`=]/g +function lt(e){return ot[e]}function ut(e){return null!==e&&"object"==typeof e&&"toHTML"in e&&"function"==typeof e.toHTML}function ct(e){return{object:`${e.name}:main`}}const pt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +const dt=new class{create(e,t,r,n,i){let s=i.get("outletState"),a=t.ref +i.set("outletState",a) +let l={self:(0,o.createConstRef)(t.controller,"this"),finalize:(0,m._instrumentStart)("render.outlet",ct,t)} +if(void 0!==n.debugRenderTree){l.outletBucket={} +let e=(0,o.valueForRef)(s),t=e&&e.render&&e.render.owner,r=(0,o.valueForRef)(a).render.owner +if(t&&t!==r){let e=r.mountPoint +l.engine=r,e&&(l.engineBucket={mountPoint:e})}}return l}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r){let n=[] +return n.push({bucket:t.outletBucket,type:"outlet",name:"main",args:y.EMPTY_ARGS,instance:void 0,template:void 0}),t.engineBucket&&n.push({bucket:t.engineBucket,type:"engine",name:t.engineBucket.mountPoint,args:y.EMPTY_ARGS,instance:t.engine,template:void 0}),n.push({bucket:t,type:"route-template",name:e.name,args:r,instance:e.controller,template:(0,v.unwrapTemplate)(e.template).moduleName}),n}getCapabilities(){return pt}getSelf({self:e}){return e}didCreate(){}didUpdate(){}didRenderLayout(e){e.finalize()}didUpdateLayout(){}getDestroyable(){return null}} +class ht{constructor(e,t=dt){this.state=e,this.manager=t,this.handle=-1 +let r=t.getCapabilities() +this.capabilities=(0,p.capabilityFlagsFrom)(r),this.compilable=r.wrapped?(0,v.unwrapTemplate)(e.template).asWrappedLayout():(0,v.unwrapTemplate)(e.template).asLayout(),this.resolvedName=e.name}}class ft extends He{constructor(e){super(),this.component=e}create(e,t,r,{isInteractive:n},i){let o=this.component,a=(0,m._instrumentStart)("render.component",$e,o) +i.view=o +let l=""!==o.tagName +l||(n&&o.trigger("willRender"),o._transitionTo("hasElement"),n&&o.trigger("willInsertElement")) +let u=new ke(o,null,s.CONSTANT_TAG,a,l,n) +return(0,s.consumeTag)(o[Fe]),u}}const mt={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!1,createArgs:!1,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!1,hasSubOwner:!1} +class gt{constructor(e){this.handle=-1,this.resolvedName="-top-level",this.capabilities=(0,p.capabilityFlagsFrom)(mt),this.compilable=null,this.manager=new ft(e) +let t=(0,k.getFactoryFor)(e) +this.state=t}}class bt{constructor(e){this.inner=e}}var yt=Te((({positional:e})=>{const t=e[0] +return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(t) +return(0,s.consumeTag)((0,l.tagForObject)(e)),(0,c.isProxy)(e)&&(e=(0,b._contentFor)(e)),new bt(e)}))})) +class vt{constructor(e){this.length=e,this.position=0}isEmpty(){return!1}memoFor(e){return e}next(){let{length:e,position:t}=this +if(t>=e)return null +let r=this.valueFor(t),n=this.memoFor(t) +return this.position++,{value:r,memo:n}}}class _t extends vt{static from(e){return e.length>0?new this(e):null}static fromForEachable(e){let t=[] +return e.forEach((e=>t.push(e))),this.from(t)}constructor(e){super(e.length),this.array=e}valueFor(e){return this.array[e]}}class Ot extends vt{static from(e){return e.length>0?new this(e):null}constructor(e){super(e.length),this.array=e}valueFor(e){return(0,l.objectAt)(this.array,e)}}class wt extends vt{static fromIndexable(e){let t=Object.keys(e) +if(0===t.length)return null +{let r=[] +for(let n of t){let t +t=e[n],(0,s.isTracking)()&&((0,s.consumeTag)((0,s.tagFor)(e,n)),Array.isArray(t)&&(0,s.consumeTag)((0,s.tagFor)(t,"[]"))),r.push(t)}return new this(t,r)}}static fromForEachable(e){let t=[],r=[],n=0,i=!1 +return e.forEach((function(e,o){i=i||arguments.length>=2,i&&t.push(o),r.push(e),n++})),0===n?null:i?new this(t,r):new _t(r)}constructor(e,t){super(t.length),this.keys=e,this.values=t}valueFor(e){return this.values[e]}memoFor(e){return this.keys[e]}}class Et{static from(e){let t=e[Symbol.iterator](),r=t.next(),{done:n}=r +return n?null:new this(t,r)}constructor(e,t){this.iterable=e,this.result=t,this.position=0}isEmpty(){return!1}next(){let{iterable:e,result:t,position:r}=this +if(t.done)return null +let n=this.valueFor(t,r),i=this.memoFor(t,r) +return this.position++,this.result=e.next(),{value:n,memo:i}}}class Ct extends Et{valueFor(e){return e.value}memoFor(e,t){return t}}class kt extends Et{valueFor(e){return e.value[1]}memoFor(e){return e.value[0]}}function Tt(e){return null!=e&&"function"==typeof e.forEach}function Rt(e){return null!=e&&"function"==typeof e[Symbol.iterator]}(0,x.default)({FEATURES:{DEFAULT_HELPER_MANAGER:!0},scheduleRevalidate(){E._backburner.ensureInstance()},toBool:function(e){return(0,c.isProxy)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"content")),Boolean((0,l.get)(e,"isTruthy"))):(0,D.isArray)(e)?((0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),0!==e.length):(0,N.isHTMLSafe)(e)?Boolean(e.toString()):Boolean(e)},toIterator:function(e){return e instanceof bt?function(e){if(t=e,null===t||"object"!=typeof t&&"function"!=typeof t)return null +var t +return Array.isArray(e)||(0,M.isEmberArray)(e)?wt.fromIndexable(e):Rt(e)?kt.from(e):Tt(e)?wt.fromForEachable(e):wt.fromIndexable(e)}(e.inner):function(e){if(!(0,c.isObject)(e))return null +return Array.isArray(e)?_t.from(e):(0,M.isEmberArray)(e)?Ot.from(e):Rt(e)?Ct.from(e):Tt(e)?_t.fromForEachable(e):null}(e)},getProp:l._getProp,setProp:l._setProp,getPath:l.get,setPath:l.set,scheduleDestroy(e,t){(0,E.schedule)("actions",null,t,e)},scheduleDestroyed(e){(0,E.schedule)("destroy",null,e)},warnIfStyleNotTrusted(e){},assert(e,t,r){0},deprecate(e,t,r){0}}) +class St{constructor(e,t){this.owner=e,this.isInteractive=t,this.enableDebugTooling=T.ENV._DEBUG_RENDER_TREE}onTransactionCommit(){}}var Pt=Te((({positional:e,named:t})=>{const r=e[0] +let n=t.type,i=t.loc,s=t.original;(0,o.valueForRef)(n),(0,o.valueForRef)(i),(0,o.valueForRef)(s) +return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(r) +return e}))})) +let At +At=e=>{let t=e.positional[0] +return t} +var xt=Te(At),Mt=Te((({positional:e})=>(0,o.createComputeRef)((()=>{let t=e[0],r=e[1],n=(0,o.valueForRef)(t).split("."),i=n[n.length-1],s=(0,o.valueForRef)(r) +return!0===s?(0,_.dasherize)(i):s||0===s?String(s):""})))),Nt=Te((({positional:e},t)=>{let r=e[0],n=(0,o.valueForRef)(r) +return(0,o.createConstRef)(t.factoryFor(n)?.class,`(-resolve "${n}")`)})),Dt=Te((({positional:e})=>{const t=e[0] +return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(t) +return(0,c.isObject)(e)&&(0,s.consumeTag)((0,l.tagForProperty)(e,"[]")),e}))})),jt=Te((({positional:e})=>{let t=e[0] +return(0,o.createInvokableRef)(t)})),It=Te((({positional:e})=>{let t=e[0] +return(0,o.createReadOnlyRef)(t)})),Ft=Te((({positional:e,named:t})=>(0,o.createUnboundRef)((0,o.valueForRef)(e[0]),"(result of an `unbound` helper)"))),Lt=Te((()=>(0,o.createConstRef)(Bt(),"unique-id"))) +function Bt(){return([3e7]+-1e3+-4e3+-2e3+-1e11).replace(/[0-3]/g,(e=>(4*e^16*Math.random()>>(2&e)).toString(16)))}const Ut=["alt","shift","meta","ctrl"],Ht=/^click|mouse|touch/ +let $t={registeredActions:d.ActionManager.registeredActions,registerAction(e){let{actionId:t}=e +return d.ActionManager.registeredActions[t]=e,t},unregisterAction(e){let{actionId:t}=e +delete d.ActionManager.registeredActions[t]}} +class Vt{constructor(e,t,r,n,i,o){this.tag=(0,s.createUpdatableTag)(),this.element=e,this.owner=t,this.actionId=r,this.actionArgs=n,this.namedArgs=i,this.positional=o,this.eventName=this.getEventName(),(0,O.registerDestructor)(this,(()=>$t.unregisterAction(this)))}getEventName(){let{on:e}=this.namedArgs +return void 0!==e?(0,o.valueForRef)(e):"click"}getActionArgs(){let e=new Array(this.actionArgs.length) +for(let t=0;t=0)return!0 +for(let r=0;r{let e=this.getActionArgs(),r={args:e,target:c,name:null};(0,o.isInvokableRef)(t)?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{(0,o.updateRef)(t,e[0])})):"function"!=typeof t?(r.name=t,c.send?(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c.send.apply(c,[t,...e])})):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{c[t].apply(c,e)}))):(0,m.flaggedInstrument)("interaction.ember-action",r,(()=>{t.apply(c,e)}))})),p)}}const zt=new class{create(e,t,r,{named:n,positional:i}){let o=[] +for(let a=2;a1&&(n=a[0],r=a[1],t=(0,o.isInvokableRef)(r)?r:(0,o.valueForRef)(r)),e.actionName=t,e.implicitTarget=n,this.ensureEventSetup(e),$t.registerAction(e),i.setAttribute("data-ember-action",""),i.setAttribute(`data-ember-action-${s}`,String(s))}update(e){let{positional:t}=e,r=t[1];(0,o.isInvokableRef)(r)||(e.actionName=(0,o.valueForRef)(r)),e.getEventName()!==e.eventName&&(this.ensureEventSetup(e),e.eventName=e.getEventName())}ensureEventSetup(e){let t=e.owner.lookup("event_dispatcher:main") +t?.setupHandlerForEmberEvent(e.eventName)}getTag(e){return e.tag}getDestroyable(e){return e}} +var qt=(0,p.setInternalModifierManager)(zt,{}) +const Gt={dynamicLayout:!0,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!0} +const Wt=new class{getDynamicLayout(e){let t=e.engine.lookup("template:application") +return(0,v.unwrapTemplate)(t(e.engine)).asLayout()}getCapabilities(){return Gt}getOwner(e){return e.engine}create(e,{name:t},r,n){let i=e.buildChildEngineInstance(t) +i.boot() +let s,a,l,u,c=i.factoryFor("controller:application")||(0,j.generateControllerFactory)(i,"application") +if(r.named.has("model")&&(u=r.named.get("model")),void 0===u)s=c.create(),a=(0,o.createConstRef)(s,"this"),l={engine:i,controller:s,self:a,modelRef:u} +else{let e=(0,o.valueForRef)(u) +s=c.create({model:e}),a=(0,o.createConstRef)(s,"this"),l={engine:i,controller:s,self:a,modelRef:u}}return n.debugRenderTree&&(0,O.associateDestroyableChild)(i,s),l}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r,n){return[{bucket:t.engine,instance:t.engine,type:"engine",name:e.name,args:r},{bucket:t.controller,instance:t.controller,type:"route-template",name:"application",args:r,template:n}]}getSelf({self:e}){return e}getDestroyable(e){return e.engine}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}update(e){let{controller:t,modelRef:r}=e +void 0!==r&&t.set("model",(0,o.valueForRef)(r))}} +class Yt{constructor(e){this.resolvedName=e,this.handle=-1,this.manager=Wt,this.compilable=null,this.capabilities=(0,p.capabilityFlagsFrom)(Gt),this.state={name:e}}}const Qt=Te(((e,t)=>{let r,n,i,s=e.positional[0] +return r=(0,y.createCapturedArgs)(e.named,y.EMPTY_POSITIONAL),(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(s) +return"string"==typeof e?(n===e||(n=e,i=(0,y.curry)(R.CurriedType.Component,new Yt(e),t,r,!0)),i):(i=null,n=null,null)}))})),Kt=Te(((e,t,r)=>{let n=(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(r.get("outletState")) +return e?.outlets?.main})),i=null,s=null +return(0,o.createComputeRef)((()=>{let e=(0,o.valueForRef)(n),r=function(e,t){if(void 0===t)return null +let r=t.render +if(void 0===r)return null +let n=r.template +if(void 0===n)return null +ye(n)&&(n=n(r.owner)) +return{ref:e,name:r.name,template:n,controller:r.controller,model:r.model}}(n,e) +if(!function(e,t){if(null===e)return null===t +if(null===t)return!1 +return e.template===t.template&&e.controller===t.controller}(r,i))if(i=r,null!==r){let a=(0,v.dict)(),l=(0,o.childRefFromParts)(n,["render","model"]),u=(0,o.valueForRef)(l) +a.model=(0,o.createComputeRef)((()=>(i===r&&(u=(0,o.valueForRef)(l)),u))) +let c=(0,y.createCapturedArgs)(a,y.EMPTY_POSITIONAL) +s=(0,y.curry)(R.CurriedType.Component,new ht(r),e?.render?.owner??t,c,!0)}else s=null +return s}))})) +function Jt(e){return{object:`component:${e}`}}function Xt(e,t,r){let n=function(e,t){let r=`component:${e}` +return t.factoryFor(r)||null}(t,e) +if((0,u.isFactory)(n)&&n.class){let e=(0,p.getComponentTemplate)(n.class) +if(void 0!==e)return{component:n,layout:e}}let i=function(e,t,r){if(w.DEPRECATIONS.DEPRECATE_COMPONENT_TEMPLATE_RESOLVING.isRemoved)return null +let n=`template:components/${e}`,i=t.lookup(n,r)||null +return i&&(0,w.deprecateUntil)(`Components with separately resolved templates are deprecated. Migrate to either co-located js/ts + hbs files or to gjs/gts. Tried to lookup '${n}'.`,w.DEPRECATIONS.DEPRECATE_COMPONENT_TEMPLATE_RESOLVING),i}(t,e,r) +return null===n&&null===i?null:{component:n,layout:i}}const Zt={action:Se,mut:jt,readonly:It,unbound:Ft,"-hash":y.hash,"-each-in":yt,"-normalize-class":Mt,"-resolve":Nt,"-track-array":Dt,"-mount":Qt,"-outlet":Kt,"-in-el-null":xt},er={...Zt,array:y.array,concat:y.concat,fn:y.fn,get:y.get,hash:y.hash,"unique-id":Lt} +er["-disallow-dynamic-resolution"]=Pt +const tr={action:qt},rr={...tr,on:y.on} +new WeakSet +class nr{constructor(){this.componentDefinitionCache=new Map}lookupPartial(){return null}lookupHelper(e,t){let r=er[e] +if(void 0!==r)return r +let n=t.factoryFor(`helper:${e}`) +if(void 0===n)return null +let i=n.class +return void 0===i?null:"function"==typeof i&&!0===i[Je]?((0,p.setInternalHelperManager)(et,n),n):i}lookupBuiltInHelper(e){return Zt[e]??null}lookupModifier(e,t){let r=rr[e] +if(void 0!==r)return r +let n=t.factoryFor(`modifier:${e}`) +return void 0===n?null:n.class||null}lookupBuiltInModifier(e){return tr[e]??null}lookupComponent(e,t){let r=Xt(t,e) +if(null===r)return null +let n,i=null +n=null===r.component?i=r.layout(t):r.component +let o=this.componentDefinitionCache.get(n) +if(void 0!==o)return o +null===i&&null!==r.layout&&(i=r.layout(t)) +let s=(0,m._instrumentStart)("render.getComponentDefinition",Jt,e),a=null +if(null===r.component)a={state:(0,y.templateOnlyComponent)(void 0,e),manager:y.TEMPLATE_ONLY_COMPONENT_MANAGER,template:i} +else{let e=r.component,t=e.class,n=(0,p.getInternalComponentManager)(t) +a={state:Ge(n)?e:t,manager:n,template:i}}return s(),this.componentDefinitionCache.set(n,a),a}}const ir="-top-level" +class or{static extend(e){return class extends or{static create(t){return t?super.create(Object.assign({},e,t)):super.create(e)}}}static reopenClass(e){Object.assign(this,e)}static create(e){let{environment:t,application:r,template:n}=e,i=(0,u.getOwner)(e),o=n(i) +return new or(t,i,o,r)}constructor(e,t,r,n){this._environment=e,this.owner=t,this.template=r,this.namespace=n +let i=(0,s.createTag)(),a={outlets:{main:void 0},render:{owner:t,into:void 0,outlet:"main",name:ir,controller:void 0,model:void 0,template:r}},l=this.ref=(0,o.createComputeRef)((()=>((0,s.consumeTag)(i),a)),(e=>{(0,s.dirtyTag)(i),a.outlets.main=e})) +this.state={ref:l,name:ir,template:r,controller:void 0,model:void 0}}appendTo(e){let t +t=this._environment.hasDOM&&"string"==typeof e?document.querySelector(e):e +let r=this.owner.lookup("renderer:-dom");(0,E.schedule)("render",r,"appendOutletView",this,t)}rerender(){}setOutletState(e){(0,o.updateRef)(this.ref,e)}destroy(){}}e.OutletView=or +class sr{constructor(e,t){this.view=e,this.outletState=t}child(){return new sr(this.view,this.outletState)}get(e){return this.outletState}set(e,t){return this.outletState=t,t}}const ar=()=>{} +class lr{constructor(e,t,r,n,i,o,s,a,l){this.root=e,this.runtime=t,this.id=e instanceof or?(0,c.guidFor)(e):(0,d.getViewId)(e),this.result=void 0,this.destroyed=!1,this.render=()=>{let e=(0,v.unwrapTemplate)(i).asLayout(),u=(0,y.renderMain)(t,r,n,o,l(t.env,{element:s,nextSibling:null}),e,a),c=this.result=u.sync() +this.render=()=>c.rerender({alwaysRevalidate:!1})}}isFor(e){return this.root===e}destroy(){let{result:e,runtime:{env:t}}=this +this.destroyed=!0,this.runtime=void 0,this.root=null,this.result=void 0,this.render=void 0,void 0!==e&&(0,y.inTransaction)(t,(()=>(0,O.destroy)(e)))}}const ur=[] +function cr(e){let t=ur.indexOf(e) +ur.splice(t,1)}let pr=null +let dr=0 +E._backburner.on("begin",(function(){for(let e of ur)e._scheduleRevalidate()})),E._backburner.on("end",(function(){for(let e of ur)if(!e._isValid()){if(dr>T.ENV._RERENDER_LOOP_LIMIT)throw dr=0,e.destroy(),new Error("infinite rendering invalidation detected") +return dr++,E._backburner.join(null,ar)}dr=0,function(){if(null!==pr){let e=pr.resolve +pr=null,E._backburner.join(null,e)}}()})) +class hr{static create(e){let{_viewRegistry:t}=e,r=(0,u.getOwner)(e),n=r.lookup("service:-document"),i=r.lookup("-environment:main"),o=r.lookup(k.privatize`template:-root`),s=r.lookup("service:-dom-builder") +return new this(r,n,i,o,t,s)}constructor(e,r,n,i,o,s=y.clientBuilder){this._inRenderTransaction=!1,this._lastRevision=-1,this._destroyed=!1,this._owner=e,this._rootTemplate=i(e),this._viewRegistry=o||e.lookup("-view-registry:main"),this._roots=[],this._removedRoots=[],this._builder=s,this._isInteractive=n.isInteractive +let a=this._runtimeResolver=new nr,l=(0,S.artifacts)() +this._context=(0,t.programCompilationContext)(l,a,(e=>new S.RuntimeOpImpl(e))) +let u=new St(e,n.isInteractive) +this._runtime=(0,y.runtimeContext)({appendOperations:n.hasDOM?new y.DOMTreeConstruction(r):new A.NodeDOMTreeConstruction(r),updateOperations:new y.DOMChanges(r)},u,l,a)}get debugRenderTree(){let{debugRenderTree:e}=this._runtime.env +return e}appendOutletView(e,t){let r=new ht(e.state) +this._appendDefinition(e,(0,y.curry)(R.CurriedType.Component,r,e.owner,null,!0),t)}appendTo(e,t){let r=new gt(e) +this._appendDefinition(e,(0,y.curry)(R.CurriedType.Component,r,this._owner,null,!0),t)}_appendDefinition(e,t,r){let n=(0,o.createConstRef)(t,"this"),i=new sr(null,o.UNDEFINED_REFERENCE),s=new lr(e,this._runtime,this._context,this._owner,this._rootTemplate,n,r,i,this._builder) +this._renderRoot(s)}rerender(){this._scheduleRevalidate()}register(e){let t=(0,d.getViewId)(e) +this._viewRegistry[t]=e}unregister(e){delete this._viewRegistry[(0,d.getViewId)(e)]}remove(e){e._transitionTo("destroying"),this.cleanupRootFor(e),this._isInteractive&&e.trigger("didDestroyElement")}cleanupRootFor(e){if(this._destroyed)return +let t=this._roots,r=this._roots.length +for(;r--;){let n=t[r] +n.isFor(e)&&(n.destroy(),t.splice(r,1))}}destroy(){this._destroyed||(this._destroyed=!0,this._clearAllRoots())}getElement(e){if(this._isInteractive)return(0,d.getViewElement)(e) +throw new Error("Accessing `this.element` is not allowed in non-interactive environments (such as FastBoot).")}getBounds(e){let t=e[Be] +return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}createElement(e){return this._runtime.env.getAppendOperations().createElement(e)}_renderRoot(e){let{_roots:t}=this +var r +t.push(e),1===t.length&&(r=this,ur.push(r)),this._renderRootsTransaction()}_renderRoots(){let e,{_roots:t,_runtime:r,_removedRoots:n}=this +do{e=t.length,(0,y.inTransaction)(r.env,(()=>{for(let r=0;r=e||i.render()}this._lastRevision=(0,s.valueForTag)(s.CURRENT_TAG)}))}while(t.length>e) +for(;n.length;){let e=n.pop(),r=t.indexOf(e) +t.splice(r,1)}0===this._roots.length&&cr(this)}_renderRootsTransaction(){if(this._inRenderTransaction)return +this._inRenderTransaction=!0 +let e=!1 +try{this._renderRoots(),e=!0}finally{e||(this._lastRevision=(0,s.valueForTag)(s.CURRENT_TAG)),this._inRenderTransaction=!1}}_clearAllRoots(){let e=this._roots +for(let t of e)t.destroy() +this._removedRoots.length=0,this._roots=[],e.length&&cr(this)}_scheduleRevalidate(){E._backburner.scheduleOnce("render",this,this._revalidate)}_isValid(){return this._destroyed||0===this._roots.length||(0,s.validateTag)(s.CURRENT_TAG,this._lastRevision)}_revalidate(){this._isValid()||this._renderRootsTransaction()}}e.Renderer=hr +let fr={} +var mr=(0,I.createTemplateFactory)({id:"2c6+lAmT",block:'[[[46,[28,[32,0],null,null],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/outlet.hbs",scope:()=>[Kt],isStrictMode:!0})})),e("@ember/-internals/meta/index",["exports","@ember/-internals/meta/lib/meta"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Meta",{enumerable:!0,get:function(){return t.Meta}}),Object.defineProperty(e,"UNDEFINED",{enumerable:!0,get:function(){return t.UNDEFINED}}),Object.defineProperty(e,"counters",{enumerable:!0,get:function(){return t.counters}}),Object.defineProperty(e,"meta",{enumerable:!0,get:function(){return t.meta}}),Object.defineProperty(e,"peekMeta",{enumerable:!0,get:function(){return t.peekMeta}}),Object.defineProperty(e,"setMeta",{enumerable:!0,get:function(){return t.setMeta}})})),e("@ember/-internals/meta/lib/meta",["exports","@ember/-internals/utils","@ember/debug","@glimmer/destroyable"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.meta=e.counters=e.UNDEFINED=e.Meta=void 0,e.peekMeta=d,e.setMeta=p +const i=Object.prototype +e.counters=void 0 +const o=e.UNDEFINED=(0,t.symbol)("undefined") +var s;(function(e){e[e.ADD=0]="ADD",e[e.ONCE=1]="ONCE",e[e.REMOVE=2]="REMOVE"})(s||(s={})) +let a=1 +class l{constructor(e){this._listenersVersion=1,this._inheritedEnd=-1,this._flattenedVersion=0,this._parent=void 0,this._descriptors=void 0,this._mixins=void 0,this._lazyChains=void 0,this._values=void 0,this._revisions=void 0,this._isInit=!1,this.source=e,this.proto=void 0===e.constructor?void 0:e.constructor.prototype,this._listeners=void 0}get parent(){let e=this._parent +if(void 0===e){let t=u(this.source) +this._parent=e=null===t||t===i?null:h(t)}return e}setInitializing(){this._isInit=!0}unsetInitializing(){this._isInit=!1}isInitializing(){return this._isInit}isPrototypeMeta(e){return this.proto===this.source&&this.source===e}_getOrCreateOwnMap(e){return this[e]||(this[e]=Object.create(null))}_getOrCreateOwnSet(e){return this[e]||(this[e]=new Set)}_findInheritedMap(e,t){let r=this +for(;null!==r;){let n=r[e] +if(void 0!==n){let e=n.get(t) +if(void 0!==e)return e}r=r.parent}}_hasInInheritedSet(e,t){let r=this +for(;null!==r;){let n=r[e] +if(void 0!==n&&n.has(t))return!0 +r=r.parent}return!1}valueFor(e){let t=this._values +return void 0!==t?t[e]:void 0}setValueFor(e,t){this._getOrCreateOwnMap("_values")[e]=t}revisionFor(e){let t=this._revisions +return void 0!==t?t[e]:void 0}setRevisionFor(e,t){this._getOrCreateOwnMap("_revisions")[e]=t}writableLazyChainsFor(e){let t=this._getOrCreateOwnMap("_lazyChains"),r=t[e] +return void 0===r&&(r=t[e]=[]),r}readableLazyChainsFor(e){let t=this._lazyChains +if(void 0!==t)return t[e]}addMixin(e){this._getOrCreateOwnSet("_mixins").add(e)}hasMixin(e){return this._hasInInheritedSet("_mixins",e)}forEachMixins(e){let t,r=this +for(;null!==r;){let n=r._mixins +void 0!==n&&(t=void 0===t?new Set:t,n.forEach((r=>{t.has(r)||(t.add(r),e(r))}))),r=r.parent}}writeDescriptors(e,t){(this._descriptors||(this._descriptors=new Map)).set(e,t)}peekDescriptors(e){let t=this._findInheritedMap("_descriptors",e) +return t===o?void 0:t}removeDescriptors(e){this.writeDescriptors(e,o)}forEachDescriptors(e){let t,r=this +for(;null!==r;){let n=r._descriptors +void 0!==n&&(t=void 0===t?new Set:t,n.forEach(((r,n)=>{t.has(n)||(t.add(n),r!==o&&e(n,r))}))),r=r.parent}}addToListeners(e,t,r,n,i){this.pushListener(e,t,r,n?s.ONCE:s.ADD,i)}removeFromListeners(e,t,r){this.pushListener(e,t,r,s.REMOVE)}pushListener(e,t,r,n,i=!1){let o=this.writableListeners(),a=f(o,e,t,r) +if(-1!==a&&a0&&(e.splice(0,this._inheritedEnd),this._inheritedEnd=0) +for(let r of t){-1===f(e,r.event,r.target,r.method)&&(e.unshift(r),this._inheritedEnd++)}}}this._flattenedVersion=a}return this._listeners}matchingListeners(e){let t,r=this.flattenedListeners() +if(void 0!==r)for(let n of r)n.event!==e||n.kind!==s.ADD&&n.kind!==s.ONCE||(void 0===t&&(t=[]),t.push(n.target,n.method,n.kind===s.ONCE)) +return t}observerEvents(){let e,t=this.flattenedListeners() +if(void 0!==t)for(let r of t)r.kind!==s.ADD&&r.kind!==s.ONCE||-1===r.event.indexOf(":change")||(void 0===e&&(e=[]),e.push(r)) +return e}}e.Meta=l +const u=Object.getPrototypeOf,c=new WeakMap +function p(e,t){c.set(e,t)}function d(e){let t=c.get(e) +if(void 0!==t)return t +let r=u(e) +for(;null!==r;){if(t=c.get(r),void 0!==t)return t.proto!==r&&(t.proto=r),t +r=u(r)}return null}const h=e.meta=function(e){let t=d(e) +if(null!==t&&t.source===e)return t +let r=new l(e) +return p(e,r),r} +function f(e,t,r,n){for(let i=e.length-1;i>=0;i--){let o=e[i] +if(o.event===t&&o.target===r&&o.method===n)return i}return-1}})),e("@ember/-internals/metal/index",["exports","@ember/-internals/meta","@ember/-internals/utils","@ember/debug","@glimmer/destroyable","@glimmer/validator","@ember/-internals/environment","@ember/runloop","@glimmer/manager","@ember/array/-internals","ember/version","@ember/-internals/owner"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.TrackedDescriptor=e.SYNC_OBSERVERS=e.PROXY_CONTENT=e.PROPERTY_DID_CHANGE=e.NAMESPACES_BY_ID=e.NAMESPACES=e.Libraries=e.DEBUG_INJECTION_FUNCTIONS=e.ComputedProperty=e.ComputedDescriptor=e.ASYNC_OBSERVERS=void 0,e._getPath=Ce,e._getProp=Ee,e._setProp=Re,e.activateObserver=w,e.addArrayObserver=function(e,t,r){return q(e,t,r,d)},e.addListener=d,e.addNamespace=function(e){Be.unprocessedNamespaces=!0,He.push(e)},e.addObserver=_,e.alias=function(e){return re(new Pe(e),Se)},e.arrayContentDidChange=U,e.arrayContentWillChange=B,e.autoComputed=function(...e){return re(new he(e),fe)},e.beginPropertyChanges=I,e.cached=void 0,e.changeProperties=L,e.computed=me,Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return o.createCache}}),e.defineDecorator=be,e.defineProperty=ge,e.defineValue=ye,e.deprecateProperty=function(e,t,r,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,set(e){Te(this,r,e)},get(){return we(this,r)}})},e.descriptorForDecorator=oe,e.descriptorForProperty=ie,e.eachProxyArrayDidChange=function(e,t,r,n){let i=Me.get(e) +void 0!==i&&i.arrayDidChange(e,t,r,n)},e.eachProxyArrayWillChange=function(e,t,r,n){let i=Me.get(e) +void 0!==i&&i.arrayWillChange(e,t,r,n)},e.endPropertyChanges=F,e.expandProperties=ue,e.findNamespace=function(e){Le||qe() +return $e[e]} +function d(e,r,n,i,o,s=!0){i||"function"!=typeof n||(i=n,n=null),(0,t.meta)(e).addToListeners(r,n,i,!0===o,s)}function h(e,r,n,i){let o,s +"object"==typeof n?(o=n,s=i):(o=null,s=n),(0,t.meta)(e).removeFromListeners(r,o,s)}function f(e,r,n,i,o){if(void 0===i){let n=void 0===o?(0,t.peekMeta)(e):o +i=null!==n?n.matchingListeners(r):void 0}if(void 0===i||0===i.length)return!1 +for(let t=i.length-3;t>=0;t-=3){let o=i[t],s=i[t+1],a=i[t+2] +if(!s)continue +a&&h(e,r,o,s),o||(o=e) +let l=typeof s +"string"!==l&&"symbol"!==l||(s=o[s]),s.apply(o,n)}return!0}e.findNamespaces=Ve,e.flushAsyncObservers=function(e=!0){let r=(0,o.valueForTag)(o.CURRENT_TAG) +if(R===r)return +R=r,v.forEach(((r,n)=>{let i=(0,t.peekMeta)(n) +r.forEach(((r,s)=>{if(!(0,o.validateTag)(r.tag,r.lastRevision)){let l=()=>{try{f(n,s,[n,r.path],void 0,i)}finally{r.tag=Q(n,r.path,(0,o.tagMetaFor)(n),(0,t.peekMeta)(n)),r.lastRevision=(0,o.valueForTag)(r.tag)}} +e?(0,a.schedule)("actions",l):l()}}))}))},e.get=we,e.getCachedValueFor=function(e,r){let n=(0,t.peekMeta)(e) +return n?n.valueFor(r):void 0},e.getProperties=function(e,t){let r,n={},i=1 +2===arguments.length&&Array.isArray(t)?(i=0,r=arguments[1]):r=Array.from(arguments) +for(;i0},e.hasUnknownProperty=Oe,e.inject=function(e,...t){let r,n +J(t)?r=t:"string"==typeof t[0]&&(n=t[0]) +let i=function(t){let r=(0,p.getOwner)(this)||this.container +return r.lookup(`${e}:${n||t}`)} +0 +let o=me({get:i,set(e,t){ge(this,e,null,t)}}) +return r?o(r[0],r[1],r[2]):o},e.isClassicDecorator=se,e.isComputed=function(e,t){return Boolean(ie(e,t))},Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return o.isConst}}),e.isElementDescriptor=J,e.isNamespaceSearchDisabled=function(){return Le},e.libraries=void 0,e.makeComputedDecorator=re,e.markObjectAsDirty=M,e.nativeDescDecorator=function(e){let t=function(){return e} +return ae(t),t},e.notifyPropertyChange=j,e.objectAt=$,e.on=function(...e){let t=e.pop(),n=e +return(0,r.setListeners)(t,n),t},e.processAllNamespaces=qe,e.processNamespace=ze,e.removeArrayObserver=function(e,t,r){return q(e,t,r,h)},e.removeListener=h,e.removeNamespace=function(e){let t=(0,r.getName)(e) +delete $e[t],He.splice(He.indexOf(e),1),t in s.context.lookup&&e===s.context.lookup[t]&&(s.context.lookup[t]=void 0)},e.removeObserver=function(e,r,n,i,o=b){let s=g(r),a=(0,t.peekMeta)(e) +null!==a&&(a.isPrototypeMeta(e)||a.isInitializing())||k(e,s,o) +h(e,s,n,i)},e.replace=function(e,t,r,n=H){i=e,null!=i&&"function"==typeof i.replace?e.replace(t,r,n):z(e,t,r,n) +var i},e.replaceInNativeArray=z,e.revalidateObservers=T +e.sendEvent=f,e.set=Te,e.setClassicDecorator=ae,e.setNamespaceSearchDisabled=function(e){Le=Boolean(e)},e.setProperties=function(e,t){if(null===t||"object"!=typeof t)return t +return L((()=>{let r=Object.keys(t) +for(let n of r)Te(e,n,t[n])})),t},e.setUnprocessedMixins=function(){Ue=!0},e.tagForObject=function(e){if((0,r.isObject)(e))return(0,o.tagFor)(e,A) +return o.CONSTANT_TAG},e.tagForProperty=x,e.tracked=De,e.trySet=function(e,t,r){return Te(e,t,r,!0)} +const m=":change" +function g(e){return e+m}const b=!s.ENV._DEFAULT_ASYNC_OBSERVERS,y=e.SYNC_OBSERVERS=new Map,v=e.ASYNC_OBSERVERS=new Map +function _(e,r,n,i,o=b){let s=g(r) +d(e,s,n,i,!1,o) +let a=(0,t.peekMeta)(e) +null!==a&&(a.isPrototypeMeta(e)||a.isInitializing())||w(e,s,o)}function O(e,t){let r=!0===t?y:v +return r.has(e)||(r.set(e,new Map),(0,i.registerDestructor)(e,(()=>function(e){y.size>0&&y.delete(e) +v.size>0&&v.delete(e)}(e)),!0)),r.get(e)}function w(e,r,n=!1){let i=O(e,n) +if(i.has(r))i.get(r).count++ +else{let n=r.substring(0,r.lastIndexOf(":")),s=Q(e,n,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)) +i.set(r,{count:1,path:n,tag:s,lastRevision:(0,o.valueForTag)(s),suspended:!1})}}let E=!1,C=[] +function k(e,t,r=!1){if(!0===E)return void C.push([e,t,r]) +let n=!0===r?y:v,i=n.get(e) +if(void 0!==i){let r=i.get(t) +r.count--,0===r.count&&(i.delete(t),0===i.size&&n.delete(e))}}function T(e){v.has(e)&&v.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)})),y.has(e)&&y.get(e).forEach((r=>{r.tag=Q(e,r.path,(0,o.tagMetaFor)(e),(0,t.peekMeta)(e)),r.lastRevision=(0,o.valueForTag)(r.tag)}))}let R=0 +function S(){y.forEach(((e,r)=>{let n=(0,t.peekMeta)(r) +e.forEach(((e,i)=>{if(!e.suspended&&!(0,o.validateTag)(e.tag,e.lastRevision))try{e.suspended=!0,f(r,i,[r,e.path],void 0,n)}finally{e.tag=Q(r,e.path,(0,o.tagMetaFor)(r),(0,t.peekMeta)(r)),e.lastRevision=(0,o.valueForTag)(e.tag),e.suspended=!1}}))}))}function P(e,t,r){let n=y.get(e) +if(!n)return +let i=n.get(g(t)) +i&&(i.suspended=r)}const A=(0,r.symbol)("SELF_TAG") +function x(e,t,r=!1,n){let i=(0,l.getCustomTagFor)(e) +if(void 0!==i)return i(e,t,r) +let s=(0,o.tagFor)(e,t,n) +return s}function M(e,t){(0,o.dirtyTagFor)(e,t),(0,o.dirtyTagFor)(e,A)}const N=e.PROPERTY_DID_CHANGE=Symbol("PROPERTY_DID_CHANGE") +let D=0 +function j(e,r,n,i){let o=void 0===n?(0,t.peekMeta)(e):n +null!==o&&(o.isInitializing()||o.isPrototypeMeta(e))||(M(e,r),D<=0&&S(),N in e&&(4===arguments.length?e[N](r,i):e[N](r)))}function I(){D++,E=!0}function F(){D--,D<=0&&(S(),function(){E=!1 +for(let[e,t,r]of C)k(e,t,r) +C=[]}())}function L(e){I() +try{e()}finally{F()}}function B(e,t,r,n){return void 0===t?(t=0,r=n=-1):(void 0===r&&(r=-1),void 0===n&&(n=-1)),f(e,"@array:before",[e,t,r,n]),e}function U(e,r,n,i,o=!0){void 0===r?(r=0,n=i=-1):(void 0===n&&(n=-1),void 0===i&&(i=-1)) +let s=(0,t.peekMeta)(e) +if(o&&((i<0||n<0||i-n!=0)&&j(e,"length",s),j(e,"[]",s)),f(e,"@array:change",[e,r,n,i]),null!==s){let t=-1===n?0:n,o=e.length-((-1===i?0:i)-t),a=r<0?o+r:r +if(void 0!==s.revisionFor("firstObject")&&0===a&&j(e,"firstObject",s),void 0!==s.revisionFor("lastObject")){o-10&&this._property(...e)}setup(e,t,r,n){if(super.setup(e,t,r,n),!1===this._hasConfig){let{get:e,set:t}=r +void 0!==e&&(this._getter=e),void 0!==t&&(this._setter=function(r,n){let i=t.call(this,n) +return void 0!==e&&void 0===i?e.call(this):i})}}_property(...e){let t=[] +function r(e){t.push(e)}for(let n of e)ue(n,r) +this._dependentKeys=t}get(e,r){let n,i=(0,t.meta)(e),s=(0,o.tagMetaFor)(e),a=(0,o.tagFor)(e,r,s),l=i.revisionFor(r) +if(void 0!==l&&(0,o.validateTag)(a,l))n=i.valueFor(r) +else{let{_getter:t,_dependentKeys:l}=this;(0,o.untrack)((()=>{n=t.call(e,r)})),void 0!==l&&(0,o.updateTag)(a,Y(e,l,s,i)),i.setValueFor(r,n),i.setRevisionFor(r,(0,o.valueForTag)(a)),W(i,r,n)}return(0,o.consumeTag)(a),Array.isArray(n)&&(0,o.consumeTag)((0,o.tagFor)(n,"[]")),n}set(e,r,n){this._readOnly&&this._throwReadOnlyError(e,r) +let i,s=(0,t.meta)(e) +s.isInitializing()&&void 0!==this._dependentKeys&&this._dependentKeys.length>0&&"function"==typeof e[N]&&e.isComponent&&_(e,r,(()=>{e[N](r)}),void 0,!0) +try{I(),i=this._set(e,r,n,s),W(s,r,i) +let t=(0,o.tagMetaFor)(e),a=(0,o.tagFor)(e,r,t),{_dependentKeys:l}=this +void 0!==l&&(0,o.updateTag)(a,Y(e,l,t,s)),s.setRevisionFor(r,(0,o.valueForTag)(a))}finally{F()}return i}_throwReadOnlyError(e,t){throw new Error(`Cannot set read-only property "${t}" on object: ${(0,n.inspect)(e)}`)}_set(e,t,r,n){let i,o=void 0!==n.revisionFor(t),s=n.valueFor(t),{_setter:a}=this +P(e,t,!0) +try{i=a.call(e,t,r,s)}finally{P(e,t,!1)}return o&&s===i||(n.setValueFor(t,i),j(e,t,n,r)),i}teardown(e,t,r){void 0!==r.revisionFor(t)&&(r.setRevisionFor(t,void 0),r.setValueFor(t,void 0)),super.teardown(e,t,r)}}e.ComputedProperty=de +class he extends de{get(e,r){let n,i=(0,t.meta)(e),s=(0,o.tagMetaFor)(e),a=(0,o.tagFor)(e,r,s),l=i.revisionFor(r) +if(void 0!==l&&(0,o.validateTag)(a,l))n=i.valueFor(r) +else{let{_getter:t}=this,s=(0,o.track)((()=>{n=t.call(e,r)}));(0,o.updateTag)(a,s),i.setValueFor(r,n),i.setRevisionFor(r,(0,o.valueForTag)(a)),W(i,r,n)}return(0,o.consumeTag)(a),Array.isArray(n)&&(0,o.consumeTag)((0,o.tagFor)(n,"[]",s)),n}}class fe extends Function{readOnly(){let e=oe(this) +return e._readOnly=!0,this}meta(e){let t=oe(this) +return 0===arguments.length?t._meta||{}:(t._meta=e,this)}get _getter(){return oe(this)._getter}set enumerable(e){oe(this).enumerable=e}}function me(...e){if(J(e)){return re(new de([]),fe)(e[0],e[1],e[2])}return re(new de(e),fe)}function ge(e,r,n,i,o){let s=void 0===o?(0,t.meta)(e):o,a=ie(e,r,s),l=void 0!==a +l&&a.teardown(e,r,s),se(n)?be(e,r,n,s):null==n?ye(e,r,i,l,!0):Object.defineProperty(e,r,n),s.isPrototypeMeta(e)||T(e)}function be(e,t,r,n){let i +return i=r(e,t,void 0,n),Object.defineProperty(e,t,i),r}function ye(e,t,r,n,i=!0){return!0===n||!1===i?Object.defineProperty(e,t,{configurable:!0,enumerable:i,writable:!0,value:r}):e[t]=r,r}const ve=new r.Cache(1e3,(e=>e.indexOf("."))) +function _e(e){return"string"==typeof e&&-1!==ve.get(e)}e.PROXY_CONTENT=(0,r.symbol)("PROXY_CONTENT") +function Oe(e){return"object"==typeof e&&null!==e&&"function"==typeof e.unknownProperty}function we(e,t){return _e(t)?Ce(e,t):Ee(e,t)}function Ee(e,t){if(null==e)return +let r +return"object"==typeof e||"function"==typeof e?(r=e[t],void 0===r&&"object"==typeof e&&!(t in e)&&Oe(e)&&(r=e.unknownProperty(t)),(0,o.isTracking)()&&((0,o.consumeTag)((0,o.tagFor)(e,t)),(Array.isArray(r)||(0,u.isEmberArray)(r))&&(0,o.consumeTag)((0,o.tagFor)(r,"[]")))):r=e[t],r}function Ce(e,t,r){let n="string"==typeof t?t.split("."):t +for(let i of n){if(null==e||e.isDestroyed)return +if(r&&("__proto__"===i||"constructor"===i))return +e=Ee(e,i)}return e}Ee("foo","a"),Ee("foo",1),Ee({},"a"),Ee({},1),Ee({unknownProperty(){}},"a"),Ee({unknownProperty(){}},1),we({},"foo"),we({},"foo.bar") +let ke={} +function Te(e,t,r,n){return e.isDestroyed?r:_e(t)?function(e,t,r,n){let i=t.split("."),o=i.pop() +let s=Ce(e,i,!0) +if(null!=s)return Te(s,o,r) +if(!n)throw new Error(`Property set failed: object in path "${i.join(".")}" could not be found.`)}(e,t,r,n):Re(e,t,r)}function Re(e,t,n){let i,o=(0,r.lookupDescriptor)(e,t) +return null!==o&&te.has(o.set)?(e[t]=n,n):(i=e[t],void 0!==i||"object"!=typeof e||t in e||"function"!=typeof e.setUnknownProperty?(e[t]=n,i!==n&&j(e,t)):e.setUnknownProperty(t,n),n)}(0,r.setProxy)(ke),(0,o.track)((()=>Ee({},"a"))),(0,o.track)((()=>Ee({},1))),(0,o.track)((()=>Ee({a:[]},"a"))),(0,o.track)((()=>Ee({a:ke},"a"))) +class Se extends Function{readOnly(){return oe(this).readOnly(),this}oneWay(){return oe(this).oneWay(),this}meta(e){let t=oe(this) +if(0===arguments.length)return t._meta||{} +t._meta=e}}class Pe extends X{constructor(e){super(),this.altKey=e}setup(e,t,r,n){super.setup(e,t,r,n),G.add(this)}get(e,r){let n,i=(0,t.meta)(e),s=(0,o.tagMetaFor)(e),a=(0,o.tagFor)(e,r,s);(0,o.untrack)((()=>{n=we(e,this.altKey)})) +let l=i.revisionFor(r) +return void 0!==l&&(0,o.validateTag)(a,l)||((0,o.updateTag)(a,Q(e,this.altKey,s,i)),i.setRevisionFor(r,(0,o.valueForTag)(a)),W(i,r,n)),(0,o.consumeTag)(a),n}set(e,t,r){return Te(e,this.altKey,r)}readOnly(){this.set=Ae}oneWay(){this.set=xe}}function Ae(e,t){throw new Error(`Cannot set read-only property '${t}' on object: ${(0,n.inspect)(e)}`)}function xe(e,t,r){return ge(e,t,null),Te(e,t,r)}const Me=new WeakMap +class Ne{constructor(){this._registry=[],this._coreLibIndex=0}_getLibraryByName(e){let t=this._registry +for(let r of t)if(r.name===e)return r}register(e,t,r){let n=this._registry.length +this._getLibraryByName(e)||(r&&(n=this._coreLibIndex++),this._registry.splice(n,0,{name:e,version:t}))}registerCoreLibrary(e,t){this.register(e,t,!0)}deRegister(e){let t,r=this._getLibraryByName(e) +r&&(t=this._registry.indexOf(r),this._registry.splice(t,1))}}e.Libraries=Ne;(e.libraries=new Ne).registerCoreLibrary("Ember",c.default) +e.DEBUG_INJECTION_FUNCTIONS=void 0 +function De(...e){if(!J(e)){let t=e[0] +0 +let r=t?t.initializer:void 0,n=t?t.value:void 0,i=function(e,t,i,o,s){return je([e,t,{initializer:r||(()=>n)}])} +return ae(i),i}return je(e)}function je([e,r,n]){let{getter:i,setter:s}=(0,o.trackedData)(r,n?n.initializer:void 0) +function a(){let e=i(this) +return(Array.isArray(e)||(0,u.isEmberArray)(e))&&(0,o.consumeTag)((0,o.tagFor)(e,"[]")),e}function l(e){s(this,e),(0,o.dirtyTagFor)(this,A)}let c={enumerable:!0,configurable:!0,isTracked:!0,get:a,set:l} +return te.add(l),(0,t.meta)(e).writeDescriptors(r,new Ie(a,l)),c}class Ie{constructor(e,t){this._get=e,this._set=t,G.add(this)}get(e){return this._get.call(e)}set(e,t,r){this._set.call(e,r)}}e.TrackedDescriptor=Ie +e.cached=(...e)=>{const[t,r,n]=e +const i=new WeakMap,s=n.get +n.get=function(){return i.has(this)||i.set(this,(0,o.createCache)(s.bind(this))),(0,o.getValue)(i.get(this))}} +const Fe=Object.prototype.hasOwnProperty +let Le=!1 +const Be={_set:0,_unprocessedNamespaces:!1,get unprocessedNamespaces(){return this._unprocessedNamespaces},set unprocessedNamespaces(e){this._set++,this._unprocessedNamespaces=e}} +let Ue=!1 +const He=e.NAMESPACES=[],$e=e.NAMESPACES_BY_ID=Object.create(null) +function Ve(){if(!Be.unprocessedNamespaces)return +let e=s.context.lookup,t=Object.keys(e) +for(let i of t){if(!((n=i.charCodeAt(0))>=65&&n<=90))continue +let t=Ye(e,i) +t&&(0,r.setName)(t,i)}var n}function ze(e){Ge([e.toString()],e,new Set)}function qe(){let e=Be.unprocessedNamespaces +if(e&&(Ve(),Be.unprocessedNamespaces=!1),e||Ue){let e=He +for(let t of e)ze(t) +Ue=!1}}function Ge(e,t,n){let i=e.length,o=e.join(".") +$e[o]=t,(0,r.setName)(t,o) +for(let s in t){if(!Fe.call(t,s))continue +let o=t[s] +if(e[i]=s,o&&void 0===(0,r.getName)(o))(0,r.setName)(o,e.join(".")) +else if(o&&We(o)){if(n.has(o))continue +n.add(o),Ge(e,o,n)}}e.length=i}function We(e){return null!=e&&"object"==typeof e&&e.isNamespace}function Ye(e,t){try{let r=e[t] +return(null!==r&&"object"==typeof r||"function"==typeof r)&&r.isNamespace&&r}catch(r){}}})),e("@ember/-internals/owner/index",["exports","@glimmer/owner"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.getOwner=function(e){return(0,t.getOwner)(e)},e.isFactory=function(e){return null!=e&&"function"==typeof e.create},e.setOwner=function(e,r){(0,t.setOwner)(e,r)}})),e("@ember/-internals/routing/index",["exports","@ember/routing/-internals"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"RouterDSL",{enumerable:!0,get:function(){return t.DSL}}),Object.defineProperty(e,"controllerFor",{enumerable:!0,get:function(){return t.controllerFor}}),Object.defineProperty(e,"generateController",{enumerable:!0,get:function(){return t.generateController}}),Object.defineProperty(e,"generateControllerFactory",{enumerable:!0,get:function(){return t.generateControllerFactory}})})),e("@ember/-internals/runtime/index",["exports","@ember/-internals/runtime/lib/mixins/registry_proxy","@ember/-internals/runtime/lib/mixins/container_proxy","@ember/-internals/runtime/lib/mixins/comparable","@ember/-internals/runtime/lib/mixins/action_handler","@ember/-internals/runtime/lib/mixins/-proxy","@ember/enumerable/mutable","@ember/-internals/runtime/lib/mixins/target_action_support","@ember/-internals/runtime/lib/ext/rsvp"],(function(e,t,r,n,i,o,s,a,l){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ActionHandler",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"Comparable",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"ContainerProxyMixin",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"MutableEnumerable",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"RSVP",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"RegistryProxyMixin",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"TargetActionSupport",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"_ProxyMixin",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"_contentFor",{enumerable:!0,get:function(){return o.contentFor}}),Object.defineProperty(e,"onerrorDefault",{enumerable:!0,get:function(){return l.onerrorDefault}})})),e("@ember/-internals/runtime/lib/ext/rsvp",["exports","rsvp","@ember/runloop","@ember/-internals/error-handling","@ember/debug"],(function(e,t,r,n,i){"use strict" +function o(e){let t=function(e){if(!e)return +let t=e +if(t.errorThrown)return function(e){let t=e.errorThrown +"string"==typeof t&&(t=new Error(t)) +return Object.defineProperty(t,"__reason_with_error_thrown__",{value:e,enumerable:!1}),t}(t) +let r=e +if("UnrecognizedURLError"===r.name)return +if("TransitionAborted"===e.name)return +return e}(e) +if(t){let e=(0,n.getDispatchOverride)() +if(!e)throw t +e(t)}}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.onerrorDefault=o,t.configure("async",((e,t)=>{r._backburner.schedule("actions",null,e,t)})),t.configure("after",(e=>{r._backburner.schedule(r._rsvpErrorQueue,null,e)})),t.on("error",o) +e.default=t})),e("@ember/-internals/runtime/lib/mixins/-proxy",["exports","@ember/-internals/meta","@ember/object/mixin","@ember/-internals/metal","@ember/-internals/utils","@ember/debug","@glimmer/manager","@glimmer/validator"],(function(e,t,r,n,i,o,s,a){"use strict" +function l(e){let t=(0,n.get)(e,"content") +return(0,a.updateTag)((0,n.tagForObject)(e),(0,n.tagForObject)(t)),t}function u(e,t,r){let o=(0,a.tagMetaFor)(e),s=(0,a.tagFor)(e,t,o) +if(t in e)return s +{let u=[s,(0,a.tagFor)(e,"content",o)],c=l(e) +return(0,i.isObject)(c)&&u.push((0,n.tagForProperty)(c,t,r)),(0,a.combine)(u)}}Object.defineProperty(e,"__esModule",{value:!0}),e.contentFor=l,e.default=void 0 +const c=r.default.create({content:null,init(){this._super(...arguments),(0,i.setProxy)(this),(0,n.tagForObject)(this),(0,s.setCustomTagFor)(this,u)},willDestroy(){this.set("content",null),this._super(...arguments)},isTruthy:(0,n.computed)("content",(function(){return Boolean((0,n.get)(this,"content"))})),unknownProperty(e){let t=l(this) +return t?(0,n.get)(t,e):void 0},setUnknownProperty(e,r){let i=(0,t.meta)(this) +if(i.isInitializing()||i.isPrototypeMeta(this))return(0,n.defineProperty)(this,e,null,r),r +let o=l(this) +return(0,n.set)(o,e,r)}}) +e.default=c})),e("@ember/-internals/runtime/lib/mixins/action_handler",["exports","@ember/object/mixin","@ember/-internals/metal","@ember/debug"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const i=t.default.create({mergedProperties:["actions"],send(e,...t){if(this.actions&&this.actions[e]){if(!(!0===this.actions[e].apply(this,t)))return}let n=(0,r.get)(this,"target") +n&&n.send(...arguments)}}) +e.default=i})),e("@ember/-internals/runtime/lib/mixins/comparable",["exports","@ember/object/mixin"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const r=t.default.create({compare:null}) +e.default=r})),e("@ember/-internals/runtime/lib/mixins/container_proxy",["exports","@ember/runloop","@ember/object/mixin"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const n=r.default.create({__container__:null,ownerInjection(){return this.__container__.ownerInjection()},lookup(e,t){return this.__container__.lookup(e,t)},destroy(){let e=this.__container__ +e&&(0,t.join)((()=>{e.destroy(),(0,t.schedule)("destroy",e,"finalizeDestroy")})),this._super()},factoryFor(e){return this.__container__.factoryFor(e)}}) +e.default=n})),e("@ember/-internals/runtime/lib/mixins/registry_proxy",["exports","@ember/debug","@ember/object/mixin"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const n=r.default.create({__registry__:null,resolveRegistration(e){return this.__registry__.resolve(e)},register:i("register"),unregister:i("unregister"),hasRegistration:i("has"),registeredOption:i("getOption"),registerOptions:i("options"),registeredOptions:i("getOptions"),registerOptionsForType:i("optionsForType"),registeredOptionsForType:i("getOptionsForType")}) +function i(e){return function(...t){return this.__registry__[e](...t)}}e.default=n})),e("@ember/-internals/runtime/lib/mixins/target_action_support",["exports","@ember/-internals/environment","@ember/-internals/metal","@ember/object/mixin","@ember/debug"],(function(e,t,r,n,i){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const o=n.default.create({target:null,action:null,actionContext:null,actionContextObject:(0,r.computed)("actionContext",(function(){let e=(0,r.get)(this,"actionContext") +if("string"==typeof e){let n=(0,r.get)(this,e) +return void 0===n&&(n=(0,r.get)(t.context.lookup,e)),n}return e})),triggerAction(e={}){let{action:n,target:i,actionContext:o}=e +n=n||(0,r.get)(this,"action"),i=i||function(e){let n=(0,r.get)(e,"target") +if(n){if("string"==typeof n){let i=(0,r.get)(e,n) +return void 0===i&&(i=(0,r.get)(t.context.lookup,n)),i}return n}if(e._target)return e._target +return null}(this),void 0===o&&(o=(0,r.get)(this,"actionContextObject")||this) +let s=Array.isArray(o)?o:[o] +if(i&&n){let e +if(e=null!=(a=i)&&"object"==typeof a&&"function"==typeof a.send?i.send(n,...s):i[n](...s),!1!==e)return!0}var a +return!1}}) +e.default=o})),e("@ember/-internals/string/index",["exports","@ember/-internals/utils"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.classify=function(e){return a.get(e)},e.dasherize=function(e){return n.get(e)} +const r=/[ _]/g,n=new t.Cache(1e3,(e=>{return(t=e,u.get(t)).replace(r,"-") +var t})),i=/^(-|_)+(.)?/,o=/(.)(-|_|\.|\s)+(.)?/g,s=/(^|\/|\.)([a-z])/g,a=new t.Cache(1e3,(e=>{let t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/") +for(let s=0;se.toUpperCase()))})),l=/([a-z\d])([A-Z])/g,u=new t.Cache(1e3,(e=>e.replace(l,"$1_$2").toLowerCase()))})),e("@ember/-internals/utility-types/index",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.Opaque=void 0 +e.Opaque=class{}})),e("@ember/-internals/utils/index",["exports","@ember/debug"],(function(e,t){"use strict" +function r(e){let t=Object.create(null) +t[e]=1 +for(let r in t)if(r===e)return r +return e}function n(e){return null!==e&&("object"==typeof e||"function"==typeof e)}Object.defineProperty(e,"__esModule",{value:!0}),e.ROOT=e.GUID_KEY=e.Cache=void 0,e.canInvoke=function(e,t){return null!=e&&"function"==typeof e[t]},e.checkHasSuper=void 0,e.dictionary=function(e){let t=Object.create(e) +return t._dict=null,delete t._dict,t},e.enumerableSymbol=function(e){let t=u+Math.floor(Math.random()*Date.now()).toString(),n=r(`__${e}${t}__`) +0 +return n},e.generateGuid=function(e,t=s){let r=t+o().toString() +n(e)&&a.set(e,r) +return r},e.getDebugName=void 0,e.getName=function(e){return C.get(e)},e.guidFor=function(e){let t +if(n(e))t=a.get(e),void 0===t&&(t=`${s}${o()}`,a.set(e,t)) +else if(t=l.get(e),void 0===t){let r=typeof e +t="string"===r?`st${o()}`:"number"===r?`nu${o()}`:"symbol"===r?`sy${o()}`:`(${e})`,l.set(e,t)}return t},e.intern=r,e.isInternalSymbol=function(e){return-1!==c.indexOf(e)},e.isObject=n,e.isProxy=function(e){if(n(e))return R.has(e) +return!1},e.lookupDescriptor=E,e.observerListenerMetaFor=function(e){return v.get(e)},e.setListeners=function(e,t){_(e).listeners=t},e.setName=function(e,t){n(e)&&C.set(e,t)},e.setObservers=function(e,t){_(e).observers=t},e.setProxy=function(e){n(e)&&R.add(e)},e.teardownMandatorySetter=e.symbol=e.setupMandatorySetter=e.setWithMandatorySetter=void 0,e.toString=function e(t){if("string"==typeof t)return t +if(null===t)return"null" +if(void 0===t)return"undefined" +if(Array.isArray(t)){let r="" +for(let n=0;n0&&(r+=","),T(t[n])||(r+=e(t[n])) +return r}if("function"==typeof t.toString)return t.toString() +return k.call(t)},e.uuid=o,e.wrap=function(e,t){if(!b(e))return e +if(!O.has(t)&&b(t))return w(e,w(t,g)) +return w(e,t)} +let i=0 +function o(){return++i}const s="ember",a=new WeakMap,l=new Map,u=e.GUID_KEY=r(`__ember${Date.now()}`) +const c=[] +e.symbol=Symbol +let p +e.getDebugName=p +const d=/\.(_super|call\(this|apply\(this)/,h=Function.prototype.toString,f=e.checkHasSuper=h.call((function(){return this})).indexOf("return this")>-1?function(e){return d.test(h.call(e))}:function(){return!0},m=new WeakMap,g=e.ROOT=Object.freeze((function(){})) +function b(e){let t=m.get(e) +return void 0===t&&(t=f(e),m.set(e,t)),t}m.set(g,!1) +class y{constructor(){this.listeners=void 0,this.observers=void 0}}const v=new WeakMap +function _(e){let t=v.get(e) +return void 0===t&&(t=new y,v.set(e,t)),t}const O=new WeakSet +function w(e,t){function r(){let r=this._super +this._super=t +let n=e.apply(this,arguments) +return this._super=r,n}O.add(r) +let n=v.get(e) +return void 0!==n&&v.set(r,n),r}function E(e,t){let r=e +do{let e=Object.getOwnPropertyDescriptor(r,t) +if(void 0!==e)return e +r=Object.getPrototypeOf(r)}while(null!==r) +return null}const C=new WeakMap +const k=Object.prototype.toString +function T(e){return null==e}const R=new WeakSet +e.Cache=class{constructor(e,t,r=new Map){this.limit=e,this.func=t,this.store=r,this.size=0,this.misses=0,this.hits=0}get(e){return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,this.set(e,this.func(e)))}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}} +e.setupMandatorySetter=void 0,e.teardownMandatorySetter=void 0,e.setWithMandatorySetter=void 0})),e("@ember/-internals/views/index",["exports","@ember/-internals/views/lib/system/utils","@ember/-internals/views/lib/system/event_dispatcher","@ember/-internals/views/lib/component_lookup","@ember/-internals/views/lib/views/core_view","@ember/-internals/views/lib/mixins/class_names_support","@ember/-internals/views/lib/mixins/child_views_support","@ember/-internals/views/lib/mixins/view_state_support","@ember/-internals/views/lib/mixins/view_support","@ember/-internals/views/lib/mixins/action_support","@ember/-internals/views/lib/compat/attrs","@ember/-internals/views/lib/system/action_manager"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"ActionManager",{enumerable:!0,get:function(){return p.default}}),Object.defineProperty(e,"ActionSupport",{enumerable:!0,get:function(){return u.default}}),Object.defineProperty(e,"ChildViewsSupport",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"ClassNamesSupport",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"ComponentLookup",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"CoreView",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"EventDispatcher",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"MUTABLE_CELL",{enumerable:!0,get:function(){return c.MUTABLE_CELL}}),Object.defineProperty(e,"ViewMixin",{enumerable:!0,get:function(){return l.default}}),Object.defineProperty(e,"ViewStateSupport",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"addChildView",{enumerable:!0,get:function(){return t.addChildView}}),Object.defineProperty(e,"clearElementView",{enumerable:!0,get:function(){return t.clearElementView}}),Object.defineProperty(e,"clearViewElement",{enumerable:!0,get:function(){return t.clearViewElement}}),Object.defineProperty(e,"constructStyleDeprecationMessage",{enumerable:!0,get:function(){return t.constructStyleDeprecationMessage}}),Object.defineProperty(e,"getChildViews",{enumerable:!0,get:function(){return t.getChildViews}}),Object.defineProperty(e,"getElementView",{enumerable:!0,get:function(){return t.getElementView}}),Object.defineProperty(e,"getRootViews",{enumerable:!0,get:function(){return t.getRootViews}}),Object.defineProperty(e,"getViewBoundingClientRect",{enumerable:!0,get:function(){return t.getViewBoundingClientRect}}),Object.defineProperty(e,"getViewBounds",{enumerable:!0,get:function(){return t.getViewBounds}}),Object.defineProperty(e,"getViewClientRects",{enumerable:!0,get:function(){return t.getViewClientRects}}),Object.defineProperty(e,"getViewElement",{enumerable:!0,get:function(){return t.getViewElement}}),Object.defineProperty(e,"getViewId",{enumerable:!0,get:function(){return t.getViewId}}),Object.defineProperty(e,"isSimpleClick",{enumerable:!0,get:function(){return t.isSimpleClick}}),Object.defineProperty(e,"setElementView",{enumerable:!0,get:function(){return t.setElementView}}),Object.defineProperty(e,"setViewElement",{enumerable:!0,get:function(){return t.setViewElement}})})),e("@ember/-internals/views/lib/compat/attrs",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.MUTABLE_CELL=void 0 +e.MUTABLE_CELL=Symbol("MUTABLE_CELL")})),e("@ember/-internals/views/lib/compat/fallback-view-registry",["exports","@ember/-internals/utils"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=(0,t.dictionary)(null)})),e("@ember/-internals/views/lib/component_lookup",["exports","@ember/object"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=t.default.extend({componentFor(e,t){let r=`component:${e}` +return t.factoryFor(r)},layoutFor(e,t,r){let n=`template:components/${e}` +return t.lookup(n,r)}})})),e("@ember/-internals/views/lib/mixins/action_support",["exports","@ember/-internals/metal","@ember/object/mixin","@ember/debug"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const i=r.default.create({send(e,...r){let n=this.actions&&this.actions[e] +if(n){if(!(!0===n.apply(this,r)))return}let i=(0,t.get)(this,"target") +i&&i.send(...arguments)}}) +e.default=i})),e("@ember/-internals/views/lib/mixins/child_views_support",["exports","@ember/-internals/metal","@ember/object/mixin","@ember/-internals/views/lib/system/utils"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const i=r.default.create({childViews:(0,t.nativeDescDecorator)({configurable:!1,enumerable:!1,get(){return(0,n.getChildViews)(this)}}),appendChild(e){(0,n.addChildView)(this,e)}}) +e.default=i})),e("@ember/-internals/views/lib/mixins/class_names_support",["exports","@ember/-internals/metal","@ember/object/mixin","@ember/debug"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const i=Object.freeze([]),o=r.default.create({concatenatedProperties:["classNames","classNameBindings"],init(){this._super(...arguments)},classNames:i,classNameBindings:i}) +e.default=o})) +e("@ember/-internals/views/lib/mixins/view_state_support",["exports","@ember/object/mixin"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const r=t.default.create({_transitionTo(e){let t=this._currentState,r=this._currentState=this._states[e] +this._state=e,t&&t.exit&&t.exit(this),r.enter&&r.enter(this)}}) +e.default=r})),e("@ember/-internals/views/lib/mixins/view_support",["exports","@ember/-internals/utils","@ember/-internals/metal","@ember/object/mixin","@ember/debug","@ember/-internals/browser-environment","@ember/-internals/views/lib/system/utils"],(function(e,t,r,n,i,o,s){"use strict" +function a(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const l=n.default.create({concatenatedProperties:["attributeBindings"],nearestOfType(e){let t=this.parentView,r=e instanceof n.default?t=>e.detect(t):t=>e.detect(t.constructor) +for(;t;){if(r(t))return t +t=t.parentView}},nearestWithProperty(e){let t=this.parentView +for(;t;){if(e in t)return t +t=t.parentView}},rerender(){return this._currentState.rerender(this)},element:(0,r.nativeDescDecorator)({configurable:!1,enumerable:!1,get(){return this.renderer.getElement(this)}}),appendTo(e){let t +return t=o.hasDOM&&"string"==typeof e?document.querySelector(e):e,this.renderer.appendTo(this,t),this},append(){return this.appendTo(document.body)},elementId:null,willInsertElement:a,didInsertElement:a,willClearRender:a,destroy(){this._super(...arguments),this._currentState.destroy(this)},willDestroyElement:a,didDestroyElement:a,parentViewDidChange:a,tagName:null,init(){this._super(...arguments),this.elementId||""===this.tagName||(this.elementId=(0,t.guidFor)(this))},handleEvent(e,t){return this._currentState.handleEvent(this,e,t)}}) +e.default=l})),e("@ember/-internals/views/lib/system/action_manager",["exports"],(function(e){"use strict" +function t(){}Object.defineProperty(e,"__esModule",{value:!0}),e.default=t,t.registeredActions={}})),e("@ember/-internals/views/lib/system/event_dispatcher",["exports","@ember/-internals/owner","@ember/debug","@ember/-internals/metal","@ember/object","@ember/-internals/views","@ember/-internals/views/lib/system/action_manager"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const a="ember-application" +class l extends i.default{constructor(){super(...arguments),this.events={touchstart:"touchStart",touchmove:"touchMove",touchend:"touchEnd",touchcancel:"touchCancel",keydown:"keyDown",keyup:"keyUp",keypress:"keyPress",mousedown:"mouseDown",mouseup:"mouseUp",contextmenu:"contextMenu",click:"click",dblclick:"doubleClick",focusin:"focusIn",focusout:"focusOut",submit:"submit",input:"input",change:"change",dragstart:"dragStart",drag:"drag",dragenter:"dragEnter",dragleave:"dragLeave",dragover:"dragOver",drop:"drop",dragend:"dragEnd"},this.rootElement="body",this._eventHandlers=Object.create(null),this._didSetup=!1,this.finalEventNameMapping=null,this._sanitizedRootElement=null,this.lazyEvents=new Map,this._reverseEventNameMapping=null}setup(e,t){let r=this.finalEventNameMapping={...(0,n.get)(this,"events"),...e} +this._reverseEventNameMapping=Object.keys(r).reduce(((e,t)=>{let n=r[t] +return n?{...e,[n]:t}:e}),{}) +let i=this.lazyEvents +null!=t&&(0,n.set)(this,"rootElement",t) +let o=(0,n.get)(this,"rootElement"),s="string"!=typeof o?o:document.querySelector(o) +s.classList.add(a),this._sanitizedRootElement=s +for(let n in r)Object.prototype.hasOwnProperty.call(r,n)&&i.set(n,r[n]??null) +this._didSetup=!0}setupHandlerForBrowserEvent(e){this.setupHandler(this._sanitizedRootElement,e,this.finalEventNameMapping[e]??null)}setupHandlerForEmberEvent(e){let t=this._reverseEventNameMapping?.[e] +t&&this.setupHandler(this._sanitizedRootElement,t,e)}setupHandler(e,t,r){if(null===r||!this.lazyEvents.has(t))return +let n=(e,t)=>{let n=(0,o.getElementView)(e),i=!0 +return n&&(i=n.handleEvent(r,t)),i},i=(e,t)=>{let n,i=e.getAttribute("data-ember-action") +if(""===i){n=[] +for(let t of e.attributes){if(0===t.name.indexOf("data-ember-action-")){let e=s.default.registeredActions[t.value] +n.push(e)}}}else if(i){let e=s.default.registeredActions[i] +e&&(n=[e])}if(!n)return +let o=!0 +for(let s=0;s{let t=e.target +do{if((0,o.getElementView)(t)){if(!1===n(t,e)){e.preventDefault(),e.stopPropagation() +break}if(!0===e.cancelBubble)break}else if("function"==typeof t.hasAttribute&&t.hasAttribute("data-ember-action")&&!1===i(t,e))break +t=t.parentNode}while(t instanceof Element)} +e.addEventListener(t,a),this.lazyEvents.delete(t)}destroy(){if(!1===this._didSetup)return +let e=this._sanitizedRootElement +if(e){for(let t in this._eventHandlers)e.removeEventListener(t,this._eventHandlers[t]) +return e.classList.remove(a),this._super(...arguments)}}toString(){return"(EventDispatcher)"}}e.default=l})),e("@ember/-internals/views/lib/system/utils",["exports","@ember/-internals/owner","@ember/-internals/utils","@ember/debug"],(function(e,t,r,n){"use strict" +function i(e){return""!==e.tagName&&e.elementId?e.elementId:(0,r.guidFor)(e)}Object.defineProperty(e,"__esModule",{value:!0}),e.addChildView=function(e,t){let r=a.get(e) +void 0===r&&(r=l(e)) +r.add(i(t))},e.clearElementView=function(e){o.delete(e)},e.clearViewElement=function(e){s.delete(e)},e.collectChildViews=u,e.constructStyleDeprecationMessage=function(e){return'Binding style attributes may introduce cross-site scripting vulnerabilities; please ensure that values being bound are properly escaped. For more information, including how to disable this warning, see https://deprecations.emberjs.com/v1.x/#toc_binding-style-attributes. Style affected: "'+e+'"'},e.contains=function(e,t){if(void 0!==e.contains)return e.contains(t) +let r=t.parentNode +for(;r&&(r=r.parentNode);)if(r===e)return!0 +return!1},e.elMatches=void 0,e.getChildViews=function(e){let r=(0,t.getOwner)(e) +let n=r.lookup("-view-registry:main") +return u(e,n)},e.getElementView=function(e){return o.get(e)||null},e.getRootViews=function(e){let t=e.lookup("-view-registry:main"),r=[] +return Object.keys(t).forEach((e=>{let n=t[e] +null===n.parentView&&r.push(n)})),r},e.getViewBoundingClientRect=function(e){return p(e).getBoundingClientRect()},e.getViewBounds=c,e.getViewClientRects=function(e){return p(e).getClientRects()},e.getViewElement=function(e){return s.get(e)||null},e.getViewId=i,e.getViewRange=p,e.initChildViews=l,e.isSimpleClick=function(e){if(!(e instanceof MouseEvent))return!1 +let t=e.shiftKey||e.metaKey||e.altKey||e.ctrlKey,r=e.which>1 +return!t&&!r},e.matches=function(e,t){return d.call(e,t)},e.setElementView=function(e,t){o.set(e,t)},e.setViewElement=function(e,t){s.set(e,t)} +const o=new WeakMap,s=new WeakMap +const a=new WeakMap +function l(e){let t=new Set +return a.set(e,t),t}function u(e,t){let r=[],n=a.get(e) +return void 0!==n&&n.forEach((e=>{let n=t[e] +!n||n.isDestroying||n.isDestroyed||r.push(n)})),r}function c(e){return e.renderer.getBounds(e)}function p(e){let t=c(e),r=document.createRange() +return r.setStartBefore(t.firstNode),r.setEndAfter(t.lastNode),r}const d=e.elMatches="undefined"!=typeof Element?Element.prototype.matches:void 0})),e("@ember/-internals/views/lib/views/core_view",["exports","@ember/-internals/metal","@ember/-internals/runtime","@ember/object/evented","@ember/object/-internals","@ember/-internals/views/lib/views/states"],(function(e,t,r,n,i,o){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +var s=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +class a extends(i.FrameworkObject.extend(n.default,r.ActionHandler)){constructor(){super(...arguments),this.isView=!0}init(e){super.init(e),this._superTrigger=this.trigger,this.trigger=this._trigger,this._superHas=this.has,this.has=this._has,this.parentView??=null,this._state="preRender",this._currentState=this._states.preRender}instrumentDetails(e){return e.object=this.toString(),e.containerKey=this._debugContainerKey,e.view=this,e}_trigger(e,...t){this._superTrigger(e,...t) +let r=this[e] +if("function"==typeof r)return r.apply(this,t)}_has(e){return"function"==typeof this[e]||this._superHas(e)}}a.isViewFactory=!0,s([(0,t.inject)("renderer","-dom")],a.prototype,"renderer",void 0),a.prototype._states=o.default +e.default=a})),e("@ember/-internals/views/lib/views/states",["exports","@ember/-internals/utils","@ember/debug","@ember/instrumentation","@ember/runloop"],(function(e,t,r,n,i){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const o=Object.freeze({appendChild(){throw new Error("You can't use appendChild outside of the rendering process")},handleEvent:()=>!0,rerender(){},destroy(){}}),s=Object.freeze({...o}),a=Object.freeze({...o,rerender(e){e.renderer.rerender()},destroy(e){e.renderer.remove(e)},handleEvent:(e,t,r)=>!e.has(t)||(0,n.flaggedInstrument)(`interaction.${t}`,{event:r,view:e},(()=>(0,i.join)(e,e.trigger,t,r)))}),l=Object.freeze({...a,enter(e){e.renderer.register(e)}}),u=Object.freeze({...o,appendChild(){throw new Error("You can't call appendChild on a view being destroyed")},rerender(){throw new Error("You can't call rerender on a view being destroyed")}}),c=Object.freeze({preRender:s,inDOM:l,hasElement:a,destroying:u}) +e.default=c})),e("@ember/application/index",["exports","@ember/owner","@ember/-internals/utils","@ember/-internals/environment","@ember/-internals/browser-environment","@ember/debug","@ember/runloop","@ember/-internals/metal","@ember/application/lib/lazy_load","@ember/-internals/runtime","@ember/-internals/views","@ember/routing/route","@ember/routing/router","@ember/routing/hash-location","@ember/routing/history-location","@ember/routing/none-location","@ember/routing/-internals","@ember/application/instance","@ember/engine","@ember/-internals/container","@ember/-internals/glimmer","@ember/routing/router-service"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f,m,g,b,y,v,_,O){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"_loaded",{enumerable:!0,get:function(){return l._loaded}}),e.getOwner=e.default=void 0,Object.defineProperty(e,"onLoad",{enumerable:!0,get:function(){return l.onLoad}}),Object.defineProperty(e,"runLoadHooks",{enumerable:!0,get:function(){return l.runLoadHooks}}),e.setOwner=void 0 +e.getOwner=t.getOwner,e.setOwner=t.setOwner +class w extends y.default{constructor(){super(...arguments),this._bootPromise=null,this._bootResolver=null}static buildRegistry(e){let t=super.buildRegistry(e) +return function(e){e.register("router:main",d.default),e.register("-view-registry:main",{create:()=>(0,r.dictionary)(null)}),e.register("route:basic",p.default),e.register("event_dispatcher:main",c.EventDispatcher),e.register("location:hash",h.default),e.register("location:history",f.default),e.register("location:none",m.default),e.register(v.privatize`-bucket-cache:main`,{create:()=>new g.BucketCache}),e.register("service:router",O.default)}(t),(0,_.setupApplicationRegistry)(t),t}init(e){super.init(e),this.rootElement??="body",this._document??=null,this.eventDispatcher??=null,this.customEvents??=null,this.autoboot??=!0,this._document??=i.hasDOM?window.document:null,this._globalsMode??=!0,this._readinessDeferrals=1,this._booted=!1,this._applicationInstances=new Set,this.autoboot=this._globalsMode=Boolean(this.autoboot),this._globalsMode&&this._prepareForGlobalsMode(),this.autoboot&&this.waitForDOMReady()}buildInstance(e={}){return b.default.create({...e,base:this,application:this})}_watchInstance(e){this._applicationInstances.add(e)}_unwatchInstance(e){return this._applicationInstances.delete(e)}_prepareForGlobalsMode(){this.Router=(this.Router||d.default).extend(),this._buildDeprecatedInstance()}_buildDeprecatedInstance(){let e=this.buildInstance() +this.__deprecatedInstance__=e,this.__container__=e.__container__}waitForDOMReady(){const e=this._document +if(null===e||"loading"!==e.readyState)(0,s.schedule)("actions",this,this.domReady) +else{let t=()=>{e.removeEventListener("DOMContentLoaded",t),(0,s.run)(this,this.domReady)} +e.addEventListener("DOMContentLoaded",t)}}domReady(){this.isDestroying||this.isDestroyed||this._bootSync()}deferReadiness(){this._readinessDeferrals++}advanceReadiness(){this._readinessDeferrals--,0===this._readinessDeferrals&&(0,s.once)(this,this.didBecomeReady)}boot(){if(this._bootPromise)return this._bootPromise +try{this._bootSync()}catch(e){}return this._bootPromise}_bootSync(){if(this._booted||this.isDestroying||this.isDestroyed)return +let e=this._bootResolver=u.RSVP.defer() +this._bootPromise=e.promise +try{this.runInitializers(),(0,l.runLoadHooks)("application",this),this.advanceReadiness()}catch(t){throw e.reject(t),t}}reset(){let e=this.__deprecatedInstance__ +this._readinessDeferrals=1,this._bootPromise=null,this._bootResolver=null,this._booted=!1,(0,s.join)(this,(function(){(0,s.run)(e,"destroy"),this._buildDeprecatedInstance(),(0,s.schedule)("actions",this,"_bootSync")}))}didBecomeReady(){if(!this.isDestroying&&!this.isDestroyed)try{if(this.autoboot){let e +e=this._globalsMode?this.__deprecatedInstance__:this.buildInstance(),e._bootSync(),this.ready(),e.startRouting()}this._bootResolver.resolve(this),this._booted=!0}catch(e){throw this._bootResolver.reject(e),e}}ready(){return this}willDestroy(){super.willDestroy(),l._loaded.application===this&&(l._loaded.application=void 0),this._applicationInstances.size&&(this._applicationInstances.forEach((e=>e.destroy())),this._applicationInstances.clear())}visit(e,t){return this.boot().then((()=>{let r=this.buildInstance() +return r.boot(t).then((()=>r.visit(e))).catch((e=>{throw(0,s.run)(r,"destroy"),e}))}))}}e.default=w,w.initializer=(0,y.buildInitializerMethod)("initializers","initializer"),w.instanceInitializer=(0,y.buildInitializerMethod)("instanceInitializers","instance initializer")})),e("@ember/application/instance",["exports","@ember/object","@ember/-internals/browser-environment","@ember/engine/instance","@ember/-internals/glimmer","@ember/debug","@ember/routing/router","@ember/-internals/views"],(function(e,t,r,n,i,o,s,a){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class l extends n.default{constructor(){super(...arguments),this.rootElement=null}init(e){super.init(e),this.application._watchInstance(this),this.register("-application-instance:main",this,{instantiate:!1})}_bootSync(e){return this._booted||(e=new u(e),this.setupRegistry(e),e.rootElement?this.rootElement=e.rootElement:this.rootElement=this.application.rootElement,e.location&&(0,t.set)(this.router,"location",e.location),this.application.runInstanceInitializers(this),e.isInteractive&&this.setupEventDispatcher(),this._booted=!0),this}setupRegistry(e){this.constructor.setupRegistry(this.__registry__,e)}get router(){if(!this._router){let e=this.lookup("router:main") +this._router=e}return this._router}didCreateRootView(e){e.appendTo(this.rootElement)}startRouting(){this.router.startRouting()}setupRouter(){this.router.setupRouter()}handleURL(e){return this.setupRouter(),this.router.handleURL(e)}setupEventDispatcher(){let e=this.lookup("event_dispatcher:main"),r=(0,t.get)(this.application,"customEvents"),n=(0,t.get)(this,"customEvents"),i=Object.assign({},r,n) +return e.setup(i,this.rootElement),e}getURL(){return this.router.url}visit(e){this.setupRouter() +let r=this.__container__.lookup("-environment:main"),n=this.router,o=()=>r.options.shouldRender?(0,i.renderSettled)().then((()=>this)):this,s=e=>{if(e.error&&e.error instanceof Error)throw e.error +if("TransitionAborted"===e.name&&n._routerMicrolib.activeTransition)return n._routerMicrolib.activeTransition.then(o,s) +throw"TransitionAborted"===e.name?new Error(e.message):e},a=(0,t.get)(n,"location") +return a.setURL(e),n.handleURL(a.getURL()).then(o,s)}willDestroy(){super.willDestroy(),this.application._unwatchInstance(this)}static setupRegistry(e,t={}){let r=t instanceof u?t:new u(t) +e.register("-environment:main",r.toEnvironment(),{instantiate:!1}),e.register("service:-document",r.document,{instantiate:!1}),super.setupRegistry(e,r)}}class u{constructor(e={}){this.location=null,this.isInteractive=Boolean(r.hasDOM),this._renderMode=e._renderMode,void 0!==e.isBrowser?this.isBrowser=Boolean(e.isBrowser):this.isBrowser=Boolean(r.hasDOM),this.isBrowser||(this.isInteractive=!1,this.location="none"),void 0!==e.shouldRender?this.shouldRender=Boolean(e.shouldRender):this.shouldRender=!0,this.shouldRender||(this.isInteractive=!1),e.document?this.document=e.document:this.document="undefined"!=typeof document?document:null,e.rootElement&&(this.rootElement=e.rootElement),void 0!==e.location&&(this.location=e.location),void 0!==e.isInteractive&&(this.isInteractive=Boolean(e.isInteractive))}toEnvironment(){return{...r,hasDOM:this.isBrowser,isInteractive:this.isInteractive,_renderMode:this._renderMode,options:this}}}e.default=l})),e("@ember/application/lib/lazy_load",["exports","@ember/-internals/environment","@ember/-internals/browser-environment"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e._loaded=void 0,e.onLoad=function(e,t){let r=i[e];(n[e]??=[]).push(t),r&&t(r)},e.runLoadHooks=function(e,t){if(i[e]=t,r.window&&"function"==typeof CustomEvent){let n=new CustomEvent(e,{detail:t}) +r.window.dispatchEvent(n)}n[e]?.forEach((e=>e(t)))} +const n=t.ENV.EMBER_LOAD_HOOKS||{},i={} +e._loaded=i})),e("@ember/application/namespace",["exports","@ember/-internals/metal","@ember/object","@ember/-internals/utils","@ember/debug"],(function(e,t,r,n,i){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class o extends r.default{init(e){super.init(e),(0,t.addNamespace)(this)}toString(){let e=(0,r.get)(this,"name")||(0,r.get)(this,"modulePrefix") +if(e)return e;(0,t.findNamespaces)() +let i=(0,n.getName)(this) +return void 0===i&&(i=(0,n.guidFor)(this),(0,n.setName)(this,i)),i}nameClasses(){(0,t.processNamespace)(this)}destroy(){return(0,t.removeNamespace)(this),super.destroy()}}o.NAMESPACES=t.NAMESPACES,o.NAMESPACES_BY_ID=t.NAMESPACES_BY_ID,o.processAll=t.processAllNamespaces,o.byName=t.findNamespace,o.prototype.isNamespace=!0 +e.default=o})),e("@ember/array/-internals",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.isEmberArray=function(e){return t.has(e)},e.setEmberArray=function(e){t.add(e)} +const t=new WeakSet})),e("@ember/array/index",["exports","@ember/-internals/metal","@ember/object","@ember/object/mixin","@ember/debug","@ember/enumerable","@ember/enumerable/mutable","@ember/utils","@ember/-internals/environment","@ember/object/observable","@ember/array/-internals","@ember/array/lib/make-array"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.NativeArray=e.MutableArray=e.A=void 0,e.isArray=E,Object.defineProperty(e,"makeArray",{enumerable:!0,get:function(){return p.default}}),e.removeAt=O,e.uniqBy=f +const d=Object.freeze([]),h=e=>e +function f(e,t=h){let n=A(),i=new Set,o="function"==typeof t?t:e=>(0,r.get)(e,t) +return e.forEach((e=>{let t=o(e) +i.has(t)||(i.add(t),n.push(e))})),n}function m(...e){let t=2===e.length,[n,i]=e +return t?e=>i===(0,r.get)(e,n):e=>Boolean((0,r.get)(e,n))}function g(e,r,n){let i=e.length +for(let o=n;o!n(e,t,r)),0)}function _(e,t,r=0,n){let i=e.length +return r<0&&(r+=i),g(e,n&&t!=t?e=>e!=e:e=>e===t,r)}function O(e,r,n){return(0,t.replace)(e,r,n??1,d),e}function w(e,r,n){return(0,t.replace)(e,r,0,[n]),n}function E(e){if(!e||e.setInterval)return!1 +if(Array.isArray(e)||T.detect(e))return!0 +let t=(0,a.typeOf)(e) +if("array"===t)return!0 +let r=e.length +return"number"==typeof r&&r==r&&"object"===t}function C(e){let r=(0,t.computed)(e) +return r.enumerable=!1,r}function k(e){return this.map((t=>(0,r.get)(t,e)))}const T=n.default.create(o.default,{init(){this._super(...arguments),(0,c.setEmberArray)(this)},objectsAt(e){return e.map((e=>(0,t.objectAt)(this,e)))},"[]":C({get(){return this},set(e,t){return this.replace(0,this.length,t),this}}),firstObject:C((function(){return(0,t.objectAt)(this,0)})).readOnly(),lastObject:C((function(){return(0,t.objectAt)(this,this.length-1)})).readOnly(),slice(e=0,r){let n,i=A(),o=this.length +for(e<0&&(e=o+e),n=void 0===r||r>o?o:r<0?o+r:r;e=n)&&(r=n-1),r<0&&(r+=n) +for(let i=r;i>=0;i--)if((0,t.objectAt)(this,i)===e)return i +return-1},forEach(e,t=null){let r=this.length +for(let n=0;n(0,r.set)(n,e,t)))},map(e,t=null){let r=A() +return this.forEach(((n,i,o)=>r[i]=e.call(t,n,i,o))),r},mapBy:k,filter(e,t=null){let r=A() +return this.forEach(((n,i,o)=>{e.call(t,n,i,o)&&r.push(n)})),r},reject(e,t=null){return this.filter((function(){return!e.apply(t,arguments)}))},filterBy(){return this.filter(m(...arguments))},rejectBy(){return this.reject(m(...arguments))},find(e,t=null){return b(this,e,t)},findBy(){return b(this,m(...arguments))},every(e,t=null){return v(this,e,t)},isEvery(){return v(this,m(...arguments))},any(e,t=null){return y(this,e,t)},isAny(){return y(this,m(...arguments))},reduce(e,t){let r=t +return this.forEach((function(t,n){r=e(r,t,n,this)}),this),r},invoke(e,...t){let r=A() +return this.forEach((n=>r.push(n[e]?.(...t)))),r},toArray(){return this.map((e=>e))},compact(){return this.filter((e=>null!=e))},includes(e,t){return-1!==_(this,e,t,!0)},sortBy(){let e=arguments +return this.toArray().sort(((t,n)=>{for(let i=0;it!==e:e=>e==e +return this.filter(t)}}),R=e.MutableArray=n.default.create(T,s.default,{clear(){let e=this.length +return 0===e||this.replace(0,e,d),this},insertAt(e,t){return w(this,e,t),this},removeAt(e,t){return O(this,e,t)},pushObject(e){return w(this,this.length,e)},pushObjects(e){return this.replace(this.length,0,e),this},popObject(){let e=this.length +if(0===e)return null +let r=(0,t.objectAt)(this,e-1) +return this.removeAt(e-1,1),r},shiftObject(){if(0===this.length)return null +let e=(0,t.objectAt)(this,0) +return this.removeAt(0),e},unshiftObject(e){return w(this,0,e)},unshiftObjects(e){return this.replace(0,0,e),this},reverseObjects(){let e=this.length +if(0===e)return this +let t=this.toArray().reverse() +return this.replace(0,e,t),this},setObjects(e){if(0===e.length)return this.clear() +let t=this.length +return this.replace(0,t,e),this},removeObject(e){let r=this.length||0 +for(;--r>=0;){(0,t.objectAt)(this,r)===e&&this.removeAt(r)}return this},removeObjects(e){(0,t.beginPropertyChanges)() +for(let t=e.length-1;t>=0;t--)this.removeObject(e[t]) +return(0,t.endPropertyChanges)(),this},addObject(e){return this.includes(e)||this.pushObject(e),this},addObjects(e){return(0,t.beginPropertyChanges)(),e.forEach((e=>this.addObject(e))),(0,t.endPropertyChanges)(),this}}) +let S=e.NativeArray=n.default.create(R,u.default,{objectAt(e){return this[e]},replace(e,r,n=d){return(0,t.replaceInNativeArray)(this,e,r,n),this}}) +const P=["length"] +S.keys().forEach((e=>{Array.prototype[e]&&P.push(e)})),e.NativeArray=S=S.without(...P) +let A=e.A=void 0 +l.ENV.EXTEND_PROTOTYPES.Array?(S.apply(Array.prototype,!0),e.A=A=function(e){return e||[]}):e.A=A=function(e){return(0,c.isEmberArray)(e)?e:S.apply(e??[])} +e.default=T})),e("@ember/array/lib/make-array",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const{isArray:t}=Array +e.default=function(e){return null==e?[]:t(e)?e:[e]}})),e("@ember/array/mutable",["exports","@ember/array"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.MutableArray}})})),e("@ember/array/proxy",["exports","@ember/-internals/metal","@ember/object","@ember/-internals/utils","@ember/array","@ember/array/mutable","@ember/debug","@glimmer/manager","@glimmer/validator"],(function(e,t,r,n,i,o,s,a,l){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const u={willChange:"_arrangedContentArrayWillChange",didChange:"_arrangedContentArrayDidChange"} +function c(e,t){return"[]"===t?(e._revalidate(),e._arrTag):"length"===t?(e._revalidate(),e._lengthTag):(0,l.tagFor)(e,t)}class p extends r.default{constructor(){super(...arguments),this._objectsDirtyIndex=0,this._objects=null,this._lengthDirty=!0,this._length=0,this._arrangedContent=null,this._arrangedContentIsUpdating=!1,this._arrangedContentTag=null,this._arrangedContentRevision=null,this._lengthTag=null,this._arrTag=null}init(e){super.init(e),(0,a.setCustomTagFor)(this,c)}[t.PROPERTY_DID_CHANGE](){this._revalidate()}willDestroy(){this._removeArrangedContentArrayObserver()}objectAtContent(e){let n=(0,r.get)(this,"arrangedContent") +return(0,t.objectAt)(n,e)}replace(e,t,r){this.replaceContent(e,t,r)}replaceContent(e,n,i){let o=(0,r.get)(this,"content");(0,t.replace)(o,e,n,i)}objectAt(e){if(this._revalidate(),null===this._objects&&(this._objects=[]),-1!==this._objectsDirtyIndex&&e>=this._objectsDirtyIndex){let e=(0,r.get)(this,"arrangedContent") +if(e){let t=this._objects.length=(0,r.get)(e,"length") +for(let e=this._objectsDirtyIndex;es)&&(this._objectsDirtyIndex=s),this._lengthDirty=!0,(0,t.arrayContentDidChange)(this,n,i,o,!1)}_invalidate(){this._objectsDirtyIndex=0,this._lengthDirty=!0}_revalidate(){if(!0!==this._arrangedContentIsUpdating&&(null===this._arrangedContentTag||!(0,l.validateTag)(this._arrangedContentTag,this._arrangedContentRevision))){let e=this.get("arrangedContent") +null===this._arrangedContentTag?this._addArrangedContentArrayObserver(e):(this._arrangedContentIsUpdating=!0,this._updateArrangedContentArray(e),this._arrangedContentIsUpdating=!1) +let r=this._arrangedContentTag=(0,l.tagFor)(this,"arrangedContent") +this._arrangedContentRevision=(0,l.valueForTag)(this._arrangedContentTag),(0,n.isObject)(e)?(this._lengthTag=(0,l.combine)([r,(0,t.tagForProperty)(e,"length")]),this._arrTag=(0,l.combine)([r,(0,t.tagForProperty)(e,"[]")])):this._lengthTag=this._arrTag=r}}}p.reopen(o.default,{arrangedContent:(0,t.alias)("content")}) +e.default=p})),e("@ember/canary-features/index",["exports","@ember/-internals/environment"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.FEATURES=e.DEFAULT_FEATURES=void 0,e.isEnabled=function(e){let r=n[e] +return!0===r||!1===r?r:!!t.ENV.ENABLE_OPTIONAL_FEATURES} +const r=e.DEFAULT_FEATURES={},n=e.FEATURES=Object.assign(r,t.ENV.FEATURES)})),e("@ember/component/helper",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Helper}}),Object.defineProperty(e,"helper",{enumerable:!0,get:function(){return t.helper}})})),e("@ember/component/index",["exports","@glimmer/manager","@ember/-internals/glimmer"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"Input",{enumerable:!0,get:function(){return r.Input}}),Object.defineProperty(e,"Textarea",{enumerable:!0,get:function(){return r.Textarea}}),Object.defineProperty(e,"capabilities",{enumerable:!0,get:function(){return r.componentCapabilities}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return r.Component}}),Object.defineProperty(e,"getComponentTemplate",{enumerable:!0,get:function(){return t.getComponentTemplate}}),Object.defineProperty(e,"setComponentManager",{enumerable:!0,get:function(){return r.setComponentManager}}),Object.defineProperty(e,"setComponentTemplate",{enumerable:!0,get:function(){return t.setComponentTemplate}})})),e("@ember/component/template-only",["exports","@glimmer/runtime"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const r=t.templateOnlyComponent +e.default=r})),e("@ember/controller/index",["exports","@ember/-internals/owner","@ember/object","@ember/object/-internals","@ember/-internals/metal","@ember/object/mixin","@ember/-internals/runtime","@ember/-internals/utils"],(function(e,t,r,n,i,o,s,a){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ControllerMixin=void 0,e.inject=function(...e){return(0,i.inject)("controller",...e)} +const l=(0,a.symbol)("MODEL"),u=e.ControllerMixin=o.default.create(s.ActionHandler,{isController:!0,concatenatedProperties:["queryParams"],target:null,store:null,init(){this._super(...arguments) +let e=(0,t.getOwner)(this) +e&&(this.namespace=e.lookup("application:main"),this.target=e.lookup("router:main"))},model:(0,r.computed)({get(){return this[l]},set(e,t){return this[l]=t}}),queryParams:null,_qpDelegate:null,_qpChanged(e,t){let n=t.indexOf(".[]"),i=-1===n?t:t.slice(0,n);(0,e._qpDelegate)(i,(0,r.get)(e,i))}}) +class c extends(n.FrameworkObject.extend(u)){}e.default=c})),e("@ember/debug/container-debug-adapter",["exports","@ember/-internals/string","@ember/object","@ember/utils","@ember/-internals/owner","@ember/application/namespace"],(function(e,t,r,n,i,o){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class s extends r.default{constructor(e){super(e),this.resolver=(0,i.getOwner)(this).lookup("resolver-for-debugging:main")}canCatalogEntriesByType(e){return"model"!==e&&"template"!==e}catalogEntriesByType(e){let r=o.default.NAMESPACES,i=[],s=new RegExp(`${(0,t.classify)(e)}$`) +return r.forEach((e=>{for(let r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&s.test(r)){let o=e[r] +"class"===(0,n.typeOf)(o)&&i.push((0,t.dasherize)(r.replace(s,"")))}})),i}}e.default=s})),e("@ember/debug/data-adapter",["exports","@ember/-internals/owner","@ember/runloop","@ember/object","@ember/-internals/string","@ember/application/namespace","@ember/array","@glimmer/validator","@ember/debug"],(function(e,t,r,n,i,o,s,a,l){"use strict" +function u(e,t){if(Symbol.iterator in e)for(let r of e)t(r) +else(0,l.assert)("","function"==typeof e.forEach),e.forEach(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class c{getCacheForItem(e){let t=this.recordCaches.get(e) +if(!t){let r=!1 +t=(0,a.createCache)((()=>{r?this.updated.push(this.wrapRecord(e)):(this.added.push(this.wrapRecord(e)),r=!0)})),this.recordCaches.set(e,t)}return t}constructor(e,t,r,n,i,o){this.wrapRecord=i,this.release=o,this.recordCaches=new Map,this.added=[],this.updated=[],this.removed=[],this.recordArrayCache=(0,a.createCache)((()=>{let o=new Set;(0,a.consumeTag)((0,a.tagFor)(e,"[]")),u(e,(e=>{(0,a.getValue)(this.getCacheForItem(e)),o.add(e)})),(0,a.untrack)((()=>{this.recordCaches.forEach(((e,t)=>{o.has(t)||(this.removed.push(i(t)),this.recordCaches.delete(t))}))})),this.added.length>0&&(t(this.added),this.added=[]),this.updated.length>0&&(r(this.updated),this.updated=[]),this.removed.length>0&&(n(this.removed),this.removed=[])}))}revalidate(){(0,a.getValue)(this.recordArrayCache)}}class p{constructor(e,t,n){this.release=n +let i=!1 +this.cache=(0,a.createCache)((()=>{u(e,(()=>{})),(0,a.consumeTag)((0,a.tagFor)(e,"[]")),!0===i?(0,r.next)(t):i=!0})),this.release=n}revalidate(){(0,a.getValue)(this.cache)}}class d extends n.default{constructor(e){super(e),this.releaseMethods=(0,s.A)(),this.recordsWatchers=new Map,this.typeWatchers=new Map,this.flushWatchers=null,this.attributeLimit=3,this.acceptsModelName=!0,this.containerDebugAdapter=(0,t.getOwner)(this).lookup("container-debug-adapter:main")}getFilters(){return(0,s.A)()}watchModelTypes(e,t){let r,n=this.getModelTypes(),i=(0,s.A)() +r=n.map((e=>{let r=e.klass,n=this.wrapModelType(r,e.name) +return i.push(this.observeModelType(e.name,t)),n})),e(r) +let o=()=>{i.forEach((e=>e())),this.releaseMethods.removeObject(o)} +return this.releaseMethods.pushObject(o),o}_nameToClass(e){if("string"==typeof e){let r=(0,t.getOwner)(this).factoryFor(`model:${e}`) +e=r&&r.class}return e}watchRecords(e,t,r,n){let i=this._nameToClass(e),o=this.getRecords(i,e),{recordsWatchers:s}=this,a=s.get(o) +return a||(a=new c(o,t,r,n,(e=>this.wrapRecord(e)),(()=>{s.delete(o),this.updateFlushWatchers()})),s.set(o,a),this.updateFlushWatchers(),a.revalidate()),a.release}updateFlushWatchers(){null===this.flushWatchers?(this.typeWatchers.size>0||this.recordsWatchers.size>0)&&(this.flushWatchers=()=>{this.typeWatchers.forEach((e=>e.revalidate())),this.recordsWatchers.forEach((e=>e.revalidate()))},r._backburner.on("end",this.flushWatchers)):0===this.typeWatchers.size&&0===this.recordsWatchers.size&&(r._backburner.off("end",this.flushWatchers),this.flushWatchers=null)}willDestroy(){this._super(...arguments),this.typeWatchers.forEach((e=>e.release())),this.recordsWatchers.forEach((e=>e.release())),this.releaseMethods.forEach((e=>e())),this.flushWatchers&&r._backburner.off("end",this.flushWatchers)}detect(e){return!1}columnsForType(e){return(0,s.A)()}observeModelType(e,t){let r=this._nameToClass(e),n=this.getRecords(r,e),i=()=>{t([this.wrapModelType(r,e)])},{typeWatchers:o}=this,s=o.get(n) +return s||(s=new p(n,i,(()=>{o.delete(n),this.updateFlushWatchers()})),o.set(n,s),this.updateFlushWatchers(),s.revalidate()),s.release}wrapModelType(e,t){let r=this.getRecords(e,t) +return{name:t,count:(0,n.get)(r,"length"),columns:this.columnsForType(e),object:e}}getModelTypes(){let e=this.containerDebugAdapter +return(e.canCatalogEntriesByType("model")?e.catalogEntriesByType("model"):this._getObjectsOnNamespaces()).map((e=>({klass:this._nameToClass(e),name:e}))).filter((e=>this.detect(e.klass)))}_getObjectsOnNamespaces(){let e=o.default.NAMESPACES,t=[] +return e.forEach((e=>{for(let r in e){if(!Object.prototype.hasOwnProperty.call(e,r))continue +if(!this.detect(e[r]))continue +let n=(0,i.dasherize)(r) +t.push(n)}})),t}getRecords(e,t){return(0,s.A)()}wrapRecord(e){return{object:e,columnValues:this.getRecordColumnValues(e),searchKeywords:this.getRecordKeywords(e),filterValues:this.getRecordFilterValues(e),color:this.getRecordColor(e)}}getRecordColumnValues(e){return{}}getRecordKeywords(e){return(0,s.A)()}getRecordFilterValues(e){return{}}getRecordColor(e){return null}}e.default=d})),e("@ember/debug/index",["exports","@ember/-internals/browser-environment","@ember/debug/lib/deprecate","@ember/debug/lib/testing","@ember/debug/lib/warn","@ember/debug/lib/inspect","@ember/debug/lib/capture-render-tree"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.assert=e._warnIfUsingStrippedFeatureFlags=void 0,Object.defineProperty(e,"captureRenderTree",{enumerable:!0,get:function(){return s.default}}),e.info=e.getDebugFunction=e.deprecateFunc=e.deprecate=e.debugSeal=e.debugFreeze=e.debug=void 0,Object.defineProperty(e,"inspect",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"isTesting",{enumerable:!0,get:function(){return n.isTesting}}),Object.defineProperty(e,"registerDeprecationHandler",{enumerable:!0,get:function(){return r.registerHandler}}),Object.defineProperty(e,"registerWarnHandler",{enumerable:!0,get:function(){return i.registerHandler}}),e.setDebugFunction=e.runInDebug=void 0,Object.defineProperty(e,"setTesting",{enumerable:!0,get:function(){return n.setTesting}}),e.warn=void 0 +const a=()=>{} +e.assert=a,e.info=a,e.warn=a,e.debug=a,e.deprecate=a,e.debugSeal=a,e.debugFreeze=a,e.runInDebug=a,e.setDebugFunction=a,e.getDebugFunction=a +let l=function(){return arguments[arguments.length-1]} +e.deprecateFunc=l +e._warnIfUsingStrippedFeatureFlags=void 0})),e("@ember/debug/lib/capture-render-tree",["exports","@glimmer/util"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return(0,t.expect)(e.lookup("renderer:-dom"),"BUG: owner is missing renderer").debugRenderTree.capture()}})),e("@ember/debug/lib/deprecate",["exports","@ember/-internals/environment","@ember/debug/index","@ember/debug/lib/handlers"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.missingOptionsIdDeprecation=e.missingOptionsDeprecation=e.missingOptionDeprecation=e.default=void 0 +let i=()=>{} +e.registerHandler=i +e.missingOptionsDeprecation=void 0,e.missingOptionsIdDeprecation=void 0 +let o=()=>"" +e.missingOptionDeprecation=o +let s=()=>{} +e.default=s})),e("@ember/debug/lib/handlers",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.invoke=e.HANDLERS=void 0 +e.HANDLERS={},e.registerHandler=function(e,t){} +let t=()=>{} +e.invoke=t})),e("@ember/debug/lib/inspect",["exports","@ember/debug"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){if("number"==typeof e&&2===arguments.length)return this +return c(e,0)} +const{toString:r}=Object.prototype,{toString:n}=Function.prototype,{isArray:i}=Array,{keys:o}=Object,{stringify:s}=JSON,a=100,l=4,u=/^[\w$]+$/ +function c(e,t,u){let d=!1 +switch(typeof e){case"undefined":return"undefined" +case"object":if(null===e)return"null" +if(i(e)){d=!0 +break}if(e.toString===r||void 0===e.toString)break +return e.toString() +case"function":return e.toString===n?e.name?`[Function:${e.name}]`:"[Function]":e.toString() +case"string":return s(e) +default:return e.toString()}if(void 0===u)u=new WeakSet +else if(u.has(e))return"[Circular]" +return u.add(e),d?function(e,t,r){if(t>l)return"[Array]" +let n="[" +for(let i=0;i=a){n+=`... ${e.length-a} more items` +break}n+=c(e[i],t,r)}return n+=" ]",n}(e,t+1,u):function(e,t,r){if(t>l)return"[Object]" +let n="{",i=o(e) +for(let o=0;o=a){n+=`... ${i.length-a} more keys` +break}let s=i[o] +n+=`${p(String(s))}: ${c(e[s],t,r)}`}return n+=" }",n}(e,t+1,u)}function p(e){return u.test(e)?e:s(e)}})),e("@ember/debug/lib/testing",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.isTesting=function(){return t},e.setTesting=function(e){t=Boolean(e)} +let t=!1})),e("@ember/debug/lib/warn",["exports","@ember/debug/index","@ember/debug/lib/handlers"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.registerHandler=e.missingOptionsIdDeprecation=e.missingOptionsDeprecation=e.default=void 0 +let n=()=>{} +e.registerHandler=n +let i=()=>{} +e.missingOptionsDeprecation=void 0,e.missingOptionsIdDeprecation=void 0 +e.default=i})) +e("@ember/deprecated-features/index",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.ASSIGN=void 0 +e.ASSIGN=!0})),e("@ember/destroyable/index",["exports","@glimmer/destroyable"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"assertDestroyablesDestroyed",{enumerable:!0,get:function(){return t.assertDestroyablesDestroyed}}),Object.defineProperty(e,"associateDestroyableChild",{enumerable:!0,get:function(){return t.associateDestroyableChild}}),Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return t.destroy}}),Object.defineProperty(e,"enableDestroyableTracking",{enumerable:!0,get:function(){return t.enableDestroyableTracking}}),Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return t.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return t.isDestroying}}),e.registerDestructor=function(e,r){return(0,t.registerDestructor)(e,r)},e.unregisterDestructor=function(e,r){return(0,t.unregisterDestructor)(e,r)}})),e("@ember/engine/index",["exports","@ember/engine/lib/engine-parent","@ember/-internals/utils","@ember/controller","@ember/application/namespace","@ember/-internals/container","dag-map","@ember/debug","@ember/debug/container-debug-adapter","@ember/object","@ember/engine/instance","@ember/routing/-internals","@ember/-internals/views","@ember/-internals/glimmer","@ember/-internals/runtime"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h,f){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.buildInitializerMethod=b,e.default=void 0,Object.defineProperty(e,"getEngineParent",{enumerable:!0,get:function(){return t.getEngineParent}}),Object.defineProperty(e,"setEngineParent",{enumerable:!0,get:function(){return t.setEngineParent}}) +class m extends(i.default.extend(f.RegistryProxyMixin)){constructor(){super(...arguments),this._initializersRan=!1}static buildRegistry(e){let t=new o.Registry({resolver:g(e)}) +return t.set=u.set,t.register("application:main",e,{instantiate:!1}),function(e){e.optionsForType("component",{singleton:!1}),e.optionsForType("view",{singleton:!1}),e.register("controller:basic",n.default,{instantiate:!1}),e.register("service:-routing",p.RoutingService),e.register("resolver-for-debugging:main",e.resolver,{instantiate:!1}),e.register("container-debug-adapter:main",l.default),e.register("component-lookup:main",d.ComponentLookup)}(t),(0,h.setupEngineRegistry)(t),t}init(e){super.init(e),this.buildRegistry()}ensureInitializers(){this._initializersRan||(this.runInitializers(),this._initializersRan=!0)}buildInstance(e={}){return this.ensureInitializers(),c.default.create({...e,base:this})}buildRegistry(){return this.__registry__=this.constructor.buildRegistry(this)}initializer(e){this.constructor.initializer(e)}instanceInitializer(e){this.constructor.instanceInitializer(e)}runInitializers(){this._runInitializer("initializers",((e,t)=>{t.initialize(this)}))}runInstanceInitializers(e){this._runInitializer("instanceInitializers",((t,r)=>{r.initialize(e)}))}_runInitializer(e,t){let r,n=(0,u.get)(this.constructor,e),i=function(e){let t=[] +for(let r in e)t.push(r) +return t}(n),o=new s.default +for(let s of i)r=n[s],o.add(r.name,r,r.before,r.after) +o.topsort(t)}}function g(e){let t={namespace:e} +return e.Resolver.create(t)}function b(e,t){return function(t){let r=this.superclass +if(void 0!==r[e]&&r[e]===this[e]){let t={[e]:Object.create(this[e])} +this.reopenClass(t)}this[e][t.name]=t}}m.initializers=Object.create(null),m.instanceInitializers=Object.create(null),m.initializer=b("initializers","initializer"),m.instanceInitializer=b("instanceInitializers","instance initializer") +e.default=m})),e("@ember/engine/instance",["exports","@ember/object","@ember/-internals/runtime","@ember/debug","@ember/-internals/container","@ember/-internals/utils","@ember/engine/lib/engine-parent","@ember/-internals/owner","@ember/engine"],(function(e,t,r,n,i,o,s,a,l){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class u extends(t.default.extend(r.RegistryProxyMixin,r.ContainerProxyMixin)){constructor(){super(...arguments),this._booted=!1,this._bootPromise=null}static setupRegistry(e,t){}init(e){super.init(e),(0,o.guidFor)(this),this.base??=this.application +let t=this.__registry__=new i.Registry({fallback:this.base.__registry__}) +this.__container__=t.container({owner:this}),this._booted=!1}boot(e){return this._bootPromise||(this._bootPromise=new r.RSVP.Promise((t=>{t(this._bootSync(e))}))),this._bootPromise}_bootSync(e){return this._booted||(this.cloneParentDependencies(),this.setupRegistry(e),this.base.runInstanceInitializers(this),this._booted=!0),this}setupRegistry(e=this.__container__.lookup("-environment:main")){this.constructor.setupRegistry(this.__registry__,e)}unregister(e){this.__container__.reset(e),this.__registry__.unregister(e)}buildChildEngineInstance(e,t={}){let r=this.lookup(`engine:${e}`) +if(!r)throw new Error(`You attempted to mount the engine '${e}', but it is not registered with its parent.`) +let n=r.buildInstance(t) +return(0,s.setEngineParent)(n,this),n}cloneParentDependencies(){const e=(0,s.getEngineParent)(this);["route:basic","service:-routing"].forEach((t=>{let r=e.resolveRegistration(t) +this.register(t,r)})) +let t=e.lookup("-environment:main") +this.register("-environment:main",t,{instantiate:!1}) +let r=["router:main",i.privatize`-bucket-cache:main`,"-view-registry:main","renderer:-dom","service:-document"] +t.isInteractive&&r.push("event_dispatcher:main"),r.forEach((t=>{let r=e.lookup(t) +this.register(t,r,{instantiate:!1})}))}}e.default=u})),e("@ember/engine/lib/engine-parent",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.ENGINE_PARENT=void 0,e.getEngineParent=function(e){return e[t]},e.setEngineParent=function(e,r){e[t]=r} +const t=e.ENGINE_PARENT=Symbol("ENGINE_PARENT")})),e("@ember/enumerable/index",["exports","@ember/object/mixin"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const r=t.default.create() +e.default=r})),e("@ember/enumerable/mutable",["exports","@ember/enumerable","@ember/object/mixin"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const n=r.default.create(t.default) +e.default=n})),e("@ember/helper/index",["exports","@glimmer/manager","@glimmer/runtime","@ember/-internals/glimmer"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.uniqueId=e.setHelperManager=e.invokeHelper=e.hash=e.get=e.fn=e.concat=e.capabilities=e.array=void 0 +e.capabilities=t.helperCapabilities,e.setHelperManager=t.setHelperManager,e.invokeHelper=r.invokeHelper,e.hash=r.hash,e.array=r.array,e.concat=r.concat,e.get=r.get,e.fn=r.fn,e.uniqueId=n.uniqueId})),e("@ember/instrumentation/index",["exports","@ember/-internals/environment","@ember/debug"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e._instrumentStart=a,e.flaggedInstrument=function(e,t,r){return r()},e.instrument=function(e,t,r,i){let o,l,u +arguments.length<=3&&(c=t,"function"==typeof c)?(l=t,u=r):(o=t,l=r,u=i) +var c +if(0===n.length)return l.call(u) +let p=o||{},d=a(e,(()=>p)) +return d===s?l.call(u):function(e,t,r,n){try{return e.call(n)}catch(i){throw r.exception=i,i}finally{t()}}(l,d,p,u)},e.reset=function(){n.length=0,i={}},e.subscribe=function(e,t){let r=e.split("."),o=[] +for(let n of r)"*"===n?o.push("[^\\.]*"):o.push(n) +let s=o.join("\\.") +s=`${s}(\\..*)?` +let a={pattern:e,regex:new RegExp(`^${s}$`),object:t} +return n.push(a),i={},a},e.subscribers=void 0,e.unsubscribe=function(e){let t=0 +for(let r=0;r{let e="undefined"!=typeof window&&window.performance||{},t=e.now||e.mozNow||e.webkitNow||e.msNow||e.oNow +return t?t.bind(e):Date.now})() +function s(){}function a(e,r,a){if(0===n.length)return s +let l=i[e] +if(l||(l=function(e){let t=[] +for(let r of n)r.regex.test(e)&&t.push(r.object) +return i[e]=t,t}(e)),0===l.length)return s +let u,c=r(a),p=t.ENV.STRUCTURED_PROFILE +p&&(u=`${e}: ${c.object}`,console.time(u)) +let d=[],h=o() +for(let t of l)d.push(t.before(e,h,c)) +const f=l +return function(){let t=o() +for(let r=0;r{e=i.call(this)})) +return(0,n.updateTag)(r,o),(0,n.consumeTag)(o),e}),r} +function o(...e){if((0,t.isElementDescriptor)(e)){let[t,r,n]=e +return i(t,r,n)}{const r=e[0] +let n=function(e,t,n,o,s){return i(e,t,r)} +return(0,t.setClassicDecorator)(n),n}}(0,t.setClassicDecorator)(o)})),e("@ember/object/computed",["exports","@ember/-internals/metal","@ember/object/lib/computed/computed_macros","@ember/object/lib/computed/reduce_computed_macros"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"alias",{enumerable:!0,get:function(){return t.alias}}),Object.defineProperty(e,"and",{enumerable:!0,get:function(){return r.and}}),Object.defineProperty(e,"bool",{enumerable:!0,get:function(){return r.bool}}),Object.defineProperty(e,"collect",{enumerable:!0,get:function(){return n.collect}}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.ComputedProperty}}),Object.defineProperty(e,"deprecatingAlias",{enumerable:!0,get:function(){return r.deprecatingAlias}}),Object.defineProperty(e,"empty",{enumerable:!0,get:function(){return r.empty}}),Object.defineProperty(e,"equal",{enumerable:!0,get:function(){return r.equal}}),Object.defineProperty(e,"expandProperties",{enumerable:!0,get:function(){return t.expandProperties}}),Object.defineProperty(e,"filter",{enumerable:!0,get:function(){return n.filter}}),Object.defineProperty(e,"filterBy",{enumerable:!0,get:function(){return n.filterBy}}),Object.defineProperty(e,"gt",{enumerable:!0,get:function(){return r.gt}}),Object.defineProperty(e,"gte",{enumerable:!0,get:function(){return r.gte}}),Object.defineProperty(e,"intersect",{enumerable:!0,get:function(){return n.intersect}}),Object.defineProperty(e,"lt",{enumerable:!0,get:function(){return r.lt}}),Object.defineProperty(e,"lte",{enumerable:!0,get:function(){return r.lte}}),Object.defineProperty(e,"map",{enumerable:!0,get:function(){return n.map}}),Object.defineProperty(e,"mapBy",{enumerable:!0,get:function(){return n.mapBy}}),Object.defineProperty(e,"match",{enumerable:!0,get:function(){return r.match}}),Object.defineProperty(e,"max",{enumerable:!0,get:function(){return n.max}}),Object.defineProperty(e,"min",{enumerable:!0,get:function(){return n.min}}),Object.defineProperty(e,"none",{enumerable:!0,get:function(){return r.none}}),Object.defineProperty(e,"not",{enumerable:!0,get:function(){return r.not}}),Object.defineProperty(e,"notEmpty",{enumerable:!0,get:function(){return r.notEmpty}}),Object.defineProperty(e,"oneWay",{enumerable:!0,get:function(){return r.oneWay}}),Object.defineProperty(e,"or",{enumerable:!0,get:function(){return r.or}}),Object.defineProperty(e,"readOnly",{enumerable:!0,get:function(){return r.readOnly}}),Object.defineProperty(e,"reads",{enumerable:!0,get:function(){return r.oneWay}}),Object.defineProperty(e,"setDiff",{enumerable:!0,get:function(){return n.setDiff}}) +Object.defineProperty(e,"sort",{enumerable:!0,get:function(){return n.sort}}),Object.defineProperty(e,"sum",{enumerable:!0,get:function(){return n.sum}}),Object.defineProperty(e,"union",{enumerable:!0,get:function(){return n.union}}),Object.defineProperty(e,"uniq",{enumerable:!0,get:function(){return n.uniq}}),Object.defineProperty(e,"uniqBy",{enumerable:!0,get:function(){return n.uniqBy}})})),e("@ember/object/core",["exports","@ember/-internals/container","@ember/-internals/owner","@ember/-internals/utils","@ember/-internals/meta","@ember/-internals/metal","@ember/object/mixin","@ember/-internals/runtime","@ember/array","@ember/debug","@glimmer/destroyable","@glimmer/owner"],(function(e,t,r,n,i,o,s,a,l,u,c,p){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const d=s.default.prototype.reopen,h=new WeakSet,f=new WeakMap,m=new Set +function g(e){m.has(e)||e.destroy()}function b(e,t){let r=(0,i.meta)(e) +if(void 0!==t){let i=e.concatenatedProperties,s=e.mergedProperties,a=Object.keys(t) +for(let u of a){let a=t[u],c=(0,o.descriptorForProperty)(e,u,r),p=void 0!==c +if(!p){if(void 0!==i&&i.length>0&&i.includes(u)){let t=e[u] +a=t?(0,l.makeArray)(t).concat(a):(0,l.makeArray)(a)}if(void 0!==s&&s.length>0&&s.includes(u)){let t=e[u] +a=Object.assign({},t,a)}}p?c.set(e,u,a):"object"!=typeof(n=e)||null===n||"function"!=typeof n.setUnknownProperty||u in e?e[u]=a:e.setUnknownProperty(u,a)}}var n +e.init(t),r.unsetInitializing() +let s=r.observerEvents() +if(void 0!==s)for(let i=0;ir.willDestroy())),(0,i.meta)(t).setInitializing()}reopen(...e){return(0,s.applyMixin)(this,e),this}init(e){}get isDestroyed(){return(0,c.isDestroyed)(this)}set isDestroyed(e){}get isDestroying(){return(0,c.isDestroying)(this)}set isDestroying(e){}destroy(){m.add(this) +try{(0,c.destroy)(this)}finally{m.delete(this)}return this}willDestroy(){}toString(){let e="object"==typeof(r=this)&&null!==r&&"function"==typeof r.toStringExtension?`:${this.toStringExtension()}`:"" +var r +return`<${(0,t.getFactoryFor)(this)||"(unknown)"}:${(0,n.guidFor)(this)}${e}>`}static extend(...e){let t=class extends(this){} +return d.apply(t.PrototypeMixin,e),t}static create(...e){let n,i=e[0] +if(void 0!==i){n=new this((0,r.getOwner)(i)) +let e=(0,t.getFactoryFor)(i);(0,t.setFactoryFor)(n,e)}else n=new this +return e.length<=1?b(n,i):b(n,v.apply(this,e)),n}static reopen(...e){return this.willReopen(),d.apply(this.PrototypeMixin,e),this}static willReopen(){let e=this.prototype +h.has(e)&&(h.delete(e),f.has(this)&&f.set(this,s.default.create(this.PrototypeMixin)))}static reopenClass(...e){return(0,s.applyMixin)(this,e),this}static detect(e){if("function"!=typeof e)return!1 +for(;e;){if(e===this)return!0 +e=e.superclass}return!1}static detectInstance(e){return e instanceof this}static metaForProperty(e){let t=this.proto(),r=(0,o.descriptorForProperty)(t,e) +return r._meta||{}}static eachComputedProperty(e,t=this){this.proto() +let r={};(0,i.meta)(this.prototype).forEachDescriptors(((n,i)=>{if(i.enumerable){let o=i._meta||r +e.call(t,n,o)}}))}static get PrototypeMixin(){let e=f.get(this) +return void 0===e&&(e=s.default.create(),e.ownerConstructor=this,f.set(this,e)),e}static get superclass(){let e=Object.getPrototypeOf(this) +return e!==Function.prototype?e:void 0}static proto(){let e=this.prototype +if(!h.has(e)){h.add(e) +let t=this.superclass +t&&t.proto(),f.has(this)&&this.PrototypeMixin.apply(e)}return e}static toString(){return`<${(0,t.getFactoryFor)(this)||"(unknown)"}:constructor>`}}function v(...e){let t={} +for(let r of e){let e=Object.keys(r) +for(let n=0,i=e.length;nl.push(e))) +return(0,o.setObservers)(t,{paths:l,sync:s}),t},Object.defineProperty(e,"set",{enumerable:!0,get:function(){return n.set}}),Object.defineProperty(e,"setProperties",{enumerable:!0,get:function(){return n.setProperties}}),Object.defineProperty(e,"trySet",{enumerable:!0,get:function(){return n.trySet}}) +class l extends(s.default.extend(a.default)){get _debugContainerKey(){let e=(0,i.getFactoryFor)(this) +return void 0!==e&&e.fullName}}e.default=l +const u=new WeakMap +function c(e,t,r){var n +if(null!=(n=e)&&void 0!==n.constructor&&"function"==typeof n.constructor.proto&&e.constructor.proto(),!Object.prototype.hasOwnProperty.call(e,"actions")){let t=e.actions +e.actions=t?Object.assign({},t):{}}return e.actions[t]=r,{get(){let e=u.get(this) +void 0===e&&(e=new Map,u.set(this,e)) +let t=e.get(r) +return void 0===t&&(t=r.bind(this),e.set(r,t)),t}}}function p(...e){let t +if(!(0,n.isElementDescriptor)(e)){t=e[0] +let r=function(e,r,n,i,o){return c(e,r,t)} +return(0,n.setClassicDecorator)(r),r}let[r,i,o]=e +return t=o?.value,c(r,i,t)}(0,n.setClassicDecorator)(p)})),e("@ember/object/internals",["exports","@ember/object/-internals"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"cacheFor",{enumerable:!0,get:function(){return t.cacheFor}}),Object.defineProperty(e,"guidFor",{enumerable:!0,get:function(){return t.guidFor}})})),e("@ember/object/lib/computed/computed_macros",["exports","@ember/-internals/metal","@ember/object","@ember/debug","@ember/utils"],(function(e,t,r,n,i){"use strict" +function o(e,n){return(e,...i)=>{let o=[e,...i],s=function(e,r){let n=[] +function i(e){n.push(e)}for(let o of r)(0,t.expandProperties)(o,i) +return n}(0,o) +return(0,t.computed)(...s,(function(){let e=s.length-1 +for(let t=0;tn}))},e.gte=function(e,n){return(0,t.computed)(e,(function(){return(0,r.get)(this,e)>=n}))},e.lt=function(e,n){return(0,t.computed)(e,(function(){return(0,r.get)(this,e)e)),e.or=o(0,(e=>!e))})),e("@ember/object/lib/computed/reduce_computed_macros",["exports","@ember/debug","@ember/-internals/metal","@ember/object","@ember/utils","@ember/array"],(function(e,t,r,n,i,o){"use strict" +function s(e){return Array.isArray(e)||o.default.detect(e)}function a(e,t,r,i){return(0,n.computed)(`${e}.[]`,(function(){let i=(0,n.get)(this,e) +return null===i||"object"!=typeof i?r:i.reduce(t,r,this)})).readOnly()}function l(e,t,r){let i +return/@each/.test(e)?i=e.replace(/\.@each.*$/,""):(i=e,e+=".[]"),(0,n.computed)(e,...t,(function(){let e=(0,n.get)(this,i) +return s(e)?(0,o.A)(r.call(this,e)):(0,o.A)()})).readOnly()}function u(e,t,r){let i=e.map((e=>`${e}.[]`)) +return(0,n.computed)(...i,(function(){return(0,o.A)(t.call(this,e))})).readOnly()}function c(e,t,r){let n +"function"==typeof t?(r=t,n=[]):n=t +const i=r +return l(e,n,(function(e){return Array.isArray(e),e.map(i,this)}))}function p(e,t,r){let n +"function"==typeof t?(r=t,n=[]):n=t +const i=r +return l(e,n,(function(e){return Array.isArray(e),e.filter(i,this)}))}function d(e,...t){return u([e,...t],(function(e){let t=(0,o.A)(),r=new Set +return e.forEach((e=>{let i=(0,n.get)(this,e) +s(i)&&i.forEach((e=>{r.has(e)||(r.add(e),t.push(e))}))})),t}))}Object.defineProperty(e,"__esModule",{value:!0}),e.collect=function(e,...t){let r=[e,...t] +return u(r,(function(){let e=r.map((e=>{let t=(0,n.get)(this,e) +return void 0===t?null:t})) +return(0,o.A)(e)}),"collect")},e.filter=p,e.filterBy=function(e,t,r){let i +i=2===arguments.length?e=>(0,n.get)(e,t):e=>(0,n.get)(e,t)===r +return p(`${e}.@each.${t}`,i)},e.intersect=function(e,...t){return u([e,...t],(function(e){let t=e.map((e=>{let t=(0,n.get)(this,e) +return Array.isArray(t)?t:[]})),r=t.pop(),i=r.filter((e=>{for(let r of t){let t=!1 +for(let n of r)if(n===e){t=!0 +break}if(!1===t)return!1}return!0})) +return(0,o.A)(i)}),"intersect")},e.map=c,e.mapBy=function(e,t){return c(`${e}.@each.${t}`,(e=>(0,n.get)(e,t)))},e.max=function(e){return a(e,((e,t)=>Math.max(e,t)),-1/0,"max")},e.min=function(e){return a(e,((e,t)=>Math.min(e,t)),1/0,"min")},e.setDiff=function(e,t){return(0,n.computed)(`${e}.[]`,`${t}.[]`,(function(){let r=(0,n.get)(this,e),i=(0,n.get)(this,t) +return s(r)?s(i)?r.filter((e=>-1===i.indexOf(e))):r:(0,o.A)()})).readOnly()},e.sort=function(e,t,a){!1 +let u,c +Array.isArray(t)?(u=t,c=a):(u=[],c=t) +return"function"==typeof c?function(e,t,r){return l(e,t,(function(e){return e.slice().sort(((e,t)=>r.call(this,e,t)))}))}(e,u,c):function(e,t){let a=(0,r.autoComputed)((function(r){let a=(0,n.get)(this,t) +let l="@this"===e,u=function(e){let t=e=>{let[t,r]=e.split(":") +return r=r||"asc",[t,r]} +return Array.isArray(e),e.map(t)}(a),c=l?this:(0,n.get)(this,e) +return s(c)?0===u.length?(0,o.A)(c.slice()):function(e,t){return(0,o.A)(e.slice().sort(((e,r)=>{for(let[o,s]of t){let t=(0,i.compare)((0,n.get)(e,o),(0,n.get)(r,o)) +if(0!==t)return"desc"===s?-1*t:t}return 0})))}(c,u):(0,o.A)()})).readOnly() +return a}(e,c)},e.sum=function(e){return a(e,((e,t)=>e+t),0,"sum")},e.union=void 0,e.uniq=d,e.uniqBy=function(e,t){return(0,n.computed)(`${e}.[]`,(function(){let r=(0,n.get)(this,e) +return s(r)?(0,o.uniqBy)(r,t):(0,o.A)()})).readOnly()} +e.union=d})),e("@ember/object/mixin",["exports","@ember/-internals/container","@ember/-internals/meta","@ember/-internals/utils","@ember/debug","@ember/-internals/metal","@ember/object/events"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.applyMixin=y,e.default=void 0,e.mixin=function(e,...t){return y(e,t),e} +const a=Array.prototype.concat,{isArray:l}=Array +function u(e,t,r,n){let i=r[e]||n[e] +return t[e]&&(i=i?a.call(i,t[e]):t[e]),i}function c(e,t,r,i){if(!0===r)return t +let s=r._getter +if(void 0===s)return t +let a=i[e],l="function"==typeof a?(0,o.descriptorForDecorator)(a):a +if(void 0===l||!0===l)return t +let u=l._getter +if(void 0===u)return t +let c,p=(0,n.wrap)(s,u),d=r._setter,h=l._setter +if(c=void 0!==h?void 0!==d?(0,n.wrap)(d,h):h:d,p!==s||c!==d){let e=r._dependentKeys||[],t=new o.ComputedProperty([...e,{get:p,set:c}]) +return t._readOnly=r._readOnly,t._meta=r._meta,t.enumerable=r.enumerable,(0,o.makeComputedDecorator)(t,o.ComputedProperty)}return t}function p(e,t,r,i){if(void 0!==i[e])return t +let o=r[e] +return"function"==typeof o?(0,n.wrap)(t,o):t}function d(e){return e?Array.isArray(e)?e:[e]:[]}function h(e,t,r){let n=d(r[e]).concat(d(t)) +return n}function f(e,t,r){let i=r[e] +if(!i)return t +let o=Object.assign({},i),s=!1,a=Object.keys(t) +for(let n of a){let e=t[n] +"function"==typeof e?(s=!0,o[n]=p(n,e,i,{})):o[n]=e}return s&&(o._super=n.ROOT),o}function m(e,t,r,n,i,o,s){let a +for(let l=0;l{let t=o.indexOf(e);-1!==t&&o.splice(t,1)})))}else g(t,a,r,n,i,o,s)}function g(e,t,r,n,i,s,a){let l=u("concatenatedProperties",t,n,i),d=u("mergedProperties",t,n,i),m=Object.keys(t) +for(let u of m){let m=t[u] +if(void 0===m)continue +if(-1===s.indexOf(u)){s.push(u) +let t=e.peekDescriptors(u) +if(void 0===t){if(!(0,o.isClassicDecorator)(m)){let e=n[u]=i[u] +"function"==typeof e&&b(i,u,e,!1)}}else r[u]=t,a.push(u),t.teardown(i,u,e)}let g="function"==typeof m +if(g){let e=(0,o.descriptorForDecorator)(m) +if(void 0!==e){r[u]=c(u,m,e,r),n[u]=void 0 +continue}}l&&l.indexOf(u)>=0||"concatenatedProperties"===u||"mergedProperties"===u?m=h(u,m,n):d&&d.indexOf(u)>-1?m=f(u,m,n):g&&(m=p(u,m,n,r)),n[u]=m,r[u]=void 0}}function b(e,t,r,i){let a=(0,n.observerListenerMetaFor)(r) +if(void 0===a)return +let{observers:l,listeners:u}=a +if(void 0!==l){let r=i?o.addObserver:o.removeObserver +for(let n of l.paths)r(e,n,null,t,l.sync)}if(void 0!==u){let r=i?s.addListener:s.removeListener +for(let n of u)r(e,n,null,t)}}function y(e,t,i=!1){let s=Object.create(null),a=Object.create(null),l=(0,r.meta)(e),u=[],c=[] +e._super=n.ROOT,m(t,l,s,a,e,u,c) +for(let r of u){let t=a[r],n=s[r] +void 0!==t?("function"==typeof t&&b(e,r,t,!0),(0,o.defineValue)(e,r,t,-1!==c.indexOf(r),!i)):void 0!==n&&(0,o.defineDecorator)(e,r,n,l)}return l.isPrototypeMeta(e)||(0,o.revalidateObservers)(e),e}const v=new WeakSet +class _{constructor(e,t){v.add(this),this.properties=function(e){if(void 0!==e)for(let t of Object.keys(e)){let r=Object.getOwnPropertyDescriptor(e,t) +void 0===r.get&&void 0===r.set||Object.defineProperty(e,t,{value:(0,o.nativeDescDecorator)(r)})}return e}(t),this.mixins=O(e),this.ownerConstructor=void 0,this._without=void 0}static create(...e){(0,o.setUnprocessedMixins)() +return new this(e,void 0)}static mixins(e){let t=(0,r.peekMeta)(e),n=[] +return null===t||t.forEachMixins((e=>{e.properties||n.push(e)})),n}reopen(...e){if(0===e.length)return this +if(this.properties){let e=new _(void 0,this.properties) +this.properties=void 0,this.mixins=[e]}else this.mixins||(this.mixins=[]) +return this.mixins=this.mixins.concat(O(e)),this}apply(e,t=!1){return y(e,[this],t)}applyPartial(e){return y(e,[this])}detect(e){if("object"!=typeof e||null===e)return!1 +if(v.has(e))return w(e,this) +let t=(0,r.peekMeta)(e) +return null!==t&&t.hasMixin(this)}without(...e){let t=new _([this]) +return t._without=e,t}keys(){let e=E(this) +return e}toString(){return"(unknown mixin)"}}function O(e){let t,r=e&&e.length||0 +if(r>0){t=new Array(r) +for(let n=0;nw(e,t,r)))}function E(e,t=new Set,r=new Set){if(!r.has(e)){if(r.add(e),e.properties){let r=Object.keys(e.properties) +for(let e of r)t.add(e)}else e.mixins&&e.mixins.forEach((e=>E(e,t,r))) +return t}}e.default=_})),e("@ember/object/observable",["exports","@ember/-internals/meta","@ember/-internals/metal","@ember/object","@ember/object/mixin","@ember/debug"],(function(e,t,r,n,i,o){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const s=i.default.create({get(e){return(0,n.get)(this,e)},getProperties(...e){return(0,n.getProperties)(this,...e)},set(e,t){return(0,n.set)(this,e,t)},setProperties(e){return(0,n.setProperties)(this,e)},beginPropertyChanges(){return(0,r.beginPropertyChanges)(),this},endPropertyChanges(){return(0,r.endPropertyChanges)(),this},notifyPropertyChange(e){return(0,r.notifyPropertyChange)(this,e),this},addObserver(e,t,n,i){return(0,r.addObserver)(this,e,t,n,i),this},removeObserver(e,t,n,i){return(0,r.removeObserver)(this,e,t,n,i),this},hasObserverFor(e){return(0,r.hasListeners)(this,`${e}:change`)},incrementProperty(e,t=1){return(0,n.set)(this,e,(parseFloat((0,n.get)(this,e))||0)+t)},decrementProperty(e,t=1){return(0,n.set)(this,e,((0,n.get)(this,e)||0)-t)},toggleProperty(e){return(0,n.set)(this,e,!(0,n.get)(this,e))},cacheFor(e){let r=(0,t.peekMeta)(this) +return null!==r?r.valueFor(e):void 0}}) +e.default=s})),e("@ember/object/observers",["exports","@ember/-internals/metal"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"addObserver",{enumerable:!0,get:function(){return t.addObserver}}),Object.defineProperty(e,"removeObserver",{enumerable:!0,get:function(){return t.removeObserver}})})),e("@ember/object/promise-proxy-mixin",["exports","@ember/object","@ember/object/mixin"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const n=r.default.create({reason:null,isPending:(0,t.computed)("isSettled",(function(){return!(0,t.get)(this,"isSettled")})).readOnly(),isSettled:(0,t.computed)("isRejected","isFulfilled",(function(){return(0,t.get)(this,"isRejected")||(0,t.get)(this,"isFulfilled")})).readOnly(),isRejected:!1,isFulfilled:!1,promise:(0,t.computed)({get(){throw new Error("PromiseProxy's promise must be set")},set(e,r){return function(e,r){return(0,t.setProperties)(e,{isFulfilled:!1,isRejected:!1}),r.then((r=>(e.isDestroyed||e.isDestroying||(0,t.setProperties)(e,{content:r,isFulfilled:!0}),r)),(r=>{throw e.isDestroyed||e.isDestroying||(0,t.setProperties)(e,{reason:r,isRejected:!0}),r}),"Ember: PromiseProxy")}(this,r)}}),then:i("then"),catch:i("catch"),finally:i("finally")}) +function i(e){return function(...r){return(0,t.get)(this,"promise")[e](...r)}}e.default=n})),e("@ember/object/proxy",["exports","@ember/object/-internals","@ember/-internals/runtime"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class n extends t.FrameworkObject{}n.PrototypeMixin.reopen(r._ProxyMixin) +e.default=n})),e("@ember/owner/index",["exports","@ember/-internals/owner"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.getOwner=void 0,Object.defineProperty(e,"setOwner",{enumerable:!0,get:function(){return t.setOwner}}) +e.getOwner=t.getOwner})),e("@ember/renderer/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"renderSettled",{enumerable:!0,get:function(){return t.renderSettled}})})),e("@ember/routing/-internals",["exports","@ember/routing/lib/router_state","@ember/routing/lib/routing-service","@ember/routing/lib/utils","@ember/routing/lib/generate_controller","@ember/routing/lib/cache","@ember/routing/lib/dsl","@ember/routing/lib/controller_for"],(function(e,t,r,n,i,o,s,a){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"BucketCache",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"DSL",{enumerable:!0,get:function(){return s.default}}),Object.defineProperty(e,"RouterState",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"RoutingService",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"controllerFor",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"generateController",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"generateControllerFactory",{enumerable:!0,get:function(){return i.generateControllerFactory}}),Object.defineProperty(e,"prefixRouteNameArg",{enumerable:!0,get:function(){return n.prefixRouteNameArg}})})),e("@ember/routing/hash-location",["exports","@ember/object","@ember/runloop","@ember/routing/lib/location-utils"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class i extends t.default{constructor(){super(...arguments),this.lastSetURL=null}init(){this.location=this._location??window.location,this._hashchangeHandler=void 0}getHash(){return(0,n.getHash)(this.location)}getURL(){let e=this.getHash().substring(1),t=e +return"/"!==t[0]&&(t="/",e&&(t+=`#${e}`)),t}setURL(e){this.location.hash=e,this.lastSetURL=e}replaceURL(e){this.location.replace(`#${e}`),this.lastSetURL=e}onUpdateURL(e){this._removeEventListener(),this._hashchangeHandler=(0,r.bind)(this,(function(t){let r=this.getURL() +this.lastSetURL!==r&&(this.lastSetURL=null,e(r))})),window.addEventListener("hashchange",this._hashchangeHandler)}formatURL(e){return`#${e}`}willDestroy(){this._removeEventListener()}_removeEventListener(){this._hashchangeHandler&&window.removeEventListener("hashchange",this._hashchangeHandler)}}e.default=i})),e("@ember/routing/history-location",["exports","@ember/object","@ember/debug","@ember/routing/lib/location-utils"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +let i=!1 +function o(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){let t,r +return t=16*Math.random()|0,r="x"===e?t:3&t|8,r.toString(16)}))}class s extends t.default{constructor(){super(...arguments),this.rootURL="/"}getHash(){return(0,n.getHash)(this.location)}init(){this._super(...arguments) +let e=document.querySelector("base"),t="" +null!==e&&e.hasAttribute("href")&&(t=e.getAttribute("href")??""),this.baseURL=t,this.location=this.location??window.location,this._popstateHandler=void 0}initState(){let e=this.history??window.history +this.history=e +let{state:t}=e,r=this.formatURL(this.getURL()) +t&&t.path===r?this._previousURL=this.getURL():this.replaceState(r)}getURL(){let{location:e,rootURL:t,baseURL:r}=this,n=e.pathname +t=t.replace(/\/$/,""),r=r.replace(/\/$/,"") +let i=n.replace(new RegExp(`^${r}(?=/|$)`),"").replace(new RegExp(`^${t}(?=/|$)`),"").replace(/\/\//g,"/") +return i+=(e.search||"")+this.getHash(),i}setURL(e){let{state:t}=this.history +e=this.formatURL(e),t&&t.path===e||this.pushState(e)}replaceURL(e){let{state:t}=this.history +e=this.formatURL(e),t&&t.path===e||this.replaceState(e)}pushState(e){let t={path:e,uuid:o()} +this.history.pushState(t,"",e),this._previousURL=this.getURL()}replaceState(e){let t={path:e,uuid:o()} +this.history.replaceState(t,"",e),this._previousURL=this.getURL()}onUpdateURL(e){this._removeEventListener(),this._popstateHandler=()=>{(i||(i=!0,this.getURL()!==this._previousURL))&&e(this.getURL())},window.addEventListener("popstate",this._popstateHandler)}formatURL(e){let{rootURL:t,baseURL:r}=this +return""!==e?(t=t.replace(/\/$/,""),r=r.replace(/\/$/,"")):"/"===r[0]&&"/"===t[0]&&(r=r.replace(/\/$/,"")),r+t+e}willDestroy(){this._removeEventListener()}_removeEventListener(){this._popstateHandler&&window.removeEventListener("popstate",this._popstateHandler)}}e.default=s})) +e("@ember/routing/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"LinkTo",{enumerable:!0,get:function(){return t.LinkTo}})})),e("@ember/routing/lib/cache",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{constructor(){this.cache=new Map}has(e){return this.cache.has(e)}stash(e,t,r){let n=this.cache.get(e) +void 0===n&&(n=new Map,this.cache.set(e,n)),n.set(t,r)}lookup(e,t,r){if(!this.has(e))return r +let n=this.cache.get(e) +return n.has(t)?n.get(t):r}}})),e("@ember/routing/lib/controller_for",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return e.lookup(`controller:${t}`,r)}})),e("@ember/routing/lib/dsl",["exports","@ember/debug"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +let r=0 +function n(e){return"function"==typeof e}class i{constructor(e=null,t){this.explicitIndex=!1,this.parent=e,this.enableLoadingSubstates=Boolean(t&&t.enableLoadingSubstates),this.matches=[],this.options=t}route(e,t,r){let a,l=null,u=`/_unused_dummy_error_path_route_${e}/:error` +if(n(t)?(a={},l=t):n(r)?(a=t,l=r):a=t||{},this.enableLoadingSubstates&&(s(this,`${e}_loading`,{resetNamespace:a.resetNamespace}),s(this,`${e}_error`,{resetNamespace:a.resetNamespace,path:u})),l){let t=o(this,e,a.resetNamespace),r=new i(t,this.options) +s(r,"loading"),s(r,"error",{path:u}),l.call(r),s(this,e,a,r.generate())}else s(this,e,a)}push(e,t,r,n){let i=t.split(".") +if(this.options.engineInfo){let e=t.slice(this.options.engineInfo.fullName.length+1),r=Object.assign({localFullName:e},this.options.engineInfo) +n&&(r.serializeMethod=n),this.options.addRouteForEngine(t,r)}else if(n)throw new Error(`Defining a route serializer on route '${t}' outside an Engine is not allowed.`) +""!==e&&"/"!==e&&"index"!==i[i.length-1]||(this.explicitIndex=!0),this.matches.push(e,t,r)}generate(){let e=this.matches +return this.explicitIndex||this.route("index",{path:"/"}),t=>{for(let r=0;r`(generated ${t} controller)`}) +let i=`controller:${t}` +return e.register(i,n),e.factoryFor(i)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){i(e,t) +let r=`controller:${t}`,n=e.lookup(r) +!1 +return n},e.generateControllerFactory=i})),e("@ember/routing/lib/location-utils",["exports"],(function(e){"use strict" +function t(e){let t=e.pathname +return"/"!==t[0]&&(t=`/${t}`),t}function r(e){return e.search}function n(e){return void 0!==e.hash?e.hash.substring(0):""}function i(e){let t=e.origin +return t||(t=`${e.protocol}//${e.hostname}`,e.port&&(t+=`:${e.port}`)),t}Object.defineProperty(e,"__esModule",{value:!0}),e.getFullPath=function(e){return t(e)+r(e)+n(e)},e.getHash=n,e.getOrigin=i,e.getPath=t,e.getQuery=r,e.replacePath=function(e,t){e.replace(i(e)+t)}})),e("@ember/routing/lib/query_params",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{constructor(e=null){this.isQueryParams=!0,this.values=e}}})),e("@ember/routing/lib/route-info",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/routing/lib/router_state",["exports","@ember/routing/lib/utils"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{constructor(e,t,r){this.emberRouter=e,this.router=t,this.routerJsState=r}isActiveIntent(e,r,n){let i=this.routerJsState +if(!this.router.isActiveIntent(e,r,void 0,i))return!1 +if(void 0!==n&&Object.keys(n).length>0){let o=Object.assign({},n) +return this.emberRouter._prepareQueryParams(e,r,o),(0,t.shallowEqual)(o,i.queryParams)}return!0}}})),e("@ember/routing/lib/routing-service",["exports","@ember/-internals/owner","@ember/debug","@ember/object/computed","@ember/service","@ember/routing/router","@ember/routing/router-service"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +class a extends i.default{get router(){let e=this[s.ROUTER] +if(void 0!==e)return e +let r=(0,t.getOwner)(this),n=r.lookup("router:main") +return n.setupRouter(),this[s.ROUTER]=n}hasRoute(e){return this.router.hasRoute(e)}transitionTo(e,t,r,n){let i=this.router._doTransition(e,t,r) +return n&&i.method("replace"),i}normalizeQueryParams(e,t,r){this.router._prepareQueryParams(e,t,r)}_generateURL(e,t,r){let n={} +return r&&(Object.assign(n,r),this.normalizeQueryParams(e,t,n)),this.router.generate(e,...t,{queryParams:n})}generateURL(e,t,r){if(this.router._initialTransitionStarted)return this._generateURL(e,t,r) +try{return this._generateURL(e,t,r)}catch(n){return}}isActiveForRoute(e,t,r,n){let i=this.router._routerMicrolib.recognizer.handlersFor(r),o=i[i.length-1].handler,s=function(e,t){let r=0 +for(let n=0;ns&&(r=o),n.isActiveIntent(r,e,t)}}e.default=a,a.reopen({targetState:(0,n.readOnly)("router.targetState"),currentState:(0,n.readOnly)("router.currentState"),currentRouteName:(0,n.readOnly)("router.currentRouteName"),currentPath:(0,n.readOnly)("router.currentPath")})})),e("@ember/routing/lib/utils",["exports","@ember/-internals/metal","@ember/-internals/owner","@ember/debug","@ember/engine/instance","router_js"],(function(e,t,r,n,i,o){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.calculateCacheKey=function(e,r=[],n){let i="" +for(let o of r){let r,s=a(e,o) +if(n)if(s&&s in n){let e=0===o.indexOf(s)?o.substring(s.length+1):o +r=(0,t.get)(n[s],e)}else r=(0,t.get)(n,o) +i+=`::${o}:${r}`}return e+i.replace(s,"-")},e.extractRouteArgs=function(e){let t,r,n=(e=e.slice())[e.length-1] +!function(e){if(e&&"object"==typeof e){let t=e.queryParams +if(t&&"object"==typeof t)return Object.keys(t).every((e=>"string"==typeof e))}return!1}(n)?t={}:(e.pop(),t=n.queryParams) +"string"==typeof e[0]&&(r=e.shift()) +return{routeName:r,models:e,queryParams:t}},e.getActiveTargetName=function(e){let t=e.activeTransition?e.activeTransition[o.STATE_SYMBOL].routeInfos:e.state.routeInfos,r=t[t.length-1] +return r.name},e.normalizeControllerQueryParams=function(e){let t={} +for(let r of e)l(r,t) +return t},e.prefixRouteNameArg=function(e,t){let n,i=(0,r.getOwner)(e) +let o=i.mountPoint +if(i.routable&&"string"==typeof t[0]){if(n=t[0],u(n))throw new Error("Programmatic transitions by URL cannot be used within an Engine. Please use the route name instead.") +n=`${o}.${n}`,t[0]=n}return t},e.resemblesURL=u,e.shallowEqual=function(e,t){let r=0,n=0 +for(let i in e)if(Object.prototype.hasOwnProperty.call(e,i)){if(e[i]!==t[i])return!1 +r++}for(let i in t)Object.prototype.hasOwnProperty.call(t,i)&&n++ +return r===n},e.stashParamNames=function(e,t){if(t._namesStashed)return +let r=t[t.length-1] +let n,i=r.name,o=e._routerMicrolib.recognizer.handlersFor(i) +for(let s=0;s=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +const E=Symbol("render"),C=Symbol("render-state") +class k extends(s.default.extend(u.ActionHandler,a.default)){constructor(e){if(super(e),this.context={},this[O]=void 0,e){let r=e.lookup("router:main"),n=e.lookup(t.privatize`-bucket-cache:main`) +this._router=r,this._bucketCache=n,this._topLevelViewTemplate=e.lookup("template:-outlet"),this._environment=e.lookup("-environment:main")}}serialize(e,t){if(t.length<1||!e)return +let r={} +if(1===t.length){let[n]=t +"object"==typeof e&&n in e?r[n]=(0,s.get)(e,n):/_id$/.test(n)?r[n]=(0,s.get)(e,"id"):(0,p.isProxy)(e)&&(r[n]=(0,s.get)(e,n))}else r=(0,s.getProperties)(e,t) +return r}_setRouteName(e){this.routeName=e +let t=(0,n.getOwner)(this) +this.fullRouteName=P(t,e)}_stashNames(e,t){if(this._names)return +let r=this._names=e._names +r.length||(r=(e=t)&&e._names||[]) +let n=(0,s.get)(this,"_qp").qps,i=new Array(r.length) +for(let o=0;o(e[t]=r,e)),a)}serializeQueryParamKey(e){return e}serializeQueryParam(e,t,r){return this._router._serializeQueryParam(e,r)}deserializeQueryParam(e,t,r){return this._router._deserializeQueryParam(e,r)}_optionsForQueryParam(e){const t=(0,s.get)(this,"queryParams") +return(0,s.get)(t,e.urlKey)||(0,s.get)(t,e.prop)||t[e.urlKey]||t[e.prop]||{}}resetController(e,t,r){return this}exit(e){this.deactivate(e),this.trigger("deactivate",e),this.teardownViews()}_internalReset(e,t){let r=this.controller +r._qpDelegate=(0,s.get)(this,"_qp").states.inactive,this.resetController(r,e,t)}enter(e){this[C]=void 0,this.activate(e),this.trigger("activate",e)}deactivate(e){}activate(e){}intermediateTransitionTo(...e){let[t,...r]=(0,_.prefixRouteNameArg)(this,e) +this._router.intermediateTransitionTo(t,...r)}refresh(){return this._router._routerMicrolib.refresh(this)}setup(e,t){let n=this.controllerName||this.routeName,i=this.controllerFor(n,!0)??this.generateController(n),o=(0,s.get)(this,"_qp") +if(!this.controller){let e=o.propertyNames;(function(e,t){t.forEach((t=>{if(void 0===(0,r.descriptorForProperty)(e,t)){let n=(0,p.lookupDescriptor)(e,t) +null===n||"function"!=typeof n.get&&"function"!=typeof n.set||(0,r.defineProperty)(e,t,(0,g.dependentKeyCompat)({get:n.get,set:n.set}))}(0,r.addObserver)(e,`${t}.[]`,e,e._qpChanged,!1)}))})(i,e),this.controller=i}let a=o.states +if(i._qpDelegate=a.allowOverrides,t){(0,_.stashParamNames)(this._router,t[y.STATE_SYMBOL].routeInfos) +let e=this._bucketCache,r=t[y.PARAMS_SYMBOL] +o.propertyNames.forEach((t=>{let n=o.map[t] +n.values=r +let a=(0,_.calculateCacheKey)(n.route.fullRouteName,n.parts,n.values),l=e.lookup(a,t,n.undecoratedDefaultValue);(0,s.set)(i,t,l)})) +let n=R(this,t[y.STATE_SYMBOL]);(0,s.setProperties)(i,n)}this.setupController(i,e,t),this._environment.options.shouldRender&&this[E](),(0,r.flushAsyncObservers)(!1)}_qpChanged(e,t,r){if(!r)return +let n=this._bucketCache,i=(0,_.calculateCacheKey)(r.route.fullRouteName,r.parts,r.values) +n.stash(i,e,t)}beforeModel(e){}afterModel(e,t){}redirect(e,t){}contextDidChange(){this.currentModel=this.context}model(e,t){let r,n,i,o=(0,s.get)(this,"_qp").map +for(let s in e){if("queryParams"===s||o&&s in o)continue +let t=s.match(/^(.*)_id$/) +null!==t&&(r=t[1],i=e[s]),n=!0}if(!r){if(n)return Object.assign({},e) +if(t.resolveIndex<1)return +return t[y.STATE_SYMBOL].routeInfos[t.resolveIndex-1].context}return this.findModel(r,i)}deserialize(e,t){return this.model(this._paramsFor(this.routeName,e),t)}findModel(e,t){if(i.ENV._NO_IMPLICIT_ROUTE_MODEL)return;(0,f.deprecateUntil)(`The implicit model loading behavior for routes is deprecated. Please define an explicit model hook for ${this.fullRouteName}.`,f.DEPRECATIONS.DEPRECATE_IMPLICIT_ROUTE_MODEL) +const r="store"in this?this.store:(0,s.get)(this,"_store") +return r.find(e,t)}setupController(e,t,r){e&&void 0!==t&&(0,s.set)(e,"model",t)}controllerFor(e,t=!1){let r=(0,n.getOwner)(this),i=r.lookup(`route:${e}`) +i&&i.controllerName&&(e=i.controllerName) +let o=r.lookup(`controller:${e}`) +return o}generateController(e){let t=(0,n.getOwner)(this) +return(0,o.generateController)(t,e)}modelFor(e){let t,r=(0,n.getOwner)(this),i=this._router&&this._router._routerMicrolib?this._router._routerMicrolib.activeTransition:void 0 +t=r.routable&&void 0!==i?P(r,e):e +let o=r.lookup(`route:${t}`) +if(null!=i){let e=o&&o.routeName||t +if(Object.prototype.hasOwnProperty.call(i.resolvedModels,e))return i.resolvedModels[e]}return o?.currentModel}[(O=C,E)](){this[C]=function(e){let t=(0,n.getOwner)(e) +let r=e.routeName,i=t.lookup(`controller:${e.controllerName||r}`) +let o=e.currentModel,s=t.lookup(`template:${e.templateName||r}`),a={owner:t,into:void 0,outlet:"main",name:r,controller:i,model:o,template:s?.(t)??e._topLevelViewTemplate(t)} +0 +return a}(this),(0,b.once)(this._router,"_setOutlets")}willDestroy(){this.teardownViews()}teardownViews(){this[C]&&(this[C]=void 0,(0,b.once)(this._router,"_setOutlets"))}buildRouteInfoMetadata(){}_paramsFor(e,t){return void 0!==this._router._routerMicrolib.activeTransition?this.paramsFor(e):t}get _store(){const e=(0,n.getOwner)(this) +this.routeName +return{find(t,r){let n=e.factoryFor(`model:${t}`) +if(n)return n=n.class,n.find(r)}}}get _qp(){let e={},t=this.controllerName||this.routeName,r=(0,n.getOwner)(this),i=r.lookup(`controller:${t}`),a=(0,s.get)(this,"queryParams"),l=Object.keys(a).length>0 +if(i){let t=(0,s.get)(i,"queryParams")||[] +e=function(e,t){let r={},n={defaultValue:!0,type:!0,scope:!0,as:!0} +for(let i in e)Object.prototype.hasOwnProperty.call(e,i)&&(r[i]={...e[i],...t[i]},n[i]=!0) +for(let i in t)Object.prototype.hasOwnProperty.call(t,i)&&!n[i]&&(r[i]={...t[i],...e[i]}) +return r}((0,_.normalizeControllerQueryParams)(t),a)}else l&&(i=(0,o.generateController)(r,t),e=a) +let u=[],p={},d=[] +for(let n in e){if(!Object.prototype.hasOwnProperty.call(e,n))continue +if("unknownProperty"===n||"_super"===n)continue +let r,o=e[n],a=o.scope||"model" +"controller"===a&&(r=[]) +let l=o.as||this.serializeQueryParamKey(n),h=(0,s.get)(i,n) +h=S(h) +let f=o.type||(0,c.typeOf)(h),m=this.serializeQueryParam(h,l,f),g=`${t}:${n}`,b={undecoratedDefaultValue:(0,s.get)(i,n),defaultValue:h,serializedDefaultValue:m,serializedValue:m,type:f,urlKey:l,prop:n,scopedPropertyName:g,controllerName:t,route:this,parts:r,values:null,scope:a} +p[n]=p[l]=p[g]=b,u.push(b),d.push(n)}return{qps:u,map:p,propertyNames:d,states:{inactive:(e,t)=>{let r=p[e] +this._qpChanged(e,t,r)},active:(e,t)=>{let r=p[e] +return this._qpChanged(e,t,r),this._activeQPChanged(r,t)},allowOverrides:(e,t)=>{let r=p[e] +return this._qpChanged(e,t,r),this._updatingQPChanged(r)}}}}}function T(e,t){if(t.fullQueryParams)return t.fullQueryParams +let r=t.routeInfos.every((e=>e.route)),n={...t.queryParams} +return e._deserializeQueryParams(t.routeInfos,n),r&&(t.fullQueryParams=n),n}function R(e,t){t.queryParamsFor=t.queryParamsFor||{} +let r=e.fullRouteName,n=t.queryParamsFor[r] +if(n)return n +let i=T(e._router,t),o=t.queryParamsFor[r]={},a=(0,s.get)(e,"_qp").qps +for(let s of a){let e=s.prop in i +o[s.prop]=e?i[s.prop]:S(s.defaultValue)}return o}function S(e){return Array.isArray(e)?(0,l.A)(e.slice()):e}function P(e,t){if(e.routable){let r=e.mountPoint +return"application"===t?r:`${r}.${t}`}return t}k.isRouteFactory=!0,w([s.computed],k.prototype,"_store",null),w([s.computed],k.prototype,"_qp",null) +const A=e.defaultSerialize=k.prototype.serialize +k.reopen({mergedProperties:["queryParams"],queryParams:{},templateName:null,controllerName:null,send(...e){if(this._router&&this._router._routerMicrolib||!(0,h.isTesting)())this._router.send(...e) +else{let t=e.shift(),r=this.actions[t] +if(r)return r.apply(this,e)}},actions:{queryParamsDidChange(e,t,r){let n=(0,s.get)(this,"_qp").map,i=Object.keys(e).concat(Object.keys(r)) +for(let o of i){let e=n[o] +if(e){let t=this._optionsForQueryParam(e) +if((0,s.get)(t,"refreshModel")&&this._router.currentState){this.refresh() +break}}}return!0},finalizeQueryParamChange(e,t,n){if("application"!==this.fullRouteName)return!0 +if(!n)return +let i,o=n[y.STATE_SYMBOL].routeInfos,a=this._router,l=a._queryParamsFor(o),u=a._qpUpdates,c=!1;(0,_.stashParamNames)(a,o) +for(let r of l.qps){let o,a,l=r.route,p=l.controller,d=r.urlKey in e&&r.urlKey +if(u.has(r.urlKey)?(o=(0,s.get)(p,r.prop),a=l.serializeQueryParam(o,r.urlKey,r.type)):d?(a=e[d],void 0!==a&&(o=l.deserializeQueryParam(a,r.urlKey,r.type))):(a=r.serializedDefaultValue,o=S(r.defaultValue)),p._qpDelegate=(0,s.get)(l,"_qp").states.inactive,a!==r.serializedValue){if(n.queryParamsOnly&&!1!==i){let e=l._optionsForQueryParam(r),t=(0,s.get)(e,"replace") +t?i=!0:!1===t&&(i=!1)}(0,s.set)(p,r.prop,o),c=!0}r.serializedValue=a,r.serializedDefaultValue===a||t.push({value:a,visible:!0,key:d||r.urlKey})}!0===c&&(0,r.flushAsyncObservers)(!1),i&&n.method("replace"),l.qps.forEach((e=>{let t=(0,s.get)(e.route,"_qp") +e.route.controller._qpDelegate=(0,s.get)(t,"states.active")})),a._qpUpdates.clear()}}}) +e.default=k})),e("@ember/routing/router-service",["exports","@ember/-internals/owner","@ember/object/evented","@ember/debug","@ember/object/computed","@ember/service","@glimmer/validator","@ember/routing/router","@ember/routing/lib/utils"],(function(e,t,r,n,i,o,s,a,l){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ROUTER=void 0 +var u=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +const c=e.ROUTER=Symbol("ROUTER") +function p(e,t){return"/"===t?e:e.substring(t.length)}class d extends(o.default.extend(r.default)){get _router(){let e=this[c] +if(void 0!==e)return e +let r=(0,t.getOwner)(this),n=r.lookup("router:main") +return this[c]=n}willDestroy(){super.willDestroy(),this[c]=void 0}transitionTo(...e){if((0,l.resemblesURL)(e[0]))return this._router._doURLTransition("transitionTo",e[0]) +let{routeName:t,models:r,queryParams:n}=(0,l.extractRouteArgs)(e) +return this._router._doTransition(t,r,n,!0)}replaceWith(...e){return this.transitionTo(...e).method("replace")}urlFor(e,...t){return this._router.setupRouter(),this._router.generate(e,...t)}isActive(...e){let{routeName:t,models:r,queryParams:n}=(0,l.extractRouteArgs)(e),i=this._router._routerMicrolib +if((0,s.consumeTag)((0,s.tagFor)(this._router,"currentURL")),!i.isActiveIntent(t,r))return!1 +if(Object.keys(n).length>0){let e=t +n=Object.assign({},n),this._router._prepareQueryParams(e,r,n,!0) +let o=Object.assign({},i.state.queryParams) +return this._router._prepareQueryParams(e,r,o,!0),(0,l.shallowEqual)(n,o)}return!0}recognize(e){this._router.setupRouter() +let t=p(e,this.rootURL) +return this._router._routerMicrolib.recognize(t)}recognizeAndLoad(e){this._router.setupRouter() +let t=p(e,this.rootURL) +return this._router._routerMicrolib.recognizeAndLoad(t)}refresh(e){if(!e)return this._router._routerMicrolib.refresh() +let r=(0,t.getOwner)(this),n=r.lookup(`route:${e}`) +return this._router._routerMicrolib.refresh(n)}}e.default=d,u([(0,i.readOnly)("_router.currentRouteName")],d.prototype,"currentRouteName",void 0),u([(0,i.readOnly)("_router.currentURL")],d.prototype,"currentURL",void 0),u([(0,i.readOnly)("_router.location")],d.prototype,"location",void 0),u([(0,i.readOnly)("_router.rootURL")],d.prototype,"rootURL",void 0),u([(0,i.readOnly)("_router.currentRoute")],d.prototype,"currentRoute",void 0)})),e("@ember/routing/router",["exports","@ember/-internals/container","@ember/object","@ember/owner","@ember/routing/-internals","@ember/routing/lib/utils","@ember/array","@ember/utils","@ember/object/evented","@ember/debug","@ember/runloop","@ember/routing/route","router_js","@ember/engine/instance"],(function(e,t,r,n,i,o,s,a,l,u,c,p,d,h){"use strict" +function f(e){T(this),this._cancelSlowTransitionTimer(),this.notifyPropertyChange("url"),this.set("currentState",this.targetState)}function m(e,t){0}function g(){return this}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.triggerEvent=C +const{slice:b}=Array.prototype +class y extends(r.default.extend(l.default)){static map(e){return this.dslCallbacks||(this.dslCallbacks=[],this.reopenClass({dslCallbacks:this.dslCallbacks})),this.dslCallbacks.push(e),this}static _routePath(e){let t,r,n,i=[] +function o(e,t){for(let r=0;r{e.setURL(n),(0,r.set)(t,"currentURL",n)}))}didTransition(e){t.didTransition(e)}willTransition(e,r){t.willTransition(e,r)}triggerEvent(e,r,n,i){return C.bind(t)(e,r,n,i)}routeWillChange(e){t.trigger("routeWillChange",e),t._routerService.trigger("routeWillChange",e),e.isIntermediate&&t.set("currentRoute",e.to)}routeDidChange(e){t.set("currentRoute",e.to),(0,c.once)((()=>{t.trigger("routeDidChange",e),t._routerService.trigger("routeDidChange",e)}))}transitionDidError(e,r){return e.wasAborted||r.isAborted?(0,d.logAbort)(r):(r.trigger(!1,"error",e.error,r,e.route),t._isErrorHandled(e.error)?(r.rollback(),this.routeDidChange(r),e.error):(r.abort(),e.error))}replaceURL(n){if(e.replaceURL){let i=()=>{e.replaceURL(n),(0,r.set)(t,"currentURL",n)};(0,c.once)(i)}else this.updateURL(n)}}let a=this._routerMicrolib=new s,l=this.constructor.dslCallbacks||[g],u=this._buildDSL() +u.route("application",{path:"/",resetNamespace:!0,overrideNameAssertion:!0},(function(){for(let e=0;er.factoryFor(`route-map:${e}`),addRouteForEngine(e,r){t._engineInfoByRoute[e]||(t._engineInfoByRoute[e]=r)}} +return new i.DSL(null,o)}_resetQueuedQueryParameterChanges(){this._queuedQPChanges={}}_hasModuleBasedResolver(){let e=(0,n.getOwner)(this),t=(0,r.get)(e,"application.__registry__.resolver.moduleBasedResolver") +return Boolean(t)}startRouting(){if(this.setupRouter()){let e=(0,r.get)(this,"initialURL") +void 0===e&&(e=(0,r.get)(this,"location").getURL()) +let t=this.handleURL(e) +if(t&&t.error)throw t.error}}setupRouter(){if(this._didSetupRouter)return!1 +this._didSetupRouter=!0,this._setupLocation() +let e=(0,r.get)(this,"location") +return!(0,r.get)(e,"cancelRouterSetup")&&(this._initRouterJs(),e.onUpdateURL((e=>{this.handleURL(e)})),!0)}_setOutlets(){if(this.isDestroying||this.isDestroyed)return +let e=this._routerMicrolib.currentRouteInfos +if(!e)return +let t=null,r=null +for(let n of e){let e=n.route,i=(0,p.getRenderState)(e) +if(!i)break +{let e={render:i,outlets:{main:void 0}} +r?r.outlets.main=e:t=e,r=e}}if(null!==t)if(this._toplevelView)this._toplevelView.setOutletState(t) +else{let e=(0,n.getOwner)(this),r=e.factoryFor("view:-outlet"),i=e.lookup("application:main"),o=e.lookup("-environment:main"),s=e.lookup("template:-outlet") +this._toplevelView=r.create({environment:o,template:s,application:i}),this._toplevelView.setOutletState(t) +let a=e.lookup("-application-instance:main") +a&&a.didCreateRootView(this._toplevelView)}}handleURL(e){let t=e.split(/#(.+)?/)[0] +return this._doURLTransition("handleURL",t)}_doURLTransition(e,t){this._initialTransitionStarted=!0 +let r=this._routerMicrolib[e](t||"/") +return R(r,this),r}transitionTo(...e){if((0,o.resemblesURL)(e[0]))return this._doURLTransition("transitionTo",e[0]) +let{routeName:t,models:r,queryParams:n}=(0,o.extractRouteArgs)(e) +return this._doTransition(t,r,n)}intermediateTransitionTo(e,...t){this._routerMicrolib.intermediateTransitionTo(e,...t),T(this)}replaceWith(...e){return this.transitionTo(...e).method("replace")}generate(e,...t){let r=this._routerMicrolib.generate(e,...t) +return this.location.formatURL(r)}isActive(e){return this._routerMicrolib.isActive(e)}isActiveIntent(e,t,r){return this.currentState.isActiveIntent(e,t,r)}send(e,...t){this._routerMicrolib.trigger(e,...t)}hasRoute(e){return this._routerMicrolib.hasRoute(e)}reset(){this._didSetupRouter=!1,this._initialTransitionStarted=!1,this._routerMicrolib&&this._routerMicrolib.reset()}willDestroy(){this._toplevelView&&(this._toplevelView.destroy(),this._toplevelView=null),super.willDestroy(),this.reset() +let e=this._engineInstances +for(let t in e){let r=e[t] +for(let e in r){let t=r[e];(0,c.run)(t,"destroy")}}}_activeQPChanged(e,t){this._queuedQPChanges[e]=t,(0,c.once)(this,this._fireQueryParamTransition)}_updatingQPChanged(e){this._qpUpdates.add(e)}_fireQueryParamTransition(){this.transitionTo({queryParams:this._queuedQPChanges}),this._resetQueuedQueryParameterChanges()}_setupLocation(){let e=this.location,t=this.rootURL,i=(0,n.getOwner)(this) +if("string"==typeof e){let t=i.lookup(`location:${e}`) +e=(0,r.set)(this,"location",t)}null!==e&&"object"==typeof e&&(t&&(0,r.set)(e,"rootURL",t),"function"==typeof e.initState&&e.initState())}_serializeQueryParams(e,t){S(this,e,t,((e,r,n)=>{if(n)delete t[e],t[n.urlKey]=n.route.serializeQueryParam(r,n.urlKey,n.type) +else{if(void 0===r)return +t[e]=this._serializeQueryParam(r,(0,a.typeOf)(r))}}))}_serializeQueryParam(e,t){return null==e?e:"array"===t?JSON.stringify(e):`${e}`}_deserializeQueryParams(e,t){S(this,e,t,((e,r,n)=>{n&&(delete t[e],t[n.prop]=n.route.deserializeQueryParam(r,n.urlKey,n.type))}))}_deserializeQueryParam(e,t){return null==e?e:"boolean"===t?"true"===e:"number"===t?Number(e).valueOf():"array"===t?(0,s.A)(JSON.parse(e)):e}_pruneDefaultQueryParamValues(e,t){let r=this._queryParamsFor(e) +for(let n in t){let e=r.map[n] +e&&e.serializedDefaultValue===t[n]&&delete t[n]}}_doTransition(e,t,r,n){let i=e||(0,o.getActiveTargetName)(this._routerMicrolib) +this._initialTransitionStarted=!0 +let s={} +this._processActiveTransitionQueryParams(i,t,s,r),Object.assign(s,r),this._prepareQueryParams(i,t,s,Boolean(n)) +let a=this._routerMicrolib.transitionTo(i,...t,{queryParams:s}) +return R(a,this),a}_processActiveTransitionQueryParams(e,t,r,n){if(!this._routerMicrolib.activeTransition)return +let i={},o=this._qpUpdates,s=(0,p.getFullQueryParams)(this,this._routerMicrolib.activeTransition[d.STATE_SYMBOL]) +for(let a in s)o.has(a)||(i[a]=s[a]) +this._fullyScopeQueryParams(e,t,n),this._fullyScopeQueryParams(e,t,i),Object.assign(r,i)}_prepareQueryParams(e,t,r,n){let i=k(this,e,t) +this._hydrateUnsuppliedQueryParams(i,r,Boolean(n)),this._serializeQueryParams(i.routeInfos,r),n||this._pruneDefaultQueryParamValues(i.routeInfos,r)}_getQPMeta(e){let t=e.route +return t&&(0,r.get)(t,"_qp")}_queryParamsFor(e){let t=e[e.length-1].name,r=this._qpCache[t] +if(void 0!==r)return r +let n,i=!0,o={},s=[] +for(let l of e)if(n=this._getQPMeta(l),n){for(let e of n.qps)s.push(e) +Object.assign(o,n.map)}else i=!1 +let a={qps:s,map:o} +return i&&(this._qpCache[t]=a),a}_fullyScopeQueryParams(e,t,r){let n,i=k(this,e,t).routeInfos +for(let o of i)if(n=this._getQPMeta(o),n)for(let e of n.qps){let t=e.prop in r&&e.prop||e.scopedPropertyName in r&&e.scopedPropertyName||e.urlKey in r&&e.urlKey +t&&t!==e.scopedPropertyName&&(r[e.scopedPropertyName]=r[t],delete r[t])}}_hydrateUnsuppliedQueryParams(e,t,r){let n,i,s,a=e.routeInfos,l=this._bucketCache +for(let u of a)if(n=this._getQPMeta(u),n)for(let r=0,a=n.qps.length;r=0;--r){let n=e[r],i=n.route +if(void 0!==i&&!0!==t(i,n))return}}let _={willResolveModel(e,t,r){this._scheduleLoadingEvent(t,r)},error(e,t,r){let n=this,i=e[e.length-1] +v(e,((e,r)=>{if(r!==i){let r=w(e,"error") +if(r)return n._markErrorAsHandled(t),n.intermediateTransitionTo(r,t),!1}let o=O(e,"error") +return!o||(n._markErrorAsHandled(t),n.intermediateTransitionTo(o,t),!1)})),function(e,t){let r,n=[] +r=e&&"object"==typeof e&&"object"==typeof e.errorThrown?e.errorThrown:e +t&&n.push(t) +r&&(r.message&&n.push(r.message),r.stack&&n.push(r.stack),"string"==typeof r&&n.push(r)) +console.error(...n)}(t,`Error while processing route: ${r.targetName}`)},loading(e,t){let r=this,n=e[e.length-1] +v(e,((e,i)=>{if(i!==n){let t=w(e,"loading") +if(t)return r.intermediateTransitionTo(t),!1}let o=O(e,"loading") +return o?(r.intermediateTransitionTo(o),!1):t.pivotHandler!==e}))}} +function O(e,t){let r=(0,n.getOwner)(e),{routeName:i,fullRouteName:o,_router:s}=e,a=`${o}_${t}` +return E(r,s,`${i}_${t}`,a)?a:""}function w(e,t){let r=(0,n.getOwner)(e),{routeName:i,fullRouteName:o,_router:s}=e,a="application"===o?t:`${o}.${t}` +return E(r,s,"application"===i?t:`${i}.${t}`,a)?a:""}function E(e,t,r,n){let i=t.hasRoute(n),o=e.factoryFor(`template:${r}`)||e.factoryFor(`route:${r}`) +return i&&o}function C(e,t,r,n){if(!e){if(t)return +throw new Error(`Can't trigger action '${r}' because your app hasn't finished transitioning into its first route. To trigger an action on destination routes during a transition, you can call \`.send()\` on the \`Transition\` object passed to the \`model/beforeModel/afterModel\` hooks.`)}let i,o,s,a=!1 +for(let u=e.length-1;u>=0;u--)if(i=e[u],o=i.route,s=o&&o.actions&&o.actions[r],s){if(!0!==s.apply(o,n))return void("error"===r&&o._router._markErrorAsHandled(n[0])) +a=!0}let l=_[r] +if(l)l.call(this,e,...n) +else if(!a&&!t)throw new Error(`Nothing handled the action '${r}'. If you did handle the action, this error can be caused by returning true from an action handler in a controller, causing the action to bubble.`)}function k(e,t,r){let n=e._routerMicrolib.applyIntent(t,r),{routeInfos:i,params:o}=n +for(let s of i)s.isResolved?o[s.name]=s.params:o[s.name]=s.serialize(s.context) +return n}function T(e){let t=e._routerMicrolib.currentRouteInfos +if(0===t.length)return +let n=y._routePath(t),i=t[t.length-1],o=i.name,s=e.location,a=s.getURL();(0,r.set)(e,"currentPath",n),(0,r.set)(e,"currentRouteName",o),(0,r.set)(e,"currentURL",a)}function R(e,t){let r=new i.RouterState(t,t._routerMicrolib,e[d.STATE_SYMBOL]) +t.currentState||t.set("currentState",r),t.set("targetState",r),e.promise=e.catch((e=>{if(!t._isErrorHandled(e))throw e +t._clearHandledError(e)}),"Transition Error")}function S(e,t,r,n){let i=e._queryParamsFor(t) +for(let o in r){if(!Object.prototype.hasOwnProperty.call(r,o))continue +n(o,r[o],i.map[o])}}y.reopen({didTransition:f,willTransition:m,rootURL:"/",location:"hash",url:(0,r.computed)((function(){let e=(0,r.get)(this,"location") +if("string"!=typeof e)return e.getURL()}))}) +e.default=y})),e("@ember/routing/transition",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/runloop/-private/backburner",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0})})),e("@ember/runloop/index",["exports","@ember/debug","@ember/-internals/error-handling","@ember/-internals/metal","backburner.js"],(function(e,t,r,n,i){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e._backburner=void 0,e._cancelTimers=function(){l.cancelTimers()},e._getCurrentRunLoop=function(){return o},e._hasScheduledTimers=function(){return l.hasTimers()},e._rsvpErrorQueue=e._queues=void 0,e.begin=function(){l.begin()},e.bind=function(...e){return(...t)=>u(...e.concat(t))},e.cancel=function(e){return l.cancel(e)},e.debounce=function(...e){return l.debounce(...e)},e.end=function(){l.end()},e.join=u,e.later=function(...e){return l.later(...e)},e.next=function(...e){return l.later(...e,1)},e.once=function(...e){return l.scheduleOnce("actions",...e)},e.run=function(...e){return l.run(...e)},e.schedule=function(...e){return l.schedule(...e)},e.scheduleOnce=function(...e){return l.scheduleOnce(...e)},e.throttle=function(...e){return l.throttle(...e)} +let o=null +const s=e._rsvpErrorQueue=`${Math.random()}${Date.now()}`.replace(".",""),a=e._queues=["actions","routerTransitions","render","afterRender","destroy",s],l=e._backburner=new i.default(a,{defaultQueue:"actions",onBegin:function(e){o=e},onEnd:function(e,t){o=t,(0,n.flushAsyncObservers)()},onErrorTarget:r.onErrorTarget,onErrorMethod:"onerror",flush:function(e,t){"render"!==e&&e!==s||(0,n.flushAsyncObservers)(),t()}}) +function u(e,t,...r){return l.join(e,t,...r)}})),e("@ember/service/index",["exports","@ember/object/-internals","@ember/-internals/metal"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.inject=function(...e){return(0,r.inject)("service",...e)},e.service=function(...e){return(0,r.inject)("service",...e)} +class n extends t.FrameworkObject{}n.isServiceFactory=!0 +e.default=n})),e("@ember/template-compilation/index",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.__emberTemplateCompiler=void 0,e.__registerTemplateCompiler=function(r){e.__emberTemplateCompiler=t=r},e.precompileTemplate=e.compileTemplate=void 0 +let t=e.__emberTemplateCompiler=void 0 +e.compileTemplate=(...e)=>{if(!t)throw new Error("Attempted to call `compileTemplate` without first loading the runtime template compiler.") +return t.compile(...e)} +e.precompileTemplate=void 0})),e("@ember/template-factory/index",["exports","@glimmer/opcode-compiler"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"createTemplateFactory",{enumerable:!0,get:function(){return t.templateFactory}})})),e("@ember/template/index",["exports","@ember/-internals/glimmer"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"htmlSafe",{enumerable:!0,get:function(){return t.htmlSafe}}),Object.defineProperty(e,"isHTMLSafe",{enumerable:!0,get:function(){return t.isHTMLSafe}})})),e("@ember/test/adapter",["exports","ember-testing"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t.Adapter}})})),e("@ember/test/index",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.registerHelper=e.registerAsyncHelper=e._impl=void 0,e.registerTestImplementation=function(a){let{Test:l}=a +e.registerAsyncHelper=t=l.registerAsyncHelper,e.registerHelper=r=l.registerHelper,e.registerWaiter=n=l.registerWaiter,e.unregisterHelper=i=l.unregisterHelper,e.unregisterWaiter=o=l.unregisterWaiter,e._impl=s=a},e.unregisterWaiter=e.unregisterHelper=e.registerWaiter=void 0 +let t=e.registerAsyncHelper=void 0,r=e.registerHelper=void 0,n=e.registerWaiter=void 0,i=e.unregisterHelper=void 0,o=e.unregisterWaiter=void 0,s=e._impl=void 0,a=()=>{throw new Error("Attempted to use test utilities, but `ember-testing` was not included")} +e.registerAsyncHelper=t=a,e.registerHelper=r=a,e.registerWaiter=n=a,e.unregisterHelper=i=a,e.unregisterWaiter=o=a})),e("@ember/utils/index",["exports","@ember/utils/lib/is_none","@ember/utils/lib/is_blank","@ember/utils/lib/is_empty","@ember/utils/lib/is_present","@ember/utils/lib/is-equal","@ember/utils/lib/type-of","@ember/utils/lib/compare"],(function(e,t,r,n,i,o,s,a){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"compare",{enumerable:!0,get:function(){return a.default}}),Object.defineProperty(e,"isBlank",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"isEmpty",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(e,"isEqual",{enumerable:!0,get:function(){return o.default}}),Object.defineProperty(e,"isNone",{enumerable:!0,get:function(){return t.default}}),Object.defineProperty(e,"isPresent",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"typeOf",{enumerable:!0,get:function(){return s.default}})})),e("@ember/utils/lib/compare",["exports","@ember/utils/lib/type-of","@ember/-internals/runtime","@ember/debug"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function e(r,n){if(r===n)return 0 +let a=(0,t.default)(r),l=(0,t.default)(n) +if("instance"===a&&s(r)&&r.constructor.compare)return r.constructor.compare(r,n) +if("instance"===l&&s(n)&&n.constructor.compare)return-1*n.constructor.compare(n,r) +let u=o(i[a],i[l]) +if(0!==u)return u +switch(a){case"boolean":return o(Number(r),Number(n)) +case"number":return o(r,n) +case"string":return o(r.localeCompare(n),0) +case"array":{let t=r.length,i=n.length,s=Math.min(t,i) +for(let o=0;o{o.push(` ${e.name} = ${r+t},`),i=t})),o.push(` Size = ${i+r+1},`),o.push("}") +let s,a=o.join("\n") +s=n?p` + export function is${e}(value: number): value is ${e} { + return value >= ${r} && value <= ${n}; + } + `:p` + export function is${e}(value: number): value is ${e} { + return value >= ${r}; + } + ` +return{enumString:a,predicate:s}},e.buildMetas=function(e,t){let r=[] +for(let n of Object.keys(t))r.push(d(e,t,n)) +return r.join("\n\n")},e.buildSingleMeta=d,e.check=function(e,t,r=k){if("function"==typeof t)return t(e),e +if(t.validate(e))return e +throw new Error(r(e,t.expected()))},e.debug=function(e,t,r){return},e.debugSlice=function(e,t,r){},e.expectStackChange=function(e,t,r){let n=e.sp-T +if(n===t)return +throw new Error(`Expected stack to change by ${t}, but it changed by ${n} in ${r}`)},e.logOpcode=function(e,t){},e.normalize=s,e.normalizeAll=function(e){let t=c(e.machine),r=c(e.syscall) +return{machine:t,syscall:r}},e.normalizeParsed=c,e.opcodeMetadata=function(e,t){let r=t?i[e]:n[e] +return r||null},e.recordStackSize=function(e){T=e},e.strip=p,e.wrap=function(e){return new class{validate(t){return e().validate(t)}expected(){return e().expected()}}} +const n=new Array(r.Op.Size).fill(null),i=new Array(r.Op.Size).fill(null) +i[r.MachineOp.PushFrame]={name:"PushFrame",mnemonic:"pushf",before:null,stackChange:2,ops:[],operands:0,check:!0},i[r.MachineOp.PopFrame]={name:"PopFrame",mnemonic:"popf",before:null,stackChange:-2,ops:[],operands:0,check:!1},i[r.MachineOp.InvokeVirtual]={name:"InvokeVirtual",mnemonic:"vcall",before:null,stackChange:-1,ops:[],operands:0,check:!0},i[r.MachineOp.InvokeStatic]={name:"InvokeStatic",mnemonic:"scall",before:null,stackChange:0,ops:[{name:"offset",type:"u32"}],operands:1,check:!0},i[r.MachineOp.Jump]={name:"Jump",mnemonic:"goto",before:null,stackChange:0,ops:[{name:"to",type:"u32"}],operands:1,check:!0},i[r.MachineOp.Return]={name:"Return",mnemonic:"ret",before:null,stackChange:0,ops:[],operands:0,check:!1},i[r.MachineOp.ReturnTo]={name:"ReturnTo",mnemonic:"setra",before:null,stackChange:0,ops:[{name:"offset",type:"i32"}],operands:1,check:!0},n[r.Op.Helper]={name:"Helper",mnemonic:"ncall",before:null,stackChange:null,ops:[{name:"helper",type:"handle"}],operands:1,check:!0},n[r.Op.DynamicHelper]={name:"DynamicHelper",mnemonic:"dynamiccall",before:null,stackChange:null,ops:[],operands:0,check:!0},n[r.Op.SetNamedVariables]={name:"SetNamedVariables",mnemonic:"vsargs",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},n[r.Op.SetBlocks]={name:"SetBlocks",mnemonic:"vbblocks",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},n[r.Op.SetVariable]={name:"SetVariable",mnemonic:"sbvar",before:null,stackChange:-1,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},n[r.Op.SetBlock]={name:"SetBlock",mnemonic:"sblock",before:null,stackChange:-3,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},n[r.Op.GetVariable]={name:"GetVariable",mnemonic:"symload",before:null,stackChange:1,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},n[r.Op.GetProperty]={name:"GetProperty",mnemonic:"getprop",before:null,stackChange:0,ops:[{name:"property",type:"str"}],operands:1,check:!0},n[r.Op.GetBlock]={name:"GetBlock",mnemonic:"blockload",before:null,stackChange:1,ops:[{name:"block",type:"u32"}],operands:1,check:!0},n[r.Op.SpreadBlock]={name:"SpreadBlock",mnemonic:"blockspread",before:null,stackChange:2,ops:[],operands:0,check:!0},n[r.Op.HasBlock]={name:"HasBlock",mnemonic:"hasblockload",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.HasBlockParams]={name:"HasBlockParams",mnemonic:"hasparamsload",before:null,stackChange:-2,ops:[],operands:0,check:!0},n[r.Op.Concat]={name:"Concat",mnemonic:"concat",before:null,stackChange:null,ops:[{name:"count",type:"u32"}],operands:1,check:!0},n[r.Op.IfInline]={name:"IfInline",mnemonic:"ifinline",before:null,stackChange:-2,ops:[{name:"count",type:"u32"}],operands:1,check:!0},n[r.Op.Not]={name:"Not",mnemonic:"not",before:null,stackChange:0,ops:[{name:"count",type:"u32"}],operands:1,check:!0},n[r.Op.Constant]={name:"Constant",mnemonic:"rconstload",before:null,stackChange:1,ops:[{name:"constant",type:"unknown"}],operands:1,check:!0},n[r.Op.ConstantReference]={name:"ConstantReference",mnemonic:"rconstrefload",before:null,stackChange:1,ops:[{name:"constant",type:"unknown"}],operands:1,check:!0},n[r.Op.Primitive]={name:"Primitive",mnemonic:"pconstload",before:null,stackChange:1,ops:[{name:"constant",type:"primitive"}],operands:1,check:!0},n[r.Op.PrimitiveReference]={name:"PrimitiveReference",mnemonic:"ptoref",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.ReifyU32]={name:"ReifyU32",mnemonic:"reifyload",before:null,stackChange:1,ops:[],operands:0,check:!0},n[r.Op.Dup]={name:"Dup",mnemonic:"dup",before:null,stackChange:1,ops:[{name:"register",type:"u32"},{name:"offset",type:"u32"}],operands:2,check:!0},n[r.Op.Pop]={name:"Pop",mnemonic:"pop",before:null,stackChange:0,ops:[{name:"count",type:"u32"}],operands:1,check:!1},n[r.Op.Load]={name:"Load",mnemonic:"put",before:null,stackChange:-1,ops:[{name:"register",type:"u32"}],operands:1,check:!0} +n[r.Op.Fetch]={name:"Fetch",mnemonic:"regload",before:null,stackChange:1,ops:[{name:"register",type:"u32"}],operands:1,check:!0},n[r.Op.RootScope]={name:"RootScope",mnemonic:"rscopepush",before:null,stackChange:0,ops:[{name:"symbols",type:"u32"}],operands:1,check:!0},n[r.Op.VirtualRootScope]={name:"VirtualRootScope",mnemonic:"vrscopepush",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},n[r.Op.ChildScope]={name:"ChildScope",mnemonic:"cscopepush",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.PopScope]={name:"PopScope",mnemonic:"scopepop",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.Text]={name:"Text",mnemonic:"apnd_text",before:null,stackChange:0,ops:[{name:"contents",type:"str"}],operands:1,check:!0},n[r.Op.Comment]={name:"Comment",mnemonic:"apnd_comment",before:null,stackChange:0,ops:[{name:"contents",type:"str"}],operands:1,check:!0},n[r.Op.AppendHTML]={name:"AppendHTML",mnemonic:"apnd_dynhtml",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.AppendSafeHTML]={name:"AppendSafeHTML",mnemonic:"apnd_dynshtml",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.AppendDocumentFragment]={name:"AppendDocumentFragment",mnemonic:"apnd_dynfrag",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.AppendNode]={name:"AppendNode",mnemonic:"apnd_dynnode",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.AppendText]={name:"AppendText",mnemonic:"apnd_dyntext",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.OpenElement]={name:"OpenElement",mnemonic:"apnd_tag",before:null,stackChange:0,ops:[{name:"tag",type:"str"}],operands:1,check:!0},n[r.Op.OpenDynamicElement]={name:"OpenDynamicElement",mnemonic:"apnd_dyntag",before:null,stackChange:-1,ops:[],operands:0,check:!0},n[r.Op.PushRemoteElement]={name:"PushRemoteElement",mnemonic:"apnd_remotetag",before:null,stackChange:-3,ops:[],operands:0,check:!0},n[r.Op.StaticAttr]={name:"StaticAttr",mnemonic:"apnd_attr",before:null,stackChange:0,ops:[{name:"name",type:"str"},{name:"value",type:"str"},{name:"namespace",type:"option-str"}],operands:3,check:!0},n[r.Op.DynamicAttr]={name:"DynamicAttr",mnemonic:"apnd_dynattr",before:null,stackChange:-1,ops:[{name:"name",type:"str"},{name:"trusting",type:"bool"},{name:"namespace",type:"option-str"}],operands:3,check:!0},n[r.Op.ComponentAttr]={name:"ComponentAttr",mnemonic:"apnd_cattr",before:null,stackChange:-1,ops:[{name:"name",type:"str"},{name:"trusting",type:"bool"},{name:"namespace",type:"option-str"}],operands:3,check:!0},n[r.Op.FlushElement]={name:"FlushElement",mnemonic:"apnd_flushtag",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.CloseElement]={name:"CloseElement",mnemonic:"apnd_closetag",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.PopRemoteElement]={name:"PopRemoteElement",mnemonic:"apnd_closeremotetag",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.Modifier]={name:"Modifier",mnemonic:"apnd_modifier",before:null,stackChange:-1,ops:[{name:"helper",type:"handle"}],operands:1,check:!0},n[r.Op.BindDynamicScope]={name:"BindDynamicScope",mnemonic:"setdynscope",before:null,stackChange:null,ops:[{name:"names",type:"str-array"}],operands:1,check:!0},n[r.Op.PushDynamicScope]={name:"PushDynamicScope",mnemonic:"dynscopepush",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.PopDynamicScope]={name:"PopDynamicScope",mnemonic:"dynscopepop",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.CompileBlock]={name:"CompileBlock",mnemonic:"cmpblock",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.PushBlockScope]={name:"PushBlockScope",mnemonic:"scopeload",before:null,stackChange:1,ops:[{name:"scope",type:"scope"}],operands:1,check:!0},n[r.Op.PushSymbolTable]={name:"PushSymbolTable",mnemonic:"dsymload",before:null,stackChange:1,ops:[{name:"table",type:"symbol-table"}],operands:1,check:!0},n[r.Op.InvokeYield]={name:"InvokeYield",mnemonic:"invokeyield",before:null,stackChange:null,ops:[],operands:0,check:!0},n[r.Op.JumpIf]={name:"JumpIf",mnemonic:"iftrue",before:null,stackChange:-1,ops:[{name:"to",type:"u32"}],operands:1,check:!0} +n[r.Op.JumpUnless]={name:"JumpUnless",mnemonic:"iffalse",before:null,stackChange:-1,ops:[{name:"to",type:"u32"}],operands:1,check:!0},n[r.Op.JumpEq]={name:"JumpEq",mnemonic:"ifeq",before:null,stackChange:0,ops:[{name:"to",type:"i32"},{name:"comparison",type:"i32"}],operands:2,check:!0},n[r.Op.AssertSame]={name:"AssertSame",mnemonic:"assert_eq",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.Enter]={name:"Enter",mnemonic:"blk_start",before:null,stackChange:0,ops:[{name:"args",type:"u32"}],operands:1,check:!0},n[r.Op.Exit]={name:"Exit",mnemonic:"blk_end",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.ToBoolean]={name:"ToBoolean",mnemonic:"anytobool",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.EnterList]={name:"EnterList",mnemonic:"list_start",before:null,stackChange:null,ops:[{name:"address",type:"u32"},{name:"address",type:"u32"}],operands:2,check:!0},n[r.Op.ExitList]={name:"ExitList",mnemonic:"list_end",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.Iterate]={name:"Iterate",mnemonic:"iter",before:null,stackChange:0,ops:[{name:"end",type:"u32"}],operands:1,check:!1},n[r.Op.Main]={name:"Main",mnemonic:"main",before:null,stackChange:-2,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.ContentType]={name:"ContentType",mnemonic:"ctload",before:null,stackChange:1,ops:[],operands:0,check:!0},n[r.Op.DynamicContentType]={name:"DynamicContentType",mnemonic:"dctload",before:null,stackChange:1,ops:[],operands:0,check:!0},n[r.Op.Curry]={name:"Curry",mnemonic:"curry",before:null,stackChange:null,ops:[{name:"type",type:"u32"},{name:"is-strict",type:"bool"}],operands:2,check:!0},n[r.Op.PushComponentDefinition]={name:"PushComponentDefinition",mnemonic:"cmload",before:null,stackChange:1,ops:[{name:"spec",type:"handle"}],operands:1,check:!0},n[r.Op.PushDynamicComponentInstance]={name:"PushDynamicComponentInstance",mnemonic:"dciload",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.ResolveDynamicComponent]={name:"ResolveDynamicComponent",mnemonic:"cdload",before:null,stackChange:0,ops:[{name:"owner",type:"owner"}],operands:1,check:!0},n[r.Op.PushArgs]={name:"PushArgs",mnemonic:"argsload",before:null,stackChange:null,ops:[{name:"names",type:"str-array"},{name:"block-names",type:"str-array"},{name:"flags",type:"u32"}],operands:3,check:!0},n[r.Op.PushEmptyArgs]={name:"PushEmptyArgs",mnemonic:"emptyargsload",before:null,stackChange:1,ops:[],operands:0,check:!0},n[r.Op.PopArgs]={name:"PopArgs",mnemonic:"argspop",before:null,stackChange:null,ops:[],operands:0,check:!0},n[r.Op.PrepareArgs]={name:"PrepareArgs",mnemonic:"argsprep",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!1},n[r.Op.CaptureArgs]={name:"CaptureArgs",mnemonic:"argscapture",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.CreateComponent]={name:"CreateComponent",mnemonic:"comp_create",before:null,stackChange:0,ops:[{name:"flags",type:"u32"},{name:"state",type:"register"}],operands:2,check:!0},n[r.Op.RegisterComponentDestructor]={name:"RegisterComponentDestructor",mnemonic:"comp_dest",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.PutComponentOperations]={name:"PutComponentOperations",mnemonic:"comp_elops",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.GetComponentSelf]={name:"GetComponentSelf",mnemonic:"comp_selfload",before:null,stackChange:1,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.GetComponentTagName]={name:"GetComponentTagName",mnemonic:"comp_tagload",before:null,stackChange:1,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.GetComponentLayout]={name:"GetComponentLayout",mnemonic:"comp_layoutload",before:null,stackChange:2,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.BindEvalScope]={name:"BindEvalScope",mnemonic:"eval_scope",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.SetupForEval]={name:"SetupForEval",mnemonic:"eval_setup",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.PopulateLayout]={name:"PopulateLayout",mnemonic:"comp_layoutput",before:null,stackChange:-2,ops:[{name:"state",type:"register"}],operands:1,check:!0} +n[r.Op.InvokeComponentLayout]={name:"InvokeComponentLayout",mnemonic:"comp_invokelayout",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.BeginComponentTransaction]={name:"BeginComponentTransaction",mnemonic:"comp_begin",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.CommitComponentTransaction]={name:"CommitComponentTransaction",mnemonic:"comp_commit",before:null,stackChange:0,ops:[],operands:0,check:!0},n[r.Op.DidCreateElement]={name:"DidCreateElement",mnemonic:"comp_created",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.DidRenderLayout]={name:"DidRenderLayout",mnemonic:"comp_rendered",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},n[r.Op.ResolveMaybeLocal]={name:"ResolveMaybeLocal",mnemonic:"eval_varload",before:null,stackChange:1,ops:[{name:"local",type:"str"}],operands:1,check:!0},n[r.Op.Debugger]={name:"Debugger",mnemonic:"debugger",before:null,stackChange:0,ops:[{name:"symbols",type:"str-array"},{name:"debugInfo",type:"array"}],operands:2,check:!0} +const o=e.OPERAND_TYPES=["u32","i32","owner","handle","str","option-str","array","str-array","bool","primitive","register","unknown","symbol-table","scope"] +function s(e,t){let r +if(void 0===t.format)throw new Error(`Missing format in ${JSON.stringify(t)}`) +r=Array.isArray(t.format)?t.format[0]:t.format +let n=Array.isArray(t.format)?function(e){if(!Array.isArray(e))throw new Error(`Expected operands array, got ${JSON.stringify(e)}`) +return e.map(u)}(t.format.slice(1)):[] +return{name:r,mnemonic:e,before:null,stackChange:a(t["operand-stack"]),ops:n,operands:n.length,check:!0!==t.skip}}function a(e){if(void 0===e)return 0 +let t=e[0],r=e[1] +return l(t)||l(r)?null:r.length-t.length}function l(e){if(!Array.isArray(e))throw new Error(`Unexpected stack entry: ${JSON.stringify(e)}`) +return e.some((e=>"..."===e.slice(-3)))}function u(e){let[t,r]=e.split(":") +if(n=r,-1!==o.indexOf(n))return{name:t,type:r} +throw new Error(`Expected operand, found ${JSON.stringify(e)}`) +var n}function c(e){let t=Object.create(null) +for(const[r,n]of Object.entries(e))t[r]=s(r,n) +return t}function p(e,...t){let r="" +for(let o=0;oh(e,t))).join(", ")}]` +let r=["{"] +for(let n of Object.keys(e))r.push(`${" ".repeat(t+2)}${n}: ${h(e[n],t+2)},`) +return r.push(`${" ".repeat(t)}}`),r.join("\n")}class f{constructor(e){this.expectedType=e}validate(e){return typeof e===this.expectedType}expected(){return`typeof ${this.expectedType}`}}class m{constructor(e){this.Class=e}validate(e){return!!e&&e instanceof this.Class}expected(){return`an instance of ${this.Class.name}`}}class g{constructor(e,t){this.checker=e,this.emptyValue=t}validate(e){return e===this.emptyValue||this.checker.validate(e)}expected(){return`${this.checker.expected()} or null`}}class b{constructor(e){this.checker=e}validate(e){return null==e||this.checker.validate(e)}expected(){return`${this.checker.expected()} or null or undefined`}}class y{constructor(e,t){this.left=e,this.right=t}validate(e){return this.left.validate(e)||this.right.validate(e)}expected(){return`${this.left.expected()} or ${this.right.expected()}`}}class v{constructor(e,t){this.value=e,this.desc=t}validate(e){return e===this.value}expected(){return this.desc}}class _{constructor(e){this.checkers=e}validate(e){return"object"==typeof e&&(null!=e&&Object.entries(this.checkers).every((([t,r])=>t in e&&r.validate(e[t]))))}expected(){return`{ ${Object.entries(this.checkers).map((([e,t])=>`${e}: ${t.expected()}`)).join(",")} }`}}class O{constructor(e){this.checker=e}validate(e){return null!=e&&(!!Array.isArray(e)&&e.every((e=>this.checker.validate(e))))}expected(){return`Array<${this.checker.expected()}>`}}class w{constructor(e){this.checker=e}validate(e){if(!("object"==typeof e&&null!==e&&null===Object.getPrototypeOf(e)))return!1 +let{checker:t}=this +for(let r in e)if(!t.validate(e[r]))return!1 +return!0}expected(){return"a primitive"}}function E(e){return new _(e)}function C(e){return new O(e)}function k(e,t){return`Got ${e}, expected:\n${t}`}let T=0 +e.CheckPrimitive=new class{validate(e){return"string"!=typeof e||"number"==typeof e||"string"==typeof e||null==e}expected(){return"a primitive"}},e.CheckFunction=new f("function") +const R=e.CheckNumber=new f("number"),S=e.CheckBoolean=new f("boolean"),P=(e.CheckHandle=R,e.CheckString=new f("string")),A=(e.CheckNull=new class{validate(e){return null===e}expected(){return"null"}},e.CheckUndefined=new class{validate(e){return void 0===e}expected(){return"undefined"}},e.CheckUnknown=new class{constructor(){this.type=void 0}validate(e){return!0}expected(){return"any"}}) +e.CheckSafeString=new class{validate(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}expected(){return"SafeString"}},e.CheckObject=new class{validate(e){return"function"==typeof e||"object"==typeof e&&null!==e}expected(){return"an object or function (valid WeakMap key)"}} +function x(e,t=String(e)){return new v(e,t)}e.CheckBlockSymbolTable=E({parameters:C(R)}),e.CheckProgramSymbolTable=E({hasEval:S,symbols:C(P)}),e.CheckElement=E({nodeType:x(1),tagName:P,nextSibling:A}),e.CheckDocumentFragment=E({nodeType:x(11),nextSibling:A}),e.CheckNode=E({nodeType:R,nextSibling:A})})),e("@glimmer/destroyable",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e._hasDestroyableChildren=function(e){let t=i.get(e) +return void 0!==t&&null!==t.children},e.assertDestroyablesDestroyed=void 0,e.associateDestroyableChild=function(e,t){0 +let r=l(e),n=l(t) +return r.children=o(r.children,t),n.parents=o(n.parents,e),t},e.destroy=u,e.destroyChildren=function(e){let{children:t}=l(e) +s(t,u)},e.enableDestroyableTracking=void 0,e.isDestroyed=function(e){let t=i.get(e) +return void 0!==t&&t.state>=n.Destroyed},e.isDestroying=c,e.registerDestructor=function(e,t,r=!1){0 +let n=l(e),i=!0===r?"eagerDestructors":"destructors" +return n[i]=o(n[i],t),t},e.unregisterDestructor=function(e,t,r=!1){0 +let n=l(e),i=!0===r?"eagerDestructors":"destructors" +n[i]=a(n[i],t,!1)} +var n=function(e){return e[e.Live=0]="Live",e[e.Destroying=1]="Destroying",e[e.Destroyed=2]="Destroyed",e}(n||{}) +let i=new WeakMap +function o(e,t){return null===e?t:Array.isArray(e)?(e.push(t),e):[e,t]}function s(e,t){Array.isArray(e)?e.forEach(t):null!==e&&t(e)}function a(e,t,r){if(Array.isArray(e)&&e.length>1){let r=e.indexOf(t) +return e.splice(r,1),e}return null}function l(e){let t=i.get(e) +return void 0===t&&(t={parents:null,children:null,eagerDestructors:null,destructors:null,state:n.Live},i.set(e,t)),t}function u(e){let r=l(e) +if(r.state>=n.Destroying)return +let{parents:i,children:o,eagerDestructors:c,destructors:p}=r +r.state=n.Destroying,s(o,u),s(c,(t=>t(e))),s(p,(r=>(0,t.scheduleDestroy)(e,r))),(0,t.scheduleDestroyed)((()=>{s(i,(t=>function(e,t){let r=l(t) +r.state===n.Live&&(r.children=a(r.children,e))}(e,t))),r.state=n.Destroyed}))}function c(e){let t=i.get(e) +return void 0!==t&&t.state>=n.Destroying}e.enableDestroyableTracking=void 0,e.assertDestroyablesDestroyed=void 0})),e("@glimmer/encoder",["exports","@glimmer/vm"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.InstructionEncoderImpl=void 0 +e.InstructionEncoderImpl=class{constructor(e){this.size=0,this.buffer=e}encode(e,r,...n){if(e>t.TYPE_SIZE)throw new Error(`Opcode type over 8-bits. Got ${e}.`) +let i=e|r|arguments.length-2<{} +e.scheduleRevalidate=t +let r=e.scheduleDestroy=void 0,n=e.scheduleDestroyed=void 0,i=e.toIterator=void 0,o=e.toBool=void 0,s=e.getProp=void 0,a=e.setProp=void 0,l=e.getPath=void 0,u=e.setPath=void 0,c=e.warnIfStyleNotTrusted=void 0,p=e.assert=void 0,d=e.deprecate=void 0 +e.assertGlobalContextWasSet=void 0,e.testOverrideGlobalContext=void 0})),e("@glimmer/manager",["exports","@glimmer/util","@glimmer/destroyable","@glimmer/reference","@glimmer/validator","@glimmer/debug","@glimmer/vm"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.CustomModifierManager=e.CustomHelperManager=e.CustomComponentManager=void 0,e.capabilityFlagsFrom=function(e){return f|m(e,"dynamicLayout")|m(e,"dynamicTag")|m(e,"prepareArgs")|m(e,"createArgs")|m(e,"attributeHook")|m(e,"elementHook")|m(e,"dynamicScope")|m(e,"createCaller")|m(e,"updateHook")|m(e,"createInstance")|m(e,"wrapped")|m(e,"willDestroy")|m(e,"hasSubOwner")},e.componentCapabilities=function(e,t={}){0 +let r=Boolean(t.updateHook) +return h({asyncLifeCycleCallbacks:Boolean(t.asyncLifecycleCallbacks),destructor:Boolean(t.destructor),updateHook:r})},e.getComponentTemplate=function(e){let t=e +for(;null!==t;){let e=I.get(t) +if(void 0!==e)return e +t=F(t)}return},e.getCustomTagFor=function(e){return a.get(e)},e.getInternalComponentManager=function(e,t){0 +const r=k(_,e) +if(void 0===r&&!0===t)return null +return r},e.getInternalHelperManager=function(e,t){0 +let r=k(w,e) +void 0===r&&"function"==typeof e&&(r=S) +if(r)return r +if(!0===t)return null +return null},e.getInternalModifierManager=function(e,t){0 +const r=k(O,e) +if(void 0===r&&!0===t)return null +return r},e.hasCapability=function(e,t){return(0,o.check)(e,o.CheckNumber),!!(e&t)},e.hasDestroyable=b,e.hasInternalComponentManager=function(e){return void 0!==k(_,e)},e.hasInternalHelperManager=function(e){return function(e){return"function"==typeof e}(e)||void 0!==k(w,e)},e.hasInternalModifierManager=function(e){return void 0!==k(O,e)},e.hasValue=g,e.helperCapabilities=function(e,t={}){0 +0 +0 +return h({hasValue:Boolean(t.hasValue),hasDestroyable:Boolean(t.hasDestroyable),hasScheduledEffect:Boolean(t.hasScheduledEffect)})},e.managerHasCapability=function(e,t,r){return(0,o.check)(t,o.CheckNumber),!!(t&r)},e.modifierCapabilities=function(e,t={}){0 +return h({disableAutoTracking:Boolean(t.disableAutoTracking)})},e.setComponentManager=function(e,t){return P(new N(e),t)},e.setComponentTemplate=function(e,t){0 +0 +return I.set(t,e),t},e.setCustomTagFor=l,e.setHelperManager=function(e,t){return R(new y(e),t)},e.setInternalComponentManager=P,e.setInternalHelperManager=R,e.setInternalModifierManager=T,e.setModifierManager=function(e,t){return T(new j(e),t)} +const a=new WeakMap +function l(e,t){a.set(e,t)}function u(e){if("symbol"==typeof e)return null +const t=Number(e) +return isNaN(t)?null:t%1==0?t:null}class c{constructor(e){this.named=e}get(e,t){const r=this.named[t] +if(void 0!==r)return(0,n.valueForRef)(r)}has(e,t){return t in this.named}ownKeys(){return Object.keys(this.named)}isExtensible(){return!1}getOwnPropertyDescriptor(e,t){return{enumerable:!0,configurable:!0}}}class p{constructor(e){this.positional=e}get(e,t){let{positional:r}=this +if("length"===t)return r.length +const i=u(t) +return null!==i&&i{const{named:r,positional:o}=e +const s=new c(r),a=new p(o),d=Object.create(null) +const h=new Proxy(d,s),f=new Proxy([],a) +return l(h,((e,t)=>function(e,t){return(0,i.track)((()=>{t in e&&(0,n.valueForRef)(e[t])}))}(r,t))),l(f,((e,t)=>function(e,t){return(0,i.track)((()=>{"[]"===t&&e.forEach(n.valueForRef) +const r=u(t) +null!==r&&r{let o=this.getDelegateFor(i) +const s=d(t),a=o.createHelper(e,s) +if(g(o)){let e=(0,n.createComputeRef)((()=>o.getValue(a)),null,!1) +return b(o)&&(0,r.associateDestroyableChild)(e,o.getDestroyable(a)),e}if(b(o)){let e=(0,n.createConstRef)(void 0,!1) +return(0,r.associateDestroyableChild)(e,o.getDestroyable(a)),e}return n.UNDEFINED_REFERENCE}}}e.CustomHelperManager=y +class v{constructor(){this.capabilities={hasValue:!0,hasDestroyable:!1,hasScheduledEffect:!1}}createHelper(e,t){return{fn:e,args:t}}getValue({fn:e,args:t}){if(Object.keys(t.named).length>0){return e(...[...t.positional,t.named])}return e(...t.positional)}getDebugName(e){return e.name?`(helper function ${e.name})`:"(anonymous helper function)"}}const _=new WeakMap,O=new WeakMap,w=new WeakMap,E=Object.getPrototypeOf +function C(e,t,r){return e.set(r,t),r}function k(e,t){let r=t +for(;null!=r;){const t=e.get(r) +if(void 0!==t)return t +r=E(r)}}function T(e,t){return C(O,e,t)}function R(e,t){return C(w,e,t)}const S=new y((()=>new v)) +function P(e,t){return C(_,e,t)}const A={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +function x(e){return e.capabilities.asyncLifeCycleCallbacks}function M(e){return e.capabilities.updateHook}class N{constructor(e){this.componentManagerDelegates=new WeakMap,this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) +if(void 0===r){let{factory:n}=this +r=n(e),t.set(e,r)}return r}create(e,t,r){let n=this.getDelegateFor(e),i=d(r.capture()),o=n.createComponent(t,i) +return new D(o,n,i)}getDebugName(e){return"function"==typeof e?e.name:e.toString()}update(e){let{delegate:t}=e +if(M(t)){let{component:r,args:n}=e +t.updateComponent(r,n)}}didCreate({component:e,delegate:t}){x(t)&&t.didCreateComponent(e)}didUpdate({component:e,delegate:t}){(function(e){return x(e)&&M(e)})(t)&&t.didUpdateComponent(e)}didRenderLayout(){}didUpdateLayout(){}getSelf({component:e,delegate:t}){return(0,n.createConstRef)(t.getContext(e),"this")}getDestroyable(e){const{delegate:t}=e +if(function(e){return e.capabilities.destructor}(t)){const{component:n}=e +return(0,r.registerDestructor)(e,(()=>t.destroyComponent(n))),e}return null}getCapabilities(){return A}}e.CustomComponentManager=N +class D{constructor(e,t,r){this.component=e,this.delegate=t,this.args=r}}class j{constructor(e){this.componentManagerDelegates=new WeakMap,this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) +if(void 0===r){let{factory:n}=this +r=n(e),t.set(e,r)}return r}create(e,t,n,o){let s,a=this.getDelegateFor(e),l=d(o),u=a.createModifier(n,l) +return s={tag:(0,i.createUpdatableTag)(),element:t,delegate:a,args:l,modifier:u},(0,r.registerDestructor)(s,(()=>a.destroyModifier(u,l))),s}getDebugName(e){return"function"==typeof e?e.name||e.toString():""}getDebugInstance({modifier:e}){return e}getTag({tag:e}){return e}install({element:e,args:r,modifier:n,delegate:o}){let{capabilities:s}=o +!0===s.disableAutoTracking?(0,i.untrack)((()=>o.installModifier(n,(0,t.castToBrowser)(e,"ELEMENT"),r))):o.installModifier(n,(0,t.castToBrowser)(e,"ELEMENT"),r)}update({args:e,modifier:t,delegate:r}){let{capabilities:n}=r +!0===n.disableAutoTracking?(0,i.untrack)((()=>r.updateModifier(t,e))):r.updateModifier(t,e)}getDestroyable(e){return e}}e.CustomModifierManager=j +const I=new WeakMap,F=Object.getPrototypeOf})),e("@glimmer/node",["exports","@glimmer/runtime","@simple-dom/document"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.NodeDOMTreeConstruction=void 0,e.serializeBuilder=function(e,t){return o.forInitialRender(e,t)} +class n extends t.DOMTreeConstruction{constructor(e){super(e||(0,r.default)())}setupUselessElement(){}insertHTMLBefore(e,r,n){let i=this.document.createRawHTMLSection(n) +return e.insertBefore(i,r),new t.ConcreteBounds(e,i,i)}createElement(e){return this.document.createElement(e)}setAttribute(e,t,r){e.setAttribute(t,r)}}e.NodeDOMTreeConstruction=n +const i=new WeakMap +class o extends t.NewElementBuilder{constructor(...e){super(...e),this.serializeBlockDepth=0}__openBlock(){let{tagName:e}=this.element +if("TITLE"!==e&&"SCRIPT"!==e&&"STYLE"!==e){let e=this.serializeBlockDepth++ +this.__appendComment(`%+b:${e}%`)}super.__openBlock()}__closeBlock(){let{tagName:e}=this.element +if(super.__closeBlock(),"TITLE"!==e&&"SCRIPT"!==e&&"STYLE"!==e){let e=--this.serializeBlockDepth +this.__appendComment(`%-b:${e}%`)}}__appendHTML(e){let{tagName:r}=this.element +if("TITLE"===r||"SCRIPT"===r||"STYLE"===r)return super.__appendHTML(e) +let n=this.__appendComment("%glmr%") +if("TABLE"===r){let t=e.indexOf("<") +if(t>-1){"tr"===e.slice(t+1,t+3)&&(e=`${e}`)}}""===e?this.__appendComment("% %"):super.__appendHTML(e) +let i=this.__appendComment("%glmr%") +return new t.ConcreteBounds(this.element,n,i)}__appendText(e){let{tagName:t}=this.element,r=function(e){let{element:t,nextSibling:r}=e +return null===r?t.lastChild:r.previousSibling}(this) +return"TITLE"===t||"SCRIPT"===t||"STYLE"===t?super.__appendText(e):""===e?this.__appendComment("% %"):(r&&3===r.nodeType&&this.__appendComment("%|%"),super.__appendText(e))}closeElement(){return i.has(this.element)&&(i.delete(this.element),super.closeElement()),super.closeElement()}openElement(e){return"tr"===e&&"TBODY"!==this.element.tagName&&"THEAD"!==this.element.tagName&&"TFOOT"!==this.element.tagName&&(this.openElement("tbody"),i.set(this.constructing,!0),this.flushElement(null)),super.openElement(e)}pushRemoteElement(e,t,r=null){let{dom:n}=this,i=n.createElement("script") +return i.setAttribute("glmr",t),n.insertBefore(e,i,r),super.pushRemoteElement(e,t,r)}}})),e("@glimmer/opcode-compiler",["exports","@glimmer/util","@glimmer/debug","@glimmer/vm","@glimmer/encoder","@glimmer/wire-format","@glimmer/manager"],(function(e,t,r,n,i,o,s){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.WrappedBuilder=e.StdLib=e.MINIMAL_CAPABILITIES=e.EMPTY_BLOCKS=e.DEFAULT_CAPABILITIES=e.CompileTimeCompilationContextImpl=void 0,e.compilable=fe,e.compileStatements=me,e.compileStd=re,e.debugCompiler=void 0,e.invokeStaticBlock=V,e.invokeStaticBlockWithStack=z,e.meta=B,e.programCompilationContext=function(e,t,r){return new oe(e,t,r)},e.templateCacheCounters=void 0,e.templateCompilationContext=se,e.templateFactory=function({id:e,moduleName:t,block:r,scope:n,isStrictMode:i}){let o,s=e||"client-"+be++,a=null,l=new WeakMap,u=e=>{if(void 0===o&&(o=JSON.parse(r)),void 0===e)return null===a?(ye.cacheMiss++,a=new ve({id:s,block:o,moduleName:t,owner:null,scope:n,isStrictMode:i})):ye.cacheHit++,a +let u=l.get(e) +return void 0===u?(ye.cacheMiss++,u=new ve({id:s,block:o,moduleName:t,owner:e,scope:n,isStrictMode:i}),l.set(e,u)):ye.cacheHit++,u} +return u.__id=s,u.__meta={moduleName:t},u} +e.debugCompiler=void 0 +function a(e){return t=>{if(!function(e){return Array.isArray(e)&&2===e.length}(t))return!1 +let r=t[0] +return r===o.SexpOpcodes.GetStrictKeyword||r===o.SexpOpcodes.GetLexicalSymbol||r===e}}const l=a(o.SexpOpcodes.GetFreeAsComponentHead),u=a(o.SexpOpcodes.GetFreeAsModifierHead),c=a(o.SexpOpcodes.GetFreeAsHelperHead),p=a(o.SexpOpcodes.GetFreeAsComponentOrHelperHead) +function d(e,r,n,i,o){let{upvars:s}=n,a=(0,t.unwrap)(s[e[1]]),l=r.lookupBuiltInHelper(a) +return i.helper(l,a)}const h={Modifier:1003,Component:1004,Helper:1005,ComponentOrHelper:1007,OptionalComponentOrHelper:1008,Local:1010,TemplateLocal:1011},f={Label:1e3,StartLabels:1001,StopLabels:1002,Start:1e3,End:1002},m={Label:1,IsStrictMode:2,DebugSymbols:3,Block:4,StdLib:5,NonSmallInt:6,SymbolTable:7,Layout:8} +function g(e){return{type:m.Label,value:e}}function b(){return{type:m.IsStrictMode,value:void 0}}function y(e){return{type:m.StdLib,value:e}}function v(e){return{type:m.SymbolTable,value:e}}function _(e){return{type:m.Layout,value:e}}class O{constructor(){this.labels=(0,t.dict)(),this.targets=[]}label(e,t){this.labels[e]=t}target(e,t){this.targets.push({at:e,target:t})}patch(e){let{targets:r,labels:n}=this +for(const{at:i,target:o}of r){let r=n[o]-i;(0,t.assert)(-1===e.getbyaddr(i),"Expected heap to contain a placeholder, but it did not"),e.setbyaddr(i,r)}}}function w(e,r,n,i,s){if(function(e){return e=0;a--){let r=(0,t.unwrap)(o[a]) +e(f.Label,r.label),e(n.Op.Pop,1),r.callback(),0!==a&&e(n.MachineOp.Jump,g("END"))}e(f.Label,"END"),e(f.StopLabels),e(n.Op.Exit)}function W(e,t,r){e(f.StartLabels),e(n.MachineOp.PushFrame),e(n.MachineOp.ReturnTo,g("ENDINITIAL")) +let i=t() +e(n.Op.Enter,i),r(),e(f.Label,"FINALLY"),e(n.Op.Exit),e(n.MachineOp.Return),e(f.Label,"ENDINITIAL"),e(n.MachineOp.PopFrame),e(f.StopLabels)}function Y(e,t,r,i){return W(e,t,(()=>{e(n.Op.JumpUnless,g("ELSE")),r(),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"ELSE"),void 0!==i&&i()}))}D.add(o.SexpOpcodes.Concat,((e,[,t])=>{for(let r of t)I(e,r) +e(n.Op.Concat,t.length)})),D.add(o.SexpOpcodes.Call,((e,[,t,r,n])=>{c(t)?e(h.Helper,t,(t=>{A(e,t,r,n)})):(I(e,t),x(e,r,n))})),D.add(o.SexpOpcodes.Curry,((e,[,t,r,n,i])=>{M(e,r,t,n,i)})),D.add(o.SexpOpcodes.GetSymbol,((e,[,t,r])=>{e(n.Op.GetVariable,t),j(e,r)})),D.add(o.SexpOpcodes.GetLexicalSymbol,((e,[,t,r])=>{e(h.TemplateLocal,t,(t=>{e(n.Op.ConstantReference,t),j(e,r)}))})),D.add(o.SexpOpcodes.GetStrictKeyword,((e,t)=>{e(h.Local,t[1],(r=>{e(h.Helper,t,(t=>{A(e,t,null,null)}))}))})),D.add(o.SexpOpcodes.GetFreeAsHelperHead,((e,t)=>{e(h.Local,t[1],(r=>{e(h.Helper,t,(t=>{A(e,t,null,null)}))}))})),D.add(o.SexpOpcodes.Undefined,(e=>S(e,void 0))),D.add(o.SexpOpcodes.HasBlock,((e,[,t])=>{I(e,t),e(n.Op.HasBlock)})),D.add(o.SexpOpcodes.HasBlockParams,((e,[,t])=>{I(e,t),e(n.Op.SpreadBlock),e(n.Op.CompileBlock),e(n.Op.HasBlockParams)})),D.add(o.SexpOpcodes.IfInline,((e,[,t,r,i])=>{I(e,i),I(e,r),I(e,t),e(n.Op.IfInline)})),D.add(o.SexpOpcodes.Not,((e,[,t])=>{I(e,t),e(n.Op.Not)})),D.add(o.SexpOpcodes.GetDynamicVar,((e,[,t])=>{I(e,t),e(n.Op.GetDynamicVar)})),D.add(o.SexpOpcodes.Log,((e,[,t])=>{e(n.MachineOp.PushFrame),F(e,t,null,!1),e(n.Op.Log),e(n.MachineOp.PopFrame),e(n.Op.Fetch,n.$v0)})) +const Q="&attrs" +function K(e,r,i,o,a,l){let{compilable:u,capabilities:c,handle:p}=r,d=i?[i,[]]:null,h=Array.isArray(l)||null===l?R(l):l +u?(e(n.Op.PushComponentDefinition,p),function(e,{capabilities:r,layout:i,elementBlock:o,positional:a,named:l,blocks:u}){let{symbolTable:c}=i,p=c.hasEval||(0,s.hasCapability)(r,n.InternalComponentCapabilities.prepareArgs) +if(p)return void X(e,{capabilities:r,elementBlock:o,positional:a,named:l,atNames:!0,blocks:u,layout:i}) +e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame) +let{symbols:d}=c,h=[],f=[],m=[],g=u.names +if(null!==o){let t=d.indexOf(Q);-1!==t&&($(e,o),h.push(t))}for(const t of g){let r=d.indexOf(`&${t}`);-1!==r&&($(e,u.get(t)),h.push(r))}if((0,s.hasCapability)(r,n.InternalComponentCapabilities.createArgs)){let r=L(e,a)<<4 +r|=8 +let i=t.EMPTY_STRING_ARRAY +if(null!==l){i=l[0] +let r=l[1] +for(let n=0;n0?1:0),e(n.Op.SetVariable,0) +for(const s of(0,t.reverse)(f))-1===s?e(n.Op.Pop,1):e(n.Op.SetVariable,s+1) +null!==a&&e(n.Op.Pop,a.length) +for(const s of(0,t.reverse)(h))e(n.Op.SetBlock,s+1) +e(n.Op.Constant,_(i)),e(n.Op.CompileBlock),e(n.MachineOp.InvokeVirtual),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),(0,s.hasCapability)(r,n.InternalComponentCapabilities.dynamicScope)&&e(n.Op.PopDynamicScope) +e(n.Op.CommitComponentTransaction),e(n.Op.Load,n.$s0)}(e,{capabilities:c,layout:u,elementBlock:d,positional:o,named:a,blocks:h})):(e(n.Op.PushComponentDefinition,p),X(e,{capabilities:c,elementBlock:d,positional:o,named:a,atNames:!0,blocks:h}))}function J(e,t,r,i,o,s,a,l){let u=r?[r,[]]:null,c=Array.isArray(s)||null===s?R(s):s +W(e,(()=>(I(e,t),e(n.Op.Dup,n.$sp,0),2)),(()=>{e(n.Op.JumpUnless,g("ELSE")),l?e(n.Op.ResolveCurriedComponent):e(n.Op.ResolveDynamicComponent,b()),e(n.Op.PushDynamicComponentInstance),X(e,{capabilities:!0,elementBlock:u,positional:i,named:o,atNames:a,blocks:c}),e(f.Label,"ELSE")}))}function X(e,{capabilities:r,elementBlock:i,positional:o,named:a,atNames:l,blocks:u,layout:c}){let p=!!u,d=!0===r||(0,s.hasCapability)(r,n.InternalComponentCapabilities.prepareArgs)||!(!a||0===a[0].length),h=u.with("attrs",i) +e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame),function(e,r,i,o,s){let a=o.names +for(const t of a)$(e,o.get(t)) +let l=L(e,r)<<4 +s&&(l|=8),o&&(l|=7) +let u=t.EMPTY_ARRAY +if(i){u=i[0] +let t=i[1] +for(let r=0;r{c?(e(n.Op.PushSymbolTable,v(c.symbolTable)),e(n.Op.Constant,_(c)),e(n.Op.CompileBlock)):e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}function Z(e,t,r){e(f.StartLabels),function(e,t,r){e(n.Op.Fetch,t),r(),e(n.Op.Load,t)}(e,n.$s1,(()=>{e(n.Op.GetComponentTagName,n.$s0),e(n.Op.PrimitiveReference),e(n.Op.Dup,n.$sp,0)})),e(n.Op.JumpUnless,g("BODY")),e(n.Op.Fetch,n.$s1),e(n.Op.PutComponentOperations),e(n.Op.OpenDynamicElement),e(n.Op.DidCreateElement,n.$s0),H(e,r,null),e(n.Op.FlushElement),e(f.Label,"BODY"),V(e,[t.block[0],[]]),e(n.Op.Fetch,n.$s1),e(n.Op.JumpUnless,g("END")),e(n.Op.CloseElement),e(f.Label,"END"),e(n.Op.Load,n.$s1),e(f.StopLabels)}function ee(e,t,r,i,o=null){e(n.Op.BeginComponentTransaction,n.$s0),e(n.Op.PushDynamicScope),e(n.Op.CreateComponent,0|t,n.$s0),o&&o(),e(n.Op.RegisterComponentDestructor,n.$s0),e(n.Op.GetComponentSelf,n.$s0),e(n.Op.VirtualRootScope,n.$s0),e(n.Op.SetVariable,0),e(n.Op.SetupForEval,n.$s0),i&&e(n.Op.SetNamedVariables,n.$s0),r&&e(n.Op.SetBlocks,n.$s0),e(n.Op.Pop,1),e(n.Op.InvokeComponentLayout,n.$s0),e(n.Op.DidRenderLayout,n.$s0),e(n.MachineOp.PopFrame),e(n.Op.PopScope),e(n.Op.PopDynamicScope),e(n.Op.CommitComponentTransaction)}function te(e,t,r){G(e,(()=>e(n.Op.ContentType)),(i=>{i(n.ContentType.String,(()=>{t?(e(n.Op.AssertSame),e(n.Op.AppendHTML)):e(n.Op.AppendText)})),"number"==typeof r?(i(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),function(e){e(n.Op.Fetch,n.$s0),e(n.Op.Dup,n.$sp,1),e(n.Op.Load,n.$s0),e(n.MachineOp.PushFrame),e(n.Op.PushEmptyArgs),e(n.Op.PrepareArgs,n.$s0),ee(e,!1,!1,!0,(()=>{e(n.Op.GetComponentLayout,n.$s0),e(n.Op.PopulateLayout,n.$s0)})),e(n.Op.Load,n.$s0)}(e)})),i(n.ContentType.Helper,(()=>{x(e,null,null,(()=>{e(n.MachineOp.InvokeStatic,r)}))}))):(i(n.ContentType.Component,(()=>{e(n.Op.AppendText)})),i(n.ContentType.Helper,(()=>{e(n.Op.AppendText)}))),i(n.ContentType.SafeString,(()=>{e(n.Op.AssertSame),e(n.Op.AppendSafeHTML)})),i(n.ContentType.Fragment,(()=>{e(n.Op.AssertSame),e(n.Op.AppendDocumentFragment)})),i(n.ContentType.Node,(()=>{e(n.Op.AssertSame),e(n.Op.AppendNode)}))}))}function re(e){let t=ie(e,(e=>function(e){e(n.Op.Main,n.$s0),ee(e,!1,!1,!0)}(e))),r=ie(e,(e=>te(e,!0,null))),i=ie(e,(e=>te(e,!1,null))),o=ie(e,(e=>te(e,!0,r))),s=ie(e,(e=>te(e,!1,i))) +return new C(t,o,s,r,i)}const ne={evalSymbols:null,upvars:null,moduleName:"stdlib",scopeValues:null,isStrictMode:!0,owner:null,size:0} +function ie(e,t){let{constants:r,heap:n,resolver:i}=e,o=new E(n,ne) +t((function(...e){w(o,r,i,ne,e)})) +let s=o.commit(0) +if("number"!=typeof s)throw new Error("Unexpected errors compiling std") +return s}class oe{constructor({constants:e,heap:t},r,n){this.constants=void 0,this.heap=void 0,this.stdlib=void 0,this.resolver=r,this.createOp=n,this.constants=e,this.heap=t,this.stdlib=re(this)}}function se(e,t){return{program:e,encoder:new E(e.heap,t,e.stdlib),meta:t}}e.CompileTimeCompilationContextImpl=oe +const ae=new N,le=["class","id","value","name","type","style","href"],ue=["div","span","p","a"] +function ce(e){return"string"==typeof e?e:ue[e]}function pe(e){return"string"==typeof e?e:le[e]}function de(e){if(null===e)return null +return[e[0].map((e=>`@${e}`)),e[1]]}ae.add(o.SexpOpcodes.Comment,((e,t)=>e(n.Op.Comment,t[1]))),ae.add(o.SexpOpcodes.CloseElement,(e=>e(n.Op.CloseElement))),ae.add(o.SexpOpcodes.FlushElement,(e=>e(n.Op.FlushElement))),ae.add(o.SexpOpcodes.Modifier,((e,[,t,r,i])=>{u(t)?e(h.Modifier,t,(t=>{e(n.MachineOp.PushFrame),F(e,r,i,!1),e(n.Op.Modifier,t),e(n.MachineOp.PopFrame)})):(I(e,t),e(n.MachineOp.PushFrame),F(e,r,i,!1),e(n.Op.Dup,n.$fp,1),e(n.Op.DynamicModifier),e(n.MachineOp.PopFrame))})),ae.add(o.SexpOpcodes.StaticAttr,((e,[,t,r,i])=>{e(n.Op.StaticAttr,pe(t),r,i??null)})),ae.add(o.SexpOpcodes.StaticComponentAttr,((e,[,t,r,i])=>{e(n.Op.StaticComponentAttr,pe(t),r,i??null)})),ae.add(o.SexpOpcodes.DynamicAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.DynamicAttr,pe(t),!1,i??null)})),ae.add(o.SexpOpcodes.TrustingDynamicAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.DynamicAttr,pe(t),!0,i??null)})),ae.add(o.SexpOpcodes.ComponentAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.ComponentAttr,pe(t),!1,i??null)})),ae.add(o.SexpOpcodes.TrustingComponentAttr,((e,[,t,r,i])=>{I(e,r),e(n.Op.ComponentAttr,pe(t),!0,i??null)})),ae.add(o.SexpOpcodes.OpenElement,((e,[,t])=>{e(n.Op.OpenElement,ce(t))})),ae.add(o.SexpOpcodes.OpenElementWithSplat,((e,[,t])=>{e(n.Op.PutComponentOperations),e(n.Op.OpenElement,ce(t))})),ae.add(o.SexpOpcodes.Component,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,r,null,n,i)})):J(e,t,r,null,n,i,!0,!0)})),ae.add(o.SexpOpcodes.Yield,((e,[,t,r])=>H(e,t,r))),ae.add(o.SexpOpcodes.AttrSplat,((e,[,t])=>H(e,t,null))),ae.add(o.SexpOpcodes.Debugger,((e,[,t])=>e(n.Op.Debugger,{type:m.DebugSymbols,value:void 0},t))),ae.add(o.SexpOpcodes.Append,((e,[,t])=>{if(Array.isArray(t))if(p(t))e(h.OptionalComponentOrHelper,t,{ifComponent(t){K(e,t,null,null,null,null)},ifHelper(t){e(n.MachineOp.PushFrame),A(e,t,null,null),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)},ifValue(t){e(n.MachineOp.PushFrame),e(n.Op.ConstantReference,t),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}) +else if(t[0]===o.SexpOpcodes.Call){let[,r,i,o]=t +p(r)?e(h.ComponentOrHelper,r,{ifComponent(t){K(e,t,null,i,de(o),null)},ifHelper(t){e(n.MachineOp.PushFrame),A(e,t,i,o),e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append")),e(n.MachineOp.PopFrame)}}):G(e,(()=>{I(e,r),e(n.Op.DynamicContentType)}),(t=>{t(n.ContentType.Component,(()=>{e(n.Op.ResolveCurriedComponent),e(n.Op.PushDynamicComponentInstance),X(e,{capabilities:!0,elementBlock:null,positional:i,named:o,atNames:!1,blocks:R(null)})})),t(n.ContentType.Helper,(()=>{x(e,i,o,(()=>{e(n.MachineOp.InvokeStatic,y("cautious-non-dynamic-append"))}))}))}))}else e(n.MachineOp.PushFrame),I(e,t),e(n.MachineOp.InvokeStatic,y("cautious-append")),e(n.MachineOp.PopFrame) +else e(n.Op.Text,null==t?"":String(t))})),ae.add(o.SexpOpcodes.TrustingAppend,((e,[,t])=>{Array.isArray(t)?(e(n.MachineOp.PushFrame),I(e,t),e(n.MachineOp.InvokeStatic,y("trusting-append")),e(n.MachineOp.PopFrame)):e(n.Op.Text,null==t?"":String(t))})),ae.add(o.SexpOpcodes.Block,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,null,r,de(n),i)})):J(e,t,null,r,n,i,!1,!1)})),ae.add(o.SexpOpcodes.InElement,((e,[,t,r,i,o])=>{Y(e,(()=>(I(e,r),void 0===o?S(e,void 0):I(e,o),I(e,i),e(n.Op.Dup,n.$sp,0),4)),(()=>{e(n.Op.PushRemoteElement),V(e,t),e(n.Op.PopRemoteElement)}))})),ae.add(o.SexpOpcodes.If,((e,[,t,r,i])=>Y(e,(()=>(I(e,t),e(n.Op.ToBoolean),1)),(()=>{V(e,r)}),i?()=>{V(e,i)}:void 0))),ae.add(o.SexpOpcodes.Each,((e,[,t,r,i,o])=>W(e,(()=>(r?I(e,r):S(e,null),I(e,t),2)),(()=>{e(n.Op.EnterList,g("BODY"),g("ELSE")),e(n.MachineOp.PushFrame),e(n.Op.Dup,n.$fp,1),e(n.MachineOp.ReturnTo,g("ITER")),e(f.Label,"ITER"),e(n.Op.Iterate,g("BREAK")),e(f.Label,"BODY"),z(e,i,2),e(n.Op.Pop,2),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"BREAK"),e(n.MachineOp.PopFrame),e(n.Op.ExitList),e(n.MachineOp.Jump,g("FINALLY")),e(f.Label,"ELSE"),o&&V(e,o)})))),ae.add(o.SexpOpcodes.Let,((e,[,t,r])=>{z(e,r,L(e,t))})),ae.add(o.SexpOpcodes.WithDynamicVars,((e,[,t,r])=>{if(t){let[i,o]=t +L(e,o),function(e,t,r){e(n.Op.PushDynamicScope),e(n.Op.BindDynamicScope,t),r(),e(n.Op.PopDynamicScope)}(e,i,(()=>{V(e,r)}))}else V(e,r)})),ae.add(o.SexpOpcodes.InvokeComponent,((e,[,t,r,n,i])=>{l(t)?e(h.Component,t,(t=>{K(e,t,null,r,de(n),i)})):J(e,t,null,r,n,i,!1,!1)})) +class he{constructor(e,t,r,n="plain block"){this.compiled=null,this.statements=e,this.meta=t,this.symbolTable=r,this.moduleName=n}compile(e){return function(e,t){if(null!==e.compiled)return e.compiled +e.compiled=-1 +let{statements:r,meta:n}=e,i=me(r,n,t) +return e.compiled=i,i}(this,e)}}function fe(e,t){let[r,n,i]=e.block +return new he(r,B(e),{symbols:n,hasEval:i},t)}function me(e,t,r){let n=ae,i=se(r,t),{encoder:o,program:{constants:s,resolver:a}}=i +function l(...e){w(o,s,a,t,e)}for(const u of e)n.compile(l,u) +return i.encoder.commit(t.size)}e.DEFAULT_CAPABILITIES={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!1,elementHook:!1,dynamicScope:!0,createCaller:!1,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1},e.MINIMAL_CAPABILITIES={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,dynamicScope:!1,createCaller:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +class ge{constructor(e,t){this.symbolTable=void 0,this.compiled=null,this.attrsBlockNumber=void 0,this.layout=e,this.moduleName=t +let{block:r}=e,[,n,i]=r +n=n.slice() +let o=n.indexOf(Q) +this.attrsBlockNumber=-1===o?n.push(Q):o+1,this.symbolTable={hasEval:i,symbols:n}}compile(e){if(null!==this.compiled)return this.compiled +let t=B(this.layout),r=se(e,t),{encoder:n,program:{constants:i,resolver:o}}=r +Z((function(...e){w(n,i,o,t,e)}),this.layout,this.attrsBlockNumber) +let s=r.encoder.commit(t.size) +return"number"!=typeof s||(this.compiled=s),s}}e.WrappedBuilder=ge +let be=0,ye=e.templateCacheCounters={cacheHit:0,cacheMiss:0} +class ve{constructor(e){this.result="ok",this.layout=null,this.wrappedLayout=null,this.parsedLayout=e}get moduleName(){return this.parsedLayout.moduleName}get id(){return this.parsedLayout.id}get referrer(){return{moduleName:this.parsedLayout.moduleName,owner:this.parsedLayout.owner}}asLayout(){return this.layout?this.layout:this.layout=fe((0,t.assign)({},this.parsedLayout),this.moduleName)}asWrappedLayout(){return this.wrappedLayout?this.wrappedLayout:this.wrappedLayout=new ge((0,t.assign)({},this.parsedLayout),this.moduleName)}}})),e("@glimmer/owner",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.OWNER=void 0,e.getOwner=function(e){return e[t]},e.setOwner=function(e,r){e[t]=r} +const t=e.OWNER=Symbol("OWNER")})),e("@glimmer/program",["exports","@glimmer/manager","@glimmer/opcode-compiler","@glimmer/util","@glimmer/vm","@glimmer/wire-format"],(function(e,t,r,n,i,o){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.RuntimeProgramImpl=e.RuntimeOpImpl=e.RuntimeHeapImpl=e.RuntimeConstantsImpl=e.HeapImpl=e.ConstantsImpl=e.CompileTimeConstantImpl=void 0,e.artifacts=function(){return{constants:new d,heap:new b}},e.hydrateHeap=function(e){return new g(e)} +const s=[[[o.SexpOpcodes.Yield,1,null]],["&default"],!1,[]],a={id:"1b32f5c2-7623-43d6-a0ad-9672898920a1",moduleName:"__default__.hbs",block:JSON.stringify(s),scope:null,isStrictMode:!0},l=Object.freeze([]),u=(0,n.constants)(l),c=u.indexOf(l) +class p{constructor(){this.values=u.slice(),this.indexMap=new Map(this.values.map(((e,t)=>[e,t])))}value(e){let t=this.indexMap,r=t.get(e) +return void 0===r&&(r=this.values.push(e)-1,t.set(e,r)),r}array(e){if(0===e.length)return c +let t=new Array(e.length) +for(let r=0;r=0,`cannot get value for handle: ${e}`),this.values[e]}getArray(e){let t=this.reifiedArrs,r=t[e] +if(void 0===r){let i=this.getValue(e) +r=new Array(i.length) +for(const[e,t]of(0,n.enumerate)(i))r[e]=this.getValue(t) +t[e]=r}return r}}e.ConstantsImpl=d +class h{constructor(e){this.offset=0,this.heap=e}get size(){return 1+((this.heap.getbyaddr(this.offset)&i.OPERAND_LEN_MASK)>>i.ARG_SHIFT)}get isMachine(){return this.heap.getbyaddr(this.offset)&i.MACHINE_MASK?1:0}get type(){return this.heap.getbyaddr(this.offset)&i.TYPE_MASK}get op1(){return this.heap.getbyaddr(this.offset+1)}get op2(){return this.heap.getbyaddr(this.offset+2)}get op3(){return this.heap.getbyaddr(this.offset+3)}}e.RuntimeOpImpl=h +var f=function(e){return e[e.Allocated=0]="Allocated",e[e.Freed=1]="Freed",e[e.Purged=2]="Purged",e[e.Pointer=3]="Pointer",e}(f||{}) +const m=1048576 +class g{constructor(e){this.heap=void 0,this.table=void 0 +let{buffer:t,table:r}=e +this.heap=new Int32Array(t),this.table=r}getaddr(e){return(0,n.unwrap)(this.table[e])}getbyaddr(e){return(0,n.expect)(this.heap[e],"Access memory out of bounds of the heap")}sizeof(e){return y(this.table)}}e.RuntimeHeapImpl=g +class b{constructor(){this.offset=0,this.heap=void 0,this.handleTable=void 0,this.handleState=void 0,this.handle=0,this.heap=new Int32Array(m),this.handleTable=[],this.handleState=[]}pushRaw(e){this.sizeCheck(),this.heap[this.offset++]=e}pushOp(e){this.pushRaw(e)}pushMachine(e){this.pushRaw(e|i.MACHINE_MASK)}sizeCheck(){let{heap:e}=this +if(this.offset===this.heap.length){let t=new Int32Array(e.length+m) +t.set(e,0),this.heap=t}}getbyaddr(e){return(0,n.unwrap)(this.heap[e])}setbyaddr(e,t){this.heap[e]=t}malloc(){return this.handleTable.push(this.offset),this.handleTable.length-1}finishMalloc(e){}size(){return this.offset}getaddr(e){return(0,n.unwrap)(this.handleTable[e])}sizeof(e){return y(this.handleTable)}free(e){this.handleState[e]=f.Freed}compact(){let e=0,{handleTable:t,handleState:r,heap:i}=this +for(let o=0;om(e)),(t=>g(e,t))) +return t.debugLabel=e.debugLabel,t[i]=l,t},e.createIteratorItemRef=function(e){let t=e,r=(0,n.createTag)() +return h((()=>((0,n.consumeTag)(r),t)),(e=>{t!==e&&(t=e,(0,n.dirtyTag)(r))}))},e.createIteratorRef=function(e,n){return h((()=>{let i=m(e),o=function(e){switch(e){case"@key":return C(v) +case"@index":return C(_) +case"@identity":return C(O) +default:return function(e){0 +return C((r=>(0,t.getPath)(r,e)))}(e)}}(n) +if(Array.isArray(i))return new T(i,o) +let s=(0,t.toIterator)(i) +return null===s?new T(r.EMPTY_ARRAY,(()=>null)):new k(s,o)}))},e.createPrimitiveRef=c,e.createReadOnlyRef=function(e){return f(e)?h((()=>m(e)),null,e.debugLabel):e},e.createUnboundRef=d,e.isConstRef=function(e){return e.tag===n.CONSTANT_TAG},e.isInvokableRef=function(e){return e[i]===l},e.isUpdatableRef=f,e.updateRef=g,e.valueForRef=m +const i=e.REFERENCE=Symbol("REFERENCE"),o=0,s=1,a=2,l=3 +class u{constructor(e){this[i]=void 0,this.tag=null,this.lastRevision=n.INITIAL,this.lastValue=void 0,this.children=null,this.compute=null,this.update=null,this.debugLabel=void 0,this[i]=e}}function c(e){const t=new u(a) +return t.tag=n.CONSTANT_TAG,t.lastValue=e,t}const p=e.UNDEFINED_REFERENCE=c(void 0) +e.NULL_REFERENCE=c(null),e.TRUE_REFERENCE=c(!0),e.FALSE_REFERENCE=c(!1) +function d(e,t){const r=new u(a) +return r.lastValue=e,r.tag=n.CONSTANT_TAG,r}function h(e,t=null,r="unknown"){const n=new u(s) +return n.compute=e,n.update=t,n}function f(e){return null!==e.update}function m(e){const t=e +let{tag:r}=t +if(r===n.CONSTANT_TAG)return t.lastValue +const{lastRevision:i}=t +let o +if(null!==r&&(0,n.validateTag)(r,i))o=t.lastValue +else{const{compute:e}=t,i=(0,n.track)((()=>{o=t.lastValue=e()}),!1) +r=t.tag=i,t.lastRevision=(0,n.valueForTag)(i)}return(0,n.consumeTag)(r),o}function g(e,t){const n=e;(0,r.expect)(n.update,"called update on a non-updatable reference")(t)}function b(e,n){const o=e,s=o[i] +let l,u=o.children +if(null===u)u=o.children=new Map +else if(l=u.get(n),void 0!==l)return l +if(s===a){const e=m(o) +l=(0,r.isDict)(e)?d(e[n]):p}else l=h((()=>{const e=m(o) +if((0,r.isDict)(e))return(0,t.getProp)(e,n)}),(e=>{const i=m(o) +if((0,r.isDict)(i))return(0,t.setProp)(i,n,e)})) +return u.set(n,l),l}e.createDebugAliasRef=void 0 +const y={},v=(e,t)=>t,_=(e,t)=>String(t),O=e=>null===e?y:e +class w{constructor(){this._weakMap=void 0,this._primitiveMap=void 0}get weakMap(){return void 0===this._weakMap&&(this._weakMap=new WeakMap),this._weakMap}get primitiveMap(){return void 0===this._primitiveMap&&(this._primitiveMap=new Map),this._primitiveMap}set(e,t){(0,r.isObject)(e)?this.weakMap.set(e,t):this.primitiveMap.set(e,t)}get(e){return(0,r.isObject)(e)?this.weakMap.get(e):this.primitiveMap.get(e)}}const E=new w +function C(e){let t=new w +return(r,n)=>{let i=e(r,n),o=t.get(i)||0 +return t.set(i,o+1),0===o?i:function(e,t){let r=E.get(e) +void 0===r&&(r=[],E.set(e,r)) +let n=r[t] +return void 0===n&&(n={value:e,count:t},r[t]=n),n}(i,o)}}class k{constructor(e,t){this.inner=e,this.keyFor=t}isEmpty(){return this.inner.isEmpty()}next(){let e=this.inner.next() +return null!==e&&(e.key=this.keyFor(e.value,e.memo)),e}}class T{constructor(e,t){this.current=void 0,this.pos=0,this.iterator=e,this.keyFor=t,0===e.length?this.current={kind:"empty"}:this.current={kind:"first",value:e[this.pos]}}isEmpty(){return"empty"===this.current.kind}next(){let e,t=this.current +if("first"===t.kind)this.current={kind:"progress"},e=t.value +else{if(this.pos>=this.iterator.length-1)return null +e=this.iterator[++this.pos]}let{keyFor:r}=this +return{key:r(e,this.pos),value:e,memo:this.pos}}}})),e("@glimmer/runtime",["exports","@glimmer/debug","@glimmer/reference","@glimmer/util","@glimmer/vm","@glimmer/destroyable","@glimmer/global-context","@glimmer/manager","@glimmer/validator","@glimmer/program","@glimmer/owner"],(function(e,t,r,n,i,o,s,a,l,u,c){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.array=e.UpdatingVM=e.UpdatableBlockImpl=e.TemplateOnlyComponentManager=e.TemplateOnlyComponent=e.TEMPLATE_ONLY_COMPONENT_MANAGER=e.SimpleDynamicAttribute=e.SERIALIZATION_FIRST_NODE_STRING=e.RemoteLiveBlock=e.RehydrateBuilder=e.PartialScopeImpl=e.NewElementBuilder=e.LowLevelVM=e.IDOMChanges=e.EnvironmentImpl=e.EMPTY_POSITIONAL=e.EMPTY_NAMED=e.EMPTY_ARGS=e.DynamicScopeImpl=e.DynamicAttribute=e.DOMTreeConstruction=e.DOMChanges=e.CursorImpl=e.CurriedValue=e.ConcreteBounds=void 0,e.clear=E,e.clientBuilder=function(e,t){return re.forInitialRender(e,t)},e.concat=void 0,e.createCapturedArgs=lt,e.curry=ye,Object.defineProperty(e,"destroy",{enumerable:!0,get:function(){return o.destroy}}),e.dynamicAttribute=V,e.hash=e.get=e.fn=void 0,e.inTransaction=Qt,e.invokeHelper=function(e,t,r){0 +const n=(0,c.getOwner)(e),i=(0,a.getInternalHelperManager)(t) +0 +0 +const s=i.getDelegateFor(n) +let u,p=new tr(e,r),d=s.createHelper(t,p) +if(!(0,a.hasValue)(s))throw new Error("TODO: unreachable, to be implemented with hasScheduledEffect") +u=(0,l.createCache)((()=>s.getValue(d))),(0,o.associateDestroyableChild)(e,u) +if((0,a.hasDestroyable)(s)){let e=s.getDestroyable(d);(0,o.associateDestroyableChild)(u,e)}return u},Object.defineProperty(e,"isDestroyed",{enumerable:!0,get:function(){return o.isDestroyed}}),Object.defineProperty(e,"isDestroying",{enumerable:!0,get:function(){return o.isDestroying}}),e.isSerializationFirstNode=function(e){return e.nodeValue===Or},e.isWhitespace=function(e){return Bt.test(e)},e.normalizeProperty=P,e.on=void 0,Object.defineProperty(e,"registerDestructor",{enumerable:!0,get:function(){return o.registerDestructor}}),e.rehydrationBuilder=function(e,t){return Er.forInitialRender(e,t)},e.reifyArgs=function(e){return{named:ut(e.named),positional:ct(e.positional)}},e.reifyNamed=ut,e.reifyPositional=ct,e.renderComponent=function(e,t,i,o,s,a={},l=new p){let u=br.empty(e,{treeBuilder:t,handle:i.stdlib.main,dynamicScope:l,owner:o},i) +return function(e,t,r,i,o){const s=Object.keys(o).map((e=>[e,o[e]])),a=["main","else","attrs"],l=s.map((([e])=>`@${e}`)) +let u=e[y].component(i,r) +e.pushFrame() +for(let n=0;n<3*a.length;n++)e.stack.push(null) +e.stack.push(null),s.forEach((([,t])=>{e.stack.push(t)})),e[v].setup(e.stack,l,a,0,!0) +const c=(0,n.expect)(u.compilable,"BUG: Expected the root component rendered with renderComponent to have an associated template, set with setComponentTemplate"),p=(0,n.unwrapHandle)(c.compile(t)),d={handle:p,symbolTable:c.symbolTable} +return e.stack.push(e[v]),e.stack.push(d),e.stack.push(u),new _r(e)}(u,i,o,s,function(e){const t=(0,r.createConstRef)(e,"args") +return Object.keys(e).reduce(((e,n)=>(e[n]=(0,r.childRefFor)(t,n),e)),{})}(a))},e.renderMain=function(e,t,r,i,o,s,a=new p){let l=(0,n.unwrapHandle)(s.compile(t)),u=s.symbolTable.symbols.length,c=br.initial(e,t,{self:i,dynamicScope:a,treeBuilder:o,handle:l,numSymbols:u,owner:r}) +return new _r(c)},e.renderSync=function(e,t){let r +return Qt(e,(()=>r=t.sync())),r},e.resetDebuggerCallback=function(){kt=Ct},e.runtimeContext=function(e,t,r,n){return{env:new Yt(e,t),program:new u.RuntimeProgramImpl(r.constants,r.heap),resolver:n}},e.setDebuggerCallback=function(e){kt=e},e.templateOnlyComponent=function(e,t){return new At(e,t)} +class p{constructor(e){this.bucket=void 0,this.bucket=e?(0,n.assign)({},e):{}}get(e){return(0,n.unwrap)(this.bucket[e])}set(e,t){return this.bucket[e]=t}child(){return new p(this.bucket)}}e.DynamicScopeImpl=p +class d{static root(e,t=0,n){let i=new Array(t+1).fill(r.UNDEFINED_REFERENCE) +return new d(i,n,null,null,null).init({self:e})}static sized(e=0,t){let n=new Array(e+1).fill(r.UNDEFINED_REFERENCE) +return new d(n,t,null,null,null)}constructor(e,t,r,n,i){this.slots=e,this.owner=t,this.callerScope=r,this.evalScope=n,this.partialMap=i}init({self:e}){return this.slots[0]=e,this}getSelf(){return this.get(0)}getSymbol(e){return this.get(e)}getBlock(e){let t=this.get(e) +return t===r.UNDEFINED_REFERENCE?null:t}getEvalScope(){return this.evalScope}getPartialMap(){return this.partialMap}bind(e,t){this.set(e,t)}bindSelf(e){this.set(0,e)}bindSymbol(e,t){this.set(e,t)}bindBlock(e,t){this.set(e,t)}bindEvalScope(e){this.evalScope=e}bindPartialMap(e){this.partialMap=e}bindCallerScope(e){this.callerScope=e}getCallerScope(){return this.callerScope}child(){return new d(this.slots.slice(),this.owner,this.callerScope,this.evalScope,this.partialMap)}get(e){if(e>=this.slots.length)throw new RangeError(`BUG: cannot get $${e} from scope; length=${this.slots.length}`) +return this.slots[e]}set(e,t){if(e>=this.slots.length)throw new RangeError(`BUG: cannot get $${e} from scope; length=${this.slots.length}`) +this.slots[e]=t}}e.PartialScopeImpl=d +const h=Symbol("INNER_VM"),f=Symbol("DESTROYABLE_STACK"),m=Symbol("STACKS"),g=Symbol("REGISTERS"),b=Symbol("HEAP"),y=Symbol("CONSTANTS"),v=Symbol("ARGS") +class _{constructor(e,t){this.element=e,this.nextSibling=t}}e.CursorImpl=_ +class O{constructor(e,t,r){this.parentNode=e,this.first=t,this.last=r}parentElement(){return this.parentNode}firstNode(){return this.first}lastNode(){return this.last}}function w(e,t){let r=e.parentElement(),i=e.firstNode(),o=e.lastNode(),s=i +for(;;){let e=s.nextSibling +if(r.insertBefore(s,t),s===o)return e +s=(0,n.expect)(e,"invalid bounds")}}function E(e){let t=e.parentElement(),r=e.firstNode(),i=e.lastNode(),o=r +for(;;){let e=o.nextSibling +if(t.removeChild(o),o===i)return e +o=(0,n.expect)(e,"invalid bounds")}}function C(e){return k(e)?"":String(e)}function k(e){return null==e||"function"!=typeof e.toString}function T(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}function R(e){return"object"==typeof e&&null!==e&&"number"==typeof e.nodeType}function S(e){return"string"==typeof e}function P(e,t){let r,n +if(t in e)n=t,r="prop" +else{let i=t.toLowerCase() +i in e?(r="prop",n=i):(r="attr",n=t)}return"prop"!==r||"style"!==n.toLowerCase()&&!function(e,t){let r=A[e.toUpperCase()] +return r&&r[t.toLowerCase()]||!1}(e.tagName,n)||(r="attr"),{normalized:n,type:r}}e.ConcreteBounds=O +const A={INPUT:{form:!0,autocorrect:!0,list:!0},SELECT:{form:!0},OPTION:{form:!0},TEXTAREA:{form:!0},LABEL:{form:!0},FIELDSET:{form:!0},LEGEND:{form:!0},OBJECT:{form:!0},OUTPUT:{form:!0},BUTTON:{form:!0}} +const x=["javascript:","vbscript:"],M=["A","BODY","LINK","IMG","IFRAME","BASE","FORM"],N=["EMBED"],D=["href","src","background","action"],j=["src"] +function I(e,t){return-1!==e.indexOf(t)}function F(e,t){return(null===e||I(M,e))&&I(D,t)}function L(e,t){return null!==e&&(I(N,e)&&I(j,t))}function B(e,t){return F(e,t)||L(e,t)}let U +function H(e){return U||(U=function(){if("object"==typeof URL&&null!==URL&&"function"==typeof URL.parse){let e=URL +return t=>{let r=null +return"string"==typeof t&&(r=e.parse(t).protocol),null===r?":":r}}if("function"==typeof URL)return e=>{try{return new URL(e).protocol}catch(t){return":"}} +throw new Error('@glimmer/runtime needs a valid "globalThis.URL"')}()),U(e)}function $(e,t,r){let n=null +if(null==r)return r +if(T(r))return r.toHTML() +n=e?e.tagName.toUpperCase():null +let i=C(r) +if(F(n,t)){let e=H(i) +if(I(x,e))return`unsafe:${i}`}return L(n,t)?`unsafe:${i}`:i}function V(e,t,r,i=!1){const{tagName:o,namespaceURI:s}=e,a={element:e,name:t,namespace:r} +if(s===n.NS_SVG)return z(o,t,a) +const{type:l,normalized:u}=P(e,t) +return"attr"===l?z(o,u,a):function(e,t,r){if(B(e,t))return new Y(t,r) +if(function(e,t){return("INPUT"===e||"TEXTAREA"===e)&&"value"===t}(e,t))return new K(t,r) +if(function(e,t){return"OPTION"===e&&"selected"===t}(e,t))return new J(t,r) +return new W(t,r)}(o,u,a)}function z(e,t,r){return B(e,t)?new Q(r):new G(r)}class q{constructor(e){this.attribute=e}}e.DynamicAttribute=q +class G extends q{set(e,t,r){const n=X(t) +if(null!==n){const{name:t,namespace:r}=this.attribute +e.__setAttribute(t,n,r)}}update(e,t){const r=X(e),{element:n,name:i}=this.attribute +null===r?n.removeAttribute(i):n.setAttribute(i,r)}}e.SimpleDynamicAttribute=G +class W extends q{constructor(e,t){super(t),this.value=void 0,this.normalizedName=e}set(e,t,r){null!=t&&(this.value=t,e.__setProperty(this.normalizedName,t))}update(e,t){const{element:r}=this.attribute +this.value!==e&&(r[this.normalizedName]=this.value=e,null==e&&this.removeAttribute())}removeAttribute(){const{element:e,namespace:t}=this.attribute +t?e.removeAttributeNS(t,this.normalizedName):e.removeAttribute(this.normalizedName)}}class Y extends W{set(e,t,r){const{element:n,name:i}=this.attribute,o=$(n,i,t) +super.set(e,o,r)}update(e,t){const{element:r,name:n}=this.attribute,i=$(r,n,e) +super.update(i,t)}}class Q extends G{set(e,t,r){const{element:n,name:i}=this.attribute,o=$(n,i,t) +super.set(e,o,r)}update(e,t){const{element:r,name:n}=this.attribute,i=$(r,n,e) +super.update(i,t)}}class K extends W{set(e,t){e.__setProperty("value",C(t))}update(e){const t=(0,n.castToBrowser)(this.attribute.element,["input","textarea"]),r=t.value,i=C(e) +r!==i&&(t.value=i)}}class J extends W{set(e,t){null!=t&&!1!==t&&e.__setProperty("selected",!0)}update(e){const t=(0,n.castToBrowser)(this.attribute.element,"option") +t.selected=!!e}}function X(e){return!1===e||null==e||void 0===e.toString?null:!0===e?"":"function"==typeof e?null:String(e)}class Z{constructor(e){this.node=e}firstNode(){return this.node}}class ee{constructor(e){this.node=e}lastNode(){return this.node}}const te=Symbol("CURSOR_STACK") +class re{static forInitialRender(e,t){return new this(e,t.element,t.nextSibling).initialize()}static resume(e,t){let r=new this(e,t.parentElement(),t.reset(e)).initialize() +return r.pushLiveBlock(t),r}constructor(e,t,r){this.dom=void 0,this.updateOperations=void 0,this.constructing=null,this.operations=null,this.env=void 0,this[te]=new n.Stack,this.modifierStack=new n.Stack,this.blockStack=new n.Stack,this.pushElement(t,r),this.env=e,this.dom=e.getAppendOperations(),this.updateOperations=e.getDOM()}initialize(){return this.pushSimpleBlock(),this}debugBlocks(){return this.blockStack.toArray()}get element(){return this[te].current.element}get nextSibling(){return this[te].current.nextSibling}get hasBlocks(){return this.blockStack.size>0}block(){return(0,n.expect)(this.blockStack.current,"Expected a current live block")}popElement(){this[te].pop(),(0,n.expect)(this[te].current,"can't pop past the last element")}pushSimpleBlock(){return this.pushLiveBlock(new ne(this.element))}pushUpdatableBlock(){return this.pushLiveBlock(new oe(this.element))}pushBlockList(e){return this.pushLiveBlock(new se(this.element,e))}pushLiveBlock(e,t=!1){let r=this.blockStack.current +return null!==r&&(t||r.didAppendBounds(e)),this.__openBlock(),this.blockStack.push(e),e}popBlock(){return this.block().finalize(this),this.__closeBlock(),(0,n.expect)(this.blockStack.pop(),"Expected popBlock to return a block")}__openBlock(){}__closeBlock(){}openElement(e){let t=this.__openElement(e) +return this.constructing=t,t}__openElement(e){return this.dom.createElement(e,this.element)}flushElement(e){let t=this.element,r=(0,n.expect)(this.constructing,"flushElement should only be called when constructing an element") +this.__flushElement(t,r),this.constructing=null,this.operations=null,this.pushModifiers(e),this.pushElement(r,null),this.didOpenElement(r)}__flushElement(e,t){this.dom.insertBefore(e,t,this.nextSibling)}closeElement(){return this.willCloseElement(),this.popElement(),this.popModifiers()}pushRemoteElement(e,t,r){return this.__pushRemoteElement(e,t,r)}__pushRemoteElement(e,t,r){if(this.pushElement(e,r),void 0===r)for(;e.lastChild;)e.removeChild(e.lastChild) +let n=new ie(e) +return this.pushLiveBlock(n,!0)}popRemoteElement(){const e=this.popBlock() +return(0,n.assert)(e instanceof ie,"[BUG] expecting a RemoteLiveBlock"),this.popElement(),e}pushElement(e,t=null){this[te].push(new _(e,t))}pushModifiers(e){this.modifierStack.push(e)}popModifiers(){return this.modifierStack.pop()}didAppendBounds(e){return this.block().didAppendBounds(e),e}didAppendNode(e){return this.block().didAppendNode(e),e}didOpenElement(e){return this.block().openElement(e),e}willCloseElement(){this.block().closeElement()}appendText(e){return this.didAppendNode(this.__appendText(e))}__appendText(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createTextNode(e) +return t.insertBefore(r,i,n),i}__appendNode(e){return this.dom.insertBefore(this.element,e,this.nextSibling),e}__appendFragment(e){let t=e.firstChild +if(t){let r=new O(this.element,t,e.lastChild) +return this.dom.insertBefore(this.element,e,this.nextSibling),r}{const e=this.__appendComment("") +return new O(this.element,e,e)}}__appendHTML(e){return this.dom.insertHTMLBefore(this.element,this.nextSibling,e)}appendDynamicHTML(e){let t=this.trustedContent(e) +this.didAppendBounds(t)}appendDynamicText(e){let t=this.untrustedContent(e) +return this.didAppendNode(t),t}appendDynamicFragment(e){let t=this.__appendFragment(e) +this.didAppendBounds(t)}appendDynamicNode(e){let t=this.__appendNode(e),r=new O(this.element,t,t) +this.didAppendBounds(r)}trustedContent(e){return this.__appendHTML(e)}untrustedContent(e){return this.__appendText(e)}appendComment(e){return this.didAppendNode(this.__appendComment(e))}__appendComment(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createComment(e) +return t.insertBefore(r,i,n),i}__setAttribute(e,t,r){this.dom.setAttribute(this.constructing,e,t,r)}__setProperty(e,t){this.constructing[e]=t}setStaticAttribute(e,t,r){this.__setAttribute(e,t,r)}setDynamicAttribute(e,t,r,n){let i=V(this.constructing,e,n,r) +return i.set(this,t,this.env),i}}e.NewElementBuilder=re +class ne{constructor(e){this.first=null,this.last=null,this.nesting=0,this.parent=e}parentElement(){return this.parent}firstNode(){return(0,n.expect)(this.first,"cannot call `firstNode()` while `SimpleLiveBlock` is still initializing").firstNode()}lastNode(){return(0,n.expect)(this.last,"cannot call `lastNode()` while `SimpleLiveBlock` is still initializing").lastNode()}openElement(e){this.didAppendNode(e),this.nesting++}closeElement(){this.nesting--}didAppendNode(e){0===this.nesting&&(this.first||(this.first=new Z(e)),this.last=new ee(e))}didAppendBounds(e){0===this.nesting&&(this.first||(this.first=e),this.last=e)}finalize(e){null===this.first&&e.appendComment("")}}class ie extends ne{constructor(e){super(e),(0,o.registerDestructor)(this,(()=>{this.parentElement()===this.firstNode().parentNode&&E(this)}))}}e.RemoteLiveBlock=ie +class oe extends ne{reset(){(0,o.destroy)(this) +let e=E(this) +return this.first=null,this.last=null,this.nesting=0,e}}e.UpdatableBlockImpl=oe +class se{constructor(e,t){this.parent=e,this.boundList=t,this.parent=e,this.boundList=t}parentElement(){return this.parent}firstNode(){return(0,n.expect)(this.boundList[0],"cannot call `firstNode()` while `LiveBlockList` is still initializing").firstNode()}lastNode(){let e=this.boundList +return(0,n.expect)(e[e.length-1],"cannot call `lastNode()` while `LiveBlockList` is still initializing").lastNode()}openElement(e){(0,n.assert)(!1,"Cannot openElement directly inside a block list")}closeElement(){(0,n.assert)(!1,"Cannot closeElement directly inside a block list")}didAppendNode(e){(0,n.assert)(!1,"Cannot create a new node directly inside a block list")}didAppendBounds(e){}finalize(e){(0,n.assert)(this.boundList.length>0,"boundsList cannot be empty")}}const ae=new class{constructor(){this.evaluateOpcode=new Array(i.Op.Size).fill(null)}add(e,t,r="syscall"){this.evaluateOpcode[e]={syscall:"machine"!==r,evaluate:t}}debugBefore(e,r){let n,o +return(0,t.recordStackSize)(e.fetchValue(i.$sp)),{sp:undefined,pc:e.fetchValue(i.$pc),name:o,params:n,type:r.type,isMachine:r.isMachine,size:r.size,state:void 0}}debugAfter(e,t){}evaluate(e,t,r){let i=(0,n.unwrap)(this.evaluateOpcode[r]) +i.syscall?((0,n.assert)(!t.isMachine,`BUG: Mismatch between operation.syscall (${i.syscall}) and opcode.isMachine (${t.isMachine}) for ${t.type}`),i.evaluate(e,t)):((0,n.assert)(t.isMachine,`BUG: Mismatch between operation.syscall (${i.syscall}) and opcode.isMachine (${t.isMachine}) for ${t.type}`),i.evaluate(e[h],t))}},le=Symbol("TYPE"),ue=Symbol("INNER"),ce=Symbol("OWNER"),pe=Symbol("ARGS"),de=Symbol("RESOLVED"),he=new WeakSet +function fe(e){return he.has(e)}function me(e,t){return fe(e)&&e[le]===t}class ge{constructor(e,t,r,n,i=!1){this[le]=void 0,this[ue]=void 0,this[ce]=void 0,this[pe]=void 0,this[de]=void 0,he.add(this),this[le]=e,this[ue]=t,this[ce]=r,this[pe]=n,this[de]=i}}function be(e){let t,r,n,i,o,s=e +for(;;){let{[pe]:e,[ue]:a}=s +if(null!==e){let{named:n,positional:i}=e +i.length>0&&(t=void 0===t?i:i.concat(t)),void 0===r&&(r=[]),r.unshift(n)}if(!fe(a)){n=a,i=s[ce],o=s[de] +break}s=a}return{definition:n,owner:i,resolved:o,positional:t,named:r}}function ye(e,t,r,n,i=!1){return new ge(e,t,r,n,i)}function ve(e){return"getDebugCustomRenderTree"in e}e.CurriedValue=ge,ae.add(i.Op.ChildScope,(e=>e.pushChildScope())),ae.add(i.Op.PopScope,(e=>e.popScope())),ae.add(i.Op.PushDynamicScope,(e=>e.pushDynamicScope())),ae.add(i.Op.PopDynamicScope,(e=>e.popDynamicScope())),ae.add(i.Op.Constant,((e,{op1:t})=>{e.stack.push(e[y].getValue((0,n.decodeHandle)(t)))})),ae.add(i.Op.ConstantReference,((e,{op1:t})=>{e.stack.push((0,r.createConstRef)(e[y].getValue((0,n.decodeHandle)(t)),!1))})),ae.add(i.Op.Primitive,((e,{op1:t})=>{let r=e.stack +if((0,n.isHandle)(t)){let i=e[y].getValue((0,n.decodeHandle)(t)) +r.push(i)}else r.push((0,n.decodeImmediate)(t))})),ae.add(i.Op.PrimitiveReference,(e=>{let n,i=e.stack,o=(0,t.check)(i.pop(),t.CheckPrimitive) +n=void 0===o?r.UNDEFINED_REFERENCE:null===o?r.NULL_REFERENCE:!0===o?r.TRUE_REFERENCE:!1===o?r.FALSE_REFERENCE:(0,r.createPrimitiveRef)(o),i.push(n)})),ae.add(i.Op.Dup,((e,{op1:r,op2:n})=>{let i=(0,t.check)(e.fetchValue(r),t.CheckNumber)-n +e.stack.dup(i)})),ae.add(i.Op.Pop,((e,{op1:t})=>{e.stack.pop(t)})),ae.add(i.Op.Load,((e,{op1:t})=>{e.load(t)})),ae.add(i.Op.Fetch,((e,{op1:t})=>{e.fetch(t)})),ae.add(i.Op.BindDynamicScope,((e,{op1:t})=>{let r=e[y].getArray(t) +e.bindDynamicScope(r)})),ae.add(i.Op.Enter,((e,{op1:t})=>{e.enter(t)})),ae.add(i.Op.Exit,(e=>{e.exit()})),ae.add(i.Op.PushSymbolTable,((e,{op1:t})=>{e.stack.push(e[y].getValue(t))})),ae.add(i.Op.PushBlockScope,(e=>{e.stack.push(e.scope())})),ae.add(i.Op.CompileBlock,(e=>{let t=e.stack,r=t.pop() +r?t.push(e.compile(r)):t.push(null)})),ae.add(i.Op.InvokeYield,(e=>{let{stack:r}=e,i=(0,t.check)(r.pop(),(0,t.CheckOption)(t.CheckHandle)),o=(0,t.check)(r.pop(),(0,t.CheckOption)(Ve)),s=(0,t.check)(r.pop(),(0,t.CheckOption)(t.CheckBlockSymbolTable));(0,n.assert)(null===s||s&&"object"==typeof s&&Array.isArray(s.parameters),`Expected top of stack to be ${"Option"}, was ${String(s)}`) +let a=(0,t.check)(r.pop(),(0,t.CheckInstanceof)(et)) +if(null===s)return e.pushFrame(),void e.pushScope(o??e.scope()) +let l=(0,n.expect)(o,"BUG: expected scope") +{let e=s.parameters,t=e.length +if(t>0){l=l.child() +for(let r=0;r{let i=(0,t.check)(e.stack.pop(),Fe),o=Boolean((0,r.valueForRef)(i));(0,r.isConstRef)(i)?!0===o&&e.goto(n):(!0===o&&e.goto(n),e.updateWith(new _e(i)))})),ae.add(i.Op.JumpUnless,((e,{op1:n})=>{let i=(0,t.check)(e.stack.pop(),Fe),o=Boolean((0,r.valueForRef)(i));(0,r.isConstRef)(i)?!1===o&&e.goto(n):(!1===o&&e.goto(n),e.updateWith(new _e(i)))})),ae.add(i.Op.JumpEq,((e,{op1:r,op2:n})=>{(0,t.check)(e.stack.peek(),t.CheckNumber)===n&&e.goto(r)})),ae.add(i.Op.AssertSame,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) +!1===(0,r.isConstRef)(n)&&e.updateWith(new _e(n))})),ae.add(i.Op.ToBoolean,(e=>{let{stack:n}=e,i=(0,t.check)(n.pop(),Fe) +n.push((0,r.createComputeRef)((()=>(0,s.toBool)((0,r.valueForRef)(i)))))})) +class _e{constructor(e){this.last=void 0,this.ref=e,this.last=(0,r.valueForRef)(e)}evaluate(e){let{last:t,ref:n}=this +t!==(0,r.valueForRef)(n)&&e.throw()}}class Oe{constructor(e,t){this.last=void 0,this.ref=e,this.filter=t,this.last=t((0,r.valueForRef)(e))}evaluate(e){let{last:t,ref:n,filter:i}=this +t!==i((0,r.valueForRef)(n))&&e.throw()}}class we{constructor(){this.tag=l.CONSTANT_TAG,this.lastRevision=l.INITIAL,this.target=void 0}finalize(e,t){this.target=t,this.didModify(e)}evaluate(e){let{tag:t,target:r,lastRevision:i}=this +!e.alwaysRevalidate&&(0,l.validateTag)(t,i)&&((0,l.consumeTag)(t),e.goto((0,n.expect)(r,"VM BUG: Target must be set before attempting to jump")))}didModify(e){this.tag=e,this.lastRevision=(0,l.valueForTag)(this.tag),(0,l.consumeTag)(e)}}class Ee{constructor(e){this.debugLabel=e}evaluate(){(0,l.beginTrackFrame)(this.debugLabel)}}class Ce{constructor(e){this.target=e}evaluate(){let e=(0,l.endTrackFrame)() +this.target.didModify(e)}}ae.add(i.Op.Text,((e,{op1:t})=>{e.elements().appendText(e[y].getValue(t))})),ae.add(i.Op.Comment,((e,{op1:t})=>{e.elements().appendComment(e[y].getValue(t))})),ae.add(i.Op.OpenElement,((e,{op1:t})=>{e.elements().openElement(e[y].getValue(t))})),ae.add(i.Op.OpenDynamicElement,(e=>{let n=(0,t.check)((0,r.valueForRef)((0,t.check)(e.stack.pop(),Fe)),t.CheckString) +e.elements().openElement(n)})),ae.add(i.Op.PushRemoteElement,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),s=(0,t.check)(e.stack.pop(),Fe),a=(0,t.check)((0,r.valueForRef)(n),t.CheckElement),l=(0,t.check)((0,r.valueForRef)(i),(0,t.CheckMaybe)((0,t.CheckOption)(t.CheckNode))),u=(0,r.valueForRef)(s);(0,r.isConstRef)(n)||e.updateWith(new _e(n)),void 0===l||(0,r.isConstRef)(i)||e.updateWith(new _e(i)) +let c=e.elements().pushRemoteElement(a,u,l) +if(c&&e.associateDestroyable(c),void 0!==e.env.debugRenderTree){let t=lt(void 0===l?{}:{insertBefore:i},[n]) +e.env.debugRenderTree.create(c,{type:"keyword",name:"in-element",args:t,instance:null}),(0,o.registerDestructor)(c,(()=>{e.env.debugRenderTree?.willDestroy(c)}))}})),ae.add(i.Op.PopRemoteElement,(e=>{let t=e.elements().popRemoteElement() +void 0!==e.env.debugRenderTree&&e.env.debugRenderTree.didRender(t,t)})),ae.add(i.Op.FlushElement,(e=>{let r=(0,t.check)(e.fetchValue(i.$t0),Ie),n=null +r&&(n=r.flush(e),e.loadValue(i.$t0,null)),e.elements().flushElement(n)})),ae.add(i.Op.CloseElement,(e=>{let t=e.elements().closeElement() +null!==t&&t.forEach((t=>{e.env.scheduleInstallModifier(t) +const r=t.manager.getDestroyable(t.state) +null!==r&&e.associateDestroyable(r)}))})),ae.add(i.Op.Modifier,((e,{op1:r})=>{if(!1===e.env.isInteractive)return +let o=e.getOwner(),s=(0,t.check)(e.stack.pop(),Be),a=e[y].getValue(r),{manager:u}=a,{constructing:c}=e.elements(),p=s.capture(),d=u.create(o,(0,n.expect)(c,"BUG: ElementModifier could not find the element it applies to"),a.state,p),h={manager:u,state:d,definition:a};(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(e,h,p) +let f=u.getTag(d) +return null!==f?((0,l.consumeTag)(f),e.updateWith(new ke(f,h))):void 0})),ae.add(i.Op.DynamicModifier,(e=>{if(!1===e.env.isInteractive)return +let{stack:o}=e,s=(0,t.check)(o.pop(),Fe),u=(0,t.check)(o.pop(),Be).capture(),{positional:c,named:p}=u,{constructing:d}=e.elements(),h=e.getOwner(),f=(0,r.createComputeRef)((()=>{let e,t,o=(0,r.valueForRef)(s) +if(!(0,n.isObject)(o))return +if(me(o,i.CurriedTypes.Modifier)){let{definition:r,owner:n,positional:i,named:s}=be(o) +t=r,e=n,void 0!==i&&(u.positional=i.concat(c)),void 0!==s&&(u.named=Object.assign({},...s,p))}else t=o,e=h +let l=(0,a.getInternalModifierManager)(t,!0) +if(null===l)throw new Error("BUG: modifier manager expected") +let f={resolvedName:null,manager:l,state:t},m=l.create(e,(0,n.expect)(d,"BUG: ElementModifier could not find the element it applies to"),f.state,u) +return{manager:l,state:m,definition:f}})),m=(0,r.valueForRef)(f),g=null +if(void 0!==m){(0,n.expect)((0,t.check)(e.fetchValue(i.$t0),Ie),"BUG: ElementModifier could not find operations to append to").addModifier(e,m,u),g=m.manager.getTag(m.state),null!==g&&(0,l.consumeTag)(g)}return!(0,r.isConstRef)(s)||g?e.updateWith(new Te(g,m,f)):void 0})) +class ke{constructor(e,t){this.lastUpdated=void 0,this.tag=e,this.modifier=t,this.lastUpdated=(0,l.valueForTag)(e)}evaluate(e){let{modifier:t,tag:r,lastUpdated:n}=this;(0,l.consumeTag)(r),(0,l.validateTag)(r,n)||(e.env.scheduleUpdateModifier(t),this.lastUpdated=(0,l.valueForTag)(r))}}class Te{constructor(e,t,r){this.lastUpdated=void 0,this.tag=e,this.instance=t,this.instanceRef=r,this.lastUpdated=(0,l.valueForTag)(e??l.CURRENT_TAG)}evaluate(e){let{tag:t,lastUpdated:n,instance:i,instanceRef:s}=this,a=(0,r.valueForRef)(s) +if(a!==i){if(void 0!==i){let e=i.manager.getDestroyable(i.state) +null!==e&&(0,o.destroy)(e)}if(void 0!==a){let{manager:r,state:n}=a,i=r.getDestroyable(n) +null!==i&&(0,o.associateDestroyableChild)(this,i),t=r.getTag(n),null!==t&&(this.lastUpdated=(0,l.valueForTag)(t)),this.tag=t,e.env.scheduleInstallModifier(a)}this.instance=a}else null===t||(0,l.validateTag)(t,n)||(e.env.scheduleUpdateModifier(i),this.lastUpdated=(0,l.valueForTag)(t)) +null!==t&&(0,l.consumeTag)(t)}}ae.add(i.Op.StaticAttr,((e,{op1:t,op2:r,op3:n})=>{let i=e[y].getValue(t),o=e[y].getValue(r),s=n?e[y].getValue(n):null +e.elements().setStaticAttribute(i,o,s)})),ae.add(i.Op.DynamicAttr,((e,{op1:n,op2:i,op3:o})=>{let s=e[y].getValue(n),a=e[y].getValue(i),l=(0,t.check)(e.stack.pop(),Fe),u=(0,r.valueForRef)(l),c=o?e[y].getValue(o):null,p=e.elements().setDynamicAttribute(s,u,a,c);(0,r.isConstRef)(l)||e.updateWith(new Re(l,p,e.env))})) +class Re{constructor(e,t,n){this.updateRef=void 0 +let i=!1 +this.updateRef=(0,r.createComputeRef)((()=>{let o=(0,r.valueForRef)(e) +!0===i?t.update(o,n):i=!0})),(0,r.valueForRef)(this.updateRef)}evaluate(){(0,r.valueForRef)(this.updateRef)}}ae.add(i.Op.PushComponentDefinition,((e,{op1:t})=>{let r=e[y].getValue(t);(0,n.assert)(!!r,`Missing component for ${t}`) +let{manager:i,capabilities:o}=r,s={definition:r,manager:i,capabilities:o,state:null,handle:null,table:null,lookup:null} +e.stack.push(s)})),ae.add(i.Op.ResolveDynamicComponent,((e,{op1:o})=>{let s,a=e.stack,l=(0,t.check)((0,r.valueForRef)((0,t.check)(a.pop(),Fe)),(0,t.CheckOr)(t.CheckString,We)),u=e[y],c=e.getOwner() +u.getValue(o) +if(e.loadValue(i.$t1,null),"string"==typeof l){0 +let t=function(e,t,r,i){let o=e.lookupComponent(r,(0,n.expect)(i,"BUG: expected owner when looking up component")) +return t.resolvedComponent(o,r)}(e.runtime.resolver,u,l,c) +s=(0,n.expect)(t,`Could not find a component named "${l}"`)}else s=fe(l)?l:u.component(l,c) +a.push(s)})),ae.add(i.Op.ResolveCurriedComponent,(e=>{let n,i=e.stack,o=(0,t.check)(i.pop(),Fe),s=(0,r.valueForRef)(o),a=e[y] +n=fe(s)?s:a.component(s,e.getOwner(),!0),i.push(n)})),ae.add(i.Op.PushDynamicComponentInstance,(e=>{let t,r,{stack:n}=e,i=n.pop() +fe(i)?r=t=null:(r=i.manager,t=i.capabilities),n.push({definition:i,capabilities:t,manager:r,state:null,handle:null,table:null})})),ae.add(i.Op.PushArgs,((e,{op1:t,op2:r,op3:i})=>{let o=e.stack,s=e[y].getArray(t),a=i>>4,l=8&i,u=7&i?e[y].getArray(r):n.EMPTY_STRING_ARRAY +e[v].setup(o,s,u,a,!!l),o.push(e[v])})),ae.add(i.Op.PushEmptyArgs,(e=>{let{stack:t}=e +t.push(e[v].empty(t))})),ae.add(i.Op.CaptureArgs,(e=>{let r=e.stack,n=(0,t.check)(r.pop(),(0,t.CheckInstanceof)(et)).capture() +r.push(n)})),ae.add(i.Op.PrepareArgs,((e,{op1:r})=>{let o=e.stack,s=e.fetchValue(r),l=(0,t.check)(o.pop(),(0,t.CheckInstanceof)(et)),{definition:u}=s +if(me(u,i.CurriedTypes.Component)){(0,n.assert)(!u.manager,"If the component definition was curried, we don't yet have a manager") +let t=e[y],{definition:r,owner:o,resolved:a,positional:c,named:p}=be(u) +if(!0===a)u=r +else if("string"==typeof r){let i=e.runtime.resolver.lookupComponent(r,o) +u=t.resolvedComponent((0,n.expect)(i,"BUG: expected resolved component"),r)}else u=t.component(r,o) +void 0!==p&&l.named.merge((0,n.assign)({},...p)),void 0!==c&&(l.realloc(c.length),l.positional.prepend(c)) +let{manager:d}=u;(0,n.assert)(null===s.manager,"component instance manager should not be populated yet"),(0,n.assert)(null===s.capabilities,"component instance manager should not be populated yet"),s.definition=u,s.manager=d,s.capabilities=u.capabilities,e.loadValue(i.$t1,o)}let{manager:c,state:p}=u,d=s.capabilities +if(!(0,a.managerHasCapability)(c,d,i.InternalComponentCapabilities.prepareArgs))return void o.push(l) +let h=l.blocks.values,f=l.blocks.names,m=c.prepareArgs(p,l) +if(m){l.clear() +for(let n=0;n{let o=(0,t.check)(e.fetchValue(n),Ge),{definition:s,manager:l,capabilities:u}=o +if(!(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.createInstance))return +let c=null;(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.dynamicScope)&&(c=e.dynamicScope()) +let p=1&r,d=null;(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.createArgs)&&(d=(0,t.check)(e.stack.peek(),Be)) +let h=null;(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.createCaller)&&(h=e.getSelf()) +let f=l.create(e.getOwner(),s.state,d,e.env,c,h,!!p) +o.state=f,(0,a.managerHasCapability)(l,u,i.InternalComponentCapabilities.updateHook)&&e.updateWith(new Me(f,l,c))})),ae.add(i.Op.RegisterComponentDestructor,((e,{op1:r})=>{let{manager:n,state:i,capabilities:o}=(0,t.check)(e.fetchValue(r),Ge),s=n.getDestroyable(i) +s&&e.associateDestroyable(s)})),ae.add(i.Op.BeginComponentTransaction,((e,{op1:t})=>{let r +e.beginCacheGroup(r),e.elements().pushSimpleBlock()})),ae.add(i.Op.PutComponentOperations,(e=>{e.loadValue(i.$t0,new Se)})),ae.add(i.Op.ComponentAttr,((e,{op1:r,op2:n,op3:o})=>{let s=e[y].getValue(r),a=e[y].getValue(n),l=(0,t.check)(e.stack.pop(),Fe),u=o?e[y].getValue(o):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)).setAttribute(s,l,a,u)})),ae.add(i.Op.StaticComponentAttr,((e,{op1:r,op2:n,op3:o})=>{let s=e[y].getValue(r),a=e[y].getValue(n),l=o?e[y].getValue(o):null;(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)).setStaticAttribute(s,a,l)})) +class Se{constructor(){this.attributes=(0,n.dict)(),this.classes=[],this.modifiers=[]}setAttribute(e,t,r,n){let i={value:t,namespace:n,trusting:r} +"class"===e&&this.classes.push(t),this.attributes[e]=i}setStaticAttribute(e,t,r){let n={value:t,namespace:r} +"class"===e&&this.classes.push(t),this.attributes[e]=n}addModifier(e,t,r){if(this.modifiers.push(t),void 0!==e.env.debugRenderTree){const{manager:i,definition:s,state:a}=t +if(null===a||"object"!=typeof a&&"function"!=typeof a)return +let{element:l,constructing:u}=e.elements(),c=i.getDebugName(s.state),p=i.getDebugInstance(a);(0,n.assert)(u,"Expected a constructing element in addModifier") +let d=new O(l,u,u) +e.env.debugRenderTree.create(a,{type:"modifier",name:c,args:r,instance:p}),e.env.debugRenderTree.didRender(a,d),e.associateDestroyable(a),e.updateWith(new De(a)),e.updateWith(new je(a,d)),(0,o.registerDestructor)(a,(()=>{e.env.debugRenderTree?.willDestroy(a)}))}}flush(e){let t,r=this.attributes +for(let i in this.attributes){if("type"===i){t=r[i] +continue}let o=(0,n.unwrap)(this.attributes[i]) +"class"===i?Ae(e,"class",Pe(this.classes),o.namespace,o.trusting):Ae(e,i,o.value,o.namespace,o.trusting)}return void 0!==t&&Ae(e,"type",t.value,t.namespace,t.trusting),this.modifiers}}function Pe(e){return 0===e.length?"":1===e.length?(0,n.unwrap)(e[0]):function(e){return e.every((e=>"string"==typeof e))}(e)?e.join(" "):(t=e,(0,r.createComputeRef)((()=>{let e=[] +for(const n of t){let t=C("string"==typeof n?n:(0,r.valueForRef)(n)) +t&&e.push(t)}return 0===e.length?null:e.join(" ")}))) +var t}function Ae(e,t,n,i,o=!1){if("string"==typeof n)e.elements().setStaticAttribute(t,n,i) +else{let s=e.elements().setDynamicAttribute(t,(0,r.valueForRef)(n),o,i);(0,r.isConstRef)(n)||e.updateWith(new Re(n,s,e.env))}}function xe(e,t,r,n,i){let o=r.table.symbols.indexOf(e),s=n.get(t);-1!==o&&i.scope().bindBlock(o+1,s),r.lookup&&(r.lookup[e]=s)}ae.add(i.Op.DidCreateElement,((e,{op1:r})=>{let{definition:o,state:s}=(0,t.check)(e.fetchValue(r),Ge),{manager:a}=o,l=(0,t.check)(e.fetchValue(i.$t0),(0,t.CheckInstanceof)(Se)) +a.didCreateElement(s,(0,n.expect)(e.elements().constructing,"Expected a constructing element in DidCreateOpcode"),l)})),ae.add(i.Op.GetComponentSelf,((e,{op1:s,op2:l})=>{let u=(0,t.check)(e.fetchValue(s),Ge),{definition:c,state:p}=u,{manager:d}=c,h=d.getSelf(p) +if(void 0!==e.env.debugRenderTree){let u,c,d=(0,t.check)(e.fetchValue(s),Ge),{definition:f,manager:m}=d +if(e.stack.peek()===e[v])u=e[v].capture() +else{let t=e[y].getArray(l) +e[v].setup(e.stack,t,[],0,!0),u=e[v].capture()}let g=f.compilable +if(null===g?((0,n.assert)((0,a.managerHasCapability)(m,d.capabilities,i.InternalComponentCapabilities.dynamicLayout),"BUG: No template was found for this component, and the component did not have the dynamic layout capability"),g=m.getDynamicLayout(p,e.runtime.resolver),c=null!==g?g.moduleName:"__default__.hbs"):c=g.moduleName,e.associateDestroyable(d),ve(m)){m.getDebugCustomRenderTree(d.definition.state,d.state,u,c).forEach((t=>{let{bucket:r}=t +e.env.debugRenderTree.create(r,t),(0,o.registerDestructor)(d,(()=>{e.env.debugRenderTree?.willDestroy(r)})),e.updateWith(new De(r))}))}else{let t=f.resolvedName??m.getDebugName(f.state) +e.env.debugRenderTree.create(d,{type:"component",name:t,args:u,template:c,instance:(0,r.valueForRef)(h)}),(0,o.registerDestructor)(d,(()=>{e.env.debugRenderTree?.willDestroy(d)})),e.updateWith(new De(d))}}e.stack.push(h)})),ae.add(i.Op.GetComponentTagName,((e,{op1:r})=>{let{definition:n,state:i}=(0,t.check)(e.fetchValue(r),Ge),{manager:o}=n,s=o.getTagName(i) +e.stack.push(s)})),ae.add(i.Op.GetComponentLayout,((e,{op1:r})=>{let o=(0,t.check)(e.fetchValue(r),Ge),{manager:s,definition:l}=o,{stack:u}=e,{compilable:c}=l +if(null===c){let{capabilities:t}=o;(0,n.assert)((0,a.managerHasCapability)(s,t,i.InternalComponentCapabilities.dynamicLayout),"BUG: No template was found for this component, and the component did not have the dynamic layout capability"),c=s.getDynamicLayout(o.state,e.runtime.resolver),null===c&&(c=(0,a.managerHasCapability)(s,t,i.InternalComponentCapabilities.wrapped)?(0,n.unwrapTemplate)(e[y].defaultTemplate).asWrappedLayout():(0,n.unwrapTemplate)(e[y].defaultTemplate).asLayout())}let p=c.compile(e.context) +u.push(c.symbolTable),u.push(p)})),ae.add(i.Op.Main,((e,{op1:r})=>{let n=(0,t.check)(e.stack.pop(),Ze),i=(0,t.check)(e.stack.pop(),Ye),{manager:o,capabilities:s}=n,a={definition:n,manager:o,capabilities:s,state:null,handle:i.handle,table:i.symbolTable,lookup:null} +e.loadValue(r,a)})),ae.add(i.Op.PopulateLayout,((e,{op1:r})=>{let{stack:n}=e,i=(0,t.check)(n.pop(),t.CheckHandle),o=(0,t.check)(n.pop(),t.CheckProgramSymbolTable),s=(0,t.check)(e.fetchValue(r),Ge) +s.handle=i,s.table=o})),ae.add(i.Op.VirtualRootScope,((e,{op1:r})=>{let n,{table:o,manager:s,capabilities:l,state:u}=(0,t.check)(e.fetchValue(r),Qe);(0,a.managerHasCapability)(s,l,i.InternalComponentCapabilities.hasSubOwner)?(n=s.getOwner(u),e.loadValue(i.$t1,null)):(n=e.fetchValue(i.$t1),null===n?n=e.getOwner():e.loadValue(i.$t1,null)),e.pushRootScope(o.symbols.length+1,n)})),ae.add(i.Op.SetupForEval,((e,{op1:r})=>{let i=(0,t.check)(e.fetchValue(r),Qe) +if(i.table.hasEval){let t=i.lookup=(0,n.dict)() +e.scope().bindEvalScope(t)}})),ae.add(i.Op.SetNamedVariables,((e,{op1:r})=>{let i=(0,t.check)(e.fetchValue(r),Qe),o=e.scope(),s=(0,t.check)(e.stack.peek(),Be),a=s.named.atNames +for(let t=a.length-1;t>=0;t--){let e=(0,n.unwrap)(a[t]),r=i.table.symbols.indexOf(e),l=s.named.get(e,!0);-1!==r&&o.bindSymbol(r+1,l),i.lookup&&(i.lookup[e]=l)}})),ae.add(i.Op.SetBlocks,((e,{op1:r})=>{let i=(0,t.check)(e.fetchValue(r),Qe),{blocks:o}=(0,t.check)(e.stack.peek(),Be) +for(const[t]of(0,n.enumerate)(o.names))xe((0,n.unwrap)(o.symbolNames[t]),(0,n.unwrap)(o.names[t]),i,o,e)})),ae.add(i.Op.InvokeComponentLayout,((e,{op1:r})=>{let n=(0,t.check)(e.fetchValue(r),Qe) +e.call(n.handle)})),ae.add(i.Op.DidRenderLayout,((e,{op1:r})=>{let n=(0,t.check)(e.fetchValue(r),Ge),{manager:o,state:s,capabilities:l}=n,u=e.elements().popBlock() +if(void 0!==e.env.debugRenderTree)if(ve(o)){o.getDebugCustomRenderTree(n.definition.state,s,bt).reverse().forEach((t=>{let{bucket:r}=t +e.env.debugRenderTree.didRender(r,u),e.updateWith(new je(r,u))}))}else e.env.debugRenderTree.didRender(n,u),e.updateWith(new je(n,u)) +if((0,a.managerHasCapability)(o,l,i.InternalComponentCapabilities.createInstance)){(0,t.check)(o,(0,t.CheckInterface)({didRenderLayout:t.CheckFunction})).didRenderLayout(s,u),e.env.didCreate(n),e.updateWith(new Ne(n,u))}})),ae.add(i.Op.CommitComponentTransaction,(e=>{e.commitCacheGroup()})) +class Me{constructor(e,t,r){this.component=e,this.manager=t,this.dynamicScope=r}evaluate(e){let{component:t,manager:r,dynamicScope:n}=this +r.update(t,n)}}class Ne{constructor(e,t){this.component=e,this.bounds=t}evaluate(e){let{component:t,bounds:r}=this,{manager:n,state:i}=t +n.didUpdateLayout(i,r),e.env.didUpdate(t)}}class De{constructor(e){this.bucket=e}evaluate(e){e.env.debugRenderTree?.update(this.bucket)}}class je{constructor(e,t){this.bucket=e,this.bounds=t}evaluate(e){e.env.debugRenderTree?.didRender(this.bucket,this.bounds)}}(0,t.CheckInterface)({[l.COMPUTE]:t.CheckFunction}) +const Ie=(0,t.wrap)((()=>(0,t.CheckOption)((0,t.CheckInstanceof)(Se)))) +const Fe=new class{validate(e){return"object"==typeof e&&null!==e&&r.REFERENCE in e}expected(){return"Reference"}},Le=(0,t.CheckInterface)({next:t.CheckFunction,isEmpty:t.CheckFunction}),Be=(0,t.wrap)((()=>(0,t.CheckInstanceof)(et))),Ue=t.CheckFunction +const He=new class{validate(e){return e===r.UNDEFINED_REFERENCE}expected(){return"undefined"}},$e=(0,t.CheckInterface)({positional:(0,t.wrap)((()=>(0,t.CheckArray)(Fe))),named:(0,t.wrap)((()=>(0,t.CheckDict)(Fe)))}),Ve=(0,t.wrap)((()=>(0,t.CheckInstanceof)(d))),ze=(0,t.CheckInterface)({getCapabilities:t.CheckFunction}),qe=t.CheckNumber,Ge=(0,t.CheckInterface)({definition:t.CheckUnknown,state:t.CheckUnknown,handle:t.CheckUnknown,table:t.CheckUnknown}),We=(0,t.CheckOr)(t.CheckObject,t.CheckFunction),Ye=(0,t.CheckInterface)({handle:t.CheckNumber,symbolTable:t.CheckProgramSymbolTable});(0,t.CheckInterface)({setAttribute:t.CheckFunction}) +const Qe=(0,t.CheckInterface)({definition:t.CheckUnknown,state:t.CheckUnknown,handle:t.CheckHandle,table:t.CheckProgramSymbolTable}),Ke=(0,t.CheckInterface)({compile:t.CheckFunction,symbolTable:t.CheckBlockSymbolTable}),Je=(0,t.CheckInterface)({compile:t.CheckFunction,symbolTable:t.CheckProgramSymbolTable}),Xe=(0,t.CheckInterface)({0:Ke,1:Ve,2:t.CheckBlockSymbolTable}),Ze=(0,t.CheckInterface)({resolvedName:(0,t.CheckOption)(t.CheckString),handle:t.CheckNumber,state:(0,t.CheckOr)(t.CheckObject,t.CheckFunction),manager:ze,capabilities:qe,compilable:Je}) +class et{constructor(){this.stack=null,this.positional=new rt,this.named=new nt,this.blocks=new st}empty(e){let t=e[g][i.$sp]+1 +return this.named.empty(e,t),this.positional.empty(e,t),this.blocks.empty(e,t),this}setup(e,t,r,n,o){this.stack=e +let s=this.named,a=t.length,l=e[g][i.$sp]-a+1 +s.setup(e,l,a,t,o) +let u=l-n +this.positional.setup(e,u,n) +let c=this.blocks,p=r.length,d=u-3*p +c.setup(e,d,p,r)}get base(){return this.blocks.base}get length(){return this.positional.length+this.named.length+3*this.blocks.length}at(e){return this.positional.at(e)}realloc(e){let{stack:t}=this +if(e>0&&null!==t){let{positional:r,named:n}=this,o=r.base+e +for(let e=r.length+n.length-1;e>=0;e--)t.copy(e+r.base,e+o) +r.base+=e,n.base+=e,t[g][i.$sp]+=e}}capture(){let e=0===this.positional.length?gt:this.positional.capture() +return{named:0===this.named.length?mt:this.named.capture(),positional:e}}clear(){let{stack:e,length:t}=this +t>0&&null!==e&&e.pop(t)}}const tt=(0,n.emptyArray)() +class rt{constructor(){this.base=0,this.length=0,this.stack=null,this._references=null}empty(e,t){this.stack=e,this.base=t,this.length=0,this._references=tt}setup(e,t,r){this.stack=e,this.base=t,this.length=r,this._references=0===r?tt:null}at(e){let{base:n,length:i,stack:o}=this +return e<0||e>=i?r.UNDEFINED_REFERENCE:(0,t.check)(o.get(e,n),Fe)}capture(){return this.references}prepend(e){let t=e.length +if(t>0){let{base:r,length:n,stack:i}=this +this.base=r-=t,this.length=n+t +for(let o=0;o0){let{names:r,length:n,stack:i}=this,o=r.slice() +for(const s of t){-1===o.indexOf(s)&&(n=o.push(s),i.push(e[s]))}this.length=n,this._references=null,this._names=o,this._atNames=null}}get references(){let e=this._references +if(!e){let{base:t,length:r,stack:n}=this +e=this._references=n.slice(t,t+r)}return e}toSyntheticName(e){return e.slice(1)}toAtName(e){return`@${e}`}}function it(e){return`&${e}`}const ot=(0,n.emptyArray)() +class st{constructor(){this.internalValues=null,this._symbolNames=null,this.internalTag=null,this.names=n.EMPTY_STRING_ARRAY,this.length=0,this.base=0}empty(e,t){this.stack=e,this.names=n.EMPTY_STRING_ARRAY,this.base=t,this.length=0,this._symbolNames=null,this.internalTag=l.CONSTANT_TAG,this.internalValues=ot}setup(e,t,r,n){this.stack=e,this.names=n,this.base=t,this.length=r,this._symbolNames=null,0===r?(this.internalTag=l.CONSTANT_TAG,this.internalValues=ot):(this.internalTag=null,this.internalValues=null)}get values(){let e=this.internalValues +if(!e){let{base:t,length:r,stack:n}=this +e=this.internalValues=n.slice(t,t+3*r)}return e}has(e){return-1!==this.names.indexOf(e)}get(e){let r=this.names.indexOf(e) +if(-1===r)return null +let{base:n,stack:i}=this,o=(0,t.check)(i.get(3*r,n),(0,t.CheckOption)(t.CheckBlockSymbolTable)),s=(0,t.check)(i.get(3*r+1,n),(0,t.CheckOption)(Ve)),a=(0,t.check)(i.get(3*r+2,n),(0,t.CheckOption)((0,t.CheckOr)(t.CheckHandle,Ke))) +return null===a?null:[a,s,o]}capture(){return new at(this.names,this.values)}get symbolNames(){let e=this._symbolNames +return null===e&&(e=this._symbolNames=this.names.map(it)),e}}class at{constructor(e,t){this.length=void 0,this.names=e,this.values=t,this.length=e.length}has(e){return-1!==this.names.indexOf(e)}get(e){let t=this.names.indexOf(e) +return-1===t?null:[this.values[3*t+2],this.values[3*t+1],this.values[3*t]]}}function lt(e,t){return{named:e,positional:t}}function ut(e){let t=(0,n.dict)() +for(const[n,i]of Object.entries(e))t[n]=(0,r.valueForRef)(i) +return t}function ct(e){return e.map(r.valueForRef)}const pt=Symbol("ARGUMENT_ERROR") +function dt(e){return null!==e&&"object"==typeof e&&e[pt]}function ht(e){return{[pt]:!0,error:e}}function ft(e){return{named:function(e){let t=(0,n.dict)() +for(const[n,o]of Object.entries(e))try{t[n]=(0,r.valueForRef)(o)}catch(i){t[n]=ht(i)}return t}(e.named),positional:function(e){return e.map((e=>{try{return(0,r.valueForRef)(e)}catch(t){return ht(t)}}))}(e.positional)}}const mt=e.EMPTY_NAMED=Object.freeze(Object.create(null)),gt=e.EMPTY_POSITIONAL=tt,bt=e.EMPTY_ARGS=lt(mt,gt) +function yt(e){return"string"==typeof e?e:"function"!=typeof e.toString?"":String(e)}function vt(e,t){let r,i=(0,a.getInternalHelperManager)(e,!0) +return null===i?r=null:(r="function"==typeof i?i:i.getHelper(e),(0,n.assert)(i,"BUG: expected manager or helper")),r}function _t(e){return(0,n.assert)(Array.isArray(e)||e===r.UNDEFINED_REFERENCE,"a reference other than UNDEFINED_REFERENCE is illegal here"),e===r.UNDEFINED_REFERENCE}ae.add(i.Op.Curry,((e,{op1:o,op2:s})=>{let a=e.stack,l=(0,t.check)(a.pop(),Fe),u=(0,t.check)(a.pop(),$e),c=e.getOwner() +e.runtime.resolver +e.loadValue(i.$v0,function(e,t,o,s,a,l){let u,c +return(0,r.createComputeRef)((()=>{let a=(0,r.valueForRef)(t) +return a===u||(c=me(a,e)?s?ye(e,a,o,s):s:e===i.CurriedTypes.Component&&"string"==typeof a&&a||(0,n.isObject)(a)?ye(e,a,o,s):null,u=a),c}))}(o,l,c,u))})),ae.add(i.Op.DynamicHelper,(e=>{let s,a=e.stack,l=(0,t.check)(a.pop(),Fe),u=(0,t.check)(a.pop(),Be).capture(),c=e.getOwner(),p=(0,r.createComputeRef)((()=>{void 0!==s&&(0,o.destroy)(s) +let e=(0,r.valueForRef)(l) +if(me(e,i.CurriedTypes.Helper)){let{definition:t,owner:r,positional:i,named:a}=be(e),c=vt(t,l) +void 0!==a&&(u.named=(0,n.assign)({},...a,u.named)),void 0!==i&&(u.positional=i.concat(u.positional)),s=c(u,r),(0,o.associateDestroyableChild)(p,s)}else if((0,n.isObject)(e)){let t=vt(e,l) +s=t(u,c),(0,o._hasDestroyableChildren)(s)&&(0,o.associateDestroyableChild)(p,s)}else s=r.UNDEFINED_REFERENCE})),d=(0,r.createComputeRef)((()=>((0,r.valueForRef)(p),(0,r.valueForRef)(s)))) +e.associateDestroyable(p),e.loadValue(i.$v0,d)})),ae.add(i.Op.Helper,((e,{op1:r})=>{let n=e.stack,s=(0,t.check)(e[y].getValue(r),Ue)((0,t.check)(n.pop(),Be).capture(),e.getOwner(),e.dynamicScope());(0,o._hasDestroyableChildren)(s)&&e.associateDestroyable(s),e.loadValue(i.$v0,s)})),ae.add(i.Op.GetVariable,((e,{op1:t})=>{let r=e.referenceForSymbol(t) +e.stack.push(r)})),ae.add(i.Op.SetVariable,((e,{op1:r})=>{let n=(0,t.check)(e.stack.pop(),Fe) +e.scope().bindSymbol(r,n)})),ae.add(i.Op.SetBlock,((e,{op1:r})=>{let n=(0,t.check)(e.stack.pop(),Ke),i=(0,t.check)(e.stack.pop(),Ve),o=(0,t.check)(e.stack.pop(),t.CheckBlockSymbolTable) +e.scope().bindBlock(r,[n,i,o])})),ae.add(i.Op.ResolveMaybeLocal,((e,{op1:t})=>{let n=e[y].getValue(t),i=e.scope().getPartialMap()[n] +void 0===i&&(i=(0,r.childRefFor)(e.getSelf(),n)),e.stack.push(i)})),ae.add(i.Op.RootScope,((e,{op1:t})=>{e.pushRootScope(t,e.getOwner())})),ae.add(i.Op.GetProperty,((e,{op1:n})=>{let i=e[y].getValue(n),o=(0,t.check)(e.stack.pop(),Fe) +e.stack.push((0,r.childRefFor)(o,i))})),ae.add(i.Op.GetBlock,((e,{op1:t})=>{let{stack:r}=e,n=e.scope().getBlock(t) +r.push(n)})),ae.add(i.Op.SpreadBlock,(e=>{let{stack:r}=e,n=(0,t.check)(r.pop(),(0,t.CheckOption)((0,t.CheckOr)(Xe,He))) +if(n&&!_t(n)){let[e,t,i]=n +r.push(i),r.push(t),r.push(e)}else r.push(null),r.push(null),r.push(null)})),ae.add(i.Op.HasBlock,(e=>{let{stack:n}=e,i=(0,t.check)(n.pop(),(0,t.CheckOption)((0,t.CheckOr)(Xe,He))) +i&&!_t(i)?n.push(r.TRUE_REFERENCE):n.push(r.FALSE_REFERENCE)})),ae.add(i.Op.HasBlockParams,(e=>{let n=e.stack.pop(),i=e.stack.pop();(0,t.check)(n,(0,t.CheckMaybe)((0,t.CheckOr)(t.CheckHandle,Ke))),(0,t.check)(i,(0,t.CheckMaybe)(Ve)) +let o=(0,t.check)(e.stack.pop(),(0,t.CheckMaybe)(t.CheckBlockSymbolTable)),s=o&&o.parameters.length +e.stack.push(s?r.TRUE_REFERENCE:r.FALSE_REFERENCE)})),ae.add(i.Op.Concat,((e,{op1:n})=>{let i=new Array(n) +for(let r=n;r>0;r--){i[r-1]=(0,t.check)(e.stack.pop(),Fe)}var o +e.stack.push((o=i,(0,r.createComputeRef)((()=>{const e=[] +for(const t of o){const n=(0,r.valueForRef)(t) +null!=n&&e.push(yt(n))}return e.length>0?e.join(""):null}))))})),ae.add(i.Op.IfInline,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)(e.stack.pop(),Fe),o=(0,t.check)(e.stack.pop(),Fe) +e.stack.push((0,r.createComputeRef)((()=>!0===(0,s.toBool)((0,r.valueForRef)(n))?(0,r.valueForRef)(i):(0,r.valueForRef)(o))))})),ae.add(i.Op.Not,(e=>{let n=(0,t.check)(e.stack.pop(),Fe) +e.stack.push((0,r.createComputeRef)((()=>!(0,s.toBool)((0,r.valueForRef)(n)))))})),ae.add(i.Op.GetDynamicVar,(e=>{let n=e.dynamicScope(),i=e.stack,o=(0,t.check)(i.pop(),Fe) +i.push((0,r.createComputeRef)((()=>{let e=String((0,r.valueForRef)(o)) +return(0,r.valueForRef)(n.get(e))})))})),ae.add(i.Op.Log,(e=>{let{positional:n}=(0,t.check)(e.stack.pop(),Be).capture() +e.loadValue(i.$v0,(0,r.createComputeRef)((()=>{console.log(...ct(n))})))})) +class Ot{constructor(e,t,r){this.node=e,this.reference=t,this.lastValue=r}evaluate(){let e,t=(0,r.valueForRef)(this.reference),{lastValue:n}=this +if(t!==n&&(e=k(t)?"":S(t)?t:String(t),e!==n)){this.node.nodeValue=this.lastValue=e}}}function wt(e){return function(e){return S(e)||k(e)||"boolean"==typeof e||"number"==typeof e}(e)?i.ContentType.String:me(e,i.CurriedType.Component)||(0,a.hasInternalComponentManager)(e)?i.ContentType.Component:me(e,i.CurriedType.Helper)||(0,a.hasInternalHelperManager)(e)?i.ContentType.Helper:T(e)?i.ContentType.SafeString:function(e){return R(e)&&11===e.nodeType}(e)?i.ContentType.Fragment:R(e)?i.ContentType.Node:i.ContentType.String}function Et(e){return(0,n.isObject)(e)?me(e,i.CurriedType.Component)||(0,a.hasInternalComponentManager)(e)?i.ContentType.Component:i.ContentType.Helper:i.ContentType.String}function Ct(e,t){console.info("Use `context`, and `get()` to debug this template."),t("this")}ae.add(i.Op.ContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) +e.stack.push(wt((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,wt))})),ae.add(i.Op.DynamicContentType,(e=>{let n=(0,t.check)(e.stack.peek(),Fe) +e.stack.push(Et((0,r.valueForRef)(n))),(0,r.isConstRef)(n)||e.updateWith(new Oe(n,Et))})),ae.add(i.Op.AppendHTML,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=k(i)?"":String(i) +e.elements().appendDynamicHTML(o)})),ae.add(i.Op.AppendSafeHTML,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckSafeString).toHTML(),o=k(i)?"":(0,t.check)(i,t.CheckString) +e.elements().appendDynamicHTML(o)})),ae.add(i.Op.AppendText,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,r.valueForRef)(n),o=k(i)?"":String(i),s=e.elements().appendDynamicText(o);(0,r.isConstRef)(n)||e.updateWith(new Ot(s,n,o))})),ae.add(i.Op.AppendDocumentFragment,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckDocumentFragment) +e.elements().appendDynamicFragment(i)})),ae.add(i.Op.AppendNode,(e=>{let n=(0,t.check)(e.stack.pop(),Fe),i=(0,t.check)((0,r.valueForRef)(n),t.CheckNode) +e.elements().appendDynamicNode(i)})) +let kt=Ct +class Tt{constructor(e,t,r){this.locals=(0,n.dict)(),this.scope=e +for(const i of r){let r=(0,n.unwrap)(t[i-1]),o=e.getSymbol(i) +this.locals[r]=o}}get(e){let t,{scope:i,locals:o}=this,s=e.split("."),[a,...l]=e.split("."),u=i.getEvalScope() +return"this"===a?t=i.getSelf():o[a]?t=(0,n.unwrap)(o[a]):0===a.indexOf("@")&&u[a]?t=u[a]:(t=this.scope.getSelf(),l=s),l.reduce(((e,t)=>(0,r.childRefFor)(e,t)),t)}}ae.add(i.Op.Debugger,((e,{op1:t,op2:i})=>{let o=e[y].getArray(t),s=e[y].getArray((0,n.decodeHandle)(i)),a=new Tt(e.scope(),o,s) +kt((0,r.valueForRef)(e.getSelf()),(e=>(0,r.valueForRef)(a.get(e))))})),ae.add(i.Op.EnterList,((e,{op1:n,op2:i})=>{let o=e.stack,s=(0,t.check)(o.pop(),Fe),a=(0,t.check)(o.pop(),Fe),l=(0,r.valueForRef)(a),u=null===l?"@identity":String(l),c=(0,r.createIteratorRef)(s,u),p=(0,r.valueForRef)(c) +e.updateWith(new Oe(c,(e=>e.isEmpty()))),!0===p.isEmpty()?e.goto(i+1):(e.enterList(c,n),e.stack.push(p))})),ae.add(i.Op.ExitList,(e=>{e.exitList()})),ae.add(i.Op.Iterate,((e,{op1:r})=>{let n=e.stack,i=(0,t.check)(n.peek(),Le).next() +null!==i?e.registerItem(e.enterItem(i)):e.goto(r)})) +const Rt={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +class St{getCapabilities(){return Rt}getDebugName({name:e}){return e}getSelf(){return r.NULL_REFERENCE}getDestroyable(){return null}}e.TemplateOnlyComponentManager=St +const Pt=e.TEMPLATE_ONLY_COMPONENT_MANAGER=new St +class At{constructor(e="@glimmer/component/template-only",t="(unknown template-only component)"){this.moduleName=e,this.name=t}toString(){return this.moduleName}}e.TemplateOnlyComponent=At,(0,a.setInternalComponentManager)(Pt,At.prototype) +const xt={foreignObject:1,desc:1,title:1},Mt=Object.create(null) +class Nt{constructor(e){this.document=e,this.setupUselessElement()}setupUselessElement(){this.uselessElement=this.document.createElement("div")}createElement(e,t){let r,i +if(t?(r=t.namespaceURI===n.NS_SVG||"svg"===e,i=!!xt[t.tagName]):(r="svg"===e,i=!1),r&&!i){if(Mt[e])throw new Error(`Cannot create a ${e} inside an SVG context`) +return this.document.createElementNS(n.NS_SVG,e)}return this.document.createElement(e)}insertBefore(e,t,r){e.insertBefore(t,r)}insertHTMLBefore(e,t,r){if(""===r){const r=this.createComment("") +return e.insertBefore(r,t),new O(e,r,r)}const i=t?t.previousSibling:e.lastChild +let o +if(null===t)e.insertAdjacentHTML(n.INSERT_BEFORE_END,r),o=(0,n.expect)(e.lastChild,"bug in insertAdjacentHTML?") +else if(t instanceof HTMLElement)t.insertAdjacentHTML("beforebegin",r),o=(0,n.expect)(t.previousSibling,"bug in insertAdjacentHTML?") +else{const{uselessElement:i}=this +e.insertBefore(i,t),i.insertAdjacentHTML(n.INSERT_BEFORE_BEGIN,r),o=(0,n.expect)(i.previousSibling,"bug in insertAdjacentHTML?"),e.removeChild(i)}const s=(0,n.expect)(i?i.nextSibling:e.firstChild,"bug in insertAdjacentHTML?") +return new O(e,s,o)}createTextNode(e){return this.document.createTextNode(e)}createComment(e){return this.document.createComment(e)}}function Dt(e,t,r){if(!e)return t +if(!function(e,t){const r=e.createElementNS(t,"svg") +try{r.insertAdjacentHTML(n.INSERT_BEFORE_END,"")}catch(i){}finally{return 1!==r.childNodes.length||(0,n.castToBrowser)((0,n.unwrap)(r.firstChild),"SVG").namespaceURI!==n.NS_SVG}}(e,r))return t +const i=e.createElement("div") +return class extends t{insertHTMLBefore(e,t,o){return""===o||e.namespaceURI!==r?super.insertHTMLBefore(e,t,o):function(e,t,r,i){let o +if((0,n.assert)(""!==r,"html cannot be empty"),"FOREIGNOBJECT"===e.tagName.toUpperCase()){const e=""+r+"";(0,n.clearElement)(t),t.insertAdjacentHTML(n.INSERT_AFTER_BEGIN,e),o=t.firstChild.firstChild}else{const e=""+r+"";(0,n.clearElement)(t),t.insertAdjacentHTML(n.INSERT_AFTER_BEGIN,e),o=t.firstChild}return function(e,t,r){const i=(0,n.expect)(e.firstChild,"source is empty") +let o=i,s=i +for(;s;){const e=s.nextSibling +t.insertBefore(s,r),o=s,s=e}return new O(t,i,o)}(o,e,i)}(e,i,o,t)}}}function jt(e,t){return e&&function(e){const t=e.createElement("div") +if(t.appendChild(e.createTextNode("first")),t.insertAdjacentHTML(n.INSERT_BEFORE_END,"second"),2===t.childNodes.length)return!1 +return!0}(e)?class extends t{constructor(e){super(e),this.uselessComment=void 0,this.uselessComment=e.createComment("")}insertHTMLBefore(e,t,r){if(""===r)return super.insertHTMLBefore(e,t,r) +let n=!1 +const i=t?t.previousSibling:e.lastChild +i&&i instanceof Text&&(n=!0,e.insertBefore(this.uselessComment,t)) +const o=super.insertHTMLBefore(e,t,r) +return n&&e.removeChild(this.uselessComment),o}}:t}const It="undefined"==typeof document?null:(0,n.castToSimple)(document) +let Ft=class extends Nt{createElementNS(e,t){return this.document.createElementNS(e,t)}setAttribute(e,t,r,n=null){n?e.setAttributeNS(n,t,r):e.setAttribute(t,r)}} +Ft=jt(It,Ft),Ft=Dt(It,Ft,n.NS_SVG) +const Lt=e.DOMTreeConstruction=Ft;["b","big","blockquote","body","br","center","code","dd","div","dl","dt","em","embed","h1","h2","h3","h4","h5","h6","head","hr","i","img","li","listing","main","meta","nobr","ol","p","pre","ruby","s","small","span","strong","strike","sub","sup","table","tt","u","ul","var"].forEach((e=>Mt[e]=1)) +const Bt=/[\t\n\v\f\r \xA0\u{1680}\u{180e}\u{2000}-\u{200a}\u{2028}\u{2029}\u{202f}\u{205f}\u{3000}\u{feff}]/u,Ut="undefined"==typeof document?null:(0,n.castToSimple)(document) +class Ht extends Nt{constructor(e){super(e),this.namespace=void 0,this.document=e,this.namespace=null}setAttribute(e,t,r){e.setAttribute(t,r)}removeAttribute(e,t){e.removeAttribute(t)}insertAfter(e,t,r){this.insertBefore(e,t,r.nextSibling)}}e.IDOMChanges=Ht +let $t=Ht +$t=jt(Ut,$t),$t=Dt(Ut,$t,n.NS_SVG) +e.DOMChanges=$t +let Vt=0 +class zt{constructor(e){this.id=Vt++,this.value=void 0,this.value=e}get(){return this.value}release(){this.value=null}toString(){let e=`Ref ${this.id}` +if(null===this.value)return`${e} (released)` +try{return`${e}: ${this.value}`}catch{return e}}}class qt{constructor(){this.stack=new n.Stack,this.refs=new WeakMap,this.roots=new Set,this.nodes=new WeakMap}begin(){this.reset()}create(e,t){let r=(0,n.assign)({},t,{bounds:null,refs:new Set}) +this.nodes.set(e,r),this.appendChild(r,e),this.enter(e)}update(e){this.enter(e)}didRender(e,t){this.nodeFor(e).bounds=t,this.exit()}willDestroy(e){(0,n.expect)(this.refs.get(e),"BUG: missing ref").release()}commit(){this.reset()}capture(){return this.captureRefs(this.roots)}reset(){if(0!==this.stack.size){let e=(0,n.expect)(this.stack.toArray()[0],"expected root state when resetting render tree"),t=this.refs.get(e) +for(void 0!==t&&this.roots.delete(t);!this.stack.isEmpty();)this.stack.pop()}}enter(e){this.stack.push(e)}exit(){this.stack.pop()}nodeFor(e){return(0,n.expect)(this.nodes.get(e),"BUG: missing node")}appendChild(e,t){let r=this.stack.current,n=new zt(t) +if(this.refs.set(t,n),r){let t=this.nodeFor(r) +t.refs.add(n),e.parent=t}else this.roots.add(n)}captureRefs(e){let t=[] +return e.forEach((r=>{let n=r.get() +n?t.push(this.captureNode(`render-node:${r.id}`,n)):e.delete(r)})),t}captureNode(e,t){let r=this.nodeFor(t),{type:n,name:i,args:o,instance:s,refs:a}=r,l=this.captureTemplate(r),u=this.captureBounds(r),c=this.captureRefs(a) +return{id:e,type:n,name:i,args:ft(o),instance:s,template:l,bounds:u,children:c}}captureTemplate({template:e}){return e||null}captureBounds(e){let t=(0,n.expect)(e.bounds,"BUG: missing bounds") +return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}}const Gt=Symbol("TRANSACTION") +class Wt{constructor(){this.scheduledInstallModifiers=[],this.scheduledUpdateModifiers=[],this.createdComponents=[],this.updatedComponents=[]}didCreate(e){this.createdComponents.push(e)}didUpdate(e){this.updatedComponents.push(e)}scheduleInstallModifier(e){this.scheduledInstallModifiers.push(e)}scheduleUpdateModifier(e){this.scheduledUpdateModifiers.push(e)}commit(){let{createdComponents:e,updatedComponents:t}=this +for(const{manager:i,state:o}of e)i.didCreate(o) +for(const{manager:i,state:o}of t)i.didUpdate(o) +let{scheduledInstallModifiers:r,scheduledUpdateModifiers:n}=this +for(const{manager:i,state:o,definition:s}of r){let e=i.getTag(o) +if(null!==e){let t=(0,l.track)((()=>i.install(o)),!1);(0,l.updateTag)(e,t)}else i.install(o)}for(const{manager:i,state:o,definition:s}of n){let e=i.getTag(o) +if(null!==e){let t=(0,l.track)((()=>i.update(o)),!1);(0,l.updateTag)(e,t)}else i.update(o)}}}class Yt{constructor(e,t){this[Gt]=null,this.updateOperations=void 0,this.isInteractive=void 0,this.isArgumentCaptureError=void 0,this.debugRenderTree=void 0,this.delegate=t,this.isInteractive=t.isInteractive,this.debugRenderTree=this.delegate.enableDebugTooling?new qt:void 0,this.isArgumentCaptureError=this.delegate.enableDebugTooling?dt:void 0,e.appendOperations?(this.appendOperations=e.appendOperations,this.updateOperations=e.updateOperations):e.document&&(this.appendOperations=new Lt(e.document),this.updateOperations=new Ht(e.document))}getAppendOperations(){return this.appendOperations}getDOM(){return(0,n.expect)(this.updateOperations,"Attempted to get DOM updateOperations, but they were not provided by the environment. You may be attempting to rerender in an environment which does not support rerendering, such as SSR.")}begin(){(0,n.assert)(!this[Gt],"A glimmer transaction was begun, but one already exists. You may have a nested transaction, possibly caused by an earlier runtime exception while rendering. Please check your console for the stack trace of any prior exceptions."),this.debugRenderTree?.begin(),this[Gt]=new Wt}get transaction(){return(0,n.expect)(this[Gt],"must be in a transaction")}didCreate(e){this.transaction.didCreate(e)}didUpdate(e){this.transaction.didUpdate(e)}scheduleInstallModifier(e){this.isInteractive&&this.transaction.scheduleInstallModifier(e)}scheduleUpdateModifier(e){this.isInteractive&&this.transaction.scheduleUpdateModifier(e)}commit(){let e=this.transaction +this[Gt]=null,e.commit(),this.debugRenderTree?.commit(),this.delegate.onTransactionCommit()}}function Qt(e,t){if(e[Gt])t() +else{e.begin() +try{t()}finally{e.commit()}}}function Kt(e){return(0,a.setInternalHelperManager)(e,{})}e.EnvironmentImpl=Yt +e.array=Kt((({positional:e})=>(0,r.createComputeRef)((()=>ct(e)),null,"array"))) +const Jt=e=>(e=>null==e||"function"!=typeof e.toString)(e)?"":String(e),Xt=(e.concat=Kt((({positional:e})=>(0,r.createComputeRef)((()=>ct(e).map(Jt).join("")),null,"concat"))),(0,n.buildUntouchableThis)("`fn` helper")) +e.fn=Kt((({positional:e})=>{let n=(0,t.check)(e[0],Zt) +return(0,r.createComputeRef)((()=>(...t)=>{let[i,...o]=ct(e) +if((0,r.isInvokableRef)(n)){let e=o.length>0?o[0]:t[0] +return(0,r.updateRef)(n,e)}return i.call(Xt,...o,...t)}),null,"fn")})) +function Zt(e){if(!e||!(0,r.isInvokableRef)(e)&&"function"!=typeof(0,r.valueForRef)(e))throw new Error(`You must pass a function as the \`fn\` helper's first argument, you passed ${e?(0,r.valueForRef)(e):e}. While rendering:\n\n${e?.debugLabel}`)}e.get=Kt((({positional:e})=>{let t=e[0]??r.UNDEFINED_REFERENCE,i=e[1]??r.UNDEFINED_REFERENCE +return(0,r.createComputeRef)((()=>{let e=(0,r.valueForRef)(t) +if((0,n.isDict)(e))return(0,s.getPath)(e,String((0,r.valueForRef)(i)))}),(e=>{let o=(0,r.valueForRef)(t) +if((0,n.isDict)(o))return(0,s.setPath)(o,String((0,r.valueForRef)(i)),e)}),"get")})),e.hash=Kt((({named:e})=>{let t=(0,r.createComputeRef)((()=>ut(e)),null,"hash"),n=new Map +for(let r in e)n.set(r,e[r]) +return t.children=n,t})) +function er(e){return(0,l.getValue)(e.argsCache)}class tr{constructor(e,t=(()=>bt)){this.argsCache=void 0 +let r=(0,l.createCache)((()=>t(e))) +this.argsCache=r}get named(){return er(this).named||mt}get positional(){return er(this).positional||gt}}(0,n.buildUntouchableThis)("`on` modifier") +class rr{constructor(e,t){this.tag=(0,l.createUpdatableTag)(),this.element=void 0,this.args=void 0,this.listener=null,this.element=e,this.args=t,(0,o.registerDestructor)(this,(()=>{let{element:e,listener:t}=this +if(t){let{eventName:r,callback:n,options:i}=t +or(e,r,n,i)}}))}updateListener(){let{element:e,args:i,listener:o}=this;(0,n.assert)(i.positional[0],"You must pass a valid DOM event name as the first argument to the `on` modifier") +let s=(0,t.check)((0,r.valueForRef)(i.positional[0]),t.CheckString,(()=>"You must pass a valid DOM event name as the first argument to the `on` modifier"));(0,n.assert)(i.positional[1],"You must pass a function as the second argument to the `on` modifier") +let a,l,u,c=(0,t.check)((0,r.valueForRef)(i.positional[1]),t.CheckFunction,(e=>`You must pass a function as the second argument to the \`on\` modifier; you passed ${null===e?"null":typeof e}. While rendering:\n\n${i.positional[1]?.debugLabel??"{unlabeled value}"}`)) +{let{once:e,passive:t,capture:n}=i.named +e&&(a=(0,r.valueForRef)(e)),t&&(l=(0,r.valueForRef)(t)),n&&(u=(0,r.valueForRef)(n))}let p,d=!1 +if(d=null===o||(s!==o.eventName||c!==o.userProvidedCallback||a!==o.once||l!==o.passive||u!==o.capture),d&&(void 0===a&&void 0===l&&void 0===u||(p={once:a,passive:l,capture:u})),d){let t=c +0,this.listener={eventName:s,callback:t,userProvidedCallback:c,once:a,passive:l,capture:u,options:p},o&&or(e,o.eventName,o.callback,o.options),function(e,t,r,n){nr++,e.addEventListener(t,r,n)}(e,s,t,p)}}}let nr=0,ir=0 +function or(e,t,r,n){ir++,e.removeEventListener(t,r,n)}e.on=(0,a.setInternalModifierManager)(new class{getDebugName(){return"on"}getDebugInstance(){return null}get counters(){return{adds:nr,removes:ir}}create(e,t,r,n){return new rr(t,n)}getTag({tag:e}){return e}install(e){e.updateListener()}update(e){e.updateListener()}getDestroyable(e){return e}},{}) +class sr{constructor(e,t,r,n,i){this.currentOpSize=0,this.stack=e,this.heap=t,this.program=r,this.externs=n,this.registers=i}fetchRegister(e){return this.registers[e]}loadRegister(e,t){this.registers[e]=t}setPc(e){(0,n.assert)("number"==typeof e&&!isNaN(e),"pc is set to a number"),this.registers[i.$pc]=e}pushFrame(){this.stack.push(this.registers[i.$ra]),this.stack.push(this.registers[i.$fp]),this.registers[i.$fp]=this.registers[i.$sp]-1}popFrame(){this.registers[i.$sp]=this.registers[i.$fp]-1,this.registers[i.$ra]=this.stack.get(0),this.registers[i.$fp]=this.stack.get(1)}pushSmallFrame(){this.stack.push(this.registers[i.$ra])}popSmallFrame(){this.registers[i.$ra]=this.stack.pop()}goto(e){this.setPc(this.target(e))}target(e){return this.registers[i.$pc]+e-this.currentOpSize}call(e){(0,n.assert)(e<4294967295,"Jumping to placeholder address"),this.registers[i.$ra]=this.registers[i.$pc],this.setPc(this.heap.getaddr(e))}returnTo(e){this.registers[i.$ra]=this.target(e)}return(){this.setPc(this.registers[i.$ra])}nextStatement(){let{registers:e,program:t}=this,r=e[i.$pc] +if((0,n.assert)("number"==typeof r,"pc is a number"),-1===r)return null +let o=t.opcode(r),s=this.currentOpSize=o.size +return this.registers[i.$pc]+=s,o}evaluateOuter(e,t){this.evaluateInner(e,t)}evaluateInner(e,t){e.isMachine?this.evaluateMachine(e):this.evaluateSyscall(e,t)}evaluateMachine(e){switch(e.type){case i.MachineOp.PushFrame:return this.pushFrame() +case i.MachineOp.PopFrame:return this.popFrame() +case i.MachineOp.InvokeStatic:return this.call(e.op1) +case i.MachineOp.InvokeVirtual:return this.call(this.stack.pop()) +case i.MachineOp.Jump:return this.goto(e.op1) +case i.MachineOp.Return:return this.return() +case i.MachineOp.ReturnTo:return this.returnTo(e.op1)}}evaluateSyscall(e,t){ae.evaluate(t,e,e.type)}}class ar{constructor(e,{alwaysRevalidate:t=!1}){this.env=void 0,this.dom=void 0,this.alwaysRevalidate=void 0,this.frameStack=new n.Stack,this.env=e,this.dom=e.getDOM(),this.alwaysRevalidate=t}execute(e,t){this._execute(e,t)}_execute(e,t){let{frameStack:r}=this +for(this.try(e,t);!r.isEmpty();){let e=this.frame.nextStatement() +void 0!==e?e.evaluate(this):r.pop()}}get frame(){return(0,n.expect)(this.frameStack.current,"bug: expected a frame")}goto(e){this.frame.goto(e)}try(e,t){this.frameStack.push(new hr(e,t))}throw(){this.frame.handleException(),this.frameStack.pop()}}e.UpdatingVM=ar +class lr{constructor(e,t){this.state=e,this.resumeCallback=t}resume(e,t){return this.resumeCallback(e,this.state,t)}}class ur{constructor(e,t,r,n){this.children=void 0,this.bounds=void 0,this.state=e,this.runtime=t,this.children=n,this.bounds=r}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}evaluate(e){e.try(this.children,null)}}class cr extends ur{constructor(...e){super(...e),this.type="try"}evaluate(e){e.try(this.children,this)}handleException(){let{state:e,bounds:t,runtime:r}=this;(0,o.destroyChildren)(this) +let n=re.resume(r.env,t),i=e.resume(r,n),s=[],a=this.children=[],l=i.execute((e=>{e.pushUpdating(s),e.updateWith(this),e.pushUpdating(a)}));(0,o.associateDestroyableChild)(this,l.drop)}}class pr extends cr{constructor(e,t,r,n,i,o){super(e,t,r,[]),this.retained=!1,this.index=-1,this.key=n,this.memo=i,this.value=o}updateReferences(e){this.retained=!0,(0,r.updateRef)(this.value,e.value),(0,r.updateRef)(this.memo,e.memo)}shouldRemove(){return!this.retained}reset(){this.retained=!1}}class dr extends ur{constructor(e,t,n,i,o){super(e,t,n,i),this.type="list-block",this.opcodeMap=new Map,this.marker=null,this.lastIterator=void 0,this.iterableRef=o,this.lastIterator=(0,r.valueForRef)(o)}initializeChild(e){e.index=this.children.length-1,this.opcodeMap.set(e.key,e)}evaluate(e){let t=(0,r.valueForRef)(this.iterableRef) +if(this.lastIterator!==t){let{bounds:r}=this,{dom:i}=e,o=this.marker=i.createComment("") +i.insertAfter(r.parentElement(),o,(0,n.expect)(r.lastNode(),"can't insert after an empty bounds")),this.sync(t),this.parentElement().removeChild(o),this.marker=null,this.lastIterator=t}super.evaluate(e)}sync(e){let{opcodeMap:t,children:r}=this,i=0,o=0 +for(this.children=this.bounds.boundList=[];;){let s=e.next() +if(null===s)break +let a=r[i],{key:l}=s +for(;void 0!==a&&!0===a.retained;)a=r[++i] +if(void 0!==a&&a.key===l)this.retainItem(a,s),i++ +else if(t.has(l)){let e=t.get(l) +if(e.index{t.pushUpdating() +let n=t.enterItem(e) +n.index=a.length,a.push(n),r.set(l,n),(0,o.associateDestroyableChild)(this,n)}))}moveItem(e,t,n){let i,o,{children:s}=this;(0,r.updateRef)(e.memo,t.memo),(0,r.updateRef)(e.value,t.value),e.retained=!0,void 0===n?w(e,this.marker):(i=e.lastNode().nextSibling,o=n.firstNode(),i!==o&&w(e,o)),e.index=s.length,s.push(e)}deleteItem(e){(0,o.destroy)(e),E(e),this.opcodeMap.delete(e.key)}}class hr{constructor(e,t){this.current=0,this.ops=e,this.exceptionHandler=t}goto(e){this.current=e}nextStatement(){return this.ops[this.current++]}handleException(){this.exceptionHandler&&this.exceptionHandler.handleException()}}class fr{constructor(e,t,r,n){this.env=e,this.updating=t,this.bounds=r,this.drop=n,(0,o.associateDestroyableChild)(this,n),(0,o.registerDestructor)(this,(()=>E(this.bounds)))}rerender({alwaysRevalidate:e=!1}={alwaysRevalidate:!1}){let{env:t,updating:r}=this +new ar(t,{alwaysRevalidate:e}).execute(r,this)}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}handleException(){throw"this should never happen"}}class mr{static restore(e){return new this(e.slice(),[0,-1,e.length-1,0])}constructor(e=[],t){this[g]=void 0,this.stack=e,this[g]=t}push(e){this.stack[++this[g][i.$sp]]=e}dup(e=this[g][i.$sp]){this.stack[++this[g][i.$sp]]=this.stack[e]}copy(e,t){this.stack[t]=this.stack[e]}pop(e=1){let t=this.stack[this[g][i.$sp]] +return this[g][i.$sp]-=e,t}peek(e=0){return this.stack[this[g][i.$sp]-e]}get(e,t=this[g][i.$fp]){return this.stack[t+e]}set(e,t,r=this[g][i.$fp]){this.stack[r+t]=e}slice(e,t){return this.stack.slice(e,t)}capture(e){let t=this[g][i.$sp]+1,r=t-e +return this.stack.slice(r,t)}reset(){this.stack.length=0}toArray(){return this.stack.slice(this[g][i.$fp],this[g][i.$sp]+1)}}class gr{constructor(){this.scope=new n.Stack,this.dynamicScope=new n.Stack,this.updating=new n.Stack,this.cache=new n.Stack,this.list=new n.Stack}}class br{get stack(){return this[h].stack}get pc(){return this[h].fetchRegister(i.$pc)}fetch(e){let t=this.fetchValue(e) +this.stack.push(t)}load(e){let t=this.stack.pop() +this.loadValue(e,t)}fetchValue(e){if((0,i.isLowLevelRegister)(e))return this[h].fetchRegister(e) +switch(e){case i.$s0:return this.s0 +case i.$s1:return this.s1 +case i.$t0:return this.t0 +case i.$t1:return this.t1 +case i.$v0:return this.v0}}loadValue(e,t){switch((0,i.isLowLevelRegister)(e)&&this[h].loadRegister(e,t),e){case i.$s0:this.s0=t +break +case i.$s1:this.s1=t +break +case i.$t0:this.t0=t +break +case i.$t1:this.t1=t +break +case i.$v0:this.v0=t}}pushFrame(){this[h].pushFrame()}popFrame(){this[h].popFrame()}goto(e){this[h].goto(e)}call(e){this[h].call(e)}returnTo(e){this[h].returnTo(e)}return(){this[h].return()}constructor(e,{pc:t,scope:r,dynamicScope:o,stack:s},a,l){this[m]=new gr,this[b]=void 0,this.destructor=void 0,this[f]=new n.Stack,this[y]=void 0,this[v]=void 0,this[h]=void 0,this.s0=null,this.s1=null,this.t0=null,this.t1=null,this.v0=null,this.resume=void 0,this.runtime=e,this.elementStack=a,this.context=l,this.resume=vr(l) +let u=mr.restore(s);(0,n.assert)("number"==typeof t,"pc is a number"),u[g][i.$pc]=t,u[g][i.$sp]=s.length-1,u[g][i.$fp]=-1,this[b]=this.program.heap,this[y]=this.program.constants,this.elementStack=a,this[m].scope.push(r),this[m].dynamicScope.push(o),this[v]=new et,this[h]=new sr(u,this[b],e.program,{debugBefore:e=>ae.debugBefore(this,e),debugAfter:e=>{ae.debugAfter(this,e)}},u[g]),this.destructor={},this[f].push(this.destructor)}static initial(e,t,{handle:r,self:n,dynamicScope:i,treeBuilder:o,numSymbols:s,owner:a}){let l=d.root(n,s,a),u=yr(e.program.heap.getaddr(r),l,i),c=vr(t)(e,u,o) +return c.pushUpdating(),c}static empty(e,{handle:t,treeBuilder:n,dynamicScope:i,owner:o},s){let a=vr(s)(e,yr(e.program.heap.getaddr(t),d.root(r.UNDEFINED_REFERENCE,0,o),i),n) +return a.pushUpdating(),a}compile(e){return(0,n.unwrapHandle)(e.compile(this.context))}get program(){return this.runtime.program}get env(){return this.runtime.env}captureState(e,t=this[h].fetchRegister(i.$pc)){return{pc:t,scope:this.scope(),dynamicScope:this.dynamicScope(),stack:this.stack.capture(e)}}capture(e,t=this[h].fetchRegister(i.$pc)){return new lr(this.captureState(e,t),this.resume)}beginCacheGroup(e){let t=this.updating(),r=new we +t.push(r),t.push(new Ee(e)),this[m].cache.push(r),(0,l.beginTrackFrame)(e)}commitCacheGroup(){let e=this.updating(),t=(0,n.expect)(this[m].cache.pop(),"VM BUG: Expected a cache group"),r=(0,l.endTrackFrame)() +e.push(new Ce(t)),t.finalize(r,e.length)}enter(e){let t=this.capture(e),r=this.elements().pushUpdatableBlock(),n=new cr(t,this.runtime,r,[]) +this.didEnter(n)}enterItem({key:e,value:t,memo:n}){let{stack:i}=this,o=(0,r.createIteratorItemRef)(t),s=(0,r.createIteratorItemRef)(n) +i.push(o),i.push(s) +let a=this.capture(2),l=this.elements().pushUpdatableBlock(),u=new pr(a,this.runtime,l,e,s,o) +return this.didEnter(u),u}registerItem(e){this.listBlock().initializeChild(e)}enterList(e,t){let r=[],n=this[h].target(t),i=this.capture(0,n),o=this.elements().pushBlockList(r),s=new dr(i,this.runtime,o,r,e) +this[m].list.push(s),this.didEnter(s)}didEnter(e){this.associateDestroyable(e),this[f].push(e),this.updateWith(e),this.pushUpdating(e.children)}exit(){this[f].pop(),this.elements().popBlock(),this.popUpdating()}exitList(){this.exit(),this[m].list.pop()}pushUpdating(e=[]){this[m].updating.push(e)}popUpdating(){return(0,n.expect)(this[m].updating.pop(),"can't pop an empty stack")}updateWith(e){this.updating().push(e)}listBlock(){return(0,n.expect)(this[m].list.current,"expected a list block")}associateDestroyable(e){let t=(0,n.expect)(this[f].current,"Expected destructor parent");(0,o.associateDestroyableChild)(t,e)}tryUpdating(){return this[m].updating.current}updating(){return(0,n.expect)(this[m].updating.current,"expected updating opcode on the updating opcode stack")}elements(){return this.elementStack}scope(){return(0,n.expect)(this[m].scope.current,"expected scope on the scope stack")}dynamicScope(){return(0,n.expect)(this[m].dynamicScope.current,"expected dynamic scope on the dynamic scope stack")}pushChildScope(){this[m].scope.push(this.scope().child())}pushDynamicScope(){let e=this.dynamicScope().child() +return this[m].dynamicScope.push(e),e}pushRootScope(e,t){let r=d.sized(e,t) +return this[m].scope.push(r),r}pushScope(e){this[m].scope.push(e)}popScope(){this[m].scope.pop()}popDynamicScope(){this[m].dynamicScope.pop()}getOwner(){return this.scope().owner}getSelf(){return this.scope().getSelf()}referenceForSymbol(e){return this.scope().getSymbol(e)}execute(e){return this._execute(e)}_execute(e){let t +e&&e(this) +do{t=this.next()}while(!t.done) +return t.value}next(){let e,{env:t,elementStack:r}=this,n=this[h].nextStatement() +return null!==n?(this[h].evaluateOuter(n,this),e={done:!1,value:null}):(this.stack.reset(),e={done:!0,value:new fr(t,this.popUpdating(),r.popBlock(),this.destructor)}),e}bindDynamicScope(e){let t=this.dynamicScope() +for(const r of(0,n.reverse)(e))t.set(r,this.stack.pop())}}function yr(e,t,r){return{pc:e,scope:t,dynamicScope:r,stack:[]}}function vr(e){return(t,r,n)=>new br(t,r,n,e)}e.LowLevelVM=br +class _r{constructor(e){this.vm=e}next(){return this.vm.next()}sync(){return this.vm.execute()}}const Or=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" +class wr extends _{constructor(e,t,r){super(e,t),this.candidate=null,this.openBlockDepth=void 0,this.injectedOmittedNode=!1,this.startingBlockDepth=r,this.openBlockDepth=r-1}}class Er extends re{constructor(e,t,r){if(super(e,t,r),this.unmatchedAttributes=null,this.blockDepth=0,this.startingBlockOffset=void 0,r)throw new Error("Rehydration with nextSibling not supported") +let i=this.currentCursor.element.firstChild +for(;null!==i&&!Cr(i);)i=i.nextSibling;(0,n.assert)(i,"Must have opening comment for rehydration."),this.candidate=i +const o=Tr(i) +if(0!==o){const e=o-1,t=this.dom.createComment(`%+b:${e}%`) +i.parentNode.insertBefore(t,this.candidate) +let r=i.nextSibling +for(;null!==r&&(!kr(r)||Tr(r)!==o);)r=r.nextSibling;(0,n.assert)(r,"Must have closing comment for starting block comment") +const s=this.dom.createComment(`%-b:${e}%`) +i.parentNode.insertBefore(s,r.nextSibling),this.candidate=t,this.startingBlockOffset=e}else this.startingBlockOffset=0}get currentCursor(){return this[te].current}get candidate(){return this.currentCursor?this.currentCursor.candidate:null}set candidate(e){this.currentCursor.candidate=e}disableRehydration(e){const t=this.currentCursor +t.candidate=null,t.nextSibling=e}enableRehydration(e){const t=this.currentCursor +t.candidate=e,t.nextSibling=null}pushElement(e,t=null){const r=new wr(e,t,this.blockDepth||0) +null!==this.candidate&&(r.candidate=e.firstChild,this.candidate=e.nextSibling),this[te].push(r)}clearMismatch(e){let t=e +const r=this.currentCursor +if(null!==r){const e=r.openBlockDepth +if(e>=r.startingBlockDepth)for(;t;){if(kr(t)){if(e>=Rr(t,this.startingBlockOffset))break}t=this.remove(t)}else for(;null!==t;)t=this.remove(t) +this.disableRehydration(t)}}__openBlock(){const{currentCursor:e}=this +if(null===e)return +const t=this.blockDepth +this.blockDepth++ +const{candidate:r}=e +if(null===r)return +const{tagName:n}=e.element +Cr(r)&&Rr(r,this.startingBlockOffset)===t?(this.candidate=this.remove(r),e.openBlockDepth=t):"TITLE"!==n&&"SCRIPT"!==n&&"STYLE"!==n&&this.clearMismatch(r)}__closeBlock(){const{currentCursor:e}=this +if(null===e)return +const t=e.openBlockDepth +this.blockDepth-- +const{candidate:r}=e +let n=!1 +if(null!==r)if(n=!0,kr(r)&&Rr(r,this.startingBlockOffset)===t){const t=this.remove(r) +this.candidate=t,e.openBlockDepth--}else this.clearMismatch(r),n=!1 +if(!1===n){const t=e.nextSibling +if(null!==t&&kr(t)&&Rr(t,this.startingBlockOffset)===this.blockDepth){const r=this.remove(t) +this.enableRehydration(r),e.openBlockDepth--}}}__appendNode(e){const{candidate:t}=this +return t||super.__appendNode(e)}__appendHTML(e){const t=this.markerBounds() +if(t){const e=t.firstNode(),r=t.lastNode(),n=new O(this.element,e.nextSibling,r.previousSibling),i=this.remove(e) +return this.remove(r),null!==i&&Ar(i)&&(this.candidate=this.remove(i),null!==this.candidate&&this.clearMismatch(this.candidate)),n}return super.__appendHTML(e)}remove(e){const t=(0,n.expect)(e.parentNode,"cannot remove a detached node"),r=e.nextSibling +return t.removeChild(e),r}markerBounds(){const e=this.candidate +if(e&&Pr(e)){const t=e +let r=(0,n.expect)(t.nextSibling,"BUG: serialization markers must be paired") +for(;r&&!Pr(r);)r=(0,n.expect)(r.nextSibling,"BUG: serialization markers must be paired") +return new O(this.element,t,r)}return null}__appendText(e){const{candidate:t}=this +return t?3===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):function(e){return 8===e.nodeType&&"%|%"===e.nodeValue}(t)||Ar(t)&&""===e?(this.candidate=this.remove(t),this.__appendText(e)):(this.clearMismatch(t),super.__appendText(e)):super.__appendText(e)}__appendComment(e){const t=this.candidate +return t&&8===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):(t&&this.clearMismatch(t),super.__appendComment(e))}__openElement(e){const t=this.candidate +if(t&&Sr(t)&&function(e,t){if(e.namespaceURI===n.NS_SVG)return e.tagName===t +return e.tagName===t.toUpperCase()}(t,e))return this.unmatchedAttributes=[].slice.call(t.attributes),t +if(t){if(Sr(t)&&"TBODY"===t.tagName)return this.pushElement(t,null),this.currentCursor.injectedOmittedNode=!0,this.__openElement(e) +this.clearMismatch(t)}return super.__openElement(e)}__setAttribute(e,t,r){const n=this.unmatchedAttributes +if(n){const r=xr(n,e) +if(r)return r.value!==t&&(r.value=t),void n.splice(n.indexOf(r),1)}return super.__setAttribute(e,t,r)}__setProperty(e,t){const r=this.unmatchedAttributes +if(r){const n=xr(r,e) +if(n)return n.value!==t&&(n.value=t),void r.splice(r.indexOf(n),1)}return super.__setProperty(e,t)}__flushElement(e,t){const{unmatchedAttributes:r}=this +if(r){for(const e of r)this.constructing.removeAttribute(e.name) +this.unmatchedAttributes=null}else super.__flushElement(e,t)}willCloseElement(){const{candidate:e,currentCursor:t}=this +null!==e&&this.clearMismatch(e),t&&t.injectedOmittedNode&&this.popElement(),super.willCloseElement()}getMarker(e,t){const r=e.querySelector(`script[glmr="${t}"]`) +return r?(0,n.castToSimple)(r):null}__pushRemoteElement(e,t,r){const i=this.getMarker((0,n.castToBrowser)(e,"HTML"),t) +if((0,n.assert)(!i||i.parentNode===e,"expected remote element marker's parent node to match remote element"),void 0===r){for(;null!==e.firstChild&&e.firstChild!==i;)this.remove(e.firstChild) +r=null}const o=new wr(e,null,this.blockDepth) +this[te].push(o),null===i?this.disableRehydration(r):this.candidate=this.remove(i) +const s=new ie(e) +return this.pushLiveBlock(s,!0)}didAppendBounds(e){if(super.didAppendBounds(e),this.candidate){const t=e.lastNode() +this.candidate=t&&t.nextSibling}return e}}function Cr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%+b:",0)}function kr(e){return e.nodeType===n.COMMENT_NODE&&0===e.nodeValue.lastIndexOf("%-b:",0)}function Tr(e){return parseInt(e.nodeValue.slice(4),10)}function Rr(e,t){return Tr(e)-t}function Sr(e){return 1===e.nodeType}function Pr(e){return 8===e.nodeType&&"%glmr%"===e.nodeValue}function Ar(e){return 8===e.nodeType&&"% %"===e.nodeValue}function xr(e,t){for(const r of e)if(r.name===t)return r}e.RehydrateBuilder=Er})),e("@glimmer/tracking/index",["exports","@ember/-internals/metal"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"cached",{enumerable:!0,get:function(){return t.cached}}),Object.defineProperty(e,"tracked",{enumerable:!0,get:function(){return t.tracked}})})),e("@glimmer/tracking/primitives/cache",["exports","@ember/-internals/metal"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"createCache",{enumerable:!0,get:function(){return t.createCache}}),Object.defineProperty(e,"getValue",{enumerable:!0,get:function(){return t.getValue}}),Object.defineProperty(e,"isConst",{enumerable:!0,get:function(){return t.isConst}})})),e("@glimmer/util",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.TEXT_NODE=e.Stack=e.SERIALIZATION_FIRST_NODE_STRING=e.RAW_NODE=e.NS_XMLNS=e.NS_XML=e.NS_XLINK=e.NS_SVG=e.NS_MATHML=e.NS_HTML=e.LOGGER=e.LOCAL_LOGGER=e.ImmediateConstants=e.INSERT_BEFORE_END=e.INSERT_BEFORE_BEGIN=e.INSERT_AFTER_END=e.INSERT_AFTER_BEGIN=e.EMPTY_STRING_ARRAY=e.EMPTY_NUMBER_ARRAY=e.EMPTY_ARRAY=e.ELEMENT_NODE=e.DOCUMENT_TYPE_NODE=e.DOCUMENT_NODE=e.DOCUMENT_FRAGMENT_NODE=e.COMMENT_NODE=void 0,e.arrayToOption=function(e){return a(e)?e:null},e.asPresentArray=function(e,t="unexpected empty list"){return l(e,t),e},e.assert=function(e,t){if(!e)throw new Error(t||"assertion failure")},e.assertNever=function(e,t="unexpected unreachable branch"){throw R.log("unreachable",e),R.log(`${t} :: ${JSON.stringify(e)} (${e})`),new Error("code reached unreachable")},e.assertPresent=function(e,t){if(!s(e))throw new Error(`Expected present, got ${"string"==typeof e?e:t}`)},e.assertPresentArray=l,e.beginTestSteps=e.assign=void 0,e.buildUntouchableThis=function(e){let t=null +0 +return t},e.castToBrowser=function(e,t){if(null==e)return null +if(void 0===typeof document)throw new Error("Attempted to cast to a browser node in a non-browser context") +if(w(e))return e +if(e.ownerDocument!==document)throw new Error("Attempted to cast to a browser node with a node that was not created from this document") +return C(e,t)},e.castToSimple=function(e){return w(e)||E(e),e},e.checkNode=C,e.clearElement=function(e){let t=e.firstChild +for(;t;){let r=t.nextSibling +e.removeChild(t),t=r}},e.constants=function(...e){return[!1,!0,null,void 0,...e]},e.debugToString=void 0,e.decodeHandle=function(e){return e},e.decodeImmediate=_,e.decodeNegative=g,e.decodePositive=y,e.deprecate=function(e){T.warn(`DEPRECATION: ${e}`)},e.dict=function(){return Object.create(null)},e.emptyArray=r,e.encodeHandle=function(e){return e},e.encodeImmediate=v,e.encodeNegative=m,e.encodePositive=b,e.endTestSteps=void 0,e.entries=function(e){return Object.entries(e)},e.enumerate=n +e.exhausted=function(e){throw new Error(`Exhausted ${String(e)}`)},e.expect=function(e,t){if(null==e)throw new Error(t) +return e},e.extractHandle=function(e){return"number"==typeof e?e:e.handle},e.getFirst=c,e.getLast=u,e.ifPresent=function(e,t,r){return a(e)?t(e):r()},e.intern=function(e){let t={} +t[e]=1 +for(let r in t)if(r===e)return r +return e},e.isDict=function(e){return null!=e},e.isElement=function(e){return e?.nodeType===d&&e instanceof Element},e.isEmptyArray=function(e){return e===t},e.isErrHandle=function(e){return"number"==typeof e},e.isHandle=function(e){return e>=0},e.isNonPrimitiveHandle=function(e){return e>f.ENCODED_UNDEFINED_HANDLE},e.isObject=function(e){return"function"==typeof e||"object"==typeof e&&null!==e},e.isOkHandle=function(e){return"number"==typeof e},e.isPresent=s,e.isPresentArray=a,e.isSerializationFirstNode=function(e){return e.nodeValue===O},e.isSimpleElement=E,e.isSmallInt=function(e){return e%1==0&&e<=f.MAX_INT&&e>=f.MIN_INT},e.keys=function(e){return Object.keys(e)},e.logStep=void 0,e.mapPresentArray=function(e,t){if(null===e)return null +let r=[] +for(let n of e)r.push(t(n)) +return r},e.reverse=function*(e){for(let t=e.length-1;t>=0;t--)yield e[t]},e.strip=function(e,...t){let r="" +for(const[a,l]of n(e)){r+=`${l}${void 0!==t[a]?String(t[a]):""}`}let i=r.split("\n") +for(;a(i)&&/^\s*$/u.test(c(i));)i.shift() +for(;a(i)&&/^\s*$/u.test(u(i));)i.pop() +let o=1/0 +for(let n of i){let e=/^\s*/u.exec(n)[0].length +o=Math.min(o,e)}let s=[] +for(let n of i)s.push(n.slice(o)) +return s.join("\n")},e.tuple=void 0,e.unreachable=o,e.unwrap=i,e.unwrapHandle=function(e){if("number"==typeof e)return e +{let t=e.errors[0] +throw new Error(`Compile Error: ${t.problem} @ ${t.span.start}..${t.span.end}`)}},e.unwrapTemplate=function(e){if("error"===e.result)throw new Error(`Compile Error: ${e.problem} @ ${e.span.start}..${e.span.end}`) +return e} +e.values=function(e){return Object.values(e)},e.verifySteps=void 0 +const t=e.EMPTY_ARRAY=Object.freeze([]) +function r(){return t}e.EMPTY_STRING_ARRAY=r(),e.EMPTY_NUMBER_ARRAY=r() +function*n(e){let t=0 +for(const r of e)yield[t++,r]}function i(e){if(null==e)throw new Error("Expected value to be present") +return e}function o(e="unreachable"){return new Error(e)}function s(e){return null!=e}function a(e){return e.length>0}function l(e,t="unexpected empty list"){if(!a(e))throw new Error(t)}function u(e){return 0===e.length?void 0:e[e.length-1]}function c(e){return 0===e.length?void 0:e[0]}e.tuple=(...e)=>e +e.Stack=class{constructor(e=[]){this.stack=void 0,this.current=null,this.stack=e}get size(){return this.stack.length}push(e){this.current=e,this.stack.push(e)}pop(){let e=this.stack.pop() +return this.current=u(this.stack)??null,void 0===e?null:e}nth(e){let t=this.stack.length +return tf.SIGN_BIT?y(e):g(e)}[1,-1].forEach((e=>_(v(e)))) +const O=e.SERIALIZATION_FIRST_NODE_STRING="%+b:0%" +e.assign=Object.assign +function w(e){return e.nodeType===h}function E(e){return e?.nodeType===d}function C(e,t){let r=!1 +if(null!==e)if("string"==typeof t)r=k(e,t) +else{if(!Array.isArray(t))throw o() +r=t.some((t=>k(e,t)))}if(r&&e instanceof Node)return e +throw function(e,t){return new Error(`cannot cast a ${e} into ${String(t)}`)}(`SimpleElement(${e?.constructor?.name??"null"})`,t)}function k(e,t){switch(t){case"NODE":return!0 +case"HTML":return e instanceof HTMLElement +case"SVG":return e instanceof SVGElement +case"ELEMENT":return e instanceof Element +default:if(t.toUpperCase()===t)throw new Error("BUG: this code is missing handling for a generic node type") +return e instanceof Element&&e.tagName.toLowerCase()===t}}const T=e.LOCAL_LOGGER=console,R=e.LOGGER=console})),e("@glimmer/validator",["exports","@glimmer/global-context","@glimmer/util"],(function(e,t,r){"use strict" +function n(e){if(null==e)throw new Error("Expected value to be present") +return e}Object.defineProperty(e,"__esModule",{value:!0}),e.VolatileTag=e.VOLATILE_TAG=e.VOLATILE=e.INITIAL=e.CurrentTag=e.CURRENT_TAG=e.CONSTANT_TAG=e.CONSTANT=e.COMPUTE=e.ALLOW_CYCLES=void 0,e.beginTrackFrame=M,e.beginUntrackFrame=D,e.bump=function(){s++},e.combine=void 0,e.consumeTag=I,e.createCache=function(e,t){0 +let r={[F]:e,[L]:void 0,[B]:void 0,[U]:-1} +0 +return r},e.createTag=function(){return new h(a)},e.createUpdatableTag=g,e.dirtyTag=e.debug=void 0,e.dirtyTagFor=T,e.endTrackFrame=N,e.endUntrackFrame=j,e.getValue=function(e){H(e,"getValue") +let t=e[F],r=e[B],n=e[U] +if(void 0!==r&&p(r,n))I(r) +else{M() +try{e[L]=t()}finally{r=N(),e[B]=r,e[U]=c(r),I(r)}}return e[L]},e.isConst=function(e){H(e,"isConst") +let t=e[B] +return function(e,t){0}(),y(t)},e.isConstTag=y,e.isTracking=function(){return null!==A},e.resetTracking=function(){for(;x.length>0;)x.pop() +A=null,!1},e.tagFor=S,e.tagMetaFor=R,e.track=function(e,t){let r +M(t) +try{e()}finally{r=N()}return r},e.trackedData=function(e,t){let r=new WeakMap,n="function"==typeof t +return{getter:function(i){let o +return I(S(i,e)),n&&!r.has(i)?(o=t.call(i),r.set(i,o)):o=r.get(i),o},setter:function(t,n){T(t,e),r.set(t,n)}}},e.untrack=function(e){D() +try{return e()}finally{j()}},e.updateTag=void 0,e.validateTag=p,e.valueForTag=c +e.debug={} +e.CONSTANT=0 +const i=e.INITIAL=1,o=e.VOLATILE=NaN +let s=i +const a=0,l=1,u=e.COMPUTE=Symbol("TAG_COMPUTE") +function c(e){return e[u]()}function p(e,t){return t>=e[u]()}const d=Symbol("TAG_TYPE") +e.ALLOW_CYCLES=void 0 +class h{static combine(e){switch(e.length){case 0:return b +case 1:return e[0] +default:{let t=new h(2) +return t.subtag=e,t}}}constructor(e){this.revision=i,this.lastChecked=i,this.lastValue=i,this.isUpdating=!1,this.subtag=null,this.subtagBufferCache=null,this[d]=void 0,this[d]=e}[u](){let{lastChecked:e}=this +if(!0===this.isUpdating)this.lastChecked=++s +else if(e!==s){this.isUpdating=!0,this.lastChecked=s +try{let{subtag:e,revision:t}=this +if(null!==e)if(Array.isArray(e))for(const r of e){let e=r[u]() +t=Math.max(e,t)}else{let r=e[u]() +r===this.subtagBufferCache?t=Math.max(t,this.lastValue):(this.subtagBufferCache=null,t=Math.max(t,r))}this.lastValue=t}finally{this.isUpdating=!1}}return this.lastValue}static updateTag(e,t){let r=e,n=t +n===b?r.subtag=null:(r.subtagBufferCache=n[u](),r.subtag=n)}static dirtyTag(e,r){e.revision=++s,(0,t.scheduleRevalidate)()}}const f=e.dirtyTag=h.dirtyTag,m=e.updateTag=h.updateTag +function g(){return new h(l)}const b=e.CONSTANT_TAG=new h(3) +function y(e){return e===b}class v{constructor(){this[d]=100}[u](){return o}}e.VolatileTag=v +e.VOLATILE_TAG=new v +class _{constructor(){this[d]=101}[u](){return s}}e.CurrentTag=_ +e.CURRENT_TAG=new _ +const O=e.combine=h.combine +let w=g(),E=g(),C=g() +c(w),f(w),c(w),m(w,O([E,C])),c(w),f(E),c(w),f(C),c(w),m(w,C),c(w),f(C),c(w) +const k=new WeakMap +function T(e,t,r){let n=void 0===r?k.get(e):r +if(void 0===n)return +let i=n.get(t) +void 0!==i&&f(i,!0)}function R(e){let t=k.get(e) +return void 0===t&&(t=new Map,k.set(e,t)),t}function S(e,t,r){let n=void 0===r?R(e):r,i=n.get(t) +return void 0===i&&(i=g(),n.set(t,i)),i}class P{constructor(){this.tags=new Set,this.last=null}add(e){e!==b&&(this.tags.add(e),this.last=e)}combine(){let{tags:e}=this +return 0===e.size?b:1===e.size?this.last:O(Array.from(this.tags))}}let A=null +const x=[] +function M(e){x.push(A),A=new P}function N(){let e=A +return A=x.pop()||null,n(e).combine()}function D(){x.push(A),A=null}function j(){A=x.pop()||null}function I(e){null!==A&&A.add(e)}const F=Symbol("FN"),L=Symbol("LAST_VALUE"),B=Symbol("TAG"),U=Symbol("SNAPSHOT") +Symbol("DEBUG_LABEL") +function H(e,t){0}const $=Symbol("GLIMMER_VALIDATOR_REGISTRATION"),V=function(){if("undefined"!=typeof globalThis)return globalThis +if("undefined"!=typeof self)return self +if("undefined"!=typeof window)return window +if("undefined"!=typeof global)return global +throw new Error("unable to locate global object")}() +if(!0===V[$])throw new Error("The `@glimmer/validator` library has been included twice in this application. It could be different versions of the package, or the same version included twice by mistake. `@glimmer/validator` depends on having a single copy of the package in use at any time in an application, even if they are the same version. You must dedupe your build to remove the duplicate packages in order to prevent this error.") +V[$]=!0})),e("@glimmer/vm",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.TemporaryRegister=e.TYPE_SIZE=e.TYPE_MASK=e.SavedRegister=e.Op=e.OPERAND_LEN_MASK=e.MachineRegister=e.MachineOp=e.MAX_SIZE=e.MACHINE_MASK=e.InternalComponentCapability=e.InternalComponentCapabilities=e.CurriedTypes=e.CurriedType=e.ContentType=e.ARG_SHIFT=e.$v0=e.$t1=e.$t0=e.$sp=e.$s1=e.$s0=e.$ra=e.$pc=e.$fp=void 0,e.isLowLevelRegister=function(e){return e<=t},e.isMachineOp=function(e){return e>=0&&e<=15},e.isOp=function(e){return e>=16} +e.ContentType={Component:0,Helper:1,String:2,Empty:3,SafeString:4,Fragment:5,Node:6,Other:8},e.CurriedTypes=e.CurriedType={Component:0,Helper:1,Modifier:2},e.InternalComponentCapability=e.InternalComponentCapabilities={Empty:0,dynamicLayout:1,dynamicTag:2,prepareArgs:4,createArgs:8,attributeHook:16,elementHook:32,dynamicScope:64,createCaller:128,updateHook:256,createInstance:512,wrapped:1024,willDestroy:2048,hasSubOwner:4096},e.ARG_SHIFT=8,e.MAX_SIZE=2147483647,e.TYPE_SIZE=255,e.TYPE_MASK=255,e.OPERAND_LEN_MASK=768,e.MACHINE_MASK=1024,e.MachineOp={PushFrame:0,PopFrame:1,InvokeVirtual:2,InvokeStatic:3,Jump:4,Return:5,ReturnTo:6,Size:7},e.Op={Helper:16,SetNamedVariables:17,SetBlocks:18,SetVariable:19,SetBlock:20,GetVariable:21,GetProperty:22,GetBlock:23,SpreadBlock:24,HasBlock:25,HasBlockParams:26,Concat:27,Constant:28,ConstantReference:29,Primitive:30,PrimitiveReference:31,ReifyU32:32,Dup:33,Pop:34,Load:35,Fetch:36,RootScope:37,VirtualRootScope:38,ChildScope:39,PopScope:40,Text:41,Comment:42,AppendHTML:43,AppendSafeHTML:44,AppendDocumentFragment:45,AppendNode:46,AppendText:47,OpenElement:48,OpenDynamicElement:49,PushRemoteElement:50,StaticAttr:51,DynamicAttr:52,ComponentAttr:53,FlushElement:54,CloseElement:55,PopRemoteElement:56,Modifier:57,BindDynamicScope:58,PushDynamicScope:59,PopDynamicScope:60,CompileBlock:61,PushBlockScope:62,PushSymbolTable:63,InvokeYield:64,JumpIf:65,JumpUnless:66,JumpEq:67,AssertSame:68,Enter:69,Exit:70,ToBoolean:71,EnterList:72,ExitList:73,Iterate:74,Main:75,ContentType:76,Curry:77,PushComponentDefinition:78,PushDynamicComponentInstance:79,ResolveDynamicComponent:80,ResolveCurriedComponent:81,PushArgs:82,PushEmptyArgs:83,PopArgs:84,PrepareArgs:85,CaptureArgs:86,CreateComponent:87,RegisterComponentDestructor:88,PutComponentOperations:89,GetComponentSelf:90,GetComponentTagName:91,GetComponentLayout:92,BindEvalScope:93,SetupForEval:94,PopulateLayout:95,InvokeComponentLayout:96,BeginComponentTransaction:97,CommitComponentTransaction:98,DidCreateElement:99,DidRenderLayout:100,ResolveMaybeLocal:102,Debugger:103,Size:104,StaticComponentAttr:105,DynamicContentType:106,DynamicHelper:107,DynamicModifier:108,IfInline:109,Not:110,GetDynamicVar:111,Log:112} +e.$pc=0,e.$ra=1,e.$fp=2 +const t=e.$sp=3 +e.$s0=4,e.$s1=5,e.$t0=6,e.$t1=7,e.$v0=8 +e.MachineRegister=function(e){return e[e.pc=0]="pc",e[e.ra=1]="ra",e[e.fp=2]="fp",e[e.sp=3]="sp",e}({}) +e.SavedRegister=function(e){return e[e.s0=4]="s0",e[e.s1=5]="s1",e}({}),e.TemporaryRegister=function(e){return e[e.t0=6]="t0",e[e.t1=7]="t1",e}({})})),e("@glimmer/wire-format",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.WellKnownTagNames=e.WellKnownAttrNames=e.VariableResolutionContext=e.SexpOpcodes=void 0,e.getStringFromValue=function(e){return e},e.is=r,e.isArgument=function(e){return e[0]===t.StaticArg||e[0]===t.DynamicArg},e.isAttribute=function(e){return e[0]===t.StaticAttr||e[0]===t.DynamicAttr||e[0]===t.TrustingDynamicAttr||e[0]===t.ComponentAttr||e[0]===t.StaticComponentAttr||e[0]===t.TrustingComponentAttr||e[0]===t.AttrSplat||e[0]===t.Modifier},e.isGet=e.isFlushElement=void 0,e.isHelper=function(e){return Array.isArray(e)&&e[0]===t.Call},e.isStringLiteral=function(e){return"string"==typeof e} +const t=e.SexpOpcodes={Append:1,TrustingAppend:2,Comment:3,Modifier:4,StrictModifier:5,Block:6,StrictBlock:7,Component:8,OpenElement:10,OpenElementWithSplat:11,FlushElement:12,CloseElement:13,StaticAttr:14,DynamicAttr:15,ComponentAttr:16,AttrSplat:17,Yield:18,DynamicArg:20,StaticArg:21,TrustingDynamicAttr:22,TrustingComponentAttr:23,StaticComponentAttr:24,Debugger:26,Undefined:27,Call:28,Concat:29,GetSymbol:30,GetLexicalSymbol:32,GetStrictKeyword:31,GetFreeAsComponentOrHelperHead:35,GetFreeAsHelperHead:37,GetFreeAsModifierHead:38,GetFreeAsComponentHead:39,InElement:40,If:41,Each:42,Let:44,WithDynamicVars:45,InvokeComponent:46,HasBlock:48,HasBlockParams:49,Curry:50,Not:51,IfInline:52,GetDynamicVar:53,Log:54} +e.VariableResolutionContext={Strict:0,ResolveAsComponentOrHelperHead:1,ResolveAsHelperHead:5,ResolveAsModifierHead:6,ResolveAsComponentHead:7},e.WellKnownAttrNames={class:0,id:1,value:2,name:3,type:4,style:5,href:6},e.WellKnownTagNames={div:0,span:1,p:2,a:3} +function r(e){return function(t){return Array.isArray(t)&&t[0]===e}}e.isFlushElement=r(t.FlushElement) +e.isGet=r(t.GetSymbol)})),e("@simple-dom/document",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(){const e=new d(null,9,"#document",null,"http://www.w3.org/1999/xhtml"),t=new d(e,10,"html",null,"http://www.w3.org/1999/xhtml"),r=new d(e,1,"HTML",null,"http://www.w3.org/1999/xhtml"),n=new d(e,1,"HEAD",null,"http://www.w3.org/1999/xhtml"),i=new d(e,1,"BODY",null,"http://www.w3.org/1999/xhtml") +return r.appendChild(n),r.appendChild(i),e.appendChild(t),e.appendChild(r),e} +const t=[] +function r(e,t,r){for(let n=0;n{} +function n(e){if("function"==typeof Promise){const t=Promise.resolve() +return()=>t.then(e)}if("function"==typeof MutationObserver){let t=0,r=new MutationObserver(e),n=document.createTextNode("") +return r.observe(n,{characterData:!0}),()=>(t=++t%2,n.data=""+t,t)}return()=>t(e,0)}function i(e){let t=r +return{setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),now:()=>Date.now(),next:n(e),clearNext:t}}const o=/\d+/ +function s(e){let t=typeof e +return"number"===t&&e==e||"string"===t&&o.test(e)}function a(e){return e.onError||e.onErrorTarget&&e.onErrorTarget[e.onErrorMethod]}function l(e,t,r){let n=-1 +for(let i=0,o=r.length;i=t[r]?i=r+6:o=r +return e>=t[i]?i+6:i}class d{constructor(e,t={},r={}){this._queueBeingFlushed=[],this.targetQueues=new Map,this.index=0,this._queue=[],this.name=e,this.options=t,this.globalOptions=r}stackFor(e){if(e0){let e=a(this.globalOptions) +o=e?this.invokeWithOnError:this.invoke +for(let s=this.index;s0&&this.flush(!0)}hasWork(){return this._queueBeingFlushed.length>0||this._queue.length>0}cancel({target:e,method:t}){let r=this._queue,n=this.targetQueues.get(e) +void 0!==n&&n.delete(t) +let i=l(e,t,r) +return i>-1?(r[i+1]=null,!0):(r=this._queueBeingFlushed,i=l(e,t,r),i>-1&&(r[i+1]=null,!0))}push(e,t,r,n){return this._queue.push(e,t,r,n),{queue:this,target:e,method:t}}pushUnique(e,t,r,n){let i=this.targetQueues.get(e) +void 0===i&&(i=new Map,this.targetQueues.set(e,i)) +let o=i.get(t) +if(void 0===o){let o=this._queue.push(e,t,r,n)-4 +i.set(t,o)}else{let e=this._queue +e[o+2]=r,e[o+3]=n}return{queue:this,target:e,method:t}}_getDebugInfo(e){if(e){return c(this._queue,4)}}invoke(e,t,r){void 0===r?t.call(e):t.apply(e,r)}invokeWithOnError(e,t,r,n,i){try{void 0===r?t.call(e):t.apply(e,r)}catch(o){n(o,i)}}}class h{constructor(e=[],t){this.queues={},this.queueNameIndex=0,this.queueNames=e,e.reduce((function(e,r){return e[r]=new d(r,t[r],t),e}),this.queues)}schedule(e,t,r,n,i,o){let s=this.queues[e] +if(void 0===s)throw new Error(`You attempted to schedule an action in a queue (${e}) that doesn't exist`) +if(null==r)throw new Error(`You attempted to schedule an action in a queue (${e}) for a method that doesn't exist`) +return this.queueNameIndex=0,i?s.pushUnique(t,r,n,o):s.push(t,r,n,o)}flush(e=!1){let t,r,n=this.queueNames.length +for(;this.queueNameIndexi){let t=n-i +e=new Array(t) +for(let r=0;r{F++,!1!==this._autorun&&(this._autorun=!1,this._autorunStack=null,this._end(!0))} +let r=this.options._buildPlatform||i +this._platform=r(this._boundAutorunEnd)}get counters(){return{begin:_,end:O,events:{begin:w,end:0},autoruns:{created:I,completed:F},run:E,join:C,defer:k,schedule:T,scheduleIterable:R,deferOnce:S,scheduleOnce:P,setTimeout:A,later:x,throttle:M,debounce:N,cancelTimers:D,cancel:j,loops:{total:L,nested:B}}}get defaultQueue(){return this._defaultQueue}begin(){_++ +let e,t=this.options,r=this.currentInstance +return!1!==this._autorun?(e=r,this._cancelAutorun()):(null!==r&&(B++,this.instanceStack.push(r)),L++,e=this.currentInstance=new h(this.queueNames,t),w++,this._trigger("begin",e,r)),this._onBegin(e,r),e}end(){O++,this._end(!1)}on(e,t){if("function"!=typeof t)throw new TypeError("Callback must be a function") +let r=this._eventCallbacks[e] +if(void 0===r)throw new TypeError(`Cannot on() event ${e} because it does not exist`) +r.push(t)}off(e,t){let r=this._eventCallbacks[e] +if(!e||void 0===r)throw new TypeError(`Cannot off() event ${e} because it does not exist`) +let n=!1 +if(t)for(let i=0;i0&&s(r[i-1])&&(n=parseInt(r.pop(),10)) +return[e,t,r,n]}(...arguments) +return this._later(e,t,r,n)}throttle(){M++ +let e,[t,r,n,i,o=!0]=y(...arguments),s=u(t,r,this._timers) +if(-1===s)e=this._later(t,r,o?g:n,i),o&&this._join(t,r,n) +else{e=this._timers[s+1] +let t=s+4 +this._timers[t]!==g&&(this._timers[t]=n)}return e}debounce(){N++ +let e,[t,r,n,i,o=!1]=y(...arguments),s=this._timers,a=u(t,r,s) +if(-1===a)e=this._later(t,r,o?g:n,i),o&&this._join(t,r,n) +else{let o=this._platform.now()+i,l=a+4 +s[l]===g&&(n=g),e=s[a+1] +let u=p(o,s) +if(a+6===u)s[a]=o,s[l]=n +else{let i=this._timers[a+5] +this._timers.splice(u,0,o,e,t,r,n,i),this._timers.splice(a,6)}0===a&&this._reinstallTimerTimeout()}return e}cancelTimers(){D++,this._clearTimerTimeout(),this._timers=[],this._cancelAutorun()}hasTimers(){return this._timers.length>0||this._autorun}cancel(e){if(j++,null==e)return!1 +let t=typeof e +return"number"===t?this._cancelLaterTimer(e):!("object"!==t||!e.queue||!e.method)&&e.queue.cancel(e)}ensureInstance(){this._ensureInstance()}getDebugInfo(){if(this.DEBUG)return{autorun:this._autorunStack,counters:this.counters,timers:c(this._timers,6,2),instanceStack:[this.currentInstance,...this.instanceStack].map((e=>e&&e._getDebugInfo(this.DEBUG)))}}_end(e){let t=this.currentInstance,r=null +if(null===t)throw new Error("end called without begin") +let n,i=!1 +try{n=t.flush(e)}finally{if(!i)if(i=!0,1===n){const e=this.queueNames[t.queueNameIndex] +this._scheduleAutorun(e)}else this.currentInstance=null,this.instanceStack.length>0&&(r=this.instanceStack.pop(),this.currentInstance=r),this._trigger("end",t,r),this._onEnd(t,r)}}_join(e,t,r){return null===this.currentInstance?this._run(e,t,r):void 0===e&&void 0===r?t():t.apply(e,r)}_run(e,t,r){let n=a(this.options) +if(this.begin(),n)try{return t.apply(e,r)}catch(i){n(i)}finally{this.end()}else try{return t.apply(e,r)}finally{this.end()}}_cancelAutorun(){this._autorun&&(this._platform.clearNext(),this._autorun=!1,this._autorunStack=null)}_later(e,t,r,n){let i=this.DEBUG?new Error:void 0,o=this._platform.now()+n,s=v++ +if(0===this._timers.length)this._timers.push(o,s,e,t,r,i),this._installTimerTimeout() +else{let n=p(o,this._timers) +this._timers.splice(n,0,o,s,e,t,r,i),this._reinstallTimerTimeout()}return s}_cancelLaterTimer(e){for(let t=1;t0&&(this.begin(),this._scheduleExpiredTimers(),this.end())}_scheduleExpiredTimers(){let e=this._timers,t=0,r=e.length,n=this._defaultQueue,i=this._platform.now() +for(;ti)break +let r=e[t+4] +if(r!==g){let i=e[t+2],o=e[t+3],s=e[t+5] +this.currentInstance.schedule(n,i,o,r,!1,s)}}e.splice(0,t),this._installTimerTimeout()}_reinstallTimerTimeout(){this._clearTimerTimeout(),this._installTimerTimeout()}_clearTimerTimeout(){null!==this._timerTimeoutId&&(this._platform.clearTimeout(this._timerTimeoutId),this._timerTimeoutId=null)}_installTimerTimeout(){if(0===this._timers.length)return +let e=this._timers[0],t=this._platform.now(),r=Math.max(0,e-t) +this._timerTimeoutId=this._platform.setTimeout(this._boundRunExpiredTimers,r)}_ensureInstance(){let e=this.currentInstance +return null===e&&(this._autorunStack=this.DEBUG?new Error:void 0,e=this.begin(),this._scheduleAutorun(this.queueNames[0])),e}_scheduleAutorun(e){I++ +const t=this._platform.next,r=this.options.flush +r?r(e,t):t(),this._autorun=!0}}U.Queue=d,U.buildPlatform=i,U.buildNext=n +e.default=U})),e("dag-map",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +var t=function(){function e(){this._vertices=new r}return e.prototype.add=function(e,t,r,n){if(!e)throw new Error("argument `key` is required") +var i=this._vertices,o=i.add(e) +if(o.val=t,r)if("string"==typeof r)i.addEdge(o,i.add(r)) +else for(var s=0;s0){var n="cycle detected: "+t +throw this.each(this.path,(function(e){n+=" <- "+e})),new Error(n)}}},e.prototype.reset=function(){this.stack.length=0,this.path.length=0,this.result.length=0 +for(var e=0,t=this.length;e=0){var a=this[s] +if(a.flag)continue +if(a.flag=!0,i.push(s),t===a.key)break +n.push(~s),this.pushIncoming(a)}else i.pop(),o.push(~s)}},e.prototype.pushIncoming=function(e){for(var t=this.stack,r=e.length-1;r>=0;r--){var n=e[r] +this[n].flag||t.push(n)}},e.prototype.each=function(e,t){for(var r=0,n=e.length;r=e.length?{done:!0}:{done:!1,value:e[t++]}} +throw new TypeError("Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return t=e[Symbol.iterator](),t.next.bind(t)},e.createSuper=function(e){return function(){let t,i=r(e) +if(n){let e=r(this).constructor +t=Reflect.construct(i,arguments,e)}else t=i.apply(this,arguments) +return l(this,t)}},e.inheritsLoose=function(e,r){0 +e.prototype=Object.create(null===r?null:r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),null!==r&&t(e,r)},e.objectDestructuringEmpty=function(e){0},e.possibleConstructorReturn=l,e.taggedTemplateLiteralLoose=function(e,t){t||(t=e.slice(0)) +return e.raw=t,e},e.wrapNativeSuper=function(e){if(i.has(e))return i.get(e) +function r(){}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),i.set(e,r),t(r,e)} +const t=Object.setPrototypeOf,r=Object.getPrototypeOf,n="object"==typeof Reflect&&"function"==typeof Reflect.construct,i=new Map +let o=0 +function s(e,t){for(let r=0;re.length)&&(t=e.length) +let r=new Array(t) +for(let n=0;n(te.__emberTemplateCompiler&&(oe.precompile=ie.precompile=te.__emberTemplateCompiler.precompile,oe.compile=ie.compile=te.compileTemplate,Object.defineProperty(re,"HTMLBars",{configurable:!0,writable:!0,enumerable:!0,value:oe}),Object.defineProperty(re,"Handlebars",{configurable:!0,writable:!0,enumerable:!0,value:ie})),"Handlebars"===e?ie:oe)})}function ae(e){Object.defineProperty(re,e,{configurable:!0,enumerable:!0,get(){if(ee._impl){let{Test:t,Adapter:r,QUnitAdapter:n,setupForTesting:i}=ee._impl +return t.Adapter=r,t.QUnitAdapter=n,Object.defineProperty(re,"Test",{configurable:!0,writable:!0,enumerable:!0,value:t}),Object.defineProperty(re,"setupForTesting",{configurable:!0,writable:!0,enumerable:!0,value:i}),"Test"===e?t:i}}})}se("HTMLBars"),se("Handlebars"),ae("Test"),ae("setupForTesting"),(0,S.runLoadHooks)("Ember") +e.default=re})),e("ember/version",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default="5.10.0-alpha.1+12f617ec"})) +e("route-recognizer",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +var t=Object.create +function r(){var e=t(null) +return e.__=void 0,delete e.__,e}var n=function(e,t,r){this.path=e,this.matcher=t,this.delegate=r} +n.prototype.to=function(e,t){var r=this.delegate +if(r&&r.willAddRoute&&(e=r.willAddRoute(this.matcher.target,e)),this.matcher.add(this.path,e),t){if(0===t.length)throw new Error("You must have an argument in the function passed to `to`") +this.matcher.addChild(this.path,e,t,this.delegate)}} +var i=function(e){this.routes=r(),this.children=r(),this.target=e} +function o(e,t,r){return function(i,s){var a=e+i +if(!s)return new n(a,t,r) +s(o(a,t,r))}}function s(e,t,r){for(var n=0,i=0;i0&&47===t.charCodeAt(0)&&(t=t.substr(1)) +for(var n=t.split("/"),i=void 0,o=void 0,s=0;s2&&"[]"===o.slice(s-2)&&(a=!0,r[o=o.slice(0,s-2)]||(r[o]=[])),l=i[1]?S(i[1]):""),a?r[o].push(l):r[o]=l}return r},P.prototype.recognize=function(e){var t,r=[this.rootState],n={},i=!1,o=e.indexOf("#");-1!==o&&(e=e.substr(0,o)) +var s=e.indexOf("?") +if(-1!==s){var a=e.substr(s+1,e.length) +e=e.substr(0,s),n=this.parseQueryString(a)}"/"!==e.charAt(0)&&(e="/"+e) +var u=e +P.ENCODE_AND_DECODE_PATH_SEGMENTS?e=l(e):(e=decodeURI(e),u=decodeURI(u)) +var c=e.length +c>1&&"/"===e.charAt(c-1)&&(e=e.substr(0,c-1),u=u.substr(0,u.length-1),i=!0) +for(var p=0;p0){let i=e[n-1] +if(function(e){if(e&&"object"==typeof e){let t=e +return"queryParams"in t&&Object.keys(t.queryParams).every((e=>"string"==typeof e))}return!1}(i))return r=i.queryParams,t=o.call(e,0,n-1),[t,r]}return[e,null]}function u(e){for(let t in e){let r=e[t] +if("number"==typeof r)e[t]=""+r +else if(Array.isArray(r))for(let e=0,t=r.length;e{throw this.router.transitionDidError(e,this)}),m("Handle Abort"))}else this.promise=r.Promise.resolve(this[g]),this[b]={}}then(e,t,r){return this.promise.then(e,t,r)}catch(e,t){return this.promise.catch(e,t)}finally(e,t){return this.promise.finally(e,t)}abort(){this.rollback() +let e=new v(this.router,void 0,void 0,void 0) +return e.to=this.from,e.from=this.from,e.isAborted=!0,this.router.routeWillChange(e),this.router.routeDidChange(e),this}rollback(){this.isAborted||(c(this.router,this.sequence,this.targetName+": transition was aborted"),void 0!==this.intent&&null!==this.intent&&(this.intent.preTransitionState=this.router.state),this.isAborted=!0,this.isActive=!1,this.router.activeTransition=void 0)}redirect(e){this.rollback(),this.router.routeWillChange(e)}retry(){this.abort() +let e=this.router.transitionByIntent(this.intent,!1) +return null!==this.urlMethod&&e.method(this.urlMethod),e}method(e){return this.urlMethod=e,this}send(e=!1,t,r,n,i){this.trigger(e,t,r,n,i)}trigger(e=!1,t,...r){"string"==typeof e&&(t=e,e=!1),this.router.triggerEvent(this[g].routeInfos.slice(0,this.resolveIndex+1),e,t,r)}followRedirects(){let e=this.router +return this.promise.catch((function(t){return e.activeTransition?e.activeTransition.followRedirects():r.Promise.reject(t)}))}toString(){return"Transition (sequence "+this.sequence+")"}log(e){c(this.router,this.sequence,e)}}function _(e){return c(e.router,e.sequence,"detected abort."),n()}function O(e){return"object"==typeof e&&e instanceof v&&e.isTransition}e.InternalTransition=v +let w=new WeakMap +function E(e,t={},r={includeAttributes:!1,localizeMapUpdates:!1}){const n=new WeakMap +return e.map(((i,o)=>{let{name:s,params:a,paramNames:l,context:u,route:c}=i,p=i +if(w.has(p)&&r.includeAttributes){let e=w.get(p) +e=function(e,t){let r={get metadata(){return k(e)}} +if(!Object.isExtensible(t)||t.hasOwnProperty("metadata"))return Object.freeze(Object.assign({},t,r)) +return Object.assign(t,r)}(c,e) +let t=C(e,u) +return n.set(p,e),r.localizeMapUpdates||w.set(p,t),t}const d=r.localizeMapUpdates?n:w +let h={find(t,r){let n,i=[] +3===t.length&&(i=e.map((e=>d.get(e)))) +for(let o=0;e.length>o;o++)if(n=d.get(e[o]),t.call(r,n,o,i))return n},get name(){return s},get paramNames(){return l},get metadata(){return k(i.route)},get parent(){let t=e[o-1] +return void 0===t?null:d.get(t)},get child(){let t=e[o+1] +return void 0===t?null:d.get(t)},get localName(){let e=this.name.split(".") +return e[e.length-1]},get params(){return a},get queryParams(){return t}} +return r.includeAttributes&&(h=C(h,u)),n.set(i,h),r.localizeMapUpdates||w.set(i,h),h}))}function C(e,t){let r={get attributes(){return t}} +return!Object.isExtensible(e)||e.hasOwnProperty("attributes")?Object.freeze(Object.assign({},e,r)):Object.assign(e,r)}function k(e){return null!=e&&void 0!==e.buildRouteInfoMetadata?e.buildRouteInfoMetadata():null}class T{constructor(e,t,r,n){this._routePromise=void 0,this._route=null,this.params={},this.isResolved=!1,this.name=t,this.paramNames=r,this.router=e,n&&this._processRoute(n)}getModel(e){return r.Promise.resolve(this.context)}serialize(e){return this.params||{}}resolve(e){return r.Promise.resolve(this.routePromise).then((t=>(i(e),t))).then((()=>this.runBeforeModelHook(e))).then((()=>i(e))).then((()=>this.getModel(e))).then((t=>(i(e),t))).then((t=>this.runAfterModelHook(e,t))).then((t=>this.becomeResolved(e,t)))}becomeResolved(e,t){let r,n=this.serialize(t) +e&&(this.stashResolvedModel(e,t),e[b]=e[b]||{},e[b][this.name]=n) +let i=t===this.context +!("context"in this)&&i||(r=t) +let o=w.get(this),s=new R(this.router,this.name,this.paramNames,n,this.route,r) +return void 0!==o&&w.set(s,o),s}shouldSupersede(e){if(!e)return!0 +let t=e.context===this.context +return e.name!==this.name||"context"in this&&!t||this.hasOwnProperty("params")&&!function(e,t){if(e===t)return!0 +if(!e||!t)return!1 +for(let r in e)if(e.hasOwnProperty(r)&&e[r]!==t[r])return!1 +return!0}(this.params,e.params)}get route(){return null!==this._route?this._route:this.fetchRoute()}set route(e){this._route=e}get routePromise(){return this._routePromise||this.fetchRoute(),this._routePromise}set routePromise(e){this._routePromise=e}log(e,t){e.log&&e.log(this.name+": "+t)}updateRoute(e){return e._internalName=this.name,this.route=e}runBeforeModelHook(e){let t +return e.trigger&&e.trigger(!0,"willResolveModel",e,this.route),this.route&&void 0!==this.route.beforeModel&&(t=this.route.beforeModel(e)),O(t)&&(t=null),r.Promise.resolve(t)}runAfterModelHook(e,t){let n,i=this.name +var o +return this.stashResolvedModel(e,t),void 0!==this.route&&void 0!==this.route.afterModel&&(n=this.route.afterModel(t,e)),n=O(o=n)?null:o,r.Promise.resolve(n).then((()=>e.resolvedModels[i]))}stashResolvedModel(e,t){e.resolvedModels=e.resolvedModels||{},e.resolvedModels[this.name]=t}fetchRoute(){let e=this.router.getRoute(this.name) +return this._processRoute(e)}_processRoute(e){return this.routePromise=r.Promise.resolve(e),null!==(t=e)&&"object"==typeof t&&"function"==typeof t.then?(this.routePromise=this.routePromise.then((e=>this.updateRoute(e))),this.route=void 0):e?this.updateRoute(e):void 0 +var t}}e.InternalRouteInfo=T +class R extends T{constructor(e,t,r,n,i,o){super(e,t,r,i),this.params=n,this.isResolved=!0,this.context=o}resolve(e){return e&&e.resolvedModels&&(e.resolvedModels[this.name]=this.context),r.Promise.resolve(this)}}class S extends T{constructor(e,t,r,n,i){super(e,t,r,i),this.params={},n&&(this.params=n)}getModel(e){let t=this.params +e&&e[y]&&(t={},a(t,this.params),t.queryParams=e[y]) +let n,i=this.route +return i.deserialize?n=i.deserialize(t,e):i.model&&(n=i.model(t,e)),n&&O(n)&&(n=void 0),r.Promise.resolve(n)}}class P extends T{constructor(e,t,r,n){super(e,t,r),this.context=n,this.serializer=this.router.getSerializer(t)}getModel(e){return void 0!==this.router.log&&this.router.log(this.name+": resolving provided model"),super.getModel(e)}serialize(e){let{paramNames:t,context:r}=this +e||(e=r) +let n={} +if(p(e))return n[t[0]]=e,n +if(this.serializer)return this.serializer.call(null,e,t) +if(void 0!==this.route&&this.route.serialize)return this.route.serialize(e,t) +if(1!==t.length)return +let i=t[0] +return/_id$/.test(i)?n[i]=e.id:n[i]=e,n}}class A{constructor(e,t={}){this.router=e,this.data=t}}function x(e,t,r){let n=e.routeInfos,i=t.resolveIndex>=n.length?n.length-1:t.resolveIndex,o=t.isAborted +throw new j(r,e.routeInfos[i].route,o,e)}function M(e,t){if(t.resolveIndex===e.routeInfos.length)return +let r=e.routeInfos[t.resolveIndex],n=N.bind(null,e,t) +return r.resolve(t).then(n,null,e.promiseLabel("Proceed"))}function N(e,t,r){let n=e.routeInfos[t.resolveIndex].isResolved +if(e.routeInfos[t.resolveIndex++]=r,!n){let{route:e}=r +void 0!==e&&e.redirect&&e.redirect(r.context,t)}return i(t),M(e,t)}class D{constructor(){this.routeInfos=[],this.queryParams={},this.params={}}promiseLabel(e){let t="" +return d(this.routeInfos,(function(e){return""!==t&&(t+="."),t+=e.name,!0})),m("'"+t+"': "+e)}resolve(e){let t=this.params +d(this.routeInfos,(e=>(t[e.name]=e.params||{},!0))),e.resolveIndex=0 +let n=M.bind(null,this,e),i=x.bind(null,this,e) +return r.Promise.resolve(null,this.promiseLabel("Start transition")).then(n,null,this.promiseLabel("Resolve route")).catch(i,this.promiseLabel("Handle error")).then((()=>this))}}e.TransitionState=D +class j{constructor(e,t,r,n){this.error=e,this.route=t,this.wasAborted=r,this.state=n}}e.TransitionError=j +class I extends A{constructor(e,t,r,n=[],i={},o){super(e,o),this.preTransitionState=void 0,this.name=t,this.pivotHandler=r,this.contexts=n,this.queryParams=i}applyToState(e,t){let r=this.router.recognizer.handlersFor(this.name),n=r[r.length-1].handler +return this.applyToHandlers(e,r,n,t,!1)}applyToHandlers(e,t,r,n,i){let o,s,l=new D,u=this.contexts.slice(0),c=t.length +if(this.pivotHandler)for(o=0,s=t.length;o=0;--o){let s=t[o],a=s.handler,p=e.routeInfos[o],d=null +if(d=s.names.length>0?o>=c?this.createParamHandlerInfo(a,s.names,u,p):this.getHandlerInfoForDynamicSegment(a,s.names,u,p,r,o):this.createParamHandlerInfo(a,s.names,u,p),i){d=d.becomeResolved(null,d.context) +let e=p&&p.context +s.names.length>0&&void 0!==p.context&&d.context===e&&(d.params=p&&p.params),d.context=e}let h=p;(o>=c||d.shouldSupersede(p))&&(c=Math.min(o,c),h=d),n&&!i&&(h=h.becomeResolved(null,h.context)),l.routeInfos.unshift(h)}if(u.length>0)throw new Error("More context objects were passed than there are dynamic segments for the route: "+r) +return n||this.invalidateChildren(l.routeInfos,c),a(l.queryParams,this.queryParams||{}),n&&e.queryParams&&a(l.queryParams,e.queryParams),l}invalidateChildren(e,t){for(let r=t,n=e.length;r0){if(s=r[r.length-1],p(s))return this.createParamHandlerInfo(e,t,r,n) +r.pop()}else{if(n&&n.name===e)return n +if(!this.preTransitionState)return n +{let e=this.preTransitionState.routeInfos[o] +s=null==e?void 0:e.context}}return new P(this.router,e,t,s)}createParamHandlerInfo(e,t,r,n){let i={},o=t.length,s=[] +for(;o--;){let a=n&&e===n.name&&n.params||{},l=r[r.length-1],u=t[o] +p(l)?i[u]=""+r.pop():a.hasOwnProperty(u)?i[u]=a[u]:s.push(u)}if(s.length>0)throw new Error(`You didn't provide enough string/numeric parameters to satisfy all of the dynamic segments for route ${e}. Missing params: ${s}`) +return new S(this.router,e,t,i)}}const F=function(){function e(t){let r=Error.call(this,t) +this.name="UnrecognizedURLError",this.message=t||"UnrecognizedURL",Error.captureStackTrace?Error.captureStackTrace(this,e):this.stack=r.stack}return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}() +class L extends A{constructor(e,t,r){super(e,r),this.url=t,this.preTransitionState=void 0}applyToState(e){let t,r,n=new D,i=this.router.recognizer.recognize(this.url) +if(!i)throw new F(this.url) +let o=!1,s=this.url +function l(e){if(e&&e.inaccessibleByURL)throw new F(s) +return e}for(t=0,r=i.length;t=0&&n;--r){let i=t[r],o=i.handler +e.add(t,{as:o}),n="/"===i.path||""===i.path||".index"===o.slice(-6)}}))}hasRoute(e){return this.recognizer.hasRoute(e)}queryParamsTransition(e,t,r,n){if(this.fireQueryParamDidChange(n,e),!t&&this.activeTransition)return this.activeTransition +{let e=new v(this,void 0,void 0) +return e.queryParamsOnly=!0,r.queryParams=this.finalizeQueryParamChange(n.routeInfos,n.queryParams,e),e[y]=n.queryParams,this.toReadOnlyInfos(e,n),this.routeWillChange(e),e.promise=e.promise.then((t=>(e.isAborted||(this._updateURL(e,r),this.didTransition(this.currentRouteInfos),this.toInfos(e,n.routeInfos,!0),this.routeDidChange(e)),t)),null,m("Transition complete")),e}}transitionByIntent(e,t){try{return this.getTransitionByIntent(e,t)}catch(r){return new v(this,e,void 0,r,void 0)}}recognize(e){let t=new L(this,e),r=this.generateNewState(t) +if(null===r)return r +let n=E(r.routeInfos,r.queryParams,{includeAttributes:!1,localizeMapUpdates:!0}) +return n[n.length-1]}recognizeAndLoad(e){let t=new L(this,e),n=this.generateNewState(t) +if(null===n)return r.Promise.reject(`URL ${e} was not recognized`) +let i=new v(this,t,n,void 0) +return i.then((()=>{let e=E(n.routeInfos,i[y],{includeAttributes:!0,localizeMapUpdates:!1}) +return e[e.length-1]}))}generateNewState(e){try{return e.applyToState(this.state,!1)}catch(t){return null}}getTransitionByIntent(e,t){let r,n=!!this.activeTransition,i=n?this.activeTransition[g]:this.state,o=e.applyToState(i,t),s=h(i.queryParams,o.queryParams) +if(B(o.routeInfos,i.routeInfos)){if(s){let e=this.queryParamsTransition(s,n,i,o) +return e.queryParamsOnly=!0,e}return this.activeTransition||new v(this,void 0,void 0)}if(t){let e=new v(this,void 0,o) +return e.isIntermediate=!0,this.toReadOnlyInfos(e,o),this.setupContexts(o,e),this.routeWillChange(e),this.activeTransition}return r=new v(this,e,o,void 0,this.activeTransition),function(e,t){if(e.length!==t.length)return!1 +for(let r=0,n=e.length;rthis.finalizeTransition(r,e)),null,m("Settle transition promise when transition is finalized")),n||this.notifyExistingHandlers(o,r),this.fireQueryParamDidChange(o,s),r}doTransition(e,t=[],r=!1){let n,i=t[t.length-1],o={} +if(i&&Object.prototype.hasOwnProperty.call(i,"queryParams")&&(o=t.pop().queryParams),void 0===e){c(this,"Updating query params") +let{routeInfos:e}=this.state +n=new I(this,e[e.length-1].name,void 0,[],o)}else"/"===e.charAt(0)?(c(this,"Attempting URL transition to "+e),n=new L(this,e)):(c(this,"Attempting transition to "+e),n=new I(this,e,void 0,t,o)) +return this.transitionByIntent(n,r)}finalizeTransition(e,t){try{c(e.router,e.sequence,"Resolved all models on destination route; finalizing transition.") +let n=t.routeInfos +return this.setupContexts(t,e),e.isAborted?(this.state.routeInfos=this.currentRouteInfos,r.Promise.reject(_(e))):(this._updateURL(e,t),e.isActive=!1,this.activeTransition=void 0,this.triggerEvent(this.currentRouteInfos,!0,"didTransition",[]),this.didTransition(this.currentRouteInfos),this.toInfos(e,t.routeInfos,!0),this.routeDidChange(e),c(this,e.sequence,"TRANSITION COMPLETE."),n[n.length-1].route)}catch(i){if("object"!=typeof(n=i)||null===n||"TRANSITION_ABORTED"!==n.code){let t=e[g].routeInfos +e.trigger(!0,"error",i,e,t[t.length-1].route),e.abort()}throw i}var n}setupContexts(e,t){let r,n,i,o=this.partitionRoutes(this.state,e) +for(r=0,n=o.exited.length;r=0;--s){let e=n[s] +a(o,e.params),e.route.inaccessibleByURL&&(r=null)}if(r){o.queryParams=e._visibleQueryParams||t.queryParams +let n=this.recognizer.generate(i,o),s=e.isCausedByInitialTransition,a="replace"===r&&!e.isCausedByAbortingTransition,l=e.queryParamsOnly&&"replace"===r,u="replace"===r&&e.isCausedByAbortingReplaceTransition +s||a||l||u?this.replaceURL(n):this.updateURL(n)}}finalizeQueryParamChange(e,t,r){for(let o in t)t.hasOwnProperty(o)&&null===t[o]&&delete t[o] +let n=[] +this.triggerEvent(e,!0,"finalizeQueryParamChange",[t,n,r]),r&&(r._visibleQueryParams={}) +let i={} +for(let o=0,s=n.length;o0){let r=E(t,Object.assign({},this._lastQueryParams),{includeAttributes:!0,localizeMapUpdates:!1}) +e.from=r[r.length-1]||null}}toInfos(e,t,r=!1){if(void 0!==e&&t.length>0){let n=E(t,Object.assign({},e[y]),{includeAttributes:r,localizeMapUpdates:!1}) +e.to=n[n.length-1]||null}}notifyExistingHandlers(e,t){let r,n,i,o,s=this.state.routeInfos +for(n=s.length,r=0;r{for(let e=0;e{t===r?g(e,r):f(e,r)}),(t=>b(e,t)))}(e,t):"function"==typeof r?function(e,t,r){i.async((e=>{let n=!1,i=function(e,t,r,n){try{e.call(t,r,n)}catch(i){return i}}(r,t,(r=>{n||(n=!0,t===r?g(e,r):f(e,r))}),(t=>{n||(n=!0,b(e,t))}),e._label) +!n&&i&&(n=!0,b(e,i))}),e)}(e,t,r):g(e,t)}function f(e,t){if(e===t)g(e,t) +else if(function(e){let t=typeof e +return null!==e&&("object"===t||"function"===t)}(t)){let n +try{n=t.then}catch(r){return void b(e,r)}h(e,t,n)}else g(e,t)}function m(e){e._onError&&e._onError(e._result),v(e)}function g(e,t){e._state===c&&(e._result=t,e._state=p,0===e._subscribers.length?i.instrument&&a("fulfilled",e):i.async(v,e))}function b(e,t){e._state===c&&(e._state=d,e._result=t,i.async(m,e))}function y(e,t,r,n){let o=e._subscribers,s=o.length +e._onError=null,o[s]=t,o[s+p]=r,o[s+d]=n,0===s&&e._state&&i.async(v,e)}function v(e){let t=e._subscribers,r=e._state +if(i.instrument&&a(r===p?"fulfilled":"rejected",e),0===t.length)return +let n,o,s=e._result +for(let i=0;i_(o,s,r,l)))}return s}class w{constructor(e,t,r,n){this._instanceConstructor=e,this.promise=new e(u,n),this._abortOnReject=r,this._isUsingOwnPromise=e===R,this._isUsingOwnResolve=e.resolve===l,this._init(...arguments)}_init(e,t){let r=t.length||0 +this.length=r,this._remaining=r,this._result=new Array(r),this._enumerate(t)}_enumerate(e){let t=this.length,r=this.promise +for(let n=0;r._state===c&&nt(e))),t,r)}else this._willSettleAt(n.resolve(e),t,r)}_eachEntry(e,t,r){null!==e&&"object"==typeof e?this._settleMaybeThenable(e,t,r):this._setResultAt(p,t,e,r)}_settledAt(e,t,r,n){let i=this.promise +i._state===c&&(this._abortOnReject&&e===d?b(i,r):(this._setResultAt(e,t,r,n),this._checkFullfillment()))}_setResultAt(e,t,r,n){this._remaining--,this._result[t]=r}_willSettleAt(e,t,r){y(e,void 0,(e=>this._settledAt(p,t,e,r)),(e=>this._settledAt(d,t,e,r)))}}function E(e,t,r){this._remaining--,this._result[t]=e===p?{state:"fulfilled",value:r}:{state:"rejected",reason:r}}const C="rsvp_"+Date.now()+"-" +let k=0 +let T=class e{constructor(t,r){this._id=k++,this._label=r,this._state=void 0,this._result=void 0,this._subscribers=[],i.instrument&&a("created",this),u!==t&&("function"!=typeof t&&function(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}(),this instanceof e?function(e,t){let r=!1 +try{t((t=>{r||(r=!0,f(e,t))}),(t=>{r||(r=!0,b(e,t))}))}catch(n){b(e,n)}}(this,t):function(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}())}_onError(e){i.after((()=>{this._onError&&i.trigger("error",e,this._label)}))}catch(e,t){return this.then(void 0,e,t)}finally(e,t){let r=this,n=r.constructor +return"function"==typeof e?r.then((t=>n.resolve(e()).then((()=>t))),(t=>n.resolve(e()).then((()=>{throw t})))):r.then(e,e)}} +T.cast=l,T.all=function(e,t){return Array.isArray(e)?new w(this,e,!0,t).promise:this.reject(new TypeError("Promise.all must be called with an array"),t)},T.race=function(e,t){let r=this,n=new r(u,t) +if(!Array.isArray(e))return b(n,new TypeError("Promise.race must be called with an array")),n +for(let i=0;n._state===c&&if(n,e)),(e=>b(n,e))) +return n},T.resolve=l,T.reject=function(e,t){let r=new this(u,t) +return b(r,e),r},T.prototype._guidKey=C,T.prototype.then=O +var R=e.Promise=T +function S(e,t){return{then:(r,n)=>e.call(t,r,n)}}function P(e,t){let r=function(){let r=arguments.length,n=new Array(r+1),i=!1 +for(let e=0;eA(e,t,r,n)))}(o,n,e,this):A(o,n,e,this)} +return r.__proto__=e,r}function A(e,t,r,n){try{r.apply(n,t)}catch(i){b(e,i)}return e}function x(e,t){return R.all(e,t)}class M extends w{constructor(e,t,r){super(e,t,!1,r)}}function N(e,t){return Array.isArray(e)?new M(R,e,t).promise:R.reject(new TypeError("Promise.allSettled must be called with an array"),t)}function D(e,t){return R.race(e,t)}M.prototype._setResultAt=E +class j extends w{constructor(e,t,r=!0,n){super(e,t,r,n)}_init(e,t){this._result={},this._enumerate(t)}_enumerate(e){let t,r,n=Object.keys(e),i=n.length,o=this.promise +this._remaining=i +for(let s=0;o._state===c&&s{throw e})),e}function U(e){let t={resolve:void 0,reject:void 0} +return t.promise=new R(((e,r)=>{t.resolve=e,t.reject=r}),e),t}F.prototype._setResultAt=E +class H extends w{constructor(e,t,r,n){super(e,t,!0,n,r)}_init(e,t,r,n,i){let o=t.length||0 +this.length=o,this._remaining=o,this._result=new Array(o),this._mapFn=i,this._enumerate(t)}_setResultAt(e,t,r,n){if(n)try{this._eachEntry(this._mapFn(r,t),t,!1)}catch(i){this._settledAt(d,t,i,!1)}else this._remaining--,this._result[t]=r}}function $(e,t,r){return"function"!=typeof t?R.reject(new TypeError("map expects a function as a second argument"),r):R.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("map must be called with an array") +return new H(R,e,t,r).promise}))}function V(e,t){return R.resolve(e,t)}function z(e,t){return R.reject(e,t)}const q={} +class G extends H{_checkFullfillment(){if(0===this._remaining&&null!==this._result){let e=this._result.filter((e=>e!==q)) +g(this.promise,e),this._result=null}}_setResultAt(e,t,r,n){if(n){this._result[t]=r +let e,n=!0 +try{e=this._mapFn(r,t)}catch(i){n=!1,this._settledAt(d,t,i,!1)}n&&this._eachEntry(e,t,!1)}else this._remaining--,r||(this._result[t]=q)}}function W(e,t,r){return"function"!=typeof t?R.reject(new TypeError("filter expects function as a second argument"),r):R.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("filter must be called with an array") +return new G(R,e,t,r).promise}))}let Y,Q=0 +function K(e,t){ne[Q]=e,ne[Q+1]=t,Q+=2,2===Q&&oe()}const J="undefined"!=typeof window?window:void 0,X=J||{},Z=X.MutationObserver||X.WebKitMutationObserver,ee="undefined"==typeof self&&"undefined"!=typeof process&&"[object process]"==={}.toString.call(process),te="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel +function re(){return()=>setTimeout(ie,1)}const ne=new Array(1e3) +function ie(){for(let e=0;ee(ie)}():Z?function(){let e=0,t=new Z(ie),r=document.createTextNode("") +return t.observe(r,{characterData:!0}),()=>r.data=e=++e%2}():te?function(){let e=new MessageChannel +return e.port1.onmessage=ie,()=>e.port2.postMessage(0)}():void 0===J&&"function"==typeof t?function(){try{const e=Function("return this")().require("vertx") +return Y=e.runOnLoop||e.runOnContext,void 0!==Y?function(){Y(ie)}:re()}catch(e){return re()}}():re(),i.async=K,i.after=e=>setTimeout(e,0) +const se=e.cast=V,ae=(e,t)=>i.async(e,t) +function le(){i.on(...arguments)}function ue(){i.off(...arguments)}if(e.async=ae,"undefined"!=typeof window&&"object"==typeof window.__PROMISE_INSTRUMENTATION__){let e=window.__PROMISE_INSTRUMENTATION__ +o("instrument",!0) +for(let t in e)e.hasOwnProperty(t)&&le(t,e[t])}e.default={asap:K,cast:se,Promise:R,EventTarget:n,all:x,allSettled:N,race:D,hash:I,hashSettled:L,rethrow:B,defer:U,denodeify:P,configure:o,on:le,off:ue,resolve:V,reject:z,map:$,async:ae,filter:W}})),"object"==typeof module&&"function"==typeof module.require&&(module.exports=t("ember").default)}(),"undefined"==typeof FastBoot){var preferNative=!1;(function(e){define("fetch",["exports","ember","rsvp"],(function(t,r,n){"use strict" +var i="default"in r?r.default:r,o=("default"in n?n.default:n).Promise,s=["FormData","FileReader","Blob","URLSearchParams","Symbol","ArrayBuffer"],a=s +preferNative&&(a=s.concat(["fetch","Headers","Request","Response","AbortController"])),a.forEach((function(r){e[r]&&Object.defineProperty(t,r,{configurable:!0,get:function(){return e[r]},set:function(t){e[r]=t}})})) +var l=t,u=t;(function(){class e{constructor(){Object.defineProperty(this,"listeners",{value:{},writable:!0,configurable:!0})}addEventListener(e,t,r){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push({callback:t,options:r})}removeEventListener(e,t){if(!(e in this.listeners))return +const r=this.listeners[e] +for(let n=0,i=r.length;n{throw r}))}i.options&&i.options.once&&this.removeEventListener(e.type,i.callback)}return!e.defaultPrevented}}class t extends e{constructor(){super(),this.listeners||e.call(this),Object.defineProperty(this,"aborted",{value:!1,writable:!0,configurable:!0}),Object.defineProperty(this,"onabort",{value:null,writable:!0,configurable:!0}),Object.defineProperty(this,"reason",{value:void 0,writable:!0,configurable:!0})}toString(){return"[object AbortSignal]"}dispatchEvent(e){"abort"===e.type&&(this.aborted=!0,"function"==typeof this.onabort&&this.onabort.call(this,e)),super.dispatchEvent(e)}}class r{constructor(){Object.defineProperty(this,"signal",{value:new t,writable:!0,configurable:!0})}abort(e){let t +try{t=new Event("abort")}catch(n){"undefined"!=typeof document?document.createEvent?(t=document.createEvent("Event"),t.initEvent("abort",!1,!1)):(t=document.createEventObject(),t.type="abort"):t={type:"abort",bubbles:!1,cancelable:!1}}let r=e +if(void 0===r)if("undefined"==typeof document)r=new Error("This operation was aborted"),r.name="AbortError" +else try{r=new DOMException("signal is aborted without reason")}catch(i){r=new Error("This operation was aborted"),r.name="AbortError"}this.signal.reason=r,this.signal.dispatchEvent(t)}toString(){return"[object AbortController]"}}"undefined"!=typeof Symbol&&Symbol.toStringTag&&(r.prototype[Symbol.toStringTag]="AbortController",t.prototype[Symbol.toStringTag]="AbortSignal"),function(e){(function(e){return e.__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL?(console.log("__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL=true is set, will force install polyfill"),!0):"function"==typeof e.Request&&!e.Request.prototype.hasOwnProperty("signal")||!e.AbortController})(e)&&(e.AbortController=r,e.AbortSignal=t)}(void 0!==u?u:global)})();(function(e){var t=void 0!==l&&l||void 0!==u&&u||"undefined"!=typeof global&&global||{},r="URLSearchParams"in t,n="Symbol"in t&&"iterator"in Symbol,i="FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(e){return!1}}(),s="FormData"in t,a="ArrayBuffer"in t +if(a)var c=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],p=ArrayBuffer.isView||function(e){return e&&c.indexOf(Object.prototype.toString.call(e))>-1} +function d(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(e)||""===e)throw new TypeError('Invalid character in header field name: "'+e+'"') +return e.toLowerCase()}function h(e){return"string"!=typeof e&&(e=String(e)),e}function f(e){var t={next:function(){var t=e.shift() +return{done:void 0===t,value:t}}} +return n&&(t[Symbol.iterator]=function(){return t}),t}function m(e){this.map={},e instanceof m?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){if(2!=e.length)throw new TypeError("Headers constructor: expected name/value pair to be length 2, found"+e.length) +this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function g(e){if(!e._noBody)return e.bodyUsed?o.reject(new TypeError("Already read")):void(e.bodyUsed=!0)}function b(e){return new o((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function y(e){var t=new FileReader,r=b(t) +return t.readAsArrayBuffer(e),r}function v(e){if(e.slice)return e.slice(0) +var t=new Uint8Array(e.byteLength) +return t.set(new Uint8Array(e)),t.buffer}function _(){return this.bodyUsed=!1,this._initBody=function(e){var t +this.bodyUsed=this.bodyUsed,this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:i&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:s&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():a&&i&&((t=e)&&DataView.prototype.isPrototypeOf(t))?(this._bodyArrayBuffer=v(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):a&&(ArrayBuffer.prototype.isPrototypeOf(e)||p(e))?this._bodyArrayBuffer=v(e):this._bodyText=e=Object.prototype.toString.call(e):(this._noBody=!0,this._bodyText=""),this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var e=g(this) +if(e)return e +if(this._bodyBlob)return o.resolve(this._bodyBlob) +if(this._bodyArrayBuffer)return o.resolve(new Blob([this._bodyArrayBuffer])) +if(this._bodyFormData)throw new Error("could not read FormData body as blob") +return o.resolve(new Blob([this._bodyText]))}),this.arrayBuffer=function(){if(this._bodyArrayBuffer){var e=g(this) +return e||(ArrayBuffer.isView(this._bodyArrayBuffer)?o.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):o.resolve(this._bodyArrayBuffer))}if(i)return this.blob().then(y) +throw new Error("could not read as ArrayBuffer")},this.text=function(){var e,t,r,n,i,s=g(this) +if(s)return s +if(this._bodyBlob)return e=this._bodyBlob,t=new FileReader,r=b(t),n=/charset=([A-Za-z0-9_-]+)/.exec(e.type),i=n?n[1]:"utf-8",t.readAsText(e,i),r +if(this._bodyArrayBuffer)return o.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?i:n),this.mode=r.mode||this.mode||null,this.signal=r.signal||this.signal||function(){if("AbortController"in t)return(new AbortController).signal}(),this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests") +if(this._initBody(o),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==r.cache&&"no-cache"!==r.cache)){var s=/([?&])_=[^&]*/ +if(s.test(this.url))this.url=this.url.replace(s,"$1_="+(new Date).getTime()) +else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function E(e){var t=new FormData +return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ") +t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function C(e,t){if(!(this instanceof C))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.') +if(t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].") +this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new m(t.headers),this.url=t.url||"",this._initBody(e)}w.prototype.clone=function(){return new w(this,{body:this._bodyInit})},_.call(w.prototype),_.call(C.prototype),C.prototype.clone=function(){return new C(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},C.error=function(){var e=new C(null,{status:200,statusText:""}) +return e.ok=!1,e.status=0,e.type="error",e} +var k=[301,302,303,307,308] +C.redirect=function(e,t){if(-1===k.indexOf(t))throw new RangeError("Invalid status code") +return new C(null,{status:t,headers:{location:e}})},e.DOMException=t.DOMException +try{new e.DOMException}catch(R){e.DOMException=function(e,t){this.message=e,this.name=t +var r=Error(e) +this.stack=r.stack},e.DOMException.prototype=Object.create(Error.prototype),e.DOMException.prototype.constructor=e.DOMException}function T(r,n){return new o((function(o,s){var l=new w(r,n) +if(l.signal&&l.signal.aborted)return s(new e.DOMException("Aborted","AbortError")) +var u=new XMLHttpRequest +function c(){u.abort()}if(u.onload=function(){var e,t,r={statusText:u.statusText,headers:(e=u.getAllResponseHeaders()||"",t=new m,e.replace(/\r?\n[\t ]+/g," ").split("\r").map((function(e){return 0===e.indexOf("\n")?e.substr(1,e.length):e})).forEach((function(e){var r=e.split(":"),n=r.shift().trim() +if(n){var i=r.join(":").trim() +try{t.append(n,i)}catch(o){console.warn("Response "+o.message)}}})),t)} +0===l.url.indexOf("file://")&&(u.status<200||u.status>599)?r.status=200:r.status=u.status,r.url="responseURL"in u?u.responseURL:r.headers.get("X-Request-URL") +var n="response"in u?u.response:u.responseText +setTimeout((function(){o(new C(n,r))}),0)},u.onerror=function(){setTimeout((function(){s(new TypeError("Network request failed"))}),0)},u.ontimeout=function(){setTimeout((function(){s(new TypeError("Network request timed out"))}),0)},u.onabort=function(){setTimeout((function(){s(new e.DOMException("Aborted","AbortError"))}),0)},u.open(l.method,function(e){try{return""===e&&t.location.href?t.location.href:e}catch(r){return e}}(l.url),!0),"include"===l.credentials?u.withCredentials=!0:"omit"===l.credentials&&(u.withCredentials=!1),"responseType"in u&&(i?u.responseType="blob":a&&(u.responseType="arraybuffer")),n&&"object"==typeof n.headers&&!(n.headers instanceof m||t.Headers&&n.headers instanceof t.Headers)){var p=[] +Object.getOwnPropertyNames(n.headers).forEach((function(e){p.push(d(e)),u.setRequestHeader(e,h(n.headers[e]))})),l.headers.forEach((function(e,t){-1===p.indexOf(t)&&u.setRequestHeader(t,e)}))}else l.headers.forEach((function(e,t){u.setRequestHeader(t,e)})) +l.signal&&(l.signal.addEventListener("abort",c),u.onreadystatechange=function(){4===u.readyState&&l.signal.removeEventListener("abort",c)}),u.send(void 0===l._bodyInit?null:l._bodyInit)}))}T.polyfill=!0,t.fetch||(t.fetch=T,t.Headers=m,t.Request=w,t.Response=C),e.Headers=m,e.Request=w,e.Response=C,e.fetch=T})({}) +if(!l.fetch)throw new Error("fetch is not defined - maybe your browser targets are not covering everything you need?") +var c=0 +function p(e){return c--,e}i.Test?(i.Test.registerWaiter((function(){return 0===c})),t.default=function(){return c++,t.fetch.apply(e,arguments).then((function(e){return e.clone().blob().then(p,p),e}),(function(e){throw p(e),e}))}):t.default=t.fetch,s.forEach((function(e){delete t[e]}))}))})("undefined"!=typeof window&&window||"undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||"undefined"!=typeof global&&global)}define("@ember/string/cache",["exports"],(function(e){"use strict" +function t(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +var r=e[Symbol.toPrimitive] +if(void 0!==r){var n=r.call(e,t||"default") +if("object"!=typeof n)return n +throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") +return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{constructor(e,r,n){t(this,"size",0),t(this,"misses",0),t(this,"hits",0),this.limit=e,this.func=r,this.store=n,this.store=n||new Map}get(e){let t=this.store.get(e) +return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,t=this.set(e,this.func(e)),t)}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}}})),define("@ember/string/index",["exports","@ember/string/cache"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.camelize=function(e){return a.get(e)},e.capitalize=function(e){return g.get(e)},e.classify=function(e){return p.get(e)},e.dasherize=function(e){return i.get(e)},e.decamelize=v,e.getString=function(e){return r[e]},e.getStrings=function(){return r},e.htmlSafe=function(e){throw new Error("htmlSafe is not implemented in the `@ember/string` package. Please import from `@ember/template` instead.")},e.isHTMLSafe=function(e){throw new Error("isHTMLSafe is not implemented in the `@ember/string` package. Please import from `@ember/template` instead.")},e.setStrings=function(e){r=e},e.underscore=function(e){return f.get(e)},e.w=function(e){return e.split(/\s+/)} +let r={} +const n=/[ _]/g,i=new t.default(1e3,(e=>v(e).replace(n,"-"))),o=/(\-|\_|\.|\s)+(.)?/g,s=/(^|\/)([A-Z])/g,a=new t.default(1e3,(e=>e.replace(o,((e,t,r)=>r?r.toUpperCase():"")).replace(s,(e=>e.toLowerCase())))),l=/^(\-|_)+(.)?/,u=/(.)(\-|\_|\.|\s)+(.)?/g,c=/(^|\/|\.)([a-z])/g,p=new t.default(1e3,(e=>{const t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/") +for(let i=0;ie.toUpperCase()))})),d=/([a-z\d])([A-Z]+)/g,h=/\-|\s+/g,f=new t.default(1e3,(e=>e.replace(d,"$1_$2").replace(h,"_").toLowerCase())),m=/(^|\/)([a-z\u00C0-\u024F])/g,g=new t.default(1e3,(e=>e.replace(m,(e=>e.toUpperCase())))),b=/([a-z\d])([A-Z])/g,y=new t.default(1e3,(e=>e.replace(b,"$1_$2").toLowerCase())) +function v(e){return y.get(e)}})),define("@ember/test-waiters/build-waiter",["exports","@ember/debug","@ember/test-waiters/token","@ember/test-waiters/waiter-manager"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e._resetWaiterNames=function(){i=new Set},e.default=function(e){0 +return new o(e)} +let i +class o{constructor(e){this.name=e}beginAsync(){return this}endAsync(){}waitUntil(){return!0}debugInfo(){return[]}reset(){}}})),define("@ember/test-waiters/index",["exports","@ember/test-waiters/waiter-manager","@ember/test-waiters/build-waiter","@ember/test-waiters/wait-for-promise","@ember/test-waiters/wait-for"],(function(e,t,r,n,i){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"_reset",{enumerable:!0,get:function(){return t._reset}}),Object.defineProperty(e,"_resetWaiterNames",{enumerable:!0,get:function(){return r._resetWaiterNames}}),Object.defineProperty(e,"buildWaiter",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"getPendingWaiterState",{enumerable:!0,get:function(){return t.getPendingWaiterState}}),Object.defineProperty(e,"getWaiters",{enumerable:!0,get:function(){return t.getWaiters}}),Object.defineProperty(e,"hasPendingWaiters",{enumerable:!0,get:function(){return t.hasPendingWaiters}}),Object.defineProperty(e,"register",{enumerable:!0,get:function(){return t.register}}),Object.defineProperty(e,"unregister",{enumerable:!0,get:function(){return t.unregister}}),Object.defineProperty(e,"waitFor",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"waitForPromise",{enumerable:!0,get:function(){return n.default}})})),define("@ember/test-waiters/token",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{}})),define("@ember/test-waiters/types/index",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0})})),define("@ember/test-waiters/wait-for-promise",["exports","@ember/test-waiters/build-waiter"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){let r=e +0 +return r};(0,t.default)("@ember/test-waiters:promise-waiter")})),define("@ember/test-waiters/wait-for",["exports","@ember/test-waiters/wait-for-promise","@ember/test-waiters/build-waiter"],(function(e,t,r){"use strict" +function n(e,t){return e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(...e){if(e.length<3){let[t,r]=e +return n(t,r)}{let[,,t,r]=e +return t}};(0,r.default)("@ember/test-waiters:generator-waiter")})),define("@ember/test-waiters/waiter-manager",["exports","ember","@ember/test"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e._reset=function(){for(let e of o())e.isRegistered=!1 +n.clear()},e.getPendingWaiterState=s,e.getWaiters=o,e.hasPendingWaiters=a,e.register=function(e){n.set(e.name,e)},e.unregister=function(e){n.delete(e.name)} +const n=function(){let e="TEST_WAITERS",t="undefined"!=typeof Symbol?Symbol.for(e):e,r=i(),n=r[t] +return void 0===n&&(n=r[t]=new Map),n}() +function i(){if("undefined"!=typeof globalThis)return globalThis +if("undefined"!=typeof self)return self +if("undefined"!=typeof window)return window +if("undefined"!=typeof global)return global +throw new Error("unable to locate global object")}function o(){let e=[] +return n.forEach((t=>{e.push(t)})),e}function s(){let e={pending:0,waiters:{}} +return n.forEach((t=>{if(!t.waitUntil()){e.pending++ +let r=t.debugInfo() +e.waiters[t.name]=r||!0}})),e}function a(){return s().pending>0}t.default.Test&&(0,r.registerWaiter)((()=>!a()))})),define("@embroider/macros/es-compat2",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return e?.__esModule?e:{default:e,...e}}})),define("@embroider/macros/runtime",["exports"],(function(e){"use strict" +function t(e){return n.packages[e]}function r(){return n.global}Object.defineProperty(e,"__esModule",{value:!0}),e.config=t,e.each=function(e){if(!Array.isArray(e))throw new Error("the argument to the each() macro must be an array") +return e},e.getGlobalConfig=r,e.isTesting=function(){let e=n.global,t=e&&e["@embroider/macros"] +return Boolean(t&&t.isTesting)},e.macroCondition=function(e){return e} +const n={packages:{},global:{}} +let i="undefined"!=typeof window?window._embroider_macros_runtime_config:void 0 +if(i){let e={config:t,getGlobalConfig:r,setConfig(e,t){n.packages[e]=t},setGlobalConfig(e,t){n.global[e]=t}} +for(let t of i)t(e)}})),define("@glimmer/component/-private/base-component-manager",["exports","@glimmer/component/-private/component"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return class{static create(e){return new this(t(e))}constructor(t){(function(e,t,r){(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +var r=e[Symbol.toPrimitive] +if(void 0!==r){var n=r.call(e,t||"default") +if("object"!=typeof n)return n +throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") +return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})(this,"capabilities",r),e(this,t)}createComponent(e,r){return new e(t(this),r.named)}getContext(e){return e}}}})),define("@glimmer/component/-private/component",["exports","@glimmer/component/-private/owner","@glimmer/component/-private/destroyables"],(function(e,t,r){"use strict" +function n(e,t,r){var n +return(t="symbol"==typeof(n=function(e,t){if("object"!=typeof e||!e)return e +var r=e[Symbol.toPrimitive] +if(void 0!==r){var n=r.call(e,t||"default") +if("object"!=typeof n)return n +throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(t,"string"))?n:n+"")in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ARGS_SET=void 0 +e.ARGS_SET=void 0 +e.default=class{constructor(e,r){n(this,"args",void 0),this.args=r,(0,t.setOwner)(this,e)}get isDestroying(){return(0,r.isDestroying)(this)}get isDestroyed(){return(0,r.isDestroyed)(this)}willDestroy(){}}})),define("@glimmer/component/-private/destroyables",["exports","ember"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.isDestroying=e.isDestroyed=void 0 +e.isDestroying=t.default._isDestroying,e.isDestroyed=t.default._isDestroyed})),define("@glimmer/component/-private/ember-component-manager",["exports","ember","@ember/object","@ember/application","@ember/component","@ember/runloop","@glimmer/component/-private/base-component-manager","@glimmer/component/-private/destroyables"],(function(e,t,r,n,i,o,s,a){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const{setDestroyed:l,setDestroying:u}=a,c=(0,i.capabilities)("3.13",{destructor:!0,asyncLifecycleCallbacks:!1,updateHook:!1}),p=t.default.destroy,d=t.default._registerDestructor +class h extends((0,s.default)(n.setOwner,n.getOwner,c)){createComponent(e,t){const r=super.createComponent(e,t) +return d(r,(()=>{r.willDestroy()})),r}destroyComponent(e){p(e)}}e.default=h})),define("@glimmer/component/-private/owner",["exports","@ember/application"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"setOwner",{enumerable:!0,get:function(){return t.setOwner}})})),define("@glimmer/component/index",["exports","@ember/component","@glimmer/component/-private/ember-component-manager","@glimmer/component/-private/component"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +let i=n.default;(0,t.setComponentManager)((e=>new r.default(e)),i) +e.default=i})),define("ember-cli-app-version/initializer-factory",["exports","ember"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){let n=!1 +return function(){!n&&e&&t&&(r.register(e,t),n=!0)}} +const{libraries:r}=t.default})),define("ember-cli-app-version/utils/regexp",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.versionRegExp=e.versionExtendedRegExp=e.shaRegExp=void 0 +e.versionRegExp=/\d+[.]\d+[.]\d+/,e.versionExtendedRegExp=/\d+[.]\d+[.]\d+-[a-z]*([.]\d+)?/,e.shaRegExp=/[a-z\d]{8}$/})),define("ember-fetch/errors",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.isAbortError=function(e){return"AbortError"==e.name},e.isBadRequestResponse=function(e){return 400===e.status},e.isConflictResponse=function(e){return 409===e.status},e.isForbiddenResponse=function(e){return 403===e.status},e.isGoneResponse=function(e){return 410===e.status},e.isInvalidResponse=function(e){return 422===e.status},e.isNotFoundResponse=function(e){return 404===e.status},e.isServerErrorResponse=function(e){return e.status>=500&&e.status<600},e.isUnauthorizedResponse=function(e){return 401===e.status}})),define("ember-fetch/types",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.isPlainObject=function(e){return"[object Object]"===Object.prototype.toString.call(e)}})),define("ember-fetch/utils/determine-body-promise",["exports","@ember/debug"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,r){return e.text().then((function(n){let i=n +try{i=JSON.parse(n)}catch(o){if(!(o instanceof SyntaxError))throw o +const s=e.status +!e.ok||204!==s&&205!==s&&"HEAD"!==r.method?(0,t.debug)(`This response was unable to be parsed as json: ${n}`):i=void 0}return i}))}})),define("ember-fetch/utils/mung-options-for-fetch",["exports","@ember/polyfills","ember-fetch/utils/serialize-query-params","ember-fetch/types"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){const i=(0,t.assign)({credentials:"same-origin"},e) +if(i.method=(i.method||i.type||"GET").toUpperCase(),i.data)if("GET"===i.method||"HEAD"===i.method){if(Object.keys(i.data).length){const e=i.url.indexOf("?")>-1?"&":"?" +i.url+=`${e}${(0,r.serializeQueryParams)(i.data)}`}}else(0,n.isPlainObject)(i.data)?i.body=JSON.stringify(i.data):i.body=i.data +return i}})),define("ember-fetch/utils/serialize-query-params",["exports","ember-fetch/types"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.serializeQueryParams=n +const r=/\[\]$/ +function n(e){var n=[] +return function e(o,s){var a,l,u +if(o)if(Array.isArray(s))for(a=0,l=s.length;a1){let e=t[0] +return"component"===e||"helper"===e||"modifier"===e||"template"===e&&0===t[1].indexOf("components/")?e+":"+t[1].replace(/_/g,"-"):e+":"+(0,i.dasherize)(t[1].replace(/\./g,"/"))}return e}pluralize(e){return this.pluralizedTypes[e]||(this.pluralizedTypes[e]=e+"s")}podBasedLookupWithPrefix(e,t){let r=t.fullNameWithoutType +return"template"===t.type&&(r=r.replace(/^components\//,"")),e+"/"+r+"/"+t.type}podBasedModuleName(e){let t=this.namespace.podModulePrefix||this.namespace.modulePrefix +return this.podBasedLookupWithPrefix(t,e)}podBasedComponentsInSubdir(e){let t=this.namespace.podModulePrefix||this.namespace.modulePrefix +if(t+="/components","component"===e.type||/^components/.test(e.fullNameWithoutType))return this.podBasedLookupWithPrefix(t,e)}resolveEngine(e){let t=e.fullNameWithoutType+"/engine" +if(this._moduleRegistry.has(t))return this._extractDefaultExport(t)}resolveRouteMap(e){let t=e.fullNameWithoutType,r=t+"/routes" +if(this._moduleRegistry.has(r)){let e=this._extractDefaultExport(r) +return e}}resolveTemplate(e){let r=this.resolveOther(e) +return null==r&&(r=t.default.TEMPLATES[e.fullNameWithoutType]),r}mainModuleName(e){if("main"===e.fullNameWithoutType)return e.prefix+"/"+e.type}defaultModuleName(e){return e.prefix+"/"+this.pluralize(e.type)+"/"+e.fullNameWithoutType}nestedColocationComponentModuleName(e){if("component"===e.type)return e.prefix+"/"+this.pluralize(e.type)+"/"+e.fullNameWithoutType+"/index"}prefix(e){let t=this.namespace.modulePrefix +return this.namespace[e.type+"Prefix"]&&(t=this.namespace[e.type+"Prefix"]),t}findModuleName(e,t){let r,n=this.moduleNameLookupPatterns +for(let i=0,o=n.length;i60?".":new Array(60-r.fullName.length).join("."),n||(n=this.lookupDescription(r)),console&&console.info&&console.info(o,r.fullName,i,n)}knownForType(e){let t=this._moduleRegistry.moduleNames(),r=Object.create(null) +for(let n=0,i=t.length;nn.length+i.length)return e+":"+t.slice(o+n.length,s) +let a=r+"/"+this.pluralize(e)+"/" +return 0===t.indexOf(a)&&t.length>a.length?e+":"+t.slice(a.length):void 0}_extractDefaultExport(e){let t=this._moduleRegistry.get(e,null,null,!0) +return t&&t.default&&(t=t.default),t}}s(l,"moduleBasedResolver",!0) +e.default=l})),define("ember-resolver/string/cache",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{constructor(e,t,r){this.limit=e,this.func=t,this.store=r,this.size=0,this.misses=0,this.hits=0,this.store=r||new Map}get(e){let t=this.store.get(e) +return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,t=this.set(e,this.func(e)),t)}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}}})),define("ember-resolver/string/index",["exports","ember-resolver/string/cache"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.classify=function(e){return l.get(e)},e.dasherize=function(e){return i.get(e)},e.decamelize=f,e.getString=function(e){return r[e]},e.getStrings=function(){return r},e.setStrings=function(e){r=e},e.underscore=function(e){return p.get(e)} +let r={} +const n=/[ _]/g,i=new t.default(1e3,(e=>f(e).replace(n,"-"))),o=/^(\-|_)+(.)?/,s=/(.)(\-|\_|\.|\s)+(.)?/g,a=/(^|\/|\.)([a-z])/g,l=new t.default(1e3,(e=>{const t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/") +for(let i=0;ie.toUpperCase()))})),u=/([a-z\d])([A-Z]+)/g,c=/\-|\s+/g,p=new t.default(1e3,(e=>e.replace(u,"$1_$2").replace(c,"_").toLowerCase())),d=/([a-z\d])([A-Z])/g,h=new t.default(1e3,(e=>e.replace(d,"$1_$2").toLowerCase())) +function f(e){return h.get(e)}})) +define("ember-resolver/utils/class-factory",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return{create:t=>"function"==typeof e.extend?e.extend(t):e}}})),define("ember-test-waiters/index",["exports","@ember/debug","@ember/test-waiters"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.keys(r).forEach((function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===r[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return r[t]}}))}))})),define("ember-tracked-storage-polyfill/index",["exports","@glimmer/tracking","@ember/debug"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.createStorage=function(e,t=o){return new i(e,t)},e.getValue=function(e){return e._value},e.setValue=function(e,t){const{_isEqual:r,_lastValue:n}=e +r(t,n)||(e._value=e._lastValue=t)} +var n=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +class i{constructor(e,t){this._value=this._lastValue=e,this._isEqual=t}}function o(e,t){return e===t}n([t.tracked],i.prototype,"_value",void 0)})) diff --git a/ember/ember-git-06-12f617ec.template-compiler.js b/ember/ember-git-06-12f617ec.template-compiler.js new file mode 100644 index 0000000..8dadf2b --- /dev/null +++ b/ember/ember-git-06-12f617ec.template-compiler.js @@ -0,0 +1,20034 @@ +(function() { +/*! + * @overview Ember - JavaScript Application Framework + * @copyright Copyright 2011 Tilde Inc. and contributors + * Portions Copyright 2006-2011 Strobe Inc. + * Portions Copyright 2008-2011 Apple Inc. All rights reserved. + * @license Licensed under MIT license + * See https://raw.github.com/emberjs/ember.js/master/LICENSE + * @version 5.10.0-alpha.1+12f617ec + */ + +/* eslint-disable no-var */ +/* globals global globalThis self */ +/* eslint-disable-next-line no-unused-vars */ +var define, require; + +(function () { + var globalObj = + typeof globalThis !== 'undefined' + ? globalThis + : typeof self !== 'undefined' + ? self + : typeof window !== 'undefined' + ? window + : typeof global !== 'undefined' + ? global + : null; + + if (globalObj === null) { + throw new Error('unable to locate global object'); + } + + if (typeof globalObj.define === 'function' && typeof globalObj.require === 'function') { + define = globalObj.define; + require = globalObj.require; + + return; + } + + var registry = Object.create(null); + var seen = Object.create(null); + + function missingModule(name, referrerName) { + if (referrerName) { + throw new Error('Could not find module ' + name + ' required by: ' + referrerName); + } else { + throw new Error('Could not find module ' + name); + } + } + + function internalRequire(_name, referrerName) { + var name = _name; + var mod = registry[name]; + + if (!mod) { + name = name + '/index'; + mod = registry[name]; + } + + var exports = seen[name]; + + if (exports !== undefined) { + return exports; + } + + exports = seen[name] = {}; + + if (!mod) { + missingModule(_name, referrerName); + } + + var deps = mod.deps; + var callback = mod.callback; + var reified = new Array(deps.length); + + for (var i = 0; i < deps.length; i++) { + if (deps[i] === 'exports') { + reified[i] = exports; + } else if (deps[i] === 'require') { + reified[i] = require; + } else { + reified[i] = require(deps[i], name); + } + } + + callback.apply(this, reified); + + return exports; + } + + require = function (name) { + return internalRequire(name, null); + }; + + define = function (name, deps, callback) { + registry[name] = { deps: deps, callback: callback }; + }; + + // setup `require` module + require['default'] = require; + + require.has = function registryHas(moduleName) { + return Boolean(registry[moduleName]) || Boolean(registry[moduleName + '/index']); + }; + + require._eak_seen = require.entries = registry; +})(); + +define("@ember/-internals/browser-environment/index", ["exports"], function (_exports) { + "use strict"; + + Object.defineProperty(_exports, "__esModule", { + value: true + }); + _exports.window = _exports.userAgent = _exports.location = _exports.isFirefox = _exports.isChrome = _exports.history = _exports.hasDOM = void 0; + // check if window exists and actually is the global + var hasDom = _exports.hasDOM = typeof self === 'object' && self !== null && self.Object === Object && typeof Window !== 'undefined' && self.constructor === Window && typeof document === 'object' && document !== null && self.document === document && typeof location === 'object' && location !== null && self.location === location && typeof history === 'object' && history !== null && self.history === history && typeof navigator === 'object' && navigator !== null && self.navigator === navigator && typeof navigator.userAgent === 'string'; + const window = _exports.window = hasDom ? self : null; + const location$1 = _exports.location = hasDom ? self.location : null; + const history$1 = _exports.history = hasDom ? self.history : null; + const userAgent = _exports.userAgent = hasDom ? self.navigator.userAgent : 'Lynx (textmode)'; + const isChrome = _exports.isChrome = hasDom ? typeof chrome === 'object' && !(typeof opera === 'object') : false; + const isFirefox = _exports.isFirefox = hasDom ? /Firefox|FxiOS/.test(userAgent) : false; +}); +define("@ember/-internals/environment/index", ["exports"], function (_exports) { + "use strict"; + + Object.defineProperty(_exports, "__esModule", { + value: true + }); + _exports.context = _exports.ENV = void 0; + _exports.getENV = getENV; + _exports.getLookup = getLookup; + _exports.global = void 0; + _exports.setLookup = setLookup; + // from lodash to catch fake globals + function checkGlobal(value) { + return value && value.Object === Object ? value : undefined; + } + // element ids can ruin global miss checks + function checkElementIdShadowing(value) { + return value && value.nodeType === undefined ? value : undefined; + } + // export real global + var global$1 = _exports.global = checkGlobal(checkElementIdShadowing(typeof global === 'object' && global)) || checkGlobal(typeof self === 'object' && self) || checkGlobal(typeof window === 'object' && window) || typeof mainContext !== 'undefined' && mainContext || + // set before strict mode in Ember loader/wrapper + new Function('return this')(); // eval outside of strict mode + + // legacy imports/exports/lookup stuff (should we keep this??) + const context = _exports.context = function (global, Ember) { + return Ember === undefined ? { + imports: global, + exports: global, + lookup: global + } : { + // import jQuery + imports: Ember.imports || global, + // export Ember + exports: Ember.exports || global, + // search for Namespaces + lookup: Ember.lookup || global + }; + }(global$1, global$1.Ember); + function getLookup() { + return context.lookup; + } + function setLookup(value) { + context.lookup = value; + } + + /** + The hash of environment variables used to control various configuration + settings. To specify your own or override default settings, add the + desired properties to a global hash named `EmberENV` (or `ENV` for + backwards compatibility with earlier versions of Ember). The `EmberENV` + hash must be created before loading Ember. + + @class EmberENV + @type Object + @public + */ + const ENV = _exports.ENV = { + ENABLE_OPTIONAL_FEATURES: false, + /** + Determines whether Ember should add to `Array` + native object prototypes, a few extra methods in order to provide a more + friendly API. + We generally recommend leaving this option set to true however, if you need + to turn it off, you can add the configuration property + `EXTEND_PROTOTYPES` to `EmberENV` and set it to `false`. + Note, when disabled (the default configuration for Ember Addons), you will + instead have to access all methods and functions from the Ember + namespace. + @property EXTEND_PROTOTYPES + @type Boolean + @default true + @for EmberENV + @public + */ + EXTEND_PROTOTYPES: { + Array: true + }, + /** + The `LOG_STACKTRACE_ON_DEPRECATION` property, when true, tells Ember to log + a full stack trace during deprecation warnings. + @property LOG_STACKTRACE_ON_DEPRECATION + @type Boolean + @default true + @for EmberENV + @public + */ + LOG_STACKTRACE_ON_DEPRECATION: true, + /** + The `LOG_VERSION` property, when true, tells Ember to log versions of all + dependent libraries in use. + @property LOG_VERSION + @type Boolean + @default true + @for EmberENV + @public + */ + LOG_VERSION: true, + RAISE_ON_DEPRECATION: false, + STRUCTURED_PROFILE: false, + /** + Whether to perform extra bookkeeping needed to make the `captureRenderTree` + API work. + This has to be set before the ember JavaScript code is evaluated. This is + usually done by setting `window.EmberENV = { _DEBUG_RENDER_TREE: true };` + before the "vendor" `'; + }; + return EventedTokenizer; + }(); + var Tokenizer = _exports.Tokenizer = /** @class */function () { + function Tokenizer(entityParser, options) { + if (options === void 0) { + options = {}; + } + this.options = options; + this.token = null; + this.startLine = 1; + this.startColumn = 0; + this.tokens = []; + this.tokenizer = new EventedTokenizer(this, entityParser, options.mode); + this._currentAttribute = undefined; + } + Tokenizer.prototype.tokenize = function (input) { + this.tokens = []; + this.tokenizer.tokenize(input); + return this.tokens; + }; + Tokenizer.prototype.tokenizePart = function (input) { + this.tokens = []; + this.tokenizer.tokenizePart(input); + return this.tokens; + }; + Tokenizer.prototype.tokenizeEOF = function () { + this.tokens = []; + this.tokenizer.tokenizeEOF(); + return this.tokens[0]; + }; + Tokenizer.prototype.reset = function () { + this.token = null; + this.startLine = 1; + this.startColumn = 0; + }; + Tokenizer.prototype.current = function () { + var token = this.token; + if (token === null) { + throw new Error('token was unexpectedly null'); + } + if (arguments.length === 0) { + return token; + } + for (var i = 0; i < arguments.length; i++) { + if (token.type === arguments[i]) { + return token; + } + } + throw new Error("token type was unexpectedly " + token.type); + }; + Tokenizer.prototype.push = function (token) { + this.token = token; + this.tokens.push(token); + }; + Tokenizer.prototype.currentAttribute = function () { + return this._currentAttribute; + }; + Tokenizer.prototype.addLocInfo = function () { + if (this.options.loc) { + this.current().loc = { + start: { + line: this.startLine, + column: this.startColumn + }, + end: { + line: this.tokenizer.line, + column: this.tokenizer.column + } + }; + } + this.startLine = this.tokenizer.line; + this.startColumn = this.tokenizer.column; + }; + // Data + Tokenizer.prototype.beginDoctype = function () { + this.push({ + type: "Doctype" /* Doctype */, + name: '' + }); + }; + Tokenizer.prototype.appendToDoctypeName = function (char) { + this.current("Doctype" /* Doctype */).name += char; + }; + Tokenizer.prototype.appendToDoctypePublicIdentifier = function (char) { + var doctype = this.current("Doctype" /* Doctype */); + if (doctype.publicIdentifier === undefined) { + doctype.publicIdentifier = char; + } else { + doctype.publicIdentifier += char; + } + }; + Tokenizer.prototype.appendToDoctypeSystemIdentifier = function (char) { + var doctype = this.current("Doctype" /* Doctype */); + if (doctype.systemIdentifier === undefined) { + doctype.systemIdentifier = char; + } else { + doctype.systemIdentifier += char; + } + }; + Tokenizer.prototype.endDoctype = function () { + this.addLocInfo(); + }; + Tokenizer.prototype.beginData = function () { + this.push({ + type: "Chars" /* Chars */, + chars: '' + }); + }; + Tokenizer.prototype.appendToData = function (char) { + this.current("Chars" /* Chars */).chars += char; + }; + Tokenizer.prototype.finishData = function () { + this.addLocInfo(); + }; + // Comment + Tokenizer.prototype.beginComment = function () { + this.push({ + type: "Comment" /* Comment */, + chars: '' + }); + }; + Tokenizer.prototype.appendToCommentData = function (char) { + this.current("Comment" /* Comment */).chars += char; + }; + Tokenizer.prototype.finishComment = function () { + this.addLocInfo(); + }; + // Tags - basic + Tokenizer.prototype.tagOpen = function () {}; + Tokenizer.prototype.beginStartTag = function () { + this.push({ + type: "StartTag" /* StartTag */, + tagName: '', + attributes: [], + selfClosing: false + }); + }; + Tokenizer.prototype.beginEndTag = function () { + this.push({ + type: "EndTag" /* EndTag */, + tagName: '' + }); + }; + Tokenizer.prototype.finishTag = function () { + this.addLocInfo(); + }; + Tokenizer.prototype.markTagAsSelfClosing = function () { + this.current("StartTag" /* StartTag */).selfClosing = true; + }; + // Tags - name + Tokenizer.prototype.appendToTagName = function (char) { + this.current("StartTag" /* StartTag */, "EndTag" /* EndTag */).tagName += char; + }; + // Tags - attributes + Tokenizer.prototype.beginAttribute = function () { + this._currentAttribute = ['', '', false]; + }; + Tokenizer.prototype.appendToAttributeName = function (char) { + this.currentAttribute()[0] += char; + }; + Tokenizer.prototype.beginAttributeValue = function (isQuoted) { + this.currentAttribute()[2] = isQuoted; + }; + Tokenizer.prototype.appendToAttributeValue = function (char) { + this.currentAttribute()[1] += char; + }; + Tokenizer.prototype.finishAttributeValue = function () { + this.current("StartTag" /* StartTag */).attributes.push(this._currentAttribute); + }; + Tokenizer.prototype.reportSyntaxError = function (message) { + this.current().syntaxError = message; + }; + return Tokenizer; + }(); + function tokenize(input, options) { + var tokenizer = new Tokenizer(new EntityParser(namedCharRefs), options); + return tokenizer.tokenize(input); + } +}); + + try { + // in the browser, the ember-template-compiler.js and ember.js bundles find each other via globalThis.require. + require('@ember/template-compilation'); + } catch (err) { + // in node, that coordination is a no-op + define('@ember/template-compilation', ['exports'], function (e) { + e.__registerTemplateCompiler = function () {}; + }); + define('ember', [ + 'exports', + '@ember/-internals/environment', + '@ember/canary-features', + 'ember/version', + ], function (e, env, fea, ver) { + e.default = { + ENV: env.ENV, + FEATURES: fea.FEATURES, + VERSION: ver.default, + }; + }); + define('@ember/-internals/glimmer', ['exports'], function(e) { + e.template = undefined; + }); + define('@ember/application', ['exports'], function(e) {}); + } + + (function (m) { + if (typeof module === 'object' && module.exports) { + module.exports = m; + } + })(require('ember-template-compiler')); + + +}()); +//# sourceMappingURL=ember-template-compiler.map diff --git a/ember/ember-git-07-53b2de8e.prod.js b/ember/ember-git-07-53b2de8e.prod.js new file mode 100644 index 0000000..6df7c50 --- /dev/null +++ b/ember/ember-git-07-53b2de8e.prod.js @@ -0,0 +1,3388 @@ +window.EmberENV=function(e,t){for(var r in t)e[r]=t[r] +return e}(window.EmberENV||{},{EXTEND_PROTOTYPES:!1,FEATURES:{},_APPLICATION_TEMPLATE_WRAPPER:!1,_DEFAULT_ASYNC_OBSERVERS:!0,_JQUERY_INTEGRATION:!1,_TEMPLATE_ONLY_GLIMMER_COMPONENTS:!0}) +var loader,requireModule,requirejs,define,require,runningTests=!1 +function _classPrivateFieldInitSpec(e,t,r){_checkPrivateRedeclaration(e,t),t.set(e,r)}function _checkPrivateRedeclaration(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function _defineProperty(e,t,r){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey(e){var t=_toPrimitive(e,"string") +return"symbol"==typeof t?t:t+""}function _toPrimitive(e,t){if("object"!=typeof e||!e)return e +var r=e[Symbol.toPrimitive] +if(void 0!==r){var n=r.call(e,t||"default") +if("object"!=typeof n)return n +throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)} +/*! + * @overview Ember - JavaScript Application Framework + * @copyright Copyright 2011 Tilde Inc. and contributors + * Portions Copyright 2006-2011 Strobe Inc. + * Portions Copyright 2008-2011 Apple Inc. All rights reserved. + * @license Licensed under MIT license + * See https://raw.github.com/emberjs/ember.js/master/LICENSE + * @version 5.10.0-alpha.1+53b2de8e + */if(function(e){"use strict" +function t(){var e=Object.create(null) +return e.__=void 0,delete e.__,e}var r={loader:loader,define:define,requireModule:requireModule,require:require,requirejs:requirejs} +requirejs=require=requireModule=function(e){for(var t=[],r=u(e,"(require)",t),n=t.length-1;n>=0;n--)t[n].exports() +return r.module.exports},loader={noConflict:function(t){var n,i +for(n in t)t.hasOwnProperty(n)&&r.hasOwnProperty(n)&&(i=t[n],e[i]=e[n],e[n]=r[n])},makeDefaultExport:!0} +var n=t(),i=(t(),0) +var o=["require","exports","module"] +function s(e,t,r,n){this.uuid=i++,this.id=e,this.deps=!t.length&&r.length?o:t,this.module={exports:{}},this.callback=r,this.hasExportsAsDep=!1,this.isAlias=n,this.reified=new Array(t.length),this.state="new"}function a(){}function l(e){this.id=e}function u(e,t,r){for(var i=n[e]||n[e+"/index"];i&&i.isAlias;)i=n[i.id]||n[i.id+"/index"] +return i||function(e,t){throw new Error("Could not find module `"+e+"` imported from `"+t+"`")}(e,t),r&&"pending"!==i.state&&"finalized"!==i.state&&(i.findDeps(r),r.push(i)),i}function c(e,t){if("."!==e.charAt(0))return e +for(var r=e.split("/"),n=t.split("/").slice(0,-1),i=0,o=r.length;it))}const u="object"==typeof self&&null!==self&&self.Object===Object&&"undefined"!=typeof Window&&self.constructor===Window&&"object"==typeof document&&null!==document&&self.document===document&&"object"==typeof location&&null!==location&&self.location===location&&"object"==typeof history&&null!==history&&self.history===history&&"object"==typeof navigator&&null!==navigator&&self.navigator===navigator&&"string"==typeof navigator.userAgent,c=u?self:null,d=u?self.location:null,h=u?self.history:null,p=u?self.navigator.userAgent:"Lynx (textmode)",f=!!u&&("object"==typeof chrome&&!("object"==typeof opera)),m=!!u&&/Firefox|FxiOS/.test(p),g=Object.defineProperty({__proto__:null,hasDOM:u,history:h,isChrome:f,isFirefox:m,location:d,userAgent:p,window:c},Symbol.toStringTag,{value:"Module"}) +function y(e){let t=Object.create(null) +t[e]=1 +for(let r in t)if(r===e)return r +return e}function b(e){return null!==e&&("object"==typeof e||"function"==typeof e)}let _=0 +function v(){return++_}const w="ember",S=new WeakMap,P=new Map,E=y(`__ember${Date.now()}`) +function k(e,t=w){let r=t+v().toString() +return b(e)&&S.set(e,r),r}function T(e){let t +if(b(e))t=S.get(e),void 0===t&&(t=`${w}${v()}`,S.set(e,t)) +else if(t=P.get(e),void 0===t){let r=typeof e +t="string"===r?`st${v()}`:"number"===r?`nu${v()}`:"symbol"===r?`sy${v()}`:`(${e})`,P.set(e,t)}return t}const C=[] +function O(e){return y(`__${e}${E+Math.floor(Math.random()*Date.now()).toString()}__`)}const A=Symbol +function R(e){let t=Object.create(e) +return t._dict=null,delete t._dict,t}let x +const M=/\.(_super|call\(this|apply\(this)/,D=Function.prototype.toString,N=D.call((function(){return this})).indexOf("return this")>-1?function(e){return M.test(D.call(e))}:function(){return!0},I=new WeakMap,j=Object.freeze((function(){})) +function L(e){let t=I.get(e) +return void 0===t&&(t=N(e),I.set(e,t)),t}I.set(j,!1) +class B{constructor(){_defineProperty(this,"listeners",void 0),_defineProperty(this,"observers",void 0)}}const F=new WeakMap +function U(e){let t=F.get(e) +return void 0===t&&(t=new B,F.set(e,t)),t}function z(e){return F.get(e)}function H(e,t){U(e).observers=t}function V(e,t){U(e).listeners=t}const $=new WeakSet +function q(e,t){return L(e)?!$.has(t)&&L(t)?G(e,G(t,j)):G(e,t):e}function G(e,t){function r(){let r=this._super +this._super=t +let n=e.apply(this,arguments) +return this._super=r,n}$.add(r) +let n=F.get(e) +return void 0!==n&&F.set(r,n),r}function W(e,t){let r=e +do{let e=Object.getOwnPropertyDescriptor(r,t) +if(void 0!==e)return e +r=Object.getPrototypeOf(r)}while(null!==r) +return null}function Q(e,t){return null!=e&&"function"==typeof e[t]}const Y=new WeakMap +function K(e,t){b(e)&&Y.set(e,t)}function J(e){return Y.get(e)}const X=Object.prototype.toString +function Z(e){return null==e}const ee=new WeakSet +function te(e){return!!b(e)&&ee.has(e)}function re(e){b(e)&&ee.add(e)}class ne{constructor(e,t,r=new Map){_defineProperty(this,"size",0),_defineProperty(this,"misses",0),_defineProperty(this,"hits",0),this.limit=e,this.func=t,this.store=r}get(e){return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,this.set(e,this.func(e)))}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}}function ie(e){return e&&e.Object===Object?e:void 0}const oe=ie((se="object"==typeof global&&global)&&void 0===se.nodeType?se:void 0)||ie("object"==typeof self&&self)||ie("object"==typeof window&&window)||"undefined"!=typeof mainContext&&mainContext||new Function("return this")() +var se +const ae=function(e,t){return void 0===t?{imports:e,exports:e,lookup:e}:{imports:t.imports||e,exports:t.exports||e,lookup:t.lookup||e}}(oe,oe.Ember) +function le(){return ae.lookup}function ue(e){ae.lookup=e}const ce={ENABLE_OPTIONAL_FEATURES:!1,EXTEND_PROTOTYPES:{Array:!0},LOG_STACKTRACE_ON_DEPRECATION:!0,LOG_VERSION:!0,RAISE_ON_DEPRECATION:!1,STRUCTURED_PROFILE:!1,_DEBUG_RENDER_TREE:!1,_ALL_DEPRECATIONS_ENABLED:!1,_OVERRIDE_DEPRECATION_VERSION:null,_DEFAULT_ASYNC_OBSERVERS:!1,_NO_IMPLICIT_ROUTE_MODEL:!1,_RERENDER_LOOP_LIMIT:1e3,EMBER_LOAD_HOOKS:{},FEATURES:{}} +function de(){return ce}(e=>{if("object"!=typeof e||null===e)return +for(let i in e){if(!Object.prototype.hasOwnProperty.call(e,i)||"EXTEND_PROTOTYPES"===i||"EMBER_LOAD_HOOKS"===i)continue +let t=ce[i] +ce[i]=!0===t?!1!==e[i]:!1===t?!0===e[i]:e[i]}let{EXTEND_PROTOTYPES:t}=e +void 0!==t&&(ce.EXTEND_PROTOTYPES.Array="object"==typeof t&&null!==t?!1!==t.Array:!1!==t) +let{EMBER_LOAD_HOOKS:r}=e +if("object"==typeof r&&null!==r)for(let i in r){if(!Object.prototype.hasOwnProperty.call(r,i))continue +let e=r[i] +Array.isArray(e)&&(ce.EMBER_LOAD_HOOKS[i]=e.filter((e=>"function"==typeof e)))}let{FEATURES:n}=e +if("object"==typeof n&&null!==n)for(let i in n)Object.prototype.hasOwnProperty.call(n,i)&&(ce.FEATURES[i]=!0===n[i])})(oe.EmberENV) +const he=Object.defineProperty({__proto__:null,ENV:ce,context:ae,getENV:de,getLookup:le,global:oe,setLookup:ue},Symbol.toStringTag,{value:"Module"}) +const pe=Object.defineProperty({__proto__:null,HANDLERS:{},invoke:()=>{},registerHandler:function(e,t){}},Symbol.toStringTag,{value:"Module"}) +let fe=()=>{} +const me=Object.defineProperty({__proto__:null,default:()=>{},missingOptionDeprecation:()=>"",missingOptionsDeprecation:undefined,missingOptionsIdDeprecation:undefined,registerHandler:fe},Symbol.toStringTag,{value:"Module"}) +let ge=!1 +function ye(){return ge}function be(e){ge=Boolean(e)}const _e=Object.defineProperty({__proto__:null,isTesting:ye,setTesting:be},Symbol.toStringTag,{value:"Module"}) +let ve=()=>{} +const we=Object.defineProperty({__proto__:null,default:()=>{},missingOptionsDeprecation:undefined,missingOptionsIdDeprecation:undefined,registerHandler:ve},Symbol.toStringTag,{value:"Module"}),{toString:Se}=Object.prototype,{toString:Pe}=Function.prototype,{isArray:Ee}=Array,{keys:ke}=Object,{stringify:Te}=JSON,Ce=100,Oe=4,Ae=/^[\w$]+$/ +function Re(e){return"number"==typeof e&&2===arguments.length?this:xe(e,0)}function xe(e,t,r){let n=!1 +switch(typeof e){case"undefined":return"undefined" +case"object":if(null===e)return"null" +if(Ee(e)){n=!0 +break}if(e.toString===Se||void 0===e.toString)break +return e.toString() +case"function":return e.toString===Pe?e.name?`[Function:${e.name}]`:"[Function]":e.toString() +case"string":return Te(e) +default:return e.toString()}if(void 0===r)r=new WeakSet +else if(r.has(e))return"[Circular]" +return r.add(e),n?function(e,t,r){if(t>Oe)return"[Array]" +let n="[" +for(let i=0;i=Ce){n+=`... ${e.length-Ce} more items` +break}n+=xe(e[i],t,r)}return n+=" ]",n}(e,t+1,r):function(e,t,r){if(t>Oe)return"[Object]" +let n="{",i=ke(e) +for(let o=0;o=Ce){n+=`... ${i.length-Ce} more keys` +break}let s=i[o] +n+=`${Me(String(s))}: ${xe(e[s],t,r)}`}return n+=" }",n}(e,t+1,r)}function Me(e){return Ae.test(e)?e:Te(e)}const De=Object.defineProperty({__proto__:null,default:Re},Symbol.toStringTag,{value:"Module"}),Ne=Object.freeze([]) +function Ie(){return Ne}const je=Ie(),Le=Ie() +function*Be(e){for(let t=e.length-1;t>=0;t--)yield e[t]}function*Fe(e){let t=0 +for(const r of e)yield[t++,r]}function Ue(e,t){if(!e)throw new Error(t||"assertion failure")}function ze(e){if(null==e)throw new Error("Expected value to be present") +return e}function He(e,t){if(null==e)throw new Error(t) +return e}function Ve(e="unreachable"){return new Error(e)}function $e(e){return null!=e}function qe(e){return e.length>0}function Ge(e,t="unexpected empty list"){if(!qe(e))throw new Error(t)}function We(e){return 0===e.length?void 0:e[e.length-1]}function Qe(e){return 0===e.length?void 0:e[0]}function Ye(){return Object.create(null)}function Ke(e){return null!=e}function Je(e){return"function"==typeof e||"object"==typeof e&&null!==e}class Xe{constructor(e=[]){_defineProperty(this,"stack",void 0),_defineProperty(this,"current",null),this.stack=e}get size(){return this.stack.length}push(e){this.current=e,this.stack.push(e)}pop(){let e=this.stack.pop() +return this.current=We(this.stack)??null,void 0===e?null:e}nth(e){let t=this.stack.length +return t=0}function lt(...e){return[!1,!0,null,void 0,...e]}function ut(e){return e%1==0&&e<=st.MAX_INT&&e>=st.MIN_INT}function ct(e){return e&st.SIGN_BIT}function dt(e){return e|~st.SIGN_BIT}function ht(e){return~e}function pt(e){return~e}function ft(e){return e}function mt(e){return e}function gt(e){return(e|=0)<0?ct(e):ht(e)}function yt(e){return(e|=0)>st.SIGN_BIT?pt(e):dt(e)}[1,-1].forEach((e=>yt(gt(e)))) +const bt="%+b:0%" +let _t=Object.assign +function vt(e){return St(e)||Pt(e),e}function wt(e,t){if(null==e)return null +if(void 0===typeof document)throw new Error("Attempted to cast to a browser node in a non-browser context") +if(St(e))return e +if(e.ownerDocument!==document)throw new Error("Attempted to cast to a browser node with a node that was not created from this document") +return Et(e,t)}function St(e){return e.nodeType===tt}function Pt(e){return e?.nodeType===et}function Et(e,t){let r=!1 +if(null!==e)if("string"==typeof t)r=kt(e,t) +else{if(!Array.isArray(t))throw Ve() +r=t.some((t=>kt(e,t)))}if(r&&e instanceof Node)return e +throw function(e,t){return new Error(`cannot cast a ${e} into ${String(t)}`)}(`SimpleElement(${e?.constructor?.name??"null"})`,t)}function kt(e,t){switch(t){case"NODE":return!0 +case"HTML":return e instanceof HTMLElement +case"SVG":return e instanceof SVGElement +case"ELEMENT":return e instanceof Element +default:if(t.toUpperCase()===t)throw new Error("BUG: this code is missing handling for a generic node type") +return e instanceof Element&&e.tagName.toLowerCase()===t}}function Tt(e){if("number"==typeof e)return e +{let t=e.errors[0] +throw new Error(`Compile Error: ${t.problem} @ ${t.span.start}..${t.span.end}`)}}function Ct(e){if("error"===e.result)throw new Error(`Compile Error: ${e.problem} @ ${e.span.start}..${e.span.end}`) +return e}function Ot(e){return null}const At=console,Rt=console +const xt=Object.defineProperty({__proto__:null,COMMENT_NODE:8,DOCUMENT_FRAGMENT_NODE:11,DOCUMENT_NODE:tt,DOCUMENT_TYPE_NODE:10,ELEMENT_NODE:et,EMPTY_ARRAY:Ne,EMPTY_NUMBER_ARRAY:Le,EMPTY_STRING_ARRAY:je,INSERT_AFTER_BEGIN:it,INSERT_AFTER_END:"afterend",INSERT_BEFORE_BEGIN:nt,INSERT_BEFORE_END:ot,ImmediateConstants:st,LOCAL_LOGGER:At,LOGGER:Rt,NS_HTML:"http://www.w3.org/1999/xhtml",NS_MATHML:"http://www.w3.org/1998/Math/MathML",NS_SVG:rt,NS_XLINK:"http://www.w3.org/1999/xlink",NS_XML:"http://www.w3.org/XML/1998/namespace",NS_XMLNS:"http://www.w3.org/2000/xmlns/",RAW_NODE:-1,SERIALIZATION_FIRST_NODE_STRING:bt,Stack:Xe,TEXT_NODE:3,arrayToOption:function(e){return qe(e)?e:null},asPresentArray:function(e,t="unexpected empty list"){return Ge(e,t),e},assert:Ue,assertNever:function(e,t="unexpected unreachable branch"){throw Rt.log("unreachable",e),Rt.log(`${t} :: ${JSON.stringify(e)} (${e})`),new Error("code reached unreachable")},assertPresent:function(e,t){if(!$e(e))throw new Error(`Expected present, got ${"string"==typeof e?e:t}`)},assertPresentArray:Ge,assign:_t,beginTestSteps:undefined,buildUntouchableThis:Ot,castToBrowser:wt,castToSimple:vt,checkNode:Et,clearElement:Ze,constants:lt,debugToString:undefined,decodeHandle:mt,decodeImmediate:yt,decodeNegative:dt,decodePositive:pt,deprecate:function(e){At.warn(`DEPRECATION: ${e}`)},dict:Ye,emptyArray:Ie,encodeHandle:ft,encodeImmediate:gt,encodeNegative:ct,encodePositive:ht,endTestSteps:undefined,entries:function(e){return Object.entries(e)},enumerate:Fe,exhausted:function(e){throw new Error(`Exhausted ${String(e)}`)},expect:He,extractHandle:function(e){return"number"==typeof e?e:e.handle},getFirst:Qe,getLast:We,ifPresent:function(e,t,r){return qe(e)?t(e):r()},intern:function(e){let t={} +t[e]=1 +for(let r in t)if(r===e)return r +return e},isDict:Ke,isElement:function(e){return e?.nodeType===et&&e instanceof Element},isEmptyArray:function(e){return e===Ne},isErrHandle:function(e){return"number"==typeof e},isHandle:at,isNonPrimitiveHandle:function(e){return e>st.ENCODED_UNDEFINED_HANDLE},isObject:Je,isOkHandle:function(e){return"number"==typeof e},isPresent:$e,isPresentArray:qe,isSerializationFirstNode:function(e){return e.nodeValue===bt},isSimpleElement:Pt,isSmallInt:ut,keys:function(e){return Object.keys(e)},logStep:undefined,mapPresentArray:function(e,t){if(null===e)return null +let r=[] +for(let n of e)r.push(t(n)) +return r},reverse:Be,strip:function(e,...t){let r="" +for(const[s,a]of Fe(e)){r+=`${a}${void 0!==t[s]?String(t[s]):""}`}let n=r.split("\n") +for(;qe(n)&&/^\s*$/u.test(Qe(n));)n.shift() +for(;qe(n)&&/^\s*$/u.test(We(n));)n.pop() +let i=1/0 +for(let s of n){let e=/^\s*/u.exec(s)[0].length +i=Math.min(i,e)}let o=[] +for(let s of n)o.push(s.slice(i)) +return o.join("\n")},tuple:(...e)=>e,unreachable:Ve,unwrap:ze,unwrapHandle:Tt,unwrapTemplate:Ct,values:function(e){return Object.values(e)},verifySteps:undefined},Symbol.toStringTag,{value:"Module"}) +function Mt(e){return He(e.lookup("renderer:-dom"),"BUG: owner is missing renderer").debugRenderTree.capture()}const Dt=Object.defineProperty({__proto__:null,default:Mt},Symbol.toStringTag,{value:"Module"}),Nt=()=>{} +let It=Nt,jt=Nt,Lt=Nt,Bt=Nt,Ft=Nt,Ut=Nt,zt=Nt,Ht=Nt,Vt=Nt,$t=Nt,qt=function(){return arguments[arguments.length-1]} +const Gt=Object.defineProperty({__proto__:null,_warnIfUsingStrippedFeatureFlags:undefined,assert:It,captureRenderTree:Mt,debug:Bt,debugFreeze:zt,debugSeal:Ut,deprecate:Ft,deprecateFunc:qt,getDebugFunction:$t,info:jt,inspect:Re,isTesting:ye,registerDeprecationHandler:fe,registerWarnHandler:ve,runInDebug:Ht,setDebugFunction:Vt,setTesting:be,warn:Lt},Symbol.toStringTag,{value:"Module"}) +const Wt=Object.defineProperty({__proto__:null,Cache:ne,GUID_KEY:E,ROOT:j,canInvoke:Q,checkHasSuper:N,dictionary:R,enumerableSymbol:O,generateGuid:k,getDebugName:x,getName:J,guidFor:T,intern:y,isInternalSymbol:function(e){return-1!==C.indexOf(e)},isObject:b,isProxy:te,lookupDescriptor:W,observerListenerMetaFor:z,setListeners:V,setName:K,setObservers:H,setProxy:re,setWithMandatorySetter:undefined,setupMandatorySetter:undefined,symbol:A,teardownMandatorySetter:undefined,toString:function e(t){if("string"==typeof t)return t +if(null===t)return"null" +if(void 0===t)return"undefined" +if(Array.isArray(t)){let r="" +for(let n=0;n0&&(r+=","),Z(t[n])||(r+=e(t[n])) +return r}return"function"==typeof t.toString?t.toString():X.call(t)},uuid:v,wrap:q},Symbol.toStringTag,{value:"Module"}),Qt=Symbol("OWNER") +function Yt(e){return e[Qt]}function Kt(e,t){e[Qt]=t}const Jt=Object.defineProperty({__proto__:null,OWNER:Qt,getOwner:Yt,setOwner:Kt},Symbol.toStringTag,{value:"Module"}) +function Xt(e){return null!=e&&"function"==typeof e.create}function Zt(e){return Yt(e)}function er(e,t){Kt(e,t)}const tr=Object.defineProperty({__proto__:null,getOwner:Zt,isFactory:Xt,setOwner:er},Symbol.toStringTag,{value:"Module"}) +class rr{constructor(e,t={}){_defineProperty(this,"owner",void 0),_defineProperty(this,"registry",void 0),_defineProperty(this,"cache",void 0),_defineProperty(this,"factoryManagerCache",void 0),_defineProperty(this,"validationCache",void 0),_defineProperty(this,"isDestroyed",void 0),_defineProperty(this,"isDestroying",void 0),this.registry=e,this.owner=t.owner||null,this.cache=R(t.cache||null),this.factoryManagerCache=R(t.factoryManagerCache||null),this.isDestroyed=!1,this.isDestroying=!1}lookup(e,t){if(this.isDestroyed)throw new Error(`Cannot call \`.lookup('${e}')\` after the owner has been destroyed`) +return function(e,t,r={}){let n=t +if(!0===r.singleton||void 0===r.singleton&&nr(e,t)){let t=e.cache[n] +if(void 0!==t)return t}return function(e,t,r,n){let i=or(e,t,r) +if(void 0===i)return +if(function(e,t,{instantiate:r,singleton:n}){return!1!==n&&!1!==r&&(!0===n||nr(e,t))&&ir(e,t)}(e,r,n)){let r=e.cache[t]=i.create() +return e.isDestroying&&"function"==typeof r.destroy&&r.destroy(),r}if(function(e,t,{instantiate:r,singleton:n}){return!1!==r&&(!1===n||!nr(e,t))&&ir(e,t)}(e,r,n))return i.create() +if(function(e,t,{instantiate:r,singleton:n}){return!1!==n&&!r&&nr(e,t)&&!ir(e,t)}(e,r,n)||function(e,t,{instantiate:r,singleton:n}){return!(!1!==r||!1!==n&&nr(e,t)||ir(e,t))}(e,r,n))return i.class +throw new Error("Could not create factory")}(e,n,t,r)}(this,this.registry.normalize(e),t)}destroy(){this.isDestroying=!0,sr(this)}finalizeDestroy(){ar(this),this.isDestroyed=!0}reset(e){this.isDestroyed||(void 0===e?(sr(this),ar(this)):function(e,t){let r=e.cache[t] +delete e.factoryManagerCache[t],r&&(delete e.cache[t],r.destroy&&r.destroy())}(this,this.registry.normalize(e)))}ownerInjection(){let e={} +return er(e,this.owner),e}factoryFor(e){if(this.isDestroyed)throw new Error(`Cannot call \`.factoryFor('${e}')\` after the owner has been destroyed`) +return or(this,this.registry.normalize(e),e)}}function nr(e,t){return!1!==e.registry.getOption(t,"singleton")}function ir(e,t){return!1!==e.registry.getOption(t,"instantiate")}function or(e,t,r){let n=e.factoryManagerCache[t] +if(void 0!==n)return n +let i=e.registry.resolve(t) +if(void 0===i)return +let o=new dr(e,i,r,t) +return e.factoryManagerCache[t]=o,o}function sr(e){let t=e.cache,r=Object.keys(t) +for(let n of r){let e=t[n] +e.destroy&&e.destroy()}}function ar(e){e.cache=R(null),e.factoryManagerCache=R(null)}_defineProperty(rr,"_leakTracking",void 0) +const lr=Symbol("INIT_FACTORY") +function ur(e){return e[lr]}function cr(e,t){e[lr]=t}class dr{constructor(e,t,r,n){_defineProperty(this,"container",void 0),_defineProperty(this,"owner",void 0),_defineProperty(this,"class",void 0),_defineProperty(this,"fullName",void 0),_defineProperty(this,"normalizedName",void 0),_defineProperty(this,"madeToString",void 0),_defineProperty(this,"injections",void 0),this.container=e,this.owner=e.owner,this.class=t,this.fullName=r,this.normalizedName=n,this.madeToString=void 0,this.injections=void 0}toString(){return void 0===this.madeToString&&(this.madeToString=this.container.registry.makeToString(this.class,this.fullName)),this.madeToString}create(e){let{container:t}=this +if(t.isDestroyed)throw new Error(`Cannot create new instances after the owner has been destroyed (you attempted to create ${this.fullName})`) +let r=e?{...e}:{} +return er(r,t.owner),cr(r,this),this.class.create(r)}}const hr=/^[^:]+:[^:]+$/ +class pr{constructor(e={}){_defineProperty(this,"_failSet",void 0),_defineProperty(this,"resolver",void 0),_defineProperty(this,"fallback",void 0),_defineProperty(this,"registrations",void 0),_defineProperty(this,"_normalizeCache",void 0),_defineProperty(this,"_options",void 0),_defineProperty(this,"_resolveCache",void 0),_defineProperty(this,"_typeOptions",void 0),this.fallback=e.fallback||null,this.resolver=e.resolver||null,this.registrations=R(e.registrations||null),this._normalizeCache=R(null),this._resolveCache=R(null),this._failSet=new Set,this._options=R(null),this._typeOptions=R(null)}container(e){return new rr(this,e)}register(e,t,r={}){let n=this.normalize(e) +this._failSet.delete(n),this.registrations[n]=t,this._options[n]=r}unregister(e){let t=this.normalize(e) +delete this.registrations[t],delete this._resolveCache[t],delete this._options[t],this._failSet.delete(t)}resolve(e){let t=function(e,t){let r,n=t,i=e._resolveCache[n] +if(void 0!==i)return i +if(e._failSet.has(n))return +e.resolver&&(r=e.resolver.resolve(n)) +void 0===r&&(r=e.registrations[n]) +void 0===r?e._failSet.add(n):e._resolveCache[n]=r +return r}(this,this.normalize(e)) +return void 0===t&&null!==this.fallback&&(t=this.fallback.resolve(e)),t}describe(e){return null!==this.resolver&&this.resolver.lookupDescription?this.resolver.lookupDescription(e):null!==this.fallback?this.fallback.describe(e):e}normalizeFullName(e){return null!==this.resolver&&this.resolver.normalize?this.resolver.normalize(e):null!==this.fallback?this.fallback.normalizeFullName(e):e}normalize(e){return this._normalizeCache[e]||(this._normalizeCache[e]=this.normalizeFullName(e))}makeToString(e,t){return null!==this.resolver&&this.resolver.makeToString?this.resolver.makeToString(e,t):null!==this.fallback?this.fallback.makeToString(e,t):"string"==typeof e?e:e.name??"(unknown class)"}has(e){return!!this.isValidFullName(e)&&function(e,t){return void 0!==e.resolve(t)}(this,this.normalize(e))}optionsForType(e,t){this._typeOptions[e]=t}getOptionsForType(e){let t=this._typeOptions[e] +return void 0===t&&null!==this.fallback&&(t=this.fallback.getOptionsForType(e)),t}options(e,t){let r=this.normalize(e) +this._options[r]=t}getOptions(e){let t=this.normalize(e),r=this._options[t] +return void 0===r&&null!==this.fallback&&(r=this.fallback.getOptions(e)),r}getOption(e,t){let r=this._options[e] +if(void 0!==r&&void 0!==r[t])return r[t] +let n=e.split(":")[0] +return r=this._typeOptions[n],r&&void 0!==r[t]?r[t]:null!==this.fallback?this.fallback.getOption(e,t):void 0}knownForType(e){let t,r,n=R(null),i=Object.keys(this.registrations) +for(let o of i){o.split(":")[0]===e&&(n[o]=!0)}return null!==this.fallback&&(t=this.fallback.knownForType(e)),null!==this.resolver&&this.resolver.knownForType&&(r=this.resolver.knownForType(e)),Object.assign({},t,n,r)}isValidFullName(e){return hr.test(e)}}const fr=R(null),mr=`${Math.random()}${Date.now()}`.replace(".","") +function gr([e]){let t=fr[e] +if(t)return t +let[r,n]=e.split(":") +return fr[e]=y(`${r}:${n}-${mr}`)}const yr=Object.defineProperty({__proto__:null,Container:rr,INIT_FACTORY:lr,Registry:pr,getFactoryFor:ur,privatize:gr,setFactoryFor:cr},Symbol.toStringTag,{value:"Module"}),br="5.10.0-alpha.1",_r=Object.defineProperty({__proto__:null,default:br},Symbol.toStringTag,{value:"Module"}),vr=Object.defineProperty({__proto__:null,VERSION:br},Symbol.toStringTag,{value:"Module"}) +function wr(e){return Object.hasOwnProperty.call(e.since,"enabled")||ce._ALL_DEPRECATIONS_ENABLED}let Sr=parseFloat(ce._OVERRIDE_DEPRECATION_VERSION??br) +function Pr(e,t=Sr){let r=e.replace(/(\.0+)/g,"") +return t>=parseFloat(r)}function Er(e){return Pr(e.until)}function kr(e){return{options:e,test:!wr(e),isEnabled:wr(e)||Er(e),isRemoved:Er(e)}}const Tr={DEPRECATE_IMPLICIT_ROUTE_MODEL:kr({id:"deprecate-implicit-route-model",for:"ember-source",since:{available:"5.3.0",enabled:"5.3.0"},until:"6.0.0",url:"https://deprecations.emberjs.com/v5.x/#toc_deprecate-implicit-route-model"}),DEPRECATE_TEMPLATE_ACTION:kr({id:"template-action",url:"https://deprecations.emberjs.com/id/template-action",until:"6.0.0",for:"ember-source",since:{available:"5.9.0",enabled:"5.9.0"}}),DEPRECATE_COMPONENT_TEMPLATE_RESOLVING:kr({id:"component-template-resolving",url:"https://deprecations.emberjs.com/id/component-template-resolving",until:"6.0.0",for:"ember-source",since:{available:"5.9.0",enabled:"5.9.0"}})} +function Cr(e,t){const{options:r}=t +if(t.isRemoved)throw new Error(`The API deprecated by ${r.id} was removed in ember-source ${r.until}. The message was: ${e}. Please see ${r.url} for more details.`)}const Or=Object.defineProperty({__proto__:null,DEPRECATIONS:Tr,deprecateUntil:Cr,emberVersionGte:Pr,isRemoved:Er},Symbol.toStringTag,{value:"Module"}) +let Ar +const Rr={get onerror(){return Ar}} +function xr(){return Ar}function Mr(e){Ar=e}let Dr=null +function Nr(){return Dr}function Ir(e){Dr=e}const jr=Object.defineProperty({__proto__:null,getDispatchOverride:Nr,getOnerror:xr,onErrorTarget:Rr,setDispatchOverride:Ir,setOnerror:Mr},Symbol.toStringTag,{value:"Module"}),Lr={Component:0,Helper:1,String:2,Empty:3,SafeString:4,Fragment:5,Node:6,Other:8},Br={Component:0,Helper:1,Modifier:2},Fr={Empty:0,dynamicLayout:1,dynamicTag:2,prepareArgs:4,createArgs:8,attributeHook:16,elementHook:32,dynamicScope:64,createCaller:128,updateHook:256,createInstance:512,wrapped:1024,willDestroy:2048,hasSubOwner:4096},Ur=1024,zr={PushFrame:0,PopFrame:1,InvokeVirtual:2,InvokeStatic:3,Jump:4,Return:5,ReturnTo:6,Size:7},Hr={Helper:16,SetNamedVariables:17,SetBlocks:18,SetVariable:19,SetBlock:20,GetVariable:21,GetProperty:22,GetBlock:23,SpreadBlock:24,HasBlock:25,HasBlockParams:26,Concat:27,Constant:28,ConstantReference:29,Primitive:30,PrimitiveReference:31,ReifyU32:32,Dup:33,Pop:34,Load:35,Fetch:36,RootScope:37,VirtualRootScope:38,ChildScope:39,PopScope:40,Text:41,Comment:42,AppendHTML:43,AppendSafeHTML:44,AppendDocumentFragment:45,AppendNode:46,AppendText:47,OpenElement:48,OpenDynamicElement:49,PushRemoteElement:50,StaticAttr:51,DynamicAttr:52,ComponentAttr:53,FlushElement:54,CloseElement:55,PopRemoteElement:56,Modifier:57,BindDynamicScope:58,PushDynamicScope:59,PopDynamicScope:60,CompileBlock:61,PushBlockScope:62,PushSymbolTable:63,InvokeYield:64,JumpIf:65,JumpUnless:66,JumpEq:67,AssertSame:68,Enter:69,Exit:70,ToBoolean:71,EnterList:72,ExitList:73,Iterate:74,Main:75,ContentType:76,Curry:77,PushComponentDefinition:78,PushDynamicComponentInstance:79,ResolveDynamicComponent:80,ResolveCurriedComponent:81,PushArgs:82,PushEmptyArgs:83,PopArgs:84,PrepareArgs:85,CaptureArgs:86,CreateComponent:87,RegisterComponentDestructor:88,PutComponentOperations:89,GetComponentSelf:90,GetComponentTagName:91,GetComponentLayout:92,BindEvalScope:93,SetupForEval:94,PopulateLayout:95,InvokeComponentLayout:96,BeginComponentTransaction:97,CommitComponentTransaction:98,DidCreateElement:99,DidRenderLayout:100,ResolveMaybeLocal:102,Debugger:103,Size:104,StaticComponentAttr:105,DynamicContentType:106,DynamicHelper:107,DynamicModifier:108,IfInline:109,Not:110,GetDynamicVar:111,Log:112} +function Vr(e){return e>=0&&e<=15}const $r=2,qr=3,Gr=4,Wr=8 +let Qr=function(e){return e[e.pc=0]="pc",e[e.ra=1]="ra",e[e.fp=2]="fp",e[e.sp=3]="sp",e}({}) +function Yr(e){return e<=qr}let Kr=function(e){return e[e.s0=4]="s0",e[e.s1=5]="s1",e}({}),Jr=function(e){return e[e.t0=6]="t0",e[e.t1=7]="t1",e}({}) +const Xr=Object.defineProperty({__proto__:null,$fp:$r,$pc:0,$ra:1,$s0:Gr,$s1:5,$sp:qr,$t0:6,$t1:7,$v0:Wr,ARG_SHIFT:8,ContentType:Lr,CurriedType:Br,CurriedTypes:Br,InternalComponentCapabilities:Fr,InternalComponentCapability:Fr,MACHINE_MASK:Ur,MAX_SIZE:2147483647,MachineOp:zr,MachineRegister:Qr,OPERAND_LEN_MASK:768,Op:Hr,SavedRegister:Kr,TYPE_MASK:255,TYPE_SIZE:255,TemporaryRegister:Jr,isLowLevelRegister:Yr,isMachineOp:Vr,isOp:function(e){return e>=16}},Symbol.toStringTag,{value:"Module"}) +const Zr=new Array(Hr.Size).fill(null),en=new Array(Hr.Size).fill(null) +en[zr.PushFrame]={name:"PushFrame",mnemonic:"pushf",before:null,stackChange:2,ops:[],operands:0,check:!0},en[zr.PopFrame]={name:"PopFrame",mnemonic:"popf",before:null,stackChange:-2,ops:[],operands:0,check:!1},en[zr.InvokeVirtual]={name:"InvokeVirtual",mnemonic:"vcall",before:null,stackChange:-1,ops:[],operands:0,check:!0},en[zr.InvokeStatic]={name:"InvokeStatic",mnemonic:"scall",before:null,stackChange:0,ops:[{name:"offset",type:"u32"}],operands:1,check:!0},en[zr.Jump]={name:"Jump",mnemonic:"goto",before:null,stackChange:0,ops:[{name:"to",type:"u32"}],operands:1,check:!0},en[zr.Return]={name:"Return",mnemonic:"ret",before:null,stackChange:0,ops:[],operands:0,check:!1},en[zr.ReturnTo]={name:"ReturnTo",mnemonic:"setra",before:null,stackChange:0,ops:[{name:"offset",type:"i32"}],operands:1,check:!0},Zr[Hr.Helper]={name:"Helper",mnemonic:"ncall",before:null,stackChange:null,ops:[{name:"helper",type:"handle"}],operands:1,check:!0},Zr[Hr.DynamicHelper]={name:"DynamicHelper",mnemonic:"dynamiccall",before:null,stackChange:null,ops:[],operands:0,check:!0},Zr[Hr.SetNamedVariables]={name:"SetNamedVariables",mnemonic:"vsargs",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},Zr[Hr.SetBlocks]={name:"SetBlocks",mnemonic:"vbblocks",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},Zr[Hr.SetVariable]={name:"SetVariable",mnemonic:"sbvar",before:null,stackChange:-1,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},Zr[Hr.SetBlock]={name:"SetBlock",mnemonic:"sblock",before:null,stackChange:-3,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},Zr[Hr.GetVariable]={name:"GetVariable",mnemonic:"symload",before:null,stackChange:1,ops:[{name:"symbol",type:"u32"}],operands:1,check:!0},Zr[Hr.GetProperty]={name:"GetProperty",mnemonic:"getprop",before:null,stackChange:0,ops:[{name:"property",type:"str"}],operands:1,check:!0},Zr[Hr.GetBlock]={name:"GetBlock",mnemonic:"blockload",before:null,stackChange:1,ops:[{name:"block",type:"u32"}],operands:1,check:!0},Zr[Hr.SpreadBlock]={name:"SpreadBlock",mnemonic:"blockspread",before:null,stackChange:2,ops:[],operands:0,check:!0},Zr[Hr.HasBlock]={name:"HasBlock",mnemonic:"hasblockload",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.HasBlockParams]={name:"HasBlockParams",mnemonic:"hasparamsload",before:null,stackChange:-2,ops:[],operands:0,check:!0},Zr[Hr.Concat]={name:"Concat",mnemonic:"concat",before:null,stackChange:null,ops:[{name:"count",type:"u32"}],operands:1,check:!0},Zr[Hr.IfInline]={name:"IfInline",mnemonic:"ifinline",before:null,stackChange:-2,ops:[{name:"count",type:"u32"}],operands:1,check:!0},Zr[Hr.Not]={name:"Not",mnemonic:"not",before:null,stackChange:0,ops:[{name:"count",type:"u32"}],operands:1,check:!0},Zr[Hr.Constant]={name:"Constant",mnemonic:"rconstload",before:null,stackChange:1,ops:[{name:"constant",type:"unknown"}],operands:1,check:!0},Zr[Hr.ConstantReference]={name:"ConstantReference",mnemonic:"rconstrefload",before:null,stackChange:1,ops:[{name:"constant",type:"unknown"}],operands:1,check:!0},Zr[Hr.Primitive]={name:"Primitive",mnemonic:"pconstload",before:null,stackChange:1,ops:[{name:"constant",type:"primitive"}],operands:1,check:!0},Zr[Hr.PrimitiveReference]={name:"PrimitiveReference",mnemonic:"ptoref",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.ReifyU32]={name:"ReifyU32",mnemonic:"reifyload",before:null,stackChange:1,ops:[],operands:0,check:!0},Zr[Hr.Dup]={name:"Dup",mnemonic:"dup",before:null,stackChange:1,ops:[{name:"register",type:"u32"},{name:"offset",type:"u32"}],operands:2,check:!0},Zr[Hr.Pop]={name:"Pop",mnemonic:"pop",before:null,stackChange:0,ops:[{name:"count",type:"u32"}],operands:1,check:!1},Zr[Hr.Load]={name:"Load",mnemonic:"put",before:null,stackChange:-1,ops:[{name:"register",type:"u32"}],operands:1,check:!0} +Zr[Hr.Fetch]={name:"Fetch",mnemonic:"regload",before:null,stackChange:1,ops:[{name:"register",type:"u32"}],operands:1,check:!0},Zr[Hr.RootScope]={name:"RootScope",mnemonic:"rscopepush",before:null,stackChange:0,ops:[{name:"symbols",type:"u32"}],operands:1,check:!0},Zr[Hr.VirtualRootScope]={name:"VirtualRootScope",mnemonic:"vrscopepush",before:null,stackChange:0,ops:[{name:"register",type:"u32"}],operands:1,check:!0},Zr[Hr.ChildScope]={name:"ChildScope",mnemonic:"cscopepush",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.PopScope]={name:"PopScope",mnemonic:"scopepop",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.Text]={name:"Text",mnemonic:"apnd_text",before:null,stackChange:0,ops:[{name:"contents",type:"str"}],operands:1,check:!0},Zr[Hr.Comment]={name:"Comment",mnemonic:"apnd_comment",before:null,stackChange:0,ops:[{name:"contents",type:"str"}],operands:1,check:!0},Zr[Hr.AppendHTML]={name:"AppendHTML",mnemonic:"apnd_dynhtml",before:null,stackChange:-1,ops:[],operands:0,check:!0},Zr[Hr.AppendSafeHTML]={name:"AppendSafeHTML",mnemonic:"apnd_dynshtml",before:null,stackChange:-1,ops:[],operands:0,check:!0},Zr[Hr.AppendDocumentFragment]={name:"AppendDocumentFragment",mnemonic:"apnd_dynfrag",before:null,stackChange:-1,ops:[],operands:0,check:!0},Zr[Hr.AppendNode]={name:"AppendNode",mnemonic:"apnd_dynnode",before:null,stackChange:-1,ops:[],operands:0,check:!0},Zr[Hr.AppendText]={name:"AppendText",mnemonic:"apnd_dyntext",before:null,stackChange:-1,ops:[],operands:0,check:!0},Zr[Hr.OpenElement]={name:"OpenElement",mnemonic:"apnd_tag",before:null,stackChange:0,ops:[{name:"tag",type:"str"}],operands:1,check:!0},Zr[Hr.OpenDynamicElement]={name:"OpenDynamicElement",mnemonic:"apnd_dyntag",before:null,stackChange:-1,ops:[],operands:0,check:!0},Zr[Hr.PushRemoteElement]={name:"PushRemoteElement",mnemonic:"apnd_remotetag",before:null,stackChange:-3,ops:[],operands:0,check:!0},Zr[Hr.StaticAttr]={name:"StaticAttr",mnemonic:"apnd_attr",before:null,stackChange:0,ops:[{name:"name",type:"str"},{name:"value",type:"str"},{name:"namespace",type:"option-str"}],operands:3,check:!0},Zr[Hr.DynamicAttr]={name:"DynamicAttr",mnemonic:"apnd_dynattr",before:null,stackChange:-1,ops:[{name:"name",type:"str"},{name:"trusting",type:"bool"},{name:"namespace",type:"option-str"}],operands:3,check:!0},Zr[Hr.ComponentAttr]={name:"ComponentAttr",mnemonic:"apnd_cattr",before:null,stackChange:-1,ops:[{name:"name",type:"str"},{name:"trusting",type:"bool"},{name:"namespace",type:"option-str"}],operands:3,check:!0},Zr[Hr.FlushElement]={name:"FlushElement",mnemonic:"apnd_flushtag",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.CloseElement]={name:"CloseElement",mnemonic:"apnd_closetag",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.PopRemoteElement]={name:"PopRemoteElement",mnemonic:"apnd_closeremotetag",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.Modifier]={name:"Modifier",mnemonic:"apnd_modifier",before:null,stackChange:-1,ops:[{name:"helper",type:"handle"}],operands:1,check:!0},Zr[Hr.BindDynamicScope]={name:"BindDynamicScope",mnemonic:"setdynscope",before:null,stackChange:null,ops:[{name:"names",type:"str-array"}],operands:1,check:!0},Zr[Hr.PushDynamicScope]={name:"PushDynamicScope",mnemonic:"dynscopepush",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.PopDynamicScope]={name:"PopDynamicScope",mnemonic:"dynscopepop",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.CompileBlock]={name:"CompileBlock",mnemonic:"cmpblock",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.PushBlockScope]={name:"PushBlockScope",mnemonic:"scopeload",before:null,stackChange:1,ops:[{name:"scope",type:"scope"}],operands:1,check:!0},Zr[Hr.PushSymbolTable]={name:"PushSymbolTable",mnemonic:"dsymload",before:null,stackChange:1,ops:[{name:"table",type:"symbol-table"}],operands:1,check:!0},Zr[Hr.InvokeYield]={name:"InvokeYield",mnemonic:"invokeyield",before:null,stackChange:null,ops:[],operands:0,check:!0},Zr[Hr.JumpIf]={name:"JumpIf",mnemonic:"iftrue",before:null,stackChange:-1,ops:[{name:"to",type:"u32"}],operands:1,check:!0} +Zr[Hr.JumpUnless]={name:"JumpUnless",mnemonic:"iffalse",before:null,stackChange:-1,ops:[{name:"to",type:"u32"}],operands:1,check:!0},Zr[Hr.JumpEq]={name:"JumpEq",mnemonic:"ifeq",before:null,stackChange:0,ops:[{name:"to",type:"i32"},{name:"comparison",type:"i32"}],operands:2,check:!0},Zr[Hr.AssertSame]={name:"AssertSame",mnemonic:"assert_eq",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.Enter]={name:"Enter",mnemonic:"blk_start",before:null,stackChange:0,ops:[{name:"args",type:"u32"}],operands:1,check:!0},Zr[Hr.Exit]={name:"Exit",mnemonic:"blk_end",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.ToBoolean]={name:"ToBoolean",mnemonic:"anytobool",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.EnterList]={name:"EnterList",mnemonic:"list_start",before:null,stackChange:null,ops:[{name:"address",type:"u32"},{name:"address",type:"u32"}],operands:2,check:!0},Zr[Hr.ExitList]={name:"ExitList",mnemonic:"list_end",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.Iterate]={name:"Iterate",mnemonic:"iter",before:null,stackChange:0,ops:[{name:"end",type:"u32"}],operands:1,check:!1},Zr[Hr.Main]={name:"Main",mnemonic:"main",before:null,stackChange:-2,ops:[{name:"state",type:"register"}],operands:1,check:!0},Zr[Hr.ContentType]={name:"ContentType",mnemonic:"ctload",before:null,stackChange:1,ops:[],operands:0,check:!0},Zr[Hr.DynamicContentType]={name:"DynamicContentType",mnemonic:"dctload",before:null,stackChange:1,ops:[],operands:0,check:!0},Zr[Hr.Curry]={name:"Curry",mnemonic:"curry",before:null,stackChange:null,ops:[{name:"type",type:"u32"},{name:"is-strict",type:"bool"}],operands:2,check:!0},Zr[Hr.PushComponentDefinition]={name:"PushComponentDefinition",mnemonic:"cmload",before:null,stackChange:1,ops:[{name:"spec",type:"handle"}],operands:1,check:!0},Zr[Hr.PushDynamicComponentInstance]={name:"PushDynamicComponentInstance",mnemonic:"dciload",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.ResolveDynamicComponent]={name:"ResolveDynamicComponent",mnemonic:"cdload",before:null,stackChange:0,ops:[{name:"owner",type:"owner"}],operands:1,check:!0},Zr[Hr.PushArgs]={name:"PushArgs",mnemonic:"argsload",before:null,stackChange:null,ops:[{name:"names",type:"str-array"},{name:"block-names",type:"str-array"},{name:"flags",type:"u32"}],operands:3,check:!0},Zr[Hr.PushEmptyArgs]={name:"PushEmptyArgs",mnemonic:"emptyargsload",before:null,stackChange:1,ops:[],operands:0,check:!0},Zr[Hr.PopArgs]={name:"PopArgs",mnemonic:"argspop",before:null,stackChange:null,ops:[],operands:0,check:!0},Zr[Hr.PrepareArgs]={name:"PrepareArgs",mnemonic:"argsprep",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!1},Zr[Hr.CaptureArgs]={name:"CaptureArgs",mnemonic:"argscapture",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.CreateComponent]={name:"CreateComponent",mnemonic:"comp_create",before:null,stackChange:0,ops:[{name:"flags",type:"u32"},{name:"state",type:"register"}],operands:2,check:!0},Zr[Hr.RegisterComponentDestructor]={name:"RegisterComponentDestructor",mnemonic:"comp_dest",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},Zr[Hr.PutComponentOperations]={name:"PutComponentOperations",mnemonic:"comp_elops",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.GetComponentSelf]={name:"GetComponentSelf",mnemonic:"comp_selfload",before:null,stackChange:1,ops:[{name:"state",type:"register"}],operands:1,check:!0},Zr[Hr.GetComponentTagName]={name:"GetComponentTagName",mnemonic:"comp_tagload",before:null,stackChange:1,ops:[{name:"state",type:"register"}],operands:1,check:!0},Zr[Hr.GetComponentLayout]={name:"GetComponentLayout",mnemonic:"comp_layoutload",before:null,stackChange:2,ops:[{name:"state",type:"register"}],operands:1,check:!0},Zr[Hr.BindEvalScope]={name:"BindEvalScope",mnemonic:"eval_scope",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},Zr[Hr.SetupForEval]={name:"SetupForEval",mnemonic:"eval_setup",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},Zr[Hr.PopulateLayout]={name:"PopulateLayout",mnemonic:"comp_layoutput",before:null,stackChange:-2,ops:[{name:"state",type:"register"}],operands:1,check:!0} +Zr[Hr.InvokeComponentLayout]={name:"InvokeComponentLayout",mnemonic:"comp_invokelayout",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},Zr[Hr.BeginComponentTransaction]={name:"BeginComponentTransaction",mnemonic:"comp_begin",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.CommitComponentTransaction]={name:"CommitComponentTransaction",mnemonic:"comp_commit",before:null,stackChange:0,ops:[],operands:0,check:!0},Zr[Hr.DidCreateElement]={name:"DidCreateElement",mnemonic:"comp_created",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},Zr[Hr.DidRenderLayout]={name:"DidRenderLayout",mnemonic:"comp_rendered",before:null,stackChange:0,ops:[{name:"state",type:"register"}],operands:1,check:!0},Zr[Hr.ResolveMaybeLocal]={name:"ResolveMaybeLocal",mnemonic:"eval_varload",before:null,stackChange:1,ops:[{name:"local",type:"str"}],operands:1,check:!0},Zr[Hr.Debugger]={name:"Debugger",mnemonic:"debugger",before:null,stackChange:0,ops:[{name:"symbols",type:"str-array"},{name:"debugInfo",type:"array"}],operands:2,check:!0} +const tn=["u32","i32","owner","handle","str","option-str","array","str-array","bool","primitive","register","unknown","symbol-table","scope"] +function rn(e,t){let r +if(void 0===t.format)throw new Error(`Missing format in ${JSON.stringify(t)}`) +r=Array.isArray(t.format)?t.format[0]:t.format +let n=Array.isArray(t.format)?function(e){if(!Array.isArray(e))throw new Error(`Expected operands array, got ${JSON.stringify(e)}`) +return e.map(sn)}(t.format.slice(1)):[] +return{name:r,mnemonic:e,before:null,stackChange:nn(t["operand-stack"]),ops:n,operands:n.length,check:!0!==t.skip}}function nn(e){if(void 0===e)return 0 +let t=e[0],r=e[1] +return on(t)||on(r)?null:r.length-t.length}function on(e){if(!Array.isArray(e))throw new Error(`Unexpected stack entry: ${JSON.stringify(e)}`) +return e.some((e=>"..."===e.slice(-3)))}function sn(e){let[t,r]=e.split(":") +if(n=r,-1!==tn.indexOf(n))return{name:t,type:r} +throw new Error(`Expected operand, found ${JSON.stringify(e)}`) +var n}function an(e){let t=Object.create(null) +for(const[r,n]of Object.entries(e))t[r]=rn(r,n) +return t}function ln(e,...t){let r="" +for(let o=0;ocn(e,t))).join(", ")}]` +let r=["{"] +for(let n of Object.keys(e))r.push(`${" ".repeat(t+2)}${n}: ${cn(e[n],t+2)},`) +return r.push(`${" ".repeat(t)}}`),r.join("\n")}function dn(e){return new class{validate(t){return e().validate(t)}expected(){return e().expected()}}}class hn{constructor(e){this.expectedType=e}validate(e){return typeof e===this.expectedType}expected(){return`typeof ${this.expectedType}`}}class pn{constructor(e){this.Class=e}validate(e){return!!e&&e instanceof this.Class}expected(){return`an instance of ${this.Class.name}`}}class fn{constructor(e,t){this.checker=e,this.emptyValue=t}validate(e){return e===this.emptyValue||this.checker.validate(e)}expected(){return`${this.checker.expected()} or null`}}class mn{constructor(e){this.checker=e}validate(e){return null==e||this.checker.validate(e)}expected(){return`${this.checker.expected()} or null or undefined`}}class gn{constructor(e,t){this.left=e,this.right=t}validate(e){return this.left.validate(e)||this.right.validate(e)}expected(){return`${this.left.expected()} or ${this.right.expected()}`}}class yn{constructor(e,t){this.value=e,this.desc=t}validate(e){return e===this.value}expected(){return this.desc}}class bn{constructor(e){this.checkers=e}validate(e){return"object"==typeof e&&(null!=e&&Object.entries(this.checkers).every((([t,r])=>t in e&&r.validate(e[t]))))}expected(){return`{ ${Object.entries(this.checkers).map((([e,t])=>`${e}: ${t.expected()}`)).join(",")} }`}}class _n{constructor(e){this.checker=e}validate(e){return null!=e&&(!!Array.isArray(e)&&e.every((e=>this.checker.validate(e))))}expected(){return`Array<${this.checker.expected()}>`}}class vn{constructor(e){this.checker=e}validate(e){if(!("object"==typeof e&&null!==e&&null===Object.getPrototypeOf(e)))return!1 +let{checker:t}=this +for(let r in e)if(!t.validate(e[r]))return!1 +return!0}expected(){return"a primitive"}}function wn(e){return new pn(e)}function Sn(e){return new fn(e,null)}function Pn(e){return new mn(e)}function En(e){return new bn(e)}function kn(e){return new _n(e)}function Tn(e){return new vn(e)}function Cn(e,t){return`Got ${e}, expected:\n${t}`}function On(e,t,r=Cn){if("function"==typeof t)return t(e),e +if(t.validate(e))return e +throw new Error(r(e,t.expected()))}let An=0 +function Rn(e){An=e}const xn=new class{validate(e){return"string"!=typeof e||"number"==typeof e||"string"==typeof e||null==e}expected(){return"a primitive"}},Mn=new hn("function"),Dn=new hn("number"),Nn=new hn("boolean"),In=Dn,jn=new hn("string"),Ln=new class{validate(e){return null===e}expected(){return"null"}},Bn=new class{validate(e){return void 0===e}expected(){return"undefined"}},Fn=new class{constructor(){_defineProperty(this,"type",void 0)}validate(e){return!0}expected(){return"any"}},Un=new class{validate(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}expected(){return"SafeString"}},zn=new class{validate(e){return"function"==typeof e||"object"==typeof e&&null!==e}expected(){return"an object or function (valid WeakMap key)"}} +function Hn(e,t){return new gn(e,t)}function Vn(e,t=String(e)){return new yn(e,t)}const $n=En({parameters:kn(Dn)}),qn=En({hasEval:Nn,symbols:kn(jn)}),Gn=En({nodeType:Vn(1),tagName:jn,nextSibling:Fn}),Wn=En({nodeType:Vn(11),nextSibling:Fn}),Qn=En({nodeType:Dn,nextSibling:Fn}),Yn=Object.defineProperty({__proto__:null,CheckArray:kn,CheckBlockSymbolTable:$n,CheckBoolean:Nn,CheckDict:Tn,CheckDocumentFragment:Wn,CheckElement:Gn,CheckFunction:Mn,CheckHandle:In,CheckInstanceof:wn,CheckInterface:En,CheckMaybe:Pn,CheckNode:Qn,CheckNull:Ln,CheckNumber:Dn,CheckObject:zn,CheckOption:Sn,CheckOr:Hn,CheckPrimitive:xn,CheckProgramSymbolTable:qn,CheckSafeString:Un,CheckString:jn,CheckUndefined:Bn,CheckUnknown:Fn,CheckValue:Vn,META_KIND:["METADATA","MACHINE_METADATA"],OPERAND_TYPES:tn,buildEnum:function(e,t,r,n){let i,o=[`export enum ${e} {`] +Object.values(t).forEach(((e,t)=>{o.push(` ${e.name} = ${r+t},`),i=t})),o.push(` Size = ${i+r+1},`),o.push("}") +let s,a=o.join("\n") +return s=n?ln` + export function is${e}(value: number): value is ${e} { + return value >= ${r} && value <= ${n}; + } + `:ln` + export function is${e}(value: number): value is ${e} { + return value >= ${r}; + } + `,{enumString:a,predicate:s}},buildMetas:function(e,t){let r=[] +for(let n of Object.keys(t))r.push(un(e,t,n)) +return r.join("\n\n")},buildSingleMeta:un,check:On,debug:function(e,t,r){},debugSlice:function(e,t,r){},expectStackChange:function(e,t,r){let n=e.sp-An +if(n!==t)throw new Error(`Expected stack to change by ${t}, but it changed by ${n} in ${r}`)},logOpcode:function(e,t){},normalize:rn,normalizeAll:function(e){return{machine:an(e.machine),syscall:an(e.syscall)}},normalizeParsed:an,opcodeMetadata:function(e,t){return(t?en[e]:Zr[e])||null},recordStackSize:Rn,strip:ln,wrap:dn},Symbol.toStringTag,{value:"Module"}) +class Kn{constructor(e){_defineProperty(this,"size",0),this.buffer=e}encode(e,t,...r){if(e>255)throw new Error(`Opcode type over 8-bits. Got ${e}.`) +let n=e|t|arguments.length-2<<8 +this.buffer.push(n) +for(const i of r)this.buffer.push(i) +this.size=this.buffer.length}patch(e,t){if(-1!==this.buffer[e+1])throw new Error("Trying to patch operand in populated slot instead of a reserved slot.") +this.buffer[e+1]=t}}const Jn=Object.defineProperty({__proto__:null,InstructionEncoderImpl:Kn},Symbol.toStringTag,{value:"Module"}),Xn={Append:1,TrustingAppend:2,Comment:3,Modifier:4,StrictModifier:5,Block:6,StrictBlock:7,Component:8,OpenElement:10,OpenElementWithSplat:11,FlushElement:12,CloseElement:13,StaticAttr:14,DynamicAttr:15,ComponentAttr:16,AttrSplat:17,Yield:18,DynamicArg:20,StaticArg:21,TrustingDynamicAttr:22,TrustingComponentAttr:23,StaticComponentAttr:24,Debugger:26,Undefined:27,Call:28,Concat:29,GetSymbol:30,GetLexicalSymbol:32,GetStrictKeyword:31,GetFreeAsComponentOrHelperHead:35,GetFreeAsHelperHead:37,GetFreeAsModifierHead:38,GetFreeAsComponentHead:39,InElement:40,If:41,Each:42,Let:44,WithDynamicVars:45,InvokeComponent:46,HasBlock:48,HasBlockParams:49,Curry:50,Not:51,IfInline:52,GetDynamicVar:53,Log:54} +function Zn(e){return function(t){return Array.isArray(t)&&t[0]===e}}const ei=Zn(Xn.FlushElement) +const ti=Zn(Xn.GetSymbol),ri=Object.defineProperty({__proto__:null,SexpOpcodes:Xn,VariableResolutionContext:{Strict:0,ResolveAsComponentOrHelperHead:1,ResolveAsHelperHead:5,ResolveAsModifierHead:6,ResolveAsComponentHead:7},WellKnownAttrNames:{class:0,id:1,value:2,name:3,type:4,style:5,href:6},WellKnownTagNames:{div:0,span:1,p:2,a:3},getStringFromValue:function(e){return e},is:Zn,isArgument:function(e){return e[0]===Xn.StaticArg||e[0]===Xn.DynamicArg},isAttribute:function(e){return e[0]===Xn.StaticAttr||e[0]===Xn.DynamicAttr||e[0]===Xn.TrustingDynamicAttr||e[0]===Xn.ComponentAttr||e[0]===Xn.StaticComponentAttr||e[0]===Xn.TrustingComponentAttr||e[0]===Xn.AttrSplat||e[0]===Xn.Modifier},isFlushElement:ei,isGet:ti,isHelper:function(e){return Array.isArray(e)&&e[0]===Xn.Call},isStringLiteral:function(e){return"string"==typeof e}},Symbol.toStringTag,{value:"Module"}) +let ni,ii,oi,si,ai,li,ui,ci,di,hi,pi,fi=()=>{} +function mi(e){fi=e.scheduleRevalidate,ni=e.scheduleDestroy,ii=e.scheduleDestroyed,oi=e.toIterator,si=e.toBool,ai=e.getProp,li=e.setProp,ui=e.getPath,ci=e.setPath,di=e.warnIfStyleNotTrusted,hi=e.assert,pi=e.deprecate}const gi=Object.defineProperty({__proto__:null,get assert(){return hi},assertGlobalContextWasSet:undefined,default:mi,get deprecate(){return pi},get getPath(){return ui},get getProp(){return ai},get scheduleDestroy(){return ni},get scheduleDestroyed(){return ii},get scheduleRevalidate(){return fi},get setPath(){return ci},get setProp(){return li},testOverrideGlobalContext:undefined,get toBool(){return si},get toIterator(){return oi},get warnIfStyleNotTrusted(){return di}},Symbol.toStringTag,{value:"Module"}) +var yi=function(e){return e[e.Live=0]="Live",e[e.Destroying=1]="Destroying",e[e.Destroyed=2]="Destroyed",e}(yi||{}) +let bi,_i,vi=new WeakMap +function wi(e,t){return null===e?t:Array.isArray(e)?(e.push(t),e):[e,t]}function Si(e,t){Array.isArray(e)?e.forEach(t):null!==e&&t(e)}function Pi(e,t,r){if(Array.isArray(e)&&e.length>1){let r=e.indexOf(t) +return e.splice(r,1),e}return null}function Ei(e){let t=vi.get(e) +return void 0===t&&(t={parents:null,children:null,eagerDestructors:null,destructors:null,state:yi.Live},vi.set(e,t)),t}function ki(e,t){let r=Ei(e),n=Ei(t) +return r.children=wi(r.children,t),n.parents=wi(n.parents,e),t}function Ti(e,t,r=!1){let n=Ei(e),i=!0===r?"eagerDestructors":"destructors" +return n[i]=wi(n[i],t),t}function Ci(e,t,r=!1){let n=Ei(e),i=!0===r?"eagerDestructors":"destructors" +n[i]=Pi(n[i],t)}function Oi(e){let t=Ei(e) +if(t.state>=yi.Destroying)return +let{parents:r,children:n,eagerDestructors:i,destructors:o}=t +t.state=yi.Destroying,Si(n,Oi),Si(i,(t=>t(e))),Si(o,(t=>ni(e,t))),ii((()=>{Si(r,(t=>function(e,t){let r=Ei(t) +r.state===yi.Live&&(r.children=Pi(r.children,e))}(e,t))),t.state=yi.Destroyed}))}function Ai(e){let{children:t}=Ei(e) +Si(t,Oi)}function Ri(e){let t=vi.get(e) +return void 0!==t&&null!==t.children}function xi(e){let t=vi.get(e) +return void 0!==t&&t.state>=yi.Destroying}function Mi(e){let t=vi.get(e) +return void 0!==t&&t.state>=yi.Destroyed}const Di=Object.defineProperty({__proto__:null,_hasDestroyableChildren:Ri,assertDestroyablesDestroyed:_i,associateDestroyableChild:ki,destroy:Oi,destroyChildren:Ai,enableDestroyableTracking:bi,isDestroyed:Mi,isDestroying:xi,registerDestructor:Ti,unregisterDestructor:Ci},Symbol.toStringTag,{value:"Module"}) +let Ni=1 +const Ii=0,ji=1,Li=Symbol("TAG_COMPUTE") +function Bi(e){return e[Li]()}function Fi(e,t){return t>=e[Li]()}const Ui=Symbol("TAG_TYPE") +class zi{static combine(e){switch(e.length){case 0:return Gi +case 1:return e[0] +default:{let t=new zi(2) +return t.subtag=e,t}}}constructor(e){_defineProperty(this,"revision",1),_defineProperty(this,"lastChecked",1),_defineProperty(this,"lastValue",1),_defineProperty(this,"isUpdating",!1),_defineProperty(this,"subtag",null),_defineProperty(this,"subtagBufferCache",null),_defineProperty(this,Ui,void 0),this[Ui]=e}[Li](){let{lastChecked:e}=this +if(!0===this.isUpdating)this.lastChecked=++Ni +else if(e!==Ni){this.isUpdating=!0,this.lastChecked=Ni +try{let{subtag:e,revision:t}=this +if(null!==e)if(Array.isArray(e))for(const r of e){let e=r[Li]() +t=Math.max(e,t)}else{let r=e[Li]() +r===this.subtagBufferCache?t=Math.max(t,this.lastValue):(this.subtagBufferCache=null,t=Math.max(t,r))}this.lastValue=t}finally{this.isUpdating=!1}}return this.lastValue}static updateTag(e,t){let r=e,n=t +n===Gi?r.subtag=null:(r.subtagBufferCache=n[Li](),r.subtag=n)}static dirtyTag(e,t){e.revision=++Ni,fi()}}const Hi=zi.dirtyTag,Vi=zi.updateTag +function $i(){return new zi(Ii)}function qi(){return new zi(ji)}const Gi=new zi(3) +function Wi(e){return e===Gi}class Qi{constructor(){_defineProperty(this,Ui,100)}[Li](){return NaN}}const Yi=new Qi +class Ki{constructor(){_defineProperty(this,Ui,101)}[Li](){return Ni}}const Ji=new Ki,Xi=zi.combine +let Zi=qi(),eo=qi(),to=qi() +Bi(Zi),Hi(Zi),Bi(Zi),Vi(Zi,Xi([eo,to])),Bi(Zi),Hi(eo),Bi(Zi),Hi(to),Bi(Zi),Vi(Zi,to),Bi(Zi),Hi(to),Bi(Zi) +const ro=new WeakMap +function no(e,t,r){let n=void 0===r?ro.get(e):r +if(void 0===n)return +let i=n.get(t) +void 0!==i&&Hi(i,!0)}function io(e){let t=ro.get(e) +return void 0===t&&(t=new Map,ro.set(e,t)),t}function oo(e,t,r){let n=void 0===r?io(e):r,i=n.get(t) +return void 0===i&&(i=qi(),n.set(t,i)),i}class so{constructor(){_defineProperty(this,"tags",new Set),_defineProperty(this,"last",null)}add(e){e!==Gi&&(this.tags.add(e),this.last=e)}combine(){let{tags:e}=this +return 0===e.size?Gi:1===e.size?this.last:Xi(Array.from(this.tags))}}let ao=null +const lo=[] +function uo(e){lo.push(ao),ao=new so}function co(){let e=ao +return ao=lo.pop()||null,function(e){if(null==e)throw new Error("Expected value to be present") +return e}(e).combine()}function ho(){lo.push(ao),ao=null}function po(){ao=lo.pop()||null}function fo(){return null!==ao}function mo(e){null!==ao&&ao.add(e)}const go=Symbol("FN"),yo=Symbol("LAST_VALUE"),bo=Symbol("TAG"),_o=Symbol("SNAPSHOT") +function vo(e,t){return{[go]:e,[yo]:void 0,[bo]:void 0,[_o]:-1}}function wo(e){let t=e[go],r=e[bo],n=e[_o] +if(void 0!==r&&Fi(r,n))mo(r) +else{uo() +try{e[yo]=t()}finally{r=co(),e[bo]=r,e[_o]=Bi(r),mo(r)}}return e[yo]}function So(e){return Wi(e[bo])}function Po(e,t){let r +uo() +try{e()}finally{r=co()}return r}function Eo(e){ho() +try{return e()}finally{po()}}function ko(e,t){let r=new WeakMap,n="function"==typeof t +return{getter:function(i){let o +return mo(oo(i,e)),n&&!r.has(i)?(o=t.call(i),r.set(i,o)):o=r.get(i),o},setter:function(t,n){no(t,e),r.set(t,n)}}}const To=Symbol("GLIMMER_VALIDATOR_REGISTRATION"),Co=function(){if("undefined"!=typeof globalThis)return globalThis +if("undefined"!=typeof self)return self +if("undefined"!=typeof window)return window +if("undefined"!=typeof global)return global +throw new Error("unable to locate global object")}() +if(!0===Co[To])throw new Error("The `@glimmer/validator` library has been included twice in this application. It could be different versions of the package, or the same version included twice by mistake. `@glimmer/validator` depends on having a single copy of the package in use at any time in an application, even if they are the same version. You must dedupe your build to remove the duplicate packages in order to prevent this error.") +Co[To]=!0 +const Oo=Object.defineProperty({__proto__:null,ALLOW_CYCLES:undefined,COMPUTE:Li,CONSTANT:0,CONSTANT_TAG:Gi,CURRENT_TAG:Ji,CurrentTag:Ki,INITIAL:1,VOLATILE:NaN,VOLATILE_TAG:Yi,VolatileTag:Qi,beginTrackFrame:uo,beginUntrackFrame:ho,bump:function(){Ni++},combine:Xi,consumeTag:mo,createCache:vo,createTag:$i,createUpdatableTag:qi,debug:{},dirtyTag:Hi,dirtyTagFor:no,endTrackFrame:co,endUntrackFrame:po,getValue:wo,isConst:So,isConstTag:Wi,isTracking:fo,resetTracking:function(){for(;lo.length>0;)lo.pop() +ao=null},tagFor:oo,tagMetaFor:io,track:Po,trackedData:ko,untrack:Eo,updateTag:Vi,validateTag:Fi,valueForTag:Bi},Symbol.toStringTag,{value:"Module"}),Ao=Symbol("REFERENCE"),Ro=0,xo=1,Mo=2,Do=3 +class No{constructor(e){_defineProperty(this,Ao,void 0),_defineProperty(this,"tag",null),_defineProperty(this,"lastRevision",1),_defineProperty(this,"lastValue",void 0),_defineProperty(this,"children",null),_defineProperty(this,"compute",null),_defineProperty(this,"update",null),_defineProperty(this,"debugLabel",void 0),this[Ao]=e}}function Io(e){const t=new No(Mo) +return t.tag=Gi,t.lastValue=e,t}const jo=Io(void 0),Lo=Io(null),Bo=Io(!0),Fo=Io(!1) +function Uo(e,t){const r=new No(Ro) +return r.lastValue=e,r.tag=Gi,r}function zo(e,t){const r=new No(Mo) +return r.lastValue=e,r.tag=Gi,r}function Ho(e,t=null,r="unknown"){const n=new No(xo) +return n.compute=e,n.update=t,n}function Vo(e){return Wo(e)?Ho((()=>Qo(e)),null,e.debugLabel):e}function $o(e){return e[Ao]===Do}function qo(e){const t=Ho((()=>Qo(e)),(t=>Yo(e,t))) +return t.debugLabel=e.debugLabel,t[Ao]=Do,t}function Go(e){return e.tag===Gi}function Wo(e){return null!==e.update}function Qo(e){const t=e +let{tag:r}=t +if(r===Gi)return t.lastValue +const{lastRevision:n}=t +let i +if(null!==r&&Fi(r,n))i=t.lastValue +else{const{compute:e}=t,n=Po((()=>{i=t.lastValue=e()})) +r=t.tag=n,t.lastRevision=Bi(n)}return mo(r),i}function Yo(e,t){He(e.update,"called update on a non-updatable reference")(t)}function Ko(e,t){const r=e,n=r[Ao] +let i,o=r.children +if(null===o)o=r.children=new Map +else if(i=o.get(t),void 0!==i)return i +if(n===Mo){const e=Qo(r) +i=Ke(e)?zo(e[t]):jo}else i=Ho((()=>{const e=Qo(r) +if(Ke(e))return ai(e,t)}),(e=>{const n=Qo(r) +if(Ke(n))return li(n,t,e)})) +return o.set(t,i),i}function Jo(e,t){let r=e +for(const n of t)r=Ko(r,n) +return r}const Xo={},Zo=(e,t)=>t,es=(e,t)=>String(t),ts=e=>null===e?Xo:e +function rs(e){switch(e){case"@key":return os(Zo) +case"@index":return os(es) +case"@identity":return os(ts) +default:return t=e,os((e=>ui(e,t)))}var t}class ns{constructor(){_defineProperty(this,"_weakMap",void 0),_defineProperty(this,"_primitiveMap",void 0)}get weakMap(){return void 0===this._weakMap&&(this._weakMap=new WeakMap),this._weakMap}get primitiveMap(){return void 0===this._primitiveMap&&(this._primitiveMap=new Map),this._primitiveMap}set(e,t){Je(e)?this.weakMap.set(e,t):this.primitiveMap.set(e,t)}get(e){return Je(e)?this.weakMap.get(e):this.primitiveMap.get(e)}}const is=new ns +function os(e){let t=new ns +return(r,n)=>{let i=e(r,n),o=t.get(i)||0 +return t.set(i,o+1),0===o?i:function(e,t){let r=is.get(e) +void 0===r&&(r=[],is.set(e,r)) +let n=r[t] +return void 0===n&&(n={value:e,count:t},r[t]=n),n}(i,o)}}function ss(e,t){return Ho((()=>{let r=Qo(e),n=rs(t) +if(Array.isArray(r))return new us(r,n) +let i=oi(r) +return null===i?new us(Ne,(()=>null)):new ls(i,n)}))}function as(e){let t=e,r=$i() +return Ho((()=>(mo(r),t)),(e=>{t!==e&&(t=e,Hi(r))}))}class ls{constructor(e,t){this.inner=e,this.keyFor=t}isEmpty(){return this.inner.isEmpty()}next(){let e=this.inner.next() +return null!==e&&(e.key=this.keyFor(e.value,e.memo)),e}}let us=class{constructor(e,t){_defineProperty(this,"current",void 0),_defineProperty(this,"pos",0),this.iterator=e,this.keyFor=t,0===e.length?this.current={kind:"empty"}:this.current={kind:"first",value:e[this.pos]}}isEmpty(){return"empty"===this.current.kind}next(){let e,t=this.current +if("first"===t.kind)this.current={kind:"progress"},e=t.value +else{if(this.pos>=this.iterator.length-1)return null +e=this.iterator[++this.pos]}let{keyFor:r}=this +return{key:r(e,this.pos),value:e,memo:this.pos}}} +const cs=Object.defineProperty({__proto__:null,FALSE_REFERENCE:Fo,NULL_REFERENCE:Lo,REFERENCE:Ao,TRUE_REFERENCE:Bo,UNDEFINED_REFERENCE:jo,childRefFor:Ko,childRefFromParts:Jo,createComputeRef:Ho,createConstRef:Uo,createDebugAliasRef:undefined,createInvokableRef:qo,createIteratorItemRef:as,createIteratorRef:ss,createPrimitiveRef:Io,createReadOnlyRef:Vo,createUnboundRef:zo,isConstRef:Go,isInvokableRef:$o,isUpdatableRef:Wo,updateRef:Yo,valueForRef:Qo},Symbol.toStringTag,{value:"Module"}),ds=new WeakMap +function hs(e){return ds.get(e)}function ps(e,t){ds.set(e,t)}function fs(e){if("symbol"==typeof e)return null +const t=Number(e) +return isNaN(t)?null:t%1==0?t:null}class ms{constructor(e){this.named=e}get(e,t){const r=this.named[t] +if(void 0!==r)return Qo(r)}has(e,t){return t in this.named}ownKeys(){return Object.keys(this.named)}isExtensible(){return!1}getOwnPropertyDescriptor(e,t){return{enumerable:!0,configurable:!0}}}class gs{constructor(e){this.positional=e}get(e,t){let{positional:r}=this +if("length"===t)return r.length +const n=fs(t) +return null!==n&&n{const{named:r,positional:n}=e +const i=new ms(r),o=new gs(n),s=Object.create(null),a=new Proxy(s,i),l=new Proxy([],o) +return ps(a,((e,t)=>function(e,t){return Po((()=>{t in e&&Qo(e[t])}))}(r,t))),ps(l,((e,t)=>function(e,t){return Po((()=>{"[]"===t&&e.forEach(Qo) +const r=fs(t) +null!==r&&r{let n=this.getDelegateFor(r) +const i=ys(t),o=n.createHelper(e,i) +if(Es(n)){let e=Ho((()=>n.getValue(o)),null,!1) +return ks(n)&&ki(e,n.getDestroyable(o)),e}if(ks(n)){let e=Uo(void 0) +return ki(e,n.getDestroyable(o)),e}return jo}}}class Cs{constructor(){_defineProperty(this,"capabilities",{hasValue:!0,hasDestroyable:!1,hasScheduledEffect:!1})}createHelper(e,t){return{fn:e,args:t}}getValue({fn:e,args:t}){if(Object.keys(t.named).length>0){return e(...[...t.positional,t.named])}return e(...t.positional)}getDebugName(e){return e.name?`(helper function ${e.name})`:"(anonymous helper function)"}}const Os=new WeakMap,As=new WeakMap,Rs=new WeakMap,xs=Object.getPrototypeOf +function Ms(e,t,r){return e.set(r,t),r}function Ds(e,t){let r=t +for(;null!=r;){const t=e.get(r) +if(void 0!==t)return t +r=xs(r)}}function Ns(e,t){return Ms(As,e,t)}function Is(e,t){const r=Ds(As,e) +return void 0===r&&!0===t?null:r}function js(e,t){return Ms(Rs,e,t)}const Ls=new Ts((()=>new Cs)) +function Bs(e,t){let r=Ds(Rs,e) +return void 0===r&&"function"==typeof e&&(r=Ls),r||null}function Fs(e,t){return Ms(Os,e,t)}function Us(e,t){const r=Ds(Os,e) +return void 0===r&&!0===t?null:r}function zs(e){return void 0!==Ds(Os,e)}function Hs(e){return function(e){return"function"==typeof e}(e)||void 0!==Ds(Rs,e)}const Vs={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +function $s(e,t={}){let r=Boolean(t.updateHook) +return{asyncLifeCycleCallbacks:Boolean(t.asyncLifecycleCallbacks),destructor:Boolean(t.destructor),updateHook:r}}function qs(e){return e.capabilities.asyncLifeCycleCallbacks}function Gs(e){return e.capabilities.updateHook}class Ws{constructor(e){_defineProperty(this,"componentManagerDelegates",new WeakMap),this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) +if(void 0===r){let{factory:n}=this +r=n(e),t.set(e,r)}return r}create(e,t,r){let n=this.getDelegateFor(e),i=ys(r.capture()),o=n.createComponent(t,i) +return new Qs(o,n,i)}getDebugName(e){return"function"==typeof e?e.name:e.toString()}update(e){let{delegate:t}=e +if(Gs(t)){let{component:r,args:n}=e +t.updateComponent(r,n)}}didCreate({component:e,delegate:t}){qs(t)&&t.didCreateComponent(e)}didUpdate({component:e,delegate:t}){(function(e){return qs(e)&&Gs(e)})(t)&&t.didUpdateComponent(e)}didRenderLayout(){}didUpdateLayout(){}getSelf({component:e,delegate:t}){return Uo(t.getContext(e))}getDestroyable(e){const{delegate:t}=e +if(function(e){return e.capabilities.destructor}(t)){const{component:r}=e +return Ti(e,(()=>t.destroyComponent(r))),e}return null}getCapabilities(){return Vs}}class Qs{constructor(e,t,r){this.component=e,this.delegate=t,this.args=r}}function Ys(e,t={}){return{disableAutoTracking:Boolean(t.disableAutoTracking)}}class Ks{constructor(e){_defineProperty(this,"componentManagerDelegates",new WeakMap),this.factory=e}getDelegateFor(e){let{componentManagerDelegates:t}=this,r=t.get(e) +if(void 0===r){let{factory:n}=this +r=n(e),t.set(e,r)}return r}create(e,t,r,n){let i,o=this.getDelegateFor(e),s=ys(n),a=o.createModifier(r,s) +return i={tag:qi(),element:t,delegate:o,args:s,modifier:a},Ti(i,(()=>o.destroyModifier(a,s))),i}getDebugName(e){return"function"==typeof e?e.name||e.toString():""}getDebugInstance({modifier:e}){return e}getTag({tag:e}){return e}install({element:e,args:t,modifier:r,delegate:n}){let{capabilities:i}=n +!0===i.disableAutoTracking?Eo((()=>n.installModifier(r,wt(e,"ELEMENT"),t))):n.installModifier(r,wt(e,"ELEMENT"),t)}update({args:e,modifier:t,delegate:r}){let{capabilities:n}=r +!0===n.disableAutoTracking?Eo((()=>r.updateModifier(t,e))):r.updateModifier(t,e)}getDestroyable(e){return e}}function Js(e,t){return Fs(new Ws(e),t)}function Xs(e,t){return Ns(new Ks(e),t)}function Zs(e,t){return js(new Ts(e),t)}const ea=new WeakMap,ta=Object.getPrototypeOf +function ra(e,t){return ea.set(t,e),t}function na(e){let t=e +for(;null!==t;){let e=ea.get(t) +if(void 0!==e)return e +t=ta(t)}}const ia=Object.defineProperty({__proto__:null,CustomComponentManager:Ws,CustomHelperManager:Ts,CustomModifierManager:Ks,capabilityFlagsFrom:_s,componentCapabilities:$s,getComponentTemplate:na,getCustomTagFor:hs,getInternalComponentManager:Us,getInternalHelperManager:Bs,getInternalModifierManager:Is,hasCapability:Ss,hasDestroyable:ks,hasInternalComponentManager:zs,hasInternalHelperManager:Hs,hasInternalModifierManager:function(e){return void 0!==Ds(As,e)},hasValue:Es,helperCapabilities:Ps,managerHasCapability:ws,modifierCapabilities:Ys,setComponentManager:Js,setComponentTemplate:ra,setCustomTagFor:ps,setHelperManager:Zs,setInternalComponentManager:Fs,setInternalHelperManager:js,setInternalModifierManager:Ns,setModifierManager:Xs},Symbol.toStringTag,{value:"Module"}) +function oa(e){return t=>{if(!function(e){return Array.isArray(e)&&2===e.length}(t))return!1 +let r=t[0] +return r===Xn.GetStrictKeyword||r===Xn.GetLexicalSymbol||r===e}}const sa=oa(Xn.GetFreeAsComponentHead),aa=oa(Xn.GetFreeAsModifierHead),la=oa(Xn.GetFreeAsHelperHead),ua=oa(Xn.GetFreeAsComponentOrHelperHead) +function ca(e,t,r,n,i){let{upvars:o}=r,s=ze(o[e[1]]),a=t.lookupBuiltInHelper(s) +return n.helper(a,s)}const da={Modifier:1003,Component:1004,Helper:1005,ComponentOrHelper:1007,OptionalComponentOrHelper:1008,Local:1010,TemplateLocal:1011},ha={Label:1e3,StartLabels:1001,StopLabels:1002,Start:1e3,End:1002},pa={Label:1,IsStrictMode:2,DebugSymbols:3,Block:4,StdLib:5,NonSmallInt:6,SymbolTable:7,Layout:8} +function fa(e){return{type:pa.Label,value:e}}function ma(){return{type:pa.IsStrictMode,value:void 0}}function ga(e){return{type:pa.StdLib,value:e}}function ya(e){return{type:pa.SymbolTable,value:e}}function ba(e){return{type:pa.Layout,value:e}}class _a{constructor(){_defineProperty(this,"labels",Ye()),_defineProperty(this,"targets",[])}label(e,t){this.labels[e]=t}target(e,t){this.targets.push({at:e,target:t})}patch(e){let{targets:t,labels:r}=this +for(const{at:n,target:i}of t){let t=r[i]-n +Ue(-1===e.getbyaddr(n),"Expected heap to contain a placeholder, but it did not"),e.setbyaddr(n,t)}}}function va(e,t,r,n,i){if(function(e){return e=0;o--){let t=ze(n[o]) +e(ha.Label,t.label),e(Hr.Pop,1),t.callback(),0!==o&&e(zr.Jump,fa("END"))}e(ha.Label,"END"),e(ha.StopLabels),e(Hr.Exit)}function qa(e,t,r){e(ha.StartLabels),e(zr.PushFrame),e(zr.ReturnTo,fa("ENDINITIAL")) +let n=t() +e(Hr.Enter,n),r(),e(ha.Label,"FINALLY"),e(Hr.Exit),e(zr.Return),e(ha.Label,"ENDINITIAL"),e(zr.PopFrame),e(ha.StopLabels)}function Ga(e,t,r,n){return qa(e,t,(()=>{e(Hr.JumpUnless,fa("ELSE")),r(),e(zr.Jump,fa("FINALLY")),e(ha.Label,"ELSE"),void 0!==n&&n()}))}Ma.add(Xn.Concat,((e,[,t])=>{for(let r of t)Na(e,r) +e(Hr.Concat,t.length)})),Ma.add(Xn.Call,((e,[,t,r,n])=>{la(t)?e(da.Helper,t,(t=>{Oa(e,t,r,n)})):(Na(e,t),Aa(e,r,n))})),Ma.add(Xn.Curry,((e,[,t,r,n,i])=>{Ra(e,r,t,n,i)})),Ma.add(Xn.GetSymbol,((e,[,t,r])=>{e(Hr.GetVariable,t),Da(e,r)})),Ma.add(Xn.GetLexicalSymbol,((e,[,t,r])=>{e(da.TemplateLocal,t,(t=>{e(Hr.ConstantReference,t),Da(e,r)}))})),Ma.add(Xn.GetStrictKeyword,((e,t)=>{e(da.Local,t[1],(r=>{e(da.Helper,t,(t=>{Oa(e,t,null,null)}))}))})),Ma.add(Xn.GetFreeAsHelperHead,((e,t)=>{e(da.Local,t[1],(r=>{e(da.Helper,t,(t=>{Oa(e,t,null,null)}))}))})),Ma.add(Xn.Undefined,(e=>Ta(e,void 0))),Ma.add(Xn.HasBlock,((e,[,t])=>{Na(e,t),e(Hr.HasBlock)})),Ma.add(Xn.HasBlockParams,((e,[,t])=>{Na(e,t),e(Hr.SpreadBlock),e(Hr.CompileBlock),e(Hr.HasBlockParams)})),Ma.add(Xn.IfInline,((e,[,t,r,n])=>{Na(e,n),Na(e,r),Na(e,t),e(Hr.IfInline)})),Ma.add(Xn.Not,((e,[,t])=>{Na(e,t),e(Hr.Not)})),Ma.add(Xn.GetDynamicVar,((e,[,t])=>{Na(e,t),e(Hr.GetDynamicVar)})),Ma.add(Xn.Log,((e,[,t])=>{e(zr.PushFrame),Ia(e,t,null,!1),e(Hr.Log),e(zr.PopFrame),e(Hr.Fetch,Wr)})) +const Wa="&attrs" +function Qa(e,t,r,n,i,o){let{compilable:s,capabilities:a,handle:l}=t,u=r?[r,[]]:null,c=Array.isArray(o)||null===o?ka(o):o +s?(e(Hr.PushComponentDefinition,l),function(e,{capabilities:t,layout:r,elementBlock:n,positional:i,named:o,blocks:s}){let{symbolTable:a}=r,l=a.hasEval||Ss(t,Fr.prepareArgs) +if(l)return void Ka(e,{capabilities:t,elementBlock:n,positional:i,named:o,atNames:!0,blocks:s,layout:r}) +e(Hr.Fetch,Gr),e(Hr.Dup,qr,1),e(Hr.Load,Gr),e(zr.PushFrame) +let{symbols:u}=a,c=[],d=[],h=[],p=s.names +if(null!==n){let t=u.indexOf(Wa);-1!==t&&(Ua(e,n),c.push(t))}for(const f of p){let t=u.indexOf(`&${f}`);-1!==t&&(Ua(e,s.get(f)),c.push(t))}if(Ss(t,Fr.createArgs)){let t=ja(e,i)<<4 +t|=8 +let r=je +if(null!==o){r=o[0] +let t=o[1] +for(let n=0;n0?1:0),e(Hr.SetVariable,0) +for(const f of Be(d))-1===f?e(Hr.Pop,1):e(Hr.SetVariable,f+1) +null!==i&&e(Hr.Pop,i.length) +for(const f of Be(c))e(Hr.SetBlock,f+1) +e(Hr.Constant,ba(r)),e(Hr.CompileBlock),e(zr.InvokeVirtual),e(Hr.DidRenderLayout,Gr),e(zr.PopFrame),e(Hr.PopScope),Ss(t,Fr.dynamicScope)&&e(Hr.PopDynamicScope) +e(Hr.CommitComponentTransaction),e(Hr.Load,Gr)}(e,{capabilities:a,layout:s,elementBlock:u,positional:n,named:i,blocks:c})):(e(Hr.PushComponentDefinition,l),Ka(e,{capabilities:a,elementBlock:u,positional:n,named:i,atNames:!0,blocks:c}))}function Ya(e,t,r,n,i,o,s,a){let l=r?[r,[]]:null,u=Array.isArray(o)||null===o?ka(o):o +qa(e,(()=>(Na(e,t),e(Hr.Dup,qr,0),2)),(()=>{e(Hr.JumpUnless,fa("ELSE")),a?e(Hr.ResolveCurriedComponent):e(Hr.ResolveDynamicComponent,ma()),e(Hr.PushDynamicComponentInstance),Ka(e,{capabilities:!0,elementBlock:l,positional:n,named:i,atNames:s,blocks:u}),e(ha.Label,"ELSE")}))}function Ka(e,{capabilities:t,elementBlock:r,positional:n,named:i,atNames:o,blocks:s,layout:a}){let l=!!s,u=!0===t||Ss(t,Fr.prepareArgs)||!(!i||0===i[0].length),c=s.with("attrs",r) +e(Hr.Fetch,Gr),e(Hr.Dup,qr,1),e(Hr.Load,Gr),e(zr.PushFrame),function(e,t,r,n,i){let o=n.names +for(const l of o)Ua(e,n.get(l)) +let s=ja(e,t)<<4 +i&&(s|=8),n&&(s|=7) +let a=Ne +if(r){a=r[0] +let t=r[1] +for(let r=0;r{a?(e(Hr.PushSymbolTable,ya(a.symbolTable)),e(Hr.Constant,ba(a)),e(Hr.CompileBlock)):e(Hr.GetComponentLayout,Gr),e(Hr.PopulateLayout,Gr)})),e(Hr.Load,Gr)}function Ja(e,t,r){e(ha.StartLabels),function(e,t,r){e(Hr.Fetch,t),r(),e(Hr.Load,t)}(e,5,(()=>{e(Hr.GetComponentTagName,Gr),e(Hr.PrimitiveReference),e(Hr.Dup,qr,0)})),e(Hr.JumpUnless,fa("BODY")),e(Hr.Fetch,5),e(Hr.PutComponentOperations),e(Hr.OpenDynamicElement),e(Hr.DidCreateElement,Gr),Fa(e,r,null),e(Hr.FlushElement),e(ha.Label,"BODY"),za(e,[t.block[0],[]]),e(Hr.Fetch,5),e(Hr.JumpUnless,fa("END")),e(Hr.CloseElement),e(ha.Label,"END"),e(Hr.Load,5),e(ha.StopLabels)}function Xa(e,t,r,n,i=null){e(Hr.BeginComponentTransaction,Gr),e(Hr.PushDynamicScope),e(Hr.CreateComponent,0|t,Gr),i&&i(),e(Hr.RegisterComponentDestructor,Gr),e(Hr.GetComponentSelf,Gr),e(Hr.VirtualRootScope,Gr),e(Hr.SetVariable,0),e(Hr.SetupForEval,Gr),n&&e(Hr.SetNamedVariables,Gr),r&&e(Hr.SetBlocks,Gr),e(Hr.Pop,1),e(Hr.InvokeComponentLayout,Gr),e(Hr.DidRenderLayout,Gr),e(zr.PopFrame),e(Hr.PopScope),e(Hr.PopDynamicScope),e(Hr.CommitComponentTransaction)}function Za(e,t,r){$a(e,(()=>e(Hr.ContentType)),(n=>{n(Lr.String,(()=>{t?(e(Hr.AssertSame),e(Hr.AppendHTML)):e(Hr.AppendText)})),"number"==typeof r?(n(Lr.Component,(()=>{e(Hr.ResolveCurriedComponent),e(Hr.PushDynamicComponentInstance),function(e){e(Hr.Fetch,Gr),e(Hr.Dup,qr,1),e(Hr.Load,Gr),e(zr.PushFrame),e(Hr.PushEmptyArgs),e(Hr.PrepareArgs,Gr),Xa(e,!1,!1,!0,(()=>{e(Hr.GetComponentLayout,Gr),e(Hr.PopulateLayout,Gr)})),e(Hr.Load,Gr)}(e)})),n(Lr.Helper,(()=>{Aa(e,null,null,(()=>{e(zr.InvokeStatic,r)}))}))):(n(Lr.Component,(()=>{e(Hr.AppendText)})),n(Lr.Helper,(()=>{e(Hr.AppendText)}))),n(Lr.SafeString,(()=>{e(Hr.AssertSame),e(Hr.AppendSafeHTML)})),n(Lr.Fragment,(()=>{e(Hr.AssertSame),e(Hr.AppendDocumentFragment)})),n(Lr.Node,(()=>{e(Hr.AssertSame),e(Hr.AppendNode)}))}))}function el(e){let t=rl(e,(e=>function(e){e(Hr.Main,Gr),Xa(e,!1,!1,!0)}(e))),r=rl(e,(e=>Za(e,!0,null))),n=rl(e,(e=>Za(e,!1,null))),i=rl(e,(e=>Za(e,!0,r))),o=rl(e,(e=>Za(e,!1,n))) +return new Sa(t,i,o,r,n)}const tl={evalSymbols:null,upvars:null,moduleName:"stdlib",scopeValues:null,isStrictMode:!0,owner:null,size:0} +function rl(e,t){let{constants:r,heap:n,resolver:i}=e,o=new wa(n,tl) +t((function(...e){va(o,r,i,tl,e)})) +let s=o.commit(0) +if("number"!=typeof s)throw new Error("Unexpected errors compiling std") +return s}class nl{constructor({constants:e,heap:t},r,n){_defineProperty(this,"constants",void 0),_defineProperty(this,"heap",void 0),_defineProperty(this,"stdlib",void 0),this.resolver=r,this.createOp=n,this.constants=e,this.heap=t,this.stdlib=el(this)}}function il(e,t,r){return new nl(e,t,r)}function ol(e,t){return{program:e,encoder:new wa(e.heap,t,e.stdlib),meta:t}}const sl=new xa,al=["class","id","value","name","type","style","href"],ll=["div","span","p","a"] +function ul(e){return"string"==typeof e?e:ll[e]}function cl(e){return"string"==typeof e?e:al[e]}function dl(e){if(null===e)return null +return[e[0].map((e=>`@${e}`)),e[1]]}sl.add(Xn.Comment,((e,t)=>e(Hr.Comment,t[1]))),sl.add(Xn.CloseElement,(e=>e(Hr.CloseElement))),sl.add(Xn.FlushElement,(e=>e(Hr.FlushElement))),sl.add(Xn.Modifier,((e,[,t,r,n])=>{aa(t)?e(da.Modifier,t,(t=>{e(zr.PushFrame),Ia(e,r,n,!1),e(Hr.Modifier,t),e(zr.PopFrame)})):(Na(e,t),e(zr.PushFrame),Ia(e,r,n,!1),e(Hr.Dup,$r,1),e(Hr.DynamicModifier),e(zr.PopFrame))})),sl.add(Xn.StaticAttr,((e,[,t,r,n])=>{e(Hr.StaticAttr,cl(t),r,n??null)})),sl.add(Xn.StaticComponentAttr,((e,[,t,r,n])=>{e(Hr.StaticComponentAttr,cl(t),r,n??null)})),sl.add(Xn.DynamicAttr,((e,[,t,r,n])=>{Na(e,r),e(Hr.DynamicAttr,cl(t),!1,n??null)})),sl.add(Xn.TrustingDynamicAttr,((e,[,t,r,n])=>{Na(e,r),e(Hr.DynamicAttr,cl(t),!0,n??null)})),sl.add(Xn.ComponentAttr,((e,[,t,r,n])=>{Na(e,r),e(Hr.ComponentAttr,cl(t),!1,n??null)})),sl.add(Xn.TrustingComponentAttr,((e,[,t,r,n])=>{Na(e,r),e(Hr.ComponentAttr,cl(t),!0,n??null)})),sl.add(Xn.OpenElement,((e,[,t])=>{e(Hr.OpenElement,ul(t))})),sl.add(Xn.OpenElementWithSplat,((e,[,t])=>{e(Hr.PutComponentOperations),e(Hr.OpenElement,ul(t))})),sl.add(Xn.Component,((e,[,t,r,n,i])=>{sa(t)?e(da.Component,t,(t=>{Qa(e,t,r,null,n,i)})):Ya(e,t,r,null,n,i,!0,!0)})),sl.add(Xn.Yield,((e,[,t,r])=>Fa(e,t,r))),sl.add(Xn.AttrSplat,((e,[,t])=>Fa(e,t,null))),sl.add(Xn.Debugger,((e,[,t])=>e(Hr.Debugger,{type:pa.DebugSymbols,value:void 0},t))),sl.add(Xn.Append,((e,[,t])=>{if(Array.isArray(t))if(ua(t))e(da.OptionalComponentOrHelper,t,{ifComponent(t){Qa(e,t,null,null,null,null)},ifHelper(t){e(zr.PushFrame),Oa(e,t,null,null),e(zr.InvokeStatic,ga("cautious-non-dynamic-append")),e(zr.PopFrame)},ifValue(t){e(zr.PushFrame),e(Hr.ConstantReference,t),e(zr.InvokeStatic,ga("cautious-non-dynamic-append")),e(zr.PopFrame)}}) +else if(t[0]===Xn.Call){let[,r,n,i]=t +ua(r)?e(da.ComponentOrHelper,r,{ifComponent(t){Qa(e,t,null,n,dl(i),null)},ifHelper(t){e(zr.PushFrame),Oa(e,t,n,i),e(zr.InvokeStatic,ga("cautious-non-dynamic-append")),e(zr.PopFrame)}}):$a(e,(()=>{Na(e,r),e(Hr.DynamicContentType)}),(t=>{t(Lr.Component,(()=>{e(Hr.ResolveCurriedComponent),e(Hr.PushDynamicComponentInstance),Ka(e,{capabilities:!0,elementBlock:null,positional:n,named:i,atNames:!1,blocks:ka(null)})})),t(Lr.Helper,(()=>{Aa(e,n,i,(()=>{e(zr.InvokeStatic,ga("cautious-non-dynamic-append"))}))}))}))}else e(zr.PushFrame),Na(e,t),e(zr.InvokeStatic,ga("cautious-append")),e(zr.PopFrame) +else e(Hr.Text,null==t?"":String(t))})),sl.add(Xn.TrustingAppend,((e,[,t])=>{Array.isArray(t)?(e(zr.PushFrame),Na(e,t),e(zr.InvokeStatic,ga("trusting-append")),e(zr.PopFrame)):e(Hr.Text,null==t?"":String(t))})),sl.add(Xn.Block,((e,[,t,r,n,i])=>{sa(t)?e(da.Component,t,(t=>{Qa(e,t,null,r,dl(n),i)})):Ya(e,t,null,r,n,i,!1,!1)})),sl.add(Xn.InElement,((e,[,t,r,n,i])=>{Ga(e,(()=>(Na(e,r),void 0===i?Ta(e,void 0):Na(e,i),Na(e,n),e(Hr.Dup,qr,0),4)),(()=>{e(Hr.PushRemoteElement),za(e,t),e(Hr.PopRemoteElement)}))})),sl.add(Xn.If,((e,[,t,r,n])=>Ga(e,(()=>(Na(e,t),e(Hr.ToBoolean),1)),(()=>{za(e,r)}),n?()=>{za(e,n)}:void 0))),sl.add(Xn.Each,((e,[,t,r,n,i])=>qa(e,(()=>(r?Na(e,r):Ta(e,null),Na(e,t),2)),(()=>{e(Hr.EnterList,fa("BODY"),fa("ELSE")),e(zr.PushFrame),e(Hr.Dup,$r,1),e(zr.ReturnTo,fa("ITER")),e(ha.Label,"ITER"),e(Hr.Iterate,fa("BREAK")),e(ha.Label,"BODY"),Ha(e,n,2),e(Hr.Pop,2),e(zr.Jump,fa("FINALLY")),e(ha.Label,"BREAK"),e(zr.PopFrame),e(Hr.ExitList),e(zr.Jump,fa("FINALLY")),e(ha.Label,"ELSE"),i&&za(e,i)})))),sl.add(Xn.Let,((e,[,t,r])=>{Ha(e,r,ja(e,t))})),sl.add(Xn.WithDynamicVars,((e,[,t,r])=>{if(t){let[n,i]=t +ja(e,i),function(e,t,r){e(Hr.PushDynamicScope),e(Hr.BindDynamicScope,t),r(),e(Hr.PopDynamicScope)}(e,n,(()=>{za(e,r)}))}else za(e,r)})),sl.add(Xn.InvokeComponent,((e,[,t,r,n,i])=>{sa(t)?e(da.Component,t,(t=>{Qa(e,t,null,r,dl(n),i)})):Ya(e,t,null,r,n,i,!1,!1)})) +class hl{constructor(e,t,r,n="plain block"){_defineProperty(this,"compiled",null),this.statements=e,this.meta=t,this.symbolTable=r,this.moduleName=n}compile(e){return function(e,t){if(null!==e.compiled)return e.compiled +e.compiled=-1 +let{statements:r,meta:n}=e,i=fl(r,n,t) +return e.compiled=i,i}(this,e)}}function pl(e,t){let[r,n,i]=e.block +return new hl(r,La(e),{symbols:n,hasEval:i},t)}function fl(e,t,r){let n=sl,i=ol(r,t),{encoder:o,program:{constants:s,resolver:a}}=i +function l(...e){va(o,s,a,t,e)}for(const u of e)n.compile(l,u) +return i.encoder.commit(t.size)}class ml{constructor(e,t){_defineProperty(this,"symbolTable",void 0),_defineProperty(this,"compiled",null),_defineProperty(this,"attrsBlockNumber",void 0),this.layout=e,this.moduleName=t +let{block:r}=e,[,n,i]=r +n=n.slice() +let o=n.indexOf(Wa) +this.attrsBlockNumber=-1===o?n.push(Wa):o+1,this.symbolTable={hasEval:i,symbols:n}}compile(e){if(null!==this.compiled)return this.compiled +let t=La(this.layout),r=ol(e,t),{encoder:n,program:{constants:i,resolver:o}}=r +Ja((function(...e){va(n,i,o,t,e)}),this.layout,this.attrsBlockNumber) +let s=r.encoder.commit(t.size) +return"number"!=typeof s||(this.compiled=s),s}}let gl=0,yl={cacheHit:0,cacheMiss:0} +function bl({id:e,moduleName:t,block:r,scope:n,isStrictMode:i}){let o,s=e||"client-"+gl++,a=null,l=new WeakMap,u=e=>{if(void 0===o&&(o=JSON.parse(r)),void 0===e)return null===a?(yl.cacheMiss++,a=new _l({id:s,block:o,moduleName:t,owner:null,scope:n,isStrictMode:i})):yl.cacheHit++,a +let u=l.get(e) +return void 0===u?(yl.cacheMiss++,u=new _l({id:s,block:o,moduleName:t,owner:e,scope:n,isStrictMode:i}),l.set(e,u)):yl.cacheHit++,u} +return u.__id=s,u.__meta={moduleName:t},u}class _l{constructor(e){_defineProperty(this,"result","ok"),_defineProperty(this,"layout",null),_defineProperty(this,"wrappedLayout",null),this.parsedLayout=e}get moduleName(){return this.parsedLayout.moduleName}get id(){return this.parsedLayout.id}get referrer(){return{moduleName:this.parsedLayout.moduleName,owner:this.parsedLayout.owner}}asLayout(){return this.layout?this.layout:this.layout=pl(_t({},this.parsedLayout),this.moduleName)}asWrappedLayout(){return this.wrappedLayout?this.wrappedLayout:this.wrappedLayout=new ml(_t({},this.parsedLayout),this.moduleName)}}const vl=Object.defineProperty({__proto__:null,CompileTimeCompilationContextImpl:nl,DEFAULT_CAPABILITIES:{dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!1,elementHook:!1,dynamicScope:!0,createCaller:!1,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1},EMPTY_BLOCKS:Ea,MINIMAL_CAPABILITIES:{dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,dynamicScope:!1,createCaller:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1},StdLib:Sa,WrappedBuilder:ml,compilable:pl,compileStatements:fl,compileStd:el,debugCompiler:undefined,invokeStaticBlock:za,invokeStaticBlockWithStack:Ha,meta:La,programCompilationContext:il,templateCacheCounters:yl,templateCompilationContext:ol,templateFactory:bl},Symbol.toStringTag,{value:"Module"}),wl=Object.defineProperty({__proto__:null,createTemplateFactory:bl},Symbol.toStringTag,{value:"Module"}),Sl=bl({id:"tjANIXCV",block:'[[[46,[30,0],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/root.hbs",isStrictMode:!0}),Pl=Object.prototype +let El +const kl=A("undefined") +var Tl=function(e){return e[e.ADD=0]="ADD",e[e.ONCE=1]="ONCE",e[e.REMOVE=2]="REMOVE",e}(Tl||{}) +let Cl=1 +class Ol{constructor(e){_defineProperty(this,"_descriptors",void 0),_defineProperty(this,"_mixins",void 0),_defineProperty(this,"_isInit",void 0),_defineProperty(this,"_lazyChains",void 0),_defineProperty(this,"_values",void 0),_defineProperty(this,"_revisions",void 0),_defineProperty(this,"source",void 0),_defineProperty(this,"proto",void 0),_defineProperty(this,"_parent",void 0),_defineProperty(this,"_listeners",void 0),_defineProperty(this,"_listenersVersion",1),_defineProperty(this,"_inheritedEnd",-1),_defineProperty(this,"_flattenedVersion",0),this._parent=void 0,this._descriptors=void 0,this._mixins=void 0,this._lazyChains=void 0,this._values=void 0,this._revisions=void 0,this._isInit=!1,this.source=e,this.proto=void 0===e.constructor?void 0:e.constructor.prototype,this._listeners=void 0}get parent(){let e=this._parent +if(void 0===e){let t=Al(this.source) +this._parent=e=null===t||t===Pl?null:Dl(t)}return e}setInitializing(){this._isInit=!0}unsetInitializing(){this._isInit=!1}isInitializing(){return this._isInit}isPrototypeMeta(e){return this.proto===this.source&&this.source===e}_getOrCreateOwnMap(e){return this[e]||(this[e]=Object.create(null))}_getOrCreateOwnSet(e){return this[e]||(this[e]=new Set)}_findInheritedMap(e,t){let r=this +for(;null!==r;){let n=r[e] +if(void 0!==n){let e=n.get(t) +if(void 0!==e)return e}r=r.parent}}_hasInInheritedSet(e,t){let r=this +for(;null!==r;){let n=r[e] +if(void 0!==n&&n.has(t))return!0 +r=r.parent}return!1}valueFor(e){let t=this._values +return void 0!==t?t[e]:void 0}setValueFor(e,t){this._getOrCreateOwnMap("_values")[e]=t}revisionFor(e){let t=this._revisions +return void 0!==t?t[e]:void 0}setRevisionFor(e,t){this._getOrCreateOwnMap("_revisions")[e]=t}writableLazyChainsFor(e){let t=this._getOrCreateOwnMap("_lazyChains"),r=t[e] +return void 0===r&&(r=t[e]=[]),r}readableLazyChainsFor(e){let t=this._lazyChains +if(void 0!==t)return t[e]}addMixin(e){this._getOrCreateOwnSet("_mixins").add(e)}hasMixin(e){return this._hasInInheritedSet("_mixins",e)}forEachMixins(e){let t,r=this +for(;null!==r;){let n=r._mixins +void 0!==n&&(t=void 0===t?new Set:t,n.forEach((r=>{t.has(r)||(t.add(r),e(r))}))),r=r.parent}}writeDescriptors(e,t){(this._descriptors||(this._descriptors=new Map)).set(e,t)}peekDescriptors(e){let t=this._findInheritedMap("_descriptors",e) +return t===kl?void 0:t}removeDescriptors(e){this.writeDescriptors(e,kl)}forEachDescriptors(e){let t,r=this +for(;null!==r;){let n=r._descriptors +void 0!==n&&(t=void 0===t?new Set:t,n.forEach(((r,n)=>{t.has(n)||(t.add(n),r!==kl&&e(n,r))}))),r=r.parent}}addToListeners(e,t,r,n,i){this.pushListener(e,t,r,n?Tl.ONCE:Tl.ADD,i)}removeFromListeners(e,t,r){this.pushListener(e,t,r,Tl.REMOVE)}pushListener(e,t,r,n,i=!1){let o=this.writableListeners(),s=Nl(o,e,t,r) +if(-1!==s&&s0&&(e.splice(0,this._inheritedEnd),this._inheritedEnd=0) +for(let r of t){-1===Nl(e,r.event,r.target,r.method)&&(e.unshift(r),this._inheritedEnd++)}}}this._flattenedVersion=Cl}return this._listeners}matchingListeners(e){let t,r=this.flattenedListeners() +if(void 0!==r)for(let n of r)n.event!==e||n.kind!==Tl.ADD&&n.kind!==Tl.ONCE||(void 0===t&&(t=[]),t.push(n.target,n.method,n.kind===Tl.ONCE)) +return t}observerEvents(){let e,t=this.flattenedListeners() +if(void 0!==t)for(let r of t)r.kind!==Tl.ADD&&r.kind!==Tl.ONCE||-1===r.event.indexOf(":change")||(void 0===e&&(e=[]),e.push(r)) +return e}}const Al=Object.getPrototypeOf,Rl=new WeakMap +function xl(e,t){Rl.set(e,t)}function Ml(e){let t=Rl.get(e) +if(void 0!==t)return t +let r=Al(e) +for(;null!==r;){if(t=Rl.get(r),void 0!==t)return t.proto!==r&&(t.proto=r),t +r=Al(r)}return null}const Dl=function(e){let t=Ml(e) +if(null!==t&&t.source===e)return t +let r=new Ol(e) +return xl(e,r),r} +function Nl(e,t,r,n){for(let i=e.length-1;i>=0;i--){let o=e[i] +if(o.event===t&&o.target===r&&o.method===n)return i}return-1}const Il=Object.defineProperty({__proto__:null,Meta:Ol,UNDEFINED:kl,counters:El,meta:Dl,peekMeta:Ml,setMeta:xl},Symbol.toStringTag,{value:"Module"}),jl=Object.defineProperty({__proto__:null,Meta:Ol,UNDEFINED:kl,counters:El,meta:Dl,peekMeta:Ml,setMeta:xl},Symbol.toStringTag,{value:"Module"}) +function Ll(e,t,r,n,i,o=!0){n||"function"!=typeof r||(n=r,r=null),Dl(e).addToListeners(t,r,n,!0===i,o)}function Bl(e,t,r,n){let i,o +"object"==typeof r?(i=r,o=n):(i=null,o=r),Dl(e).removeFromListeners(t,i,o)}function Fl(e,t,r,n,i){if(void 0===n){let r=void 0===i?Ml(e):i +n=null!==r?r.matchingListeners(t):void 0}if(void 0===n||0===n.length)return!1 +for(let o=n.length-3;o>=0;o-=3){let i=n[o],s=n[o+1],a=n[o+2] +if(!s)continue +a&&Bl(e,t,i,s),i||(i=e) +let l=typeof s +"string"!==l&&"symbol"!==l||(s=i[s]),s.apply(i,r)}return!0}function Ul(e,t){let r=Ml(e) +if(null===r)return!1 +let n=r.matchingListeners(t) +return void 0!==n&&n.length>0}function zl(...e){let t=e.pop() +return V(t,e),t}const Hl=setTimeout,Vl=()=>{} +function $l(e){if("function"==typeof Promise){const t=Promise.resolve() +return()=>t.then(e)}if("function"==typeof MutationObserver){let t=0,r=new MutationObserver(e),n=document.createTextNode("") +return r.observe(n,{characterData:!0}),()=>(t=++t%2,n.data=""+t,t)}return()=>Hl(e,0)}function ql(e){let t=Vl +return{setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),now:()=>Date.now(),next:$l(e),clearNext:t}}const Gl=/\d+/ +function Wl(e){let t=typeof e +return"number"===t&&e==e||"string"===t&&Gl.test(e)}function Ql(e){return e.onError||e.onErrorTarget&&e.onErrorTarget[e.onErrorMethod]}function Yl(e,t,r){let n=-1 +for(let i=0,o=r.length;i=t[r]?i=r+6:o=r +return e>=t[i]?i+6:i}class Zl{constructor(e,t={},r={}){this._queueBeingFlushed=[],this.targetQueues=new Map,this.index=0,this._queue=[],this.name=e,this.options=t,this.globalOptions=r}stackFor(e){if(e0){let e=Ql(this.globalOptions) +o=e?this.invokeWithOnError:this.invoke +for(let s=this.index;s0&&this.flush(!0)}hasWork(){return this._queueBeingFlushed.length>0||this._queue.length>0}cancel({target:e,method:t}){let r=this._queue,n=this.targetQueues.get(e) +void 0!==n&&n.delete(t) +let i=Yl(e,t,r) +return i>-1?(r[i+1]=null,!0):(r=this._queueBeingFlushed,i=Yl(e,t,r),i>-1&&(r[i+1]=null,!0))}push(e,t,r,n){return this._queue.push(e,t,r,n),{queue:this,target:e,method:t}}pushUnique(e,t,r,n){let i=this.targetQueues.get(e) +void 0===i&&(i=new Map,this.targetQueues.set(e,i)) +let o=i.get(t) +if(void 0===o){let o=this._queue.push(e,t,r,n)-4 +i.set(t,o)}else{let e=this._queue +e[o+2]=r,e[o+3]=n}return{queue:this,target:e,method:t}}_getDebugInfo(e){if(e){return Jl(this._queue,4)}}invoke(e,t,r){void 0===r?t.call(e):t.apply(e,r)}invokeWithOnError(e,t,r,n,i){try{void 0===r?t.call(e):t.apply(e,r)}catch(o){n(o,i)}}}class eu{constructor(e=[],t){this.queues={},this.queueNameIndex=0,this.queueNames=e,e.reduce((function(e,r){return e[r]=new Zl(r,t[r],t),e}),this.queues)}schedule(e,t,r,n,i,o){let s=this.queues[e] +if(void 0===s)throw new Error(`You attempted to schedule an action in a queue (${e}) that doesn't exist`) +if(null==r)throw new Error(`You attempted to schedule an action in a queue (${e}) for a method that doesn't exist`) +return this.queueNameIndex=0,i?s.pushUnique(t,r,n,o):s.push(t,r,n,o)}flush(e=!1){let t,r,n=this.queueNames.length +for(;this.queueNameIndexi){let t=n-i +e=new Array(t) +for(let r=0;r{Eu++,!1!==this._autorun&&(this._autorun=!1,this._autorunStack=null,this._end(!0))} +let r=this.options._buildPlatform||ql +this._platform=r(this._boundAutorunEnd)}get counters(){return{begin:au,end:lu,events:{begin:uu,end:0},autoruns:{created:Pu,completed:Eu},run:cu,join:du,defer:hu,schedule:pu,scheduleIterable:fu,deferOnce:mu,scheduleOnce:gu,setTimeout:yu,later:bu,throttle:_u,debounce:vu,cancelTimers:wu,cancel:Su,loops:{total:ku,nested:Tu}}}get defaultQueue(){return this._defaultQueue}begin(){au++ +let e,t=this.options,r=this.currentInstance +return!1!==this._autorun?(e=r,this._cancelAutorun()):(null!==r&&(Tu++,this.instanceStack.push(r)),ku++,e=this.currentInstance=new eu(this.queueNames,t),uu++,this._trigger("begin",e,r)),this._onBegin(e,r),e}end(){lu++,this._end(!1)}on(e,t){if("function"!=typeof t)throw new TypeError("Callback must be a function") +let r=this._eventCallbacks[e] +if(void 0===r)throw new TypeError(`Cannot on() event ${e} because it does not exist`) +r.push(t)}off(e,t){let r=this._eventCallbacks[e] +if(!e||void 0===r)throw new TypeError(`Cannot off() event ${e} because it does not exist`) +let n=!1 +if(t)for(let i=0;i0&&Wl(r[i-1])&&(n=parseInt(r.pop(),10)) +return[e,t,r,n]}(...arguments) +return this._later(e,t,r,n)}throttle(){_u++ +let e,[t,r,n,i,o=!0]=ou(...arguments),s=Kl(t,r,this._timers) +if(-1===s)e=this._later(t,r,o?nu:n,i),o&&this._join(t,r,n) +else{e=this._timers[s+1] +let t=s+4 +this._timers[t]!==nu&&(this._timers[t]=n)}return e}debounce(){vu++ +let e,[t,r,n,i,o=!1]=ou(...arguments),s=this._timers,a=Kl(t,r,s) +if(-1===a)e=this._later(t,r,o?nu:n,i),o&&this._join(t,r,n) +else{let o=this._platform.now()+i,l=a+4 +s[l]===nu&&(n=nu),e=s[a+1] +let u=Xl(o,s) +if(a+6===u)s[a]=o,s[l]=n +else{let i=this._timers[a+5] +this._timers.splice(u,0,o,e,t,r,n,i),this._timers.splice(a,6)}0===a&&this._reinstallTimerTimeout()}return e}cancelTimers(){wu++,this._clearTimerTimeout(),this._timers=[],this._cancelAutorun()}hasTimers(){return this._timers.length>0||this._autorun}cancel(e){if(Su++,null==e)return!1 +let t=typeof e +return"number"===t?this._cancelLaterTimer(e):!("object"!==t||!e.queue||!e.method)&&e.queue.cancel(e)}ensureInstance(){this._ensureInstance()}getDebugInfo(){if(this.DEBUG)return{autorun:this._autorunStack,counters:this.counters,timers:Jl(this._timers,6,2),instanceStack:[this.currentInstance,...this.instanceStack].map((e=>e&&e._getDebugInfo(this.DEBUG)))}}_end(e){let t=this.currentInstance,r=null +if(null===t)throw new Error("end called without begin") +let n,i=!1 +try{n=t.flush(e)}finally{if(!i)if(i=!0,1===n){const e=this.queueNames[t.queueNameIndex] +this._scheduleAutorun(e)}else this.currentInstance=null,this.instanceStack.length>0&&(r=this.instanceStack.pop(),this.currentInstance=r),this._trigger("end",t,r),this._onEnd(t,r)}}_join(e,t,r){return null===this.currentInstance?this._run(e,t,r):void 0===e&&void 0===r?t():t.apply(e,r)}_run(e,t,r){let n=Ql(this.options) +if(this.begin(),n)try{return t.apply(e,r)}catch(i){n(i)}finally{this.end()}else try{return t.apply(e,r)}finally{this.end()}}_cancelAutorun(){this._autorun&&(this._platform.clearNext(),this._autorun=!1,this._autorunStack=null)}_later(e,t,r,n){let i=this.DEBUG?new Error:void 0,o=this._platform.now()+n,s=su++ +if(0===this._timers.length)this._timers.push(o,s,e,t,r,i),this._installTimerTimeout() +else{let n=Xl(o,this._timers) +this._timers.splice(n,0,o,s,e,t,r,i),this._reinstallTimerTimeout()}return s}_cancelLaterTimer(e){for(let t=1;t0&&(this.begin(),this._scheduleExpiredTimers(),this.end())}_scheduleExpiredTimers(){let e=this._timers,t=0,r=e.length,n=this._defaultQueue,i=this._platform.now() +for(;ti)break +let r=e[t+4] +if(r!==nu){let i=e[t+2],o=e[t+3],s=e[t+5] +this.currentInstance.schedule(n,i,o,r,!1,s)}}e.splice(0,t),this._installTimerTimeout()}_reinstallTimerTimeout(){this._clearTimerTimeout(),this._installTimerTimeout()}_clearTimerTimeout(){null!==this._timerTimeoutId&&(this._platform.clearTimeout(this._timerTimeoutId),this._timerTimeoutId=null)}_installTimerTimeout(){if(0===this._timers.length)return +let e=this._timers[0],t=this._platform.now(),r=Math.max(0,e-t) +this._timerTimeoutId=this._platform.setTimeout(this._boundRunExpiredTimers,r)}_ensureInstance(){let e=this.currentInstance +return null===e&&(this._autorunStack=this.DEBUG?new Error:void 0,e=this.begin(),this._scheduleAutorun(this.queueNames[0])),e}_scheduleAutorun(e){Pu++ +const t=this._platform.next,r=this.options.flush +r?r(e,t):t(),this._autorun=!0}}Cu.Queue=Zl,Cu.buildPlatform=ql,Cu.buildNext=$l +const Ou=Object.defineProperty({__proto__:null,buildPlatform:ql,default:Cu},Symbol.toStringTag,{value:"Module"}) +let Au=null +function Ru(){return Au}const xu=`${Math.random()}${Date.now()}`.replace(".",""),Mu=["actions","routerTransitions","render","afterRender","destroy",xu],Du=new Cu(Mu,{defaultQueue:"actions",onBegin:function(e){Au=e},onEnd:function(e,t){Au=t,ic()},onErrorTarget:Rr,onErrorMethod:"onerror",flush:function(e,t){"render"!==e&&e!==xu||ic(),t()}}) +function Nu(...e){return Du.run(...e)}function Iu(e,t,...r){return Du.join(e,t,...r)}function ju(...e){return(...t)=>Iu(...e.concat(t))}function Lu(...e){return Du.schedule(...e)}function Bu(){return Du.hasTimers()}function Fu(...e){return Du.scheduleOnce("actions",...e)}function Uu(...e){return Du.scheduleOnce(...e)}function zu(...e){return Du.later(...e,1)}function Hu(e){return Du.cancel(e)}const Vu=Object.defineProperty({__proto__:null,_backburner:Du,_cancelTimers:function(){Du.cancelTimers()},_getCurrentRunLoop:Ru,_hasScheduledTimers:Bu,_queues:Mu,_rsvpErrorQueue:xu,begin:function(){Du.begin()},bind:ju,cancel:Hu,debounce:function(...e){return Du.debounce(...e)},end:function(){Du.end()},join:Iu,later:function(...e){return Du.later(...e)},next:zu,once:Fu,run:Nu,schedule:Lu,scheduleOnce:Uu,throttle:function(...e){return Du.throttle(...e)}},Symbol.toStringTag,{value:"Module"}),$u=":change" +function qu(e){return e+$u}const Gu=!ce._DEFAULT_ASYNC_OBSERVERS,Wu=new Map,Qu=new Map +function Yu(e,t,r,n,i=Gu){let o=qu(t) +Ll(e,o,r,n,!1,i) +let s=Ml(e) +null!==s&&(s.isPrototypeMeta(e)||s.isInitializing())||Xu(e,o,i)}function Ku(e,t,r,n,i=Gu){let o=qu(t),s=Ml(e) +null!==s&&(s.isPrototypeMeta(e)||s.isInitializing())||tc(e,o,i),Bl(e,o,r,n)}function Ju(e,t){let r=!0===t?Wu:Qu +return r.has(e)||(r.set(e,new Map),Ti(e,(()=>function(e){Wu.size>0&&Wu.delete(e) +Qu.size>0&&Qu.delete(e)}(e)),!0)),r.get(e)}function Xu(e,t,r=!1){let n=Ju(e,r) +if(n.has(t))n.get(t).count++ +else{let r=t.substring(0,t.lastIndexOf(":")),i=Rc(e,r,io(e),Ml(e)) +n.set(t,{count:1,path:r,tag:i,lastRevision:Bi(i),suspended:!1})}}let Zu=!1,ec=[] +function tc(e,t,r=!1){if(!0===Zu)return void ec.push([e,t,r]) +let n=!0===r?Wu:Qu,i=n.get(e) +if(void 0!==i){let r=i.get(t) +r.count--,0===r.count&&(i.delete(t),0===i.size&&n.delete(e))}}function rc(e){Qu.has(e)&&Qu.get(e).forEach((t=>{t.tag=Rc(e,t.path,io(e),Ml(e)),t.lastRevision=Bi(t.tag)})),Wu.has(e)&&Wu.get(e).forEach((t=>{t.tag=Rc(e,t.path,io(e),Ml(e)),t.lastRevision=Bi(t.tag)}))}let nc=0 +function ic(e=!0){let t=Bi(Ji) +nc!==t&&(nc=t,Qu.forEach(((t,r)=>{let n=Ml(r) +t.forEach(((t,i)=>{if(!Fi(t.tag,t.lastRevision)){let o=()=>{try{Fl(r,i,[r,t.path],void 0,n)}finally{t.tag=Rc(r,t.path,io(r),Ml(r)),t.lastRevision=Bi(t.tag)}} +e?Lu("actions",o):o()}}))})))}function oc(){Wu.forEach(((e,t)=>{let r=Ml(t) +e.forEach(((e,n)=>{if(!e.suspended&&!Fi(e.tag,e.lastRevision))try{e.suspended=!0,Fl(t,n,[t,e.path],void 0,r)}finally{e.tag=Rc(t,e.path,io(t),Ml(t)),e.lastRevision=Bi(e.tag),e.suspended=!1}}))}))}function sc(e,t,r){let n=Wu.get(e) +if(!n)return +let i=n.get(qu(t)) +i&&(i.suspended=r)}const ac=A("SELF_TAG") +function lc(e,t,r=!1,n){let i=hs(e) +return void 0!==i?i(e,t,r):oo(e,t,n)}function uc(e){return b(e)?oo(e,ac):Gi}function cc(e,t){no(e,t),no(e,ac)}const dc=Symbol("PROPERTY_DID_CHANGE") +let hc=0 +function pc(e,t,r,n){let i=void 0===r?Ml(e):r +null!==i&&(i.isInitializing()||i.isPrototypeMeta(e))||(cc(e,t),hc<=0&&oc(),dc in e&&(4===arguments.length?e[dc](t,n):e[dc](t)))}function fc(){hc++,Zu=!0}function mc(){hc--,hc<=0&&(oc(),function(){Zu=!1 +for(let[e,t,r]of ec)tc(e,t,r) +ec=[]}())}function gc(e){fc() +try{e()}finally{mc()}}function yc(e,t,r,n){return void 0===t?(t=0,r=n=-1):(void 0===r&&(r=-1),void 0===n&&(n=-1)),Fl(e,"@array:before",[e,t,r,n]),e}function bc(e,t,r,n,i=!0){void 0===t?(t=0,r=n=-1):(void 0===r&&(r=-1),void 0===n&&(n=-1)) +let o=Ml(e) +if(i&&((n<0||r<0||n-r!=0)&&pc(e,"length",o),pc(e,"[]",o)),Fl(e,"@array:change",[e,t,r,n]),null!==o){let i=-1===r?0:r,s=e.length-((-1===n?0:n)-i),a=t<0?s+t:t +if(void 0!==o.revisionFor("firstObject")&&0===a&&pc(e,"firstObject",o),void 0!==o.revisionFor("lastObject")){s-10&&this._property(...e)}setup(e,t,r,n){if(super.setup(e,t,r,n),!1===this._hasConfig){let{get:e,set:t}=r +void 0!==e&&(this._getter=e),void 0!==t&&(this._setter=function(r,n){let i=t.call(this,n) +return void 0!==e&&void 0===i?e.call(this):i})}}_property(...e){let t=[] +function r(e){t.push(e)}for(let n of e)qc(n,r) +this._dependentKeys=t}get(e,t){let r,n=Dl(e),i=io(e),o=oo(e,t,i),s=n.revisionFor(t) +if(void 0!==s&&Fi(o,s))r=n.valueFor(t) +else{let{_getter:s,_dependentKeys:a}=this +Eo((()=>{r=s.call(e,t)})),void 0!==a&&Vi(o,Ac(e,a,i,n)),n.setValueFor(t,r),n.setRevisionFor(t,Bi(o)),Oc(n,t,r)}return mo(o),Array.isArray(r)&&mo(oo(r,"[]")),r}set(e,t,r){this._readOnly&&this._throwReadOnlyError(e,t) +let n,i=Dl(e) +i.isInitializing()&&void 0!==this._dependentKeys&&this._dependentKeys.length>0&&"function"==typeof e[dc]&&e.isComponent&&Yu(e,t,(()=>{e[dc](t)}),void 0,!0) +try{fc(),n=this._set(e,t,r,i),Oc(i,t,n) +let o=io(e),s=oo(e,t,o),{_dependentKeys:a}=this +void 0!==a&&Vi(s,Ac(e,a,o,i)),i.setRevisionFor(t,Bi(s))}finally{mc()}return n}_throwReadOnlyError(e,t){throw new Error(`Cannot set read-only property "${t}" on object: ${Re(e)}`)}_set(e,t,r,n){let i,o=void 0!==n.revisionFor(t),s=n.valueFor(t),{_setter:a}=this +sc(e,t,!0) +try{i=a.call(e,t,r,s)}finally{sc(e,t,!1)}return o&&s===i||(n.setValueFor(t,i),pc(e,t,n,r)),i}teardown(e,t,r){void 0!==r.revisionFor(t)&&(r.setRevisionFor(t,void 0),r.setValueFor(t,void 0)),super.teardown(e,t,r)}}class Yc extends Qc{get(e,t){let r,n=Dl(e),i=io(e),o=oo(e,t,i),s=n.revisionFor(t) +if(void 0!==s&&Fi(o,s))r=n.valueFor(t) +else{let{_getter:i}=this,s=Po((()=>{r=i.call(e,t)})) +Vi(o,s),n.setValueFor(t,r),n.setRevisionFor(t,Bi(o)),Oc(n,t,r)}return mo(o),Array.isArray(r)&&mo(oo(r,"[]",i)),r}}class Kc extends Function{readOnly(){return zc(this)._readOnly=!0,this}meta(e){let t=zc(this) +return 0===arguments.length?t._meta||{}:(t._meta=e,this)}get _getter(){return zc(this)._getter}set enumerable(e){zc(this).enumerable=e}}function Jc(...e){if(Mc(e)){return Bc(new Qc([]),Kc)(e[0],e[1],e[2])}return Bc(new Qc(e),Kc)}function Xc(...e){return Bc(new Yc(e),Kc)}function Zc(e,t){return Boolean(Uc(e,t))}function ed(e,t){let r=Ml(e) +return r?r.valueFor(t):void 0}function td(e,t,r,n,i){let o=void 0===i?Dl(e):i,s=Uc(e,t,o),a=void 0!==s +a&&s.teardown(e,t,o),Hc(r)?rd(e,t,r,o):null==r?nd(e,t,n,a,!0):Object.defineProperty(e,t,r),o.isPrototypeMeta(e)||rc(e)}function rd(e,t,r,n){let i +return i=r(e,t,void 0,n),Object.defineProperty(e,t,i),r}function nd(e,t,r,n,i=!0){return!0===n||!1===i?Object.defineProperty(e,t,{configurable:!0,enumerable:i,writable:!0,value:r}):e[t]=r,r}const id=new WeakSet +function od(e){id.add(e)}function sd(e){return id.has(e)}const ad=Object.defineProperty({__proto__:null,isEmberArray:sd,setEmberArray:od},Symbol.toStringTag,{value:"Module"}),ld=new ne(1e3,(e=>e.indexOf("."))) +function ud(e){return"string"==typeof e&&-1!==ld.get(e)}const cd=A("PROXY_CONTENT") +function dd(e){return"object"==typeof e&&null!==e&&"function"==typeof e.unknownProperty}function hd(e,t){return ud(t)?fd(e,t):pd(e,t)}function pd(e,t){if(null==e)return +let r +return"object"==typeof e||"function"==typeof e?(r=e[t],void 0===r&&"object"==typeof e&&!(t in e)&&dd(e)&&(r=e.unknownProperty(t)),fo()&&(mo(oo(e,t)),(Array.isArray(r)||sd(r))&&mo(oo(r,"[]")))):r=e[t],r}function fd(e,t,r){let n="string"==typeof t?t.split("."):t +for(let i of n){if(null==e||e.isDestroyed)return +if(r&&("__proto__"===i||"constructor"===i))return +e=pd(e,i)}return e}pd("foo","a"),pd("foo",1),pd({},"a"),pd({},1),pd({unknownProperty(){}},"a"),pd({unknownProperty(){}},1),hd({},"foo"),hd({},"foo.bar") +let md={} +function gd(e,t,r,n){return e.isDestroyed?r:ud(t)?function(e,t,r,n){let i=t.split("."),o=i.pop(),s=fd(e,i,!0) +if(null!=s)return gd(s,o,r) +if(!n)throw new Error(`Property set failed: object in path "${i.join(".")}" could not be found.`)}(e,t,r,n):yd(e,t,r)}function yd(e,t,r){let n,i=W(e,t) +return null!==i&&Lc.has(i.set)?(e[t]=r,r):(n=e[t],void 0!==n||"object"!=typeof e||t in e||"function"!=typeof e.setUnknownProperty?(e[t]=r,n!==r&&pc(e,t)):e.setUnknownProperty(t,r),r)}function bd(e,t,r){return gd(e,t,r,!0)}function _d(e){return Bc(new wd(e),vd)}re(md),Po((()=>pd({},"a"))),Po((()=>pd({},1))),Po((()=>pd({a:[]},"a"))),Po((()=>pd({a:md},"a"))) +class vd extends Function{readOnly(){return zc(this).readOnly(),this}oneWay(){return zc(this).oneWay(),this}meta(e){let t=zc(this) +if(0===arguments.length)return t._meta||{} +t._meta=e}}class wd extends Nc{constructor(e){super(),_defineProperty(this,"altKey",void 0),this.altKey=e}setup(e,t,r,n){super.setup(e,t,r,n),Cc.add(this)}get(e,t){let r,n=Dl(e),i=io(e),o=oo(e,t,i) +Eo((()=>{r=hd(e,this.altKey)})) +let s=n.revisionFor(t) +return void 0!==s&&Fi(o,s)||(Vi(o,Rc(e,this.altKey,i,n)),n.setRevisionFor(t,Bi(o)),Oc(n,t,r)),mo(o),r}set(e,t,r){return gd(e,this.altKey,r)}readOnly(){this.set=Sd}oneWay(){this.set=Pd}}function Sd(e,t){throw new Error(`Cannot set read-only property '${t}' on object: ${Re(e)}`)}function Pd(e,t,r){return td(e,t,null),gd(e,t,r)}const Ed=new WeakMap +class kd{constructor(){_defineProperty(this,"_registry",void 0),_defineProperty(this,"_coreLibIndex",void 0),_defineProperty(this,"isRegistered",void 0),_defineProperty(this,"logVersions",void 0),this._registry=[],this._coreLibIndex=0}_getLibraryByName(e){let t=this._registry +for(let r of t)if(r.name===e)return r}register(e,t,r){let n=this._registry.length +this._getLibraryByName(e)||(r&&(n=this._coreLibIndex++),this._registry.splice(n,0,{name:e,version:t}))}registerCoreLibrary(e,t){this.register(e,t,!0)}deRegister(e){let t,r=this._getLibraryByName(e) +r&&(t=this._registry.indexOf(r),this._registry.splice(t,1))}}const Td=new kd +function Cd(e,t){let r,n={},i=1 +for(2===arguments.length&&Array.isArray(t)?(i=0,r=arguments[1]):r=Array.from(arguments);i{let r=Object.keys(t) +for(let n of r)gd(e,n,t[n])})),t}function Ad(e,...t){let r,n +Mc(t)?r=t:"string"==typeof t[0]&&(n=t[0]) +let i=Jc({get:function(t){return(Zt(this)||this.container).lookup(`${e}:${n||t}`)},set(e,t){td(this,e,null,t)}}) +return r?i(r[0],r[1],r[2]):i}function Rd(...e){if(!Mc(e)){let t=e[0],r=t?t.initializer:void 0,n=t?t.value:void 0,i=function(e,t,i,o,s){return xd([e,t,{initializer:r||(()=>n)}])} +return Vc(i),i}return xd(e)}function xd([e,t,r]){let{getter:n,setter:i}=ko(t,r?r.initializer:void 0) +function o(){let e=n(this) +return(Array.isArray(e)||sd(e))&&mo(oo(e,"[]")),e}function s(e){i(this,e),no(this,ac)}let a={enumerable:!0,configurable:!0,isTracked:!0,get:o,set:s} +return Lc.add(s),Dl(e).writeDescriptors(t,new Md(o,s)),a}Td.registerCoreLibrary("Ember",br) +class Md{constructor(e,t){this._get=e,this._set=t,Cc.add(this)}get(e){return this._get.call(e)}set(e,t,r){this._set.call(e,r)}}const Dd=(...e)=>{const[t,r,n]=e,i=new WeakMap,o=n.get +n.get=function(){return i.has(this)||i.set(this,vo(o.bind(this))),wo(i.get(this))}},Nd=Object.prototype.hasOwnProperty +let Id=!1 +const jd={_set:0,_unprocessedNamespaces:!1,get unprocessedNamespaces(){return this._unprocessedNamespaces},set unprocessedNamespaces(e){this._set++,this._unprocessedNamespaces=e}} +let Ld=!1 +const Bd=[],Fd=Object.create(null) +function Ud(e){jd.unprocessedNamespaces=!0,Bd.push(e)}function zd(e){let t=J(e) +delete Fd[t],Bd.splice(Bd.indexOf(e),1),t in ae.lookup&&e===ae.lookup[t]&&(ae.lookup[t]=void 0)}function Hd(){if(!jd.unprocessedNamespaces)return +let e=ae.lookup,t=Object.keys(e) +for(let n of t){if(!((r=n.charCodeAt(0))>=65&&r<=90))continue +let t=Jd(e,n) +t&&K(t,n)}var r}function Vd(e){return Id||qd(),Fd[e]}function $d(e){Yd([e.toString()],e,new Set)}function qd(){let e=jd.unprocessedNamespaces +if(e&&(Hd(),jd.unprocessedNamespaces=!1),e||Ld){let e=Bd +for(let t of e)$d(t) +Ld=!1}}function Gd(){return Id}function Wd(e){Id=Boolean(e)}function Qd(){Ld=!0}function Yd(e,t,r){let n=e.length,i=e.join(".") +Fd[i]=t,K(t,i) +for(let o in t){if(!Nd.call(t,o))continue +let i=t[o] +if(e[n]=o,i&&void 0===J(i))K(i,e.join(".")) +else if(i&&Kd(i)){if(r.has(i))continue +r.add(i),Yd(e,i,r)}}e.length=n}function Kd(e){return null!=e&&"object"==typeof e&&e.isNamespace}function Jd(e,t){try{let r=e[t] +return(null!==r&&"object"==typeof r||"function"==typeof r)&&r.isNamespace&&r}catch(r){}}const Xd=Object.defineProperty({__proto__:null,ASYNC_OBSERVERS:Qu,ComputedDescriptor:Nc,ComputedProperty:Qc,DEBUG_INJECTION_FUNCTIONS:undefined,Libraries:kd,NAMESPACES:Bd,NAMESPACES_BY_ID:Fd,PROPERTY_DID_CHANGE:dc,PROXY_CONTENT:cd,SYNC_OBSERVERS:Wu,TrackedDescriptor:Md,_getPath:fd,_getProp:pd,_setProp:yd,activateObserver:Xu,addArrayObserver:kc,addListener:Ll,addNamespace:Ud,addObserver:Yu,alias:_d,arrayContentDidChange:bc,arrayContentWillChange:yc,autoComputed:Xc,beginPropertyChanges:fc,cached:Dd,changeProperties:gc,computed:Jc,createCache:vo,defineDecorator:rd,defineProperty:td,defineValue:nd,deprecateProperty:function(e,t,r,n){Object.defineProperty(e,t,{configurable:!0,enumerable:!1,set(e){gd(this,r,e)},get(){return hd(this,r)}})},descriptorForDecorator:zc,descriptorForProperty:Uc,eachProxyArrayDidChange:function(e,t,r,n){let i=Ed.get(e) +void 0!==i&&i.arrayDidChange(e,t,r,n)},eachProxyArrayWillChange:function(e,t,r,n){let i=Ed.get(e) +void 0!==i&&i.arrayWillChange(e,t,r,n)},endPropertyChanges:mc,expandProperties:qc,findNamespace:Vd,findNamespaces:Hd,flushAsyncObservers:ic,get:hd,getCachedValueFor:ed,getProperties:Cd,getValue:wo,hasListeners:Ul,hasUnknownProperty:dd,inject:Ad,isClassicDecorator:Hc,isComputed:Zc,isConst:So,isElementDescriptor:Mc,isNamespaceSearchDisabled:Gd,libraries:Td,makeComputedDecorator:Bc,markObjectAsDirty:cc,nativeDescDecorator:Dc,notifyPropertyChange:pc,objectAt:vc,on:zl,processAllNamespaces:qd,processNamespace:$d,removeArrayObserver:Tc,removeListener:Bl,removeNamespace:zd,removeObserver:Ku,replace:wc,replaceInNativeArray:Pc,revalidateObservers:rc,sendEvent:Fl,set:gd,setClassicDecorator:Vc,setNamespaceSearchDisabled:Wd,setProperties:Od,setUnprocessedMixins:Qd,tagForObject:uc,tagForProperty:lc,tracked:Rd,trySet:bd},Symbol.toStringTag,{value:"Module"}),Zd=Object.defineProperty({__proto__:null,addListener:Ll,removeListener:Bl,sendEvent:Fl},Symbol.toStringTag,{value:"Module"}),eh=Array.prototype.concat +function th(e,t,r,n){let i=r[e]||n[e] +return t[e]&&(i=i?eh.call(i,t[e]):t[e]),i}function rh(e,t,r,n){if(!0===r)return t +let i=r._getter +if(void 0===i)return t +let o=n[e],s="function"==typeof o?zc(o):o +if(void 0===s||!0===s)return t +let a=s._getter +if(void 0===a)return t +let l,u=q(i,a),c=r._setter,d=s._setter +if(l=void 0!==d?void 0!==c?q(c,d):d:c,u!==i||l!==c){let e=r._dependentKeys||[],t=new Qc([...e,{get:u,set:l}]) +return t._readOnly=r._readOnly,t._meta=r._meta,t.enumerable=r.enumerable,Bc(t,Qc)}return t}function nh(e,t,r,n){if(void 0!==n[e])return t +let i=r[e] +return"function"==typeof i?q(t,i):t}function ih(e){return e?Array.isArray(e)?e:[e]:[]}function oh(e,t,r){return ih(r[e]).concat(ih(t))}function sh(e,t,r){let n=r[e] +if(!n)return t +let i=Object.assign({},n),o=!1,s=Object.keys(t) +for(let a of s){let e=t[a] +"function"==typeof e?(o=!0,i[a]=nh(a,e,n,{})):i[a]=e}return o&&(i._super=j),i}function ah(e,t,r,n,i,o,s){let a +for(let l=0;l{let t=o.indexOf(e);-1!==t&&o.splice(t,1)})))}else lh(t,a,r,n,i,o,s)}function lh(e,t,r,n,i,o,s){let a=th("concatenatedProperties",t,n,i),l=th("mergedProperties",t,n,i),u=Object.keys(t) +for(let c of u){let u=t[c] +if(void 0===u)continue +if(-1===o.indexOf(c)){o.push(c) +let t=e.peekDescriptors(c) +if(void 0===t){if(!Hc(u)){let e=n[c]=i[c] +"function"==typeof e&&uh(i,c,e,!1)}}else r[c]=t,s.push(c),t.teardown(i,c,e)}let d="function"==typeof u +if(d){let e=zc(u) +if(void 0!==e){r[c]=rh(c,u,e,r),n[c]=void 0 +continue}}a&&a.indexOf(c)>=0||"concatenatedProperties"===c||"mergedProperties"===c?u=oh(c,u,n):l&&l.indexOf(c)>-1?u=sh(c,u,n):d&&(u=nh(c,u,n,r)),n[c]=u,r[c]=void 0}}function uh(e,t,r,n){let i=z(r) +if(void 0===i)return +let{observers:o,listeners:s}=i +if(void 0!==o){let r=n?Yu:Ku +for(let n of o.paths)r(e,n,null,t,o.sync)}if(void 0!==s){let r=n?Ll:Bl +for(let n of s)r(e,n,null,t)}}function ch(e,t,r=!1){let n=Object.create(null),i=Object.create(null),o=Dl(e),s=[],a=[] +e._super=j,ah(t,o,n,i,e,s,a) +for(let l of s){let t=i[l],s=n[l] +void 0!==t?("function"==typeof t&&uh(e,l,t,!0),nd(e,l,t,-1!==a.indexOf(l),!r)):void 0!==s&&rd(e,l,s,o)}return o.isPrototypeMeta(e)||rc(e),e}function dh(e,...t){return ch(e,t),e}const hh=new WeakSet +class ph{constructor(e,t){_defineProperty(this,"mixins",void 0),_defineProperty(this,"properties",void 0),_defineProperty(this,"ownerConstructor",void 0),_defineProperty(this,"_without",void 0),hh.add(this),this.properties=function(e){if(void 0!==e)for(let t of Object.keys(e)){let r=Object.getOwnPropertyDescriptor(e,t) +void 0===r.get&&void 0===r.set||Object.defineProperty(e,t,{value:Dc(r)})}return e}(t),this.mixins=fh(e),this.ownerConstructor=void 0,this._without=void 0}static create(...e){Qd() +return new this(e,void 0)}static mixins(e){let t=Ml(e),r=[] +return null===t||t.forEachMixins((e=>{e.properties||r.push(e)})),r}reopen(...e){if(0===e.length)return this +if(this.properties){let e=new ph(void 0,this.properties) +this.properties=void 0,this.mixins=[e]}else this.mixins||(this.mixins=[]) +return this.mixins=this.mixins.concat(fh(e)),this}apply(e,t=!1){return ch(e,[this],t)}applyPartial(e){return ch(e,[this])}detect(e){if("object"!=typeof e||null===e)return!1 +if(hh.has(e))return mh(e,this) +let t=Ml(e) +return null!==t&&t.hasMixin(this)}without(...e){let t=new ph([this]) +return t._without=e,t}keys(){return gh(this)}toString(){return"(unknown mixin)"}}function fh(e){let t,r=e&&e.length||0 +if(r>0){t=new Array(r) +for(let n=0;nmh(e,t,r)))}function gh(e,t=new Set,r=new Set){if(!r.has(e)){if(r.add(e),e.properties){let r=Object.keys(e.properties) +for(let e of r)t.add(e)}else e.mixins&&e.mixins.forEach((e=>gh(e,t,r))) +return t}}const yh=Object.defineProperty({__proto__:null,applyMixin:ch,default:ph,mixin:dh},Symbol.toStringTag,{value:"Module"}),bh=ph.create({__registry__:null,resolveRegistration(e){return this.__registry__.resolve(e)},register:_h("register"),unregister:_h("unregister"),hasRegistration:_h("has"),registeredOption:_h("getOption"),registerOptions:_h("options"),registeredOptions:_h("getOptions"),registerOptionsForType:_h("optionsForType"),registeredOptionsForType:_h("getOptionsForType")}) +function _h(e){return function(...t){return this.__registry__[e](...t)}}const vh=Object.defineProperty({__proto__:null,default:bh},Symbol.toStringTag,{value:"Module"}),wh=ph.create({__container__:null,ownerInjection(){return this.__container__.ownerInjection()},lookup(e,t){return this.__container__.lookup(e,t)},destroy(){let e=this.__container__ +e&&Iu((()=>{e.destroy(),Lu("destroy",e,"finalizeDestroy")})),this._super()},factoryFor(e){return this.__container__.factoryFor(e)}}),Sh=Object.defineProperty({__proto__:null,default:wh},Symbol.toStringTag,{value:"Module"}),Ph=ph.create({compare:null}),Eh=Object.defineProperty({__proto__:null,default:Ph},Symbol.toStringTag,{value:"Module"}),kh=ph.create({mergedProperties:["actions"],send(e,...t){if(this.actions&&this.actions[e]){if(!(!0===this.actions[e].apply(this,t)))return}let r=hd(this,"target") +r&&r.send(...arguments)}}),Th=Object.defineProperty({__proto__:null,default:kh},Symbol.toStringTag,{value:"Module"}) +function Ch(e){let t=hd(e,"content") +return Vi(uc(e),uc(t)),t}function Oh(e,t,r){let n=io(e),i=oo(e,t,n) +if(t in e)return i +{let o=[i,oo(e,"content",n)],s=Ch(e) +return b(s)&&o.push(lc(s,t,r)),Xi(o)}}const Ah=ph.create({content:null,init(){this._super(...arguments),re(this),uc(this),ps(this,Oh)},willDestroy(){this.set("content",null),this._super(...arguments)},isTruthy:Jc("content",(function(){return Boolean(hd(this,"content"))})),unknownProperty(e){let t=Ch(this) +return t?hd(t,e):void 0},setUnknownProperty(e,t){let r=Dl(this) +return r.isInitializing()||r.isPrototypeMeta(this)?(td(this,e,null,t),t):gd(Ch(this),e,t)}}),Rh=Object.defineProperty({__proto__:null,contentFor:Ch,default:Ah},Symbol.toStringTag,{value:"Module"}),xh=ph.create(),Mh=Object.defineProperty({__proto__:null,default:xh},Symbol.toStringTag,{value:"Module"}),Dh=ph.create(xh),Nh=Object.defineProperty({__proto__:null,default:Dh},Symbol.toStringTag,{value:"Module"}),Ih=ph.create({target:null,action:null,actionContext:null,actionContextObject:Jc("actionContext",(function(){let e=hd(this,"actionContext") +if("string"==typeof e){let t=hd(this,e) +return void 0===t&&(t=hd(ae.lookup,e)),t}return e})),triggerAction(e={}){let{action:t,target:r,actionContext:n}=e +t=t||hd(this,"action"),r=r||function(e){let t=hd(e,"target") +if(t){if("string"==typeof t){let r=hd(e,t) +return void 0===r&&(r=hd(ae.lookup,t)),r}return t}if(e._target)return e._target +return null}(this),void 0===n&&(n=hd(this,"actionContextObject")||this) +let i=Array.isArray(n)?n:[n] +if(r&&t){let e +if(e=null!=(o=r)&&"object"==typeof o&&"function"==typeof o.send?r.send(t,...i):r[t](...i),!1!==e)return!0}var o +return!1}}) +const jh=Object.defineProperty({__proto__:null,default:Ih},Symbol.toStringTag,{value:"Module"}) +function Lh(e){let t=e._promiseCallbacks +return t||(t=e._promiseCallbacks={}),t}const Bh={mixin(e){return e.on=this.on,e.off=this.off,e.trigger=this.trigger,e._promiseCallbacks=void 0,e},on(e,t){if("function"!=typeof t)throw new TypeError("Callback must be a function") +let r=Lh(this),n=r[e] +n||(n=r[e]=[]),-1===n.indexOf(t)&&n.push(t)},off(e,t){let r=Lh(this) +if(!t)return void(r[e]=[]) +let n=r[e],i=n.indexOf(t);-1!==i&&n.splice(i,1)},trigger(e,t,r){let n=Lh(this)[e] +if(n){let e +for(let i=0;i{for(let e=0;e{t===r?Jh(e,r):Yh(e,r)}),(t=>Xh(e,t)))}(e,t):"function"==typeof r?function(e,t,r){Fh.async((e=>{let n=!1,i=function(e,t,r,n){try{e.call(t,r,n)}catch(i){return i}}(r,t,(r=>{n||(n=!0,t===r?Jh(e,r):Yh(e,r))}),(t=>{n||(n=!0,Xh(e,t))}),e._label) +!n&&i&&(n=!0,Xh(e,i))}),e)}(e,t,r):Jh(e,t)}function Yh(e,t){if(e===t)Jh(e,t) +else if(function(e){let t=typeof e +return null!==e&&("object"===t||"function"===t)}(t)){let n +try{n=t.then}catch(r){return void Xh(e,r)}Qh(e,t,n)}else Jh(e,t)}function Kh(e){e._onError&&e._onError(e._result),ep(e)}function Jh(e,t){e._state===qh&&(e._result=t,e._state=Gh,0===e._subscribers.length?Fh.instrument&&Hh("fulfilled",e):Fh.async(ep,e))}function Xh(e,t){e._state===qh&&(e._state=Wh,e._result=t,Fh.async(Kh,e))}function Zh(e,t,r,n){let i=e._subscribers,o=i.length +e._onError=null,i[o]=t,i[o+Gh]=r,i[o+Wh]=n,0===o&&e._state&&Fh.async(ep,e)}function ep(e){let t=e._subscribers,r=e._state +if(Fh.instrument&&Hh(r===Gh?"fulfilled":"rejected",e),0===t.length)return +let n,i,o=e._result +for(let s=0;stp(i,o,r,s)))}return o}class np{constructor(e,t,r,n){this._instanceConstructor=e,this.promise=new e($h,n),this._abortOnReject=r,this._isUsingOwnPromise=e===lp,this._isUsingOwnResolve=e.resolve===Vh,this._init(...arguments)}_init(e,t){let r=t.length||0 +this.length=r,this._remaining=r,this._result=new Array(r),this._enumerate(t)}_enumerate(e){let t=this.length,r=this.promise +for(let n=0;r._state===qh&&nt(e))),t,r)}else this._willSettleAt(n.resolve(e),t,r)}_eachEntry(e,t,r){null!==e&&"object"==typeof e?this._settleMaybeThenable(e,t,r):this._setResultAt(Gh,t,e,r)}_settledAt(e,t,r,n){let i=this.promise +i._state===qh&&(this._abortOnReject&&e===Wh?Xh(i,r):(this._setResultAt(e,t,r,n),this._checkFullfillment()))}_setResultAt(e,t,r,n){this._remaining--,this._result[t]=r}_willSettleAt(e,t,r){Zh(e,void 0,(e=>this._settledAt(Gh,t,e,r)),(e=>this._settledAt(Wh,t,e,r)))}}function ip(e,t,r){this._remaining--,this._result[t]=e===Gh?{state:"fulfilled",value:r}:{state:"rejected",reason:r}}const op="rsvp_"+Date.now()+"-" +let sp=0 +let ap=class e{constructor(t,r){this._id=sp++,this._label=r,this._state=void 0,this._result=void 0,this._subscribers=[],Fh.instrument&&Hh("created",this),$h!==t&&("function"!=typeof t&&function(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}(),this instanceof e?function(e,t){let r=!1 +try{t((t=>{r||(r=!0,Yh(e,t))}),(t=>{r||(r=!0,Xh(e,t))}))}catch(n){Xh(e,n)}}(this,t):function(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}())}_onError(e){Fh.after((()=>{this._onError&&Fh.trigger("error",e,this._label)}))}catch(e,t){return this.then(void 0,e,t)}finally(e,t){let r=this,n=r.constructor +return"function"==typeof e?r.then((t=>n.resolve(e()).then((()=>t))),(t=>n.resolve(e()).then((()=>{throw t})))):r.then(e,e)}} +ap.cast=Vh,ap.all=function(e,t){return Array.isArray(e)?new np(this,e,!0,t).promise:this.reject(new TypeError("Promise.all must be called with an array"),t)},ap.race=function(e,t){let r=this,n=new r($h,t) +if(!Array.isArray(e))return Xh(n,new TypeError("Promise.race must be called with an array")),n +for(let i=0;n._state===qh&&iYh(n,e)),(e=>Xh(n,e))) +return n},ap.resolve=Vh,ap.reject=function(e,t){let r=new this($h,t) +return Xh(r,e),r},ap.prototype._guidKey=op,ap.prototype.then=rp +const lp=ap +function up(e,t){return{then:(r,n)=>e.call(t,r,n)}}function cp(e,t){let r=function(){let r=arguments.length,n=new Array(r+1),i=!1 +for(let e=0;edp(e,t,r,n)))}(o,n,e,this):dp(o,n,e,this)} +return r.__proto__=e,r}function dp(e,t,r,n){try{r.apply(n,t)}catch(i){Xh(e,i)}return e}function hp(e,t){return lp.all(e,t)}class pp extends np{constructor(e,t,r){super(e,t,!1,r)}}function fp(e,t){return Array.isArray(e)?new pp(lp,e,t).promise:lp.reject(new TypeError("Promise.allSettled must be called with an array"),t)}function mp(e,t){return lp.race(e,t)}pp.prototype._setResultAt=ip +class gp extends np{constructor(e,t,r=!0,n){super(e,t,r,n)}_init(e,t){this._result={},this._enumerate(t)}_enumerate(e){let t,r,n=Object.keys(e),i=n.length,o=this.promise +this._remaining=i +for(let s=0;o._state===qh&&s{throw e})),e}function wp(e){let t={resolve:void 0,reject:void 0} +return t.promise=new lp(((e,r)=>{t.resolve=e,t.reject=r}),e),t}bp.prototype._setResultAt=ip +class Sp extends np{constructor(e,t,r,n){super(e,t,!0,n,r)}_init(e,t,r,n,i){let o=t.length||0 +this.length=o,this._remaining=o,this._result=new Array(o),this._mapFn=i,this._enumerate(t)}_setResultAt(e,t,r,n){if(n)try{this._eachEntry(this._mapFn(r,t),t,!1)}catch(i){this._settledAt(Wh,t,i,!1)}else this._remaining--,this._result[t]=r}}function Pp(e,t,r){return"function"!=typeof t?lp.reject(new TypeError("map expects a function as a second argument"),r):lp.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("map must be called with an array") +return new Sp(lp,e,t,r).promise}))}function Ep(e,t){return lp.resolve(e,t)}function kp(e,t){return lp.reject(e,t)}const Tp={} +class Cp extends Sp{_checkFullfillment(){if(0===this._remaining&&null!==this._result){let e=this._result.filter((e=>e!==Tp)) +Jh(this.promise,e),this._result=null}}_setResultAt(e,t,r,n){if(n){this._result[t]=r +let e,n=!0 +try{e=this._mapFn(r,t)}catch(i){n=!1,this._settledAt(Wh,t,i,!1)}n&&this._eachEntry(e,t,!1)}else this._remaining--,r||(this._result[t]=Tp)}}function Op(e,t,r){return"function"!=typeof t?lp.reject(new TypeError("filter expects function as a second argument"),r):lp.resolve(e,r).then((function(e){if(!Array.isArray(e))throw new TypeError("filter must be called with an array") +return new Cp(lp,e,t,r).promise}))}let Ap,Rp=0 +function xp(e,t){Bp[Rp]=e,Bp[Rp+1]=t,Rp+=2,2===Rp&&Up()}const Mp="undefined"!=typeof window?window:void 0,Dp=Mp||{},Np=Dp.MutationObserver||Dp.WebKitMutationObserver,Ip="undefined"==typeof self&&"undefined"!=typeof process&&"[object process]"==={}.toString.call(process),jp="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel +function Lp(){return()=>setTimeout(Fp,1)}const Bp=new Array(1e3) +function Fp(){for(let e=0;ee(Fp)}():Np?function(){let e=0,t=new Np(Fp),r=document.createTextNode("") +return t.observe(r,{characterData:!0}),()=>r.data=e=++e%2}():jp?function(){let e=new MessageChannel +return e.port1.onmessage=Fp,()=>e.port2.postMessage(0)}():void 0===Mp&&"function"==typeof require?function(){try{const e=Function("return this")().require("vertx") +return Ap=e.runOnLoop||e.runOnContext,void 0!==Ap?function(){Ap(Fp)}:Lp()}catch(e){return Lp()}}():Lp(),Fh.async=xp,Fh.after=e=>setTimeout(e,0) +const zp=Ep,Hp=(e,t)=>Fh.async(e,t) +function Vp(){Fh.on(...arguments)}function $p(){Fh.off(...arguments)}if("undefined"!=typeof window&&"object"==typeof window.__PROMISE_INSTRUMENTATION__){let e=window.__PROMISE_INSTRUMENTATION__ +Uh("instrument",!0) +for(let t in e)e.hasOwnProperty(t)&&Vp(t,e[t])}const qp={asap:xp,cast:zp,Promise:lp,EventTarget:Bh,all:hp,allSettled:fp,race:mp,hash:yp,hashSettled:_p,rethrow:vp,defer:wp,denodeify:cp,configure:Uh,on:Vp,off:$p,resolve:Ep,reject:kp,map:Pp,async:Hp,filter:Op},Gp=Object.defineProperty({__proto__:null,EventTarget:Bh,Promise:lp,all:hp,allSettled:fp,asap:xp,async:Hp,cast:zp,configure:Uh,default:qp,defer:wp,denodeify:cp,filter:Op,hash:yp,hashSettled:_p,map:Pp,off:$p,on:Vp,race:mp,reject:kp,resolve:Ep,rethrow:vp},Symbol.toStringTag,{value:"Module"}) +function Wp(e){let t=function(e){if(!e)return +let t=e +if(t.errorThrown)return function(e){let t=e.errorThrown +"string"==typeof t&&(t=new Error(t)) +return Object.defineProperty(t,"__reason_with_error_thrown__",{value:e,enumerable:!1}),t}(t) +let r=e +if("UnrecognizedURLError"===r.name)return +if("TransitionAborted"===e.name)return +return e}(e) +if(t){let e=Nr() +if(!e)throw t +e(t)}}Uh("async",((e,t)=>{Du.schedule("actions",null,e,t)})),Uh("after",(e=>{Du.schedule(xu,null,e)})),Vp("error",Wp) +const Qp=Object.defineProperty({__proto__:null,default:Gp,onerrorDefault:Wp},Symbol.toStringTag,{value:"Module"}),Yp=Object.defineProperty({__proto__:null,ActionHandler:kh,Comparable:Ph,ContainerProxyMixin:wh,MutableEnumerable:Dh,RSVP:Gp,RegistryProxyMixin:bh,TargetActionSupport:Ih,_ProxyMixin:Ah,_contentFor:Ch,onerrorDefault:Wp},Symbol.toStringTag,{value:"Module"}) +function Kp(e){return null==e}const Jp=Object.defineProperty({__proto__:null,default:Kp},Symbol.toStringTag,{value:"Module"}) +function Xp(e){if(null==e)return!0 +if(!dd(e)&&"number"==typeof e.size)return!e.size +if("object"==typeof e){let t=hd(e,"size") +if("number"==typeof t)return!t +let r=hd(e,"length") +if("number"==typeof r)return!r}return"number"==typeof e.length&&"function"!=typeof e&&!e.length}const Zp=Object.defineProperty({__proto__:null,default:Xp},Symbol.toStringTag,{value:"Module"}) +function ef(e){return Xp(e)||"string"==typeof e&&!1===/\S/.test(e)}const tf=Object.defineProperty({__proto__:null,default:ef},Symbol.toStringTag,{value:"Module"}) +function rf(e){return!ef(e)}const nf=Object.defineProperty({__proto__:null,default:rf},Symbol.toStringTag,{value:"Module"}) +function of(e,t){return e&&"function"==typeof e.isEqual?e.isEqual(t):e instanceof Date&&t instanceof Date?e.getTime()===t.getTime():e===t}const sf=Object.defineProperty({__proto__:null,default:of},Symbol.toStringTag,{value:"Module"}),af={"[object Boolean]":"boolean","[object Number]":"number","[object String]":"string","[object Function]":"function","[object AsyncFunction]":"function","[object Array]":"array","[object Date]":"date","[object RegExp]":"regexp","[object Object]":"object","[object FileList]":"filelist"},{toString:lf}=Object.prototype +function uf(e){if(null===e)return"null" +if(void 0===e)return"undefined" +let t=af[lf.call(e)]||"object" +return"function"===t?Kf.detect(e)&&(t="class"):"object"===t&&(e instanceof Error?t="error":e instanceof Kf?t="instance":e instanceof Date&&(t="date")),t}const cf=Object.defineProperty({__proto__:null,default:uf},Symbol.toStringTag,{value:"Module"}),df={undefined:0,null:1,boolean:2,number:3,string:4,array:5,object:6,instance:7,function:8,class:9,date:10,regexp:11,filelist:12,error:13} +function hf(e,t){return Math.sign(e-t)}function pf(e,t){if(e===t)return 0 +let r=uf(e),n=uf(t) +if("instance"===r&&ff(e)&&e.constructor.compare)return e.constructor.compare(e,t) +if("instance"===n&&ff(t)&&t.constructor.compare)return-1*t.constructor.compare(t,e) +let i=hf(df[r],df[n]) +if(0!==i)return i +switch(r){case"boolean":return hf(Number(e),Number(t)) +case"number":return hf(e,t) +case"string":return hf(e.localeCompare(t),0) +case"array":{let r=e.length,n=t.length,i=Math.min(r,n) +for(let o=0;oe +function Ef(e,t=Pf){let r=Uf(),n=new Set,i="function"==typeof t?t:e=>hd(e,t) +return e.forEach((e=>{let t=i(e) +n.has(t)||(n.add(t),r.push(e))})),r}function kf(...e){let t=2===e.length,[r,n]=e +return t?e=>n===hd(e,r):e=>Boolean(hd(e,r))}function Tf(e,t,r){let n=e.length +for(let i=r;i!n(e,t,r)),0)}function Rf(e,t,r=0,n){let i=e.length +return r<0&&(r+=i),Tf(e,n&&t!=t?e=>e!=e:e=>e===t,r)}function xf(e,t,r){return wc(e,t,r??1,Sf),e}function Mf(e,t,r){return wc(e,t,0,[r]),r}function Df(e){if(!e||e.setInterval)return!1 +if(Array.isArray(e)||jf.detect(e))return!0 +let t=uf(e) +if("array"===t)return!0 +let r=e.length +return"number"==typeof r&&r==r&&"object"===t}function Nf(e){let t=Jc(e) +return t.enumerable=!1,t}function If(e){return this.map((t=>hd(t,e)))}const jf=ph.create(xh,{init(){this._super(...arguments),od(this)},objectsAt(e){return e.map((e=>vc(this,e)))},"[]":Nf({get(){return this},set(e,t){return this.replace(0,this.length,t),this}}),firstObject:Nf((function(){return vc(this,0)})).readOnly(),lastObject:Nf((function(){return vc(this,this.length-1)})).readOnly(),slice(e=0,t){let r,n=Uf(),i=this.length +for(e<0&&(e=i+e),r=void 0===t||t>i?i:t<0?i+t:t;e=r)&&(t=r-1),t<0&&(t+=r) +for(let n=t;n>=0;n--)if(vc(this,n)===e)return n +return-1},forEach(e,t=null){let r=this.length +for(let n=0;ngd(r,e,t)))},map(e,t=null){let r=Uf() +return this.forEach(((n,i,o)=>r[i]=e.call(t,n,i,o))),r},mapBy:If,filter(e,t=null){let r=Uf() +return this.forEach(((n,i,o)=>{e.call(t,n,i,o)&&r.push(n)})),r},reject(e,t=null){return this.filter((function(){return!e.apply(t,arguments)}))},filterBy(){return this.filter(kf(...arguments))},rejectBy(){return this.reject(kf(...arguments))},find(e,t=null){return Cf(this,e,t)},findBy(){return Cf(this,kf(...arguments))},every(e,t=null){return Af(this,e,t)},isEvery(){return Af(this,kf(...arguments))},any(e,t=null){return Of(this,e,t)},isAny(){return Of(this,kf(...arguments))},reduce(e,t){let r=t +return this.forEach((function(t,n){r=e(r,t,n,this)}),this),r},invoke(e,...t){let r=Uf() +return this.forEach((n=>r.push(n[e]?.(...t)))),r},toArray(){return this.map((e=>e))},compact(){return this.filter((e=>null!=e))},includes(e,t){return-1!==Rf(this,e,t,!0)},sortBy(){let e=arguments +return this.toArray().sort(((t,r)=>{for(let n=0;nt!==e:e=>e==e +return this.filter(t)}}),Lf=ph.create(jf,Dh,{clear(){let e=this.length +return 0===e||this.replace(0,e,Sf),this},insertAt(e,t){return Mf(this,e,t),this},removeAt(e,t){return xf(this,e,t)},pushObject(e){return Mf(this,this.length,e)},pushObjects(e){return this.replace(this.length,0,e),this},popObject(){let e=this.length +if(0===e)return null +let t=vc(this,e-1) +return this.removeAt(e-1,1),t},shiftObject(){if(0===this.length)return null +let e=vc(this,0) +return this.removeAt(0),e},unshiftObject(e){return Mf(this,0,e)},unshiftObjects(e){return this.replace(0,0,e),this},reverseObjects(){let e=this.length +if(0===e)return this +let t=this.toArray().reverse() +return this.replace(0,e,t),this},setObjects(e){if(0===e.length)return this.clear() +let t=this.length +return this.replace(0,t,e),this},removeObject(e){let t=this.length||0 +for(;--t>=0;){vc(this,t)===e&&this.removeAt(t)}return this},removeObjects(e){fc() +for(let t=e.length-1;t>=0;t--)this.removeObject(e[t]) +return mc(),this},addObject(e){return this.includes(e)||this.pushObject(e),this},addObjects(e){return fc(),e.forEach((e=>this.addObject(e))),mc(),this}}) +let Bf=ph.create(Lf,yf,{objectAt(e){return this[e]},replace(e,t,r=Sf){return Pc(this,e,t,r),this}}) +const Ff=["length"] +let Uf +Bf.keys().forEach((e=>{Array.prototype[e]&&Ff.push(e)})),Bf=Bf.without(...Ff),ce.EXTEND_PROTOTYPES.Array?(Bf.apply(Array.prototype,!0),Uf=function(e){return e||[]}):Uf=function(e){return sd(e)?e:Bf.apply(e??[])} +const zf=Object.defineProperty({__proto__:null,get A(){return Uf},MutableArray:Lf,get NativeArray(){return Bf},default:jf,isArray:Df,makeArray:vf,removeAt:xf,uniqBy:Ef},Symbol.toStringTag,{value:"Module"}) +const Hf=ph.prototype.reopen,Vf=new WeakSet,$f=new WeakMap,qf=new Set +function Gf(e){qf.has(e)||e.destroy()}function Wf(e,t){let r=Dl(e) +if(void 0!==t){let i=e.concatenatedProperties,o=e.mergedProperties,s=Object.keys(t) +for(let a of s){let s=t[a],l=Uc(e,a,r),u=void 0!==l +if(!u){if(void 0!==i&&i.length>0&&i.includes(a)){let t=e[a] +s=t?vf(t).concat(s):vf(s)}if(void 0!==o&&o.length>0&&o.includes(a)){let t=e[a] +s=Object.assign({},t,s)}}u?l.set(e,a,s):"object"!=typeof(n=e)||null===n||"function"!=typeof n.setUnknownProperty||a in e?e[a]=s:e.setUnknownProperty(a,s)}}var n +e.init(t),r.unsetInitializing() +let i=r.observerEvents() +if(void 0!==i)for(let o=0;or.willDestroy())),Dl(t).setInitializing()}reopen(...e){return ch(this,e),this}init(e){}get isDestroyed(){return Mi(this)}set isDestroyed(e){}get isDestroying(){return xi(this)}set isDestroying(e){}destroy(){qf.add(this) +try{Oi(this)}finally{qf.delete(this)}return this}willDestroy(){}toString(){let e="object"==typeof(t=this)&&null!==t&&"function"==typeof t.toStringExtension?`:${this.toStringExtension()}`:"" +var t +return`<${ur(this)||"(unknown)"}:${T(this)}${e}>`}static extend(...e){let t=class extends(this){} +return Hf.apply(t.PrototypeMixin,e),t}static create(...e){let t,r=e[0] +if(void 0!==r){t=new this(Zt(r)),cr(t,ur(r))}else t=new this +return e.length<=1?Wf(t,r):Wf(t,Yf.apply(this,e)),t}static reopen(...e){return this.willReopen(),Hf.apply(this.PrototypeMixin,e),this}static willReopen(){let e=this.prototype +Vf.has(e)&&(Vf.delete(e),$f.has(this)&&$f.set(this,ph.create(this.PrototypeMixin)))}static reopenClass(...e){return ch(this,e),this}static detect(e){if("function"!=typeof e)return!1 +for(;e;){if(e===this)return!0 +e=e.superclass}return!1}static detectInstance(e){return e instanceof this}static metaForProperty(e){return Uc(this.proto(),e)._meta||{}}static eachComputedProperty(e,t=this){this.proto() +let r={} +Dl(this.prototype).forEachDescriptors(((n,i)=>{if(i.enumerable){let o=i._meta||r +e.call(t,n,o)}}))}static get PrototypeMixin(){let e=$f.get(this) +return void 0===e&&(e=ph.create(),e.ownerConstructor=this,$f.set(this,e)),e}static get superclass(){let e=Object.getPrototypeOf(this) +return e!==Function.prototype?e:void 0}static proto(){let e=this.prototype +if(!Vf.has(e)){Vf.add(e) +let t=this.superclass +t&&t.proto(),$f.has(this)&&this.PrototypeMixin.apply(e)}return e}static toString(){return`<${ur(this)||"(unknown)"}:constructor>`}}function Yf(...e){let t={} +for(let r of e){let e=Object.keys(r) +for(let n=0,i=e.length;no.push(e))) +return H(t,{paths:o,sync:n}),t}Vc(tm) +const nm=Object.defineProperty({__proto__:null,action:tm,computed:Jc,default:Xf,defineProperty:td,get:hd,getProperties:Cd,notifyPropertyChange:pc,observer:rm,set:gd,setProperties:Od,trySet:bd},Symbol.toStringTag,{value:"Module"}),im=[[[Xn.Yield,1,null]],["&default"],!1,[]],om={id:"1b32f5c2-7623-43d6-a0ad-9672898920a1",moduleName:"__default__.hbs",block:JSON.stringify(im),scope:null,isStrictMode:!0},sm=Object.freeze([]),am=lt(sm),lm=am.indexOf(sm) +class um{constructor(){_defineProperty(this,"values",am.slice()),_defineProperty(this,"indexMap",new Map(this.values.map(((e,t)=>[e,t]))))}value(e){let t=this.indexMap,r=t.get(e) +return void 0===r&&(r=this.values.push(e)-1,t.set(e,r)),r}array(e){if(0===e.length)return lm +let t=new Array(e.length) +for(let r=0;r=0,`cannot get value for handle: ${e}`),this.values[e]}getArray(e){let t=this.reifiedArrs,r=t[e] +if(void 0===r){let n=this.getValue(e) +r=new Array(n.length) +for(const[e,t]of Fe(n))r[e]=this.getValue(t) +t[e]=r}return r}}class dm{constructor(e){_defineProperty(this,"offset",0),this.heap=e}get size(){return 1+((768&this.heap.getbyaddr(this.offset))>>8)}get isMachine(){return this.heap.getbyaddr(this.offset)&Ur?1:0}get type(){return 255&this.heap.getbyaddr(this.offset)}get op1(){return this.heap.getbyaddr(this.offset+1)}get op2(){return this.heap.getbyaddr(this.offset+2)}get op3(){return this.heap.getbyaddr(this.offset+3)}}var hm=function(e){return e[e.Allocated=0]="Allocated",e[e.Freed=1]="Freed",e[e.Purged=2]="Purged",e[e.Pointer=3]="Pointer",e}(hm||{}) +const pm=1048576 +class fm{constructor(e){_defineProperty(this,"heap",void 0),_defineProperty(this,"table",void 0) +let{buffer:t,table:r}=e +this.heap=new Int32Array(t),this.table=r}getaddr(e){return ze(this.table[e])}getbyaddr(e){return He(this.heap[e],"Access memory out of bounds of the heap")}sizeof(e){return ym(this.table)}}class mm{constructor(){_defineProperty(this,"offset",0),_defineProperty(this,"heap",void 0),_defineProperty(this,"handleTable",void 0),_defineProperty(this,"handleState",void 0),_defineProperty(this,"handle",0),this.heap=new Int32Array(pm),this.handleTable=[],this.handleState=[]}pushRaw(e){this.sizeCheck(),this.heap[this.offset++]=e}pushOp(e){this.pushRaw(e)}pushMachine(e){this.pushRaw(e|Ur)}sizeCheck(){let{heap:e}=this +if(this.offset===this.heap.length){let t=new Int32Array(e.length+pm) +t.set(e,0),this.heap=t}}getbyaddr(e){return ze(this.heap[e])}setbyaddr(e,t){this.heap[e]=t}malloc(){return this.handleTable.push(this.offset),this.handleTable.length-1}finishMalloc(e){}size(){return this.offset}getaddr(e){return ze(this.handleTable[e])}sizeof(e){return ym(this.handleTable)}free(e){this.handleState[e]=hm.Freed}compact(){let e=0,{handleTable:t,handleState:r,heap:n}=this +for(let i=0;i=this.slots.length)throw new RangeError(`BUG: cannot get $${e} from scope; length=${this.slots.length}`) +return this.slots[e]}set(e,t){if(e>=this.slots.length)throw new RangeError(`BUG: cannot get $${e} from scope; length=${this.slots.length}`) +this.slots[e]=t}}const Sm=Symbol("INNER_VM"),Pm=Symbol("DESTROYABLE_STACK"),Em=Symbol("STACKS"),km=Symbol("REGISTERS"),Tm=Symbol("HEAP"),Cm=Symbol("CONSTANTS"),Om=Symbol("ARGS") +class Am{constructor(e,t){this.element=e,this.nextSibling=t}}class Rm{constructor(e,t,r){this.parentNode=e,this.first=t,this.last=r}parentElement(){return this.parentNode}firstNode(){return this.first}lastNode(){return this.last}}function xm(e,t){let r=e.parentElement(),n=e.firstNode(),i=e.lastNode(),o=n +for(;;){let e=o.nextSibling +if(r.insertBefore(o,t),o===i)return e +o=He(e,"invalid bounds")}}function Mm(e){let t=e.parentElement(),r=e.firstNode(),n=e.lastNode(),i=r +for(;;){let e=i.nextSibling +if(t.removeChild(i),i===n)return e +i=He(e,"invalid bounds")}}function Dm(e){return Nm(e)?"":String(e)}function Nm(e){return null==e||"function"!=typeof e.toString}function Im(e){return"object"==typeof e&&null!==e&&"function"==typeof e.toHTML}function jm(e){return"object"==typeof e&&null!==e&&"number"==typeof e.nodeType}function Lm(e){return"string"==typeof e}function Bm(e,t){let r,n +if(t in e)n=t,r="prop" +else{let i=t.toLowerCase() +i in e?(r="prop",n=i):(r="attr",n=t)}return"prop"!==r||"style"!==n.toLowerCase()&&!function(e,t){let r=Fm[e.toUpperCase()] +return r&&r[t.toLowerCase()]||!1}(e.tagName,n)||(r="attr"),{normalized:n,type:r}}const Fm={INPUT:{form:!0,autocorrect:!0,list:!0},SELECT:{form:!0},OPTION:{form:!0},TEXTAREA:{form:!0},LABEL:{form:!0},FIELDSET:{form:!0},LEGEND:{form:!0},OBJECT:{form:!0},OUTPUT:{form:!0},BUTTON:{form:!0}} +const Um=["javascript:","vbscript:"],zm=["A","BODY","LINK","IMG","IFRAME","BASE","FORM"],Hm=["EMBED"],Vm=["href","src","background","action"],$m=["src"] +function qm(e,t){return-1!==e.indexOf(t)}function Gm(e,t){return(null===e||qm(zm,e))&&qm(Vm,t)}function Wm(e,t){return null!==e&&(qm(Hm,e)&&qm($m,t))}function Qm(e,t){return Gm(e,t)||Wm(e,t)}let Ym +function Km(e){return Ym||(Ym=function(){if("object"==typeof URL&&null!==URL&&"function"==typeof URL.parse){let e=URL +return t=>{let r=null +return"string"==typeof t&&(r=e.parse(t).protocol),null===r?":":r}}if("function"==typeof URL)return e=>{try{return new URL(e).protocol}catch(t){return":"}} +throw new Error('@glimmer/runtime needs a valid "globalThis.URL"')}()),Ym(e)}function Jm(e,t,r){let n=null +if(null==r)return r +if(Im(r))return r.toHTML() +n=e?e.tagName.toUpperCase():null +let i=Dm(r) +if(Gm(n,t)){let e=Km(i) +if(qm(Um,e))return`unsafe:${i}`}return Wm(n,t)?`unsafe:${i}`:i}function Xm(e,t,r,n=!1){const{tagName:i,namespaceURI:o}=e,s={element:e,name:t,namespace:r} +if(o===rt)return Zm(i,t,s) +const{type:a,normalized:l}=Bm(e,t) +return"attr"===a?Zm(i,l,s):function(e,t,r){if(Qm(e,t))return new ng(t,r) +if(function(e,t){return("INPUT"===e||"TEXTAREA"===e)&&"value"===t}(e,t))return new og(t,r) +if(function(e,t){return"OPTION"===e&&"selected"===t}(e,t))return new sg(t,r) +return new rg(t,r)}(i,l,s)}function Zm(e,t,r){return Qm(e,t)?new ig(r):new tg(r)}class eg{constructor(e){this.attribute=e}}class tg extends eg{set(e,t,r){const n=ag(t) +if(null!==n){const{name:t,namespace:r}=this.attribute +e.__setAttribute(t,n,r)}}update(e,t){const r=ag(e),{element:n,name:i}=this.attribute +null===r?n.removeAttribute(i):n.setAttribute(i,r)}}class rg extends eg{constructor(e,t){super(t),_defineProperty(this,"value",void 0),this.normalizedName=e}set(e,t,r){null!=t&&(this.value=t,e.__setProperty(this.normalizedName,t))}update(e,t){const{element:r}=this.attribute +this.value!==e&&(r[this.normalizedName]=this.value=e,null==e&&this.removeAttribute())}removeAttribute(){const{element:e,namespace:t}=this.attribute +t?e.removeAttributeNS(t,this.normalizedName):e.removeAttribute(this.normalizedName)}}class ng extends rg{set(e,t,r){const{element:n,name:i}=this.attribute,o=Jm(n,i,t) +super.set(e,o,r)}update(e,t){const{element:r,name:n}=this.attribute,i=Jm(r,n,e) +super.update(i,t)}}class ig extends tg{set(e,t,r){const{element:n,name:i}=this.attribute,o=Jm(n,i,t) +super.set(e,o,r)}update(e,t){const{element:r,name:n}=this.attribute,i=Jm(r,n,e) +super.update(i,t)}}class og extends rg{set(e,t){e.__setProperty("value",Dm(t))}update(e){const t=wt(this.attribute.element,["input","textarea"]),r=t.value,n=Dm(e) +r!==n&&(t.value=n)}}class sg extends rg{set(e,t){null!=t&&!1!==t&&e.__setProperty("selected",!0)}update(e){const t=wt(this.attribute.element,"option") +t.selected=!!e}}function ag(e){return!1===e||null==e||void 0===e.toString?null:!0===e?"":"function"==typeof e?null:String(e)}class lg{constructor(e){this.node=e}firstNode(){return this.node}}class ug{constructor(e){this.node=e}lastNode(){return this.node}}const cg=Symbol("CURSOR_STACK") +class dg{static forInitialRender(e,t){return new this(e,t.element,t.nextSibling).initialize()}static resume(e,t){let r=new this(e,t.parentElement(),t.reset(e)).initialize() +return r.pushLiveBlock(t),r}constructor(e,t,r){_defineProperty(this,"dom",void 0),_defineProperty(this,"updateOperations",void 0),_defineProperty(this,"constructing",null),_defineProperty(this,"operations",null),_defineProperty(this,"env",void 0),_defineProperty(this,cg,new Xe),_defineProperty(this,"modifierStack",new Xe),_defineProperty(this,"blockStack",new Xe),this.pushElement(t,r),this.env=e,this.dom=e.getAppendOperations(),this.updateOperations=e.getDOM()}initialize(){return this.pushSimpleBlock(),this}debugBlocks(){return this.blockStack.toArray()}get element(){return this[cg].current.element}get nextSibling(){return this[cg].current.nextSibling}get hasBlocks(){return this.blockStack.size>0}block(){return He(this.blockStack.current,"Expected a current live block")}popElement(){this[cg].pop(),He(this[cg].current,"can't pop past the last element")}pushSimpleBlock(){return this.pushLiveBlock(new hg(this.element))}pushUpdatableBlock(){return this.pushLiveBlock(new fg(this.element))}pushBlockList(e){return this.pushLiveBlock(new mg(this.element,e))}pushLiveBlock(e,t=!1){let r=this.blockStack.current +return null!==r&&(t||r.didAppendBounds(e)),this.__openBlock(),this.blockStack.push(e),e}popBlock(){return this.block().finalize(this),this.__closeBlock(),He(this.blockStack.pop(),"Expected popBlock to return a block")}__openBlock(){}__closeBlock(){}openElement(e){let t=this.__openElement(e) +return this.constructing=t,t}__openElement(e){return this.dom.createElement(e,this.element)}flushElement(e){let t=this.element,r=He(this.constructing,"flushElement should only be called when constructing an element") +this.__flushElement(t,r),this.constructing=null,this.operations=null,this.pushModifiers(e),this.pushElement(r,null),this.didOpenElement(r)}__flushElement(e,t){this.dom.insertBefore(e,t,this.nextSibling)}closeElement(){return this.willCloseElement(),this.popElement(),this.popModifiers()}pushRemoteElement(e,t,r){return this.__pushRemoteElement(e,t,r)}__pushRemoteElement(e,t,r){if(this.pushElement(e,r),void 0===r)for(;e.lastChild;)e.removeChild(e.lastChild) +let n=new pg(e) +return this.pushLiveBlock(n,!0)}popRemoteElement(){const e=this.popBlock() +return Ue(e instanceof pg,"[BUG] expecting a RemoteLiveBlock"),this.popElement(),e}pushElement(e,t=null){this[cg].push(new Am(e,t))}pushModifiers(e){this.modifierStack.push(e)}popModifiers(){return this.modifierStack.pop()}didAppendBounds(e){return this.block().didAppendBounds(e),e}didAppendNode(e){return this.block().didAppendNode(e),e}didOpenElement(e){return this.block().openElement(e),e}willCloseElement(){this.block().closeElement()}appendText(e){return this.didAppendNode(this.__appendText(e))}__appendText(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createTextNode(e) +return t.insertBefore(r,i,n),i}__appendNode(e){return this.dom.insertBefore(this.element,e,this.nextSibling),e}__appendFragment(e){let t=e.firstChild +if(t){let r=new Rm(this.element,t,e.lastChild) +return this.dom.insertBefore(this.element,e,this.nextSibling),r}{const e=this.__appendComment("") +return new Rm(this.element,e,e)}}__appendHTML(e){return this.dom.insertHTMLBefore(this.element,this.nextSibling,e)}appendDynamicHTML(e){let t=this.trustedContent(e) +this.didAppendBounds(t)}appendDynamicText(e){let t=this.untrustedContent(e) +return this.didAppendNode(t),t}appendDynamicFragment(e){let t=this.__appendFragment(e) +this.didAppendBounds(t)}appendDynamicNode(e){let t=this.__appendNode(e),r=new Rm(this.element,t,t) +this.didAppendBounds(r)}trustedContent(e){return this.__appendHTML(e)}untrustedContent(e){return this.__appendText(e)}appendComment(e){return this.didAppendNode(this.__appendComment(e))}__appendComment(e){let{dom:t,element:r,nextSibling:n}=this,i=t.createComment(e) +return t.insertBefore(r,i,n),i}__setAttribute(e,t,r){this.dom.setAttribute(this.constructing,e,t,r)}__setProperty(e,t){this.constructing[e]=t}setStaticAttribute(e,t,r){this.__setAttribute(e,t,r)}setDynamicAttribute(e,t,r,n){let i=Xm(this.constructing,e,n,r) +return i.set(this,t,this.env),i}}class hg{constructor(e){_defineProperty(this,"first",null),_defineProperty(this,"last",null),_defineProperty(this,"nesting",0),this.parent=e}parentElement(){return this.parent}firstNode(){return He(this.first,"cannot call `firstNode()` while `SimpleLiveBlock` is still initializing").firstNode()}lastNode(){return He(this.last,"cannot call `lastNode()` while `SimpleLiveBlock` is still initializing").lastNode()}openElement(e){this.didAppendNode(e),this.nesting++}closeElement(){this.nesting--}didAppendNode(e){0===this.nesting&&(this.first||(this.first=new lg(e)),this.last=new ug(e))}didAppendBounds(e){0===this.nesting&&(this.first||(this.first=e),this.last=e)}finalize(e){null===this.first&&e.appendComment("")}}class pg extends hg{constructor(e){super(e),Ti(this,(()=>{this.parentElement()===this.firstNode().parentNode&&Mm(this)}))}}class fg extends hg{reset(){Oi(this) +let e=Mm(this) +return this.first=null,this.last=null,this.nesting=0,e}}class mg{constructor(e,t){this.parent=e,this.boundList=t,this.parent=e,this.boundList=t}parentElement(){return this.parent}firstNode(){return He(this.boundList[0],"cannot call `firstNode()` while `LiveBlockList` is still initializing").firstNode()}lastNode(){let e=this.boundList +return He(e[e.length-1],"cannot call `lastNode()` while `LiveBlockList` is still initializing").lastNode()}openElement(e){Ue(!1,"Cannot openElement directly inside a block list")}closeElement(){Ue(!1,"Cannot closeElement directly inside a block list")}didAppendNode(e){Ue(!1,"Cannot create a new node directly inside a block list")}didAppendBounds(e){}finalize(e){Ue(this.boundList.length>0,"boundsList cannot be empty")}}function gg(e,t){return dg.forInitialRender(e,t)}const yg=new class{constructor(){_defineProperty(this,"evaluateOpcode",new Array(Hr.Size).fill(null))}add(e,t,r="syscall"){this.evaluateOpcode[e]={syscall:"machine"!==r,evaluate:t}}debugBefore(e,t){let r,n +return Rn(e.fetchValue(qr)),{sp:undefined,pc:e.fetchValue(0),name:n,params:r,type:t.type,isMachine:t.isMachine,size:t.size,state:void 0}}debugAfter(e,t){}evaluate(e,t,r){let n=ze(this.evaluateOpcode[r]) +n.syscall?(Ue(!t.isMachine,`BUG: Mismatch between operation.syscall (${n.syscall}) and opcode.isMachine (${t.isMachine}) for ${t.type}`),n.evaluate(e,t)):(Ue(t.isMachine,`BUG: Mismatch between operation.syscall (${n.syscall}) and opcode.isMachine (${t.isMachine}) for ${t.type}`),n.evaluate(e[Sm],t))}},bg=Symbol("TYPE"),_g=Symbol("INNER"),vg=Symbol("OWNER"),wg=Symbol("ARGS"),Sg=Symbol("RESOLVED"),Pg=new WeakSet +function Eg(e){return Pg.has(e)}function kg(e,t){return Eg(e)&&e[bg]===t}class Tg{constructor(e,t,r,n,i=!1){_defineProperty(this,bg,void 0),_defineProperty(this,_g,void 0),_defineProperty(this,vg,void 0),_defineProperty(this,wg,void 0),_defineProperty(this,Sg,void 0),Pg.add(this),this[bg]=e,this[_g]=t,this[vg]=r,this[wg]=n,this[Sg]=i}}function Cg(e){let t,r,n,i,o,s=e +for(;;){let{[wg]:e,[_g]:a}=s +if(null!==e){let{named:n,positional:i}=e +i.length>0&&(t=void 0===t?i:i.concat(t)),void 0===r&&(r=[]),r.unshift(n)}if(!Eg(a)){n=a,i=s[vg],o=s[Sg] +break}s=a}return{definition:n,owner:i,resolved:o,positional:t,named:r}}function Og(e,t,r,n,i=!1){return new Tg(e,t,r,n,i)}function Ag(e){return"getDebugCustomRenderTree"in e}yg.add(Hr.ChildScope,(e=>e.pushChildScope())),yg.add(Hr.PopScope,(e=>e.popScope())),yg.add(Hr.PushDynamicScope,(e=>e.pushDynamicScope())),yg.add(Hr.PopDynamicScope,(e=>e.popDynamicScope())),yg.add(Hr.Constant,((e,{op1:t})=>{e.stack.push(e[Cm].getValue(t))})),yg.add(Hr.ConstantReference,((e,{op1:t})=>{e.stack.push(Uo(e[Cm].getValue(t)))})),yg.add(Hr.Primitive,((e,{op1:t})=>{let r=e.stack +if(at(t)){let n=e[Cm].getValue(t) +r.push(n)}else r.push(yt(t))})),yg.add(Hr.PrimitiveReference,(e=>{let t,r=e.stack,n=On(r.pop(),xn) +t=void 0===n?jo:null===n?Lo:!0===n?Bo:!1===n?Fo:Io(n),r.push(t)})),yg.add(Hr.Dup,((e,{op1:t,op2:r})=>{let n=On(e.fetchValue(t),Dn)-r +e.stack.dup(n)})),yg.add(Hr.Pop,((e,{op1:t})=>{e.stack.pop(t)})),yg.add(Hr.Load,((e,{op1:t})=>{e.load(t)})),yg.add(Hr.Fetch,((e,{op1:t})=>{e.fetch(t)})),yg.add(Hr.BindDynamicScope,((e,{op1:t})=>{let r=e[Cm].getArray(t) +e.bindDynamicScope(r)})),yg.add(Hr.Enter,((e,{op1:t})=>{e.enter(t)})),yg.add(Hr.Exit,(e=>{e.exit()})),yg.add(Hr.PushSymbolTable,((e,{op1:t})=>{e.stack.push(e[Cm].getValue(t))})),yg.add(Hr.PushBlockScope,(e=>{e.stack.push(e.scope())})),yg.add(Hr.CompileBlock,(e=>{let t=e.stack,r=t.pop() +r?t.push(e.compile(r)):t.push(null)})),yg.add(Hr.InvokeYield,(e=>{let{stack:t}=e,r=On(t.pop(),Sn(In)),n=On(t.pop(),Sn(Zg)),i=On(t.pop(),Sn($n)) +Ue(null===i||i&&"object"==typeof i&&Array.isArray(i.parameters),function(e,t){return`Expected top of stack to be ${e}, was ${String(t)}`}("Option",i)) +let o=On(t.pop(),wn(cy)) +if(null===i)return e.pushFrame(),void e.pushScope(n??e.scope()) +let s=He(n,"BUG: expected scope") +{let e=i.parameters,t=e.length +if(t>0){s=s.child() +for(let r=0;r{let r=On(e.stack.pop(),Wg),n=Boolean(Qo(r)) +Go(r)?!0===n&&e.goto(t):(!0===n&&e.goto(t),e.updateWith(new Rg(r)))})),yg.add(Hr.JumpUnless,((e,{op1:t})=>{let r=On(e.stack.pop(),Wg),n=Boolean(Qo(r)) +Go(r)?!1===n&&e.goto(t):(!1===n&&e.goto(t),e.updateWith(new Rg(r)))})),yg.add(Hr.JumpEq,((e,{op1:t,op2:r})=>{On(e.stack.peek(),Dn)===r&&e.goto(t)})),yg.add(Hr.AssertSame,(e=>{let t=On(e.stack.peek(),Wg) +!1===Go(t)&&e.updateWith(new Rg(t))})),yg.add(Hr.ToBoolean,(e=>{let{stack:t}=e,r=On(t.pop(),Wg) +t.push(Ho((()=>si(Qo(r)))))})) +class Rg{constructor(e){_defineProperty(this,"last",void 0),this.ref=e,this.last=Qo(e)}evaluate(e){let{last:t,ref:r}=this +t!==Qo(r)&&e.throw()}}class xg{constructor(e,t){_defineProperty(this,"last",void 0),this.ref=e,this.filter=t,this.last=t(Qo(e))}evaluate(e){let{last:t,ref:r,filter:n}=this +t!==n(Qo(r))&&e.throw()}}class Mg{constructor(){_defineProperty(this,"tag",Gi),_defineProperty(this,"lastRevision",1),_defineProperty(this,"target",void 0)}finalize(e,t){this.target=t,this.didModify(e)}evaluate(e){let{tag:t,target:r,lastRevision:n}=this +!e.alwaysRevalidate&&Fi(t,n)&&(mo(t),e.goto(He(r,"VM BUG: Target must be set before attempting to jump")))}didModify(e){this.tag=e,this.lastRevision=Bi(this.tag),mo(e)}}class Dg{constructor(e){this.debugLabel=e}evaluate(){uo(this.debugLabel)}}class Ng{constructor(e){this.target=e}evaluate(){let e=co() +this.target.didModify(e)}}yg.add(Hr.Text,((e,{op1:t})=>{e.elements().appendText(e[Cm].getValue(t))})),yg.add(Hr.Comment,((e,{op1:t})=>{e.elements().appendComment(e[Cm].getValue(t))})),yg.add(Hr.OpenElement,((e,{op1:t})=>{e.elements().openElement(e[Cm].getValue(t))})),yg.add(Hr.OpenDynamicElement,(e=>{let t=On(Qo(On(e.stack.pop(),Wg)),jn) +e.elements().openElement(t)})),yg.add(Hr.PushRemoteElement,(e=>{let t=On(e.stack.pop(),Wg),r=On(e.stack.pop(),Wg),n=On(e.stack.pop(),Wg),i=On(Qo(t),Gn),o=On(Qo(r),Pn(Sn(Qn))),s=Qo(n) +Go(t)||e.updateWith(new Rg(t)),void 0===o||Go(r)||e.updateWith(new Rg(r)) +let a=e.elements().pushRemoteElement(i,s,o) +if(a&&e.associateDestroyable(a),void 0!==e.env.debugRenderTree){let n=by(void 0===o?{}:{insertBefore:r},[t]) +e.env.debugRenderTree.create(a,{type:"keyword",name:"in-element",args:n,instance:null}),Ti(a,(()=>{e.env.debugRenderTree?.willDestroy(a)}))}})),yg.add(Hr.PopRemoteElement,(e=>{let t=e.elements().popRemoteElement() +void 0!==e.env.debugRenderTree&&e.env.debugRenderTree.didRender(t,t)})),yg.add(Hr.FlushElement,(e=>{let t=On(e.fetchValue(6),Gg),r=null +t&&(r=t.flush(e),e.loadValue(6,null)),e.elements().flushElement(r)})),yg.add(Hr.CloseElement,(e=>{let t=e.elements().closeElement() +null!==t&&t.forEach((t=>{e.env.scheduleInstallModifier(t) +const r=t.manager.getDestroyable(t.state) +null!==r&&e.associateDestroyable(r)}))})),yg.add(Hr.Modifier,((e,{op1:t})=>{if(!1===e.env.isInteractive)return +let r=e.getOwner(),n=On(e.stack.pop(),Yg),i=e[Cm].getValue(t),{manager:o}=i,{constructing:s}=e.elements(),a=n.capture(),l=o.create(r,He(s,"BUG: ElementModifier could not find the element it applies to"),i.state,a),u={manager:o,state:l,definition:i} +He(On(e.fetchValue(6),Gg),"BUG: ElementModifier could not find operations to append to").addModifier(e,u,a) +let c=o.getTag(l) +return null!==c?(mo(c),e.updateWith(new Ig(c,u))):void 0})),yg.add(Hr.DynamicModifier,(e=>{if(!1===e.env.isInteractive)return +let{stack:t}=e,r=On(t.pop(),Wg),n=On(t.pop(),Yg).capture(),{positional:i,named:o}=n,{constructing:s}=e.elements(),a=e.getOwner(),l=Ho((()=>{let e,t,l=Qo(r) +if(!Je(l))return +if(kg(l,Br.Modifier)){let{definition:r,owner:s,positional:a,named:u}=Cg(l) +t=r,e=s,void 0!==a&&(n.positional=a.concat(i)),void 0!==u&&(n.named=Object.assign({},...u,o))}else t=l,e=a +let u=Is(t,!0) +if(null===u)throw new Error("BUG: modifier manager expected") +let c={resolvedName:null,manager:u,state:t},d=u.create(e,He(s,"BUG: ElementModifier could not find the element it applies to"),c.state,n) +return{manager:u,state:d,definition:c}})),u=Qo(l),c=null +if(void 0!==u){He(On(e.fetchValue(6),Gg),"BUG: ElementModifier could not find operations to append to").addModifier(e,u,n),c=u.manager.getTag(u.state),null!==c&&mo(c)}return!Go(r)||c?e.updateWith(new jg(c,u,l)):void 0})) +class Ig{constructor(e,t){_defineProperty(this,"lastUpdated",void 0),this.tag=e,this.modifier=t,this.lastUpdated=Bi(e)}evaluate(e){let{modifier:t,tag:r,lastUpdated:n}=this +mo(r),Fi(r,n)||(e.env.scheduleUpdateModifier(t),this.lastUpdated=Bi(r))}}class jg{constructor(e,t,r){_defineProperty(this,"lastUpdated",void 0),this.tag=e,this.instance=t,this.instanceRef=r,this.lastUpdated=Bi(e??Ji)}evaluate(e){let{tag:t,lastUpdated:r,instance:n,instanceRef:i}=this,o=Qo(i) +if(o!==n){if(void 0!==n){let e=n.manager.getDestroyable(n.state) +null!==e&&Oi(e)}if(void 0!==o){let{manager:r,state:n}=o,i=r.getDestroyable(n) +null!==i&&ki(this,i),t=r.getTag(n),null!==t&&(this.lastUpdated=Bi(t)),this.tag=t,e.env.scheduleInstallModifier(o)}this.instance=o}else null===t||Fi(t,r)||(e.env.scheduleUpdateModifier(n),this.lastUpdated=Bi(t)) +null!==t&&mo(t)}}yg.add(Hr.StaticAttr,((e,{op1:t,op2:r,op3:n})=>{let i=e[Cm].getValue(t),o=e[Cm].getValue(r),s=n?e[Cm].getValue(n):null +e.elements().setStaticAttribute(i,o,s)})),yg.add(Hr.DynamicAttr,((e,{op1:t,op2:r,op3:n})=>{let i=e[Cm].getValue(t),o=e[Cm].getValue(r),s=On(e.stack.pop(),Wg),a=Qo(s),l=n?e[Cm].getValue(n):null,u=e.elements().setDynamicAttribute(i,a,o,l) +Go(s)||e.updateWith(new Lg(s,u,e.env))})) +class Lg{constructor(e,t,r){_defineProperty(this,"updateRef",void 0) +let n=!1 +this.updateRef=Ho((()=>{let i=Qo(e) +!0===n?t.update(i,r):n=!0})),Qo(this.updateRef)}evaluate(){Qo(this.updateRef)}}yg.add(Hr.PushComponentDefinition,((e,{op1:t})=>{let r=e[Cm].getValue(t) +Ue(!!r,`Missing component for ${t}`) +let{manager:n,capabilities:i}=r,o={definition:r,manager:n,capabilities:i,state:null,handle:null,table:null,lookup:null} +e.stack.push(o)})),yg.add(Hr.ResolveDynamicComponent,((e,{op1:t})=>{let r,n=e.stack,i=On(Qo(On(n.pop(),Wg)),Hn(jn,ny)),o=e[Cm],s=e.getOwner() +if(o.getValue(t),e.loadValue(7,null),"string"==typeof i){let t=function(e,t,r,n){let i=e.lookupComponent(r,He(n,"BUG: expected owner when looking up component")) +return t.resolvedComponent(i,r)}(e.runtime.resolver,o,i,s) +r=He(t,`Could not find a component named "${i}"`)}else r=Eg(i)?i:o.component(i,s) +n.push(r)})),yg.add(Hr.ResolveCurriedComponent,(e=>{let t,r=e.stack,n=Qo(On(r.pop(),Wg)),i=e[Cm] +t=Eg(n)?n:i.component(n,e.getOwner(),!0),r.push(t)})),yg.add(Hr.PushDynamicComponentInstance,(e=>{let t,r,{stack:n}=e,i=n.pop() +Eg(i)?r=t=null:(r=i.manager,t=i.capabilities),n.push({definition:i,capabilities:t,manager:r,state:null,handle:null,table:null})})),yg.add(Hr.PushArgs,((e,{op1:t,op2:r,op3:n})=>{let i=e.stack,o=e[Cm].getArray(t),s=n>>4,a=8&n,l=7&n?e[Cm].getArray(r):je +e[Om].setup(i,o,l,s,!!a),i.push(e[Om])})),yg.add(Hr.PushEmptyArgs,(e=>{let{stack:t}=e +t.push(e[Om].empty(t))})),yg.add(Hr.CaptureArgs,(e=>{let t=e.stack,r=On(t.pop(),wn(cy)).capture() +t.push(r)})),yg.add(Hr.PrepareArgs,((e,{op1:t})=>{let r=e.stack,n=e.fetchValue(t),i=On(r.pop(),wn(cy)),{definition:o}=n +if(kg(o,Br.Component)){Ue(!o.manager,"If the component definition was curried, we don't yet have a manager") +let t=e[Cm],{definition:r,owner:s,resolved:a,positional:l,named:u}=Cg(o) +if(!0===a)o=r +else if("string"==typeof r){let n=e.runtime.resolver.lookupComponent(r,s) +o=t.resolvedComponent(He(n,"BUG: expected resolved component"),r)}else o=t.component(r,s) +void 0!==u&&i.named.merge(_t({},...u)),void 0!==l&&(i.realloc(l.length),i.positional.prepend(l)) +let{manager:c}=o +Ue(null===n.manager,"component instance manager should not be populated yet"),Ue(null===n.capabilities,"component instance manager should not be populated yet"),n.definition=o,n.manager=c,n.capabilities=o.capabilities,e.loadValue(7,s)}let{manager:s,state:a}=o +if(!ws(0,n.capabilities,Fr.prepareArgs))return void r.push(i) +let l=i.blocks.values,u=i.blocks.names,c=s.prepareArgs(a,i) +if(c){i.clear() +for(let i=0;i{let n=On(e.fetchValue(r),ry),{definition:i,manager:o,capabilities:s}=n +if(!ws(0,s,Fr.createInstance))return +let a=null +ws(0,s,Fr.dynamicScope)&&(a=e.dynamicScope()) +let l=1&t,u=null +ws(0,s,Fr.createArgs)&&(u=On(e.stack.peek(),Yg)) +let c=null +ws(0,s,Fr.createCaller)&&(c=e.getSelf()) +let d=o.create(e.getOwner(),i.state,u,e.env,a,c,!!l) +n.state=d,ws(0,s,Fr.updateHook)&&e.updateWith(new Hg(d,o,a))})),yg.add(Hr.RegisterComponentDestructor,((e,{op1:t})=>{let{manager:r,state:n,capabilities:i}=On(e.fetchValue(t),ry),o=r.getDestroyable(n) +o&&e.associateDestroyable(o)})),yg.add(Hr.BeginComponentTransaction,((e,{op1:t})=>{e.beginCacheGroup(undefined),e.elements().pushSimpleBlock()})),yg.add(Hr.PutComponentOperations,(e=>{e.loadValue(6,new Bg)})),yg.add(Hr.ComponentAttr,((e,{op1:t,op2:r,op3:n})=>{let i=e[Cm].getValue(t),o=e[Cm].getValue(r),s=On(e.stack.pop(),Wg),a=n?e[Cm].getValue(n):null +On(e.fetchValue(6),wn(Bg)).setAttribute(i,s,o,a)})),yg.add(Hr.StaticComponentAttr,((e,{op1:t,op2:r,op3:n})=>{let i=e[Cm].getValue(t),o=e[Cm].getValue(r),s=n?e[Cm].getValue(n):null +On(e.fetchValue(6),wn(Bg)).setStaticAttribute(i,o,s)})) +class Bg{constructor(){_defineProperty(this,"attributes",Ye()),_defineProperty(this,"classes",[]),_defineProperty(this,"modifiers",[])}setAttribute(e,t,r,n){let i={value:t,namespace:n,trusting:r} +"class"===e&&this.classes.push(t),this.attributes[e]=i}setStaticAttribute(e,t,r){let n={value:t,namespace:r} +"class"===e&&this.classes.push(t),this.attributes[e]=n}addModifier(e,t,r){if(this.modifiers.push(t),void 0!==e.env.debugRenderTree){const{manager:n,definition:i,state:o}=t +if(null===o||"object"!=typeof o&&"function"!=typeof o)return +let{element:s,constructing:a}=e.elements(),l=n.getDebugName(i.state),u=n.getDebugInstance(o) +Ue(a,"Expected a constructing element in addModifier") +let c=new Rm(s,a,a) +e.env.debugRenderTree.create(o,{type:"modifier",name:l,args:r,instance:u}),e.env.debugRenderTree.didRender(o,c),e.associateDestroyable(o),e.updateWith(new $g(o)),e.updateWith(new qg(o,c)),Ti(o,(()=>{e.env.debugRenderTree?.willDestroy(o)}))}}flush(e){let t,r=this.attributes +for(let n in this.attributes){if("type"===n){t=r[n] +continue}let i=ze(this.attributes[n]) +"class"===n?Ug(e,"class",Fg(this.classes),i.namespace,i.trusting):Ug(e,n,i.value,i.namespace,i.trusting)}return void 0!==t&&Ug(e,"type",t.value,t.namespace,t.trusting),this.modifiers}}function Fg(e){return 0===e.length?"":1===e.length?ze(e[0]):function(e){return e.every((e=>"string"==typeof e))}(e)?e.join(" "):(t=e,Ho((()=>{let e=[] +for(const r of t){let t=Dm("string"==typeof r?r:Qo(r)) +t&&e.push(t)}return 0===e.length?null:e.join(" ")}))) +var t}function Ug(e,t,r,n,i=!1){if("string"==typeof r)e.elements().setStaticAttribute(t,r,n) +else{let o=e.elements().setDynamicAttribute(t,Qo(r),i,n) +Go(r)||e.updateWith(new Lg(r,o,e.env))}}function zg(e,t,r,n,i){let o=r.table.symbols.indexOf(e),s=n.get(t);-1!==o&&i.scope().bindBlock(o+1,s),r.lookup&&(r.lookup[e]=s)}yg.add(Hr.DidCreateElement,((e,{op1:t})=>{let{definition:r,state:n}=On(e.fetchValue(t),ry),{manager:i}=r,o=On(e.fetchValue(6),wn(Bg)) +i.didCreateElement(n,He(e.elements().constructing,"Expected a constructing element in DidCreateOpcode"),o)})),yg.add(Hr.GetComponentSelf,((e,{op1:t,op2:r})=>{let n=On(e.fetchValue(t),ry),{definition:i,state:o}=n,{manager:s}=i,a=s.getSelf(o) +if(void 0!==e.env.debugRenderTree){let n,i,s=On(e.fetchValue(t),ry),{definition:l,manager:u}=s +if(e.stack.peek()===e[Om])n=e[Om].capture() +else{let t=e[Cm].getArray(r) +e[Om].setup(e.stack,t,[],0,!0),n=e[Om].capture()}let c=l.compilable +if(null===c?(Ue(ws(0,s.capabilities,Fr.dynamicLayout),"BUG: No template was found for this component, and the component did not have the dynamic layout capability"),c=u.getDynamicLayout(o,e.runtime.resolver),i=null!==c?c.moduleName:"__default__.hbs"):i=c.moduleName,e.associateDestroyable(s),Ag(u)){u.getDebugCustomRenderTree(s.definition.state,s.state,n,i).forEach((t=>{let{bucket:r}=t +e.env.debugRenderTree.create(r,t),Ti(s,(()=>{e.env.debugRenderTree?.willDestroy(r)})),e.updateWith(new $g(r))}))}else{let t=l.resolvedName??u.getDebugName(l.state) +e.env.debugRenderTree.create(s,{type:"component",name:t,args:n,template:i,instance:Qo(a)}),Ti(s,(()=>{e.env.debugRenderTree?.willDestroy(s)})),e.updateWith(new $g(s))}}e.stack.push(a)})),yg.add(Hr.GetComponentTagName,((e,{op1:t})=>{let{definition:r,state:n}=On(e.fetchValue(t),ry),{manager:i}=r,o=i.getTagName(n) +e.stack.push(o)})),yg.add(Hr.GetComponentLayout,((e,{op1:t})=>{let r=On(e.fetchValue(t),ry),{manager:n,definition:i}=r,{stack:o}=e,{compilable:s}=i +if(null===s){let{capabilities:t}=r +Ue(ws(0,t,Fr.dynamicLayout),"BUG: No template was found for this component, and the component did not have the dynamic layout capability"),s=n.getDynamicLayout(r.state,e.runtime.resolver),null===s&&(s=ws(0,t,Fr.wrapped)?Ct(e[Cm].defaultTemplate).asWrappedLayout():Ct(e[Cm].defaultTemplate).asLayout())}let a=s.compile(e.context) +o.push(s.symbolTable),o.push(a)})),yg.add(Hr.Main,((e,{op1:t})=>{let r=On(e.stack.pop(),uy),n=On(e.stack.pop(),iy),{manager:i,capabilities:o}=r,s={definition:r,manager:i,capabilities:o,state:null,handle:n.handle,table:n.symbolTable,lookup:null} +e.loadValue(t,s)})),yg.add(Hr.PopulateLayout,((e,{op1:t})=>{let{stack:r}=e,n=On(r.pop(),In),i=On(r.pop(),qn),o=On(e.fetchValue(t),ry) +o.handle=n,o.table=i})),yg.add(Hr.VirtualRootScope,((e,{op1:t})=>{let r,{table:n,manager:i,capabilities:o,state:s}=On(e.fetchValue(t),oy) +ws(0,o,Fr.hasSubOwner)?(r=i.getOwner(s),e.loadValue(7,null)):(r=e.fetchValue(7),null===r?r=e.getOwner():e.loadValue(7,null)),e.pushRootScope(n.symbols.length+1,r)})),yg.add(Hr.SetupForEval,((e,{op1:t})=>{let r=On(e.fetchValue(t),oy) +if(r.table.hasEval){let t=r.lookup=Ye() +e.scope().bindEvalScope(t)}})),yg.add(Hr.SetNamedVariables,((e,{op1:t})=>{let r=On(e.fetchValue(t),oy),n=e.scope(),i=On(e.stack.peek(),Yg),o=i.named.atNames +for(let s=o.length-1;s>=0;s--){let e=ze(o[s]),t=r.table.symbols.indexOf(e),a=i.named.get(e,!0);-1!==t&&n.bindSymbol(t+1,a),r.lookup&&(r.lookup[e]=a)}})),yg.add(Hr.SetBlocks,((e,{op1:t})=>{let r=On(e.fetchValue(t),oy),{blocks:n}=On(e.stack.peek(),Yg) +for(const[i]of Fe(n.names))zg(ze(n.symbolNames[i]),ze(n.names[i]),r,n,e)})),yg.add(Hr.InvokeComponentLayout,((e,{op1:t})=>{let r=On(e.fetchValue(t),oy) +e.call(r.handle)})),yg.add(Hr.DidRenderLayout,((e,{op1:t})=>{let r=On(e.fetchValue(t),ry),{manager:n,state:i,capabilities:o}=r,s=e.elements().popBlock() +if(void 0!==e.env.debugRenderTree)if(Ag(n)){n.getDebugCustomRenderTree(r.definition.state,i,Cy).reverse().forEach((t=>{let{bucket:r}=t +e.env.debugRenderTree.didRender(r,s),e.updateWith(new qg(r,s))}))}else e.env.debugRenderTree.didRender(r,s),e.updateWith(new qg(r,s)) +if(ws(0,o,Fr.createInstance)){On(n,En({didRenderLayout:Mn})).didRenderLayout(i,s),e.env.didCreate(r),e.updateWith(new Vg(r,s))}})),yg.add(Hr.CommitComponentTransaction,(e=>{e.commitCacheGroup()})) +class Hg{constructor(e,t,r){this.component=e,this.manager=t,this.dynamicScope=r}evaluate(e){let{component:t,manager:r,dynamicScope:n}=this +r.update(t,n)}}class Vg{constructor(e,t){this.component=e,this.bounds=t}evaluate(e){let{component:t,bounds:r}=this,{manager:n,state:i}=t +n.didUpdateLayout(i,r),e.env.didUpdate(t)}}class $g{constructor(e){this.bucket=e}evaluate(e){e.env.debugRenderTree?.update(this.bucket)}}class qg{constructor(e,t){this.bucket=e,this.bounds=t}evaluate(e){e.env.debugRenderTree?.didRender(this.bucket,this.bounds)}}const Gg=dn((()=>Sn(wn(Bg)))) +const Wg=new class{validate(e){return"object"==typeof e&&null!==e&&Ao in e}expected(){return"Reference"}},Qg=En({next:Mn,isEmpty:Mn}),Yg=dn((()=>wn(cy))),Kg=Mn +const Jg=new class{validate(e){return e===jo}expected(){return"undefined"}},Xg=En({positional:dn((()=>kn(Wg))),named:dn((()=>Tn(Wg)))}),Zg=dn((()=>wn(wm))),ey=En({getCapabilities:Mn}),ty=Dn,ry=En({definition:Fn,state:Fn,handle:Fn,table:Fn}),ny=Hn(zn,Mn),iy=En({handle:Dn,symbolTable:qn}),oy=En({definition:Fn,state:Fn,handle:In,table:qn}),sy=En({compile:Mn,symbolTable:$n}),ay=En({compile:Mn,symbolTable:qn}),ly=En({0:sy,1:Zg,2:$n}),uy=En({resolvedName:Sn(jn),handle:Dn,state:Hn(zn,Mn),manager:ey,capabilities:ty,compilable:ay}) +class cy{constructor(){_defineProperty(this,"stack",null),_defineProperty(this,"positional",new hy),_defineProperty(this,"named",new py),_defineProperty(this,"blocks",new gy)}empty(e){let t=e[km][qr]+1 +return this.named.empty(e,t),this.positional.empty(e,t),this.blocks.empty(e,t),this}setup(e,t,r,n,i){this.stack=e +let o=this.named,s=t.length,a=e[km][qr]-s+1 +o.setup(e,a,s,t,i) +let l=a-n +this.positional.setup(e,l,n) +let u=this.blocks,c=r.length,d=l-3*c +u.setup(e,d,c,r)}get base(){return this.blocks.base}get length(){return this.positional.length+this.named.length+3*this.blocks.length}at(e){return this.positional.at(e)}realloc(e){let{stack:t}=this +if(e>0&&null!==t){let{positional:r,named:n}=this,i=r.base+e +for(let e=r.length+n.length-1;e>=0;e--)t.copy(e+r.base,e+i) +r.base+=e,n.base+=e,t[km][qr]+=e}}capture(){let e=0===this.positional.length?Ty:this.positional.capture() +return{named:0===this.named.length?ky:this.named.capture(),positional:e}}clear(){let{stack:e,length:t}=this +t>0&&null!==e&&e.pop(t)}}const dy=Ie() +class hy{constructor(){_defineProperty(this,"base",0),_defineProperty(this,"length",0),_defineProperty(this,"stack",null),_defineProperty(this,"_references",null)}empty(e,t){this.stack=e,this.base=t,this.length=0,this._references=dy}setup(e,t,r){this.stack=e,this.base=t,this.length=r,this._references=0===r?dy:null}at(e){let{base:t,length:r,stack:n}=this +return e<0||e>=r?jo:On(n.get(e,t),Wg)}capture(){return this.references}prepend(e){let t=e.length +if(t>0){let{base:r,length:n,stack:i}=this +this.base=r-=t,this.length=n+t +for(let o=0;o0){let{names:r,length:n,stack:i}=this,o=r.slice() +for(const s of t){-1===o.indexOf(s)&&(n=o.push(s),i.push(e[s]))}this.length=n,this._references=null,this._names=o,this._atNames=null}}get references(){let e=this._references +if(!e){let{base:t,length:r,stack:n}=this +e=this._references=n.slice(t,t+r)}return e}toSyntheticName(e){return e.slice(1)}toAtName(e){return`@${e}`}}function fy(e){return`&${e}`}const my=Ie() +class gy{constructor(){_defineProperty(this,"internalValues",null),_defineProperty(this,"_symbolNames",null),_defineProperty(this,"internalTag",null),_defineProperty(this,"names",je),_defineProperty(this,"length",0),_defineProperty(this,"base",0)}empty(e,t){this.stack=e,this.names=je,this.base=t,this.length=0,this._symbolNames=null,this.internalTag=Gi,this.internalValues=my}setup(e,t,r,n){this.stack=e,this.names=n,this.base=t,this.length=r,this._symbolNames=null,0===r?(this.internalTag=Gi,this.internalValues=my):(this.internalTag=null,this.internalValues=null)}get values(){let e=this.internalValues +if(!e){let{base:t,length:r,stack:n}=this +e=this.internalValues=n.slice(t,t+3*r)}return e}has(e){return-1!==this.names.indexOf(e)}get(e){let t=this.names.indexOf(e) +if(-1===t)return null +let{base:r,stack:n}=this,i=On(n.get(3*t,r),Sn($n)),o=On(n.get(3*t+1,r),Sn(Zg)),s=On(n.get(3*t+2,r),Sn(Hn(In,sy))) +return null===s?null:[s,o,i]}capture(){return new yy(this.names,this.values)}get symbolNames(){let e=this._symbolNames +return null===e&&(e=this._symbolNames=this.names.map(fy)),e}}class yy{constructor(e,t){_defineProperty(this,"length",void 0),this.names=e,this.values=t,this.length=e.length}has(e){return-1!==this.names.indexOf(e)}get(e){let t=this.names.indexOf(e) +return-1===t?null:[this.values[3*t+2],this.values[3*t+1],this.values[3*t]]}}function by(e,t){return{named:e,positional:t}}function _y(e){let t=Ye() +for(const[r,n]of Object.entries(e))t[r]=Qo(n) +return t}function vy(e){return e.map(Qo)}const wy=Symbol("ARGUMENT_ERROR") +function Sy(e){return null!==e&&"object"==typeof e&&e[wy]}function Py(e){return{[wy]:!0,error:e}}function Ey(e){let t=function(e){let t=Ye() +for(const[n,i]of Object.entries(e))try{t[n]=Qo(i)}catch(r){t[n]=Py(r)}return t}(e.named) +return{named:t,positional:function(e){return e.map((e=>{try{return Qo(e)}catch(t){return Py(t)}}))}(e.positional)}}const ky=Object.freeze(Object.create(null)),Ty=dy,Cy=by(ky,Ty) +function Oy(e){return"string"==typeof e?e:"function"!=typeof e.toString?"":String(e)}function Ay(e,t){let r,n=Bs(e) +return null===n?r=null:(r="function"==typeof n?n:n.getHelper(e),Ue(n,"BUG: expected manager or helper")),r}function Ry(e){return Ue(Array.isArray(e)||e===jo,"a reference other than UNDEFINED_REFERENCE is illegal here"),e===jo}yg.add(Hr.Curry,((e,{op1:t,op2:r})=>{let n=e.stack,i=On(n.pop(),Wg),o=On(n.pop(),Xg),s=e.getOwner() +e.runtime.resolver,e.loadValue(Wr,function(e,t,r,n,i,o){let s,a +return Ho((()=>{let i=Qo(t) +return i===s||(a=kg(i,e)?n?Og(e,i,r,n):n:e===Br.Component&&"string"==typeof i&&i||Je(i)?Og(e,i,r,n):null,s=i),a}))}(t,i,s,o))})),yg.add(Hr.DynamicHelper,(e=>{let t,r=e.stack,n=On(r.pop(),Wg),i=On(r.pop(),Yg).capture(),o=e.getOwner(),s=Ho((()=>{void 0!==t&&Oi(t) +let e=Qo(n) +if(kg(e,Br.Helper)){let{definition:r,owner:n,positional:o,named:a}=Cg(e),l=Ay(r) +void 0!==a&&(i.named=_t({},...a,i.named)),void 0!==o&&(i.positional=o.concat(i.positional)),t=l(i,n),ki(s,t)}else if(Je(e)){let r=Ay(e) +t=r(i,o),Ri(t)&&ki(s,t)}else t=jo})),a=Ho((()=>(Qo(s),Qo(t)))) +e.associateDestroyable(s),e.loadValue(Wr,a)})),yg.add(Hr.Helper,((e,{op1:t})=>{let r=e.stack,n=On(e[Cm].getValue(t),Kg)(On(r.pop(),Yg).capture(),e.getOwner(),e.dynamicScope()) +Ri(n)&&e.associateDestroyable(n),e.loadValue(Wr,n)})),yg.add(Hr.GetVariable,((e,{op1:t})=>{let r=e.referenceForSymbol(t) +e.stack.push(r)})),yg.add(Hr.SetVariable,((e,{op1:t})=>{let r=On(e.stack.pop(),Wg) +e.scope().bindSymbol(t,r)})),yg.add(Hr.SetBlock,((e,{op1:t})=>{let r=On(e.stack.pop(),sy),n=On(e.stack.pop(),Zg),i=On(e.stack.pop(),$n) +e.scope().bindBlock(t,[r,n,i])})),yg.add(Hr.ResolveMaybeLocal,((e,{op1:t})=>{let r=e[Cm].getValue(t),n=e.scope().getPartialMap()[r] +void 0===n&&(n=Ko(e.getSelf(),r)),e.stack.push(n)})),yg.add(Hr.RootScope,((e,{op1:t})=>{e.pushRootScope(t,e.getOwner())})),yg.add(Hr.GetProperty,((e,{op1:t})=>{let r=e[Cm].getValue(t),n=On(e.stack.pop(),Wg) +e.stack.push(Ko(n,r))})),yg.add(Hr.GetBlock,((e,{op1:t})=>{let{stack:r}=e,n=e.scope().getBlock(t) +r.push(n)})),yg.add(Hr.SpreadBlock,(e=>{let{stack:t}=e,r=On(t.pop(),Sn(Hn(ly,Jg))) +if(r&&!Ry(r)){let[e,n,i]=r +t.push(i),t.push(n),t.push(e)}else t.push(null),t.push(null),t.push(null)})),yg.add(Hr.HasBlock,(e=>{let{stack:t}=e,r=On(t.pop(),Sn(Hn(ly,Jg))) +r&&!Ry(r)?t.push(Bo):t.push(Fo)})),yg.add(Hr.HasBlockParams,(e=>{let t=e.stack.pop(),r=e.stack.pop() +On(t,Pn(Hn(In,sy))),On(r,Pn(Zg)) +let n=On(e.stack.pop(),Pn($n)),i=n&&n.parameters.length +e.stack.push(i?Bo:Fo)})),yg.add(Hr.Concat,((e,{op1:t})=>{let r=new Array(t) +for(let i=t;i>0;i--){r[i-1]=On(e.stack.pop(),Wg)}var n +e.stack.push((n=r,Ho((()=>{const e=[] +for(const t of n){const r=Qo(t) +null!=r&&e.push(Oy(r))}return e.length>0?e.join(""):null}))))})),yg.add(Hr.IfInline,(e=>{let t=On(e.stack.pop(),Wg),r=On(e.stack.pop(),Wg),n=On(e.stack.pop(),Wg) +e.stack.push(Ho((()=>!0===si(Qo(t))?Qo(r):Qo(n))))})),yg.add(Hr.Not,(e=>{let t=On(e.stack.pop(),Wg) +e.stack.push(Ho((()=>!si(Qo(t)))))})),yg.add(Hr.GetDynamicVar,(e=>{let t=e.dynamicScope(),r=e.stack,n=On(r.pop(),Wg) +r.push(Ho((()=>{let e=String(Qo(n)) +return Qo(t.get(e))})))})),yg.add(Hr.Log,(e=>{let{positional:t}=On(e.stack.pop(),Yg).capture() +e.loadValue(Wr,Ho((()=>{console.log(...vy(t))})))})) +class xy{constructor(e,t,r){this.node=e,this.reference=t,this.lastValue=r}evaluate(){let e,t=Qo(this.reference),{lastValue:r}=this +if(t!==r&&(e=Nm(t)?"":Lm(t)?t:String(t),e!==r)){this.node.nodeValue=this.lastValue=e}}}function My(e){return function(e){return Lm(e)||Nm(e)||"boolean"==typeof e||"number"==typeof e}(e)?Lr.String:kg(e,Br.Component)||zs(e)?Lr.Component:kg(e,Br.Helper)||Hs(e)?Lr.Helper:Im(e)?Lr.SafeString:function(e){return jm(e)&&11===e.nodeType}(e)?Lr.Fragment:jm(e)?Lr.Node:Lr.String}function Dy(e){return Je(e)?kg(e,Br.Component)||zs(e)?Lr.Component:Lr.Helper:Lr.String}function Ny(e,t){console.info("Use `context`, and `get()` to debug this template."),t("this")}yg.add(Hr.ContentType,(e=>{let t=On(e.stack.peek(),Wg) +e.stack.push(My(Qo(t))),Go(t)||e.updateWith(new xg(t,My))})),yg.add(Hr.DynamicContentType,(e=>{let t=On(e.stack.peek(),Wg) +e.stack.push(Dy(Qo(t))),Go(t)||e.updateWith(new xg(t,Dy))})),yg.add(Hr.AppendHTML,(e=>{let t=Qo(On(e.stack.pop(),Wg)),r=Nm(t)?"":String(t) +e.elements().appendDynamicHTML(r)})),yg.add(Hr.AppendSafeHTML,(e=>{let t=On(e.stack.pop(),Wg),r=On(Qo(t),Un).toHTML(),n=Nm(r)?"":On(r,jn) +e.elements().appendDynamicHTML(n)})),yg.add(Hr.AppendText,(e=>{let t=On(e.stack.pop(),Wg),r=Qo(t),n=Nm(r)?"":String(r),i=e.elements().appendDynamicText(n) +Go(t)||e.updateWith(new xy(i,t,n))})),yg.add(Hr.AppendDocumentFragment,(e=>{let t=On(e.stack.pop(),Wg),r=On(Qo(t),Wn) +e.elements().appendDynamicFragment(r)})),yg.add(Hr.AppendNode,(e=>{let t=On(e.stack.pop(),Wg),r=On(Qo(t),Qn) +e.elements().appendDynamicNode(r)})) +let Iy=Ny +class jy{constructor(e,t,r){_defineProperty(this,"locals",Ye()),this.scope=e +for(const n of r){let r=ze(t[n-1]),i=e.getSymbol(n) +this.locals[r]=i}}get(e){let t,{scope:r,locals:n}=this,i=e.split("."),[o,...s]=e.split("."),a=r.getEvalScope() +return"this"===o?t=r.getSelf():n[o]?t=ze(n[o]):0===o.indexOf("@")&&a[o]?t=a[o]:(t=this.scope.getSelf(),s=i),s.reduce(((e,t)=>Ko(e,t)),t)}}yg.add(Hr.Debugger,((e,{op1:t,op2:r})=>{let n=e[Cm].getArray(t),i=e[Cm].getArray(r),o=new jy(e.scope(),n,i) +Iy(Qo(e.getSelf()),(e=>Qo(o.get(e))))})),yg.add(Hr.EnterList,((e,{op1:t,op2:r})=>{let n=e.stack,i=On(n.pop(),Wg),o=Qo(On(n.pop(),Wg)),s=ss(i,null===o?"@identity":String(o)),a=Qo(s) +e.updateWith(new xg(s,(e=>e.isEmpty()))),!0===a.isEmpty()?e.goto(r+1):(e.enterList(s,t),e.stack.push(a))})),yg.add(Hr.ExitList,(e=>{e.exitList()})),yg.add(Hr.Iterate,((e,{op1:t})=>{let r=On(e.stack.peek(),Qg).next() +null!==r?e.registerItem(e.enterItem(r)):e.goto(t)})) +const Ly={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!1,updateHook:!1,createInstance:!1,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +class By{getCapabilities(){return Ly}getDebugName({name:e}){return e}getSelf(){return Lo}getDestroyable(){return null}}const Fy=new By +class Uy{constructor(e="@glimmer/component/template-only",t="(unknown template-only component)"){this.moduleName=e,this.name=t}toString(){return this.moduleName}}function zy(e,t){return new Uy(e,t)}Fs(Fy,Uy.prototype) +const Hy={foreignObject:1,desc:1,title:1},Vy=Object.create(null) +class $y{constructor(e){this.document=e,this.setupUselessElement()}setupUselessElement(){this.uselessElement=this.document.createElement("div")}createElement(e,t){let r,n +if(t?(r=t.namespaceURI===rt||"svg"===e,n=!!Hy[t.tagName]):(r="svg"===e,n=!1),r&&!n){if(Vy[e])throw new Error(`Cannot create a ${e} inside an SVG context`) +return this.document.createElementNS(rt,e)}return this.document.createElement(e)}insertBefore(e,t,r){e.insertBefore(t,r)}insertHTMLBefore(e,t,r){if(""===r){const r=this.createComment("") +return e.insertBefore(r,t),new Rm(e,r,r)}const n=t?t.previousSibling:e.lastChild +let i +if(null===t)e.insertAdjacentHTML(ot,r),i=He(e.lastChild,"bug in insertAdjacentHTML?") +else if(t instanceof HTMLElement)t.insertAdjacentHTML("beforebegin",r),i=He(t.previousSibling,"bug in insertAdjacentHTML?") +else{const{uselessElement:n}=this +e.insertBefore(n,t),n.insertAdjacentHTML(nt,r),i=He(n.previousSibling,"bug in insertAdjacentHTML?"),e.removeChild(n)}const o=He(n?n.nextSibling:e.firstChild,"bug in insertAdjacentHTML?") +return new Rm(e,o,i)}createTextNode(e){return this.document.createTextNode(e)}createComment(e){return this.document.createComment(e)}}function qy(e,t,r){if(!e)return t +if(!function(e,t){const r=e.createElementNS(t,"svg") +try{r.insertAdjacentHTML(ot,"")}catch(n){}finally{return 1!==r.childNodes.length||wt(ze(r.firstChild),"SVG").namespaceURI!==rt}}(e,r))return t +const n=e.createElement("div") +return class extends t{insertHTMLBefore(e,t,i){return""===i||e.namespaceURI!==r?super.insertHTMLBefore(e,t,i):function(e,t,r,n){let i +if(Ue(""!==r,"html cannot be empty"),"FOREIGNOBJECT"===e.tagName.toUpperCase()){const e=""+r+"" +Ze(t),t.insertAdjacentHTML(it,e),i=t.firstChild.firstChild}else{const e=""+r+"" +Ze(t),t.insertAdjacentHTML(it,e),i=t.firstChild}return function(e,t,r){const n=He(e.firstChild,"source is empty") +let i=n,o=n +for(;o;){const e=o.nextSibling +t.insertBefore(o,r),i=o,o=e}return new Rm(t,n,i)}(i,e,n)}(e,n,i,t)}}}function Gy(e,t){return e&&function(e){const t=e.createElement("div") +if(t.appendChild(e.createTextNode("first")),t.insertAdjacentHTML(ot,"second"),2===t.childNodes.length)return!1 +return!0}(e)?class extends t{constructor(e){super(e),_defineProperty(this,"uselessComment",void 0),this.uselessComment=e.createComment("")}insertHTMLBefore(e,t,r){if(""===r)return super.insertHTMLBefore(e,t,r) +let n=!1 +const i=t?t.previousSibling:e.lastChild +i&&i instanceof Text&&(n=!0,e.insertBefore(this.uselessComment,t)) +const o=super.insertHTMLBefore(e,t,r) +return n&&e.removeChild(this.uselessComment),o}}:t}const Wy="undefined"==typeof document?null:vt(document) +let Qy=class extends $y{createElementNS(e,t){return this.document.createElementNS(e,t)}setAttribute(e,t,r,n=null){n?e.setAttributeNS(n,t,r):e.setAttribute(t,r)}} +Qy=Gy(Wy,Qy),Qy=qy(Wy,Qy,rt) +const Yy=Qy;["b","big","blockquote","body","br","center","code","dd","div","dl","dt","em","embed","h1","h2","h3","h4","h5","h6","head","hr","i","img","li","listing","main","meta","nobr","ol","p","pre","ruby","s","small","span","strong","strike","sub","sup","table","tt","u","ul","var"].forEach((e=>Vy[e]=1)) +const Ky=/[\t\n\v\f\r \xA0\u{1680}\u{180e}\u{2000}-\u{200a}\u{2028}\u{2029}\u{202f}\u{205f}\u{3000}\u{feff}]/u,Jy="undefined"==typeof document?null:vt(document) +class Xy extends $y{constructor(e){super(e),_defineProperty(this,"namespace",void 0),this.document=e,this.namespace=null}setAttribute(e,t,r){e.setAttribute(t,r)}removeAttribute(e,t){e.removeAttribute(t)}insertAfter(e,t,r){this.insertBefore(e,t,r.nextSibling)}}let Zy=Xy +Zy=Gy(Jy,Zy),Zy=qy(Jy,Zy,rt) +const eb=Zy +let tb=0 +class rb{constructor(e){_defineProperty(this,"id",tb++),_defineProperty(this,"value",void 0),this.value=e}get(){return this.value}release(){this.value=null}toString(){let e=`Ref ${this.id}` +if(null===this.value)return`${e} (released)` +try{return`${e}: ${this.value}`}catch{return e}}}class nb{constructor(){_defineProperty(this,"stack",new Xe),_defineProperty(this,"refs",new WeakMap),_defineProperty(this,"roots",new Set),_defineProperty(this,"nodes",new WeakMap)}begin(){this.reset()}create(e,t){let r=_t({},t,{bounds:null,refs:new Set}) +this.nodes.set(e,r),this.appendChild(r,e),this.enter(e)}update(e){this.enter(e)}didRender(e,t){this.nodeFor(e).bounds=t,this.exit()}willDestroy(e){He(this.refs.get(e),"BUG: missing ref").release()}commit(){this.reset()}capture(){return this.captureRefs(this.roots)}reset(){if(0!==this.stack.size){let e=He(this.stack.toArray()[0],"expected root state when resetting render tree"),t=this.refs.get(e) +for(void 0!==t&&this.roots.delete(t);!this.stack.isEmpty();)this.stack.pop()}}enter(e){this.stack.push(e)}exit(){this.stack.pop()}nodeFor(e){return He(this.nodes.get(e),"BUG: missing node")}appendChild(e,t){let r=this.stack.current,n=new rb(t) +if(this.refs.set(t,n),r){let t=this.nodeFor(r) +t.refs.add(n),e.parent=t}else this.roots.add(n)}captureRefs(e){let t=[] +return e.forEach((r=>{let n=r.get() +n?t.push(this.captureNode(`render-node:${r.id}`,n)):e.delete(r)})),t}captureNode(e,t){let r=this.nodeFor(t),{type:n,name:i,args:o,instance:s,refs:a}=r,l=this.captureTemplate(r),u=this.captureBounds(r),c=this.captureRefs(a) +return{id:e,type:n,name:i,args:Ey(o),instance:s,template:l,bounds:u,children:c}}captureTemplate({template:e}){return e||null}captureBounds(e){let t=He(e.bounds,"BUG: missing bounds") +return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}}const ib=Symbol("TRANSACTION") +class ob{constructor(){_defineProperty(this,"scheduledInstallModifiers",[]),_defineProperty(this,"scheduledUpdateModifiers",[]),_defineProperty(this,"createdComponents",[]),_defineProperty(this,"updatedComponents",[])}didCreate(e){this.createdComponents.push(e)}didUpdate(e){this.updatedComponents.push(e)}scheduleInstallModifier(e){this.scheduledInstallModifiers.push(e)}scheduleUpdateModifier(e){this.scheduledUpdateModifiers.push(e)}commit(){let{createdComponents:e,updatedComponents:t}=this +for(const{manager:i,state:o}of e)i.didCreate(o) +for(const{manager:i,state:o}of t)i.didUpdate(o) +let{scheduledInstallModifiers:r,scheduledUpdateModifiers:n}=this +for(const{manager:i,state:o,definition:s}of r){let e=i.getTag(o) +if(null!==e){let t=Po((()=>i.install(o))) +Vi(e,t)}else i.install(o)}for(const{manager:i,state:o,definition:s}of n){let e=i.getTag(o) +if(null!==e){let t=Po((()=>i.update(o))) +Vi(e,t)}else i.update(o)}}}class sb{constructor(e,t){_defineProperty(this,ib,null),_defineProperty(this,"updateOperations",void 0),_defineProperty(this,"isInteractive",void 0),_defineProperty(this,"isArgumentCaptureError",void 0),_defineProperty(this,"debugRenderTree",void 0),this.delegate=t,this.isInteractive=t.isInteractive,this.debugRenderTree=this.delegate.enableDebugTooling?new nb:void 0,this.isArgumentCaptureError=this.delegate.enableDebugTooling?Sy:void 0,e.appendOperations?(this.appendOperations=e.appendOperations,this.updateOperations=e.updateOperations):e.document&&(this.appendOperations=new Yy(e.document),this.updateOperations=new Xy(e.document))}getAppendOperations(){return this.appendOperations}getDOM(){return He(this.updateOperations,"Attempted to get DOM updateOperations, but they were not provided by the environment. You may be attempting to rerender in an environment which does not support rerendering, such as SSR.")}begin(){Ue(!this[ib],"A glimmer transaction was begun, but one already exists. You may have a nested transaction, possibly caused by an earlier runtime exception while rendering. Please check your console for the stack trace of any prior exceptions."),this.debugRenderTree?.begin(),this[ib]=new ob}get transaction(){return He(this[ib],"must be in a transaction")}didCreate(e){this.transaction.didCreate(e)}didUpdate(e){this.transaction.didUpdate(e)}scheduleInstallModifier(e){this.isInteractive&&this.transaction.scheduleInstallModifier(e)}scheduleUpdateModifier(e){this.isInteractive&&this.transaction.scheduleUpdateModifier(e)}commit(){let e=this.transaction +this[ib]=null,e.commit(),this.debugRenderTree?.commit(),this.delegate.onTransactionCommit()}}function ab(e,t,r,n){return{env:new sb(e,t),program:new gm(r.constants,r.heap),resolver:n}}function lb(e,t){if(e[ib])t() +else{e.begin() +try{t()}finally{e.commit()}}}function ub(e){return js(e,{})}const cb=ub((({positional:e})=>Ho((()=>vy(e)),null,"array"))),db=e=>(e=>null==e||"function"!=typeof e.toString)(e)?"":String(e),hb=ub((({positional:e})=>Ho((()=>vy(e).map(db).join("")),null,"concat"))),pb=ub((({positional:e})=>{let t=On(e[0],fb) +return Ho((()=>(...r)=>{let[n,...i]=vy(e) +if($o(t)){let e=i.length>0?i[0]:r[0] +return Yo(t,e)}return n.call(null,...i,...r)}),null,"fn")})) +function fb(e){if(!e||!$o(e)&&"function"!=typeof Qo(e))throw new Error(`You must pass a function as the \`fn\` helper's first argument, you passed ${e?Qo(e):e}. While rendering:\n\n${e?.debugLabel}`)}const mb=ub((({positional:e})=>{let t=e[0]??jo,r=e[1]??jo +return Ho((()=>{let e=Qo(t) +if(Ke(e))return ui(e,String(Qo(r)))}),(e=>{let n=Qo(t) +if(Ke(n))return ci(n,String(Qo(r)),e)}),"get")})),gb=ub((({named:e})=>{let t=Ho((()=>_y(e)),null,"hash"),r=new Map +for(let n in e)r.set(n,e[n]) +return t.children=r,t})) +function yb(e){return wo(e.argsCache)}class bb{constructor(e,t=(()=>Cy)){_defineProperty(this,"argsCache",void 0) +let r=vo((()=>t(e))) +this.argsCache=r}get named(){return yb(this).named||ky}get positional(){return yb(this).positional||Ty}}function _b(e,t,r){const n=Yt(e),i=Bs(t).getDelegateFor(n) +let o,s=new bb(e,r),a=i.createHelper(t,s) +if(!Es(i))throw new Error("TODO: unreachable, to be implemented with hasScheduledEffect") +if(o=vo((()=>i.getValue(a))),ki(e,o),ks(i)){ki(o,i.getDestroyable(a))}return o}class vb{constructor(e,t){_defineProperty(this,"tag",qi()),_defineProperty(this,"element",void 0),_defineProperty(this,"args",void 0),_defineProperty(this,"listener",null),this.element=e,this.args=t,Ti(this,(()=>{let{element:e,listener:t}=this +if(t){let{eventName:r,callback:n,options:i}=t +Pb(e,r,n,i)}}))}updateListener(){let{element:e,args:t,listener:r}=this +Ue(t.positional[0],"You must pass a valid DOM event name as the first argument to the `on` modifier") +let n=On(Qo(t.positional[0]),jn,(()=>"You must pass a valid DOM event name as the first argument to the `on` modifier")) +Ue(t.positional[1],"You must pass a function as the second argument to the `on` modifier") +let i,o,s,a=On(Qo(t.positional[1]),Mn,(e=>`You must pass a function as the second argument to the \`on\` modifier; you passed ${null===e?"null":typeof e}. While rendering:\n\n${t.positional[1]?.debugLabel??"{unlabeled value}"}`)) +{let{once:e,passive:r,capture:n}=t.named +e&&(i=Qo(e)),r&&(o=Qo(r)),n&&(s=Qo(n))}let l,u=!1 +if(u=null===r||(n!==r.eventName||a!==r.userProvidedCallback||i!==r.once||o!==r.passive||s!==r.capture),u&&(void 0===i&&void 0===o&&void 0===s||(l={once:i,passive:o,capture:s})),u){let t=a +this.listener={eventName:n,callback:t,userProvidedCallback:a,once:i,passive:o,capture:s,options:l},r&&Pb(e,r.eventName,r.callback,r.options),function(e,t,r,n){wb++,e.addEventListener(t,r,n)}(e,n,t,l)}}}let wb=0,Sb=0 +function Pb(e,t,r,n){Sb++,e.removeEventListener(t,r,n)}const Eb=Ns(new class{getDebugName(){return"on"}getDebugInstance(){return null}get counters(){return{adds:wb,removes:Sb}}create(e,t,r,n){return new vb(t,n)}getTag({tag:e}){return e}install(e){e.updateListener()}update(e){e.updateListener()}getDestroyable(e){return e}},{}) +class kb{constructor(e,t,r,n,i){_defineProperty(this,"currentOpSize",0),this.stack=e,this.heap=t,this.program=r,this.externs=n,this.registers=i}fetchRegister(e){return this.registers[e]}loadRegister(e,t){this.registers[e]=t}setPc(e){Ue("number"==typeof e&&!isNaN(e),"pc is set to a number"),this.registers[0]=e}pushFrame(){this.stack.push(this.registers[1]),this.stack.push(this.registers[$r]),this.registers[$r]=this.registers[qr]-1}popFrame(){this.registers[qr]=this.registers[$r]-1,this.registers[1]=this.stack.get(0),this.registers[$r]=this.stack.get(1)}pushSmallFrame(){this.stack.push(this.registers[1])}popSmallFrame(){this.registers[1]=this.stack.pop()}goto(e){this.setPc(this.target(e))}target(e){return this.registers[0]+e-this.currentOpSize}call(e){Ue(e<4294967295,"Jumping to placeholder address"),this.registers[1]=this.registers[0],this.setPc(this.heap.getaddr(e))}returnTo(e){this.registers[1]=this.target(e)}return(){this.setPc(this.registers[1])}nextStatement(){let{registers:e,program:t}=this,r=e[0] +if(Ue("number"==typeof r,"pc is a number"),-1===r)return null +let n=t.opcode(r),i=this.currentOpSize=n.size +return this.registers[0]+=i,n}evaluateOuter(e,t){this.evaluateInner(e,t)}evaluateInner(e,t){e.isMachine?this.evaluateMachine(e):this.evaluateSyscall(e,t)}evaluateMachine(e){switch(e.type){case zr.PushFrame:return this.pushFrame() +case zr.PopFrame:return this.popFrame() +case zr.InvokeStatic:return this.call(e.op1) +case zr.InvokeVirtual:return this.call(this.stack.pop()) +case zr.Jump:return this.goto(e.op1) +case zr.Return:return this.return() +case zr.ReturnTo:return this.returnTo(e.op1)}}evaluateSyscall(e,t){yg.evaluate(t,e,e.type)}}class Tb{constructor(e,{alwaysRevalidate:t=!1}){_defineProperty(this,"env",void 0),_defineProperty(this,"dom",void 0),_defineProperty(this,"alwaysRevalidate",void 0),_defineProperty(this,"frameStack",new Xe),this.env=e,this.dom=e.getDOM(),this.alwaysRevalidate=t}execute(e,t){this._execute(e,t)}_execute(e,t){let{frameStack:r}=this +for(this.try(e,t);!r.isEmpty();){let e=this.frame.nextStatement() +void 0!==e?e.evaluate(this):r.pop()}}get frame(){return He(this.frameStack.current,"bug: expected a frame")}goto(e){this.frame.goto(e)}try(e,t){this.frameStack.push(new Mb(e,t))}throw(){this.frame.handleException(),this.frameStack.pop()}}class Cb{constructor(e,t){this.state=e,this.resumeCallback=t}resume(e,t){return this.resumeCallback(e,this.state,t)}}class Ob{constructor(e,t,r,n){_defineProperty(this,"children",void 0),_defineProperty(this,"bounds",void 0),this.state=e,this.runtime=t,this.children=n,this.bounds=r}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}evaluate(e){e.try(this.children,null)}}class Ab extends Ob{constructor(...e){super(...e),_defineProperty(this,"type","try")}evaluate(e){e.try(this.children,this)}handleException(){let{state:e,bounds:t,runtime:r}=this +Ai(this) +let n=dg.resume(r.env,t),i=e.resume(r,n),o=[],s=this.children=[],a=i.execute((e=>{e.pushUpdating(o),e.updateWith(this),e.pushUpdating(s)})) +ki(this,a.drop)}}class Rb extends Ab{constructor(e,t,r,n,i,o){super(e,t,r,[]),_defineProperty(this,"retained",!1),_defineProperty(this,"index",-1),this.key=n,this.memo=i,this.value=o}updateReferences(e){this.retained=!0,Yo(this.value,e.value),Yo(this.memo,e.memo)}shouldRemove(){return!this.retained}reset(){this.retained=!1}}class xb extends Ob{constructor(e,t,r,n,i){super(e,t,r,n),_defineProperty(this,"type","list-block"),_defineProperty(this,"opcodeMap",new Map),_defineProperty(this,"marker",null),_defineProperty(this,"lastIterator",void 0),this.iterableRef=i,this.lastIterator=Qo(i)}initializeChild(e){e.index=this.children.length-1,this.opcodeMap.set(e.key,e)}evaluate(e){let t=Qo(this.iterableRef) +if(this.lastIterator!==t){let{bounds:r}=this,{dom:n}=e,i=this.marker=n.createComment("") +n.insertAfter(r.parentElement(),i,He(r.lastNode(),"can't insert after an empty bounds")),this.sync(t),this.parentElement().removeChild(i),this.marker=null,this.lastIterator=t}super.evaluate(e)}sync(e){let{opcodeMap:t,children:r}=this,n=0,i=0 +for(this.children=this.bounds.boundList=[];;){let o=e.next() +if(null===o)break +let s=r[n],{key:a}=o +for(;void 0!==s&&!0===s.retained;)s=r[++n] +if(void 0!==s&&s.key===a)this.retainItem(s,o),n++ +else if(t.has(a)){let e=t.get(a) +if(e.index{t.pushUpdating() +let n=t.enterItem(e) +n.index=s.length,s.push(n),r.set(a,n),ki(this,n)}))}moveItem(e,t,r){let n,i,{children:o}=this +Yo(e.memo,t.memo),Yo(e.value,t.value),e.retained=!0,void 0===r?xm(e,this.marker):(n=e.lastNode().nextSibling,i=r.firstNode(),n!==i&&xm(e,i)),e.index=o.length,o.push(e)}deleteItem(e){Oi(e),Mm(e),this.opcodeMap.delete(e.key)}}class Mb{constructor(e,t){_defineProperty(this,"current",0),this.ops=e,this.exceptionHandler=t}goto(e){this.current=e}nextStatement(){return this.ops[this.current++]}handleException(){this.exceptionHandler&&this.exceptionHandler.handleException()}}class Db{constructor(e,t,r,n){this.env=e,this.updating=t,this.bounds=r,this.drop=n,ki(this,n),Ti(this,(()=>Mm(this.bounds)))}rerender({alwaysRevalidate:e=!1}={alwaysRevalidate:!1}){let{env:t,updating:r}=this +new Tb(t,{alwaysRevalidate:e}).execute(r,this)}parentElement(){return this.bounds.parentElement()}firstNode(){return this.bounds.firstNode()}lastNode(){return this.bounds.lastNode()}handleException(){throw"this should never happen"}}class Nb{static restore(e){return new this(e.slice(),[0,-1,e.length-1,0])}constructor(e=[],t){_defineProperty(this,km,void 0),this.stack=e,this[km]=t}push(e){this.stack[++this[km][qr]]=e}dup(e=this[km][qr]){this.stack[++this[km][qr]]=this.stack[e]}copy(e,t){this.stack[t]=this.stack[e]}pop(e=1){let t=this.stack[this[km][qr]] +return this[km][qr]-=e,t}peek(e=0){return this.stack[this[km][qr]-e]}get(e,t=this[km][$r]){return this.stack[t+e]}set(e,t,r=this[km][$r]){this.stack[r+t]=e}slice(e,t){return this.stack.slice(e,t)}capture(e){let t=this[km][qr]+1,r=t-e +return this.stack.slice(r,t)}reset(){this.stack.length=0}toArray(){return this.stack.slice(this[km][$r],this[km][qr]+1)}}class Ib{constructor(){_defineProperty(this,"scope",new Xe),_defineProperty(this,"dynamicScope",new Xe),_defineProperty(this,"updating",new Xe),_defineProperty(this,"cache",new Xe),_defineProperty(this,"list",new Xe)}}class jb{get stack(){return this[Sm].stack}get pc(){return this[Sm].fetchRegister(0)}fetch(e){let t=this.fetchValue(e) +this.stack.push(t)}load(e){let t=this.stack.pop() +this.loadValue(e,t)}fetchValue(e){if(Yr(e))return this[Sm].fetchRegister(e) +switch(e){case Gr:return this.s0 +case 5:return this.s1 +case 6:return this.t0 +case 7:return this.t1 +case Wr:return this.v0}}loadValue(e,t){switch(Yr(e)&&this[Sm].loadRegister(e,t),e){case Gr:this.s0=t +break +case 5:this.s1=t +break +case 6:this.t0=t +break +case 7:this.t1=t +break +case Wr:this.v0=t}}pushFrame(){this[Sm].pushFrame()}popFrame(){this[Sm].popFrame()}goto(e){this[Sm].goto(e)}call(e){this[Sm].call(e)}returnTo(e){this[Sm].returnTo(e)}return(){this[Sm].return()}constructor(e,{pc:t,scope:r,dynamicScope:n,stack:i},o,s){_defineProperty(this,Em,new Ib),_defineProperty(this,Tm,void 0),_defineProperty(this,"destructor",void 0),_defineProperty(this,Pm,new Xe),_defineProperty(this,Cm,void 0),_defineProperty(this,Om,void 0),_defineProperty(this,Sm,void 0),_defineProperty(this,"s0",null),_defineProperty(this,"s1",null),_defineProperty(this,"t0",null),_defineProperty(this,"t1",null),_defineProperty(this,"v0",null),_defineProperty(this,"resume",void 0),this.runtime=e,this.elementStack=o,this.context=s,this.resume=Bb(s) +let a=Nb.restore(i) +Ue("number"==typeof t,"pc is a number"),a[km][0]=t,a[km][qr]=i.length-1,a[km][$r]=-1,this[Tm]=this.program.heap,this[Cm]=this.program.constants,this.elementStack=o,this[Em].scope.push(r),this[Em].dynamicScope.push(n),this[Om]=new cy,this[Sm]=new kb(a,this[Tm],e.program,{debugBefore:e=>yg.debugBefore(this,e),debugAfter:e=>{yg.debugAfter(this,e)}},a[km]),this.destructor={},this[Pm].push(this.destructor)}static initial(e,t,{handle:r,self:n,dynamicScope:i,treeBuilder:o,numSymbols:s,owner:a}){let l=wm.root(n,s,a),u=Lb(e.program.heap.getaddr(r),l,i),c=Bb(t)(e,u,o) +return c.pushUpdating(),c}static empty(e,{handle:t,treeBuilder:r,dynamicScope:n,owner:i},o){let s=Bb(o)(e,Lb(e.program.heap.getaddr(t),wm.root(jo,0,i),n),r) +return s.pushUpdating(),s}compile(e){return Tt(e.compile(this.context))}get program(){return this.runtime.program}get env(){return this.runtime.env}captureState(e,t=this[Sm].fetchRegister(0)){return{pc:t,scope:this.scope(),dynamicScope:this.dynamicScope(),stack:this.stack.capture(e)}}capture(e,t=this[Sm].fetchRegister(0)){return new Cb(this.captureState(e,t),this.resume)}beginCacheGroup(e){let t=this.updating(),r=new Mg +t.push(r),t.push(new Dg(e)),this[Em].cache.push(r),uo()}commitCacheGroup(){let e=this.updating(),t=He(this[Em].cache.pop(),"VM BUG: Expected a cache group"),r=co() +e.push(new Ng(t)),t.finalize(r,e.length)}enter(e){let t=this.capture(e),r=this.elements().pushUpdatableBlock(),n=new Ab(t,this.runtime,r,[]) +this.didEnter(n)}enterItem({key:e,value:t,memo:r}){let{stack:n}=this,i=as(t),o=as(r) +n.push(i),n.push(o) +let s=this.capture(2),a=this.elements().pushUpdatableBlock(),l=new Rb(s,this.runtime,a,e,o,i) +return this.didEnter(l),l}registerItem(e){this.listBlock().initializeChild(e)}enterList(e,t){let r=[],n=this[Sm].target(t),i=this.capture(0,n),o=this.elements().pushBlockList(r),s=new xb(i,this.runtime,o,r,e) +this[Em].list.push(s),this.didEnter(s)}didEnter(e){this.associateDestroyable(e),this[Pm].push(e),this.updateWith(e),this.pushUpdating(e.children)}exit(){this[Pm].pop(),this.elements().popBlock(),this.popUpdating()}exitList(){this.exit(),this[Em].list.pop()}pushUpdating(e=[]){this[Em].updating.push(e)}popUpdating(){return He(this[Em].updating.pop(),"can't pop an empty stack")}updateWith(e){this.updating().push(e)}listBlock(){return He(this[Em].list.current,"expected a list block")}associateDestroyable(e){ki(He(this[Pm].current,"Expected destructor parent"),e)}tryUpdating(){return this[Em].updating.current}updating(){return He(this[Em].updating.current,"expected updating opcode on the updating opcode stack")}elements(){return this.elementStack}scope(){return He(this[Em].scope.current,"expected scope on the scope stack")}dynamicScope(){return He(this[Em].dynamicScope.current,"expected dynamic scope on the dynamic scope stack")}pushChildScope(){this[Em].scope.push(this.scope().child())}pushDynamicScope(){let e=this.dynamicScope().child() +return this[Em].dynamicScope.push(e),e}pushRootScope(e,t){let r=wm.sized(e,t) +return this[Em].scope.push(r),r}pushScope(e){this[Em].scope.push(e)}popScope(){this[Em].scope.pop()}popDynamicScope(){this[Em].dynamicScope.pop()}getOwner(){return this.scope().owner}getSelf(){return this.scope().getSelf()}referenceForSymbol(e){return this.scope().getSymbol(e)}execute(e){return this._execute(e)}_execute(e){let t +e&&e(this) +do{t=this.next()}while(!t.done) +return t.value}next(){let e,{env:t,elementStack:r}=this,n=this[Sm].nextStatement() +return null!==n?(this[Sm].evaluateOuter(n,this),e={done:!1,value:null}):(this.stack.reset(),e={done:!0,value:new Db(t,this.popUpdating(),r.popBlock(),this.destructor)}),e}bindDynamicScope(e){let t=this.dynamicScope() +for(const r of Be(e))t.set(r,this.stack.pop())}}function Lb(e,t,r){return{pc:e,scope:t,dynamicScope:r,stack:[]}}function Bb(e){return(t,r,n)=>new jb(t,r,n,e)}class Fb{constructor(e){this.vm=e}next(){return this.vm.next()}sync(){return this.vm.execute()}}function Ub(e,t,r,n,i,o,s=new vm){let a=Tt(o.compile(t)),l=o.symbolTable.symbols.length,u=jb.initial(e,t,{self:n,dynamicScope:s,treeBuilder:i,handle:a,numSymbols:l,owner:r}) +return new Fb(u)}const zb="%+b:0%" +function Hb(e){return e.nodeValue===zb}class Vb extends Am{constructor(e,t,r){super(e,t),_defineProperty(this,"candidate",null),_defineProperty(this,"openBlockDepth",void 0),_defineProperty(this,"injectedOmittedNode",!1),this.startingBlockDepth=r,this.openBlockDepth=r-1}}class $b extends dg{constructor(e,t,r){if(super(e,t,r),_defineProperty(this,"unmatchedAttributes",null),_defineProperty(this,"blockDepth",0),_defineProperty(this,"startingBlockOffset",void 0),r)throw new Error("Rehydration with nextSibling not supported") +let n=this.currentCursor.element.firstChild +for(;null!==n&&!qb(n);)n=n.nextSibling +Ue(n,"Must have opening comment for rehydration."),this.candidate=n +const i=Wb(n) +if(0!==i){const e=i-1,t=this.dom.createComment(`%+b:${e}%`) +n.parentNode.insertBefore(t,this.candidate) +let r=n.nextSibling +for(;null!==r&&(!Gb(r)||Wb(r)!==i);)r=r.nextSibling +Ue(r,"Must have closing comment for starting block comment") +const o=this.dom.createComment(`%-b:${e}%`) +n.parentNode.insertBefore(o,r.nextSibling),this.candidate=t,this.startingBlockOffset=e}else this.startingBlockOffset=0}get currentCursor(){return this[cg].current}get candidate(){return this.currentCursor?this.currentCursor.candidate:null}set candidate(e){this.currentCursor.candidate=e}disableRehydration(e){const t=this.currentCursor +t.candidate=null,t.nextSibling=e}enableRehydration(e){const t=this.currentCursor +t.candidate=e,t.nextSibling=null}pushElement(e,t=null){const r=new Vb(e,t,this.blockDepth||0) +null!==this.candidate&&(r.candidate=e.firstChild,this.candidate=e.nextSibling),this[cg].push(r)}clearMismatch(e){let t=e +const r=this.currentCursor +if(null!==r){const e=r.openBlockDepth +if(e>=r.startingBlockDepth)for(;t;){if(Gb(t)){if(e>=Qb(t,this.startingBlockOffset))break}t=this.remove(t)}else for(;null!==t;)t=this.remove(t) +this.disableRehydration(t)}}__openBlock(){const{currentCursor:e}=this +if(null===e)return +const t=this.blockDepth +this.blockDepth++ +const{candidate:r}=e +if(null===r)return +const{tagName:n}=e.element +qb(r)&&Qb(r,this.startingBlockOffset)===t?(this.candidate=this.remove(r),e.openBlockDepth=t):"TITLE"!==n&&"SCRIPT"!==n&&"STYLE"!==n&&this.clearMismatch(r)}__closeBlock(){const{currentCursor:e}=this +if(null===e)return +const t=e.openBlockDepth +this.blockDepth-- +const{candidate:r}=e +let n=!1 +if(null!==r)if(n=!0,Gb(r)&&Qb(r,this.startingBlockOffset)===t){const t=this.remove(r) +this.candidate=t,e.openBlockDepth--}else this.clearMismatch(r),n=!1 +if(!1===n){const t=e.nextSibling +if(null!==t&&Gb(t)&&Qb(t,this.startingBlockOffset)===this.blockDepth){const r=this.remove(t) +this.enableRehydration(r),e.openBlockDepth--}}}__appendNode(e){const{candidate:t}=this +return t||super.__appendNode(e)}__appendHTML(e){const t=this.markerBounds() +if(t){const e=t.firstNode(),r=t.lastNode(),n=new Rm(this.element,e.nextSibling,r.previousSibling),i=this.remove(e) +return this.remove(r),null!==i&&Jb(i)&&(this.candidate=this.remove(i),null!==this.candidate&&this.clearMismatch(this.candidate)),n}return super.__appendHTML(e)}remove(e){const t=He(e.parentNode,"cannot remove a detached node"),r=e.nextSibling +return t.removeChild(e),r}markerBounds(){const e=this.candidate +if(e&&Kb(e)){const t=e +let r=He(t.nextSibling,"BUG: serialization markers must be paired") +for(;r&&!Kb(r);)r=He(r.nextSibling,"BUG: serialization markers must be paired") +return new Rm(this.element,t,r)}return null}__appendText(e){const{candidate:t}=this +return t?3===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):function(e){return 8===e.nodeType&&"%|%"===e.nodeValue}(t)||Jb(t)&&""===e?(this.candidate=this.remove(t),this.__appendText(e)):(this.clearMismatch(t),super.__appendText(e)):super.__appendText(e)}__appendComment(e){const t=this.candidate +return t&&8===t.nodeType?(t.nodeValue!==e&&(t.nodeValue=e),this.candidate=t.nextSibling,t):(t&&this.clearMismatch(t),super.__appendComment(e))}__openElement(e){const t=this.candidate +if(t&&Yb(t)&&function(e,t){if(e.namespaceURI===rt)return e.tagName===t +return e.tagName===t.toUpperCase()}(t,e))return this.unmatchedAttributes=[].slice.call(t.attributes),t +if(t){if(Yb(t)&&"TBODY"===t.tagName)return this.pushElement(t,null),this.currentCursor.injectedOmittedNode=!0,this.__openElement(e) +this.clearMismatch(t)}return super.__openElement(e)}__setAttribute(e,t,r){const n=this.unmatchedAttributes +if(n){const r=Xb(n,e) +if(r)return r.value!==t&&(r.value=t),void n.splice(n.indexOf(r),1)}return super.__setAttribute(e,t,r)}__setProperty(e,t){const r=this.unmatchedAttributes +if(r){const n=Xb(r,e) +if(n)return n.value!==t&&(n.value=t),void r.splice(r.indexOf(n),1)}return super.__setProperty(e,t)}__flushElement(e,t){const{unmatchedAttributes:r}=this +if(r){for(const e of r)this.constructing.removeAttribute(e.name) +this.unmatchedAttributes=null}else super.__flushElement(e,t)}willCloseElement(){const{candidate:e,currentCursor:t}=this +null!==e&&this.clearMismatch(e),t&&t.injectedOmittedNode&&this.popElement(),super.willCloseElement()}getMarker(e,t){const r=e.querySelector(`script[glmr="${t}"]`) +return r?vt(r):null}__pushRemoteElement(e,t,r){const n=this.getMarker(wt(e,"HTML"),t) +if(Ue(!n||n.parentNode===e,"expected remote element marker's parent node to match remote element"),void 0===r){for(;null!==e.firstChild&&e.firstChild!==n;)this.remove(e.firstChild) +r=null}const i=new Vb(e,null,this.blockDepth) +this[cg].push(i),null===n?this.disableRehydration(r):this.candidate=this.remove(n) +const o=new pg(e) +return this.pushLiveBlock(o,!0)}didAppendBounds(e){if(super.didAppendBounds(e),this.candidate){const t=e.lastNode() +this.candidate=t&&t.nextSibling}return e}}function qb(e){return 8===e.nodeType&&0===e.nodeValue.lastIndexOf("%+b:",0)}function Gb(e){return 8===e.nodeType&&0===e.nodeValue.lastIndexOf("%-b:",0)}function Wb(e){return parseInt(e.nodeValue.slice(4),10)}function Qb(e,t){return Wb(e)-t}function Yb(e){return 1===e.nodeType}function Kb(e){return 8===e.nodeType&&"%glmr%"===e.nodeValue}function Jb(e){return 8===e.nodeType&&"% %"===e.nodeValue}function Xb(e,t){for(const r of e)if(r.name===t)return r}function Zb(e,t){return $b.forInitialRender(e,t)}const e_=Object.defineProperty({__proto__:null,ConcreteBounds:Rm,CurriedValue:Tg,CursorImpl:Am,DOMChanges:eb,DOMTreeConstruction:Yy,DynamicAttribute:eg,DynamicScopeImpl:vm,EMPTY_ARGS:Cy,EMPTY_NAMED:ky,EMPTY_POSITIONAL:Ty,EnvironmentImpl:sb,IDOMChanges:Xy,LowLevelVM:jb,NewElementBuilder:dg,PartialScopeImpl:wm,RehydrateBuilder:$b,RemoteLiveBlock:pg,SERIALIZATION_FIRST_NODE_STRING:zb,SimpleDynamicAttribute:tg,TEMPLATE_ONLY_COMPONENT_MANAGER:Fy,TemplateOnlyComponent:Uy,TemplateOnlyComponentManager:By,UpdatableBlockImpl:fg,UpdatingVM:Tb,array:cb,clear:Mm,clientBuilder:gg,concat:hb,createCapturedArgs:by,curry:Og,destroy:Oi,dynamicAttribute:Xm,fn:pb,get:mb,hash:gb,inTransaction:lb,invokeHelper:_b,isDestroyed:Mi,isDestroying:xi,isSerializationFirstNode:Hb,isWhitespace:function(e){return Ky.test(e)},normalizeProperty:Bm,on:Eb,registerDestructor:Ti,rehydrationBuilder:Zb,reifyArgs:function(e){return{named:_y(e.named),positional:vy(e.positional)}},reifyNamed:_y,reifyPositional:vy,renderComponent:function(e,t,r,n,i,o={},s=new vm){return function(e,t,r,n,i){const o=Object.keys(i).map((e=>[e,i[e]])),s=["main","else","attrs"],a=o.map((([e])=>`@${e}`)) +let l=e[Cm].component(n,r) +e.pushFrame() +for(let d=0;d<3*s.length;d++)e.stack.push(null) +e.stack.push(null),o.forEach((([,t])=>{e.stack.push(t)})),e[Om].setup(e.stack,a,s,0,!0) +const u=He(l.compilable,"BUG: Expected the root component rendered with renderComponent to have an associated template, set with setComponentTemplate"),c={handle:Tt(u.compile(t)),symbolTable:u.symbolTable} +return e.stack.push(e[Om]),e.stack.push(c),e.stack.push(l),new Fb(e)}(jb.empty(e,{treeBuilder:t,handle:r.stdlib.main,dynamicScope:s,owner:n},r),r,n,i,function(e){const t=Uo(e) +return Object.keys(e).reduce(((e,r)=>(e[r]=Ko(t,r),e)),{})}(o))},renderMain:Ub,renderSync:function(e,t){let r +return lb(e,(()=>r=t.sync())),r},resetDebuggerCallback:function(){Iy=Ny},runtimeContext:ab,setDebuggerCallback:function(e){Iy=e},templateOnlyComponent:zy},Symbol.toStringTag,{value:"Module"}),t_=Eb,r_=Xs,n_=Object.defineProperty({__proto__:null,capabilities:Ys,on:t_,setModifierManager:r_},Symbol.toStringTag,{value:"Module"}),i_=bl({id:"4z3DuGQ3",block:'[[[11,"input"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,4,[30,0,["type"]]],[16,"checked",[30,0,["checked"]]],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/input.hbs",scope:()=>[t_],isStrictMode:!0}) +function o_(){}class s_{static toString(){return"internal component"}constructor(e,t,r){this.owner=e,this.args=t,this.caller=r,er(this,e)}get id(){return T(this)}get class(){return"ember-view"}validateArguments(){for(let e of Object.keys(this.args.named))this.isSupportedArgument(e)||this.onUnsupportedArgument(e)}named(e){let t=this.args.named[e] +return t?Qo(t):void 0}positional(e){let t=this.args.positional[e] +return t?Qo(t):void 0}listenerFor(e){let t=this.named(e) +return t||o_}isSupportedArgument(e){return!1}onUnsupportedArgument(e){}toString(){return`<${this.constructor}:${T(this)}>`}}const a_=new WeakMap +function l_(e,t){let r={create(){throw It()},toString:()=>e.toString()} +return a_.set(r,e),Fs(c_,r),ra(t,r),r}const u_={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!1,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +const c_=new class{getCapabilities(){return u_}create(e,t,r,n,i,o){var s +let a=new(s=t,a_.get(s))(e,r.capture(),Qo(o)) +return Eo(a.validateArguments.bind(a)),a}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}getDebugName(e){return e.toString()}getSelf(e){return Uo(e)}getDestroyable(e){return e}} +var d_=Object.defineProperty;((e,t)=>{for(var r in t)d_(e,r,{get:t[r],enumerable:!0})})({},{c:()=>b_,f:()=>p_,g:()=>f_,i:()=>y_,m:()=>m_,n:()=>g_,p:()=>__}) +var h_=new WeakMap +function p_(e,t,r,n){return f_(e.prototype,t,r,n)}function f_(e,t,r,n){let i={configurable:!0,enumerable:!0,writable:!0,initializer:null} +n&&(i.initializer=n) +for(let o of r)i=o(e,t,i)||i +void 0===i.initializer?Object.defineProperty(e,t,i):function(e,t,r){let n=h_.get(e) +n||(n=new Map,h_.set(e,n)),n.set(t,r)}(e,t,i)}function m_({prototype:e},t,r){return g_(e,t,r)}function g_(e,t,r){let n={...Object.getOwnPropertyDescriptor(e,t)} +for(let i of r)n=i(e,t,n)||n +void 0!==n.initializer&&(n.value=n.initializer?n.initializer.call(e):void 0,n.initializer=void 0),Object.defineProperty(e,t,n)}function y_(e,t){let r=function(e,t){let r=e.prototype +for(;r;){let e=h_.get(r)?.get(t) +if(e)return e +r=r.prototype}}(e.constructor,t) +r&&Object.defineProperty(e,t,{enumerable:r.enumerable,configurable:r.configurable,writable:r.writable,value:r.initializer?r.initializer.call(e):void 0})}function b_(e,t){return t.reduce(((e,t)=>t(e)||e),e)}function __(e,t){for(let[r,n,i]of t)"field"===r?v_(e,n,i):g_(e,n,i) +return e}function v_(e,t,r){let n={configurable:!0,enumerable:!0,writable:!0,initializer:()=>Object.getOwnPropertyDescriptor(e,t)?.value} +for(let i of r)n=i(e,t,n)||n +n.initializer&&(n.value=n.initializer.call(e),delete n.initializer),Object.defineProperty(e,t,n)}const w_=Object.freeze({}) +function S_(e){return function(e){return e.target}(e).value}function P_(e){return void 0===e?new k_(void 0):Go(e)?new k_(Qo(e)):Wo(e)?new T_(e):new C_(e)}var E_=new WeakMap +class k_{constructor(e){_classPrivateFieldInitSpec(this,E_,void y_(this,"value")),this.value=e}get(){return this.value}set(e){this.value=e}}f_(k_.prototype,"value",[Rd]) +class T_{constructor(e){this.reference=e}get(){return Qo(this.reference)}set(e){Yo(this.reference,e)}}class C_{constructor(e){_defineProperty(this,"local",void 0),_defineProperty(this,"upstream",void 0),_defineProperty(this,"lastUpstreamValue",w_),this.upstream=new T_(e)}get(){let e=this.upstream.get() +return e!==this.lastUpstreamValue&&(this.lastUpstreamValue=e,this.local=new k_(e)),this.local.get()}set(e){this.local.set(e)}}class O_ extends s_{constructor(...e){super(...e),_defineProperty(this,"_value",P_(this.args.named.value))}validateArguments(){super.validateArguments()}get value(){return this._value.get()}set value(e){this._value.set(e)}valueDidChange(e){this.value=S_(e)}change(e){this.valueDidChange(e)}input(e){this.valueDidChange(e)}keyUp(e){switch(e.key){case"Enter":this.listenerFor("enter")(e),this.listenerFor("insert-newline")(e) +break +case"Escape":this.listenerFor("escape-press")(e)}}listenerFor(e){let t=super.listenerFor(e) +return this.isVirtualEventListener(e,t)?function(e){return t=>e(S_(t),t)}(t):t}isVirtualEventListener(e,t){return-1!==["enter","insert-newline","escape-press"].indexOf(e)}}let A_ +if(g_((t=O_).prototype,"valueDidChange",[tm]),g_(t.prototype,"keyUp",[tm]),u){const e=Object.create(null),t=document.createElement("input") +e[""]=!1,e.text=!0,e.checkbox=!0,A_=r=>{let n=e[r] +if(void 0===n){try{t.type=r,n=t.type===r}catch(i){n=!1}finally{t.type="text"}e[r]=n}return n}}else A_=e=>""!==e +class R_ extends O_{constructor(...e){super(...e),_defineProperty(this,"_checked",P_(this.args.named.checked))}static toString(){return"Input"}get class(){return this.isCheckbox?"ember-checkbox ember-view":"ember-text-field ember-view"}get type(){let e=this.named("type") +return null==e?"text":A_(e)?e:"text"}get isCheckbox(){return"checkbox"===this.named("type")}get checked(){return this.isCheckbox?this._checked.get():void 0}set checked(e){this._checked.set(e)}change(e){this.isCheckbox?this.checkedDidChange(e):super.change(e)}input(e){this.isCheckbox||super.input(e)}checkedDidChange(e){let t=e.target +this.checked=t.checked}isSupportedArgument(e){return-1!==["type","value","checked","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}g_((r=R_).prototype,"change",[tm]),g_(r.prototype,"input",[tm]),g_(r.prototype,"checkedDidChange",[tm]) +const x_=l_(R_,i_) +function M_(e){if(!(e instanceof MouseEvent))return!1 +let t=e.shiftKey||e.metaKey||e.altKey||e.ctrlKey,r=e.which>1 +return!t&&!r}function D_(e){return'Binding style attributes may introduce cross-site scripting vulnerabilities; please ensure that values being bound are properly escaped. For more information, including how to disable this warning, see https://deprecations.emberjs.com/v1.x/#toc_binding-style-attributes. Style affected: "'+e+'"'}function N_(e){let t=e.lookup("-view-registry:main"),r=[] +return Object.keys(t).forEach((e=>{let n=t[e] +null===n.parentView&&r.push(n)})),r}function I_(e){return""!==e.tagName&&e.elementId?e.elementId:T(e)}const j_=new WeakMap,L_=new WeakMap +function B_(e){return j_.get(e)||null}function F_(e){return L_.get(e)||null}function U_(e,t){j_.set(e,t)}function z_(e,t){L_.set(e,t)}function H_(e){j_.delete(e)}function V_(e){L_.delete(e)}const $_=new WeakMap +function q_(e){return Q_(e,Zt(e).lookup("-view-registry:main"))}function G_(e){let t=new Set +return $_.set(e,t),t}function W_(e,t){let r=$_.get(e) +void 0===r&&(r=G_(e)),r.add(I_(t))}function Q_(e,t){let r=[],n=$_.get(e) +return void 0!==n&&n.forEach((e=>{let n=t[e] +!n||n.isDestroying||n.isDestroyed||r.push(n)})),r}function Y_(e){return e.renderer.getBounds(e)}function K_(e){let t=Y_(e),r=document.createRange() +return r.setStartBefore(t.firstNode),r.setEndAfter(t.lastNode),r}function J_(e){return K_(e).getClientRects()}function X_(e){return K_(e).getBoundingClientRect()}const Z_="undefined"!=typeof Element?Element.prototype.matches:void 0 +const ev=Object.defineProperty({__proto__:null,addChildView:W_,clearElementView:H_,clearViewElement:V_,collectChildViews:Q_,constructStyleDeprecationMessage:D_,contains:function(e,t){if(void 0!==e.contains)return e.contains(t) +let r=t.parentNode +for(;r&&(r=r.parentNode);)if(r===e)return!0 +return!1},elMatches:Z_,getChildViews:q_,getElementView:B_,getRootViews:N_,getViewBoundingClientRect:X_,getViewBounds:Y_,getViewClientRects:J_,getViewElement:F_,getViewId:I_,getViewRange:K_,initChildViews:G_,isSimpleClick:M_,matches:function(e,t){return Z_.call(e,t)},setElementView:U_,setViewElement:z_},Symbol.toStringTag,{value:"Module"}) +function tv(){}tv.registeredActions={} +const rv=Object.defineProperty({__proto__:null,default:tv},Symbol.toStringTag,{value:"Module"}),nv="ember-application" +class iv extends Xf{constructor(...e){super(...e),_defineProperty(this,"events",{touchstart:"touchStart",touchmove:"touchMove",touchend:"touchEnd",touchcancel:"touchCancel",keydown:"keyDown",keyup:"keyUp",keypress:"keyPress",mousedown:"mouseDown",mouseup:"mouseUp",contextmenu:"contextMenu",click:"click",dblclick:"doubleClick",focusin:"focusIn",focusout:"focusOut",submit:"submit",input:"input",change:"change",dragstart:"dragStart",drag:"drag",dragenter:"dragEnter",dragleave:"dragLeave",dragover:"dragOver",drop:"drop",dragend:"dragEnd"}),_defineProperty(this,"rootElement","body"),_defineProperty(this,"_eventHandlers",Object.create(null)),_defineProperty(this,"_didSetup",!1),_defineProperty(this,"finalEventNameMapping",null),_defineProperty(this,"_sanitizedRootElement",null),_defineProperty(this,"lazyEvents",new Map),_defineProperty(this,"_reverseEventNameMapping",null)}setup(e,t){let r=this.finalEventNameMapping={...hd(this,"events"),...e} +this._reverseEventNameMapping=Object.keys(r).reduce(((e,t)=>{let n=r[t] +return n?{...e,[n]:t}:e}),{}) +let n=this.lazyEvents +null!=t&&gd(this,"rootElement",t) +let i=hd(this,"rootElement"),o="string"!=typeof i?i:document.querySelector(i) +o.classList.add(nv),this._sanitizedRootElement=o +for(let s in r)Object.prototype.hasOwnProperty.call(r,s)&&n.set(s,r[s]??null) +this._didSetup=!0}setupHandlerForBrowserEvent(e){this.setupHandler(this._sanitizedRootElement,e,this.finalEventNameMapping[e]??null)}setupHandlerForEmberEvent(e){let t=this._reverseEventNameMapping?.[e] +t&&this.setupHandler(this._sanitizedRootElement,t,e)}setupHandler(e,t,r){if(null===r||!this.lazyEvents.has(t))return +let n=(e,t)=>{let n=B_(e),i=!0 +return n&&(i=n.handleEvent(r,t)),i},i=(e,t)=>{let n,i=e.getAttribute("data-ember-action") +if(""===i){n=[] +for(let t of e.attributes){if(0===t.name.indexOf("data-ember-action-")){let e=tv.registeredActions[t.value] +n.push(e)}}}else if(i){let e=tv.registeredActions[i] +e&&(n=[e])}if(!n)return +let o=!0 +for(let s=0;s{let t=e.target +do{if(B_(t)){if(!1===n(t,e)){e.preventDefault(),e.stopPropagation() +break}if(!0===e.cancelBubble)break}else if("function"==typeof t.hasAttribute&&t.hasAttribute("data-ember-action")&&!1===i(t,e))break +t=t.parentNode}while(t instanceof Element)} +e.addEventListener(t,o),this.lazyEvents.delete(t)}destroy(){if(!1===this._didSetup)return +let e=this._sanitizedRootElement +if(e){for(let t in this._eventHandlers)e.removeEventListener(t,this._eventHandlers[t]) +return e.classList.remove(nv),this._super(...arguments)}}toString(){return"(EventDispatcher)"}}const ov=Object.defineProperty({__proto__:null,default:iv},Symbol.toStringTag,{value:"Module"}),sv=Xf.extend({componentFor(e,t){let r=`component:${e}` +return t.factoryFor(r)},layoutFor(e,t,r){let n=`template:components/${e}` +return t.lookup(n,r)}}),av=Object.defineProperty({__proto__:null,default:sv},Symbol.toStringTag,{value:"Module"}),lv=ph.create({on(e,t,r){return Ll(this,e,t,r),this},one(e,t,r){return Ll(this,e,t,r,!0),this},trigger(e,...t){Fl(this,e,t)},off(e,t,r){return Bl(this,e,t,r),this},has(e){return Ul(this,e)}}),uv=Object.defineProperty({__proto__:null,default:lv,on:zl},Symbol.toStringTag,{value:"Module"}) +let cv=class extends Xf{} +const dv=Object.defineProperty({__proto__:null,FrameworkObject:cv,cacheFor:ed,guidFor:T},Symbol.toStringTag,{value:"Module"}) +let hv=[],pv={} +const fv=(()=>{let e="undefined"!=typeof window&&window.performance||{},t=e.now||e.mozNow||e.webkitNow||e.msNow||e.oNow +return t?t.bind(e):Date.now})() +function mv(e,t,r,n){let i,o,s +if(arguments.length<=3&&function(e){return"function"==typeof e}(t)?(o=t,s=r):(i=t,o=r,s=n),0===hv.length)return o.call(s) +let a=i||{},l=bv(e,(()=>a)) +return l===yv?o.call(s):function(e,t,r,n){try{return e.call(n)}catch(i){throw r.exception=i,i}finally{t()}}(o,l,a,s)}function gv(e,t,r){return r()}function yv(){}function bv(e,t,r){if(0===hv.length)return yv +let n=pv[e] +if(n||(n=function(e){let t=[] +for(let r of hv)r.regex.test(e)&&t.push(r.object) +return pv[e]=t,t}(e)),0===n.length)return yv +let i,o=t(r),s=ce.STRUCTURED_PROFILE +s&&(i=`${e}: ${o.object}`,console.time(i)) +let a=[],l=fv() +for(let c of n)a.push(c.before(e,l,o)) +const u=n +return function(){let t=fv() +for(let r=0;r!0,rerender(){},destroy(){}}),Ev=Object.freeze({...Pv}),kv=Object.freeze({...Pv,rerender(e){e.renderer.rerender()},destroy(e){e.renderer.remove(e)},handleEvent:(e,t,r)=>!e.has(t)||gv(0,0,(()=>Iu(e,e.trigger,t,r)))}),Tv=Object.freeze({...kv,enter(e){e.renderer.register(e)}}),Cv=Object.freeze({...Pv,appendChild(){throw new Error("You can't call appendChild on a view being destroyed")},rerender(){throw new Error("You can't call rerender on a view being destroyed")}}),Ov=Object.freeze({preRender:Ev,inDOM:Tv,hasElement:kv,destroying:Cv}),Av=Object.defineProperty({__proto__:null,default:Ov},Symbol.toStringTag,{value:"Module"}) +var Rv=new WeakMap +class xv extends(cv.extend(lv,kh)){constructor(...e){super(...e),_defineProperty(this,"isView",!0),_defineProperty(this,"_superTrigger",void 0),_defineProperty(this,"_superHas",void 0),_classPrivateFieldInitSpec(this,Rv,void y_(this,"renderer"))}init(e){super.init(e),this._superTrigger=this.trigger,this.trigger=this._trigger,this._superHas=this.has,this.has=this._has,this.parentView??=null,this._state="preRender",this._currentState=this._states.preRender}instrumentDetails(e){return e.object=this.toString(),e.containerKey=this._debugContainerKey,e.view=this,e}_trigger(e,...t){this._superTrigger(e,...t) +let r=this[e] +if("function"==typeof r)return r.apply(this,t)}_has(e){return"function"==typeof this[e]||this._superHas(e)}}f_(xv.prototype,"renderer",[Ad("renderer","-dom")]),_defineProperty(xv,"isViewFactory",!0),xv.prototype._states=Ov +const Mv=Object.defineProperty({__proto__:null,default:xv},Symbol.toStringTag,{value:"Module"}),Dv=Object.freeze([]),Nv=ph.create({concatenatedProperties:["classNames","classNameBindings"],init(){this._super(...arguments)},classNames:Dv,classNameBindings:Dv}),Iv=Object.defineProperty({__proto__:null,default:Nv},Symbol.toStringTag,{value:"Module"}),jv=ph.create({childViews:Dc({configurable:!1,enumerable:!1,get(){return q_(this)}}),appendChild(e){W_(this,e)}}),Lv=Object.defineProperty({__proto__:null,default:jv},Symbol.toStringTag,{value:"Module"}),Bv=ph.create({_transitionTo(e){let t=this._currentState,r=this._currentState=this._states[e] +this._state=e,t&&t.exit&&t.exit(this),r.enter&&r.enter(this)}}),Fv=Object.defineProperty({__proto__:null,default:Bv},Symbol.toStringTag,{value:"Module"}) +function Uv(){return this}const zv=ph.create({concatenatedProperties:["attributeBindings"],nearestOfType(e){let t=this.parentView,r=e instanceof ph?t=>e.detect(t):t=>e.detect(t.constructor) +for(;t;){if(r(t))return t +t=t.parentView}},nearestWithProperty(e){let t=this.parentView +for(;t;){if(e in t)return t +t=t.parentView}},rerender(){return this._currentState.rerender(this)},element:Dc({configurable:!1,enumerable:!1,get(){return this.renderer.getElement(this)}}),appendTo(e){let t +return t=u&&"string"==typeof e?document.querySelector(e):e,this.renderer.appendTo(this,t),this},append(){return this.appendTo(document.body)},elementId:null,willInsertElement:Uv,didInsertElement:Uv,willClearRender:Uv,destroy(){this._super(...arguments),this._currentState.destroy(this)},willDestroyElement:Uv,didDestroyElement:Uv,parentViewDidChange:Uv,tagName:null,init(){this._super(...arguments),this.elementId||""===this.tagName||(this.elementId=T(this))},handleEvent(e,t){return this._currentState.handleEvent(this,e,t)}}),Hv=Object.defineProperty({__proto__:null,default:zv},Symbol.toStringTag,{value:"Module"}),Vv=ph.create({send(e,...t){let r=this.actions&&this.actions[e] +if(r){if(!(!0===r.apply(this,t)))return}let n=hd(this,"target") +n&&n.send(...arguments)}}),$v=Object.defineProperty({__proto__:null,default:Vv},Symbol.toStringTag,{value:"Module"}),qv=Symbol("MUTABLE_CELL"),Gv=Object.defineProperty({__proto__:null,MUTABLE_CELL:qv},Symbol.toStringTag,{value:"Module"}),Wv=Object.defineProperty({__proto__:null,ActionManager:tv,ActionSupport:Vv,ChildViewsSupport:jv,ClassNamesSupport:Nv,ComponentLookup:sv,CoreView:xv,EventDispatcher:iv,MUTABLE_CELL:qv,ViewMixin:zv,ViewStateSupport:Bv,addChildView:W_,clearElementView:H_,clearViewElement:V_,constructStyleDeprecationMessage:D_,getChildViews:q_,getElementView:B_,getRootViews:N_,getViewBoundingClientRect:X_,getViewBounds:Y_,getViewClientRects:J_,getViewElement:F_,getViewId:I_,isSimpleClick:M_,setElementView:U_,setViewElement:z_},Symbol.toStringTag,{value:"Module"}),Qv=Symbol("ENGINE_PARENT") +function Yv(e){return e[Qv]}function Kv(e,t){e[Qv]=t}const Jv=Object.defineProperty({__proto__:null,ENGINE_PARENT:Qv,getEngineParent:Yv,setEngineParent:Kv},Symbol.toStringTag,{value:"Module"}),Xv=A("MODEL"),Zv=ph.create(kh,{isController:!0,concatenatedProperties:["queryParams"],target:null,store:null,init(){this._super(...arguments) +let e=Zt(this) +e&&(this.namespace=e.lookup("application:main"),this.target=e.lookup("router:main"))},model:Jc({get(){return this[Xv]},set(e,t){return this[Xv]=t}}),queryParams:null,_qpDelegate:null,_qpChanged(e,t){let r=t.indexOf(".[]"),n=-1===r?t:t.slice(0,r);(0,e._qpDelegate)(n,hd(e,n))}}) +class ew extends(cv.extend(Zv)){}function tw(...e){return Ad("controller",...e)}const rw=Object.defineProperty({__proto__:null,ControllerMixin:Zv,default:ew,inject:tw},Symbol.toStringTag,{value:"Module"}) +class nw extends Xf{init(e){super.init(e),Ud(this)}toString(){let e=hd(this,"name")||hd(this,"modulePrefix") +if(e)return e +Hd() +let t=J(this) +return void 0===t&&(t=T(this),K(this,t)),t}nameClasses(){$d(this)}destroy(){return zd(this),super.destroy()}}_defineProperty(nw,"NAMESPACES",Bd),_defineProperty(nw,"NAMESPACES_BY_ID",Fd),_defineProperty(nw,"processAll",qd),_defineProperty(nw,"byName",Vd),nw.prototype.isNamespace=!0 +const iw=Object.defineProperty({__proto__:null,default:nw},Symbol.toStringTag,{value:"Module"}) +var ow=function(){function e(){this._vertices=new sw}return e.prototype.add=function(e,t,r,n){if(!e)throw new Error("argument `key` is required") +var i=this._vertices,o=i.add(e) +if(o.val=t,r)if("string"==typeof r)i.addEdge(o,i.add(r)) +else for(var s=0;s0){var n="cycle detected: "+t +throw this.each(this.path,(function(e){n+=" <- "+e})),new Error(n)}}},e.prototype.reset=function(){this.stack.length=0,this.path.length=0,this.result.length=0 +for(var e=0,t=this.length;e=0){var a=this[s] +if(a.flag)continue +if(a.flag=!0,i.push(s),t===a.key)break +n.push(~s),this.pushIncoming(a)}else i.pop(),o.push(~s)}},e.prototype.pushIncoming=function(e){for(var t=this.stack,r=e.length-1;r>=0;r--){var n=e[r] +this[n].flag||t.push(n)}},e.prototype.each=function(e,t){for(var r=0,n=e.length;r{return(t=e,gw.get(t)).replace(uw,"-") +var t})),dw=/^(-|_)+(.)?/,hw=/(.)(-|_|\.|\s)+(.)?/g,pw=/(^|\/|\.)([a-z])/g,fw=new ne(1e3,(e=>{let t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/") +for(let i=0;ie.toUpperCase()))})),mw=/([a-z\d])([A-Z])/g,gw=new ne(1e3,(e=>e.replace(mw,"$1_$2").toLowerCase())) +function yw(e){return cw.get(e)}function bw(e){return fw.get(e)}const _w=Object.defineProperty({__proto__:null,classify:bw,dasherize:yw},Symbol.toStringTag,{value:"Module"}) +class vw extends Xf{constructor(e){super(e),_defineProperty(this,"resolver",void 0),this.resolver=Zt(this).lookup("resolver-for-debugging:main")}canCatalogEntriesByType(e){return"model"!==e&&"template"!==e}catalogEntriesByType(e){let t=nw.NAMESPACES,r=[],n=new RegExp(`${bw(e)}$`) +return t.forEach((e=>{for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&n.test(t)){"class"===uf(e[t])&&r.push(yw(t.replace(n,"")))}})),r}}const ww=Object.defineProperty({__proto__:null,default:vw},Symbol.toStringTag,{value:"Module"}) +class Sw extends(Xf.extend(bh,wh)){constructor(...e){super(...e),_defineProperty(this,Qv,void 0),_defineProperty(this,"_booted",!1),_defineProperty(this,"_bootPromise",null)}static setupRegistry(e,t){}init(e){super.init(e),T(this),this.base??=this.application +let t=this.__registry__=new pr({fallback:this.base.__registry__}) +this.__container__=t.container({owner:this}),this._booted=!1}boot(e){return this._bootPromise||(this._bootPromise=new Gp.Promise((t=>{t(this._bootSync(e))}))),this._bootPromise}_bootSync(e){return this._booted||(this.cloneParentDependencies(),this.setupRegistry(e),this.base.runInstanceInitializers(this),this._booted=!0),this}setupRegistry(e=this.__container__.lookup("-environment:main")){this.constructor.setupRegistry(this.__registry__,e)}unregister(e){this.__container__.reset(e),this.__registry__.unregister(e)}buildChildEngineInstance(e,t={}){let r=this.lookup(`engine:${e}`) +if(!r)throw new Error(`You attempted to mount the engine '${e}', but it is not registered with its parent.`) +let n=r.buildInstance(t) +return Kv(n,this),n}cloneParentDependencies(){const e=Yv(this);["route:basic","service:-routing"].forEach((t=>{let r=e.resolveRegistration(t) +this.register(t,r)})) +let t=e.lookup("-environment:main") +this.register("-environment:main",t,{instantiate:!1}) +let r=["router:main",gr`-bucket-cache:main`,"-view-registry:main","renderer:-dom","service:-document"] +t.isInteractive&&r.push("event_dispatcher:main"),r.forEach((t=>{let r=e.lookup(t) +this.register(t,r,{instantiate:!1})}))}}const Pw=Object.defineProperty({__proto__:null,default:Sw},Symbol.toStringTag,{value:"Module"}) +var Ew=Object.create +function kw(){var e=Ew(null) +return e.__=void 0,delete e.__,e}var Tw=function(e,t,r){this.path=e,this.matcher=t,this.delegate=r} +Tw.prototype.to=function(e,t){var r=this.delegate +if(r&&r.willAddRoute&&(e=r.willAddRoute(this.matcher.target,e)),this.matcher.add(this.path,e),t){if(0===t.length)throw new Error("You must have an argument in the function passed to `to`") +this.matcher.addChild(this.path,e,t,this.delegate)}} +var Cw=function(e){this.routes=kw(),this.children=kw(),this.target=e} +function Ow(e,t,r){return function(n,i){var o=e+n +if(!i)return new Tw(o,t,r) +i(Ow(o,t,r))}}function Aw(e,t,r){for(var n=0,i=0;i0&&47===t.charCodeAt(0)&&(t=t.substr(1)) +for(var n=t.split("/"),i=void 0,o=void 0,s=0;s2&&"[]"===o.slice(s-2)&&(a=!0,r[o=o.slice(0,s-2)]||(r[o]=[])),l=i[1]?Jw(i[1]):""),a?r[o].push(l):r[o]=l}return r},Xw.prototype.recognize=function(e){var t,r=[this.rootState],n={},i=!1,o=e.indexOf("#");-1!==o&&(e=e.substr(0,o)) +var s=e.indexOf("?") +if(-1!==s){var a=e.substr(s+1,e.length) +e=e.substr(0,s),n=this.parseQueryString(a)}"/"!==e.charAt(0)&&(e="/"+e) +var l=e +Xw.ENCODE_AND_DECODE_PATH_SEGMENTS?e=xw(e):(e=decodeURI(e),l=decodeURI(l)) +var u=e.length +u>1&&"/"===e.charAt(u-1)&&(e=e.substr(0,u-1),l=l.substr(0,l.length-1),i=!0) +for(var c=0;c0){let i=e[n-1] +if(function(e){if(e&&"object"==typeof e){let t=e +return"queryParams"in t&&Object.keys(t.queryParams).every((e=>"string"==typeof e))}return!1}(i))return r=i.queryParams,t=rS.call(e,0,n-1),[t,r]}return[e,null]}function sS(e){for(let t in e){let r=e[t] +if("number"==typeof r)e[t]=""+r +else if(Array.isArray(r))for(let e=0,t=r.length;e{throw this.router.transitionDidError(e,this)}),hS("Handle Abort"))}else this.promise=lp.resolve(this[pS]),this[fS]={}}then(e,t,r){return this.promise.then(e,t,r)}catch(e,t){return this.promise.catch(e,t)}finally(e,t){return this.promise.finally(e,t)}abort(){this.rollback() +let e=new gS(this.router,void 0,void 0,void 0) +return e.to=this.from,e.from=this.from,e.isAborted=!0,this.router.routeWillChange(e),this.router.routeDidChange(e),this}rollback(){this.isAborted||(aS(this.router,this.sequence,this.targetName+": transition was aborted"),void 0!==this.intent&&null!==this.intent&&(this.intent.preTransitionState=this.router.state),this.isAborted=!0,this.isActive=!1,this.router.activeTransition=void 0)}redirect(e){this.rollback(),this.router.routeWillChange(e)}retry(){this.abort() +let e=this.router.transitionByIntent(this.intent,!1) +return null!==this.urlMethod&&e.method(this.urlMethod),e}method(e){return this.urlMethod=e,this}send(e=!1,t,r,n,i){this.trigger(e,t,r,n,i)}trigger(e=!1,t,...r){"string"==typeof e&&(t=e,e=!1),this.router.triggerEvent(this[pS].routeInfos.slice(0,this.resolveIndex+1),e,t,r)}followRedirects(){let e=this.router +return this.promise.catch((function(t){return e.activeTransition?e.activeTransition.followRedirects():lp.reject(t)}))}toString(){return"Transition (sequence "+this.sequence+")"}log(e){aS(this.router,this.sequence,e)}}function yS(e){return aS(e.router,e.sequence,"detected abort."),eS()}function bS(e){return"object"==typeof e&&e instanceof gS&&e.isTransition}let _S=new WeakMap +function vS(e,t={},r={includeAttributes:!1,localizeMapUpdates:!1}){const n=new WeakMap +return e.map(((i,o)=>{let{name:s,params:a,paramNames:l,context:u,route:c}=i,d=i +if(_S.has(d)&&r.includeAttributes){let e=_S.get(d) +e=function(e,t){let r={get metadata(){return SS(e)}} +if(!Object.isExtensible(t)||t.hasOwnProperty("metadata"))return Object.freeze(Object.assign({},t,r)) +return Object.assign(t,r)}(c,e) +let t=wS(e,u) +return n.set(d,e),r.localizeMapUpdates||_S.set(d,t),t}const h=r.localizeMapUpdates?n:_S +let p={find(t,r){let n,i=[] +3===t.length&&(i=e.map((e=>h.get(e)))) +for(let o=0;e.length>o;o++)if(n=h.get(e[o]),t.call(r,n,o,i))return n},get name(){return s},get paramNames(){return l},get metadata(){return SS(i.route)},get parent(){let t=e[o-1] +return void 0===t?null:h.get(t)},get child(){let t=e[o+1] +return void 0===t?null:h.get(t)},get localName(){let e=this.name.split(".") +return e[e.length-1]},get params(){return a},get queryParams(){return t}} +return r.includeAttributes&&(p=wS(p,u)),n.set(i,p),r.localizeMapUpdates||_S.set(i,p),p}))}function wS(e,t){let r={get attributes(){return t}} +return!Object.isExtensible(e)||e.hasOwnProperty("attributes")?Object.freeze(Object.assign({},e,r)):Object.assign(e,r)}function SS(e){return null!=e&&void 0!==e.buildRouteInfoMetadata?e.buildRouteInfoMetadata():null}class PS{constructor(e,t,r,n){this._routePromise=void 0,this._route=null,this.params={},this.isResolved=!1,this.name=t,this.paramNames=r,this.router=e,n&&this._processRoute(n)}getModel(e){return lp.resolve(this.context)}serialize(e){return this.params||{}}resolve(e){return lp.resolve(this.routePromise).then((t=>(tS(e),t))).then((()=>this.runBeforeModelHook(e))).then((()=>tS(e))).then((()=>this.getModel(e))).then((t=>(tS(e),t))).then((t=>this.runAfterModelHook(e,t))).then((t=>this.becomeResolved(e,t)))}becomeResolved(e,t){let r,n=this.serialize(t) +e&&(this.stashResolvedModel(e,t),e[fS]=e[fS]||{},e[fS][this.name]=n) +let i=t===this.context +!("context"in this)&&i||(r=t) +let o=_S.get(this),s=new ES(this.router,this.name,this.paramNames,n,this.route,r) +return void 0!==o&&_S.set(s,o),s}shouldSupersede(e){if(!e)return!0 +let t=e.context===this.context +return e.name!==this.name||"context"in this&&!t||this.hasOwnProperty("params")&&!function(e,t){if(e===t)return!0 +if(!e||!t)return!1 +for(let r in e)if(e.hasOwnProperty(r)&&e[r]!==t[r])return!1 +return!0}(this.params,e.params)}get route(){return null!==this._route?this._route:this.fetchRoute()}set route(e){this._route=e}get routePromise(){return this._routePromise||this.fetchRoute(),this._routePromise}set routePromise(e){this._routePromise=e}log(e,t){e.log&&e.log(this.name+": "+t)}updateRoute(e){return e._internalName=this.name,this.route=e}runBeforeModelHook(e){let t +return e.trigger&&e.trigger(!0,"willResolveModel",e,this.route),this.route&&void 0!==this.route.beforeModel&&(t=this.route.beforeModel(e)),bS(t)&&(t=null),lp.resolve(t)}runAfterModelHook(e,t){let r,n=this.name +var i +return this.stashResolvedModel(e,t),void 0!==this.route&&void 0!==this.route.afterModel&&(r=this.route.afterModel(t,e)),r=bS(i=r)?null:i,lp.resolve(r).then((()=>e.resolvedModels[n]))}stashResolvedModel(e,t){e.resolvedModels=e.resolvedModels||{},e.resolvedModels[this.name]=t}fetchRoute(){let e=this.router.getRoute(this.name) +return this._processRoute(e)}_processRoute(e){return this.routePromise=lp.resolve(e),null!==(t=e)&&"object"==typeof t&&"function"==typeof t.then?(this.routePromise=this.routePromise.then((e=>this.updateRoute(e))),this.route=void 0):e?this.updateRoute(e):void 0 +var t}}class ES extends PS{constructor(e,t,r,n,i,o){super(e,t,r,i),this.params=n,this.isResolved=!0,this.context=o}resolve(e){return e&&e.resolvedModels&&(e.resolvedModels[this.name]=this.context),lp.resolve(this)}}class kS extends PS{constructor(e,t,r,n,i){super(e,t,r,i),this.params={},n&&(this.params=n)}getModel(e){let t=this.params +e&&e[mS]&&(t={},iS(t,this.params),t.queryParams=e[mS]) +let r,n=this.route +return n.deserialize?r=n.deserialize(t,e):n.model&&(r=n.model(t,e)),r&&bS(r)&&(r=void 0),lp.resolve(r)}}class TS extends PS{constructor(e,t,r,n){super(e,t,r),this.context=n,this.serializer=this.router.getSerializer(t)}getModel(e){return void 0!==this.router.log&&this.router.log(this.name+": resolving provided model"),super.getModel(e)}serialize(e){let{paramNames:t,context:r}=this +e||(e=r) +let n={} +if(lS(e))return n[t[0]]=e,n +if(this.serializer)return this.serializer.call(null,e,t) +if(void 0!==this.route&&this.route.serialize)return this.route.serialize(e,t) +if(1!==t.length)return +let i=t[0] +return/_id$/.test(i)?n[i]=e.id:n[i]=e,n}}class CS{constructor(e,t={}){this.router=e,this.data=t}}function OS(e,t,r){let n=e.routeInfos,i=t.resolveIndex>=n.length?n.length-1:t.resolveIndex,o=t.isAborted +throw new MS(r,e.routeInfos[i].route,o,e)}function AS(e,t){if(t.resolveIndex===e.routeInfos.length)return +let r=e.routeInfos[t.resolveIndex],n=RS.bind(null,e,t) +return r.resolve(t).then(n,null,e.promiseLabel("Proceed"))}function RS(e,t,r){let n=e.routeInfos[t.resolveIndex].isResolved +if(e.routeInfos[t.resolveIndex++]=r,!n){let{route:e}=r +void 0!==e&&e.redirect&&e.redirect(r.context,t)}return tS(t),AS(e,t)}class xS{constructor(){this.routeInfos=[],this.queryParams={},this.params={}}promiseLabel(e){let t="" +return uS(this.routeInfos,(function(e){return""!==t&&(t+="."),t+=e.name,!0})),hS("'"+t+"': "+e)}resolve(e){let t=this.params +uS(this.routeInfos,(e=>(t[e.name]=e.params||{},!0))),e.resolveIndex=0 +let r=AS.bind(null,this,e),n=OS.bind(null,this,e) +return lp.resolve(null,this.promiseLabel("Start transition")).then(r,null,this.promiseLabel("Resolve route")).catch(n,this.promiseLabel("Handle error")).then((()=>this))}}class MS{constructor(e,t,r,n){this.error=e,this.route=t,this.wasAborted=r,this.state=n}}class DS extends CS{constructor(e,t,r,n=[],i={},o){super(e,o),this.preTransitionState=void 0,this.name=t,this.pivotHandler=r,this.contexts=n,this.queryParams=i}applyToState(e,t){let r=this.router.recognizer.handlersFor(this.name),n=r[r.length-1].handler +return this.applyToHandlers(e,r,n,t,!1)}applyToHandlers(e,t,r,n,i){let o,s,a=new xS,l=this.contexts.slice(0),u=t.length +if(this.pivotHandler)for(o=0,s=t.length;o=0;--o){let s=t[o],c=s.handler,d=e.routeInfos[o],h=null +if(h=s.names.length>0?o>=u?this.createParamHandlerInfo(c,s.names,l,d):this.getHandlerInfoForDynamicSegment(c,s.names,l,d,r,o):this.createParamHandlerInfo(c,s.names,l,d),i){h=h.becomeResolved(null,h.context) +let e=d&&d.context +s.names.length>0&&void 0!==d.context&&h.context===e&&(h.params=d&&d.params),h.context=e}let p=d;(o>=u||h.shouldSupersede(d))&&(u=Math.min(o,u),p=h),n&&!i&&(p=p.becomeResolved(null,p.context)),a.routeInfos.unshift(p)}if(l.length>0)throw new Error("More context objects were passed than there are dynamic segments for the route: "+r) +return n||this.invalidateChildren(a.routeInfos,u),iS(a.queryParams,this.queryParams||{}),n&&e.queryParams&&iS(a.queryParams,e.queryParams),a}invalidateChildren(e,t){for(let r=t,n=e.length;r0){if(s=r[r.length-1],lS(s))return this.createParamHandlerInfo(e,t,r,n) +r.pop()}else{if(n&&n.name===e)return n +if(!this.preTransitionState)return n +{let e=this.preTransitionState.routeInfos[o] +s=null==e?void 0:e.context}}return new TS(this.router,e,t,s)}createParamHandlerInfo(e,t,r,n){let i={},o=t.length,s=[] +for(;o--;){let a=n&&e===n.name&&n.params||{},l=r[r.length-1],u=t[o] +lS(l)?i[u]=""+r.pop():a.hasOwnProperty(u)?i[u]=a[u]:s.push(u)}if(s.length>0)throw new Error(`You didn't provide enough string/numeric parameters to satisfy all of the dynamic segments for route ${e}. Missing params: ${s}`) +return new kS(this.router,e,t,i)}}const NS=function(){function e(t){let r=Error.call(this,t) +this.name="UnrecognizedURLError",this.message=t||"UnrecognizedURL",Error.captureStackTrace?Error.captureStackTrace(this,e):this.stack=r.stack}return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}() +class IS extends CS{constructor(e,t,r){super(e,r),this.url=t,this.preTransitionState=void 0}applyToState(e){let t,r,n=new xS,i=this.router.recognizer.recognize(this.url) +if(!i)throw new NS(this.url) +let o=!1,s=this.url +function a(e){if(e&&e.inaccessibleByURL)throw new NS(s) +return e}for(t=0,r=i.length;t=0&&n;--r){let i=t[r],o=i.handler +e.add(t,{as:o}),n="/"===i.path||""===i.path||".index"===o.slice(-6)}}))}hasRoute(e){return this.recognizer.hasRoute(e)}queryParamsTransition(e,t,r,n){if(this.fireQueryParamDidChange(n,e),!t&&this.activeTransition)return this.activeTransition +{let e=new gS(this,void 0,void 0) +return e.queryParamsOnly=!0,r.queryParams=this.finalizeQueryParamChange(n.routeInfos,n.queryParams,e),e[mS]=n.queryParams,this.toReadOnlyInfos(e,n),this.routeWillChange(e),e.promise=e.promise.then((t=>(e.isAborted||(this._updateURL(e,r),this.didTransition(this.currentRouteInfos),this.toInfos(e,n.routeInfos,!0),this.routeDidChange(e)),t)),null,hS("Transition complete")),e}}transitionByIntent(e,t){try{return this.getTransitionByIntent(e,t)}catch(r){return new gS(this,e,void 0,r,void 0)}}recognize(e){let t=new IS(this,e),r=this.generateNewState(t) +if(null===r)return r +let n=vS(r.routeInfos,r.queryParams,{includeAttributes:!1,localizeMapUpdates:!0}) +return n[n.length-1]}recognizeAndLoad(e){let t=new IS(this,e),r=this.generateNewState(t) +if(null===r)return lp.reject(`URL ${e} was not recognized`) +let n=new gS(this,t,r,void 0) +return n.then((()=>{let e=vS(r.routeInfos,n[mS],{includeAttributes:!0,localizeMapUpdates:!1}) +return e[e.length-1]}))}generateNewState(e){try{return e.applyToState(this.state,!1)}catch(t){return null}}getTransitionByIntent(e,t){let r,n=!!this.activeTransition,i=n?this.activeTransition[pS]:this.state,o=e.applyToState(i,t),s=cS(i.queryParams,o.queryParams) +if(LS(o.routeInfos,i.routeInfos)){if(s){let e=this.queryParamsTransition(s,n,i,o) +return e.queryParamsOnly=!0,e}return this.activeTransition||new gS(this,void 0,void 0)}if(t){let e=new gS(this,void 0,o) +return e.isIntermediate=!0,this.toReadOnlyInfos(e,o),this.setupContexts(o,e),this.routeWillChange(e),this.activeTransition}return r=new gS(this,e,o,void 0,this.activeTransition),function(e,t){if(e.length!==t.length)return!1 +for(let r=0,n=e.length;rthis.finalizeTransition(r,e)),null,hS("Settle transition promise when transition is finalized")),n||this.notifyExistingHandlers(o,r),this.fireQueryParamDidChange(o,s),r}doTransition(e,t=[],r=!1){let n,i=t[t.length-1],o={} +if(i&&Object.prototype.hasOwnProperty.call(i,"queryParams")&&(o=t.pop().queryParams),void 0===e){aS(this,"Updating query params") +let{routeInfos:e}=this.state +n=new DS(this,e[e.length-1].name,void 0,[],o)}else"/"===e.charAt(0)?(aS(this,"Attempting URL transition to "+e),n=new IS(this,e)):(aS(this,"Attempting transition to "+e),n=new DS(this,e,void 0,t,o)) +return this.transitionByIntent(n,r)}finalizeTransition(e,t){try{aS(e.router,e.sequence,"Resolved all models on destination route; finalizing transition.") +let r=t.routeInfos +return this.setupContexts(t,e),e.isAborted?(this.state.routeInfos=this.currentRouteInfos,lp.reject(yS(e))):(this._updateURL(e,t),e.isActive=!1,this.activeTransition=void 0,this.triggerEvent(this.currentRouteInfos,!0,"didTransition",[]),this.didTransition(this.currentRouteInfos),this.toInfos(e,t.routeInfos,!0),this.routeDidChange(e),aS(this,e.sequence,"TRANSITION COMPLETE."),r[r.length-1].route)}catch(n){if("object"!=typeof(r=n)||null===r||"TRANSITION_ABORTED"!==r.code){let t=e[pS].routeInfos +e.trigger(!0,"error",n,e,t[t.length-1].route),e.abort()}throw n}var r}setupContexts(e,t){let r,n,i,o=this.partitionRoutes(this.state,e) +for(r=0,n=o.exited.length;r=0;--s){let e=n[s] +iS(o,e.params),e.route.inaccessibleByURL&&(r=null)}if(r){o.queryParams=e._visibleQueryParams||t.queryParams +let n=this.recognizer.generate(i,o),s=e.isCausedByInitialTransition,a="replace"===r&&!e.isCausedByAbortingTransition,l=e.queryParamsOnly&&"replace"===r,u="replace"===r&&e.isCausedByAbortingReplaceTransition +s||a||l||u?this.replaceURL(n):this.updateURL(n)}}finalizeQueryParamChange(e,t,r){for(let o in t)t.hasOwnProperty(o)&&null===t[o]&&delete t[o] +let n=[] +this.triggerEvent(e,!0,"finalizeQueryParamChange",[t,n,r]),r&&(r._visibleQueryParams={}) +let i={} +for(let o=0,s=n.length;o0){let r=vS(t,Object.assign({},this._lastQueryParams),{includeAttributes:!0,localizeMapUpdates:!1}) +e.from=r[r.length-1]||null}}toInfos(e,t,r=!1){if(void 0!==e&&t.length>0){let n=vS(t,Object.assign({},e[mS]),{includeAttributes:r,localizeMapUpdates:!1}) +e.to=n[n.length-1]||null}}notifyExistingHandlers(e,t){let r,n,i,o,s=this.state.routeInfos +for(n=s.length,r=0;r"string"==typeof e))}return!1}(n)?t={}:(e.pop(),t=n.queryParams),"string"==typeof e[0]&&(r=e.shift()),{routeName:r,models:e,queryParams:t}}function HS(e){let t=e.activeTransition?e.activeTransition[pS].routeInfos:e.state.routeInfos +return t[t.length-1].name}function VS(e,t){if(t._namesStashed)return +let r,n=t[t.length-1].name,i=e._routerMicrolib.recognizer.handlersFor(n) +for(let o=0;o0){let i=Object.assign({},r) +return this.emberRouter._prepareQueryParams(e,t,i),KS(i,n.queryParams)}return!0}}const ZS=Object.defineProperty({__proto__:null,default:XS},Symbol.toStringTag,{value:"Module"}) +function eP(e,t){return(e,...r)=>{let n=function(e,t){let r=[] +function n(e){r.push(e)}for(let i of t)qc(i,n) +return r}(0,[e,...r]),i=Jc(...n,(function(){let e=n.length-1 +for(let r=0;rt}))}function uP(e,t){return Jc(e,(function(){return hd(this,e)>=t}))}function cP(e,t){return Jc(e,(function(){return hd(this,e)e)),pP=eP(0,(e=>!e)) +function fP(e){return _d(e).oneWay()}function mP(e){return _d(e).readOnly()}function gP(e,t){return Jc(e,{get(t){return hd(this,e)},set(t,r){return gd(this,e,r),r}})}const yP=Object.defineProperty({__proto__:null,and:hP,bool:oP,deprecatingAlias:gP,empty:tP,equal:aP,gt:lP,gte:uP,lt:cP,lte:dP,match:sP,none:nP,not:iP,notEmpty:rP,oneWay:fP,or:pP,readOnly:mP},Symbol.toStringTag,{value:"Module"}) +function bP(e){return Array.isArray(e)||jf.detect(e)}function _P(e,t,r,n){return Jc(`${e}.[]`,(function(){let n=hd(this,e) +return null===n||"object"!=typeof n?r:n.reduce(t,r,this)})).readOnly()}function vP(e,t,r){let n +return/@each/.test(e)?n=e.replace(/\.@each.*$/,""):(n=e,e+=".[]"),Jc(e,...t,(function(){let e=hd(this,n) +return bP(e)?Uf(r.call(this,e)):Uf()})).readOnly()}function wP(e,t,r){return Jc(...e.map((e=>`${e}.[]`)),(function(){return Uf(t.call(this,e))})).readOnly()}function SP(e){return _P(e,((e,t)=>e+t),0)}function PP(e){return _P(e,((e,t)=>Math.max(e,t)),-1/0)}function EP(e){return _P(e,((e,t)=>Math.min(e,t)),1/0)}function kP(e,t,r){let n +"function"==typeof t?(r=t,n=[]):n=t +const i=r +return vP(e,n,(function(e){return Array.isArray(e),e.map(i,this)}))}function TP(e,t){return kP(`${e}.@each.${t}`,(e=>hd(e,t)))}function CP(e,t,r){let n +"function"==typeof t?(r=t,n=[]):n=t +const i=r +return vP(e,n,(function(e){return Array.isArray(e),e.filter(i,this)}))}function OP(e,t,r){let n +return n=2===arguments.length?e=>hd(e,t):e=>hd(e,t)===r,CP(`${e}.@each.${t}`,n)}function AP(e,...t){return wP([e,...t],(function(e){let t=Uf(),r=new Set +return e.forEach((e=>{let n=hd(this,e) +bP(n)&&n.forEach((e=>{r.has(e)||(r.add(e),t.push(e))}))})),t}))}function RP(e,t){return Jc(`${e}.[]`,(function(){let r=hd(this,e) +return bP(r)?Ef(r,t):Uf()})).readOnly()}let xP=AP +function MP(e,...t){return wP([e,...t],(function(e){let t=e.map((e=>{let t=hd(this,e) +return Array.isArray(t)?t:[]})),r=t.pop().filter((e=>{for(let r of t){let t=!1 +for(let n of r)if(n===e){t=!0 +break}if(!1===t)return!1}return!0})) +return Uf(r)}))}function DP(e,t){return Jc(`${e}.[]`,`${t}.[]`,(function(){let r=hd(this,e),n=hd(this,t) +return bP(r)?bP(n)?r.filter((e=>-1===n.indexOf(e))):r:Uf()})).readOnly()}function NP(e,...t){let r=[e,...t] +return wP(r,(function(){let e=r.map((e=>{let t=hd(this,e) +return void 0===t?null:t})) +return Uf(e)}))}function IP(e,t,r){let n,i +return Array.isArray(t)?(n=t,i=r):(n=[],i=t),"function"==typeof i?function(e,t,r){return vP(e,t,(function(e){return e.slice().sort(((e,t)=>r.call(this,e,t)))}))}(e,n,i):function(e,t){let r=Xc((function(r){let n=hd(this,t),i="@this"===e,o=function(e){let t=e=>{let[t,r]=e.split(":") +return r=r||"asc",[t,r]} +return Array.isArray(e),e.map(t)}(n),s=i?this:hd(this,e) +return bP(s)?0===o.length?Uf(s.slice()):function(e,t){return Uf(e.slice().sort(((e,r)=>{for(let[n,i]of t){let t=pf(hd(e,n),hd(r,n)) +if(0!==t)return"desc"===i?-1*t:t}return 0})))}(s,o):Uf()})).readOnly() +return r}(e,i)}const jP=Object.defineProperty({__proto__:null,collect:NP,filter:CP,filterBy:OP,intersect:MP,map:kP,mapBy:TP,max:PP,min:EP,setDiff:DP,sort:IP,sum:SP,union:xP,uniq:AP,uniqBy:RP},Symbol.toStringTag,{value:"Module"}),LP=Object.defineProperty({__proto__:null,alias:_d,and:hP,bool:oP,collect:NP,default:Qc,deprecatingAlias:gP,empty:tP,equal:aP,expandProperties:qc,filter:CP,filterBy:OP,gt:lP,gte:uP,intersect:MP,lt:cP,lte:dP,map:kP,mapBy:TP,match:sP,max:PP,min:EP,none:nP,not:iP,notEmpty:rP,oneWay:fP,or:pP,readOnly:mP,reads:fP,setDiff:DP,sort:IP,sum:SP,union:xP,uniq:AP,uniqBy:RP},Symbol.toStringTag,{value:"Module"}) +function BP(...e){return Ad("service",...e)}class FP extends cv{}_defineProperty(FP,"isServiceFactory",!0) +const UP=Object.defineProperty({__proto__:null,default:FP,inject:function(...e){return Ad("service",...e)},service:BP},Symbol.toStringTag,{value:"Module"}),zP=Zt,HP=Object.defineProperty({__proto__:null,getOwner:zP,setOwner:er},Symbol.toStringTag,{value:"Module"}) +let VP=function(e,t,r){let{get:n}=r +return void 0!==n&&(r.get=function(){let e,r=oo(this,t),i=Po((()=>{e=n.call(this)})) +return Vi(r,i),mo(i),e}),r} +function $P(...e){if(Mc(e)){let[t,r,n]=e +return VP(t,r,n)}{const t=e[0] +let r=function(e,r,n,i,o){return VP(e,r,t)} +return Vc(r),r}}Vc($P) +const qP=Object.defineProperty({__proto__:null,dependentKeyCompat:$P},Symbol.toStringTag,{value:"Module"}),GP=Symbol("render"),WP=Symbol("render-state") +class QP extends(Xf.extend(kh,lv)){constructor(e){if(super(e),_defineProperty(this,"context",{}),_defineProperty(this,"_bucketCache",void 0),_defineProperty(this,"_internalName",void 0),_defineProperty(this,"_names",void 0),_defineProperty(this,"_router",void 0),_defineProperty(this,WP,void 0),e){let t=e.lookup("router:main"),r=e.lookup(gr`-bucket-cache:main`) +this._router=t,this._bucketCache=r,this._topLevelViewTemplate=e.lookup("template:-outlet"),this._environment=e.lookup("-environment:main")}}serialize(e,t){if(t.length<1||!e)return +let r={} +if(1===t.length){let[n]=t +"object"==typeof e&&n in e?r[n]=hd(e,n):/_id$/.test(n)?r[n]=hd(e,"id"):te(e)&&(r[n]=hd(e,n))}else r=Cd(e,t) +return r}_setRouteName(e){this.routeName=e +let t=Zt(this) +this.fullRouteName=ZP(t,e)}_stashNames(e,t){if(this._names)return +let r=this._names=e._names +r.length||(r=(e=t)&&e._names||[]) +let n=hd(this,"_qp").qps,i=new Array(r.length) +for(let o=0;o(e[t]=r,e)),o)}serializeQueryParamKey(e){return e}serializeQueryParam(e,t,r){return this._router._serializeQueryParam(e,r)}deserializeQueryParam(e,t,r){return this._router._deserializeQueryParam(e,r)}_optionsForQueryParam(e){const t=hd(this,"queryParams") +return hd(t,e.urlKey)||hd(t,e.prop)||t[e.urlKey]||t[e.prop]||{}}resetController(e,t,r){return this}exit(e){this.deactivate(e),this.trigger("deactivate",e),this.teardownViews()}_internalReset(e,t){let r=this.controller +r._qpDelegate=hd(this,"_qp").states.inactive,this.resetController(r,e,t)}enter(e){this[WP]=void 0,this.activate(e),this.trigger("activate",e)}deactivate(e){}activate(e){}intermediateTransitionTo(...e){let[t,...r]=YS(this,e) +this._router.intermediateTransitionTo(t,...r)}refresh(){return this._router._routerMicrolib.refresh(this)}setup(e,t){let r=this.controllerName||this.routeName,n=this.controllerFor(r,!0)??this.generateController(r),i=hd(this,"_qp") +if(!this.controller){let e=i.propertyNames;(function(e,t){t.forEach((t=>{if(void 0===Uc(e,t)){let r=W(e,t) +null===r||"function"!=typeof r.get&&"function"!=typeof r.set||td(e,t,$P({get:r.get,set:r.set}))}Yu(e,`${t}.[]`,e,e._qpChanged,!1)}))})(n,e),this.controller=n}let o=i.states +if(n._qpDelegate=o.allowOverrides,t){VS(this._router,t[pS].routeInfos) +let e=this._bucketCache,r=t[fS] +i.propertyNames.forEach((t=>{let o=i.map[t] +o.values=r +let s=qS(o.route.fullRouteName,o.parts,o.values),a=e.lookup(s,t,o.undecoratedDefaultValue) +gd(n,t,a)})) +let o=JP(this,t[pS]) +Od(n,o)}this.setupController(n,e,t),this._environment.options.shouldRender&&this[GP](),ic(!1)}_qpChanged(e,t,r){if(!r)return +let n=this._bucketCache,i=qS(r.route.fullRouteName,r.parts,r.values) +n.stash(i,e,t)}beforeModel(e){}afterModel(e,t){}redirect(e,t){}contextDidChange(){this.currentModel=this.context}model(e,t){let r,n,i,o=hd(this,"_qp").map +for(let s in e){if("queryParams"===s||o&&s in o)continue +let t=s.match(/^(.*)_id$/) +null!==t&&(r=t[1],i=e[s]),n=!0}if(!r){if(n)return Object.assign({},e) +if(t.resolveIndex<1)return +return t[pS].routeInfos[t.resolveIndex-1].context}return this.findModel(r,i)}deserialize(e,t){return this.model(this._paramsFor(this.routeName,e),t)}findModel(e,t){if(ce._NO_IMPLICIT_ROUTE_MODEL)return +Cr(`The implicit model loading behavior for routes is deprecated. Please define an explicit model hook for ${this.fullRouteName}.`,Tr.DEPRECATE_IMPLICIT_ROUTE_MODEL) +return("store"in this?this.store:hd(this,"_store")).find(e,t)}setupController(e,t,r){e&&void 0!==t&&gd(e,"model",t)}controllerFor(e,t=!1){let r=Zt(this),n=r.lookup(`route:${e}`) +return n&&n.controllerName&&(e=n.controllerName),r.lookup(`controller:${e}`)}generateController(e){return RE(Zt(this),e)}modelFor(e){let t,r=Zt(this),n=this._router&&this._router._routerMicrolib?this._router._routerMicrolib.activeTransition:void 0 +t=r.routable&&void 0!==n?ZP(r,e):e +let i=r.lookup(`route:${t}`) +if(null!=n){let e=i&&i.routeName||t +if(Object.prototype.hasOwnProperty.call(n.resolvedModels,e))return n.resolvedModels[e]}return i?.currentModel}[GP](){this[WP]=function(e){let t=Zt(e),r=e.routeName,n=t.lookup(`controller:${e.controllerName||r}`),i=e.currentModel,o=t.lookup(`template:${e.templateName||r}`),s={owner:t,into:void 0,outlet:"main",name:r,controller:n,model:i,template:o?.(t)??e._topLevelViewTemplate(t)} +return s}(this),Fu(this._router,"_setOutlets")}willDestroy(){this.teardownViews()}teardownViews(){this[WP]&&(this[WP]=void 0,Fu(this._router,"_setOutlets"))}buildRouteInfoMetadata(){}_paramsFor(e,t){return void 0!==this._router._routerMicrolib.activeTransition?this.paramsFor(e):t}get _store(){const e=Zt(this) +return this.routeName,{find(t,r){let n=e.factoryFor(`model:${t}`) +if(n)return n=n.class,n.find(r)}}}get _qp(){let e={},t=this.controllerName||this.routeName,r=Zt(this),n=r.lookup(`controller:${t}`),i=hd(this,"queryParams"),o=Object.keys(i).length>0 +if(n){e=function(e,t){let r={},n={defaultValue:!0,type:!0,scope:!0,as:!0} +for(let i in e)Object.prototype.hasOwnProperty.call(e,i)&&(r[i]={...e[i],...t[i]},n[i]=!0) +for(let i in t)Object.prototype.hasOwnProperty.call(t,i)&&!n[i]&&(r[i]={...t[i],...e[i]}) +return r}(GS(hd(n,"queryParams")||[]),i)}else o&&(n=RE(r,t),e=i) +let s=[],a={},l=[] +for(let u in e){if(!Object.prototype.hasOwnProperty.call(e,u))continue +if("unknownProperty"===u||"_super"===u)continue +let r,i=e[u],o=i.scope||"model" +"controller"===o&&(r=[]) +let c=i.as||this.serializeQueryParamKey(u),d=hd(n,u) +d=XP(d) +let h=i.type||uf(d),p=this.serializeQueryParam(d,c,h),f=`${t}:${u}`,m={undecoratedDefaultValue:hd(n,u),defaultValue:d,serializedDefaultValue:p,serializedValue:p,type:h,urlKey:c,prop:u,scopedPropertyName:f,controllerName:t,route:this,parts:r,values:null,scope:o} +a[u]=a[c]=a[f]=m,s.push(m),l.push(u)}return{qps:s,map:a,propertyNames:l,states:{inactive:(e,t)=>{let r=a[e] +this._qpChanged(e,t,r)},active:(e,t)=>{let r=a[e] +return this._qpChanged(e,t,r),this._activeQPChanged(r,t)},allowOverrides:(e,t)=>{let r=a[e] +return this._qpChanged(e,t,r),this._updatingQPChanged(r)}}}}}function YP(e){return e[WP]}function KP(e,t){if(t.fullQueryParams)return t.fullQueryParams +let r=t.routeInfos.every((e=>e.route)),n={...t.queryParams} +return e._deserializeQueryParams(t.routeInfos,n),r&&(t.fullQueryParams=n),n}function JP(e,t){t.queryParamsFor=t.queryParamsFor||{} +let r=e.fullRouteName,n=t.queryParamsFor[r] +if(n)return n +let i=KP(e._router,t),o=t.queryParamsFor[r]={},s=hd(e,"_qp").qps +for(let a of s){let e=a.prop in i +o[a.prop]=e?i[a.prop]:XP(a.defaultValue)}return o}function XP(e){return Array.isArray(e)?Uf(e.slice()):e}function ZP(e,t){if(e.routable){let r=e.mountPoint +return"application"===t?r:`${r}.${t}`}return t}i=QP,_defineProperty(QP,"isRouteFactory",!0),g_(i.prototype,"_store",[Jc]),g_(i.prototype,"_qp",[Jc]) +const eE=QP.prototype.serialize +function tE(e){return e.serialize===eE}QP.reopen({mergedProperties:["queryParams"],queryParams:{},templateName:null,controllerName:null,send(...e){if(this._router&&this._router._routerMicrolib||!ye())this._router.send(...e) +else{let t=e.shift(),r=this.actions[t] +if(r)return r.apply(this,e)}},actions:{queryParamsDidChange(e,t,r){let n=hd(this,"_qp").map,i=Object.keys(e).concat(Object.keys(r)) +for(let o of i){let e=n[o] +if(e){if(hd(this._optionsForQueryParam(e),"refreshModel")&&this._router.currentState){this.refresh() +break}}}return!0},finalizeQueryParamChange(e,t,r){if("application"!==this.fullRouteName)return!0 +if(!r)return +let n,i=r[pS].routeInfos,o=this._router,s=o._queryParamsFor(i),a=o._qpUpdates,l=!1 +VS(o,i) +for(let u of s.qps){let i,o,s=u.route,c=s.controller,d=u.urlKey in e&&u.urlKey +if(a.has(u.urlKey)?(i=hd(c,u.prop),o=s.serializeQueryParam(i,u.urlKey,u.type)):d?(o=e[d],void 0!==o&&(i=s.deserializeQueryParam(o,u.urlKey,u.type))):(o=u.serializedDefaultValue,i=XP(u.defaultValue)),c._qpDelegate=hd(s,"_qp").states.inactive,o!==u.serializedValue){if(r.queryParamsOnly&&!1!==n){let e=hd(s._optionsForQueryParam(u),"replace") +e?n=!0:!1===e&&(n=!1)}gd(c,u.prop,i),l=!0}u.serializedValue=o,u.serializedDefaultValue===o||t.push({value:o,visible:!0,key:d||u.urlKey})}!0===l&&ic(!1),n&&r.method("replace"),s.qps.forEach((e=>{let t=hd(e.route,"_qp") +e.route.controller._qpDelegate=hd(t,"states.active")})),o._qpUpdates.clear()}}}) +const rE=Object.defineProperty({__proto__:null,default:QP,defaultSerialize:eE,getFullQueryParams:KP,getRenderState:YP,hasDefaultSerialize:tE},Symbol.toStringTag,{value:"Module"}) +function nE(){return this}const{slice:iE}=Array.prototype +class oE extends(Xf.extend(lv)){static map(e){return this.dslCallbacks||(this.dslCallbacks=[],this.reopenClass({dslCallbacks:this.dslCallbacks})),this.dslCallbacks.push(e),this}static _routePath(e){let t,r,n,i=[] +function o(e,t){for(let r=0;r{e.setURL(r),gd(t,"currentURL",r)}))}didTransition(e){t.didTransition(e)}willTransition(e,r){t.willTransition(e,r)}triggerEvent(e,r,n,i){return dE.bind(t)(e,r,n,i)}routeWillChange(e){t.trigger("routeWillChange",e),t._routerService.trigger("routeWillChange",e),e.isIntermediate&&t.set("currentRoute",e.to)}routeDidChange(e){t.set("currentRoute",e.to),Fu((()=>{t.trigger("routeDidChange",e),t._routerService.trigger("routeDidChange",e)}))}transitionDidError(e,r){return e.wasAborted||r.isAborted?yS(r):(r.trigger(!1,"error",e.error,r,e.route),t._isErrorHandled(e.error)?(r.rollback(),this.routeDidChange(r),e.error):(r.abort(),e.error))}replaceURL(r){if(e.replaceURL){Fu((()=>{e.replaceURL(r),gd(t,"currentURL",r)}))}else this.updateURL(r)}},o=this.constructor.dslCallbacks||[nE],s=this._buildDSL() +s.route("application",{path:"/",resetNamespace:!0,overrideNameAssertion:!0},(function(){for(let e=0;er.factoryFor(`route-map:${e}`),addRouteForEngine(e,r){t._engineInfoByRoute[e]||(t._engineInfoByRoute[e]=r)}} +return new jE(null,n)}_resetQueuedQueryParameterChanges(){this._queuedQPChanges={}}_hasModuleBasedResolver(){let e=hd(zP(this),"application.__registry__.resolver.moduleBasedResolver") +return Boolean(e)}startRouting(){if(this.setupRouter()){let e=hd(this,"initialURL") +void 0===e&&(e=hd(this,"location").getURL()) +let t=this.handleURL(e) +if(t&&t.error)throw t.error}}setupRouter(){if(this._didSetupRouter)return!1 +this._didSetupRouter=!0,this._setupLocation() +let e=hd(this,"location") +return!hd(e,"cancelRouterSetup")&&(this._initRouterJs(),e.onUpdateURL((e=>{this.handleURL(e)})),!0)}_setOutlets(){if(this.isDestroying||this.isDestroyed)return +let e=this._routerMicrolib.currentRouteInfos +if(!e)return +let t=null,r=null +for(let n of e){let e=YP(n.route) +if(!e)break +{let n={render:e,outlets:{main:void 0}} +r?r.outlets.main=n:t=n,r=n}}if(null!==t)if(this._toplevelView)this._toplevelView.setOutletState(t) +else{let e=zP(this),r=e.factoryFor("view:-outlet"),n=e.lookup("application:main"),i=e.lookup("-environment:main"),o=e.lookup("template:-outlet") +this._toplevelView=r.create({environment:i,template:o,application:n}),this._toplevelView.setOutletState(t) +let s=e.lookup("-application-instance:main") +s&&s.didCreateRootView(this._toplevelView)}}handleURL(e){let t=e.split(/#(.+)?/)[0] +return this._doURLTransition("handleURL",t)}_doURLTransition(e,t){this._initialTransitionStarted=!0 +let r=this._routerMicrolib[e](t||"/") +return fE(r,this),r}transitionTo(...e){if(QS(e[0]))return this._doURLTransition("transitionTo",e[0]) +let{routeName:t,models:r,queryParams:n}=zS(e) +return this._doTransition(t,r,n)}intermediateTransitionTo(e,...t){this._routerMicrolib.intermediateTransitionTo(e,...t),pE(this)}replaceWith(...e){return this.transitionTo(...e).method("replace")}generate(e,...t){let r=this._routerMicrolib.generate(e,...t) +return this.location.formatURL(r)}isActive(e){return this._routerMicrolib.isActive(e)}isActiveIntent(e,t,r){return this.currentState.isActiveIntent(e,t,r)}send(e,...t){this._routerMicrolib.trigger(e,...t)}hasRoute(e){return this._routerMicrolib.hasRoute(e)}reset(){this._didSetupRouter=!1,this._initialTransitionStarted=!1,this._routerMicrolib&&this._routerMicrolib.reset()}willDestroy(){this._toplevelView&&(this._toplevelView.destroy(),this._toplevelView=null),super.willDestroy(),this.reset() +let e=this._engineInstances +for(let t in e){let r=e[t] +for(let e in r){Nu(r[e],"destroy")}}}_activeQPChanged(e,t){this._queuedQPChanges[e]=t,Fu(this,this._fireQueryParamTransition)}_updatingQPChanged(e){this._qpUpdates.add(e)}_fireQueryParamTransition(){this.transitionTo({queryParams:this._queuedQPChanges}),this._resetQueuedQueryParameterChanges()}_setupLocation(){let e=this.location,t=this.rootURL,r=zP(this) +if("string"==typeof e){e=gd(this,"location",r.lookup(`location:${e}`))}null!==e&&"object"==typeof e&&(t&&gd(e,"rootURL",t),"function"==typeof e.initState&&e.initState())}_serializeQueryParams(e,t){mE(this,e,t,((e,r,n)=>{if(n)delete t[e],t[n.urlKey]=n.route.serializeQueryParam(r,n.urlKey,n.type) +else{if(void 0===r)return +t[e]=this._serializeQueryParam(r,uf(r))}}))}_serializeQueryParam(e,t){return null==e?e:"array"===t?JSON.stringify(e):`${e}`}_deserializeQueryParams(e,t){mE(this,e,t,((e,r,n)=>{n&&(delete t[e],t[n.prop]=n.route.deserializeQueryParam(r,n.urlKey,n.type))}))}_deserializeQueryParam(e,t){return null==e?e:"boolean"===t?"true"===e:"number"===t?Number(e).valueOf():"array"===t?Uf(JSON.parse(e)):e}_pruneDefaultQueryParamValues(e,t){let r=this._queryParamsFor(e) +for(let n in t){let e=r.map[n] +e&&e.serializedDefaultValue===t[n]&&delete t[n]}}_doTransition(e,t,r,n){let i=e||HS(this._routerMicrolib) +this._initialTransitionStarted=!0 +let o={} +this._processActiveTransitionQueryParams(i,t,o,r),Object.assign(o,r),this._prepareQueryParams(i,t,o,Boolean(n)) +let s=this._routerMicrolib.transitionTo(i,...t,{queryParams:o}) +return fE(s,this),s}_processActiveTransitionQueryParams(e,t,r,n){if(!this._routerMicrolib.activeTransition)return +let i={},o=this._qpUpdates,s=KP(this,this._routerMicrolib.activeTransition[pS]) +for(let a in s)o.has(a)||(i[a]=s[a]) +this._fullyScopeQueryParams(e,t,n),this._fullyScopeQueryParams(e,t,i),Object.assign(r,i)}_prepareQueryParams(e,t,r,n){let i=hE(this,e,t) +this._hydrateUnsuppliedQueryParams(i,r,Boolean(n)),this._serializeQueryParams(i.routeInfos,r),n||this._pruneDefaultQueryParamValues(i.routeInfos,r)}_getQPMeta(e){let t=e.route +return t&&hd(t,"_qp")}_queryParamsFor(e){let t=e[e.length-1].name,r=this._qpCache[t] +if(void 0!==r)return r +let n,i=!0,o={},s=[] +for(let l of e)if(n=this._getQPMeta(l),n){for(let e of n.qps)s.push(e) +Object.assign(o,n.map)}else i=!1 +let a={qps:s,map:o} +return i&&(this._qpCache[t]=a),a}_fullyScopeQueryParams(e,t,r){let n,i=hE(this,e,t).routeInfos +for(let o of i)if(n=this._getQPMeta(o),n)for(let e of n.qps){let t=e.prop in r&&e.prop||e.scopedPropertyName in r&&e.scopedPropertyName||e.urlKey in r&&e.urlKey +t&&t!==e.scopedPropertyName&&(r[e.scopedPropertyName]=r[t],delete r[t])}}_hydrateUnsuppliedQueryParams(e,t,r){let n,i,o,s=e.routeInfos,a=this._bucketCache +for(let l of s)if(n=this._getQPMeta(l),n)for(let r=0,s=n.qps.length;r=0;--r){let n=e[r],i=n.route +if(void 0!==i&&!0!==t(i,n))return}}_defineProperty(oE,"dslCallbacks",void 0) +let aE={willResolveModel(e,t,r){this._scheduleLoadingEvent(t,r)},error(e,t,r){let n=this,i=e[e.length-1] +sE(e,((e,r)=>{if(r!==i){let r=uE(e,"error") +if(r)return n._markErrorAsHandled(t),n.intermediateTransitionTo(r,t),!1}let o=lE(e,"error") +return!o||(n._markErrorAsHandled(t),n.intermediateTransitionTo(o,t),!1)})),function(e,t){let r,n=[] +r=e&&"object"==typeof e&&"object"==typeof e.errorThrown?e.errorThrown:e +t&&n.push(t) +r&&(r.message&&n.push(r.message),r.stack&&n.push(r.stack),"string"==typeof r&&n.push(r)) +console.error(...n)}(t,`Error while processing route: ${r.targetName}`)},loading(e,t){let r=this,n=e[e.length-1] +sE(e,((e,i)=>{if(i!==n){let t=uE(e,"loading") +if(t)return r.intermediateTransitionTo(t),!1}let o=lE(e,"loading") +return o?(r.intermediateTransitionTo(o),!1):t.pivotHandler!==e}))}} +function lE(e,t){let r=zP(e),{routeName:n,fullRouteName:i,_router:o}=e,s=`${i}_${t}` +return cE(r,o,`${n}_${t}`,s)?s:""}function uE(e,t){let r=zP(e),{routeName:n,fullRouteName:i,_router:o}=e,s="application"===i?t:`${i}.${t}` +return cE(r,o,"application"===n?t:`${n}.${t}`,s)?s:""}function cE(e,t,r,n){let i=t.hasRoute(n),o=e.factoryFor(`template:${r}`)||e.factoryFor(`route:${r}`) +return i&&o}function dE(e,t,r,n){if(!e){if(t)return +throw new Error(`Can't trigger action '${r}' because your app hasn't finished transitioning into its first route. To trigger an action on destination routes during a transition, you can call \`.send()\` on the \`Transition\` object passed to the \`model/beforeModel/afterModel\` hooks.`)}let i,o,s,a=!1 +for(let u=e.length-1;u>=0;u--)if(i=e[u],o=i.route,s=o&&o.actions&&o.actions[r],s){if(!0!==s.apply(o,n))return void("error"===r&&o._router._markErrorAsHandled(n[0])) +a=!0}let l=aE[r] +if(l)l.call(this,e,...n) +else if(!a&&!t)throw new Error(`Nothing handled the action '${r}'. If you did handle the action, this error can be caused by returning true from an action handler in a controller, causing the action to bubble.`)}function hE(e,t,r){let n=e._routerMicrolib.applyIntent(t,r),{routeInfos:i,params:o}=n +for(let s of i)s.isResolved?o[s.name]=s.params:o[s.name]=s.serialize(s.context) +return n}function pE(e){let t=e._routerMicrolib.currentRouteInfos +if(0===t.length)return +let r=oE._routePath(t),n=t[t.length-1].name,i=e.location.getURL() +gd(e,"currentPath",r),gd(e,"currentRouteName",n),gd(e,"currentURL",i)}function fE(e,t){let r=new XS(t,t._routerMicrolib,e[pS]) +t.currentState||t.set("currentState",r),t.set("targetState",r),e.promise=e.catch((e=>{if(!t._isErrorHandled(e))throw e +t._clearHandledError(e)}),"Transition Error")}function mE(e,t,r,n){let i=e._queryParamsFor(t) +for(let o in r){if(!Object.prototype.hasOwnProperty.call(r,o))continue +n(o,r[o],i.map[o])}}oE.reopen({didTransition:function(e){pE(this),this._cancelSlowTransitionTimer(),this.notifyPropertyChange("url"),this.set("currentState",this.targetState)},willTransition:function(e,t){},rootURL:"/",location:"hash",url:Jc((function(){let e=hd(this,"location") +if("string"!=typeof e)return e.getURL()}))}) +const gE=oE,yE=Object.defineProperty({__proto__:null,default:gE,triggerEvent:dE},Symbol.toStringTag,{value:"Module"}),bE=Symbol("ROUTER") +function _E(e,t){return"/"===t?e:e.substring(t.length)}var vE=new WeakMap,wE=new WeakMap,SE=new WeakMap,PE=new WeakMap,EE=new WeakMap +class kE extends(FP.extend(lv)){constructor(...e){super(...e),_defineProperty(this,bE,void 0),_classPrivateFieldInitSpec(this,vE,void y_(this,"currentRouteName")),_classPrivateFieldInitSpec(this,wE,void y_(this,"currentURL")),_classPrivateFieldInitSpec(this,SE,void y_(this,"location")),_classPrivateFieldInitSpec(this,PE,void y_(this,"rootURL")),_classPrivateFieldInitSpec(this,EE,void y_(this,"currentRoute"))}get _router(){let e=this[bE] +if(void 0!==e)return e +let t=Zt(this).lookup("router:main") +return this[bE]=t}willDestroy(){super.willDestroy(),this[bE]=void 0}transitionTo(...e){if(QS(e[0]))return this._router._doURLTransition("transitionTo",e[0]) +let{routeName:t,models:r,queryParams:n}=zS(e) +return this._router._doTransition(t,r,n,!0)}replaceWith(...e){return this.transitionTo(...e).method("replace")}urlFor(e,...t){return this._router.setupRouter(),this._router.generate(e,...t)}isActive(...e){let{routeName:t,models:r,queryParams:n}=zS(e),i=this._router._routerMicrolib +if(mo(oo(this._router,"currentURL")),!i.isActiveIntent(t,r))return!1 +if(Object.keys(n).length>0){let e=t +n=Object.assign({},n),this._router._prepareQueryParams(e,r,n,!0) +let o=Object.assign({},i.state.queryParams) +return this._router._prepareQueryParams(e,r,o,!0),KS(n,o)}return!0}recognize(e){this._router.setupRouter() +let t=_E(e,this.rootURL) +return this._router._routerMicrolib.recognize(t)}recognizeAndLoad(e){this._router.setupRouter() +let t=_E(e,this.rootURL) +return this._router._routerMicrolib.recognizeAndLoad(t)}refresh(e){if(!e)return this._router._routerMicrolib.refresh() +let t=Zt(this).lookup(`route:${e}`) +return this._router._routerMicrolib.refresh(t)}}f_((o=kE).prototype,"currentRouteName",[mP("_router.currentRouteName")]),f_(o.prototype,"currentURL",[mP("_router.currentURL")]),f_(o.prototype,"location",[mP("_router.location")]),f_(o.prototype,"rootURL",[mP("_router.rootURL")]),f_(o.prototype,"currentRoute",[mP("_router.currentRoute")]) +const TE=Object.defineProperty({__proto__:null,ROUTER:bE,default:kE},Symbol.toStringTag,{value:"Module"}) +class CE extends FP{constructor(...e){super(...e),_defineProperty(this,bE,void 0)}get router(){let e=this[bE] +if(void 0!==e)return e +let t=Zt(this).lookup("router:main") +return t.setupRouter(),this[bE]=t}hasRoute(e){return this.router.hasRoute(e)}transitionTo(e,t,r,n){let i=this.router._doTransition(e,t,r) +return n&&i.method("replace"),i}normalizeQueryParams(e,t,r){this.router._prepareQueryParams(e,t,r)}_generateURL(e,t,r){let n={} +return r&&(Object.assign(n,r),this.normalizeQueryParams(e,t,n)),this.router.generate(e,...t,{queryParams:n})}generateURL(e,t,r){if(this.router._initialTransitionStarted)return this._generateURL(e,t,r) +try{return this._generateURL(e,t,r)}catch(n){return}}isActiveForRoute(e,t,r,n){let i=this.router._routerMicrolib.recognizer.handlersFor(r),o=i[i.length-1].handler,s=function(e,t){let r=0 +for(let n=0;ns&&(r=o),n.isActiveIntent(r,e,t)}}CE.reopen({targetState:mP("router.targetState"),currentState:mP("router.currentState"),currentRouteName:mP("router.currentRouteName"),currentPath:mP("router.currentPath")}) +const OE=Object.defineProperty({__proto__:null,default:CE},Symbol.toStringTag,{value:"Module"}) +function AE(e,t){let r=e.factoryFor("controller:basic").class +r=r.extend({toString:()=>`(generated ${t} controller)`}) +let n=`controller:${t}` +return e.register(n,r),e.factoryFor(n)}function RE(e,t){AE(e,t) +let r=`controller:${t}` +return e.lookup(r)}const xE=Object.defineProperty({__proto__:null,default:RE,generateControllerFactory:AE},Symbol.toStringTag,{value:"Module"}) +class ME{constructor(){_defineProperty(this,"cache",void 0),this.cache=new Map}has(e){return this.cache.has(e)}stash(e,t,r){let n=this.cache.get(e) +void 0===n&&(n=new Map,this.cache.set(e,n)),n.set(t,r)}lookup(e,t,r){if(!this.has(e))return r +let n=this.cache.get(e) +return n.has(t)?n.get(t):r}}const DE=Object.defineProperty({__proto__:null,default:ME},Symbol.toStringTag,{value:"Module"}) +let NE=0 +function IE(e){return"function"==typeof e}class jE{constructor(e=null,t){_defineProperty(this,"parent",void 0),_defineProperty(this,"matches",void 0),_defineProperty(this,"enableLoadingSubstates",void 0),_defineProperty(this,"explicitIndex",!1),_defineProperty(this,"options",void 0),this.parent=e,this.enableLoadingSubstates=Boolean(t&&t.enableLoadingSubstates),this.matches=[],this.options=t}route(e,t,r){let n,i=null,o=`/_unused_dummy_error_path_route_${e}/:error` +if(IE(t)?(n={},i=t):IE(r)?(n=t,i=r):n=t||{},this.enableLoadingSubstates&&(BE(this,`${e}_loading`,{resetNamespace:n.resetNamespace}),BE(this,`${e}_error`,{resetNamespace:n.resetNamespace,path:o})),i){let t=LE(this,e,n.resetNamespace),r=new jE(t,this.options) +BE(r,"loading"),BE(r,"error",{path:o}),i.call(r),BE(this,e,n,r.generate())}else BE(this,e,n)}push(e,t,r,n){let i=t.split(".") +if(this.options.engineInfo){let e=t.slice(this.options.engineInfo.fullName.length+1),r=Object.assign({localFullName:e},this.options.engineInfo) +n&&(r.serializeMethod=n),this.options.addRouteForEngine(t,r)}else if(n)throw new Error(`Defining a route serializer on route '${t}' outside an Engine is not allowed.`) +""!==e&&"/"!==e&&"index"!==i[i.length-1]||(this.explicitIndex=!0),this.matches.push(e,t,r)}generate(){let e=this.matches +return this.explicitIndex||this.route("index",{path:"/"}),t=>{for(let r=0;r{t.initialize(this)}))}runInstanceInitializers(e){this._runInitializer("instanceInitializers",((t,r)=>{r.initialize(e)}))}_runInitializer(e,t){let r,n=hd(this.constructor,e),i=function(e){let t=[] +for(let r in e)t.push(r) +return t}(n),o=new ow +for(let s of i)r=n[s],o.add(r.name,r,r.before,r.after) +o.topsort(t)}}function $E(e){let t={namespace:e} +return e.Resolver.create(t)}function qE(e,t){return function(t){let r=this.superclass +if(void 0!==r[e]&&r[e]===this[e]){let t={[e]:Object.create(this[e])} +this.reopenClass(t)}this[e][t.name]=t}}_defineProperty(VE,"initializers",Object.create(null)),_defineProperty(VE,"instanceInitializers",Object.create(null)),_defineProperty(VE,"initializer",qE("initializers")),_defineProperty(VE,"instanceInitializer",qE("instanceInitializers")) +const GE=VE,WE=Object.defineProperty({__proto__:null,buildInitializerMethod:qE,default:GE,getEngineParent:Yv,setEngineParent:Kv},Symbol.toStringTag,{value:"Module"}),QE=bl({id:"Ub0nir+H",block:'[[[11,3],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[16,"role",[30,0,["role"]]],[16,"title",[30,0,["title"]]],[16,"rel",[30,0,["rel"]]],[16,"tabindex",[30,0,["tabindex"]]],[16,"target",[30,0,["target"]]],[17,1],[16,6,[30,0,["href"]]],[4,[32,0],["click",[30,0,["click"]]],null],[12],[18,2,null],[13]],["&attrs","&default"],false,["yield"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/link-to.hbs",scope:()=>[t_],isStrictMode:!0}),YE=[],KE={} +function JE(e){return null==e}function XE(e){return"object"==typeof e&&null!==e&&!0===e.isQueryParams}var ZE=new WeakMap +class ek extends s_{constructor(...e){super(...e),_classPrivateFieldInitSpec(this,ZE,void y_(this,"routing")),_defineProperty(this,"currentRouteCache",vo((()=>(mo(oo(this.routing,"currentState")),Eo((()=>this.routing.currentRouteName))))))}static toString(){return"LinkTo"}validateArguments(){super.validateArguments()}get class(){let e="ember-view" +return this.isActive?(e+=this.classFor("active"),!1===this.willBeActive&&(e+=" ember-transitioning-out")):this.willBeActive&&(e+=" ember-transitioning-in"),this.isLoading&&(e+=this.classFor("loading")),this.isDisabled&&(e+=this.classFor("disabled")),e}get href(){if(this.isLoading)return"#" +let{routing:e,route:t,models:r,query:n}=this +return mo(oo(e,"currentState")),e.generateURL(t,r,n)}click(e){if(!M_(e))return +let t=e.currentTarget +if(!(""===t.target||"_self"===t.target))return +if(this.preventDefault(e),this.isDisabled)return +if(this.isLoading)return +let{routing:r,route:n,models:i,query:o,replace:s}=this,a={routeName:n,queryParams:o,transition:void 0} +gv(0,0,(()=>{a.transition=r.transitionTo(n,i,o,s)}))}get route(){if("route"in this.args.named){let e=this.named("route") +return e&&this.namespaceRoute(e)}return this.currentRoute}get currentRoute(){return wo(this.currentRouteCache)}get models(){if("models"in this.args.named){return this.named("models")}return"model"in this.args.named?[this.named("model")]:YE}get query(){if("query"in this.args.named){return{...this.named("query")}}return KE}get replace(){return!0===this.named("replace")}get isActive(){return this.isActiveForState(this.routing.currentState)}get willBeActive(){let e=this.routing.currentState,t=this.routing.targetState +return e===t?null:this.isActiveForState(t)}get isLoading(){return JE(this.route)||this.models.some((e=>JE(e)))}get isDisabled(){return Boolean(this.named("disabled"))}get isEngine(){let e=this.owner +return e instanceof Sw&&void 0!==Yv(e)}get engineMountPoint(){let e=this.owner +return e instanceof Sw?e.mountPoint:void 0}classFor(e){let t=this.named(`${e}Class`) +return!0===t||JE(t)?` ${e}`:t?` ${t}`:""}namespaceRoute(e){let{engineMountPoint:t}=this +return void 0===t?e:"application"===e?t:`${t}.${e}`}isActiveForState(e){if(!function(e){return!JE(e)}(e))return!1 +if(this.isLoading)return!1 +let t=this.named("current-when") +if("boolean"==typeof t)return t +if("string"==typeof t){let{models:r,routing:n}=this +return t.split(" ").some((t=>n.isActiveForRoute(r,void 0,this.namespaceRoute(t),e)))}{let{route:t,models:r,query:n,routing:i}=this +return i.isActiveForRoute(r,n,t,e)}}preventDefault(e){e.preventDefault()}isSupportedArgument(e){return-1!==["route","model","models","query","replace","disabled","current-when","activeClass","loadingClass","disabledClass"].indexOf(e)||super.isSupportedArgument(e)}}f_((s=ek).prototype,"routing",[BP("-routing")]),g_(s.prototype,"click",[tm]) +let{prototype:tk}=ek,rk=(e,t)=>e?Object.getOwnPropertyDescriptor(e,t)||rk(Object.getPrototypeOf(e),t):null +{let e=tk.onUnsupportedArgument +Object.defineProperty(tk,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"href"===t||e.call(this,t)}})}{let e=rk(tk,"models").get +Object.defineProperty(tk,"models",{configurable:!0,enumerable:!1,get:function(){let t=e.call(this) +return t.length>0&&!("query"in this.args.named)&&XE(t[t.length-1])&&(t=t.slice(0,-1)),t}}) +let t=rk(tk,"query").get +Object.defineProperty(tk,"query",{configurable:!0,enumerable:!1,get:function(){if("query"in this.args.named){let e=t.call(this) +return XE(e)?e.values??KE:e}{let t=e.call(this) +if(t.length>0){let e=t[t.length-1] +if(XE(e)&&null!==e.values)return e.values}return KE}}})}{let e=tk.onUnsupportedArgument +Object.defineProperty(tk,"onUnsupportedArgument",{configurable:!0,enumerable:!1,value:function(t){"params"!==t&&e.call(this,t)}})}const nk=l_(ek,QE),ik=bl({id:"112WKCh2",block:'[[[11,"textarea"],[16,1,[30,0,["id"]]],[16,0,[30,0,["class"]]],[17,1],[16,2,[30,0,["value"]]],[4,[32,0],["change",[30,0,["change"]]],null],[4,[32,0],["input",[30,0,["input"]]],null],[4,[32,0],["keyup",[30,0,["keyUp"]]],null],[4,[32,0],["paste",[30,0,["valueDidChange"]]],null],[4,[32,0],["cut",[30,0,["valueDidChange"]]],null],[12],[13]],["&attrs"],false,[]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/textarea.hbs",scope:()=>[t_],isStrictMode:!0}) +class ok extends O_{static toString(){return"Textarea"}get class(){return"ember-text-area ember-view"}change(e){super.change(e)}input(e){super.input(e)}isSupportedArgument(e){return-1!==["type","value","enter","insert-newline","escape-press"].indexOf(e)||super.isSupportedArgument(e)}}g_((a=ok).prototype,"change",[tm]),g_(a.prototype,"input",[tm]) +const sk=l_(ok,ik) +function ak(e){return"function"==typeof e}function lk(e,t){return"attrs"===t[0]&&(t.shift(),1===t.length)?Ko(e,t[0]):Jo(e,t)}function uk(e){let t=e.indexOf(":") +if(-1===t)return[e,e,!0] +return[e.substring(0,t),e.substring(t+1),!1]}function ck(e,t,r,n){let[i,o,s]=r +if("id"===o){let t=hd(e,i) +null==t&&(t=e.elementId) +let r=Io(t) +return void n.setAttribute("id",r,!0,null)}let a=i.indexOf(".")>-1?lk(t,i.split(".")):Ko(t,i) +n.setAttribute(o,a,!1,null)}function dk(e,t,r){let n=t.split(":"),[i,o,s]=n +if(""===i)r.setAttribute("class",Io(o),!0,null) +else{let t,n=i.indexOf(".")>-1,a=n?i.split("."):[],l=n?lk(e,a):Ko(e,i) +t=void 0===o?hk(l,n?a[a.length-1]:i):function(e,t,r){return Ho((()=>Qo(e)?t:r))}(l,o,s),r.setAttribute("class",t,!1,null)}}function hk(e,t){let r +return Ho((()=>{let n=Qo(e) +return!0===n?r||(r=yw(t)):n||0===n?String(n):null}))}function pk(){}class fk{constructor(e,t,r,n,i,o){_defineProperty(this,"classRef",null),_defineProperty(this,"rootRef",void 0),_defineProperty(this,"argsRevision",void 0),this.component=e,this.args=t,this.argsTag=r,this.finalizer=n,this.hasWrappedElement=i,this.isInteractive=o,this.classRef=null,this.argsRevision=null===t?0:Bi(r),this.rootRef=Uo(e),Ti(this,(()=>this.willDestroy()),!0),Ti(this,(()=>this.component.destroy()))}willDestroy(){let{component:e,isInteractive:t}=this +if(t){ho(),e.trigger("willDestroyElement"),e.trigger("willClearRender"),po() +let t=F_(e) +t&&(H_(t),V_(e))}e.renderer.unregister(e)}finalize(){let{finalizer:e}=this +e(),this.finalizer=pk}}function mk(e){return js(e,{})}const gk=new WeakSet,yk=mk((e=>{Cr("Usage of the `(action)` helper is deprecated. Migrate to native functions and function invocation.",Tr.DEPRECATE_TEMPLATE_ACTION) +let{named:t,positional:r}=e,[n,i,...o]=r +i.debugLabel +let s,a="target"in t?t.target:n,l=function(e,t){let r,n +t.length>0&&(r=e=>t.map(Qo).concat(e)) +e&&(n=t=>{let r=Qo(e) +return r&&t.length>0&&(t[0]=hd(t[0],r)),t}) +return r&&n?e=>n(r(e)):r||n||bk}("value"in t&&t.value||!1,o) +return s=$o(i)?_k(i,i,vk,l):function(e,t,r,n,i){const o=Qo(r) +return(...r)=>_k(e,Qo(t),o,n)(...r)}(Qo(n),a,i,l),gk.add(s),zo(s)})) +function bk(e){return e}function _k(e,t,r,n,i){let o,s +if("string"==typeof r){o=t +let e=t.actions?.[r] +s=e}else"function"==typeof r&&(o=e,s=r) +return(...e)=>gv(0,0,(()=>Iu(o,s,...n(e))))}function vk(e){Yo(this,e)}function wk(e){let t=Object.create(null),r=Object.create(null) +r[Ek]=e +for(let n in e){let i=e[n],o=Qo(i),s="function"==typeof o&&gk.has(o) +Wo(i)&&!s?t[n]=new Pk(i,o):t[n]=o,r[n]=o}return r.attrs=t,r}const Sk=Symbol("REF") +class Pk{constructor(e,t){_defineProperty(this,"value",void 0),_defineProperty(this,qv,void 0),_defineProperty(this,Sk,void 0),this[qv]=!0,this[Sk]=e,this.value=t}update(e){Yo(this[Sk],e)}}const Ek=O("ARGS"),kk=O("HAS_BLOCK"),Tk=Symbol("DIRTY_TAG"),Ck=Symbol("IS_DISPATCHING_ATTRS"),Ok=Symbol("BOUNDS"),Ak=Io("ember-view") +class Rk{templateFor(e){let t,{layout:r,layoutName:n}=e,i=Zt(e) +if(void 0===r){if(void 0===n)return null +t=i.lookup(`template:${n}`)}else{if(!ak(r))return null +t=r}return Ct(t(i)).asWrappedLayout()}getDynamicLayout(e){return this.templateFor(e.component)}getTagName(e){let{component:t,hasWrappedElement:r}=e +return r?t&&t.tagName||"div":null}getCapabilities(){return Dk}prepareArgs(e,t){if(t.named.has("__ARGS__")){let{__ARGS__:e,...r}=t.named.capture(),n=Qo(e) +return{positional:n.positional,named:{...r,...n.named}}}const{positionalParams:r}=e.class??e +if(null==r||0===t.positional.length)return null +let n +if("string"==typeof r){let e=t.positional.capture() +n={[r]:Ho((()=>vy(e)))},Object.assign(n,t.named.capture())}else{if(!(Array.isArray(r)&&r.length>0))return null +{const e=Math.min(r.length,t.positional.length) +n={},Object.assign(n,t.named.capture()) +for(let i=0;i{o.setAttribute("class",Io(e),!1,null)})),l&&l.length&&l.forEach((e=>{dk(n,e,o)})),o.setAttribute("class",Ak,!1,null),"ariaRole"in e&&o.setAttribute("role",Ko(n,"ariaRole"),!1,null),e._transitionTo("hasElement"),r&&(ho(),e.trigger("willInsertElement"),po())}didRenderLayout(e,t){e.component[Ok]=t,e.finalize()}didCreate({component:e,isInteractive:t}){t&&(e._transitionTo("inDOM"),e.trigger("didInsertElement"),e.trigger("didRender"))}update(e){let{component:t,args:r,argsTag:n,argsRevision:i,isInteractive:o}=e +if(e.finalizer=bv("render.component",Mk,t),ho(),null!==r&&!Fi(n,i)){uo() +let i=wk(r) +n=e.argsTag=co(),e.argsRevision=Bi(n),t[Ck]=!0,t.setProperties(i),t[Ck]=!1,t.trigger("didUpdateAttrs"),t.trigger("didReceiveAttrs")}o&&(t.trigger("willUpdate"),t.trigger("willRender")),po(),mo(n),mo(t[Tk])}didUpdateLayout(e){e.finalize()}didUpdate({component:e,isInteractive:t}){t&&(e.trigger("didUpdate"),e.trigger("didRender"))}getDestroyable(e){return e}}function xk(e){return e.instrumentDetails({initialRender:!0})}function Mk(e){return e.instrumentDetails({initialRender:!1})}const Dk={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!0,createArgs:!0,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!0,hasSubOwner:!1},Nk=new Rk +function Ik(e){return e===Nk}let jk=new WeakMap +class Lk extends(xv.extend(jv,Bv,Nv,Ih,Vv,zv,{didReceiveAttrs(){},didRender(){},didUpdate(){},didUpdateAttrs(){},willRender(){},willUpdate(){}})){constructor(...e){super(...e),_defineProperty(this,"isComponent",!0),_defineProperty(this,"__dispatcher",void 0)}init(e){super.init(e),this._superRerender=this.rerender,this.rerender=this._rerender,this[Ck]=!1,this[Tk]=$i(),this[Ok]=null +const t=this._dispatcher +if(t){let e=jk.get(t) +e||(e=new WeakSet,jk.set(t,e)) +let r=Object.getPrototypeOf(this) +if(!e.has(r)){t.lazyEvents.forEach(((e,r)=>{null!==e&&"function"==typeof this[e]&&t.setupHandlerForBrowserEvent(r)})),e.add(r)}}}get _dispatcher(){if(void 0===this.__dispatcher){let e=Zt(this) +if(e.lookup("-environment:main").isInteractive){let t=e.lookup("event_dispatcher:main") +this.__dispatcher=t}else this.__dispatcher=null}return this.__dispatcher}on(e,t,r){return this._dispatcher?.setupHandlerForEmberEvent(e),super.on(e,t,r)}_rerender(){Hi(this[Tk]),this._superRerender()}[dc](e,t){if(this[Ck])return +let r=this[Ek],n=void 0!==r?r[e]:void 0 +void 0!==n&&Wo(n)&&Yo(n,2===arguments.length?t:hd(this,e))}getAttr(e){return this.get(e)}readDOMAttr(e){let t=F_(this),r="http://www.w3.org/2000/svg"===t.namespaceURI,{type:n,normalized:i}=Bm(t,e) +return r||"attr"===n?t.getAttribute(i):t[i]}static toString(){return"@ember/component"}}_defineProperty(Lk,"isComponentFactory",!0),Lk.reopenClass({positionalParams:[]}),Fs(Nk,Lk) +const Bk=Symbol("RECOMPUTE_TAG"),Fk=Symbol("IS_CLASSIC_HELPER") +class Uk extends cv{init(e){super.init(e),this[Bk]=$i()}recompute(){Iu((()=>Hi(this[Bk])))}}_defineProperty(Uk,"isHelperFactory",!0),_defineProperty(Uk,Fk,!0),_defineProperty(Uk,"helper",qk) +class zk{constructor(e){_defineProperty(this,"capabilities",Ps(0,{hasValue:!0,hasDestroyable:!0})),_defineProperty(this,"ownerInjection",void 0) +let t={} +er(t,e),this.ownerInjection=t}createHelper(e,t){var r +return{instance:null!=(r=e)&&"class"in r?e.create():e.create(this.ownerInjection),args:t}}getDestroyable({instance:e}){return e}getValue({instance:e,args:t}){let{positional:r,named:n}=t,i=e.compute(r,n) +return mo(e[Bk]),i}getDebugName(e){return x((e.class||e).prototype)}}Zs((e=>new zk(e)),Uk) +const Hk=Bs(Uk) +class Vk{constructor(e){_defineProperty(this,"isHelperFactory",!0),this.compute=e}create(){return{compute:this.compute}}}const $k=new class{constructor(){_defineProperty(this,"capabilities",Ps(0,{hasValue:!0}))}createHelper(e,t){return()=>e.compute.call(null,t.positional,t.named)}getValue(e){return e()}getDebugName(e){return x(e.compute)}} +function qk(e){return new Vk(e)}Zs((()=>$k),Vk.prototype) +class Gk{constructor(e){_defineProperty(this,"__string",void 0),this.__string=e}toString(){return`${this.__string}`}toHTML(){return this.toString()}}const Wk={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},Qk=/[&<>"'`=]/,Yk=/[&<>"'`=]/g +function Kk(e){return Wk[e]}function Jk(e){let t +if("string"!=typeof e){if(Zk(e))return e.toHTML() +if(null==e)return"" +if(!e)return String(e) +t=String(e)}else t=e +return Qk.test(t)?t.replace(Yk,Kk):t}function Xk(e){return null==e?e="":"string"!=typeof e&&(e=String(e)),new Gk(e)}function Zk(e){return null!==e&&"object"==typeof e&&"toHTML"in e&&"function"==typeof e.toHTML}function eT(e){return{object:`${e.name}:main`}}const tT={dynamicLayout:!1,dynamicTag:!1,prepareArgs:!1,createArgs:!1,attributeHook:!1,elementHook:!1,createCaller:!1,dynamicScope:!0,updateHook:!1,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!1} +const rT=new class{create(e,t,r,n,i){let o=i.get("outletState"),s=t.ref +i.set("outletState",s) +let a={self:Uo(t.controller),finalize:bv("render.outlet",eT,t)} +if(void 0!==n.debugRenderTree){a.outletBucket={} +let e=Qo(o),t=e&&e.render&&e.render.owner,r=Qo(s).render.owner +if(t&&t!==r){let e=r.mountPoint +a.engine=r,e&&(a.engineBucket={mountPoint:e})}}return a}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r){let n=[] +return n.push({bucket:t.outletBucket,type:"outlet",name:"main",args:Cy,instance:void 0,template:void 0}),t.engineBucket&&n.push({bucket:t.engineBucket,type:"engine",name:t.engineBucket.mountPoint,args:Cy,instance:t.engine,template:void 0}),n.push({bucket:t,type:"route-template",name:e.name,args:r,instance:e.controller,template:Ct(e.template).moduleName}),n}getCapabilities(){return tT}getSelf({self:e}){return e}didCreate(){}didUpdate(){}didRenderLayout(e){e.finalize()}didUpdateLayout(){}getDestroyable(){return null}} +class nT{constructor(e,t=rT){_defineProperty(this,"handle",-1),_defineProperty(this,"resolvedName",void 0),_defineProperty(this,"compilable",void 0),_defineProperty(this,"capabilities",void 0),this.state=e,this.manager=t +let r=t.getCapabilities() +this.capabilities=_s(r),this.compilable=r.wrapped?Ct(e.template).asWrappedLayout():Ct(e.template).asLayout(),this.resolvedName=e.name}}class iT extends Rk{constructor(e){super(),_defineProperty(this,"component",void 0),this.component=e}create(e,t,r,{isInteractive:n},i){let o=this.component,s=bv("render.component",xk,o) +i.view=o +let a=""!==o.tagName +a||(n&&o.trigger("willRender"),o._transitionTo("hasElement"),n&&o.trigger("willInsertElement")) +let l=new fk(o,null,Gi,s,a,n) +return mo(o[Tk]),l}}const oT={dynamicLayout:!0,dynamicTag:!0,prepareArgs:!1,createArgs:!1,attributeHook:!0,elementHook:!0,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!0,willDestroy:!1,hasSubOwner:!1} +class sT{constructor(e){_defineProperty(this,"handle",-1),_defineProperty(this,"resolvedName","-top-level"),_defineProperty(this,"state",void 0),_defineProperty(this,"manager",void 0),_defineProperty(this,"capabilities",_s(oT)),_defineProperty(this,"compilable",null),this.manager=new iT(e) +let t=ur(e) +this.state=t}}const aT=[] +function lT(e,t,r){for(let n=0;n-1){"tr"===e.slice(t+1,t+3)&&(e=`${e}`)}}""===e?this.__appendComment("% %"):super.__appendHTML(e) +let n=this.__appendComment("%glmr%") +return new Rm(this.element,r,n)}__appendText(e){let{tagName:t}=this.element,r=function(e){let{element:t,nextSibling:r}=e +return null===r?t.lastChild:r.previousSibling}(this) +return"TITLE"===t||"SCRIPT"===t||"STYLE"===t?super.__appendText(e):""===e?this.__appendComment("% %"):(r&&3===r.nodeType&&this.__appendComment("%|%"),super.__appendText(e))}closeElement(){return ST.has(this.element)&&(ST.delete(this.element),super.closeElement()),super.closeElement()}openElement(e){return"tr"===e&&"TBODY"!==this.element.tagName&&"THEAD"!==this.element.tagName&&"TFOOT"!==this.element.tagName&&(this.openElement("tbody"),ST.set(this.constructing,!0),this.flushElement(null)),super.openElement(e)}pushRemoteElement(e,t,r=null){let{dom:n}=this,i=n.createElement("script") +return i.setAttribute("glmr",t),n.insertBefore(e,i,r),super.pushRemoteElement(e,t,r)}}function ET(e,t){return PT.forInitialRender(e,t)}const kT=Object.defineProperty({__proto__:null,NodeDOMTreeConstruction:wT,serializeBuilder:ET},Symbol.toStringTag,{value:"Module"}) +class TT{constructor(e){this.inner=e}}const CT=mk((({positional:e})=>{const t=e[0] +return Ho((()=>{let e=Qo(t) +return mo(uc(e)),te(e)&&(e=Ch(e)),new TT(e)}))})) +class OT{constructor(e){_defineProperty(this,"position",0),this.length=e}isEmpty(){return!1}memoFor(e){return e}next(){let{length:e,position:t}=this +if(t>=e)return null +let r=this.valueFor(t),n=this.memoFor(t) +return this.position++,{value:r,memo:n}}}class AT extends OT{static from(e){return e.length>0?new this(e):null}static fromForEachable(e){let t=[] +return e.forEach((e=>t.push(e))),this.from(t)}constructor(e){super(e.length),this.array=e}valueFor(e){return this.array[e]}}class RT extends OT{static from(e){return e.length>0?new this(e):null}constructor(e){super(e.length),this.array=e}valueFor(e){return vc(this.array,e)}}class xT extends OT{static fromIndexable(e){let t=Object.keys(e) +if(0===t.length)return null +{let r=[] +for(let n of t){let t +t=e[n],fo()&&(mo(oo(e,n)),Array.isArray(t)&&mo(oo(t,"[]"))),r.push(t)}return new this(t,r)}}static fromForEachable(e){let t=[],r=[],n=0,i=!1 +return e.forEach((function(e,o){i=i||arguments.length>=2,i&&t.push(o),r.push(e),n++})),0===n?null:i?new this(t,r):new AT(r)}constructor(e,t){super(t.length),this.keys=e,this.values=t}valueFor(e){return this.values[e]}memoFor(e){return this.keys[e]}}class MT{static from(e){let t=e[Symbol.iterator](),r=t.next(),{done:n}=r +return n?null:new this(t,r)}constructor(e,t){_defineProperty(this,"position",0),this.iterable=e,this.result=t}isEmpty(){return!1}next(){let{iterable:e,result:t,position:r}=this +if(t.done)return null +let n=this.valueFor(t,r),i=this.memoFor(t,r) +return this.position++,this.result=e.next(),{value:n,memo:i}}}class DT extends MT{valueFor(e){return e.value}memoFor(e,t){return t}}class NT extends MT{valueFor(e){return e.value[1]}memoFor(e){return e.value[0]}}function IT(e){return null!=e&&"function"==typeof e.forEach}function jT(e){return null!=e&&"function"==typeof e[Symbol.iterator]}mi({FEATURES:{DEFAULT_HELPER_MANAGER:!0},scheduleRevalidate(){Du.ensureInstance()},toBool:function(e){return te(e)?(mo(lc(e,"content")),Boolean(hd(e,"isTruthy"))):Df(e)?(mo(lc(e,"[]")),0!==e.length):Zk(e)?Boolean(e.toString()):Boolean(e)},toIterator:function(e){return e instanceof TT?function(e){if(!function(e){return null!==e&&("object"==typeof e||"function"==typeof e)}(e))return null +return Array.isArray(e)||sd(e)?xT.fromIndexable(e):jT(e)?NT.from(e):IT(e)?xT.fromForEachable(e):xT.fromIndexable(e)}(e.inner):function(e){if(!b(e))return null +return Array.isArray(e)?AT.from(e):sd(e)?RT.from(e):jT(e)?DT.from(e):IT(e)?AT.fromForEachable(e):null}(e)},getProp:pd,setProp:yd,getPath:hd,setPath:gd,scheduleDestroy(e,t){Lu("actions",null,t,e)},scheduleDestroyed(e){Lu("destroy",null,e)},warnIfStyleNotTrusted(e){},assert(e,t,r){},deprecate(e,t,r){}}) +class LT{constructor(e,t){_defineProperty(this,"enableDebugTooling",ce._DEBUG_RENDER_TREE),this.owner=e,this.isInteractive=t}onTransactionCommit(){}}const BT=mk((({positional:e,named:t})=>{const r=e[0] +let n=t.type,i=t.loc,o=t.original +return Qo(n),Qo(i),Qo(o),Ho((()=>Qo(r)))})) +let FT +FT=e=>e.positional[0] +const UT=mk(FT),zT=mk((({positional:e})=>Ho((()=>{let t=e[0],r=e[1],n=Qo(t).split("."),i=n[n.length-1],o=Qo(r) +return!0===o?yw(i):o||0===o?String(o):""})))),HT=mk((({positional:e},t)=>{let r=Qo(e[0]) +return Uo(t.factoryFor(r)?.class)})),VT=mk((({positional:e})=>{const t=e[0] +return Ho((()=>{let e=Qo(t) +return b(e)&&mo(lc(e,"[]")),e}))})),$T=mk((({positional:e})=>qo(e[0]))),qT=mk((({positional:e})=>Vo(e[0]))),GT=mk((({positional:e,named:t})=>zo(Qo(e[0])))),WT=mk((()=>Uo(QT()))) +function QT(){return([3e7]+-1e3+-4e3+-2e3+-1e11).replace(/[0-3]/g,(e=>(4*e^16*Math.random()>>(2&e)).toString(16)))}const YT=["alt","shift","meta","ctrl"],KT=/^click|mouse|touch/ +let JT={registeredActions:tv.registeredActions,registerAction(e){let{actionId:t}=e +return tv.registeredActions[t]=e,t},unregisterAction(e){let{actionId:t}=e +delete tv.registeredActions[t]}} +class XT{constructor(e,t,r,n,i,o){_defineProperty(this,"element",void 0),_defineProperty(this,"owner",void 0),_defineProperty(this,"actionId",void 0),_defineProperty(this,"actionName",void 0),_defineProperty(this,"actionArgs",void 0),_defineProperty(this,"namedArgs",void 0),_defineProperty(this,"positional",void 0),_defineProperty(this,"implicitTarget",void 0),_defineProperty(this,"eventName",void 0),_defineProperty(this,"tag",qi()),this.element=e,this.owner=t,this.actionId=r,this.actionArgs=n,this.namedArgs=i,this.positional=o,this.eventName=this.getEventName(),Ti(this,(()=>JT.unregisterAction(this)))}getEventName(){let{on:e}=this.namedArgs +return void 0!==e?Qo(e):"click"}getActionArgs(){let e=new Array(this.actionArgs.length) +for(let t=0;t=0)return!0 +for(let r=0;r{let e=this.getActionArgs(),r={args:e,target:u,name:null} +$o(t)?gv(0,0,(()=>{Yo(t,e[0])})):"function"!=typeof t?(r.name=t,u.send?gv(0,0,(()=>{u.send.apply(u,[t,...e])})):gv(0,0,(()=>{u[t].apply(u,e)}))):gv(0,0,(()=>{t.apply(u,e)}))})),c)}}const ZT=Ns(new class{create(e,t,r,{named:n,positional:i}){let o=[] +for(let a=2;a1&&(n=s[0],r=s[1],t=$o(r)?r:Qo(r)),e.actionName=t,e.implicitTarget=n,this.ensureEventSetup(e),JT.registerAction(e),i.setAttribute("data-ember-action",""),i.setAttribute(`data-ember-action-${o}`,String(o))}update(e){let{positional:t}=e,r=t[1] +$o(r)||(e.actionName=Qo(r)),e.getEventName()!==e.eventName&&(this.ensureEventSetup(e),e.eventName=e.getEventName())}ensureEventSetup(e){let t=e.owner.lookup("event_dispatcher:main") +t?.setupHandlerForEmberEvent(e.eventName)}getTag(e){return e.tag}getDestroyable(e){return e}},{}),eC={dynamicLayout:!0,dynamicTag:!1,prepareArgs:!1,createArgs:!0,attributeHook:!1,elementHook:!1,createCaller:!0,dynamicScope:!0,updateHook:!0,createInstance:!0,wrapped:!1,willDestroy:!1,hasSubOwner:!0} +const tC=new class{getDynamicLayout(e){return Ct(e.engine.lookup("template:application")(e.engine)).asLayout()}getCapabilities(){return eC}getOwner(e){return e.engine}create(e,{name:t},r,n){let i=e.buildChildEngineInstance(t) +i.boot() +let o,s,a,l,u=i.factoryFor("controller:application")||AE(i,"application") +if(r.named.has("model")&&(l=r.named.get("model")),void 0===l)o=u.create(),s=Uo(o),a={engine:i,controller:o,self:s,modelRef:l} +else{let e=Qo(l) +o=u.create({model:e}),s=Uo(o),a={engine:i,controller:o,self:s,modelRef:l}}return n.debugRenderTree&&ki(i,o),a}getDebugName({name:e}){return e}getDebugCustomRenderTree(e,t,r,n){return[{bucket:t.engine,instance:t.engine,type:"engine",name:e.name,args:r},{bucket:t.controller,instance:t.controller,type:"route-template",name:"application",args:r,template:n}]}getSelf({self:e}){return e}getDestroyable(e){return e.engine}didCreate(){}didUpdate(){}didRenderLayout(){}didUpdateLayout(){}update(e){let{controller:t,modelRef:r}=e +void 0!==r&&t.set("model",Qo(r))}} +class rC{constructor(e){_defineProperty(this,"handle",-1),_defineProperty(this,"state",void 0),_defineProperty(this,"manager",tC),_defineProperty(this,"compilable",null),_defineProperty(this,"capabilities",_s(eC)),this.resolvedName=e,this.state={name:e}}}const nC=mk(((e,t)=>{let r,n,i,o=e.positional[0] +return r=by(e.named,Ty),Ho((()=>{let e=Qo(o) +return"string"==typeof e?(n===e||(n=e,i=Og(Br.Component,new rC(e),t,r,!0)),i):(i=null,n=null,null)}))})),iC=mk(((e,t,r)=>{let n=Ho((()=>{let e=Qo(r.get("outletState")) +return e?.outlets?.main})),i=null,o=null +return Ho((()=>{let e=Qo(n),r=function(e,t){if(void 0===t)return null +let r=t.render +if(void 0===r)return null +let n=r.template +if(void 0===n)return null +ak(n)&&(n=n(r.owner)) +return{ref:e,name:r.name,template:n,controller:r.controller,model:r.model}}(n,e) +if(!function(e,t){if(null===e)return null===t +if(null===t)return!1 +return e.template===t.template&&e.controller===t.controller}(r,i))if(i=r,null!==r){let s=Ye(),a=Jo(n,["render","model"]),l=Qo(a) +s.model=Ho((()=>(i===r&&(l=Qo(a)),l))) +let u=by(s,Ty) +o=Og(Br.Component,new nT(r),e?.render?.owner??t,u,!0)}else o=null +return o}))})) +function oC(e){return{object:`component:${e}`}}function sC(e,t,r){let n=function(e,t){let r=`component:${e}` +return t.factoryFor(r)||null}(t,e) +if(Xt(n)&&n.class){let e=na(n.class) +if(void 0!==e)return{component:n,layout:e}}let i=function(e,t,r){if(Tr.DEPRECATE_COMPONENT_TEMPLATE_RESOLVING.isRemoved)return null +let n=`template:components/${e}`,i=t.lookup(n,r)||null +return i&&Cr(`Components with separately resolved templates are deprecated. Migrate to either co-located js/ts + hbs files or to gjs/gts. Tried to lookup '${n}'.`,Tr.DEPRECATE_COMPONENT_TEMPLATE_RESOLVING),i}(t,e,r) +return null===n&&null===i?null:{component:n,layout:i}}const aC={action:yk,mut:$T,readonly:qT,unbound:GT,"-hash":gb,"-each-in":CT,"-normalize-class":zT,"-resolve":HT,"-track-array":VT,"-mount":nC,"-outlet":iC,"-in-el-null":UT},lC={...aC,array:cb,concat:hb,fn:pb,get:mb,hash:gb,"unique-id":WT} +lC["-disallow-dynamic-resolution"]=BT +const uC={action:ZT},cC={...uC,on:Eb} +class dC{constructor(){_defineProperty(this,"componentDefinitionCache",new Map)}lookupPartial(){return null}lookupHelper(e,t){let r=lC[e] +if(void 0!==r)return r +let n=t.factoryFor(`helper:${e}`) +if(void 0===n)return null +let i=n.class +return void 0===i?null:"function"==typeof i&&!0===i[Fk]?(js(Hk,n),n):i}lookupBuiltInHelper(e){return aC[e]??null}lookupModifier(e,t){let r=cC[e] +if(void 0!==r)return r +let n=t.factoryFor(`modifier:${e}`) +return void 0===n?null:n.class||null}lookupBuiltInModifier(e){return uC[e]??null}lookupComponent(e,t){let r=sC(t,e) +if(null===r)return null +let n,i=null +n=null===r.component?i=r.layout(t):r.component +let o=this.componentDefinitionCache.get(n) +if(void 0!==o)return o +null===i&&null!==r.layout&&(i=r.layout(t)) +let s=bv("render.getComponentDefinition",oC,e),a=null +if(null===r.component)a={state:zy(void 0,e),manager:Fy,template:i} +else{let e=r.component,t=e.class,n=Us(t) +a={state:Ik(n)?e:t,manager:n,template:i}}return s(),this.componentDefinitionCache.set(n,a),a}}const hC="-top-level" +class pC{static extend(e){return class extends pC{static create(t){return t?super.create(Object.assign({},e,t)):super.create(e)}}}static reopenClass(e){Object.assign(this,e)}static create(e){let{environment:t,application:r,template:n}=e,i=Zt(e),o=n(i) +return new pC(t,i,o,r)}constructor(e,t,r,n){_defineProperty(this,"ref",void 0),_defineProperty(this,"state",void 0),this._environment=e,this.owner=t,this.template=r,this.namespace=n +let i=$i(),o={outlets:{main:void 0},render:{owner:t,into:void 0,outlet:"main",name:hC,controller:void 0,model:void 0,template:r}},s=this.ref=Ho((()=>(mo(i),o)),(e=>{Hi(i),o.outlets.main=e})) +this.state={ref:s,name:hC,template:r,controller:void 0,model:void 0}}appendTo(e){let t +t=this._environment.hasDOM&&"string"==typeof e?document.querySelector(e):e,Lu("render",this.owner.lookup("renderer:-dom"),"appendOutletView",this,t)}rerender(){}setOutletState(e){Yo(this.ref,e)}destroy(){}}class fC{constructor(e,t){this.view=e,this.outletState=t}child(){return new fC(this.view,this.outletState)}get(e){return this.outletState}set(e,t){return this.outletState=t,t}}const mC=()=>{} +class gC{constructor(e,t,r,n,i,o,s,a,l){_defineProperty(this,"id",void 0),_defineProperty(this,"result",void 0),_defineProperty(this,"destroyed",void 0),_defineProperty(this,"render",void 0),this.root=e,this.runtime=t,this.id=e instanceof pC?T(e):I_(e),this.result=void 0,this.destroyed=!1,this.render=()=>{let e=Ct(i).asLayout(),u=Ub(t,r,n,o,l(t.env,{element:s,nextSibling:null}),e,a),c=this.result=u.sync() +this.render=()=>c.rerender({alwaysRevalidate:!1})}}isFor(e){return this.root===e}destroy(){let{result:e,runtime:{env:t}}=this +this.destroyed=!0,this.runtime=void 0,this.root=null,this.result=void 0,this.render=void 0,void 0!==e&&lb(t,(()=>Oi(e)))}}const yC=[] +function bC(e){let t=yC.indexOf(e) +yC.splice(t,1)}let _C=null +function vC(){return null===_C&&(_C=qp.defer(),Ru()||Du.schedule("actions",null,mC)),_C.promise}let wC=0 +Du.on("begin",(function(){for(let e of yC)e._scheduleRevalidate()})),Du.on("end",(function(){for(let e of yC)if(!e._isValid()){if(wC>ce._RERENDER_LOOP_LIMIT)throw wC=0,e.destroy(),new Error("infinite rendering invalidation detected") +return wC++,Du.join(null,mC)}wC=0,function(){if(null!==_C){let e=_C.resolve +_C=null,Du.join(null,e)}}()})) +class SC{static create(e){let{_viewRegistry:t}=e,r=Zt(e),n=r.lookup("service:-document"),i=r.lookup("-environment:main"),o=r.lookup(gr`template:-root`),s=r.lookup("service:-dom-builder") +return new this(r,n,i,o,t,s)}constructor(e,t,r,n,i,o=gg){_defineProperty(this,"_rootTemplate",void 0),_defineProperty(this,"_viewRegistry",void 0),_defineProperty(this,"_roots",void 0),_defineProperty(this,"_removedRoots",void 0),_defineProperty(this,"_builder",void 0),_defineProperty(this,"_inRenderTransaction",!1),_defineProperty(this,"_owner",void 0),_defineProperty(this,"_context",void 0),_defineProperty(this,"_runtime",void 0),_defineProperty(this,"_lastRevision",-1),_defineProperty(this,"_destroyed",!1),_defineProperty(this,"_isInteractive",void 0),_defineProperty(this,"_runtimeResolver",void 0),this._owner=e,this._rootTemplate=n(e),this._viewRegistry=i||e.lookup("-view-registry:main"),this._roots=[],this._removedRoots=[],this._builder=o,this._isInteractive=r.isInteractive +let s=this._runtimeResolver=new dC,a=bm() +this._context=il(a,s,(e=>new dm(e))) +let l=new LT(e,r.isInteractive) +this._runtime=ab({appendOperations:r.hasDOM?new Yy(t):new wT(t),updateOperations:new eb(t)},l,a,s)}get debugRenderTree(){let{debugRenderTree:e}=this._runtime.env +return e}appendOutletView(e,t){let r=new nT(e.state) +this._appendDefinition(e,Og(Br.Component,r,e.owner,null,!0),t)}appendTo(e,t){let r=new sT(e) +this._appendDefinition(e,Og(Br.Component,r,this._owner,null,!0),t)}_appendDefinition(e,t,r){let n=Uo(t),i=new fC(null,jo),o=new gC(e,this._runtime,this._context,this._owner,this._rootTemplate,n,r,i,this._builder) +this._renderRoot(o)}rerender(){this._scheduleRevalidate()}register(e){let t=I_(e) +this._viewRegistry[t]=e}unregister(e){delete this._viewRegistry[I_(e)]}remove(e){e._transitionTo("destroying"),this.cleanupRootFor(e),this._isInteractive&&e.trigger("didDestroyElement")}cleanupRootFor(e){if(this._destroyed)return +let t=this._roots,r=this._roots.length +for(;r--;){let n=t[r] +n.isFor(e)&&(n.destroy(),t.splice(r,1))}}destroy(){this._destroyed||(this._destroyed=!0,this._clearAllRoots())}getElement(e){if(this._isInteractive)return F_(e) +throw new Error("Accessing `this.element` is not allowed in non-interactive environments (such as FastBoot).")}getBounds(e){let t=e[Ok] +return{parentElement:t.parentElement(),firstNode:t.firstNode(),lastNode:t.lastNode()}}createElement(e){return this._runtime.env.getAppendOperations().createElement(e)}_renderRoot(e){let{_roots:t}=this +var r +t.push(e),1===t.length&&(r=this,yC.push(r)),this._renderRootsTransaction()}_renderRoots(){let e,{_roots:t,_runtime:r,_removedRoots:n}=this +do{e=t.length,lb(r.env,(()=>{for(let r=0;r=e||i.render()}this._lastRevision=Bi(Ji)}))}while(t.length>e) +for(;n.length;){let e=n.pop(),r=t.indexOf(e) +t.splice(r,1)}0===this._roots.length&&bC(this)}_renderRootsTransaction(){if(this._inRenderTransaction)return +this._inRenderTransaction=!0 +let e=!1 +try{this._renderRoots(),e=!0}finally{e||(this._lastRevision=Bi(Ji)),this._inRenderTransaction=!1}}_clearAllRoots(){let e=this._roots +for(let t of e)t.destroy() +this._removedRoots.length=0,this._roots=[],e.length&&bC(this)}_scheduleRevalidate(){Du.scheduleOnce("render",this,this._revalidate)}_isValid(){return this._destroyed||0===this._roots.length||Fi(Ji,this._lastRevision)}_revalidate(){this._isValid()||this._renderRootsTransaction()}}let PC={} +function EC(e){PC=e}function kC(){return PC}const TC=bl({id:"2c6+lAmT",block:'[[[46,[28,[32,0],null,null],null,null,null]],[],false,["component"]]',moduleName:"packages/@ember/-internals/glimmer/lib/templates/outlet.hbs",scope:()=>[iC],isStrictMode:!0}) +function CC(e){e.register("service:-dom-builder",{create(e){switch(Zt(e).lookup("-environment:main")._renderMode){case"serialize":return ET.bind(null) +case"rehydrate":return Zb.bind(null) +default:return gg.bind(null)}}}),e.register(gr`template:-root`,Sl),e.register("renderer:-dom",SC)}function OC(e){e.optionsForType("template",{instantiate:!1}),e.register("view:-outlet",pC),e.register("template:-outlet",TC),e.optionsForType("helper",{instantiate:!1}),e.register("component:input",x_),e.register("component:link-to",nk),e.register("component:textarea",sk)}function AC(e,t){return Js(e,t)}const RC=Object.defineProperty({__proto__:null,Component:Lk,DOMChanges:eb,DOMTreeConstruction:Yy,Helper:Uk,Input:x_,LinkTo:nk,NodeDOMTreeConstruction:wT,OutletView:pC,Renderer:SC,RootTemplate:Sl,SafeString:Gk,Textarea:sk,_resetRenderers:function(){yC.length=0},componentCapabilities:$s,escapeExpression:Jk,getTemplate:function(e){if(Object.prototype.hasOwnProperty.call(PC,e))return PC[e]},getTemplates:kC,hasTemplate:function(e){return Object.prototype.hasOwnProperty.call(PC,e)},helper:qk,htmlSafe:Xk,isHTMLSafe:Zk,isSerializationFirstNode:Hb,modifierCapabilities:Ys,renderSettled:vC,setComponentManager:AC,setTemplate:function(e,t){return PC[e]=t},setTemplates:EC,setupApplicationRegistry:CC,setupEngineRegistry:OC,template:bl,templateCacheCounters:yl,uniqueId:QT},Symbol.toStringTag,{value:"Module"}),xC=Object.defineProperty({__proto__:null,RouterDSL:jE,controllerFor:UE,generateController:RE,generateControllerFactory:AE},Symbol.toStringTag,{value:"Module"}) +const MC=Object.defineProperty({__proto__:null,Opaque:class{}},Symbol.toStringTag,{value:"Module"}),DC=R(null),NC=Object.defineProperty({__proto__:null,default:DC},Symbol.toStringTag,{value:"Module"}),IC=ce.EMBER_LOAD_HOOKS||{},jC={} +let LC=jC +function BC(e,t){let r=jC[e];(IC[e]??=[]).push(t),r&&t(r)}function FC(e,t){if(jC[e]=t,c&&"function"==typeof CustomEvent){let r=new CustomEvent(e,{detail:t}) +c.dispatchEvent(r)}IC[e]?.forEach((e=>e(t)))}const UC=Object.defineProperty({__proto__:null,_loaded:LC,onLoad:BC,runLoadHooks:FC},Symbol.toStringTag,{value:"Module"}) +function zC(e){let t=e.pathname +return"/"!==t[0]&&(t=`/${t}`),t}function HC(e){return e.search}function VC(e){return void 0!==e.hash?e.hash.substring(0):""}function $C(e){let t=e.origin +return t||(t=`${e.protocol}//${e.hostname}`,e.port&&(t+=`:${e.port}`)),t}const qC=Object.defineProperty({__proto__:null,getFullPath:function(e){return zC(e)+HC(e)+VC(e)},getHash:VC,getOrigin:$C,getPath:zC,getQuery:HC,replacePath:function(e,t){e.replace($C(e)+t)}},Symbol.toStringTag,{value:"Module"}) +class GC extends Xf{constructor(...e){super(...e),_defineProperty(this,"_hashchangeHandler",void 0),_defineProperty(this,"_location",void 0),_defineProperty(this,"lastSetURL",null)}init(){this.location=this._location??window.location,this._hashchangeHandler=void 0}getHash(){return VC(this.location)}getURL(){let e=this.getHash().substring(1),t=e +return"/"!==t[0]&&(t="/",e&&(t+=`#${e}`)),t}setURL(e){this.location.hash=e,this.lastSetURL=e}replaceURL(e){this.location.replace(`#${e}`),this.lastSetURL=e}onUpdateURL(e){this._removeEventListener(),this._hashchangeHandler=ju(this,(function(t){let r=this.getURL() +this.lastSetURL!==r&&(this.lastSetURL=null,e(r))})),window.addEventListener("hashchange",this._hashchangeHandler)}formatURL(e){return`#${e}`}willDestroy(){this._removeEventListener()}_removeEventListener(){this._hashchangeHandler&&window.removeEventListener("hashchange",this._hashchangeHandler)}}const WC=Object.defineProperty({__proto__:null,default:GC},Symbol.toStringTag,{value:"Module"}) +let QC=!1 +function YC(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){let t,r +return t=16*Math.random()|0,r="x"===e?t:3&t|8,r.toString(16)}))}class KC extends Xf{constructor(...e){super(...e),_defineProperty(this,"history",void 0),_defineProperty(this,"_previousURL",void 0),_defineProperty(this,"_popstateHandler",void 0),_defineProperty(this,"rootURL","/")}getHash(){return VC(this.location)}init(){this._super(...arguments) +let e=document.querySelector("base"),t="" +null!==e&&e.hasAttribute("href")&&(t=e.getAttribute("href")??""),this.baseURL=t,this.location=this.location??window.location,this._popstateHandler=void 0}initState(){let e=this.history??window.history +this.history=e +let{state:t}=e,r=this.formatURL(this.getURL()) +t&&t.path===r?this._previousURL=this.getURL():this.replaceState(r)}getURL(){let{location:e,rootURL:t,baseURL:r}=this,n=e.pathname +t=t.replace(/\/$/,""),r=r.replace(/\/$/,"") +let i=n.replace(new RegExp(`^${r}(?=/|$)`),"").replace(new RegExp(`^${t}(?=/|$)`),"").replace(/\/\//g,"/") +return i+=(e.search||"")+this.getHash(),i}setURL(e){let{state:t}=this.history +e=this.formatURL(e),t&&t.path===e||this.pushState(e)}replaceURL(e){let{state:t}=this.history +e=this.formatURL(e),t&&t.path===e||this.replaceState(e)}pushState(e){let t={path:e,uuid:YC()} +this.history.pushState(t,"",e),this._previousURL=this.getURL()}replaceState(e){let t={path:e,uuid:YC()} +this.history.replaceState(t,"",e),this._previousURL=this.getURL()}onUpdateURL(e){this._removeEventListener(),this._popstateHandler=()=>{(QC||(QC=!0,this.getURL()!==this._previousURL))&&e(this.getURL())},window.addEventListener("popstate",this._popstateHandler)}formatURL(e){let{rootURL:t,baseURL:r}=this +return""!==e?(t=t.replace(/\/$/,""),r=r.replace(/\/$/,"")):"/"===r[0]&&"/"===t[0]&&(r=r.replace(/\/$/,"")),r+t+e}willDestroy(){this._removeEventListener()}_removeEventListener(){this._popstateHandler&&window.removeEventListener("popstate",this._popstateHandler)}}const JC=Object.defineProperty({__proto__:null,default:KC},Symbol.toStringTag,{value:"Module"}) +class XC extends Xf{constructor(...e){super(...e),_defineProperty(this,"updateCallback",void 0)}initState(){this._super(...arguments)}getURL(){let{path:e,rootURL:t}=this +return t=t.replace(/\/$/,""),e.replace(new RegExp(`^${t}(?=/|$)`),"")}setURL(e){this.path=e}onUpdateURL(e){this.updateCallback=e}handleURL(e){this.path=e,this.updateCallback&&this.updateCallback(e)}formatURL(e){let{rootURL:t}=this +return""!==e&&(t=t.replace(/\/$/,"")),t+e}}XC.reopen({path:"",rootURL:"/"}) +const ZC=Object.defineProperty({__proto__:null,default:XC},Symbol.toStringTag,{value:"Module"}) +class eO extends Sw{constructor(...e){super(...e),_defineProperty(this,"rootElement",null),_defineProperty(this,"_router",void 0)}init(e){super.init(e),this.application._watchInstance(this),this.register("-application-instance:main",this,{instantiate:!1})}_bootSync(e){return this._booted||(e=new tO(e),this.setupRegistry(e),e.rootElement?this.rootElement=e.rootElement:this.rootElement=this.application.rootElement,e.location&&gd(this.router,"location",e.location),this.application.runInstanceInitializers(this),e.isInteractive&&this.setupEventDispatcher(),this._booted=!0),this}setupRegistry(e){this.constructor.setupRegistry(this.__registry__,e)}get router(){if(!this._router){let e=this.lookup("router:main") +this._router=e}return this._router}didCreateRootView(e){e.appendTo(this.rootElement)}startRouting(){this.router.startRouting()}setupRouter(){this.router.setupRouter()}handleURL(e){return this.setupRouter(),this.router.handleURL(e)}setupEventDispatcher(){let e=this.lookup("event_dispatcher:main"),t=hd(this.application,"customEvents"),r=hd(this,"customEvents"),n=Object.assign({},t,r) +return e.setup(n,this.rootElement),e}getURL(){return this.router.url}visit(e){this.setupRouter() +let t=this.__container__.lookup("-environment:main"),r=this.router,n=()=>t.options.shouldRender?vC().then((()=>this)):this,i=e=>{if(e.error&&e.error instanceof Error)throw e.error +if("TransitionAborted"===e.name&&r._routerMicrolib.activeTransition)return r._routerMicrolib.activeTransition.then(n,i) +throw"TransitionAborted"===e.name?new Error(e.message):e},o=hd(r,"location") +return o.setURL(e),r.handleURL(o.getURL()).then(n,i)}willDestroy(){super.willDestroy(),this.application._unwatchInstance(this)}static setupRegistry(e,t={}){let r=t instanceof tO?t:new tO(t) +e.register("-environment:main",r.toEnvironment(),{instantiate:!1}),e.register("service:-document",r.document,{instantiate:!1}),super.setupRegistry(e,r)}}class tO{constructor(e={}){_defineProperty(this,"isInteractive",void 0),_defineProperty(this,"_renderMode",void 0),_defineProperty(this,"isBrowser",void 0),_defineProperty(this,"location",null),_defineProperty(this,"shouldRender",void 0),_defineProperty(this,"document",void 0),_defineProperty(this,"rootElement",void 0),this.isInteractive=Boolean(u),this._renderMode=e._renderMode,void 0!==e.isBrowser?this.isBrowser=Boolean(e.isBrowser):this.isBrowser=Boolean(u),this.isBrowser||(this.isInteractive=!1,this.location="none"),void 0!==e.shouldRender?this.shouldRender=Boolean(e.shouldRender):this.shouldRender=!0,this.shouldRender||(this.isInteractive=!1),e.document?this.document=e.document:this.document="undefined"!=typeof document?document:null,e.rootElement&&(this.rootElement=e.rootElement),void 0!==e.location&&(this.location=e.location),void 0!==e.isInteractive&&(this.isInteractive=Boolean(e.isInteractive))}toEnvironment(){return{...g,hasDOM:this.isBrowser,isInteractive:this.isInteractive,_renderMode:this._renderMode,options:this}}}const rO=Object.defineProperty({__proto__:null,default:eO},Symbol.toStringTag,{value:"Module"}),nO=zP,iO=er +class oO extends GE{constructor(...e){super(...e),_defineProperty(this,"Router",void 0),_defineProperty(this,"__deprecatedInstance__",void 0),_defineProperty(this,"__container__",void 0),_defineProperty(this,"_bootPromise",null),_defineProperty(this,"_bootResolver",null)}static buildRegistry(e){let t=super.buildRegistry(e) +return function(e){e.register("router:main",gE),e.register("-view-registry:main",{create:()=>R(null)}),e.register("route:basic",QP),e.register("event_dispatcher:main",iv),e.register("location:hash",GC),e.register("location:history",KC),e.register("location:none",XC),e.register(gr`-bucket-cache:main`,{create:()=>new ME}),e.register("service:router",kE)}(t),CC(t),t}init(e){super.init(e),this.rootElement??="body",this._document??=null,this.eventDispatcher??=null,this.customEvents??=null,this.autoboot??=!0,this._document??=u?window.document:null,this._globalsMode??=!0,this._readinessDeferrals=1,this._booted=!1,this._applicationInstances=new Set,this.autoboot=this._globalsMode=Boolean(this.autoboot),this._globalsMode&&this._prepareForGlobalsMode(),this.autoboot&&this.waitForDOMReady()}buildInstance(e={}){return eO.create({...e,base:this,application:this})}_watchInstance(e){this._applicationInstances.add(e)}_unwatchInstance(e){return this._applicationInstances.delete(e)}_prepareForGlobalsMode(){this.Router=(this.Router||gE).extend(),this._buildDeprecatedInstance()}_buildDeprecatedInstance(){let e=this.buildInstance() +this.__deprecatedInstance__=e,this.__container__=e.__container__}waitForDOMReady(){const e=this._document +if(null===e||"loading"!==e.readyState)Lu("actions",this,this.domReady) +else{let t=()=>{e.removeEventListener("DOMContentLoaded",t),Nu(this,this.domReady)} +e.addEventListener("DOMContentLoaded",t)}}domReady(){this.isDestroying||this.isDestroyed||this._bootSync()}deferReadiness(){this._readinessDeferrals++}advanceReadiness(){this._readinessDeferrals--,0===this._readinessDeferrals&&Fu(this,this.didBecomeReady)}boot(){if(this._bootPromise)return this._bootPromise +try{this._bootSync()}catch(e){}return this._bootPromise}_bootSync(){if(this._booted||this.isDestroying||this.isDestroyed)return +let e=this._bootResolver=Gp.defer() +this._bootPromise=e.promise +try{this.runInitializers(),FC("application",this),this.advanceReadiness()}catch(t){throw e.reject(t),t}}reset(){let e=this.__deprecatedInstance__ +this._readinessDeferrals=1,this._bootPromise=null,this._bootResolver=null,this._booted=!1,Iu(this,(function(){Nu(e,"destroy"),this._buildDeprecatedInstance(),Lu("actions",this,"_bootSync")}))}didBecomeReady(){if(!this.isDestroying&&!this.isDestroyed)try{if(this.autoboot){let e +e=this._globalsMode?this.__deprecatedInstance__:this.buildInstance(),e._bootSync(),this.ready(),e.startRouting()}this._bootResolver.resolve(this),this._booted=!0}catch(e){throw this._bootResolver.reject(e),e}}ready(){return this}willDestroy(){super.willDestroy(),LC.application===this&&(LC.application=void 0),this._applicationInstances.size&&(this._applicationInstances.forEach((e=>e.destroy())),this._applicationInstances.clear())}visit(e,t){return this.boot().then((()=>{let r=this.buildInstance() +return r.boot(t).then((()=>r.visit(e))).catch((e=>{throw Nu(r,"destroy"),e}))}))}}_defineProperty(oO,"initializer",qE("initializers")),_defineProperty(oO,"instanceInitializer",qE("instanceInitializers")) +const sO=Object.defineProperty({__proto__:null,_loaded:LC,default:oO,getOwner:nO,onLoad:BC,runLoadHooks:FC,setOwner:iO},Symbol.toStringTag,{value:"Module"}),aO=Object.defineProperty({__proto__:null,default:Lf},Symbol.toStringTag,{value:"Module"}),lO={willChange:"_arrangedContentArrayWillChange",didChange:"_arrangedContentArrayDidChange"} +function uO(e,t){return"[]"===t?(e._revalidate(),e._arrTag):"length"===t?(e._revalidate(),e._lengthTag):oo(e,t)}class cO extends Xf{constructor(...e){super(...e),_defineProperty(this,"_objectsDirtyIndex",0),_defineProperty(this,"_objects",null),_defineProperty(this,"_lengthDirty",!0),_defineProperty(this,"_length",0),_defineProperty(this,"_arrangedContent",null),_defineProperty(this,"_arrangedContentIsUpdating",!1),_defineProperty(this,"_arrangedContentTag",null),_defineProperty(this,"_arrangedContentRevision",null),_defineProperty(this,"_lengthTag",null),_defineProperty(this,"_arrTag",null)}init(e){super.init(e),ps(this,uO)}[dc](){this._revalidate()}willDestroy(){this._removeArrangedContentArrayObserver()}objectAtContent(e){return vc(hd(this,"arrangedContent"),e)}replace(e,t,r){this.replaceContent(e,t,r)}replaceContent(e,t,r){wc(hd(this,"content"),e,t,r)}objectAt(e){if(this._revalidate(),null===this._objects&&(this._objects=[]),-1!==this._objectsDirtyIndex&&e>=this._objectsDirtyIndex){let e=hd(this,"arrangedContent") +if(e){let t=this._objects.length=hd(e,"length") +for(let e=this._objectsDirtyIndex;ei)&&(this._objectsDirtyIndex=i),this._lengthDirty=!0,bc(this,t,r,n,!1)}_invalidate(){this._objectsDirtyIndex=0,this._lengthDirty=!0}_revalidate(){if(!0!==this._arrangedContentIsUpdating&&(null===this._arrangedContentTag||!Fi(this._arrangedContentTag,this._arrangedContentRevision))){let e=this.get("arrangedContent") +null===this._arrangedContentTag?this._addArrangedContentArrayObserver(e):(this._arrangedContentIsUpdating=!0,this._updateArrangedContentArray(e),this._arrangedContentIsUpdating=!1) +let t=this._arrangedContentTag=oo(this,"arrangedContent") +this._arrangedContentRevision=Bi(this._arrangedContentTag),b(e)?(this._lengthTag=Xi([t,lc(e,"length")]),this._arrTag=Xi([t,lc(e,"[]")])):this._lengthTag=this._arrTag=t}}}cO.reopen(Lf,{arrangedContent:_d("content")}) +const dO=Object.defineProperty({__proto__:null,default:cO},Symbol.toStringTag,{value:"Module"}),hO={},pO=Object.assign(hO,ce.FEATURES) +function fO(e){let t=pO[e] +return!0===t||!1===t?t:!!ce.ENABLE_OPTIONAL_FEATURES}const mO=Object.defineProperty({__proto__:null,DEFAULT_FEATURES:hO,FEATURES:pO,isEnabled:fO},Symbol.toStringTag,{value:"Module"}),gO=Object.defineProperty({__proto__:null,default:Uk,helper:qk},Symbol.toStringTag,{value:"Module"}),yO=Object.defineProperty({__proto__:null,Input:x_,Textarea:sk,capabilities:$s,default:Lk,getComponentTemplate:na,setComponentManager:AC,setComponentTemplate:ra},Symbol.toStringTag,{value:"Module"}),bO=zy,_O=Object.defineProperty({__proto__:null,default:bO},Symbol.toStringTag,{value:"Module"}) +function vO(e,t){if(Symbol.iterator in e)for(let r of e)t(r) +else It("","function"==typeof e.forEach),e.forEach(t)}class wO{getCacheForItem(e){let t=this.recordCaches.get(e) +if(!t){let r=!1 +t=vo((()=>{r?this.updated.push(this.wrapRecord(e)):(this.added.push(this.wrapRecord(e)),r=!0)})),this.recordCaches.set(e,t)}return t}constructor(e,t,r,n,i,o){_defineProperty(this,"recordCaches",new Map),_defineProperty(this,"added",[]),_defineProperty(this,"updated",[]),_defineProperty(this,"removed",[]),this.wrapRecord=i,this.release=o,this.recordArrayCache=vo((()=>{let o=new Set +mo(oo(e,"[]")),vO(e,(e=>{wo(this.getCacheForItem(e)),o.add(e)})),Eo((()=>{this.recordCaches.forEach(((e,t)=>{o.has(t)||(this.removed.push(i(t)),this.recordCaches.delete(t))}))})),this.added.length>0&&(t(this.added),this.added=[]),this.updated.length>0&&(r(this.updated),this.updated=[]),this.removed.length>0&&(n(this.removed),this.removed=[])}))}revalidate(){wo(this.recordArrayCache)}}class SO{constructor(e,t,r){this.release=r +let n=!1 +this.cache=vo((()=>{vO(e,(()=>{})),mo(oo(e,"[]")),!0===n?zu(t):n=!0})),this.release=r}revalidate(){wo(this.cache)}}class PO extends Xf{constructor(e){super(e),_defineProperty(this,"releaseMethods",Uf()),_defineProperty(this,"recordsWatchers",new Map),_defineProperty(this,"typeWatchers",new Map),_defineProperty(this,"flushWatchers",null),_defineProperty(this,"attributeLimit",3),_defineProperty(this,"acceptsModelName",!0),this.containerDebugAdapter=Zt(this).lookup("container-debug-adapter:main")}getFilters(){return Uf()}watchModelTypes(e,t){let r,n=this.getModelTypes(),i=Uf() +r=n.map((e=>{let r=e.klass,n=this.wrapModelType(r,e.name) +return i.push(this.observeModelType(e.name,t)),n})),e(r) +let o=()=>{i.forEach((e=>e())),this.releaseMethods.removeObject(o)} +return this.releaseMethods.pushObject(o),o}_nameToClass(e){if("string"==typeof e){let t=Zt(this).factoryFor(`model:${e}`) +e=t&&t.class}return e}watchRecords(e,t,r,n){let i=this._nameToClass(e),o=this.getRecords(i,e),{recordsWatchers:s}=this,a=s.get(o) +return a||(a=new wO(o,t,r,n,(e=>this.wrapRecord(e)),(()=>{s.delete(o),this.updateFlushWatchers()})),s.set(o,a),this.updateFlushWatchers(),a.revalidate()),a.release}updateFlushWatchers(){null===this.flushWatchers?(this.typeWatchers.size>0||this.recordsWatchers.size>0)&&(this.flushWatchers=()=>{this.typeWatchers.forEach((e=>e.revalidate())),this.recordsWatchers.forEach((e=>e.revalidate()))},Du.on("end",this.flushWatchers)):0===this.typeWatchers.size&&0===this.recordsWatchers.size&&(Du.off("end",this.flushWatchers),this.flushWatchers=null)}willDestroy(){this._super(...arguments),this.typeWatchers.forEach((e=>e.release())),this.recordsWatchers.forEach((e=>e.release())),this.releaseMethods.forEach((e=>e())),this.flushWatchers&&Du.off("end",this.flushWatchers)}detect(e){return!1}columnsForType(e){return Uf()}observeModelType(e,t){let r=this._nameToClass(e),n=this.getRecords(r,e),i=()=>{t([this.wrapModelType(r,e)])},{typeWatchers:o}=this,s=o.get(n) +return s||(s=new SO(n,i,(()=>{o.delete(n),this.updateFlushWatchers()})),o.set(n,s),this.updateFlushWatchers(),s.revalidate()),s.release}wrapModelType(e,t){return{name:t,count:hd(this.getRecords(e,t),"length"),columns:this.columnsForType(e),object:e}}getModelTypes(){let e=this.containerDebugAdapter,t=(e.canCatalogEntriesByType("model")?e.catalogEntriesByType("model"):this._getObjectsOnNamespaces()).map((e=>({klass:this._nameToClass(e),name:e}))) +return t.filter((e=>this.detect(e.klass)))}_getObjectsOnNamespaces(){let e=nw.NAMESPACES,t=[] +return e.forEach((e=>{for(let r in e){if(!Object.prototype.hasOwnProperty.call(e,r))continue +if(!this.detect(e[r]))continue +let n=yw(r) +t.push(n)}})),t}getRecords(e,t){return Uf()}wrapRecord(e){return{object:e,columnValues:this.getRecordColumnValues(e),searchKeywords:this.getRecordKeywords(e),filterValues:this.getRecordFilterValues(e),color:this.getRecordColor(e)}}getRecordColumnValues(e){return{}}getRecordKeywords(e){return Uf()}getRecordFilterValues(e){return{}}getRecordColor(e){return null}}const EO=Object.defineProperty({__proto__:null,default:PO},Symbol.toStringTag,{value:"Module"}),kO=Object.defineProperty({__proto__:null,ASSIGN:!0},Symbol.toStringTag,{value:"Module"}) +function TO(e,t){return Ti(e,t)}function CO(e,t){return Ci(e,t)}const OO=Object.defineProperty({__proto__:null,assertDestroyablesDestroyed:_i,associateDestroyableChild:ki,destroy:Oi,enableDestroyableTracking:bi,isDestroyed:Mi,isDestroying:xi,registerDestructor:TO,unregisterDestructor:CO},Symbol.toStringTag,{value:"Module"}),AO=Ps,RO=Zs,xO=_b,MO=gb,DO=cb,NO=hb,IO=mb,jO=pb,LO=QT,BO=Object.defineProperty({__proto__:null,array:DO,capabilities:AO,concat:NO,fn:jO,get:IO,hash:MO,invokeHelper:xO,setHelperManager:RO,uniqueId:LO},Symbol.toStringTag,{value:"Module"}),FO=Object.defineProperty({__proto__:null,cacheFor:ed,guidFor:T},Symbol.toStringTag,{value:"Module"}),UO=Object.defineProperty({__proto__:null,addObserver:Yu,removeObserver:Ku},Symbol.toStringTag,{value:"Module"}) +const zO=ph.create({reason:null,isPending:Jc("isSettled",(function(){return!hd(this,"isSettled")})).readOnly(),isSettled:Jc("isRejected","isFulfilled",(function(){return hd(this,"isRejected")||hd(this,"isFulfilled")})).readOnly(),isRejected:!1,isFulfilled:!1,promise:Jc({get(){throw new Error("PromiseProxy's promise must be set")},set(e,t){return function(e,t){return Od(e,{isFulfilled:!1,isRejected:!1}),t.then((t=>(e.isDestroyed||e.isDestroying||Od(e,{content:t,isFulfilled:!0}),t)),(t=>{throw e.isDestroyed||e.isDestroying||Od(e,{reason:t,isRejected:!0}),t}),"Ember: PromiseProxy")}(this,t)}}),then:HO("then"),catch:HO("catch"),finally:HO("finally")}) +function HO(e){return function(...t){return hd(this,"promise")[e](...t)}}const VO=Object.defineProperty({__proto__:null,default:zO},Symbol.toStringTag,{value:"Module"}) +class $O extends cv{}$O.PrototypeMixin.reopen(Ah) +const qO=Object.defineProperty({__proto__:null,default:$O},Symbol.toStringTag,{value:"Module"}),GO=Object.defineProperty({__proto__:null,renderSettled:vC},Symbol.toStringTag,{value:"Module"}),WO=Object.defineProperty({__proto__:null,LinkTo:nk},Symbol.toStringTag,{value:"Module"}),QO=Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"}) +const YO=Object.defineProperty({__proto__:null,default:class{constructor(e=null){_defineProperty(this,"values",void 0),_defineProperty(this,"isQueryParams",!0),this.values=e}}},Symbol.toStringTag,{value:"Module"}),KO=Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"}),JO=Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"}),XO=Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"}),ZO=Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"}),eA=Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"}) +let tA +const rA=(...e)=>{if(!tA)throw new Error("Attempted to call `compileTemplate` without first loading the runtime template compiler.") +return tA.compile(...e)} +const nA=Object.defineProperty({__proto__:null,get __emberTemplateCompiler(){return tA},__registerTemplateCompiler:function(e){tA=e},compileTemplate:rA,precompileTemplate:undefined},Symbol.toStringTag,{value:"Module"}),iA=Object.defineProperty({__proto__:null,htmlSafe:Xk,isHTMLSafe:Zk},Symbol.toStringTag,{value:"Module"}) +function oA(e){return Ru()?e():Nu(e)}let sA=null +class aA extends Gp.Promise{constructor(e,t){super(e,t),sA=this}then(e,t,r){let n="function"==typeof e?t=>function(e,t){sA=null +let r=e(t),n=sA +return sA=null,r&&r instanceof aA||!n?r:oA((()=>lA(n).then((()=>r))))}(e,t):void 0 +return super.then(n,t,r)}}function lA(e,t){return aA.resolve(e,t)}function uA(){return sA}const cA={} +function dA(e,t){cA[e]={method:t,meta:{wait:!1}}}function hA(e,t){cA[e]={method:t,meta:{wait:!0}}}const pA=[] +const fA=[],mA=[] +function gA(){if(!mA.length)return!1 +for(let e=0;e"}`)},resolve:lA,registerWaiter:function(...e){let t,r +1===e.length?(r=null,t=e[0]):(r=e[0],t=e[1]),yA(r,t)>-1||(fA.push(r),mA.push(t))},unregisterWaiter:function(e,t){if(!mA.length)return +1===arguments.length&&(t=e,e=null) +let r=yA(e,t);-1!==r&&(fA.splice(r,1),mA.splice(r,1))},checkWaiters:gA} +Object.defineProperty(PA,"adapter",{get:_A,set:vA}) +const EA=Xf.extend({asyncStart(){},asyncEnd(){},exception(e){throw e}}) +function kA(e){return null!=e&&"function"==typeof e.stop}const TA=EA.extend({init(){this.doneCallbacks=[]},asyncStart(){kA(QUnit)?QUnit.stop():this.doneCallbacks.push(QUnit.config.current?QUnit.config.current.assert.async():null)},asyncEnd(){if(kA(QUnit))QUnit.start() +else{let e=this.doneCallbacks.pop() +e&&e()}},exception(e){QUnit.config.current.assert.ok(!1,Re(e))}}) +function CA(){be(!0),_A()||vA(void 0===self.QUnit?EA.create():TA.create())}function OA(e,t,r,n){e[t]=function(...e){return n?r.apply(this,e):this.then((function(){return r.apply(this,e)}))}}function AA(e,t){let r=cA[t],n=r.method +return r.meta.wait?(...t)=>{let r=oA((()=>lA(uA()))) +return bA&&bA.asyncStart(),r.then((()=>n.apply(e,[e,...t]))).finally(wA)}:(...t)=>n.apply(e,[e,...t])}let RA +oO.reopen({testHelpers:{},originalMethods:{},testing:!1,setupForTesting(){CA(),this.testing=!0,this.resolveRegistration("router:main").reopen({location:"none"})},helperContainer:null,injectTestHelpers(e){this.helperContainer=e||window,this.reopen({willDestroy(){this._super(...arguments),this.removeTestHelpers()}}),this.testHelpers={} +for(let t in cA)this.originalMethods[t]=this.helperContainer[t],this.testHelpers[t]=this.helperContainer[t]=AA(this,t),OA(aA.prototype,t,AA(this,t),cA[t].meta.wait);(function(e){for(let t of pA)t(e)})(this)},removeTestHelpers(){if(this.helperContainer)for(let e in cA)this.helperContainer[e]=this.originalMethods[e],delete aA.prototype[e],delete this.testHelpers[e],delete this.originalMethods[e]}}),Gp.configure("async",(function(e,t){Du.schedule("actions",(()=>e(t)))})) +let xA=[] +hA("visit",(function(e,t){const r=e.__container__.lookup("router:main") +let n=!1 +return e.boot().then((()=>{r.location.setURL(t),n&&Nu(e.__deprecatedInstance__,"handleURL",t)})),e._readinessDeferrals>0?(r.initialURL=t,Nu(e,"advanceReadiness"),delete r.initialURL):n=!0,(0,e.testHelpers.wait)()})),hA("wait",(function(e,t){return new Gp.Promise((function(r){const n=e.__container__.lookup("router:main") +let i=setInterval((()=>{n._routerMicrolib&&Boolean(n._routerMicrolib.activeTransition)||xA.length||Bu()||Ru()||gA()||(clearInterval(i),Nu(null,r,t))}),10)}))})),hA("andThen",(function(e,t){return(0,e.testHelpers.wait)(t(e))})),hA("pauseTest",(function(){return new Gp.Promise((e=>{RA=e}),"TestAdapter paused promise")})),dA("currentRouteName",(function(e){return hd(e.__container__.lookup("service:-routing"),"currentRouteName")})),dA("currentPath",(function(e){return hd(e.__container__.lookup("service:-routing"),"currentPath")})),dA("currentURL",(function(e){return hd(e.__container__.lookup("router:main"),"location").getURL()})),dA("resumeTest",(function(){RA(),RA=void 0})) +let MA="deferReadiness in `testing` mode" +BC("Ember.Application",(function(e){e.initializers[MA]||e.initializer({name:MA,initialize(e){e.testing&&e.deferReadiness()}})})) +const DA=Object.defineProperty({__proto__:null,Adapter:EA,QUnitAdapter:TA,Test:PA,setupForTesting:CA},Symbol.toStringTag,{value:"Module"}) +let NA,IA,jA,LA,BA,FA,UA=()=>{throw new Error("Attempted to use test utilities, but `ember-testing` was not included")} +function zA(e){let{Test:t}=e +NA=t.registerAsyncHelper,IA=t.registerHelper,jA=t.registerWaiter,LA=t.unregisterHelper,BA=t.unregisterWaiter,FA=e}NA=UA,IA=UA,jA=UA,LA=UA,BA=UA +const HA=Object.defineProperty({__proto__:null,get _impl(){return FA},get registerAsyncHelper(){return NA},get registerHelper(){return IA},registerTestImplementation:zA,get registerWaiter(){return jA},get unregisterHelper(){return LA},get unregisterWaiter(){return BA}},Symbol.toStringTag,{value:"Module"}) +zA(DA) +const VA=Object.defineProperty({__proto__:null,default:EA},Symbol.toStringTag,{value:"Module"}),$A=Object.defineProperty({__proto__:null,CI:!1,DEBUG:!1},Symbol.toStringTag,{value:"Module"}),qA=Object.defineProperty({__proto__:null,cached:Dd,tracked:Rd},Symbol.toStringTag,{value:"Module"}),GA=Object.defineProperty({__proto__:null,createCache:vo,getValue:wo,isConst:So},Symbol.toStringTag,{value:"Module"}) +let WA;(function(e){e.isNamespace=!0,e.toString=function(){return"Ember"},e.Container=rr,e.Registry=pr,e._setComponentManager=AC,e._componentManagerCapabilities=$s,e._modifierManagerCapabilities=Ys,e.meta=Dl,e._createCache=vo,e._cacheGetValue=wo,e._cacheIsConst=So,e._descriptor=Dc,e._getPath=fd,e._setClassicDecorator=Vc,e._tracked=Rd,e.beginPropertyChanges=fc,e.changeProperties=gc,e.endPropertyChanges=mc,e.hasListeners=Ul,e.libraries=Td,e._ContainerProxyMixin=wh,e._ProxyMixin=Ah,e._RegistryProxyMixin=bh,e.ActionHandler=kh,e.Comparable=Ph,e.ComponentLookup=sv,e.EventDispatcher=iv,e._Cache=ne,e.GUID_KEY=E,e.canInvoke=Q +e.generateGuid=k,e.guidFor=T,e.uuid=v,e.wrap=q,e.getOwner=nO,e.onLoad=BC,e.runLoadHooks=FC,e.setOwner=iO,e.Application=oO,e.ApplicationInstance=eO,e.Namespace=nw,e.A=Uf,e.Array=jf,e.NativeArray=Bf,e.isArray=Df,e.makeArray=vf,e.MutableArray=Lf,e.ArrayProxy=cO,e.FEATURES={isEnabled:fO,...pO},e._Input=x_,e.Component=Lk,e.Helper=Uk,e.Controller=ew,e.ControllerMixin=Zv,e._captureRenderTree=Mt,e.assert=It,e.warn=Lt,e.debug=Bt,e.deprecate=Ft,e.deprecateFunc=qt +e.runInDebug=Ht,e.inspect=Re,e.Debug={registerDeprecationHandler:fe,registerWarnHandler:ve,isComputed:Zc},e.ContainerDebugAdapter=vw,e.DataAdapter=PO,e._assertDestroyablesDestroyed=_i,e._associateDestroyableChild=ki,e._enableDestroyableTracking=bi,e._isDestroying=xi,e._isDestroyed=Mi,e._registerDestructor=TO,e._unregisterDestructor=CO,e.destroy=Oi,e.Engine=GE,e.EngineInstance=Sw,e.Enumerable=xh,e.MutableEnumerable=Dh,e.instrument=mv,e.subscribe=_v,e.Instrumentation={instrument:mv,subscribe:_v,unsubscribe:vv,reset:wv},e.Object=Xf,e._action=tm,e.computed=Jc,e.defineProperty=td,e.get=hd,e.getProperties=Cd,e.notifyPropertyChange=pc,e.observer=rm,e.set=gd,e.trySet=bd +function t(){}e.setProperties=Od,e.cacheFor=ed,e._dependentKeyCompat=$P,e.ComputedProperty=Qc,e.expandProperties=qc,e.CoreObject=Kf,e.Evented=lv,e.on=zl,e.addListener=Ll,e.removeListener=Bl,e.sendEvent=Fl,e.Mixin=ph,e.mixin=dh,e.Observable=yf,e.addObserver=Yu,e.removeObserver=Ku,e.PromiseProxyMixin=zO,e.ObjectProxy=$O,e.RouterDSL=jE,e.controllerFor=UE,e.generateController=RE,e.generateControllerFactory=AE,e.HashLocation=GC,e.HistoryLocation=KC,e.NoneLocation=XC,e.Route=QP,e.Router=gE,e.run=Nu,e.Service=FP,e.compare=pf +e.isBlank=ef,e.isEmpty=Xp,e.isEqual=of,e.isNone=Kp,e.isPresent=rf,e.typeOf=uf,e.VERSION=br,e.ViewUtils={getChildViews:q_,getElementView:B_,getRootViews:N_,getViewBounds:Y_,getViewBoundingClientRect:X_,getViewClientRects:J_,getViewElement:F_,isSimpleClick:M_,isSerializationFirstNode:Hb},e._getComponentTemplate=na,e._helperManagerCapabilities=Ps,e._setComponentTemplate=ra,e._setHelperManager=Zs,e._setModifierManager=Xs,e._templateOnlyComponent=zy,e._invokeHelper=_b,e._hash=gb,e._array=cb,e._concat=hb,e._get=mb,e._on=Eb,e._fn=pb,e._Backburner=Cu,e.inject=t,t.controller=tw,t.service=BP,e.__loader={get require(){return globalThis.require},get define(){return globalThis.define},get registry(){let e=globalThis +return e.requirejs?.entries??e.require.entries}}})(WA||(WA={})),Object.defineProperty(WA,"ENV",{get:de,enumerable:!1}),Object.defineProperty(WA,"lookup",{get:le,set:ue,enumerable:!1}),Object.defineProperty(WA,"onerror",{get:xr,set:Mr,enumerable:!1}),Object.defineProperty(WA,"testing",{get:ye,set:be,enumerable:!1}),Object.defineProperty(WA,"BOOTED",{configurable:!1,enumerable:!1,get:Gd,set:Wd}),Object.defineProperty(WA,"TEMPLATES",{get:kC,set:EC,configurable:!1,enumerable:!1}),Object.defineProperty(WA,"TEMPLATES",{get:kC,set:EC,configurable:!1,enumerable:!1}),Object.defineProperty(WA,"testing",{get:ye,set:be,enumerable:!1}),FC("Ember.Application",oO) +let QA={template:bl,Utils:{escapeExpression:Jk}},YA={template:bl} +function KA(e){Object.defineProperty(WA,e,{configurable:!0,enumerable:!0,get:()=>(tA&&(YA.precompile=QA.precompile=tA.precompile,YA.compile=QA.compile=rA,Object.defineProperty(WA,"HTMLBars",{configurable:!0,writable:!0,enumerable:!0,value:YA}),Object.defineProperty(WA,"Handlebars",{configurable:!0,writable:!0,enumerable:!0,value:QA})),"Handlebars"===e?QA:YA)})}function JA(e){Object.defineProperty(WA,e,{configurable:!0,enumerable:!0,get(){if(FA){let{Test:t,Adapter:r,QUnitAdapter:n,setupForTesting:i}=FA +return t.Adapter=r,t.QUnitAdapter=n,Object.defineProperty(WA,"Test",{configurable:!0,writable:!0,enumerable:!0,value:t}),Object.defineProperty(WA,"setupForTesting",{configurable:!0,writable:!0,enumerable:!0,value:i}),"Test"===e?t:i}}})}KA("HTMLBars"),KA("Handlebars"),JA("Test"),JA("setupForTesting"),FC("Ember"),WA.RSVP=Gp +const XA=WA,ZA=Object.defineProperty({__proto__:null,default:XA},Symbol.toStringTag,{value:"Module"}) +l("@ember/-internals/browser-environment/index",g),l("@ember/-internals/container/index",yr),l("@ember/-internals/deprecations/index",Or),l("@ember/-internals/environment/index",he),l("@ember/-internals/error-handling/index",jr),l("@ember/-internals/glimmer/index",RC),l("@ember/-internals/meta/index",jl),l("@ember/-internals/meta/lib/meta",Il),l("@ember/-internals/metal/index",Xd),l("@ember/-internals/owner/index",tr),l("@ember/-internals/routing/index",xC),l("@ember/-internals/runtime/index",Yp),l("@ember/-internals/runtime/lib/ext/rsvp",Qp),l("@ember/-internals/runtime/lib/mixins/-proxy",Rh),l("@ember/-internals/runtime/lib/mixins/action_handler",Th),l("@ember/-internals/runtime/lib/mixins/comparable",Eh),l("@ember/-internals/runtime/lib/mixins/container_proxy",Sh),l("@ember/-internals/runtime/lib/mixins/registry_proxy",vh),l("@ember/-internals/runtime/lib/mixins/target_action_support",jh),l("@ember/-internals/string/index",_w),l("@ember/-internals/utility-types/index",MC),l("@ember/-internals/utils/index",Wt),l("@ember/-internals/views/index",Wv),l("@ember/-internals/views/lib/compat/attrs",Gv),l("@ember/-internals/views/lib/compat/fallback-view-registry",NC),l("@ember/-internals/views/lib/component_lookup",av),l("@ember/-internals/views/lib/mixins/action_support",$v),l("@ember/-internals/views/lib/mixins/child_views_support",Lv),l("@ember/-internals/views/lib/mixins/class_names_support",Iv),l("@ember/-internals/views/lib/mixins/view_state_support",Fv) +l("@ember/-internals/views/lib/mixins/view_support",Hv),l("@ember/-internals/views/lib/system/action_manager",rv),l("@ember/-internals/views/lib/system/event_dispatcher",ov),l("@ember/-internals/views/lib/system/utils",ev),l("@ember/-internals/views/lib/views/core_view",Mv),l("@ember/-internals/views/lib/views/states",Av),l("@ember/application/index",sO),l("@ember/application/instance",rO),l("@ember/application/lib/lazy_load",UC),l("@ember/application/namespace",iw),l("@ember/array/-internals",ad),l("@ember/array/index",zf),l("@ember/array/lib/make-array",wf),l("@ember/array/mutable",aO),l("@ember/array/proxy",dO),l("@ember/canary-features/index",mO),l("@ember/component/helper",gO),l("@ember/component/index",yO),l("@ember/component/template-only",_O),l("@ember/controller/index",rw),l("@ember/debug/index",Gt),l("@ember/debug/lib/capture-render-tree",Dt),l("@ember/debug/lib/deprecate",me),l("@ember/debug/lib/handlers",pe),l("@ember/debug/lib/inspect",De),l("@ember/debug/lib/testing",_e),l("@ember/debug/lib/warn",we),l("@ember/debug/container-debug-adapter",ww),l("@ember/debug/data-adapter",EO),l("@ember/deprecated-features/index",kO) +l("@ember/destroyable/index",OO),l("@ember/engine/index",WE),l("@ember/engine/instance",Pw),l("@ember/engine/lib/engine-parent",Jv),l("@ember/enumerable/index",Mh),l("@ember/enumerable/mutable",Nh),l("@ember/helper/index",BO),l("@ember/instrumentation/index",Sv),l("@ember/modifier/index",n_),l("@ember/object/-internals",dv),l("@ember/object/compat",qP),l("@ember/object/computed",LP),l("@ember/object/core",Jf),l("@ember/object/evented",uv),l("@ember/object/events",Zd),l("@ember/object/index",nm),l("@ember/object/internals",FO),l("@ember/object/lib/computed/computed_macros",yP),l("@ember/object/lib/computed/reduce_computed_macros",jP),l("@ember/object/mixin",yh),l("@ember/object/observable",bf),l("@ember/object/observers",UO),l("@ember/object/promise-proxy-mixin",VO),l("@ember/object/proxy",qO),l("@ember/owner/index",HP),l("@ember/renderer/index",GO),l("@ember/routing/-internals",HE),l("@ember/routing/hash-location",WC),l("@ember/routing/history-location",JC),l("@ember/routing/index",WO) +l("@ember/routing/lib/cache",DE),l("@ember/routing/lib/controller_for",zE),l("@ember/routing/lib/dsl",FE),l("@ember/routing/lib/engines",QO),l("@ember/routing/lib/generate_controller",xE),l("@ember/routing/lib/location-utils",qC),l("@ember/routing/lib/query_params",YO),l("@ember/routing/lib/route-info",KO),l("@ember/routing/lib/router_state",ZS),l("@ember/routing/lib/routing-service",OE),l("@ember/routing/lib/utils",JS),l("@ember/routing/location",JO),l("@ember/routing/none-location",ZC),l("@ember/routing/route-info",XO),l("@ember/routing/route",rE),l("@ember/routing/router-service",TE),l("@ember/routing/router",yE),l("@ember/routing/transition",ZO),l("@ember/runloop/-private/backburner",eA),l("@ember/runloop/index",Vu),l("@ember/service/index",UP),l("@ember/template-compilation/index",nA),l("@ember/template-factory/index",wl),l("@ember/template/index",iA),l("@ember/test/adapter",VA),l("@ember/test/index",HA),l("@ember/utils/index",gf),l("@ember/utils/lib/compare",mf),l("@ember/utils/lib/is-equal",sf),l("@ember/utils/lib/is_blank",tf) +l("@ember/utils/lib/is_empty",Zp),l("@ember/utils/lib/is_none",Jp),l("@ember/utils/lib/is_present",nf),l("@ember/utils/lib/type-of",cf),l("@ember/version/index",vr),l("@glimmer/debug",Yn),l("@glimmer/destroyable",Di),l("@glimmer/encoder",Jn),l("@glimmer/env",$A),l("@glimmer/global-context",gi),l("@glimmer/manager",ia),l("@glimmer/node",kT),l("@glimmer/opcode-compiler",vl),l("@glimmer/owner",Jt),l("@glimmer/program",_m),l("@glimmer/reference",cs),l("@glimmer/runtime",e_),l("@glimmer/tracking/index",qA),l("@glimmer/tracking/primitives/cache",GA),l("@glimmer/util",xt),l("@glimmer/validator",Oo),l("@glimmer/vm",Xr),l("@glimmer/wire-format",ri),l("@simple-dom/document",vT),l("backburner.js",Ou),l("dag-map",lw),l("ember/index",ZA),l("ember/version",_r),l("route-recognizer",Zw),l("router_js",FS) +l("rsvp",Gp),"object"==typeof module&&"function"==typeof module.require&&(module.exports=XA)}(),"undefined"==typeof FastBoot){var preferNative=!1;(function(e){define("fetch",["exports","ember","rsvp"],(function(t,r,n){"use strict" +var i="default"in r?r.default:r,o=("default"in n?n.default:n).Promise,s=["FormData","FileReader","Blob","URLSearchParams","Symbol","ArrayBuffer"],a=s +preferNative&&(a=s.concat(["fetch","Headers","Request","Response","AbortController"])),a.forEach((function(r){e[r]&&Object.defineProperty(t,r,{configurable:!0,get:function(){return e[r]},set:function(t){e[r]=t}})})) +var l=t,u=t;(function(){class e{constructor(){Object.defineProperty(this,"listeners",{value:{},writable:!0,configurable:!0})}addEventListener(e,t,r){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push({callback:t,options:r})}removeEventListener(e,t){if(!(e in this.listeners))return +const r=this.listeners[e] +for(let n=0,i=r.length;n{throw r}))}i.options&&i.options.once&&this.removeEventListener(e.type,i.callback)}return!e.defaultPrevented}}class t extends e{constructor(){super(),this.listeners||e.call(this),Object.defineProperty(this,"aborted",{value:!1,writable:!0,configurable:!0}),Object.defineProperty(this,"onabort",{value:null,writable:!0,configurable:!0}),Object.defineProperty(this,"reason",{value:void 0,writable:!0,configurable:!0})}toString(){return"[object AbortSignal]"}dispatchEvent(e){"abort"===e.type&&(this.aborted=!0,"function"==typeof this.onabort&&this.onabort.call(this,e)),super.dispatchEvent(e)}}class r{constructor(){Object.defineProperty(this,"signal",{value:new t,writable:!0,configurable:!0})}abort(e){let t +try{t=new Event("abort")}catch(n){"undefined"!=typeof document?document.createEvent?(t=document.createEvent("Event"),t.initEvent("abort",!1,!1)):(t=document.createEventObject(),t.type="abort"):t={type:"abort",bubbles:!1,cancelable:!1}}let r=e +if(void 0===r)if("undefined"==typeof document)r=new Error("This operation was aborted"),r.name="AbortError" +else try{r=new DOMException("signal is aborted without reason")}catch(i){r=new Error("This operation was aborted"),r.name="AbortError"}this.signal.reason=r,this.signal.dispatchEvent(t)}toString(){return"[object AbortController]"}}"undefined"!=typeof Symbol&&Symbol.toStringTag&&(r.prototype[Symbol.toStringTag]="AbortController",t.prototype[Symbol.toStringTag]="AbortSignal"),function(e){(function(e){return e.__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL?(console.log("__FORCE_INSTALL_ABORTCONTROLLER_POLYFILL=true is set, will force install polyfill"),!0):"function"==typeof e.Request&&!e.Request.prototype.hasOwnProperty("signal")||!e.AbortController})(e)&&(e.AbortController=r,e.AbortSignal=t)}(void 0!==u?u:global)})();(function(e){var t=void 0!==l&&l||void 0!==u&&u||"undefined"!=typeof global&&global||{},r="URLSearchParams"in t,n="Symbol"in t&&"iterator"in Symbol,i="FileReader"in t&&"Blob"in t&&function(){try{return new Blob,!0}catch(e){return!1}}(),s="FormData"in t,a="ArrayBuffer"in t +if(a)var c=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],d=ArrayBuffer.isView||function(e){return e&&c.indexOf(Object.prototype.toString.call(e))>-1} +function h(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(e)||""===e)throw new TypeError('Invalid character in header field name: "'+e+'"') +return e.toLowerCase()}function p(e){return"string"!=typeof e&&(e=String(e)),e}function f(e){var t={next:function(){var t=e.shift() +return{done:void 0===t,value:t}}} +return n&&(t[Symbol.iterator]=function(){return t}),t}function m(e){this.map={},e instanceof m?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){if(2!=e.length)throw new TypeError("Headers constructor: expected name/value pair to be length 2, found"+e.length) +this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function g(e){if(!e._noBody)return e.bodyUsed?o.reject(new TypeError("Already read")):void(e.bodyUsed=!0)}function y(e){return new o((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function b(e){var t=new FileReader,r=y(t) +return t.readAsArrayBuffer(e),r}function _(e){if(e.slice)return e.slice(0) +var t=new Uint8Array(e.byteLength) +return t.set(new Uint8Array(e)),t.buffer}function v(){return this.bodyUsed=!1,this._initBody=function(e){var t +this.bodyUsed=this.bodyUsed,this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:i&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:s&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():a&&i&&((t=e)&&DataView.prototype.isPrototypeOf(t))?(this._bodyArrayBuffer=_(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):a&&(ArrayBuffer.prototype.isPrototypeOf(e)||d(e))?this._bodyArrayBuffer=_(e):this._bodyText=e=Object.prototype.toString.call(e):(this._noBody=!0,this._bodyText=""),this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var e=g(this) +if(e)return e +if(this._bodyBlob)return o.resolve(this._bodyBlob) +if(this._bodyArrayBuffer)return o.resolve(new Blob([this._bodyArrayBuffer])) +if(this._bodyFormData)throw new Error("could not read FormData body as blob") +return o.resolve(new Blob([this._bodyText]))}),this.arrayBuffer=function(){if(this._bodyArrayBuffer){var e=g(this) +return e||(ArrayBuffer.isView(this._bodyArrayBuffer)?o.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):o.resolve(this._bodyArrayBuffer))}if(i)return this.blob().then(b) +throw new Error("could not read as ArrayBuffer")},this.text=function(){var e,t,r,n,i,s=g(this) +if(s)return s +if(this._bodyBlob)return e=this._bodyBlob,t=new FileReader,r=y(t),n=/charset=([A-Za-z0-9_-]+)/.exec(e.type),i=n?n[1]:"utf-8",t.readAsText(e,i),r +if(this._bodyArrayBuffer)return o.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n-1?i:n),this.mode=r.mode||this.mode||null,this.signal=r.signal||this.signal||function(){if("AbortController"in t)return(new AbortController).signal}(),this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests") +if(this._initBody(o),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==r.cache&&"no-cache"!==r.cache)){var s=/([?&])_=[^&]*/ +if(s.test(this.url))this.url=this.url.replace(s,"$1_="+(new Date).getTime()) +else{this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}}function P(e){var t=new FormData +return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ") +t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function E(e,t){if(!(this instanceof E))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.') +if(t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.status<200||this.status>599)throw new RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].") +this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new m(t.headers),this.url=t.url||"",this._initBody(e)}S.prototype.clone=function(){return new S(this,{body:this._bodyInit})},v.call(S.prototype),v.call(E.prototype),E.prototype.clone=function(){return new E(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new m(this.headers),url:this.url})},E.error=function(){var e=new E(null,{status:200,statusText:""}) +return e.ok=!1,e.status=0,e.type="error",e} +var k=[301,302,303,307,308] +E.redirect=function(e,t){if(-1===k.indexOf(t))throw new RangeError("Invalid status code") +return new E(null,{status:t,headers:{location:e}})},e.DOMException=t.DOMException +try{new e.DOMException}catch(C){e.DOMException=function(e,t){this.message=e,this.name=t +var r=Error(e) +this.stack=r.stack},e.DOMException.prototype=Object.create(Error.prototype),e.DOMException.prototype.constructor=e.DOMException}function T(r,n){return new o((function(o,s){var l=new S(r,n) +if(l.signal&&l.signal.aborted)return s(new e.DOMException("Aborted","AbortError")) +var u=new XMLHttpRequest +function c(){u.abort()}if(u.onload=function(){var e,t,r={statusText:u.statusText,headers:(e=u.getAllResponseHeaders()||"",t=new m,e.replace(/\r?\n[\t ]+/g," ").split("\r").map((function(e){return 0===e.indexOf("\n")?e.substr(1,e.length):e})).forEach((function(e){var r=e.split(":"),n=r.shift().trim() +if(n){var i=r.join(":").trim() +try{t.append(n,i)}catch(o){console.warn("Response "+o.message)}}})),t)} +0===l.url.indexOf("file://")&&(u.status<200||u.status>599)?r.status=200:r.status=u.status,r.url="responseURL"in u?u.responseURL:r.headers.get("X-Request-URL") +var n="response"in u?u.response:u.responseText +setTimeout((function(){o(new E(n,r))}),0)},u.onerror=function(){setTimeout((function(){s(new TypeError("Network request failed"))}),0)},u.ontimeout=function(){setTimeout((function(){s(new TypeError("Network request timed out"))}),0)},u.onabort=function(){setTimeout((function(){s(new e.DOMException("Aborted","AbortError"))}),0)},u.open(l.method,function(e){try{return""===e&&t.location.href?t.location.href:e}catch(r){return e}}(l.url),!0),"include"===l.credentials?u.withCredentials=!0:"omit"===l.credentials&&(u.withCredentials=!1),"responseType"in u&&(i?u.responseType="blob":a&&(u.responseType="arraybuffer")),n&&"object"==typeof n.headers&&!(n.headers instanceof m||t.Headers&&n.headers instanceof t.Headers)){var d=[] +Object.getOwnPropertyNames(n.headers).forEach((function(e){d.push(h(e)),u.setRequestHeader(e,p(n.headers[e]))})),l.headers.forEach((function(e,t){-1===d.indexOf(t)&&u.setRequestHeader(t,e)}))}else l.headers.forEach((function(e,t){u.setRequestHeader(t,e)})) +l.signal&&(l.signal.addEventListener("abort",c),u.onreadystatechange=function(){4===u.readyState&&l.signal.removeEventListener("abort",c)}),u.send(void 0===l._bodyInit?null:l._bodyInit)}))}T.polyfill=!0,t.fetch||(t.fetch=T,t.Headers=m,t.Request=S,t.Response=E),e.Headers=m,e.Request=S,e.Response=E,e.fetch=T})({}) +if(!l.fetch)throw new Error("fetch is not defined - maybe your browser targets are not covering everything you need?") +var c=0 +function d(e){return c--,e}i.Test?(i.Test.registerWaiter((function(){return 0===c})),t.default=function(){return c++,t.fetch.apply(e,arguments).then((function(e){return e.clone().blob().then(d,d),e}),(function(e){throw d(e),e}))}):t.default=t.fetch,s.forEach((function(e){delete t[e]}))}))})("undefined"!=typeof window&&window||"undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||"undefined"!=typeof global&&global)}define("@ember/string/cache",["exports"],(function(e){"use strict" +function t(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +var r=e[Symbol.toPrimitive] +if(void 0!==r){var n=r.call(e,t||"default") +if("object"!=typeof n)return n +throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") +return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{constructor(e,r,n){t(this,"size",0),t(this,"misses",0),t(this,"hits",0),this.limit=e,this.func=r,this.store=n,this.store=n||new Map}get(e){let t=this.store.get(e) +return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,t=this.set(e,this.func(e)),t)}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}}})),define("@ember/string/index",["exports","@ember/string/cache"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.camelize=function(e){return a.get(e)},e.capitalize=function(e){return g.get(e)},e.classify=function(e){return d.get(e)},e.dasherize=function(e){return i.get(e)},e.decamelize=_,e.getString=function(e){return r[e]},e.getStrings=function(){return r},e.htmlSafe=function(e){throw new Error("htmlSafe is not implemented in the `@ember/string` package. Please import from `@ember/template` instead.")},e.isHTMLSafe=function(e){throw new Error("isHTMLSafe is not implemented in the `@ember/string` package. Please import from `@ember/template` instead.")},e.setStrings=function(e){r=e},e.underscore=function(e){return f.get(e)},e.w=function(e){return e.split(/\s+/)} +let r={} +const n=/[ _]/g,i=new t.default(1e3,(e=>_(e).replace(n,"-"))),o=/(\-|\_|\.|\s)+(.)?/g,s=/(^|\/)([A-Z])/g,a=new t.default(1e3,(e=>e.replace(o,((e,t,r)=>r?r.toUpperCase():"")).replace(s,(e=>e.toLowerCase())))),l=/^(\-|_)+(.)?/,u=/(.)(\-|\_|\.|\s)+(.)?/g,c=/(^|\/|\.)([a-z])/g,d=new t.default(1e3,(e=>{const t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/") +for(let i=0;ie.toUpperCase()))})),h=/([a-z\d])([A-Z]+)/g,p=/\-|\s+/g,f=new t.default(1e3,(e=>e.replace(h,"$1_$2").replace(p,"_").toLowerCase())),m=/(^|\/)([a-z\u00C0-\u024F])/g,g=new t.default(1e3,(e=>e.replace(m,(e=>e.toUpperCase())))),y=/([a-z\d])([A-Z])/g,b=new t.default(1e3,(e=>e.replace(y,"$1_$2").toLowerCase())) +function _(e){return b.get(e)}})),define("@ember/test-waiters/build-waiter",["exports","@ember/debug","@ember/test-waiters/token","@ember/test-waiters/waiter-manager"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e._resetWaiterNames=function(){i=new Set},e.default=function(e){0 +return new o(e)} +let i +class o{constructor(e){this.name=e}beginAsync(){return this}endAsync(){}waitUntil(){return!0}debugInfo(){return[]}reset(){}}})),define("@ember/test-waiters/index",["exports","@ember/test-waiters/waiter-manager","@ember/test-waiters/build-waiter","@ember/test-waiters/wait-for-promise","@ember/test-waiters/wait-for"],(function(e,t,r,n,i){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"_reset",{enumerable:!0,get:function(){return t._reset}}),Object.defineProperty(e,"_resetWaiterNames",{enumerable:!0,get:function(){return r._resetWaiterNames}}),Object.defineProperty(e,"buildWaiter",{enumerable:!0,get:function(){return r.default}}),Object.defineProperty(e,"getPendingWaiterState",{enumerable:!0,get:function(){return t.getPendingWaiterState}}),Object.defineProperty(e,"getWaiters",{enumerable:!0,get:function(){return t.getWaiters}}),Object.defineProperty(e,"hasPendingWaiters",{enumerable:!0,get:function(){return t.hasPendingWaiters}}),Object.defineProperty(e,"register",{enumerable:!0,get:function(){return t.register}}),Object.defineProperty(e,"unregister",{enumerable:!0,get:function(){return t.unregister}}),Object.defineProperty(e,"waitFor",{enumerable:!0,get:function(){return i.default}}),Object.defineProperty(e,"waitForPromise",{enumerable:!0,get:function(){return n.default}})})),define("@ember/test-waiters/token",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{}})),define("@ember/test-waiters/types/index",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0})})),define("@ember/test-waiters/wait-for-promise",["exports","@ember/test-waiters/build-waiter"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){let r=e +0 +return r};(0,t.default)("@ember/test-waiters:promise-waiter")})),define("@ember/test-waiters/wait-for",["exports","@ember/test-waiters/wait-for-promise","@ember/test-waiters/build-waiter"],(function(e,t,r){"use strict" +function n(e,t){return e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(...e){if(e.length<3){let[t,r]=e +return n(t,r)}{let[,,t,r]=e +return t}};(0,r.default)("@ember/test-waiters:generator-waiter")})),define("@ember/test-waiters/waiter-manager",["exports","ember","@ember/test"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e._reset=function(){for(let e of o())e.isRegistered=!1 +n.clear()},e.getPendingWaiterState=s,e.getWaiters=o,e.hasPendingWaiters=a,e.register=function(e){n.set(e.name,e)},e.unregister=function(e){n.delete(e.name)} +const n=function(){let e="TEST_WAITERS",t="undefined"!=typeof Symbol?Symbol.for(e):e,r=i(),n=r[t] +return void 0===n&&(n=r[t]=new Map),n}() +function i(){if("undefined"!=typeof globalThis)return globalThis +if("undefined"!=typeof self)return self +if("undefined"!=typeof window)return window +if("undefined"!=typeof global)return global +throw new Error("unable to locate global object")}function o(){let e=[] +return n.forEach((t=>{e.push(t)})),e}function s(){let e={pending:0,waiters:{}} +return n.forEach((t=>{if(!t.waitUntil()){e.pending++ +let r=t.debugInfo() +e.waiters[t.name]=r||!0}})),e}function a(){return s().pending>0}t.default.Test&&(0,r.registerWaiter)((()=>!a()))})),define("@embroider/macros/es-compat2",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return e?.__esModule?e:{default:e,...e}}})),define("@embroider/macros/runtime",["exports"],(function(e){"use strict" +function t(e){return n.packages[e]}function r(){return n.global}Object.defineProperty(e,"__esModule",{value:!0}),e.config=t,e.each=function(e){if(!Array.isArray(e))throw new Error("the argument to the each() macro must be an array") +return e},e.getGlobalConfig=r,e.isTesting=function(){let e=n.global,t=e&&e["@embroider/macros"] +return Boolean(t&&t.isTesting)},e.macroCondition=function(e){return e} +const n={packages:{},global:{}} +let i="undefined"!=typeof window?window._embroider_macros_runtime_config:void 0 +if(i){let e={config:t,getGlobalConfig:r,setConfig(e,t){n.packages[e]=t},setGlobalConfig(e,t){n.global[e]=t}} +for(let t of i)t(e)}})),define("@glimmer/component/-private/base-component-manager",["exports","@glimmer/component/-private/component"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t,r){return class{static create(e){return new this(t(e))}constructor(t){var n,i,o +n=this,o=r,(i=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +var r=e[Symbol.toPrimitive] +if(void 0!==r){var n=r.call(e,t||"default") +if("object"!=typeof n)return n +throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") +return"symbol"==typeof t?t:t+""}(i="capabilities"))in n?Object.defineProperty(n,i,{value:o,enumerable:!0,configurable:!0,writable:!0}):n[i]=o,e(this,t)}createComponent(e,r){return new e(t(this),r.named)}getContext(e){return e}}}})),define("@glimmer/component/-private/component",["exports","@glimmer/component/-private/owner","@glimmer/component/-private/destroyables"],(function(e,t,r){"use strict" +function n(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e +var r=e[Symbol.toPrimitive] +if(void 0!==r){var n=r.call(e,t||"default") +if("object"!=typeof n)return n +throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string") +return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(e,"__esModule",{value:!0}),e.default=e.ARGS_SET=void 0 +e.ARGS_SET=void 0 +e.default=class{constructor(e,r){n(this,"args",void 0),this.args=r,(0,t.setOwner)(this,e)}get isDestroying(){return(0,r.isDestroying)(this)}get isDestroyed(){return(0,r.isDestroyed)(this)}willDestroy(){}}})),define("@glimmer/component/-private/destroyables",["exports","ember"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.isDestroying=e.isDestroyed=void 0 +e.isDestroying=t.default._isDestroying,e.isDestroyed=t.default._isDestroyed})),define("@glimmer/component/-private/ember-component-manager",["exports","ember","@ember/object","@ember/application","@ember/component","@ember/runloop","@glimmer/component/-private/base-component-manager","@glimmer/component/-private/destroyables"],(function(e,t,r,n,i,o,s,a){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +const{setDestroyed:l,setDestroying:u}=a,c=(0,i.capabilities)("3.13",{destructor:!0,asyncLifecycleCallbacks:!1,updateHook:!1}),d=t.default.destroy,h=t.default._registerDestructor +class p extends((0,s.default)(n.setOwner,n.getOwner,c)){createComponent(e,t){const r=super.createComponent(e,t) +return h(r,(()=>{r.willDestroy()})),r}destroyComponent(e){d(e)}}e.default=p})),define("@glimmer/component/-private/owner",["exports","@ember/application"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"setOwner",{enumerable:!0,get:function(){return t.setOwner}})})),define("@glimmer/component/index",["exports","@ember/component","@glimmer/component/-private/ember-component-manager","@glimmer/component/-private/component"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +let i=n.default;(0,t.setComponentManager)((e=>new r.default(e)),i) +e.default=i})),define("ember-cli-app-version/initializer-factory",["exports","ember"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,t){let n=!1 +return function(){!n&&e&&t&&(r.register(e,t),n=!0)}} +const{libraries:r}=t.default})),define("ember-cli-app-version/utils/regexp",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.versionRegExp=e.versionExtendedRegExp=e.shaRegExp=void 0 +e.versionRegExp=/\d+[.]\d+[.]\d+/,e.versionExtendedRegExp=/\d+[.]\d+[.]\d+-[a-z]*([.]\d+)?/,e.shaRegExp=/[a-z\d]{8}$/})),define("ember-fetch/errors",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.isAbortError=function(e){return"AbortError"==e.name},e.isBadRequestResponse=function(e){return 400===e.status},e.isConflictResponse=function(e){return 409===e.status},e.isForbiddenResponse=function(e){return 403===e.status},e.isGoneResponse=function(e){return 410===e.status},e.isInvalidResponse=function(e){return 422===e.status},e.isNotFoundResponse=function(e){return 404===e.status},e.isServerErrorResponse=function(e){return e.status>=500&&e.status<600},e.isUnauthorizedResponse=function(e){return 401===e.status}})),define("ember-fetch/types",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.isPlainObject=function(e){return"[object Object]"===Object.prototype.toString.call(e)}})),define("ember-fetch/utils/determine-body-promise",["exports","@ember/debug"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e,r){return e.text().then((function(n){let i=n +try{i=JSON.parse(n)}catch(o){if(!(o instanceof SyntaxError))throw o +const s=e.status +!e.ok||204!==s&&205!==s&&"HEAD"!==r.method?(0,t.debug)(`This response was unable to be parsed as json: ${n}`):i=void 0}return i}))}})),define("ember-fetch/utils/mung-options-for-fetch",["exports","@ember/polyfills","ember-fetch/utils/serialize-query-params","ember-fetch/types"],(function(e,t,r,n){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){const i=(0,t.assign)({credentials:"same-origin"},e) +if(i.method=(i.method||i.type||"GET").toUpperCase(),i.data)if("GET"===i.method||"HEAD"===i.method){if(Object.keys(i.data).length){const e=i.url.indexOf("?")>-1?"&":"?" +i.url+=`${e}${(0,r.serializeQueryParams)(i.data)}`}}else(0,n.isPlainObject)(i.data)?i.body=JSON.stringify(i.data):i.body=i.data +return i}})),define("ember-fetch/utils/serialize-query-params",["exports","ember-fetch/types"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,e.serializeQueryParams=n +const r=/\[\]$/ +function n(e){var n=[] +return function e(o,s){var a,l,u +if(o)if(Array.isArray(s))for(a=0,l=s.length;a1){let e=t[0] +return"component"===e||"helper"===e||"modifier"===e||"template"===e&&0===t[1].indexOf("components/")?e+":"+t[1].replace(/_/g,"-"):e+":"+(0,i.dasherize)(t[1].replace(/\./g,"/"))}return e}pluralize(e){return this.pluralizedTypes[e]||(this.pluralizedTypes[e]=e+"s")}podBasedLookupWithPrefix(e,t){let r=t.fullNameWithoutType +return"template"===t.type&&(r=r.replace(/^components\//,"")),e+"/"+r+"/"+t.type}podBasedModuleName(e){let t=this.namespace.podModulePrefix||this.namespace.modulePrefix +return this.podBasedLookupWithPrefix(t,e)}podBasedComponentsInSubdir(e){let t=this.namespace.podModulePrefix||this.namespace.modulePrefix +if(t+="/components","component"===e.type||/^components/.test(e.fullNameWithoutType))return this.podBasedLookupWithPrefix(t,e)}resolveEngine(e){let t=e.fullNameWithoutType+"/engine" +if(this._moduleRegistry.has(t))return this._extractDefaultExport(t)}resolveRouteMap(e){let t=e.fullNameWithoutType,r=t+"/routes" +if(this._moduleRegistry.has(r)){let e=this._extractDefaultExport(r) +return e}}resolveTemplate(e){let r=this.resolveOther(e) +return null==r&&(r=t.default.TEMPLATES[e.fullNameWithoutType]),r}mainModuleName(e){if("main"===e.fullNameWithoutType)return e.prefix+"/"+e.type}defaultModuleName(e){return e.prefix+"/"+this.pluralize(e.type)+"/"+e.fullNameWithoutType}nestedColocationComponentModuleName(e){if("component"===e.type)return e.prefix+"/"+this.pluralize(e.type)+"/"+e.fullNameWithoutType+"/index"}prefix(e){let t=this.namespace.modulePrefix +return this.namespace[e.type+"Prefix"]&&(t=this.namespace[e.type+"Prefix"]),t}findModuleName(e,t){let r,n=this.moduleNameLookupPatterns +for(let i=0,o=n.length;i60?".":new Array(60-r.fullName.length).join("."),n||(n=this.lookupDescription(r)),console&&console.info&&console.info(o,r.fullName,i,n)}knownForType(e){let t=this._moduleRegistry.moduleNames(),r=Object.create(null) +for(let n=0,i=t.length;nn.length+i.length)return e+":"+t.slice(o+n.length,s) +let a=r+"/"+this.pluralize(e)+"/" +return 0===t.indexOf(a)&&t.length>a.length?e+":"+t.slice(a.length):void 0}_extractDefaultExport(e){let t=this._moduleRegistry.get(e,null,null,!0) +return t&&t.default&&(t=t.default),t}}s(l,"moduleBasedResolver",!0) +e.default=l})),define("ember-resolver/string/cache",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0 +e.default=class{constructor(e,t,r){this.limit=e,this.func=t,this.store=r,this.size=0,this.misses=0,this.hits=0,this.store=r||new Map}get(e){let t=this.store.get(e) +return this.store.has(e)?(this.hits++,this.store.get(e)):(this.misses++,t=this.set(e,this.func(e)),t)}set(e,t){return this.limit>this.size&&(this.size++,this.store.set(e,t)),t}purge(){this.store.clear(),this.size=0,this.hits=0,this.misses=0}}})),define("ember-resolver/string/index",["exports","ember-resolver/string/cache"],(function(e,t){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.classify=function(e){return l.get(e)},e.dasherize=function(e){return i.get(e)},e.decamelize=f,e.getString=function(e){return r[e]},e.getStrings=function(){return r},e.setStrings=function(e){r=e},e.underscore=function(e){return d.get(e)} +let r={} +const n=/[ _]/g,i=new t.default(1e3,(e=>f(e).replace(n,"-"))),o=/^(\-|_)+(.)?/,s=/(.)(\-|\_|\.|\s)+(.)?/g,a=/(^|\/|\.)([a-z])/g,l=new t.default(1e3,(e=>{const t=(e,t,r)=>r?`_${r.toUpperCase()}`:"",r=(e,t,r,n)=>t+(n?n.toUpperCase():""),n=e.split("/") +for(let i=0;ie.toUpperCase()))})),u=/([a-z\d])([A-Z]+)/g,c=/\-|\s+/g,d=new t.default(1e3,(e=>e.replace(u,"$1_$2").replace(c,"_").toLowerCase())),h=/([a-z\d])([A-Z])/g,p=new t.default(1e3,(e=>e.replace(h,"$1_$2").toLowerCase())) +function f(e){return p.get(e)}})) +define("ember-resolver/utils/class-factory",["exports"],(function(e){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.default=function(e){return{create:t=>"function"==typeof e.extend?e.extend(t):e}}})),define("ember-test-waiters/index",["exports","@ember/debug","@ember/test-waiters"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),Object.keys(r).forEach((function(t){"default"!==t&&"__esModule"!==t&&(t in e&&e[t]===r[t]||Object.defineProperty(e,t,{enumerable:!0,get:function(){return r[t]}}))}))})),define("ember-tracked-storage-polyfill/index",["exports","@glimmer/tracking","@ember/debug"],(function(e,t,r){"use strict" +Object.defineProperty(e,"__esModule",{value:!0}),e.createStorage=function(e,t=o){return new i(e,t)},e.getValue=function(e){return e._value},e.setValue=function(e,t){const{_isEqual:r,_lastValue:n}=e +r(t,n)||(e._value=e._lastValue=t)} +var n=function(e,t,r,n){var i,o=arguments.length,s=o<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n +if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n) +else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(o<3?i(s):o>3?i(t,r,s):i(t,r))||s) +return o>3&&s&&Object.defineProperty(t,r,s),s} +class i{constructor(e,t){this._value=this._lastValue=e,this._isEqual=t}}function o(e,t){return e===t}n([t.tracked],i.prototype,"_value",void 0)})) diff --git a/ember/ember-git-07-53b2de8e.template-compiler.js b/ember/ember-git-07-53b2de8e.template-compiler.js new file mode 100644 index 0000000..089c399 --- /dev/null +++ b/ember/ember-git-07-53b2de8e.template-compiler.js @@ -0,0 +1,18886 @@ +/*! + * @overview Ember - JavaScript Application Framework + * @copyright Copyright 2011 Tilde Inc. and contributors + * Portions Copyright 2006-2011 Strobe Inc. + * Portions Copyright 2008-2011 Apple Inc. All rights reserved. + * @license Licensed under MIT license + * See https://raw.github.com/emberjs/ember.js/master/LICENSE + * @version 5.10.0-alpha.1+53b2de8e + */ +/* eslint-disable no-var */ +/* globals global globalThis self */ +/* eslint-disable-next-line no-unused-vars */ +var define, require; + +(function () { + var globalObj = + typeof globalThis !== 'undefined' + ? globalThis + : typeof self !== 'undefined' + ? self + : typeof window !== 'undefined' + ? window + : typeof global !== 'undefined' + ? global + : null; + + if (globalObj === null) { + throw new Error('unable to locate global object'); + } + + if (typeof globalObj.define === 'function' && typeof globalObj.require === 'function') { + define = globalObj.define; + require = globalObj.require; + + return; + } + + var registry = Object.create(null); + var seen = Object.create(null); + + function missingModule(name, referrerName) { + if (referrerName) { + throw new Error('Could not find module ' + name + ' required by: ' + referrerName); + } else { + throw new Error('Could not find module ' + name); + } + } + + function internalRequire(_name, referrerName) { + var name = _name; + var mod = registry[name]; + + if (!mod) { + name = name + '/index'; + mod = registry[name]; + } + + var exports = seen[name]; + + if (exports !== undefined) { + return exports; + } + + exports = seen[name] = {}; + + if (!mod) { + missingModule(_name, referrerName); + } + + var deps = mod.deps; + var callback = mod.callback; + var reified = new Array(deps.length); + + for (var i = 0; i < deps.length; i++) { + if (deps[i] === 'exports') { + reified[i] = exports; + } else if (deps[i] === 'require') { + reified[i] = require; + } else { + reified[i] = require(deps[i], name); + } + } + + var result = callback.apply(this, reified); + if (!deps.includes('exports') || result !== undefined) { + exports = result; + } + + return exports; + } + + require = function (name) { + return internalRequire(name, null); + }; + + define = function (name, deps, callback) { + registry[name] = { deps: deps, callback: callback }; + }; + + // setup `require` module + require['default'] = require; + + require.has = function registryHas(moduleName) { + return Boolean(registry[moduleName]) || Boolean(registry[moduleName + '/index']); + }; + + require._eak_seen = require.entries = registry; +})(); +(function (ember, emberGlimmer, templateCompilation, emberApp) { + 'use strict'; + + function _interopNamespaceDefault(e) { + const n = Object.create(null, { [Symbol.toStringTag]: { value: 'Module' } }); + if (e) { + for (const k in e) { + if (k !== 'default') { + const d = Object.getOwnPropertyDescriptor(e, k); + Object.defineProperty(n, k, d.get ? d : { + enumerable: true, + get: () => e[k] + }); + } + } + } + n.default = e; + return n; + } + + const emberGlimmer__namespace = /*#__PURE__*/_interopNamespaceDefault(emberGlimmer); + const emberApp__namespace = /*#__PURE__*/_interopNamespaceDefault(emberApp); + + function d(name, mod) { + Object.defineProperty(mod, '__esModule', { value: true }); + define(name, [], () => mod); + } + + // check if window exists and actually is the global + const hasDom = typeof self === 'object' && self !== null && self.Object === Object && typeof Window !== 'undefined' && self.constructor === Window && typeof document === 'object' && document !== null && self.document === document && typeof location === 'object' && location !== null && self.location === location && typeof history === 'object' && history !== null && self.history === history && typeof navigator === 'object' && navigator !== null && self.navigator === navigator && typeof navigator.userAgent === 'string'; + + const window$1 = hasDom ? self : null; + const location$1 = hasDom ? self.location : null; + const history$1 = hasDom ? self.history : null; + const userAgent = hasDom ? self.navigator.userAgent : 'Lynx (textmode)'; + const isChrome = hasDom ? typeof chrome === 'object' && !(typeof opera === 'object') : false; + const isFirefox = hasDom ? /Firefox|FxiOS/.test(userAgent) : false; + + const emberinternalsBrowserEnvironmentIndex = /*#__PURE__*/Object.defineProperty({ + __proto__: null, + hasDOM: hasDom, + history: history$1, + isChrome, + isFirefox, + location: location$1, + userAgent, + window: window$1 + }, Symbol.toStringTag, { value: 'Module' }); + + /* globals window, self */ + + // from lodash to catch fake globals + function checkGlobal(value) { + return value && value.Object === Object ? value : undefined; + } + + // element ids can ruin global miss checks + function checkElementIdShadowing(value) { + return value && value.nodeType === undefined ? value : undefined; + } + // export real global + const global$1 = checkGlobal(checkElementIdShadowing(typeof global === 'object' && global)) || checkGlobal(typeof self === 'object' && self) || checkGlobal(typeof window === 'object' && window) || typeof mainContext !== 'undefined' && mainContext || + // set before strict mode in Ember loader/wrapper + new Function('return this')(); // eval outside of strict mode + + // legacy imports/exports/lookup stuff (should we keep this??) + const context = function (global, Ember) { + return Ember === undefined ? { + imports: global, + exports: global, + lookup: global + } : { + // import jQuery + imports: Ember.imports || global, + // export Ember + exports: Ember.exports || global, + // search for Namespaces + lookup: Ember.lookup || global + }; + }(global$1, global$1.Ember); + function getLookup() { + return context.lookup; + } + function setLookup(value) { + context.lookup = value; + } + + /** + The hash of environment variables used to control various configuration + settings. To specify your own or override default settings, add the + desired properties to a global hash named `EmberENV` (or `ENV` for + backwards compatibility with earlier versions of Ember). The `EmberENV` + hash must be created before loading Ember. + + @class EmberENV + @type Object + @public + */ + const ENV = { + ENABLE_OPTIONAL_FEATURES: false, + /** + Determines whether Ember should add to `Array` + native object prototypes, a few extra methods in order to provide a more + friendly API. + We generally recommend leaving this option set to true however, if you need + to turn it off, you can add the configuration property + `EXTEND_PROTOTYPES` to `EmberENV` and set it to `false`. + Note, when disabled (the default configuration for Ember Addons), you will + instead have to access all methods and functions from the Ember + namespace. + @property EXTEND_PROTOTYPES + @type Boolean + @default true + @for EmberENV + @public + */ + EXTEND_PROTOTYPES: { + Array: true + }, + /** + The `LOG_STACKTRACE_ON_DEPRECATION` property, when true, tells Ember to log + a full stack trace during deprecation warnings. + @property LOG_STACKTRACE_ON_DEPRECATION + @type Boolean + @default true + @for EmberENV + @public + */ + LOG_STACKTRACE_ON_DEPRECATION: true, + /** + The `LOG_VERSION` property, when true, tells Ember to log versions of all + dependent libraries in use. + @property LOG_VERSION + @type Boolean + @default true + @for EmberENV + @public + */ + LOG_VERSION: true, + RAISE_ON_DEPRECATION: false, + STRUCTURED_PROFILE: false, + /** + Whether to perform extra bookkeeping needed to make the `captureRenderTree` + API work. + This has to be set before the ember JavaScript code is evaluated. This is + usually done by setting `window.EmberENV = { _DEBUG_RENDER_TREE: true };` + before the "vendor" `'; + }; + return EventedTokenizer; + }(); + var Tokenizer = /** @class */function () { + function Tokenizer(entityParser, options) { + if (options === void 0) { + options = {}; + } + this.options = options; + this.token = null; + this.startLine = 1; + this.startColumn = 0; + this.tokens = []; + this.tokenizer = new EventedTokenizer(this, entityParser, options.mode); + this._currentAttribute = undefined; + } + Tokenizer.prototype.tokenize = function (input) { + this.tokens = []; + this.tokenizer.tokenize(input); + return this.tokens; + }; + Tokenizer.prototype.tokenizePart = function (input) { + this.tokens = []; + this.tokenizer.tokenizePart(input); + return this.tokens; + }; + Tokenizer.prototype.tokenizeEOF = function () { + this.tokens = []; + this.tokenizer.tokenizeEOF(); + return this.tokens[0]; + }; + Tokenizer.prototype.reset = function () { + this.token = null; + this.startLine = 1; + this.startColumn = 0; + }; + Tokenizer.prototype.current = function () { + var token = this.token; + if (token === null) { + throw new Error('token was unexpectedly null'); + } + if (arguments.length === 0) { + return token; + } + for (var i = 0; i < arguments.length; i++) { + if (token.type === arguments[i]) { + return token; + } + } + throw new Error("token type was unexpectedly " + token.type); + }; + Tokenizer.prototype.push = function (token) { + this.token = token; + this.tokens.push(token); + }; + Tokenizer.prototype.currentAttribute = function () { + return this._currentAttribute; + }; + Tokenizer.prototype.addLocInfo = function () { + if (this.options.loc) { + this.current().loc = { + start: { + line: this.startLine, + column: this.startColumn + }, + end: { + line: this.tokenizer.line, + column: this.tokenizer.column + } + }; + } + this.startLine = this.tokenizer.line; + this.startColumn = this.tokenizer.column; + }; + // Data + Tokenizer.prototype.beginDoctype = function () { + this.push({ + type: "Doctype" /* Doctype */, + name: '' + }); + }; + Tokenizer.prototype.appendToDoctypeName = function (char) { + this.current("Doctype" /* Doctype */).name += char; + }; + Tokenizer.prototype.appendToDoctypePublicIdentifier = function (char) { + var doctype = this.current("Doctype" /* Doctype */); + if (doctype.publicIdentifier === undefined) { + doctype.publicIdentifier = char; + } else { + doctype.publicIdentifier += char; + } + }; + Tokenizer.prototype.appendToDoctypeSystemIdentifier = function (char) { + var doctype = this.current("Doctype" /* Doctype */); + if (doctype.systemIdentifier === undefined) { + doctype.systemIdentifier = char; + } else { + doctype.systemIdentifier += char; + } + }; + Tokenizer.prototype.endDoctype = function () { + this.addLocInfo(); + }; + Tokenizer.prototype.beginData = function () { + this.push({ + type: "Chars" /* Chars */, + chars: '' + }); + }; + Tokenizer.prototype.appendToData = function (char) { + this.current("Chars" /* Chars */).chars += char; + }; + Tokenizer.prototype.finishData = function () { + this.addLocInfo(); + }; + // Comment + Tokenizer.prototype.beginComment = function () { + this.push({ + type: "Comment" /* Comment */, + chars: '' + }); + }; + Tokenizer.prototype.appendToCommentData = function (char) { + this.current("Comment" /* Comment */).chars += char; + }; + Tokenizer.prototype.finishComment = function () { + this.addLocInfo(); + }; + // Tags - basic + Tokenizer.prototype.tagOpen = function () {}; + Tokenizer.prototype.beginStartTag = function () { + this.push({ + type: "StartTag" /* StartTag */, + tagName: '', + attributes: [], + selfClosing: false + }); + }; + Tokenizer.prototype.beginEndTag = function () { + this.push({ + type: "EndTag" /* EndTag */, + tagName: '' + }); + }; + Tokenizer.prototype.finishTag = function () { + this.addLocInfo(); + }; + Tokenizer.prototype.markTagAsSelfClosing = function () { + this.current("StartTag" /* StartTag */).selfClosing = true; + }; + // Tags - name + Tokenizer.prototype.appendToTagName = function (char) { + this.current("StartTag" /* StartTag */, "EndTag" /* EndTag */).tagName += char; + }; + // Tags - attributes + Tokenizer.prototype.beginAttribute = function () { + this._currentAttribute = ['', '', false]; + }; + Tokenizer.prototype.appendToAttributeName = function (char) { + this.currentAttribute()[0] += char; + }; + Tokenizer.prototype.beginAttributeValue = function (isQuoted) { + this.currentAttribute()[2] = isQuoted; + }; + Tokenizer.prototype.appendToAttributeValue = function (char) { + this.currentAttribute()[1] += char; + }; + Tokenizer.prototype.finishAttributeValue = function () { + this.current("StartTag" /* StartTag */).attributes.push(this._currentAttribute); + }; + Tokenizer.prototype.reportSyntaxError = function (message) { + this.current().syntaxError = message; + }; + return Tokenizer; + }(); + function tokenize(input, options) { + var tokenizer = new Tokenizer(new EntityParser(namedCharRefs), options); + return tokenizer.tokenize(input); + } + + const simpleHtmlTokenizer = /*#__PURE__*/Object.defineProperty({ + __proto__: null, + EntityParser, + EventedTokenizer, + HTML5NamedCharRefs: namedCharRefs, + Tokenizer, + tokenize + }, Symbol.toStringTag, { value: 'Module' }); + + var Char = /*#__PURE__*/function (Char) { + Char[Char["NBSP"] = 160] = "NBSP"; + Char[Char["QUOT"] = 34] = "QUOT"; + Char[Char["LT"] = 60] = "LT"; + Char[Char["GT"] = 62] = "GT"; + Char[Char["AMP"] = 38] = "AMP"; + return Char; + }(Char || {}); + const ATTR_VALUE_REGEX_TEST = /["&\xA0]/u; + const ATTR_VALUE_REGEX_REPLACE = new RegExp(ATTR_VALUE_REGEX_TEST.source, 'gu'); + const TEXT_REGEX_TEST = /[&<>\xA0]/u; + const TEXT_REGEX_REPLACE = new RegExp(TEXT_REGEX_TEST.source, 'gu'); + function attrValueReplacer(char) { + switch (char.charCodeAt(0)) { + case Char.NBSP: + return ' '; + case Char.QUOT: + return '"'; + case Char.AMP: + return '&'; + default: + return char; + } + } + function textReplacer(char) { + switch (char.charCodeAt(0)) { + case Char.NBSP: + return ' '; + case Char.AMP: + return '&'; + case Char.LT: + return '<'; + case Char.GT: + return '>'; + default: + return char; + } + } + function escapeAttrValue(attrValue) { + if (ATTR_VALUE_REGEX_TEST.test(attrValue)) { + return attrValue.replace(ATTR_VALUE_REGEX_REPLACE, attrValueReplacer); + } + return attrValue; + } + function escapeText(text) { + if (TEXT_REGEX_TEST.test(text)) { + return text.replace(TEXT_REGEX_REPLACE, textReplacer); + } + return text; + } + function sortByLoc(a, b) { + // If either is invisible, don't try to order them + if (a.loc.isInvisible || b.loc.isInvisible) { + return 0; + } + if (a.loc.startPosition.line < b.loc.startPosition.line) { + return -1; + } + if (a.loc.startPosition.line === b.loc.startPosition.line && a.loc.startPosition.column < b.loc.startPosition.column) { + return -1; + } + if (a.loc.startPosition.line === b.loc.startPosition.line && a.loc.startPosition.column === b.loc.startPosition.column) { + return 0; + } + return 1; + } + const voidMap = new Set(['area', 'base', 'br', 'col', 'command', 'embed', 'hr', 'img', 'input', 'keygen', 'link', 'meta', 'param', 'source', 'track', 'wbr']); + function getVoidTags() { + return [...voidMap]; + } + const NON_WHITESPACE = /^\S/u; + /** + * Examples when true: + * - link + * - liNK + * + * Examples when false: + * - Link (component) + */ + function isVoidTag(tag) { + return voidMap.has(tag.toLowerCase()) && tag[0]?.toLowerCase() === tag[0]; + } + class Printer { + buffer = ''; + options; + constructor(options) { + this.options = options; + } + + /* + This is used by _all_ methods on this Printer class that add to `this.buffer`, + it allows consumers of the printer to use alternate string representations for + a given node. + The primary use case for this are things like source -> source codemod utilities. + For example, ember-template-recast attempts to always preserve the original string + formatting in each AST node if no modifications are made to it. + */ + handledByOverride(node, ensureLeadingWhitespace = false) { + if (this.options.override !== undefined) { + let result = this.options.override(node, this.options); + if (typeof result === 'string') { + if (ensureLeadingWhitespace && NON_WHITESPACE.test(result)) { + result = ` ${result}`; + } + this.buffer += result; + return true; + } + } + return false; + } + Node(node) { + switch (node.type) { + case 'MustacheStatement': + case 'BlockStatement': + case 'MustacheCommentStatement': + case 'CommentStatement': + case 'TextNode': + case 'ElementNode': + case 'AttrNode': + case 'Block': + case 'Template': + return this.TopLevelStatement(node); + case 'StringLiteral': + case 'BooleanLiteral': + case 'NumberLiteral': + case 'UndefinedLiteral': + case 'NullLiteral': + case 'PathExpression': + case 'SubExpression': + return this.Expression(node); + case 'ConcatStatement': + // should have an AttrNode parent + return this.ConcatStatement(node); + case 'Hash': + return this.Hash(node); + case 'HashPair': + return this.HashPair(node); + case 'ElementModifierStatement': + return this.ElementModifierStatement(node); + } + } + Expression(expression) { + switch (expression.type) { + case 'StringLiteral': + case 'BooleanLiteral': + case 'NumberLiteral': + case 'UndefinedLiteral': + case 'NullLiteral': + return this.Literal(expression); + case 'PathExpression': + return this.PathExpression(expression); + case 'SubExpression': + return this.SubExpression(expression); + } + } + Literal(literal) { + switch (literal.type) { + case 'StringLiteral': + return this.StringLiteral(literal); + case 'BooleanLiteral': + return this.BooleanLiteral(literal); + case 'NumberLiteral': + return this.NumberLiteral(literal); + case 'UndefinedLiteral': + return this.UndefinedLiteral(literal); + case 'NullLiteral': + return this.NullLiteral(literal); + } + } + TopLevelStatement(statement) { + switch (statement.type) { + case 'MustacheStatement': + return this.MustacheStatement(statement); + case 'BlockStatement': + return this.BlockStatement(statement); + case 'MustacheCommentStatement': + return this.MustacheCommentStatement(statement); + case 'CommentStatement': + return this.CommentStatement(statement); + case 'TextNode': + return this.TextNode(statement); + case 'ElementNode': + return this.ElementNode(statement); + case 'Block': + return this.Block(statement); + case 'Template': + return this.Template(statement); + case 'AttrNode': + // should have element + return this.AttrNode(statement); + } + } + Template(template) { + this.TopLevelStatements(template.body); + } + Block(block) { + /* + When processing a template like: + ```hbs + {{#if whatever}} + whatever + {{else if somethingElse}} + something else + {{else}} + fallback + {{/if}} + ``` + The AST still _effectively_ looks like: + ```hbs + {{#if whatever}} + whatever + {{else}}{{#if somethingElse}} + something else + {{else}} + fallback + {{/if}}{{/if}} + ``` + The only way we can tell if that is the case is by checking for + `block.chained`, but unfortunately when the actual statements are + processed the `block.body[0]` node (which will always be a + `BlockStatement`) has no clue that its ancestor `Block` node was + chained. + This "forwards" the `chained` setting so that we can check + it later when processing the `BlockStatement`. + */ + if (block.chained) { + let firstChild = block.body[0]; + firstChild.chained = true; + } + if (this.handledByOverride(block)) { + return; + } + this.TopLevelStatements(block.body); + } + TopLevelStatements(statements) { + statements.forEach(statement => this.TopLevelStatement(statement)); + } + ElementNode(el) { + if (this.handledByOverride(el)) { + return; + } + this.OpenElementNode(el); + this.TopLevelStatements(el.children); + this.CloseElementNode(el); + } + OpenElementNode(el) { + this.buffer += `<${el.tag}`; + const parts = [...el.attributes, ...el.modifiers, ...el.comments].sort(sortByLoc); + for (const part of parts) { + this.buffer += ' '; + switch (part.type) { + case 'AttrNode': + this.AttrNode(part); + break; + case 'ElementModifierStatement': + this.ElementModifierStatement(part); + break; + case 'MustacheCommentStatement': + this.MustacheCommentStatement(part); + break; + } + } + if (el.blockParams.length) { + this.BlockParams(el.blockParams); + } + if (el.selfClosing) { + this.buffer += ' /'; + } + this.buffer += '>'; + } + CloseElementNode(el) { + if (el.selfClosing || isVoidTag(el.tag)) { + return; + } + this.buffer += ``; + } + AttrNode(attr) { + if (this.handledByOverride(attr)) { + return; + } + let { + name, + value + } = attr; + this.buffer += name; + if (value.type !== 'TextNode' || value.chars.length > 0) { + this.buffer += '='; + this.AttrNodeValue(value); + } + } + AttrNodeValue(value) { + if (value.type === 'TextNode') { + this.buffer += '"'; + this.TextNode(value, true); + this.buffer += '"'; + } else { + this.Node(value); + } + } + TextNode(text, isAttr) { + if (this.handledByOverride(text)) { + return; + } + if (this.options.entityEncoding === 'raw') { + this.buffer += text.chars; + } else if (isAttr) { + this.buffer += escapeAttrValue(text.chars); + } else { + this.buffer += escapeText(text.chars); + } + } + MustacheStatement(mustache) { + if (this.handledByOverride(mustache)) { + return; + } + this.buffer += mustache.trusting ? '{{{' : '{{'; + if (mustache.strip.open) { + this.buffer += '~'; + } + this.Expression(mustache.path); + this.Params(mustache.params); + this.Hash(mustache.hash); + if (mustache.strip.close) { + this.buffer += '~'; + } + this.buffer += mustache.trusting ? '}}}' : '}}'; + } + BlockStatement(block) { + if (this.handledByOverride(block)) { + return; + } + if (block.chained) { + this.buffer += block.inverseStrip.open ? '{{~' : '{{'; + this.buffer += 'else '; + } else { + this.buffer += block.openStrip.open ? '{{~#' : '{{#'; + } + this.Expression(block.path); + this.Params(block.params); + this.Hash(block.hash); + if (block.program.blockParams.length) { + this.BlockParams(block.program.blockParams); + } + if (block.chained) { + this.buffer += block.inverseStrip.close ? '~}}' : '}}'; + } else { + this.buffer += block.openStrip.close ? '~}}' : '}}'; + } + this.Block(block.program); + if (block.inverse) { + if (!block.inverse.chained) { + this.buffer += block.inverseStrip.open ? '{{~' : '{{'; + this.buffer += 'else'; + this.buffer += block.inverseStrip.close ? '~}}' : '}}'; + } + this.Block(block.inverse); + } + if (!block.chained) { + this.buffer += block.closeStrip.open ? '{{~/' : '{{/'; + this.Expression(block.path); + this.buffer += block.closeStrip.close ? '~}}' : '}}'; + } + } + BlockParams(blockParams) { + this.buffer += ` as |${blockParams.join(' ')}|`; + } + ConcatStatement(concat) { + if (this.handledByOverride(concat)) { + return; + } + this.buffer += '"'; + concat.parts.forEach(part => { + if (part.type === 'TextNode') { + this.TextNode(part, true); + } else { + this.Node(part); + } + }); + this.buffer += '"'; + } + MustacheCommentStatement(comment) { + if (this.handledByOverride(comment)) { + return; + } + this.buffer += `{{!--${comment.value}--}}`; + } + ElementModifierStatement(mod) { + if (this.handledByOverride(mod)) { + return; + } + this.buffer += '{{'; + this.Expression(mod.path); + this.Params(mod.params); + this.Hash(mod.hash); + this.buffer += '}}'; + } + CommentStatement(comment) { + if (this.handledByOverride(comment)) { + return; + } + this.buffer += ``; + } + PathExpression(path) { + if (this.handledByOverride(path)) { + return; + } + this.buffer += path.original; + } + SubExpression(sexp) { + if (this.handledByOverride(sexp)) { + return; + } + this.buffer += '('; + this.Expression(sexp.path); + this.Params(sexp.params); + this.Hash(sexp.hash); + this.buffer += ')'; + } + Params(params) { + // TODO: implement a top level Params AST node (just like the Hash object) + // so that this can also be overridden + if (params.length) { + params.forEach(param => { + this.buffer += ' '; + this.Expression(param); + }); + } + } + Hash(hash) { + if (this.handledByOverride(hash, true)) { + return; + } + hash.pairs.forEach(pair => { + this.buffer += ' '; + this.HashPair(pair); + }); + } + HashPair(pair) { + if (this.handledByOverride(pair)) { + return; + } + this.buffer += pair.key; + this.buffer += '='; + this.Node(pair.value); + } + StringLiteral(str) { + if (this.handledByOverride(str)) { + return; + } + this.buffer += JSON.stringify(str.value); + } + BooleanLiteral(bool) { + if (this.handledByOverride(bool)) { + return; + } + this.buffer += bool.value; + } + NumberLiteral(number) { + if (this.handledByOverride(number)) { + return; + } + this.buffer += number.value; + } + UndefinedLiteral(node) { + if (this.handledByOverride(node)) { + return; + } + this.buffer += 'undefined'; + } + NullLiteral(node) { + if (this.handledByOverride(node)) { + return; + } + this.buffer += 'null'; + } + print(node) { + let { + options + } = this; + if (options.override) { + let result = options.override(node, options); + if (result !== undefined) { + return result; + } + } + this.buffer = ''; + this.Node(node); + return this.buffer; + } + } + function build(ast, options = { + entityEncoding: 'transformed' + }) { + if (!ast) { + return ''; + } + let printer = new Printer(options); + return printer.print(ast); + } + function isKeyword(word, type) { + if (word in KEYWORDS_TYPES) { + if (type === undefined) { + return true; + } else { + let types = KEYWORDS_TYPES[word]; + // This seems like a TypeScript bug – it inferred types as never[]? + return types.includes(type); + } + } else { + return false; + } + } + + /** + * This includes the full list of keywords currently in use in the template + * language, and where their valid usages are. + */ + const KEYWORDS_TYPES = { + action: ['Call', 'Modifier'], + component: ['Call', 'Append', 'Block'], + debugger: ['Append'], + 'each-in': ['Block'], + each: ['Block'], + 'has-block-params': ['Call', 'Append'], + 'has-block': ['Call', 'Append'], + helper: ['Call', 'Append'], + if: ['Call', 'Append', 'Block'], + 'in-element': ['Block'], + let: ['Block'], + log: ['Call', 'Append'], + modifier: ['Call', 'Modifier'], + mount: ['Append'], + mut: ['Call', 'Append'], + outlet: ['Append'], + readonly: ['Call', 'Append'], + unbound: ['Call', 'Append'], + unless: ['Call', 'Append', 'Block'], + yield: ['Append'] + }; + const UNKNOWN_POSITION = Object.freeze({ + line: 1, + column: 0 + }); + const SYNTHETIC_LOCATION = Object.freeze({ + source: '(synthetic)', + start: UNKNOWN_POSITION, + end: UNKNOWN_POSITION + }); + const NON_EXISTENT_LOCATION = Object.freeze({ + source: '(nonexistent)', + start: UNKNOWN_POSITION, + end: UNKNOWN_POSITION + }); + const BROKEN_LOCATION = Object.freeze({ + source: '(broken)', + start: UNKNOWN_POSITION, + end: UNKNOWN_POSITION + }); + let OffsetKind = /*#__PURE__*/function (OffsetKind) { + OffsetKind["CharPosition"] = "CharPosition"; + OffsetKind["HbsPosition"] = "HbsPosition"; + OffsetKind["InternalsSynthetic"] = "InternalsSynthetic"; + OffsetKind["NonExistent"] = "NonExistent"; + OffsetKind["Broken"] = "Broken"; + return OffsetKind; + }({}); + + /** + * This file implements the DSL used by span and offset in places where they need to exhaustively + * consider all combinations of states (Handlebars offsets, character offsets and invisible/broken + * offsets). + * + * It's probably overkill, but it makes the code that uses it clear. It could be refactored or + * removed. + */ + + const MatchAny = 'MATCH_ANY'; + const IsInvisible = 'IS_INVISIBLE'; + class WhenList { + _whens; + constructor(whens) { + this._whens = whens; + } + first(kind) { + for (const when of this._whens) { + const value = when.match(kind); + if (isPresentArray(value)) { + return value[0]; + } + } + return null; + } + } + class When { + _map = new Map(); + get(pattern, or) { + let value = this._map.get(pattern); + if (value) { + return value; + } + value = or(); + this._map.set(pattern, value); + return value; + } + add(pattern, out) { + this._map.set(pattern, out); + } + match(kind) { + const pattern = patternFor(kind); + const out = []; + const exact = this._map.get(pattern); + const fallback = this._map.get(MatchAny); + if (exact) { + out.push(exact); + } + if (fallback) { + out.push(fallback); + } + return out; + } + } + function match(callback) { + return callback(new Matcher()).check(); + } + class Matcher { + _whens = new When(); + + /** + * You didn't exhaustively match all possibilities. + */ + check() { + return (left, right) => this.matchFor(left.kind, right.kind)(left, right); + } + matchFor(left, right) { + const nesteds = this._whens.match(left); + debugAssert(isPresentArray(nesteds), `no match defined for (${left}, ${right}) and no AnyMatch defined either`); + const callback = new WhenList(nesteds).first(right); + debugAssert(callback !== null, `no match defined for (${left}, ${right}) and no AnyMatch defined either`); + return callback; + } + + // This big block is the bulk of the heavy lifting in this file. It facilitates exhaustiveness + // checking so that matchers can ensure they've actually covered all the cases (and TypeScript + // will treat it as an exhaustive match). + + when(left, right, callback) { + this._whens.get(left, () => new When()).add(right, callback); + return this; + } + } + function patternFor(kind) { + switch (kind) { + case OffsetKind.Broken: + case OffsetKind.InternalsSynthetic: + case OffsetKind.NonExistent: + return IsInvisible; + default: + return kind; + } + } + class SourceSlice { + static synthetic(chars) { + let offsets = SourceSpan.synthetic(chars); + return new SourceSlice({ + loc: offsets, + chars: chars + }); + } + static load(source, slice) { + return new SourceSlice({ + loc: SourceSpan.load(source, slice[1]), + chars: slice[0] + }); + } + chars; + loc; + constructor(options) { + this.loc = options.loc; + this.chars = options.chars; + } + getString() { + return this.chars; + } + serialize() { + return [this.chars, this.loc.serialize()]; + } + } + + /** + * All spans have these details in common. + */ + + /** + * A `SourceSpan` object represents a span of characters inside of a template source. + * + * There are three kinds of `SourceSpan` objects: + * + * - `ConcreteSourceSpan`, which contains byte offsets + * - `LazySourceSpan`, which contains `SourceLocation`s from the Handlebars AST, which can be + * converted to byte offsets on demand. + * - `InvisibleSourceSpan`, which represent source strings that aren't present in the source, + * because: + * - they were created synthetically + * - their location is nonsensical (the span is broken) + * - they represent nothing in the source (this currently happens only when a bug in the + * upstream Handlebars parser fails to assign a location to empty blocks) + * + * At a high level, all `SourceSpan` objects provide: + * + * - byte offsets + * - source in column and line format + * + * And you can do these operations on `SourceSpan`s: + * + * - collapse it to a `SourceSpan` representing its starting or ending position + * - slice out some characters, optionally skipping some characters at the beginning or end + * - create a new `SourceSpan` with a different starting or ending offset + * + * All SourceSpan objects implement `SourceLocation`, for compatibility. All SourceSpan + * objects have a `toJSON` that emits `SourceLocation`, also for compatibility. + * + * For compatibility, subclasses of `AbstractSourceSpan` must implement `locDidUpdate`, which + * happens when an AST plugin attempts to modify the `start` or `end` of a span directly. + * + * The goal is to avoid creating any problems for use-cases like AST Explorer. + */ + class SourceSpan { + static get NON_EXISTENT() { + return new InvisibleSpan(OffsetKind.NonExistent, NON_EXISTENT_LOCATION).wrap(); + } + static load(source, serialized) { + if (typeof serialized === 'number') { + return SourceSpan.forCharPositions(source, serialized, serialized); + } else if (typeof serialized === 'string') { + return SourceSpan.synthetic(serialized); + } else if (Array.isArray(serialized)) { + return SourceSpan.forCharPositions(source, serialized[0], serialized[1]); + } else if (serialized === OffsetKind.NonExistent) { + return SourceSpan.NON_EXISTENT; + } else if (serialized === OffsetKind.Broken) { + return SourceSpan.broken(BROKEN_LOCATION); + } + assertNever(serialized); + } + static forHbsLoc(source, loc) { + const start = new HbsPosition(source, loc.start); + const end = new HbsPosition(source, loc.end); + return new HbsSpan(source, { + start, + end + }, loc).wrap(); + } + static forCharPositions(source, startPos, endPos) { + const start = new CharPosition(source, startPos); + const end = new CharPosition(source, endPos); + return new CharPositionSpan(source, { + start, + end + }).wrap(); + } + static synthetic(chars) { + return new InvisibleSpan(OffsetKind.InternalsSynthetic, NON_EXISTENT_LOCATION, chars).wrap(); + } + static broken(pos = BROKEN_LOCATION) { + return new InvisibleSpan(OffsetKind.Broken, pos).wrap(); + } + isInvisible; + constructor(data) { + this.data = data; + this.isInvisible = data.kind !== OffsetKind.CharPosition && data.kind !== OffsetKind.HbsPosition; + } + getStart() { + return this.data.getStart().wrap(); + } + getEnd() { + return this.data.getEnd().wrap(); + } + get loc() { + const span = this.data.toHbsSpan(); + return span === null ? BROKEN_LOCATION : span.toHbsLoc(); + } + get module() { + return this.data.getModule(); + } + + /** + * Get the starting `SourcePosition` for this `SourceSpan`, lazily computing it if needed. + */ + get startPosition() { + return this.loc.start; + } + + /** + * Get the ending `SourcePosition` for this `SourceSpan`, lazily computing it if needed. + */ + get endPosition() { + return this.loc.end; + } + + /** + * Support converting ASTv1 nodes into a serialized format using JSON.stringify. + */ + toJSON() { + return this.loc; + } + + /** + * Create a new span with the current span's end and a new beginning. + */ + withStart(other) { + return span(other.data, this.data.getEnd()); + } + + /** + * Create a new span with the current span's beginning and a new ending. + */ + withEnd(other) { + return span(this.data.getStart(), other.data); + } + asString() { + return this.data.asString(); + } + + /** + * Convert this `SourceSpan` into a `SourceSlice`. In debug mode, this method optionally checks + * that the byte offsets represented by this `SourceSpan` actually correspond to the expected + * string. + */ + toSlice(expected) { + const chars = this.data.asString(); + { + if (expected !== undefined && chars !== expected) { + // eslint-disable-next-line no-console + console.warn(`unexpectedly found ${JSON.stringify(chars)} when slicing source, but expected ${JSON.stringify(expected)}`); + } + } + return new SourceSlice({ + loc: this, + chars: expected || chars + }); + } + + /** + * For compatibility with SourceLocation in AST plugins + * + * @deprecated use startPosition instead + */ + get start() { + return this.loc.start; + } + + /** + * For compatibility with SourceLocation in AST plugins + * + * @deprecated use withStart instead + */ + set start(position) { + this.data.locDidUpdate({ + start: position + }); + } + + /** + * For compatibility with SourceLocation in AST plugins + * + * @deprecated use endPosition instead + */ + get end() { + return this.loc.end; + } + + /** + * For compatibility with SourceLocation in AST plugins + * + * @deprecated use withEnd instead + */ + set end(position) { + this.data.locDidUpdate({ + end: position + }); + } + + /** + * For compatibility with SourceLocation in AST plugins + * + * @deprecated use module instead + */ + get source() { + return this.module; + } + collapse(where) { + switch (where) { + case 'start': + return this.getStart().collapsed(); + case 'end': + return this.getEnd().collapsed(); + } + } + extend(other) { + return span(this.data.getStart(), other.data.getEnd()); + } + serialize() { + return this.data.serialize(); + } + slice({ + skipStart = 0, + skipEnd = 0 + }) { + return span(this.getStart().move(skipStart).data, this.getEnd().move(-skipEnd).data); + } + sliceStartChars({ + skipStart = 0, + chars + }) { + return span(this.getStart().move(skipStart).data, this.getStart().move(skipStart + chars).data); + } + sliceEndChars({ + skipEnd = 0, + chars + }) { + return span(this.getEnd().move(skipEnd - chars).data, this.getStart().move(-skipEnd).data); + } + } + class CharPositionSpan { + kind = OffsetKind.CharPosition; + _locPosSpan = null; + constructor(source, charPositions) { + this.source = source; + this.charPositions = charPositions; + } + wrap() { + return new SourceSpan(this); + } + asString() { + return this.source.slice(this.charPositions.start.charPos, this.charPositions.end.charPos); + } + getModule() { + return this.source.module; + } + getStart() { + return this.charPositions.start; + } + getEnd() { + return this.charPositions.end; + } + locDidUpdate() {} + toHbsSpan() { + let locPosSpan = this._locPosSpan; + if (locPosSpan === null) { + const start = this.charPositions.start.toHbsPos(); + const end = this.charPositions.end.toHbsPos(); + if (start === null || end === null) { + locPosSpan = this._locPosSpan = BROKEN; + } else { + locPosSpan = this._locPosSpan = new HbsSpan(this.source, { + start, + end + }); + } + } + return locPosSpan === BROKEN ? null : locPosSpan; + } + serialize() { + const { + start: { + charPos: start + }, + end: { + charPos: end + } + } = this.charPositions; + if (start === end) { + return start; + } else { + return [start, end]; + } + } + toCharPosSpan() { + return this; + } + } + class HbsSpan { + kind = OffsetKind.HbsPosition; + _charPosSpan = null; + + // the source location from Handlebars + AST Plugins -- could be wrong + _providedHbsLoc; + constructor(source, hbsPositions, providedHbsLoc = null) { + this.source = source; + this.hbsPositions = hbsPositions; + this._providedHbsLoc = providedHbsLoc; + } + serialize() { + const charPos = this.toCharPosSpan(); + return charPos === null ? OffsetKind.Broken : charPos.wrap().serialize(); + } + wrap() { + return new SourceSpan(this); + } + updateProvided(pos, edge) { + if (this._providedHbsLoc) { + this._providedHbsLoc[edge] = pos; + } + + // invalidate computed character offsets + this._charPosSpan = null; + this._providedHbsLoc = { + start: pos, + end: pos + }; + } + locDidUpdate({ + start, + end + }) { + if (start !== undefined) { + this.updateProvided(start, 'start'); + this.hbsPositions.start = new HbsPosition(this.source, start, null); + } + if (end !== undefined) { + this.updateProvided(end, 'end'); + this.hbsPositions.end = new HbsPosition(this.source, end, null); + } + } + asString() { + const span = this.toCharPosSpan(); + return span === null ? '' : span.asString(); + } + getModule() { + return this.source.module; + } + getStart() { + return this.hbsPositions.start; + } + getEnd() { + return this.hbsPositions.end; + } + toHbsLoc() { + return { + start: this.hbsPositions.start.hbsPos, + end: this.hbsPositions.end.hbsPos + }; + } + toHbsSpan() { + return this; + } + toCharPosSpan() { + let charPosSpan = this._charPosSpan; + if (charPosSpan === null) { + const start = this.hbsPositions.start.toCharPos(); + const end = this.hbsPositions.end.toCharPos(); + if (start && end) { + charPosSpan = this._charPosSpan = new CharPositionSpan(this.source, { + start, + end + }); + } else { + charPosSpan = this._charPosSpan = BROKEN; + return null; + } + } + return charPosSpan === BROKEN ? null : charPosSpan; + } + } + class InvisibleSpan { + constructor(kind, + // whatever was provided, possibly broken + loc, + // if the span represents a synthetic string + string = null) { + this.kind = kind; + this.loc = loc; + this.string = string; + } + serialize() { + switch (this.kind) { + case OffsetKind.Broken: + case OffsetKind.NonExistent: + return this.kind; + case OffsetKind.InternalsSynthetic: + return this.string || ''; + } + } + wrap() { + return new SourceSpan(this); + } + asString() { + return this.string || ''; + } + locDidUpdate({ + start, + end + }) { + if (start !== undefined) { + this.loc.start = start; + } + if (end !== undefined) { + this.loc.end = end; + } + } + getModule() { + // TODO: Make this reflect the actual module this span originated from + return 'an unknown module'; + } + getStart() { + return new InvisiblePosition(this.kind, this.loc.start); + } + getEnd() { + return new InvisiblePosition(this.kind, this.loc.end); + } + toCharPosSpan() { + return this; + } + toHbsSpan() { + return null; + } + toHbsLoc() { + return BROKEN_LOCATION; + } + } + const span = match(m => m.when(OffsetKind.HbsPosition, OffsetKind.HbsPosition, (left, right) => new HbsSpan(left.source, { + start: left, + end: right + }).wrap()).when(OffsetKind.CharPosition, OffsetKind.CharPosition, (left, right) => new CharPositionSpan(left.source, { + start: left, + end: right + }).wrap()).when(OffsetKind.CharPosition, OffsetKind.HbsPosition, (left, right) => { + const rightCharPos = right.toCharPos(); + if (rightCharPos === null) { + return new InvisibleSpan(OffsetKind.Broken, BROKEN_LOCATION).wrap(); + } else { + return span(left, rightCharPos); + } + }).when(OffsetKind.HbsPosition, OffsetKind.CharPosition, (left, right) => { + const leftCharPos = left.toCharPos(); + if (leftCharPos === null) { + return new InvisibleSpan(OffsetKind.Broken, BROKEN_LOCATION).wrap(); + } else { + return span(leftCharPos, right); + } + }).when(IsInvisible, MatchAny, left => new InvisibleSpan(left.kind, BROKEN_LOCATION).wrap()).when(MatchAny, IsInvisible, (_, right) => new InvisibleSpan(right.kind, BROKEN_LOCATION).wrap())); + + /** + * All positions have these details in common. Most notably, all three kinds of positions can + * must be able to attempt to convert themselves into {@see CharPosition}. + */ + + /** + * Used to indicate that an attempt to convert a `SourcePosition` to a character offset failed. It + * is separate from `null` so that `null` can be used to indicate that the computation wasn't yet + * attempted (and therefore to cache the failure) + */ + const BROKEN = 'BROKEN'; + /** + * A `SourceOffset` represents a single position in the source. + * + * There are three kinds of backing data for `SourceOffset` objects: + * + * - `CharPosition`, which contains a character offset into the raw source string + * - `HbsPosition`, which contains a `SourcePosition` from the Handlebars AST, which can be + * converted to a `CharPosition` on demand. + * - `InvisiblePosition`, which represents a position not in source (@see {InvisiblePosition}) + */ + class SourceOffset { + /** + * Create a `SourceOffset` from a Handlebars `SourcePosition`. It's stored as-is, and converted + * into a character offset on demand, which avoids unnecessarily computing the offset of every + * `SourceLocation`, but also means that broken `SourcePosition`s are not always detected. + */ + static forHbsPos(source, pos) { + return new HbsPosition(source, pos, null).wrap(); + } + + /** + * Create a `SourceOffset` that corresponds to a broken `SourcePosition`. This means that the + * calling code determined (or knows) that the `SourceLocation` doesn't correspond correctly to + * any part of the source. + */ + static broken(pos = UNKNOWN_POSITION) { + return new InvisiblePosition(OffsetKind.Broken, pos).wrap(); + } + constructor(data) { + this.data = data; + } + + /** + * Get the character offset for this `SourceOffset`, if possible. + */ + get offset() { + const charPos = this.data.toCharPos(); + return charPos === null ? null : charPos.offset; + } + + /** + * Compare this offset with another one. + * + * If both offsets are `HbsPosition`s, they're equivalent as long as their lines and columns are + * the same. This avoids computing offsets unnecessarily. + * + * Otherwise, two `SourceOffset`s are equivalent if their successfully computed character offsets + * are the same. + */ + eql(right) { + return eql(this.data, right.data); + } + + /** + * Create a span that starts from this source offset and ends with another source offset. Avoid + * computing character offsets if both `SourceOffset`s are still lazy. + */ + until(other) { + return span(this.data, other.data); + } + + /** + * Create a `SourceOffset` by moving the character position represented by this source offset + * forward or backward (if `by` is negative), if possible. + * + * If this `SourceOffset` can't compute a valid character offset, `move` returns a broken offset. + * + * If the resulting character offset is less than 0 or greater than the size of the source, `move` + * returns a broken offset. + */ + move(by) { + const charPos = this.data.toCharPos(); + if (charPos === null) { + return SourceOffset.broken(); + } else { + const result = charPos.offset + by; + if (charPos.source.check(result)) { + return new CharPosition(charPos.source, result).wrap(); + } else { + return SourceOffset.broken(); + } + } + } + + /** + * Create a new `SourceSpan` that represents a collapsed range at this source offset. Avoid + * computing the character offset if it has not already been computed. + */ + collapsed() { + return span(this.data, this.data); + } + + /** + * Convert this `SourceOffset` into a Handlebars {@see SourcePosition} for compatibility with + * existing plugins. + */ + toJSON() { + return this.data.toJSON(); + } + } + class CharPosition { + kind = OffsetKind.CharPosition; + + /** Computed from char offset */ + _locPos = null; + constructor(source, charPos) { + this.source = source; + this.charPos = charPos; + } + + /** + * This is already a `CharPosition`. + * + * {@see HbsPosition} for the alternative. + */ + toCharPos() { + return this; + } + + /** + * Produce a Handlebars {@see SourcePosition} for this `CharPosition`. If this `CharPosition` was + * computed using {@see SourceOffset#move}, this will compute the `SourcePosition` for the offset. + */ + toJSON() { + const hbs = this.toHbsPos(); + return hbs === null ? UNKNOWN_POSITION : hbs.toJSON(); + } + wrap() { + return new SourceOffset(this); + } + + /** + * A `CharPosition` always has an offset it can produce without any additional computation. + */ + get offset() { + return this.charPos; + } + + /** + * Convert the current character offset to an `HbsPosition`, if it was not already computed. Once + * a `CharPosition` has computed its `HbsPosition`, it will not need to do compute it again, and + * the same `CharPosition` is retained when used as one of the ends of a `SourceSpan`, so + * computing the `HbsPosition` should be a one-time operation. + */ + toHbsPos() { + let locPos = this._locPos; + if (locPos === null) { + const hbsPos = this.source.hbsPosFor(this.charPos); + if (hbsPos === null) { + this._locPos = locPos = BROKEN; + } else { + this._locPos = locPos = new HbsPosition(this.source, hbsPos, this.charPos); + } + } + return locPos === BROKEN ? null : locPos; + } + } + class HbsPosition { + kind = OffsetKind.HbsPosition; + _charPos; + constructor(source, hbsPos, charPos = null) { + this.source = source; + this.hbsPos = hbsPos; + this._charPos = charPos === null ? null : new CharPosition(source, charPos); + } + + /** + * Lazily compute the character offset from the {@see SourcePosition}. Once an `HbsPosition` has + * computed its `CharPosition`, it will not need to do compute it again, and the same + * `HbsPosition` is retained when used as one of the ends of a `SourceSpan`, so computing the + * `CharPosition` should be a one-time operation. + */ + toCharPos() { + let charPos = this._charPos; + if (charPos === null) { + const charPosNumber = this.source.charPosFor(this.hbsPos); + if (charPosNumber === null) { + this._charPos = charPos = BROKEN; + } else { + this._charPos = charPos = new CharPosition(this.source, charPosNumber); + } + } + return charPos === BROKEN ? null : charPos; + } + + /** + * Return the {@see SourcePosition} that this `HbsPosition` was instantiated with. This operation + * does not need to compute anything. + */ + toJSON() { + return this.hbsPos; + } + wrap() { + return new SourceOffset(this); + } + + /** + * This is already an `HbsPosition`. + * + * {@see CharPosition} for the alternative. + */ + toHbsPos() { + return this; + } + } + class InvisiblePosition { + constructor(kind, + // whatever was provided, possibly broken + pos) { + this.kind = kind; + this.pos = pos; + } + + /** + * A broken position cannot be turned into a {@see CharacterPosition}. + */ + toCharPos() { + return null; + } + + /** + * The serialization of an `InvisiblePosition is whatever Handlebars {@see SourcePosition} was + * originally identified as broken, non-existent or synthetic. + * + * If an `InvisiblePosition` never had an source offset at all, this method returns + * {@see UNKNOWN_POSITION} for compatibility. + */ + toJSON() { + return this.pos; + } + wrap() { + return new SourceOffset(this); + } + get offset() { + return null; + } + } + + /** + * Compare two {@see AnyPosition} and determine whether they are equal. + * + * @see {SourceOffset#eql} + */ + const eql = match(m => m.when(OffsetKind.HbsPosition, OffsetKind.HbsPosition, ({ + hbsPos: left + }, { + hbsPos: right + }) => left.column === right.column && left.line === right.line).when(OffsetKind.CharPosition, OffsetKind.CharPosition, ({ + charPos: left + }, { + charPos: right + }) => left === right).when(OffsetKind.CharPosition, OffsetKind.HbsPosition, ({ + offset: left + }, right) => left === right.toCharPos()?.offset).when(OffsetKind.HbsPosition, OffsetKind.CharPosition, (left, { + offset: right + }) => left.toCharPos()?.offset === right).when(MatchAny, MatchAny, () => false)); + class Source { + static from(source, options = {}) { + return new Source(source, options.meta?.moduleName); + } + constructor(source, module = 'an unknown module') { + this.source = source; + this.module = module; + } + + /** + * Validate that the character offset represents a position in the source string. + */ + check(offset) { + return offset >= 0 && offset <= this.source.length; + } + slice(start, end) { + return this.source.slice(start, end); + } + offsetFor(line, column) { + return SourceOffset.forHbsPos(this, { + line, + column + }); + } + spanFor({ + start, + end + }) { + return SourceSpan.forHbsLoc(this, { + start: { + line: start.line, + column: start.column + }, + end: { + line: end.line, + column: end.column + } + }); + } + hbsPosFor(offset) { + let seenLines = 0; + let seenChars = 0; + if (offset > this.source.length) { + return null; + } + + // eslint-disable-next-line no-constant-condition + while (true) { + let nextLine = this.source.indexOf('\n', seenChars); + if (offset <= nextLine || nextLine === -1) { + return { + line: seenLines + 1, + column: offset - seenChars + }; + } else { + seenLines += 1; + seenChars = nextLine + 1; + } + } + } + charPosFor(position) { + let { + line, + column + } = position; + let sourceString = this.source; + let sourceLength = sourceString.length; + let seenLines = 0; + let seenChars = 0; + while (seenChars < sourceLength) { + let nextLine = this.source.indexOf('\n', seenChars); + if (nextLine === -1) nextLine = this.source.length; + if (seenLines === line - 1) { + if (seenChars + column > nextLine) return nextLine; + { + let roundTrip = this.hbsPosFor(seenChars + column); + debugAssert(roundTrip !== null, `the returned offset failed to round-trip`); + debugAssert(roundTrip.line === line, `the round-tripped line didn't match the original line`); + debugAssert(roundTrip.column === column, `the round-tripped column didn't match the original column`); + } + return seenChars + column; + } else if (nextLine === -1) { + return 0; + } else { + seenLines += 1; + seenChars = nextLine + 1; + } + } + return sourceLength; + } + } + class SpanList { + static range(span, fallback = SourceSpan.NON_EXISTENT) { + return new SpanList(span.map(loc)).getRangeOffset(fallback); + } + _span; + constructor(span = []) { + this._span = span; + } + add(offset) { + this._span.push(offset); + } + getRangeOffset(fallback) { + if (isPresentArray(this._span)) { + let first = getFirst(this._span); + let last = getLast(this._span); + return first.extend(last); + } else { + return fallback; + } + } + } + function loc(span) { + if (Array.isArray(span)) { + let first = getFirst(span); + let last = getLast(span); + return loc(first).extend(loc(last)); + } else if (span instanceof SourceSpan) { + return span; + } else { + return span.loc; + } + } + function hasSpan(span) { + if (Array.isArray(span) && span.length === 0) { + return false; + } + return true; + } + function maybeLoc(location, fallback) { + if (hasSpan(location)) { + return loc(location); + } else { + return fallback; + } + } + var api$2 = /*#__PURE__*/Object.freeze({ + __proto__: null, + NON_EXISTENT_LOCATION: NON_EXISTENT_LOCATION, + SYNTHETIC_LOCATION: SYNTHETIC_LOCATION, + Source: Source, + SourceOffset: SourceOffset, + SourceSlice: SourceSlice, + SourceSpan: SourceSpan, + SpanList: SpanList, + UNKNOWN_POSITION: UNKNOWN_POSITION, + hasSpan: hasSpan, + loc: loc, + maybeLoc: maybeLoc + }); + function generateSyntaxError(message, location) { + let { + module, + loc + } = location; + let { + line, + column + } = loc.start; + let code = location.asString(); + let quotedCode = code ? `\n\n|\n| ${code.split('\n').join('\n| ')}\n|\n\n` : ''; + let error = new Error(`${message}: ${quotedCode}(error occurred in '${module}' @ line ${line} : column ${column})`); + error.name = 'SyntaxError'; + error.location = location; + error.code = code; + return error; + } + + // ensure stays in sync with typing + // ParentNode and ChildKey types are derived from VisitorKeysMap + const visitorKeys = { + Template: ['body'], + Block: ['body'], + MustacheStatement: ['path', 'params', 'hash'], + BlockStatement: ['path', 'params', 'hash', 'program', 'inverse'], + ElementModifierStatement: ['path', 'params', 'hash'], + CommentStatement: [], + MustacheCommentStatement: [], + ElementNode: ['attributes', 'modifiers', 'children', 'comments'], + AttrNode: ['value'], + TextNode: [], + ConcatStatement: ['parts'], + SubExpression: ['path', 'params', 'hash'], + PathExpression: [], + StringLiteral: [], + BooleanLiteral: [], + NumberLiteral: [], + NullLiteral: [], + UndefinedLiteral: [], + Hash: ['pairs'], + HashPair: ['value'] + }; + const TraversalError = function () { + TraversalError.prototype = Object.create(Error.prototype); + TraversalError.prototype.constructor = TraversalError; + function TraversalError(message, node, parent, key) { + let error = Error.call(this, message); + this.key = key; + this.message = message; + this.node = node; + this.parent = parent; + if (error.stack) { + this.stack = error.stack; + } + } + return TraversalError; + }(); + function cannotRemoveNode(node, parent, key) { + return new TraversalError('Cannot remove a node unless it is part of an array', node, parent, key); + } + function cannotReplaceNode(node, parent, key) { + return new TraversalError('Cannot replace a node with multiple nodes unless it is part of an array', node, parent, key); + } + function cannotReplaceOrRemoveInKeyHandlerYet(node, key) { + return new TraversalError('Replacing and removing in key handlers is not yet supported.', node, null, key); + } + class WalkerPath { + node; + parent; + parentKey; + constructor(node, parent = null, parentKey = null) { + this.node = node; + this.parent = parent; + this.parentKey = parentKey; + } + get parentNode() { + return this.parent ? this.parent.node : null; + } + parents() { + return { + [Symbol.iterator]: () => { + return new PathParentsIterator(this); + } + }; + } + } + class PathParentsIterator { + path; + constructor(path) { + this.path = path; + } + next() { + if (this.path.parent) { + this.path = this.path.parent; + return { + done: false, + value: this.path + }; + } else { + return { + done: true, + value: null + }; + } + } + } + function getEnterFunction(handler) { + if (typeof handler === 'function') { + return handler; + } else { + return handler.enter; + } + } + function getExitFunction(handler) { + if (typeof handler === 'function') { + return undefined; + } else { + return handler.exit; + } + } + function getKeyHandler(handler, key) { + let keyVisitor = typeof handler !== 'function' ? handler.keys : undefined; + if (keyVisitor === undefined) return; + let keyHandler = keyVisitor[key]; + if (keyHandler !== undefined) { + return keyHandler; + } + return keyVisitor.All; + } + function getNodeHandler(visitor, nodeType) { + if (visitor.Program) { + if (nodeType === 'Template' && !visitor.Template || nodeType === 'Block' && !visitor.Block) { + deprecate$1(`The 'Program' visitor node is deprecated. Use 'Template' or 'Block' instead (node was '${nodeType}') `); + return visitor.Program; + } + } + let handler = visitor[nodeType]; + if (handler !== undefined) { + return handler; + } + return visitor.All; + } + function visitNode(visitor, path) { + let { + node, + parent, + parentKey + } = path; + let handler = getNodeHandler(visitor, node.type); + let enter; + let exit; + if (handler !== undefined) { + enter = getEnterFunction(handler); + exit = getExitFunction(handler); + } + let result; + if (enter !== undefined) { + result = enter(node, path); + } + if (result !== undefined && result !== null) { + if (JSON.stringify(node) === JSON.stringify(result)) { + result = undefined; + } else if (Array.isArray(result)) { + visitArray(visitor, result, parent, parentKey); + return result; + } else { + let path = new WalkerPath(result, parent, parentKey); + return visitNode(visitor, path) || result; + } + } + if (result === undefined) { + let keys = visitorKeys[node.type]; + for (let i = 0; i < keys.length; i++) { + let key = keys[i]; + // we know if it has child keys we can widen to a ParentNode + visitKey(visitor, handler, path, key); + } + if (exit !== undefined) { + result = exit(node, path); + } + } + return result; + } + function get(node, key) { + return node[key]; + } + function set(node, key, value) { + node[key] = value; + } + function visitKey(visitor, handler, path, key) { + let { + node + } = path; + let value = get(node, key); + if (!value) { + return; + } + let keyEnter; + let keyExit; + if (handler !== undefined) { + let keyHandler = getKeyHandler(handler, key); + if (keyHandler !== undefined) { + keyEnter = getEnterFunction(keyHandler); + keyExit = getExitFunction(keyHandler); + } + } + if (keyEnter !== undefined) { + if (keyEnter(node, key) !== undefined) { + throw cannotReplaceOrRemoveInKeyHandlerYet(node, key); + } + } + if (Array.isArray(value)) { + visitArray(visitor, value, path, key); + } else { + let keyPath = new WalkerPath(value, path, key); + let result = visitNode(visitor, keyPath); + if (result !== undefined) { + // TODO: dynamically check the results by having a table of + // expected node types in value space, not just type space + + assignKey(node, key, value, result); + } + } + if (keyExit !== undefined) { + if (keyExit(node, key) !== undefined) { + throw cannotReplaceOrRemoveInKeyHandlerYet(node, key); + } + } + } + function visitArray(visitor, array, parent, parentKey) { + for (let i = 0; i < array.length; i++) { + let node = unwrap(array[i]); + let path = new WalkerPath(node, parent, parentKey); + let result = visitNode(visitor, path); + if (result !== undefined) { + i += spliceArray(array, i, result) - 1; + } + } + } + function assignKey(node, key, value, result) { + if (result === null) { + throw cannotRemoveNode(value, node, key); + } else if (Array.isArray(result)) { + if (result.length === 1) { + set(node, key, result[0]); + } else { + if (result.length === 0) { + throw cannotRemoveNode(value, node, key); + } else { + throw cannotReplaceNode(value, node, key); + } + } + } else { + set(node, key, result); + } + } + function spliceArray(array, index, result) { + if (result === null) { + array.splice(index, 1); + return 0; + } else if (Array.isArray(result)) { + array.splice(index, 1, ...result); + return result.length; + } else { + array.splice(index, 1, result); + return 1; + } + } + function traverse(node, visitor) { + let path = new WalkerPath(node); + visitNode(visitor, path); + } + class Walker { + stack = []; + constructor(order) { + this.order = order; + } + visit(node, visitor) { + if (!node) { + return; + } + this.stack.push(node); + if (this.order === 'post') { + this.children(node, visitor); + visitor(node, this); + } else { + visitor(node, this); + this.children(node, visitor); + } + this.stack.pop(); + } + children(node, callback) { + switch (node.type) { + case 'Block': + case 'Template': + walkBody(this, node.body, callback); + return; + case 'ElementNode': + walkBody(this, node.children, callback); + return; + case 'BlockStatement': + this.visit(node.program, callback); + this.visit(node.inverse || null, callback); + return; + default: + return; + } + } + } + function walkBody(walker, body, callback) { + for (const child of body) { + walker.visit(child, callback); + } + } + function childrenFor(node) { + switch (node.type) { + case 'Block': + case 'Template': + return node.body; + case 'ElementNode': + return node.children; + } + } + function appendChild(parent, node) { + childrenFor(parent).push(node); + } + function isHBSLiteral(path) { + return path.type === 'StringLiteral' || path.type === 'BooleanLiteral' || path.type === 'NumberLiteral' || path.type === 'NullLiteral' || path.type === 'UndefinedLiteral'; + } + function printLiteral(literal) { + if (literal.type === 'UndefinedLiteral') { + return 'undefined'; + } else { + return JSON.stringify(literal.value); + } + } + function isUpperCase(tag) { + return tag[0] === tag[0]?.toUpperCase() && tag[0] !== tag[0]?.toLowerCase(); + } + function isLowerCase(tag) { + return tag[0] === tag[0]?.toLowerCase() && tag[0] !== tag[0]?.toUpperCase(); + } + let _SOURCE; + function SOURCE() { + if (!_SOURCE) { + _SOURCE = new Source('', '(synthetic)'); + } + return _SOURCE; + } + + // const SOURCE = new Source('', '(tests)'); + + // Statements + + function buildMustache(path, params = [], hash = buildHash$1([]), trusting = false, loc, strip) { + return b.mustache({ + path: buildPath(path), + params, + hash, + trusting, + strip, + loc: buildLoc(loc || null) + }); + } + function buildBlock$1(path, params, hash, _defaultBlock, _elseBlock = null, loc, openStrip, inverseStrip, closeStrip) { + let defaultBlock; + let elseBlock = null; + if (_defaultBlock.type === 'Template') { + deprecate$1(`b.program is deprecated. Use b.blockItself instead.`); + defaultBlock = b.blockItself({ + params: buildBlockParams(_defaultBlock.blockParams), + body: _defaultBlock.body, + loc: _defaultBlock.loc + }); + } else { + defaultBlock = _defaultBlock; + } + if (_elseBlock?.type === 'Template') { + deprecate$1(`b.program is deprecated. Use b.blockItself instead.`); + debugAssert(_elseBlock.blockParams.length === 0, '{{else}} block cannot have block params'); + elseBlock = b.blockItself({ + params: [], + body: _elseBlock.body, + loc: _elseBlock.loc + }); + } else { + elseBlock = _elseBlock; + } + return b.block({ + path: buildPath(path), + params: params || [], + hash: hash || buildHash$1([]), + defaultBlock, + elseBlock, + loc: buildLoc(loc || null), + openStrip, + inverseStrip, + closeStrip + }); + } + function buildElementModifier(path, params, hash, loc) { + return b.elementModifier({ + path: buildPath(path), + params: params || [], + hash: hash || buildHash$1([]), + loc: buildLoc(loc || null) + }); + } + function buildComment(value, loc) { + return b.comment({ + value: value, + loc: buildLoc(loc || null) + }); + } + function buildMustacheComment(value, loc) { + return b.mustacheComment({ + value: value, + loc: buildLoc(loc || null) + }); + } + function buildConcat$1(parts, loc) { + if (!isPresentArray(parts)) { + throw new Error(`b.concat requires at least one part`); + } + return b.concat({ + parts, + loc: buildLoc(loc || null) + }); + } + + // Nodes + + function buildElement$1(tag, options = {}) { + let { + attrs, + blockParams, + modifiers, + comments, + children, + openTag, + closeTag: _closeTag, + loc + } = options; + + // this is used for backwards compat, prior to `selfClosing` being part of the ElementNode AST + let path; + let selfClosing; + if (typeof tag === 'string') { + if (tag.endsWith('/')) { + path = buildPath(tag.slice(0, -1)); + selfClosing = true; + } else { + path = buildPath(tag); + } + } else if ('type' in tag) { + debugAssert(tag.type === 'PathExpression', `Invalid tag type ${tag.type}`); + path = tag; + } else if ('path' in tag) { + debugAssert(tag.path.type === 'PathExpression', `Invalid tag type ${tag.path.type}`); + path = tag.path; + selfClosing = tag.selfClosing; + } else { + path = buildPath(tag.name); + selfClosing = tag.selfClosing; + } + if (selfClosing) { + debugAssert(_closeTag === null || _closeTag === undefined, 'Cannot build a self-closing tag with a closeTag source location'); + } + let params = blockParams?.map(param => { + if (typeof param === 'string') { + return buildVar$1(param); + } else { + return param; + } + }); + let closeTag = null; + if (_closeTag) { + closeTag = buildLoc(_closeTag || null); + } else if (_closeTag === undefined) { + closeTag = selfClosing || isVoidTag(path.original) ? null : buildLoc(null); + } + return b.element({ + path, + selfClosing: selfClosing || false, + attributes: attrs || [], + params: params || [], + modifiers: modifiers || [], + comments: comments || [], + children: children || [], + openTag: buildLoc(openTag || null), + closeTag, + loc: buildLoc(loc || null) + }); + } + function buildAttr(name, value, loc) { + return b.attr({ + name: name, + value: value, + loc: buildLoc(loc || null) + }); + } + function buildText(chars = '', loc) { + return b.text({ + chars, + loc: buildLoc(loc || null) + }); + } + + // Expressions + + function buildSexpr(path, params = [], hash = buildHash$1([]), loc) { + return b.sexpr({ + path: buildPath(path), + params, + hash, + loc: buildLoc(loc || null) + }); + } + function buildHead(original, loc) { + let [head, ...tail] = asPresentArray(original.split('.')); + let headNode = b.head({ + original: head, + loc: buildLoc(loc || null) + }); + return b.path({ + head: headNode, + tail, + loc: buildLoc(loc || null) + }); + } + function buildThis(loc) { + return b.this({ + loc: buildLoc(loc || null) + }); + } + function buildAtName(name, loc) { + return b.atName({ + name, + loc: buildLoc(loc || null) + }); + } + function buildVar$1(name, loc) { + return b.var({ + name, + loc: buildLoc(loc || null) + }); + } + function buildHeadFromString(original, loc) { + return b.head({ + original, + loc: buildLoc(loc || null) + }); + } + function buildCleanPath(head, tail = [], loc) { + return b.path({ + head, + tail, + loc: buildLoc(loc || null) + }); + } + function buildPath(path, loc) { + let span = buildLoc(loc || null); + if (typeof path !== 'string') { + if ('type' in path) { + return path; + } else { + debugAssert(path.head.indexOf('.') === -1, `builder.path({ head, tail }) should not be called with a head with dots in it`); + let { + head, + tail + } = path; + return b.path({ + head: b.head({ + original: head, + loc: span.sliceStartChars({ + chars: head.length + }) + }), + tail, + loc: buildLoc(loc || null) + }); + } + } + let { + head, + tail + } = buildHead(path, span); + return b.path({ + head, + tail, + loc: span + }); + } + function buildLiteral(type, value, loc) { + return b.literal({ + type, + value, + loc: buildLoc(loc || null) + }); + } + + // Miscellaneous + + function buildHash$1(pairs = [], loc) { + return b.hash({ + pairs, + loc: buildLoc(loc || null) + }); + } + function buildPair(key, value, loc) { + return b.pair({ + key, + value, + loc: buildLoc(loc || null) + }); + } + function buildProgram(body, blockParams, loc) { + deprecate$1(`b.program is deprecated. Use b.template or b.blockItself instead.`); + if (blockParams && blockParams.length) { + return buildBlockItself(body, blockParams, false, loc); + } else { + return buildTemplate(body, [], loc); + } + } + function buildBlockParams(params) { + return params.map(p => typeof p === 'string' ? b.var({ + name: p, + loc: SourceSpan.synthetic(p) + }) : p); + } + function buildBlockItself(body = [], params = [], chained = false, loc) { + return b.blockItself({ + body, + params: buildBlockParams(params), + chained, + loc: buildLoc(loc || null) + }); + } + function buildTemplate(body = [], blockParams = [], loc) { + return b.template({ + body, + blockParams, + loc: buildLoc(loc || null) + }); + } + function buildPosition(line, column) { + return b.pos({ + line, + column + }); + } + function buildLoc(...args) { + if (args.length === 1) { + let loc = args[0]; + if (loc && typeof loc === 'object') { + return SourceSpan.forHbsLoc(SOURCE(), loc); + } else { + return SourceSpan.forHbsLoc(SOURCE(), SYNTHETIC_LOCATION); + } + } else { + let [startLine, startColumn, endLine, endColumn, _source] = args; + let source = _source ? new Source('', _source) : SOURCE(); + return SourceSpan.forHbsLoc(source, { + start: { + line: startLine, + column: startColumn + }, + end: { + line: endLine || startLine, + column: endColumn || startColumn + } + }); + } + } + var publicBuilder = { + mustache: buildMustache, + block: buildBlock$1, + comment: buildComment, + mustacheComment: buildMustacheComment, + element: buildElement$1, + elementModifier: buildElementModifier, + attr: buildAttr, + text: buildText, + sexpr: buildSexpr, + concat: buildConcat$1, + hash: buildHash$1, + pair: buildPair, + literal: buildLiteral, + program: buildProgram, + blockItself: buildBlockItself, + template: buildTemplate, + loc: buildLoc, + pos: buildPosition, + path: buildPath, + fullPath: buildCleanPath, + head: buildHeadFromString, + at: buildAtName, + var: buildVar$1, + this: buildThis, + string: literal('StringLiteral'), + boolean: literal('BooleanLiteral'), + number: literal('NumberLiteral'), + undefined() { + return buildLiteral('UndefinedLiteral', undefined); + }, + null() { + return buildLiteral('NullLiteral', null); + } + }; + function literal(type) { + return function (value, loc) { + return buildLiteral(type, value, loc); + }; + } + function buildLegacyMustache({ + path, + params, + hash, + trusting, + strip, + loc + }) { + const node = { + type: 'MustacheStatement', + path, + params, + hash, + trusting, + strip, + loc + }; + Object.defineProperty(node, 'escaped', { + enumerable: false, + get() { + deprecate$1(`The escaped property on mustache nodes is deprecated, use trusting instead`); + return !this.trusting; + }, + set(value) { + deprecate$1(`The escaped property on mustache nodes is deprecated, use trusting instead`); + this.trusting = !value; + } + }); + return node; + } + function buildLegacyPath({ + head, + tail, + loc + }) { + const node = { + type: 'PathExpression', + head, + tail, + get original() { + return [this.head.original, ...this.tail].join('.'); + }, + set original(value) { + let [head, ...tail] = asPresentArray(value.split('.')); + this.head = publicBuilder.head(head, this.head.loc); + this.tail = tail; + }, + loc + }; + Object.defineProperty(node, 'parts', { + enumerable: false, + get() { + deprecate$1(`The parts property on path nodes is deprecated, use head and tail instead`); + let parts = asPresentArray(this.original.split('.')); + if (parts[0] === 'this') { + // parts does not include `this` + parts.shift(); + } else if (parts[0].startsWith('@')) { + // parts does not include leading `@` + parts[0] = parts[0].slice(1); + } + return Object.freeze(parts); + }, + set(values) { + deprecate$1(`The parts property on mustache nodes is deprecated, use head and tail instead`); + let parts = [...values]; + + // you are not supposed to already have `this` or `@` in the parts, but since this is + // deprecated anyway, we will infer what you meant and allow it + if (parts[0] !== 'this' && !parts[0]?.startsWith('@')) { + if (this.head.type === 'ThisHead') { + parts.unshift('this'); + } else if (this.head.type === 'AtHead') { + parts[0] = `@${parts[0]}`; + } + } + this.original = parts.join('.'); + } + }); + Object.defineProperty(node, 'this', { + enumerable: false, + get() { + deprecate$1(`The this property on path nodes is deprecated, use head.type instead`); + return this.head.type === 'ThisHead'; + } + }); + Object.defineProperty(node, 'data', { + enumerable: false, + get() { + deprecate$1(`The data property on path nodes is deprecated, use head.type instead`); + return this.head.type === 'AtHead'; + } + }); + return node; + } + function buildLegacyLiteral({ + type, + value, + loc + }) { + const node = { + type, + value, + loc + }; + Object.defineProperty(node, 'original', { + enumerable: false, + get() { + deprecate$1(`The original property on literal nodes is deprecated, use value instead`); + return this.value; + }, + set(value) { + deprecate$1(`The original property on literal nodes is deprecated, use value instead`); + this.value = value; + } + }); + return node; + } + const DEFAULT_STRIP = { + close: false, + open: false + }; + + /** + * The Parser Builder differentiates from the public builder API by: + * + * 1. Offering fewer different ways to instantiate nodes + * 2. Mandating source locations + */ + class Builders { + pos({ + line, + column + }) { + return { + line, + column + }; + } + blockItself({ + body, + params, + chained = false, + loc + }) { + return { + type: 'Block', + body, + params, + get blockParams() { + return this.params.map(p => p.name); + }, + set blockParams(params) { + this.params = params.map(name => { + return b.var({ + name, + loc: SourceSpan.synthetic(name) + }); + }); + }, + chained, + loc + }; + } + template({ + body, + blockParams, + loc + }) { + return { + type: 'Template', + body, + blockParams, + loc + }; + } + mustache({ + path, + params, + hash, + trusting, + loc, + strip = DEFAULT_STRIP + }) { + return buildLegacyMustache({ + path, + params, + hash, + trusting, + strip, + loc + }); + } + block({ + path, + params, + hash, + defaultBlock, + elseBlock = null, + loc, + openStrip = DEFAULT_STRIP, + inverseStrip = DEFAULT_STRIP, + closeStrip = DEFAULT_STRIP + }) { + return { + type: 'BlockStatement', + path: path, + params, + hash, + program: defaultBlock, + inverse: elseBlock, + loc, + openStrip, + inverseStrip, + closeStrip + }; + } + comment({ + value, + loc + }) { + return { + type: 'CommentStatement', + value, + loc + }; + } + mustacheComment({ + value, + loc + }) { + return { + type: 'MustacheCommentStatement', + value, + loc + }; + } + concat({ + parts, + loc + }) { + return { + type: 'ConcatStatement', + parts, + loc + }; + } + element({ + path, + selfClosing, + attributes, + modifiers, + params, + comments, + children, + openTag, + closeTag, + loc + }) { + let _selfClosing = selfClosing; + return { + type: 'ElementNode', + path, + attributes, + modifiers, + params, + comments, + children, + openTag, + closeTag, + loc, + get tag() { + return this.path.original; + }, + set tag(name) { + this.path.original = name; + }, + get blockParams() { + return this.params.map(p => p.name); + }, + set blockParams(params) { + this.params = params.map(name => { + return b.var({ + name, + loc: SourceSpan.synthetic(name) + }); + }); + }, + get selfClosing() { + return _selfClosing; + }, + set selfClosing(selfClosing) { + _selfClosing = selfClosing; + if (selfClosing) { + this.closeTag = null; + } else { + this.closeTag = SourceSpan.synthetic(``); + } + } + }; + } + elementModifier({ + path, + params, + hash, + loc + }) { + return { + type: 'ElementModifierStatement', + path, + params, + hash, + loc + }; + } + attr({ + name, + value, + loc + }) { + return { + type: 'AttrNode', + name: name, + value: value, + loc + }; + } + text({ + chars, + loc + }) { + return { + type: 'TextNode', + chars, + loc + }; + } + sexpr({ + path, + params, + hash, + loc + }) { + return { + type: 'SubExpression', + path, + params, + hash, + loc + }; + } + path({ + head, + tail, + loc + }) { + return buildLegacyPath({ + head, + tail, + loc + }); + } + head({ + original, + loc + }) { + if (original === 'this') { + return this.this({ + loc + }); + } + if (original[0] === '@') { + return this.atName({ + name: original, + loc + }); + } else { + return this.var({ + name: original, + loc + }); + } + } + this({ + loc + }) { + return { + type: 'ThisHead', + get original() { + return 'this'; + }, + loc + }; + } + atName({ + name, + loc + }) { + let _name = ''; + const node = { + type: 'AtHead', + get name() { + return _name; + }, + set name(value) { + debugAssert(value[0] === '@', `call builders.at() with a string that starts with '@'`); + debugAssert(value.indexOf('.') === -1, `builder.at() should not be called with a name with dots in it`); + _name = value; + }, + get original() { + return this.name; + }, + set original(value) { + this.name = value; + }, + loc + }; + + // trigger the assertions + node.name = name; + return node; + } + var({ + name, + loc + }) { + let _name = ''; + const node = { + type: 'VarHead', + get name() { + return _name; + }, + set name(value) { + debugAssert(value !== 'this', `You called builders.var() with 'this'. Call builders.this instead`); + debugAssert(value[0] !== '@', `You called builders.var() with '${name}'. Call builders.at('${name}') instead`); + debugAssert(value.indexOf('.') === -1, `builder.var() should not be called with a name with dots in it`); + _name = value; + }, + get original() { + return this.name; + }, + set original(value) { + this.name = value; + }, + loc + }; + + // trigger the assertions + node.name = name; + return node; + } + hash({ + pairs, + loc + }) { + return { + type: 'Hash', + pairs, + loc + }; + } + pair({ + key, + value, + loc + }) { + return { + type: 'HashPair', + key, + value, + loc + }; + } + literal({ + type, + value, + loc + }) { + return buildLegacyLiteral({ + type, + value, + loc + }); + } + } + const b = new Builders(); + class Parser { + elementStack = []; + lines; + source; + currentAttribute = null; + currentNode = null; + tokenizer; + constructor(source, entityParser = new EntityParser(namedCharRefs), mode = 'precompile') { + this.source = source; + this.lines = source.source.split(/\r\n?|\n/u); + this.tokenizer = new EventedTokenizer(this, entityParser, mode); + } + offset() { + let { + line, + column + } = this.tokenizer; + return this.source.offsetFor(line, column); + } + pos({ + line, + column + }) { + return this.source.offsetFor(line, column); + } + finish(node) { + return assign({}, node, { + loc: node.start.until(this.offset()) + }); + + // node.loc = node.loc.withEnd(end); + } + get currentAttr() { + return expect(this.currentAttribute, 'expected attribute'); + } + get currentTag() { + let node = this.currentNode; + debugAssert(node && (node.type === 'StartTag' || node.type === 'EndTag'), 'expected tag'); + return node; + } + get currentStartTag() { + let node = this.currentNode; + debugAssert(node && node.type === 'StartTag', 'expected start tag'); + return node; + } + get currentEndTag() { + let node = this.currentNode; + debugAssert(node && node.type === 'EndTag', 'expected end tag'); + return node; + } + get currentComment() { + let node = this.currentNode; + debugAssert(node && node.type === 'CommentStatement', 'expected a comment'); + return node; + } + get currentData() { + let node = this.currentNode; + debugAssert(node && node.type === 'TextNode', 'expected a text node'); + return node; + } + acceptNode(node) { + return this[node.type](node); + } + currentElement() { + return getLast(asPresentArray(this.elementStack)); + } + sourceForNode(node, endNode) { + let firstLine = node.loc.start.line - 1; + let currentLine = firstLine - 1; + let firstColumn = node.loc.start.column; + let string = []; + let line; + let lastLine; + let lastColumn; + if (endNode) { + lastLine = endNode.loc.end.line - 1; + lastColumn = endNode.loc.end.column; + } else { + lastLine = node.loc.end.line - 1; + lastColumn = node.loc.end.column; + } + while (currentLine < lastLine) { + currentLine++; + line = unwrap(this.lines[currentLine]); + if (currentLine === firstLine) { + if (firstLine === lastLine) { + string.push(line.slice(firstColumn, lastColumn)); + } else { + string.push(line.slice(firstColumn)); + } + } else if (currentLine === lastLine) { + string.push(line.slice(0, lastColumn)); + } else { + string.push(line); + } + } + return string.join('\n'); + } + } + const BEFORE_ATTRIBUTE_NAME = 'beforeAttributeName'; + const ATTRIBUTE_VALUE_UNQUOTED = 'attributeValueUnquoted'; + class HandlebarsNodeVisitors extends Parser { + // Because we interleave the HTML and HBS parsing, sometimes the HTML + // tokenizer can run out of tokens when we switch into {{...}} or reached + // EOF. There are positions where neither of these are expected, and it would + // like to generate an error, but there is no span to attach the error to. + // This allows the HTML tokenization to stash an error message and the next + // mustache visitor will attach the message to the appropriate span and throw + // the error. + pendingError = null; + parse(program, blockParams) { + let node = b.template({ + body: [], + blockParams, + loc: this.source.spanFor(program.loc) + }); + let template = this.parseProgram(node, program); + + // TODO: we really need to verify that the tokenizer is in an acceptable + // state when we are "done" parsing. For example, right now, `= limit) { + nameStart = -1; + } else { + nameStart = content.indexOf(name, skipStart); + } + if (nameStart === -1 || nameStart + name.length > limit) { + skipStart = limit; + loc = this.source.spanFor(NON_EXISTENT_LOCATION); + } else { + skipStart = nameStart; + loc = span.sliceStartChars({ + skipStart, + chars: name.length + }); + skipStart += name.length; + } + blockParams.push(b.var({ + name, + loc + })); + } + } + + // These are bugs in Handlebars upstream + if (!block.program.loc) { + block.program.loc = NON_EXISTENT_LOCATION; + } + if (block.inverse && !block.inverse.loc) { + block.inverse.loc = NON_EXISTENT_LOCATION; + } + const program = this.Program(block.program, blockParams); + const inverse = block.inverse ? this.Program(block.inverse, []) : null; + const node = b.block({ + path, + params, + hash, + defaultBlock: program, + elseBlock: inverse, + loc: this.source.spanFor(block.loc), + openStrip: block.openStrip, + inverseStrip: block.inverseStrip, + closeStrip: block.closeStrip + }); + const parentProgram = this.currentElement(); + appendChild(parentProgram, node); + } + MustacheStatement(rawMustache) { + this.pendingError?.mustache(this.source.spanFor(rawMustache.loc)); + const { + tokenizer + } = this; + if (tokenizer.state === 'comment') { + this.appendToCommentData(this.sourceForNode(rawMustache)); + return; + } + let mustache; + const { + escaped, + loc, + strip + } = rawMustache; + if ('original' in rawMustache.path && rawMustache.path.original === '...attributes') { + throw generateSyntaxError('Illegal use of ...attributes', this.source.spanFor(rawMustache.loc)); + } + if (isHBSLiteral(rawMustache.path)) { + mustache = b.mustache({ + path: this.acceptNode(rawMustache.path), + params: [], + hash: b.hash({ + pairs: [], + loc: this.source.spanFor(rawMustache.path.loc).collapse('end') + }), + trusting: !escaped, + loc: this.source.spanFor(loc), + strip + }); + } else { + const { + path, + params, + hash + } = acceptCallNodes(this, rawMustache); + mustache = b.mustache({ + path, + params, + hash, + trusting: !escaped, + loc: this.source.spanFor(loc), + strip + }); + } + switch (tokenizer.state) { + // Tag helpers + case 'tagOpen': + case 'tagName': + throw generateSyntaxError(`Cannot use mustaches in an elements tagname`, mustache.loc); + case 'beforeAttributeName': + addElementModifier(this.currentStartTag, mustache); + break; + case 'attributeName': + case 'afterAttributeName': + this.beginAttributeValue(false); + this.finishAttributeValue(); + addElementModifier(this.currentStartTag, mustache); + tokenizer.transitionTo(BEFORE_ATTRIBUTE_NAME); + break; + case 'afterAttributeValueQuoted': + addElementModifier(this.currentStartTag, mustache); + tokenizer.transitionTo(BEFORE_ATTRIBUTE_NAME); + break; + + // Attribute values + case 'beforeAttributeValue': + this.beginAttributeValue(false); + this.appendDynamicAttributeValuePart(mustache); + tokenizer.transitionTo(ATTRIBUTE_VALUE_UNQUOTED); + break; + case 'attributeValueDoubleQuoted': + case 'attributeValueSingleQuoted': + case 'attributeValueUnquoted': + this.appendDynamicAttributeValuePart(mustache); + break; + + // TODO: Only append child when the tokenizer state makes + // sense to do so, otherwise throw an error. + default: + appendChild(this.currentElement(), mustache); + } + return mustache; + } + appendDynamicAttributeValuePart(part) { + this.finalizeTextPart(); + const attr = this.currentAttr; + attr.isDynamic = true; + attr.parts.push(part); + } + finalizeTextPart() { + const attr = this.currentAttr; + const text = attr.currentPart; + if (text !== null) { + this.currentAttr.parts.push(text); + this.startTextPart(); + } + } + startTextPart() { + this.currentAttr.currentPart = null; + } + ContentStatement(content) { + updateTokenizerLocation(this.tokenizer, content); + this.tokenizer.tokenizePart(content.value); + this.tokenizer.flushData(); + } + CommentStatement(rawComment) { + const { + tokenizer + } = this; + if (tokenizer.state === 'comment') { + this.appendToCommentData(this.sourceForNode(rawComment)); + return null; + } + const { + value, + loc + } = rawComment; + const comment = b.mustacheComment({ + value, + loc: this.source.spanFor(loc) + }); + switch (tokenizer.state) { + case 'beforeAttributeName': + case 'afterAttributeName': + this.currentStartTag.comments.push(comment); + break; + case 'beforeData': + case 'data': + appendChild(this.currentElement(), comment); + break; + default: + throw generateSyntaxError(`Using a Handlebars comment when in the \`${tokenizer['state']}\` state is not supported`, this.source.spanFor(rawComment.loc)); + } + return comment; + } + PartialStatement(partial) { + throw generateSyntaxError(`Handlebars partials are not supported`, this.source.spanFor(partial.loc)); + } + PartialBlockStatement(partialBlock) { + throw generateSyntaxError(`Handlebars partial blocks are not supported`, this.source.spanFor(partialBlock.loc)); + } + Decorator(decorator) { + throw generateSyntaxError(`Handlebars decorators are not supported`, this.source.spanFor(decorator.loc)); + } + DecoratorBlock(decoratorBlock) { + throw generateSyntaxError(`Handlebars decorator blocks are not supported`, this.source.spanFor(decoratorBlock.loc)); + } + SubExpression(sexpr) { + const { + path, + params, + hash + } = acceptCallNodes(this, sexpr); + return b.sexpr({ + path, + params, + hash, + loc: this.source.spanFor(sexpr.loc) + }); + } + PathExpression(path) { + const { + original + } = path; + let parts; + if (original.indexOf('/') !== -1) { + if (original.slice(0, 2) === './') { + throw generateSyntaxError(`Using "./" is not supported in Glimmer and unnecessary`, this.source.spanFor(path.loc)); + } + if (original.slice(0, 3) === '../') { + throw generateSyntaxError(`Changing context using "../" is not supported in Glimmer`, this.source.spanFor(path.loc)); + } + if (original.indexOf('.') !== -1) { + throw generateSyntaxError(`Mixing '.' and '/' in paths is not supported in Glimmer; use only '.' to separate property paths`, this.source.spanFor(path.loc)); + } + parts = [path.parts.join('/')]; + } else if (original === '.') { + throw generateSyntaxError(`'.' is not a supported path in Glimmer; check for a path with a trailing '.'`, this.source.spanFor(path.loc)); + } else { + parts = path.parts; + } + let thisHead = false; + + // This is to fix a bug in the Handlebars AST where the path expressions in + // `{{this.foo}}` (and similarly `{{foo-bar this.foo named=this.foo}}` etc) + // are simply turned into `{{foo}}`. The fix is to push it back onto the + // parts array and let the runtime see the difference. However, we cannot + // simply use the string `this` as it means literally the property called + // "this" in the current context (it can be expressed in the syntax as + // `{{[this]}}`, where the square bracket are generally for this kind of + // escaping – such as `{{foo.["bar.baz"]}}` would mean lookup a property + // named literally "bar.baz" on `this.foo`). By convention, we use `null` + // for this purpose. + if (/^this(?:\..+)?$/u.test(original)) { + thisHead = true; + } + let pathHead; + if (thisHead) { + pathHead = b.this({ + loc: this.source.spanFor({ + start: path.loc.start, + end: { + line: path.loc.start.line, + column: path.loc.start.column + 4 + } + }) + }); + } else if (path.data) { + const head = parts.shift(); + if (head === undefined) { + throw generateSyntaxError(`Attempted to parse a path expression, but it was not valid. Paths beginning with @ must start with a-z.`, this.source.spanFor(path.loc)); + } + pathHead = b.atName({ + name: `@${head}`, + loc: this.source.spanFor({ + start: path.loc.start, + end: { + line: path.loc.start.line, + column: path.loc.start.column + head.length + 1 + } + }) + }); + } else { + const head = parts.shift(); + if (head === undefined) { + throw generateSyntaxError(`Attempted to parse a path expression, but it was not valid. Paths must start with a-z or A-Z.`, this.source.spanFor(path.loc)); + } + pathHead = b.var({ + name: head, + loc: this.source.spanFor({ + start: path.loc.start, + end: { + line: path.loc.start.line, + column: path.loc.start.column + head.length + } + }) + }); + } + return b.path({ + head: pathHead, + tail: parts, + loc: this.source.spanFor(path.loc) + }); + } + Hash(hash) { + const pairs = hash.pairs.map(pair => b.pair({ + key: pair.key, + value: this.acceptNode(pair.value), + loc: this.source.spanFor(pair.loc) + })); + return b.hash({ + pairs, + loc: this.source.spanFor(hash.loc) + }); + } + StringLiteral(string) { + return b.literal({ + type: 'StringLiteral', + value: string.value, + loc: this.source.spanFor(string.loc) + }); + } + BooleanLiteral(boolean) { + return b.literal({ + type: 'BooleanLiteral', + value: boolean.value, + loc: this.source.spanFor(boolean.loc) + }); + } + NumberLiteral(number) { + return b.literal({ + type: 'NumberLiteral', + value: number.value, + loc: this.source.spanFor(number.loc) + }); + } + UndefinedLiteral(undef) { + return b.literal({ + type: 'UndefinedLiteral', + value: undefined, + loc: this.source.spanFor(undef.loc) + }); + } + NullLiteral(nul) { + return b.literal({ + type: 'NullLiteral', + value: null, + loc: this.source.spanFor(nul.loc) + }); + } + } + function calculateRightStrippedOffsets(original, value) { + if (value === '') { + // if it is empty, just return the count of newlines + // in original + return { + lines: original.split('\n').length - 1, + columns: 0 + }; + } + + // otherwise, return the number of newlines prior to + // `value` + const [difference] = original.split(value); + const lines = difference.split(/\n/u); + const lineCount = lines.length - 1; + return { + lines: lineCount, + columns: unwrap(lines[lineCount]).length + }; + } + function updateTokenizerLocation(tokenizer, content) { + let line = content.loc.start.line; + let column = content.loc.start.column; + const offsets = calculateRightStrippedOffsets(content.original, content.value); + line = line + offsets.lines; + if (offsets.lines) { + column = offsets.columns; + } else { + column = column + offsets.columns; + } + tokenizer.line = line; + tokenizer.column = column; + } + function acceptCallNodes(compiler, node) { + let path; + switch (node.path.type) { + case 'PathExpression': + path = compiler.PathExpression(node.path); + break; + case 'SubExpression': + path = compiler.SubExpression(node.path); + break; + case 'StringLiteral': + case 'UndefinedLiteral': + case 'NullLiteral': + case 'NumberLiteral': + case 'BooleanLiteral': + { + let value; + if (node.path.type === 'BooleanLiteral') { + value = node.path.original.toString(); + } else if (node.path.type === 'StringLiteral') { + value = `"${node.path.original}"`; + } else if (node.path.type === 'NullLiteral') { + value = 'null'; + } else if (node.path.type === 'NumberLiteral') { + value = node.path.value.toString(); + } else { + value = 'undefined'; + } + throw generateSyntaxError(`${node.path.type} "${node.path.type === 'StringLiteral' ? node.path.original : value}" cannot be called as a sub-expression, replace (${value}) with ${value}`, compiler.source.spanFor(node.path.loc)); + } + } + const params = node.params ? node.params.map(e => compiler.acceptNode(e)) : []; + + // if there is no hash, position it as a collapsed node immediately after the last param (or the + // path, if there are also no params) + const end = isPresentArray(params) ? getLast(params).loc : path.loc; + const hash = node.hash ? compiler.Hash(node.hash) : b.hash({ + pairs: [], + loc: compiler.source.spanFor(end).collapse('end') + }); + return { + path, + params, + hash + }; + } + function addElementModifier(element, mustache) { + const { + path, + params, + hash, + loc + } = mustache; + if (isHBSLiteral(path)) { + const modifier = `{{${printLiteral(path)}}}`; + const tag = `<${element.name} ... ${modifier} ...`; + throw generateSyntaxError(`In ${tag}, ${modifier} is not a valid modifier`, mustache.loc); + } + const modifier = b.elementModifier({ + path, + params, + hash, + loc + }); + element.modifiers.push(modifier); + } + + // vendored from simple-html-tokenizer because it's unexported + function isSpace(char) { + return /[\t\n\f ]/u.test(char); + } + class TokenizerEventHandlers extends HandlebarsNodeVisitors { + tagOpenLine = 0; + tagOpenColumn = 0; + reset() { + this.currentNode = null; + } + + // Comment + + beginComment() { + this.currentNode = { + type: 'CommentStatement', + value: '', + start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) + }; + } + appendToCommentData(char) { + this.currentComment.value += char; + } + finishComment() { + appendChild(this.currentElement(), b.comment(this.finish(this.currentComment))); + } + + // Data + + beginData() { + this.currentNode = { + type: 'TextNode', + chars: '', + start: this.offset() + }; + } + appendToData(char) { + this.currentData.chars += char; + } + finishData() { + appendChild(this.currentElement(), b.text(this.finish(this.currentData))); + } + + // Tags - basic + + tagOpen() { + this.tagOpenLine = this.tokenizer.line; + this.tagOpenColumn = this.tokenizer.column; + } + beginStartTag() { + this.currentNode = { + type: 'StartTag', + name: '', + nameStart: null, + nameEnd: null, + attributes: [], + modifiers: [], + comments: [], + params: [], + selfClosing: false, + start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) + }; + } + beginEndTag() { + this.currentNode = { + type: 'EndTag', + name: '', + start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) + }; + } + finishTag() { + let tag = this.finish(this.currentTag); + if (tag.type === 'StartTag') { + this.finishStartTag(); + if (tag.name === ':') { + throw generateSyntaxError('Invalid named block named detected, you may have created a named block without a name, or you may have began your name with a number. Named blocks must have names that are at least one character long, and begin with a lower case letter', this.source.spanFor({ + start: this.currentTag.start.toJSON(), + end: this.offset().toJSON() + })); + } + if (voidMap.has(tag.name) || tag.selfClosing) { + this.finishEndTag(true); + } + } else if (tag.type === 'EndTag') { + this.finishEndTag(false); + } + } + finishStartTag() { + let { + name, + nameStart, + nameEnd + } = this.currentStartTag; + + // <> should probably be a syntax error, but s-h-t is currently broken for that case + debugAssert(name !== '', 'tag name cannot be empty'); + debugAssert(nameStart !== null, 'nameStart unexpectedly null'); + debugAssert(nameEnd !== null, 'nameEnd unexpectedly null'); + let nameLoc = nameStart.until(nameEnd); + let [head, ...tail] = asPresentArray(name.split('.')); + let path = b.path({ + head: b.head({ + original: head, + loc: nameLoc.sliceStartChars({ + chars: head.length + }) + }), + tail, + loc: nameLoc + }); + let { + attributes, + modifiers, + comments, + params, + selfClosing, + loc + } = this.finish(this.currentStartTag); + let element = b.element({ + path, + selfClosing, + attributes, + modifiers, + comments, + params, + children: [], + openTag: loc, + closeTag: selfClosing ? null : SourceSpan.broken(), + loc + }); + this.elementStack.push(element); + } + finishEndTag(isVoid) { + let { + start: closeTagStart + } = this.currentTag; + let tag = this.finish(this.currentTag); + let element = this.elementStack.pop(); + this.validateEndTag(tag, element, isVoid); + let parent = this.currentElement(); + if (isVoid) { + element.closeTag = null; + } else if (element.selfClosing) { + debugAssert(element.closeTag === null, 'element.closeTag unexpectedly present'); + } else { + element.closeTag = closeTagStart.until(this.offset()); + } + element.loc = element.loc.withEnd(this.offset()); + appendChild(parent, b.element(element)); + } + markTagAsSelfClosing() { + let tag = this.currentTag; + if (tag.type === 'StartTag') { + tag.selfClosing = true; + } else { + throw generateSyntaxError(`Invalid end tag: closing tag must not be self-closing`, this.source.spanFor({ + start: tag.start.toJSON(), + end: this.offset().toJSON() + })); + } + } + + // Tags - name + + appendToTagName(char) { + let tag = this.currentTag; + tag.name += char; + if (tag.type === 'StartTag') { + let offset = this.offset(); + if (tag.nameStart === null) { + debugAssert(tag.nameEnd === null, 'nameStart and nameEnd must both be null'); + + // Note that the tokenizer already consumed the token here + tag.nameStart = offset.move(-1); + } + tag.nameEnd = offset; + } + } + + // Tags - attributes + + beginAttribute() { + let offset = this.offset(); + this.currentAttribute = { + name: '', + parts: [], + currentPart: null, + isQuoted: false, + isDynamic: false, + start: offset, + valueSpan: offset.collapsed() + }; + } + appendToAttributeName(char) { + this.currentAttr.name += char; + + // The block params parsing code can actually handle peek=non-space just + // fine, but this check was added as an optimization, as there is a little + // bit of setup overhead for the parsing logic just to immediately bail + if (this.currentAttr.name === 'as') { + this.parsePossibleBlockParams(); + } + } + beginAttributeValue(isQuoted) { + this.currentAttr.isQuoted = isQuoted; + this.startTextPart(); + this.currentAttr.valueSpan = this.offset().collapsed(); + } + appendToAttributeValue(char) { + let parts = this.currentAttr.parts; + let lastPart = parts[parts.length - 1]; + let current = this.currentAttr.currentPart; + if (current) { + current.chars += char; + + // update end location for each added char + current.loc = current.loc.withEnd(this.offset()); + } else { + // initially assume the text node is a single char + let loc = this.offset(); + + // the tokenizer line/column have already been advanced, correct location info + if (char === '\n') { + loc = lastPart ? lastPart.loc.getEnd() : this.currentAttr.valueSpan.getStart(); + } else { + loc = loc.move(-1); + } + this.currentAttr.currentPart = b.text({ + chars: char, + loc: loc.collapsed() + }); + } + } + finishAttributeValue() { + this.finalizeTextPart(); + let tag = this.currentTag; + let tokenizerPos = this.offset(); + if (tag.type === 'EndTag') { + throw generateSyntaxError(`Invalid end tag: closing tag must not have attributes`, this.source.spanFor({ + start: tag.start.toJSON(), + end: tokenizerPos.toJSON() + })); + } + let { + name, + parts, + start, + isQuoted, + isDynamic, + valueSpan + } = this.currentAttr; + + // Just trying to be helpful with `` rather than letting it through as an attribute + if (name.startsWith('|') && parts.length === 0 && !isQuoted && !isDynamic) { + throw generateSyntaxError('Invalid block parameters syntax: block parameters must be preceded by the `as` keyword', start.until(start.move(name.length))); + } + let value = this.assembleAttributeValue(parts, isQuoted, isDynamic, start.until(tokenizerPos)); + value.loc = valueSpan.withEnd(tokenizerPos); + let attribute = b.attr({ + name, + value, + loc: start.until(tokenizerPos) + }); + this.currentStartTag.attributes.push(attribute); + } + parsePossibleBlockParams() { + // const enums that we can't use directly + const BEFORE_ATTRIBUTE_NAME = 'beforeAttributeName'; + const ATTRIBUTE_NAME = 'attributeName'; + const AFTER_ATTRIBUTE_NAME = 'afterAttributeName'; + + // Regex to validate the identifier for block parameters. + // Based on the ID validation regex in Handlebars. + const ID_INVERSE_PATTERN = /[!"#%&'()*+./;<=>@[\\\]^`{|}~]/u; + debugAssert(this.tokenizer.state === ATTRIBUTE_NAME, 'must be in TokenizerState.attributeName'); + const element = this.currentStartTag; + const as = this.currentAttr; + let state = { + state: 'PossibleAs' + }; + const handlers = { + PossibleAs: next => { + debugAssert(state.state === 'PossibleAs', 'bug in block params parser'); + if (isSpace(next)) { + // " as ..." + state = { + state: 'BeforeStartPipe' + }; + this.tokenizer.transitionTo(AFTER_ATTRIBUTE_NAME); + this.tokenizer.consume(); + } else if (next === '|') { + // " as|..." + // Following Handlebars and require a space between "as" and the pipe + throw generateSyntaxError(`Invalid block parameters syntax: expecting at least one space character between "as" and "|"`, as.start.until(this.offset().move(1))); + } else { + // " as{{...", " async...", " as=...", " as>...", " as/>..." + // Don't consume, let the normal tokenizer code handle the next steps + state = { + state: 'Done' + }; + } + }, + BeforeStartPipe: next => { + debugAssert(state.state === 'BeforeStartPipe', 'bug in block params parser'); + if (isSpace(next)) { + this.tokenizer.consume(); + } else if (next === '|') { + state = { + state: 'BeforeBlockParamName' + }; + this.tokenizer.transitionTo(BEFORE_ATTRIBUTE_NAME); + this.tokenizer.consume(); + } else { + // " as {{...", " as bs...", " as =...", " as ...", " as/>..." + // Don't consume, let the normal tokenizer code handle the next steps + state = { + state: 'Done' + }; + } + }, + BeforeBlockParamName: next => { + debugAssert(state.state === 'BeforeBlockParamName', 'bug in block params parser'); + if (isSpace(next)) { + this.tokenizer.consume(); + } else if (next === '') { + // The HTML tokenizer ran out of characters, so we are either + // encountering mustache or + state = { + state: 'Done' + }; + this.pendingError = { + mustache(loc) { + throw generateSyntaxError(`Invalid block parameters syntax: mustaches cannot be used inside parameters list`, loc); + }, + eof(loc) { + throw generateSyntaxError(`Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list`, as.start.until(loc)); + } + }; + } else if (next === '|') { + if (element.params.length === 0) { + // Following Handlebars and treat empty block params a syntax error + throw generateSyntaxError(`Invalid block parameters syntax: empty parameters list, expecting at least one identifier`, as.start.until(this.offset().move(1))); + } else { + state = { + state: 'AfterEndPipe' + }; + this.tokenizer.consume(); + } + } else if (next === '>' || next === '/') { + throw generateSyntaxError(`Invalid block parameters syntax: incomplete parameters list, expecting "|" but the tag was closed prematurely`, as.start.until(this.offset().move(1))); + } else { + // slurp up anything else into the name, validate later + state = { + state: 'BlockParamName', + name: next, + start: this.offset() + }; + this.tokenizer.consume(); + } + }, + BlockParamName: next => { + debugAssert(state.state === 'BlockParamName', 'bug in block params parser'); + if (next === '') { + // The HTML tokenizer ran out of characters, so we are either + // encountering mustache or , HBS side will attach the error + // to the next span + state = { + state: 'Done' + }; + this.pendingError = { + mustache(loc) { + throw generateSyntaxError(`Invalid block parameters syntax: mustaches cannot be used inside parameters list`, loc); + }, + eof(loc) { + throw generateSyntaxError(`Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list`, as.start.until(loc)); + } + }; + } else if (next === '|' || isSpace(next)) { + let loc = state.start.until(this.offset()); + if (state.name === 'this' || ID_INVERSE_PATTERN.test(state.name)) { + throw generateSyntaxError(`Invalid block parameters syntax: invalid identifier name \`${state.name}\``, loc); + } + element.params.push(b.var({ + name: state.name, + loc + })); + state = next === '|' ? { + state: 'AfterEndPipe' + } : { + state: 'BeforeBlockParamName' + }; + this.tokenizer.consume(); + } else if (next === '>' || next === '/') { + throw generateSyntaxError(`Invalid block parameters syntax: expecting "|" but the tag was closed prematurely`, as.start.until(this.offset().move(1))); + } else { + // slurp up anything else into the name, validate later + state.name += next; + this.tokenizer.consume(); + } + }, + AfterEndPipe: next => { + debugAssert(state.state === 'AfterEndPipe', 'bug in block params parser'); + if (isSpace(next)) { + this.tokenizer.consume(); + } else if (next === '') { + // The HTML tokenizer ran out of characters, so we are either + // encountering mustache or , HBS side will attach the error + // to the next span + state = { + state: 'Done' + }; + this.pendingError = { + mustache(loc) { + throw generateSyntaxError(`Invalid block parameters syntax: modifiers cannot follow parameters list`, loc); + }, + eof(loc) { + throw generateSyntaxError(`Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list`, as.start.until(loc)); + } + }; + } else if (next === '>' || next === '/') { + // Don't consume, let the normal tokenizer code handle the next steps + state = { + state: 'Done' + }; + } else { + // Slurp up the next "token" for the error span + state = { + state: 'Error', + message: 'Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list', + start: this.offset() + }; + this.tokenizer.consume(); + } + }, + Error: next => { + debugAssert(state.state === 'Error', 'bug in block params parser'); + if (next === '' || next === '/' || next === '>' || isSpace(next)) { + throw generateSyntaxError(state.message, state.start.until(this.offset())); + } else { + // Slurp up the next "token" for the error span + this.tokenizer.consume(); + } + }, + Done: () => { + debugAssert(false, 'This should never be called'); + } + }; + let next; + do { + next = this.tokenizer.peek(); + handlers[state.state](next); + } while (state.state !== 'Done' && next !== ''); + debugAssert(state.state === 'Done', 'bug in block params parser'); + } + reportSyntaxError(message) { + throw generateSyntaxError(message, this.offset().collapsed()); + } + assembleConcatenatedValue(parts) { + for (const part of parts) { + if (part.type !== 'MustacheStatement' && part.type !== 'TextNode') { + throw generateSyntaxError(`Unsupported node in quoted attribute value: ${part['type']}`, part.loc); + } + } + assertPresentArray(parts, `the concatenation parts of an element should not be empty`); + let first = getFirst(parts); + let last = getLast(parts); + return b.concat({ + parts, + loc: this.source.spanFor(first.loc).extend(this.source.spanFor(last.loc)) + }); + } + validateEndTag(tag, element, selfClosing) { + if (voidMap.has(tag.name) && !selfClosing) { + // EngTag is also called by StartTag for void and self-closing tags (i.e. + // or
, so we need to check for that here. Otherwise, we would + // throw an error for those cases. + throw generateSyntaxError(`<${tag.name}> elements do not need end tags. You should remove it`, tag.loc); + } else if (element.tag === undefined) { + throw generateSyntaxError(`Closing tag without an open tag`, tag.loc); + } else if (element.tag !== tag.name) { + throw generateSyntaxError(`Closing tag did not match last open tag <${element.tag}> (on line ${element.loc.startPosition.line})`, tag.loc); + } + } + assembleAttributeValue(parts, isQuoted, isDynamic, span) { + if (isDynamic) { + if (isQuoted) { + return this.assembleConcatenatedValue(parts); + } else { + assertPresentArray(parts); + const [head, a] = parts; + if (a === undefined || a.type === 'TextNode' && a.chars === '/') { + return head; + } else { + throw generateSyntaxError(`An unquoted attribute value must be a string or a mustache, ` + `preceded by whitespace or a '=' character, and ` + `followed by whitespace, a '>' character, or '/>'`, span); + } + } + } else if (isPresentArray(parts)) { + return parts[0]; + } else { + return b.text({ + chars: '', + loc: span + }); + } + } + } + + /** + ASTPlugins can make changes to the Glimmer template AST before + compilation begins. + */ + + const syntax = { + parse: preprocess, + builders: publicBuilder, + print: build, + traverse, + Walker + }; + class CodemodEntityParser extends EntityParser { + // match upstream types, but never match an entity + constructor() { + super({}); + } + parse() { + return undefined; + } + } + function preprocess(input, options = {}) { + let mode = options.mode || 'precompile'; + let source; + let ast; + if (typeof input === 'string') { + source = new Source(input, options.meta?.moduleName); + if (mode === 'codemod') { + ast = parseWithoutProcessing(input, options.parseOptions); + } else { + ast = parse(input, options.parseOptions); + } + } else if (input instanceof Source) { + source = input; + if (mode === 'codemod') { + ast = parseWithoutProcessing(input.source, options.parseOptions); + } else { + ast = parse(input.source, options.parseOptions); + } + } else { + source = new Source('', options.meta?.moduleName); + ast = input; + } + let entityParser = undefined; + if (mode === 'codemod') { + entityParser = new CodemodEntityParser(); + } + let offsets = SourceSpan.forCharPositions(source, 0, source.source.length); + ast.loc = { + source: '(program)', + start: offsets.startPosition, + end: offsets.endPosition + }; + let template = new TokenizerEventHandlers(source, entityParser, mode).parse(ast, options.locals ?? []); + if (options?.plugins?.ast) { + for (const transform of options.plugins.ast) { + let env = assign({}, options, { + syntax + }, { + plugins: undefined + }); + let pluginResult = transform(env); + traverse(template, pluginResult.visitor); + } + } + return template; + } + + /** + * Gets the correct Token from the Node based on it's type + */ + function tokensFromType(node, scopedTokens, options) { + if (node.type === 'PathExpression') { + if (node.head.type === 'AtHead' || node.head.type === 'ThisHead') { + return; + } + const possbleToken = node.head.name; + if (scopedTokens.indexOf(possbleToken) === -1) { + return possbleToken; + } + } else if (node.type === 'ElementNode') { + const { + tag + } = node; + const char = tag.charAt(0); + if (char === ':' || char === '@') { + return; + } + if (!options.includeHtmlElements && tag.indexOf('.') === -1 && tag.toLowerCase() === tag) { + return; + } + if (tag.substr(0, 5) === 'this.') { + return; + } + + // the tag may be from a yielded object + // example: + // + // An ElementNode does not parse the "tag" in to a PathExpression + // so we have to split on `.`, just like how `this` presence is checked. + if (tag.includes('.')) { + let [potentialLocal] = tag.split('.'); + if (scopedTokens.includes(potentialLocal)) return; + } + if (scopedTokens.includes(tag)) return; + return tag; + } + } + + /** + * Adds tokens to the tokensSet based on their node.type + */ + function addTokens(tokensSet, node, scopedTokens, options) { + const maybeTokens = tokensFromType(node, scopedTokens, options); + (Array.isArray(maybeTokens) ? maybeTokens : [maybeTokens]).forEach(maybeToken => { + if (maybeToken !== undefined && maybeToken[0] !== '@') { + const maybeTokenFirstSegment = maybeToken.split('.')[0]; + if (!scopedTokens.includes(maybeTokenFirstSegment)) { + tokensSet.add(maybeToken.split('.')[0]); + } + } + }); + } + + /** + * Parses and traverses a given handlebars html template to extract all template locals + * referenced that could possible come from the parent scope. Can exclude known keywords + * optionally. + */ + function getTemplateLocals(html, options = { + includeHtmlElements: false, + includeKeywords: false + }) { + const ast = preprocess(html); + const tokensSet = new Set(); + const scopedTokens = []; + traverse(ast, { + Block: { + enter({ + blockParams + }) { + blockParams.forEach(param => { + scopedTokens.push(param); + }); + }, + exit({ + blockParams + }) { + blockParams.forEach(() => { + scopedTokens.pop(); + }); + } + }, + ElementNode: { + enter(node) { + node.blockParams.forEach(param => { + scopedTokens.push(param); + }); + addTokens(tokensSet, node, scopedTokens, options); + }, + exit({ + blockParams + }) { + blockParams.forEach(() => { + scopedTokens.pop(); + }); + } + }, + PathExpression(node) { + addTokens(tokensSet, node, scopedTokens, options); + } + }); + let tokens = []; + tokensSet.forEach(s => tokens.push(s)); + if (!options?.includeKeywords) { + tokens = tokens.filter(token => !isKeyword(token)); + } + return tokens; + } + + /** + * This is a convenience function for creating ASTv2 nodes, with an optional name and the node's + * options. + * + * ```ts + * export class HtmlText extends node('HtmlText').fields<{ chars: string }>() {} + * ``` + * + * This creates a new ASTv2 node with the name `'HtmlText'` and one field `chars: string` (in + * addition to a `loc: SourceOffsets` field, which all nodes have). + * + * ```ts + * export class Args extends node().fields<{ + * positional: PositionalArguments; + * named: NamedArguments + * }>() {} + * ``` + * + * This creates a new un-named ASTv2 node with two fields (`positional: Positional` and `named: + * Named`, in addition to the generic `loc: SourceOffsets` field). + * + * Once you create a node using `node`, it is instantiated with all of its fields (including `loc`): + * + * ```ts + * new HtmlText({ loc: offsets, chars: someString }); + * ``` + */ + + function node(name) { + if (name !== undefined) { + const type = name; + return { + fields() { + return class { + // SAFETY: initialized via `assign` in the constructor. + + type; + constructor(fields) { + this.type = type; + assign(this, fields); + } + }; + } + }; + } else { + return { + fields() { + return class { + // SAFETY: initialized via `assign` in the constructor. + + constructor(fields) { + assign(this, fields); + } + }; + } + }; + } + } + + /** + * Corresponds to syntaxes with positional and named arguments: + * + * - SubExpression + * - Invoking Append + * - Invoking attributes + * - InvokeBlock + * + * If `Args` is empty, the `SourceOffsets` for this node should be the collapsed position + * immediately after the parent call node's `callee`. + */ + let Args$1 = class Args extends node().fields() { + static empty(loc) { + return new Args({ + loc, + positional: PositionalArguments.empty(loc), + named: NamedArguments$1.empty(loc) + }); + } + static named(named) { + return new Args({ + loc: named.loc, + positional: PositionalArguments.empty(named.loc.collapse('end')), + named + }); + } + nth(offset) { + return this.positional.nth(offset); + } + get(name) { + return this.named.get(name); + } + isEmpty() { + return this.positional.isEmpty() && this.named.isEmpty(); + } + }; + + /** + * Corresponds to positional arguments. + * + * If `PositionalArguments` is empty, the `SourceOffsets` for this node should be the collapsed + * position immediately after the parent call node's `callee`. + */ + class PositionalArguments extends node().fields() { + static empty(loc) { + return new PositionalArguments({ + loc, + exprs: [] + }); + } + get size() { + return this.exprs.length; + } + nth(offset) { + return this.exprs[offset] || null; + } + isEmpty() { + return this.exprs.length === 0; + } + } + + /** + * Corresponds to named arguments. + * + * If `PositionalArguments` and `NamedArguments` are empty, the `SourceOffsets` for this node should + * be the same as the `Args` node that contains this node. + * + * If `PositionalArguments` is not empty but `NamedArguments` is empty, the `SourceOffsets` for this + * node should be the collapsed position immediately after the last positional argument. + */ + let NamedArguments$1 = class NamedArguments extends node().fields() { + static empty(loc) { + return new NamedArguments({ + loc, + entries: [] + }); + } + get size() { + return this.entries.length; + } + get(name) { + let entry = this.entries.filter(e => e.name.chars === name)[0]; + return entry ? entry.value : null; + } + isEmpty() { + return this.entries.length === 0; + } + }; + + /** + * Corresponds to a single named argument. + * + * ```hbs + * x= + * ``` + */ + let NamedArgument$1 = class NamedArgument { + loc; + name; + value; + constructor(options) { + this.loc = options.name.loc.extend(options.value.loc); + this.name = options.name; + this.value = options.value; + } + }; + + /** + * Attr nodes look like HTML attributes, but are classified as: + * + * 1. `HtmlAttr`, which means a regular HTML attribute in Glimmer + * 2. `SplatAttr`, which means `...attributes` + * 3. `ComponentArg`, which means an attribute whose name begins with `@`, and it is therefore a + * component argument. + */ + + /** + * `HtmlAttr` and `SplatAttr` are grouped together because the order of the `SplatAttr` node, + * relative to other attributes, matters. + */ + + /** + * "Attr Block" nodes are allowed inside an open element tag in templates. They interact with the + * element (or component). + */ + + /** + * `HtmlAttr` nodes are valid HTML attributes, with or without a value. + * + * Exceptions: + * + * - `...attributes` is `SplatAttr` + * - `@x=` is `ComponentArg` + */ + class HtmlAttr extends node('HtmlAttr').fields() {} + let SplatAttr$1 = class SplatAttr extends node('SplatAttr').fields() {}; + + /** + * Corresponds to an argument passed by a component (`@x=`) + */ + class ComponentArg extends node().fields() { + /** + * Convert the component argument into a named argument node + */ + toNamedArgument() { + return new NamedArgument$1({ + name: this.name, + value: this.value + }); + } + } + + /** + * An `ElementModifier` is just a normal call node in modifier position. + */ + class ElementModifier extends node('ElementModifier').fields() {} + + /** + * Content Nodes are allowed in content positions in templates. They correspond to behavior in the + * [Data][data] tokenization state in HTML. + * + * [data]: https://html.spec.whatwg.org/multipage/parsing.html#data-state + */ + + class GlimmerComment extends node('GlimmerComment').fields() {} + class HtmlText extends node('HtmlText').fields() {} + class HtmlComment extends node('HtmlComment').fields() {} + class AppendContent extends node('AppendContent').fields() { + get callee() { + if (this.value.type === 'Call') { + return this.value.callee; + } else { + return this.value; + } + } + get args() { + if (this.value.type === 'Call') { + return this.value.args; + } else { + return Args$1.empty(this.value.loc.collapse('end')); + } + } + } + let InvokeBlock$1 = class InvokeBlock extends node('InvokeBlock').fields() {}; + /** + * Corresponds to a component invocation. When the content of a component invocation contains no + * named blocks, `blocks` contains a single named block named `"default"`. When a component + * invocation is self-closing, `blocks` is empty. + */ + let InvokeComponent$1 = class InvokeComponent extends node('InvokeComponent').fields() { + get args() { + let entries = this.componentArgs.map(a => a.toNamedArgument()); + return Args$1.named(new NamedArguments$1({ + loc: SpanList.range(entries, this.callee.loc.collapse('end')), + entries + })); + } + }; + /** + * Corresponds to a simple HTML element. The AST allows component arguments and modifiers to support + * future extensions. + */ + let SimpleElement$1 = class SimpleElement extends node('SimpleElement').fields() { + get args() { + let entries = this.componentArgs.map(a => a.toNamedArgument()); + return Args$1.named(new NamedArguments$1({ + loc: SpanList.range(entries, this.tag.loc.collapse('end')), + entries + })); + } + }; + + /** + * A Handlebars literal. + * + * {@link https://handlebarsjs.com/guide/expressions.html#literal-segments} + */ + + /** + * Corresponds to a Handlebars literal. + * + * @see {LiteralValue} + */ + class LiteralExpression extends node('Literal').fields() { + toSlice() { + return new SourceSlice({ + loc: this.loc, + chars: this.value + }); + } + } + /** + * Returns true if an input {@see ExpressionNode} is a literal. + */ + function isLiteral$1(node, kind) { + if (node.type === 'Literal') { + if (kind === undefined) { + return true; + } else if (kind === 'null') { + return node.value === null; + } else { + return typeof node.value === kind; + } + } else { + return false; + } + } + + /** + * Corresponds to a path in expression position. + * + * ```hbs + * this + * this.x + * @x + * @x.y + * x + * x.y + * ``` + */ + let PathExpression$1 = class PathExpression extends node('Path').fields() {}; + + /** + * Corresponds to a known strict-mode keyword. It behaves similarly to a + * PathExpression with a FreeVarReference, but implies StrictResolution and + * is guaranteed to not have a tail, since `{{outlet.foo}}` would have been + * illegal. + */ + class KeywordExpression extends node('Keyword').fields() {} + + /** + * Corresponds to a parenthesized call expression. + * + * ```hbs + * (x) + * (x.y) + * (x y) + * (x.y z) + * ``` + */ + let CallExpression$1 = class CallExpression extends node('Call').fields() {}; + + /** + * Corresponds to an interpolation in attribute value position. + * + * ```hbs + *
block.name.chars === name)[0] || null; + } + }; + /** + * Corresponds to a single named block. This is used for anonymous named blocks (`default` and + * `else`). + */ + let NamedBlock$1 = class NamedBlock extends node().fields() { + get args() { + let entries = this.componentArgs.map(a => a.toNamedArgument()); + return Args$1.named(new NamedArguments$1({ + loc: SpanList.range(entries, this.name.loc.collapse('end')), + entries + })); + } + }; + + /** + * Corresponds to `this` at the head of an expression. + */ + class ThisReference extends node('This').fields() {} + + /** + * Corresponds to `@` at the beginning of an expression. + */ + class ArgReference extends node('Arg').fields() {} + + /** + * Corresponds to `` at the beginning of an expression, when `` is in the current + * block's scope. + */ + class LocalVarReference extends node('Local').fields() {} + + /** + * Corresponds to `` at the beginning of an expression, when `` is *not* in the + * current block's scope. + * + * The `resolution: FreeVarResolution` field describes how to resolve the free variable. + * + * Note: In strict mode, it must always be a variable that is in a concrete JavaScript scope that + * the template will be installed into. + */ + class FreeVarReference extends node('Free').fields() {} + + /** + * A free variable is resolved according to a resolution rule: + * + * 1. Strict resolution + * 2. Namespaced resolution + */ + + /** + * Strict resolution is used: + * + * 1. in a strict mode template + * 2. in an local variable invocation with dot paths + */ + const STRICT_RESOLUTION = { + resolution: () => opcodes.GetStrictKeyword, + serialize: () => 'Strict', + isAngleBracket: false + }; + const HTML_RESOLUTION = { + ...STRICT_RESOLUTION, + isAngleBracket: true + }; + function isStrictResolution(value) { + return value === STRICT_RESOLUTION; + } + + /** + * A `LooseModeResolution` includes one or more namespaces to resolve the variable in + * + * In practice, there are a limited number of possible combinations of these degrees of freedom, + * and they are captured by the `Namespaces` union below. + */ + class LooseModeResolution { + /** + * Namespaced resolution is used in an unambiguous syntax position: + * + * 1. `(sexp)` (namespace: `Helper`) + * 2. `{{#block}}` (namespace: `Component`) + * 3. `` (namespace: `Modifier`) + * 4. `` (namespace: `Component`) + */ + static namespaced(namespace, isAngleBracket = false) { + return new LooseModeResolution([namespace], isAngleBracket); + } + + /** + * Append resolution is used when the variable should be resolved in both the `component` and + * `helper` namespaces. + * + * ```hbs + * {{x}} + * ``` + * + * ```hbs + * {{x y}} + * ``` + * + * ^ In either case, `x` should be resolved in the `component` and `helper` namespaces. + */ + static append() { + return new LooseModeResolution([FreeVarNamespace.Component, FreeVarNamespace.Helper]); + } + + /** + * Trusting append resolution is used when the variable should be resolved only in the + * `helper` namespaces. + * + * ```hbs + * {{{x}}} + * ``` + * + * ```hbs + * {{{x y}}} + * ``` + * + * ^ In either case, `x` should be resolved in the `helper` namespace. + */ + static trustingAppend() { + return this.namespaced(FreeVarNamespace.Helper); + } + constructor(namespaces, isAngleBracket = false) { + this.namespaces = namespaces; + this.isAngleBracket = isAngleBracket; + } + resolution() { + if (this.namespaces.length === 1) { + switch (this.namespaces[0]) { + case FreeVarNamespace.Helper: + return opcodes.GetFreeAsHelperHead; + case FreeVarNamespace.Modifier: + return opcodes.GetFreeAsModifierHead; + case FreeVarNamespace.Component: + return opcodes.GetFreeAsComponentHead; + } + } else { + return opcodes.GetFreeAsComponentOrHelperHead; + } + } + serialize() { + if (this.namespaces.length === 1) { + return this.namespaces[0]; + } else { + return 'ComponentOrHelper'; + } + } + } + let FreeVarNamespace = /*#__PURE__*/function (FreeVarNamespace) { + FreeVarNamespace["Helper"] = "Helper"; + FreeVarNamespace["Modifier"] = "Modifier"; + FreeVarNamespace["Component"] = "Component"; + return FreeVarNamespace; + }({}); + const HELPER_NAMESPACE = FreeVarNamespace.Helper; + const MODIFIER_NAMESPACE = FreeVarNamespace.Modifier; + const COMPONENT_NAMESPACE = FreeVarNamespace.Component; + + /** + * A `Namespaced` must be resolved in one or more namespaces. + * + * ```hbs + * + * ``` + * + * ^ `X` is resolved in the `component` namespace + * + * ```hbs + * (x) + * ``` + * + * ^ `x` is resolved in the `helper` namespace + * + * ```hbs + * + * ``` + * + * ^ `x` is resolved in the `modifier` namespace + */ + + // Serialization + + function loadResolution(resolution) { + if (resolution === 'Strict') { + return STRICT_RESOLUTION; + } else if (resolution === 'ComponentOrHelper') { + return LooseModeResolution.append(); + } else { + return LooseModeResolution.namespaced(resolution); + } + } + var api$1 = /*#__PURE__*/Object.freeze({ + __proto__: null, + AppendContent: AppendContent, + ArgReference: ArgReference, + Args: Args$1, + Block: Block, + COMPONENT_NAMESPACE: COMPONENT_NAMESPACE, + CallExpression: CallExpression$1, + ComponentArg: ComponentArg, + ElementModifier: ElementModifier, + FreeVarNamespace: FreeVarNamespace, + FreeVarReference: FreeVarReference, + GlimmerComment: GlimmerComment, + HELPER_NAMESPACE: HELPER_NAMESPACE, + HTML_RESOLUTION: HTML_RESOLUTION, + HtmlAttr: HtmlAttr, + HtmlComment: HtmlComment, + HtmlText: HtmlText, + InterpolateExpression: InterpolateExpression$1, + InvokeBlock: InvokeBlock$1, + InvokeComponent: InvokeComponent$1, + KeywordExpression: KeywordExpression, + LiteralExpression: LiteralExpression, + LocalVarReference: LocalVarReference, + LooseModeResolution: LooseModeResolution, + MODIFIER_NAMESPACE: MODIFIER_NAMESPACE, + NamedArgument: NamedArgument$1, + NamedArguments: NamedArguments$1, + NamedBlock: NamedBlock$1, + NamedBlocks: NamedBlocks$1, + PathExpression: PathExpression$1, + PositionalArguments: PositionalArguments, + STRICT_RESOLUTION: STRICT_RESOLUTION, + SimpleElement: SimpleElement$1, + SplatAttr: SplatAttr$1, + Template: Template$1, + ThisReference: ThisReference, + isLiteral: isLiteral$1, + isStrictResolution: isStrictResolution, + loadResolution: loadResolution, + node: node + }); + class SymbolTable { + static top(locals, keywords, options) { + return new ProgramSymbolTable(locals, keywords, options); + } + child(locals) { + let symbols = locals.map(name => this.allocate(name)); + return new BlockSymbolTable(this, locals, symbols); + } + } + class ProgramSymbolTable extends SymbolTable { + constructor(templateLocals, keywords, options) { + super(); + this.templateLocals = templateLocals; + this.keywords = keywords; + this.options = options; + } + symbols = []; + upvars = []; + size = 1; + named = dict(); + blocks = dict(); + usedTemplateLocals = []; + #hasDebugger = false; + hasLexical(name) { + return this.options.lexicalScope(name); + } + hasKeyword(name) { + return this.keywords.includes(name); + } + getKeyword(name) { + return this.allocateFree(name, STRICT_RESOLUTION); + } + getUsedTemplateLocals() { + return this.usedTemplateLocals; + } + setHasDebugger() { + this.#hasDebugger = true; + } + get hasEval() { + return this.#hasDebugger; + } + has(name) { + return this.templateLocals.includes(name); + } + get(name) { + let index = this.usedTemplateLocals.indexOf(name); + if (index !== -1) { + return [index, true]; + } + index = this.usedTemplateLocals.length; + this.usedTemplateLocals.push(name); + return [index, true]; + } + getLocalsMap() { + return dict(); + } + getDebugInfo() { + return Object.values(this.getLocalsMap()); + } + allocateFree(name, resolution) { + // If the name in question is an uppercase (i.e. angle-bracket) component invocation, run + // the optional `customizeComponentName` function provided to the precompiler. + if (resolution.resolution() === opcodes.GetFreeAsComponentHead && resolution.isAngleBracket) { + name = this.options.customizeComponentName(name); + } + let index = this.upvars.indexOf(name); + if (index !== -1) { + return index; + } + index = this.upvars.length; + this.upvars.push(name); + return index; + } + allocateNamed(name) { + let named = this.named[name]; + if (!named) { + named = this.named[name] = this.allocate(name); + } + return named; + } + allocateBlock(name) { + if (name === 'inverse') { + name = 'else'; + } + let block = this.blocks[name]; + if (!block) { + block = this.blocks[name] = this.allocate(`&${name}`); + } + return block; + } + allocate(identifier) { + this.symbols.push(identifier); + return this.size++; + } + } + class BlockSymbolTable extends SymbolTable { + constructor(parent, symbols, slots) { + super(); + this.parent = parent; + this.symbols = symbols; + this.slots = slots; + } + get locals() { + return this.symbols; + } + hasLexical(name) { + return this.parent.hasLexical(name); + } + getKeyword(name) { + return this.parent.getKeyword(name); + } + hasKeyword(name) { + return this.parent.hasKeyword(name); + } + has(name) { + return this.symbols.indexOf(name) !== -1 || this.parent.has(name); + } + get(name) { + let local = this.#get(name); + return local ? [local, false] : this.parent.get(name); + } + #get(name) { + let slot = this.symbols.indexOf(name); + return slot === -1 ? null : unwrap(this.slots[slot]); + } + getLocalsMap() { + let dict = this.parent.getLocalsMap(); + this.symbols.forEach(symbol => dict[symbol] = this.get(symbol)[0]); + return dict; + } + getDebugInfo() { + return Object.values(this.getLocalsMap()); + } + setHasDebugger() { + this.parent.setHasDebugger(); + } + allocateFree(name, resolution) { + return this.parent.allocateFree(name, resolution); + } + allocateNamed(name) { + return this.parent.allocateNamed(name); + } + allocateBlock(name) { + return this.parent.allocateBlock(name); + } + allocate(identifier) { + return this.parent.allocate(identifier); + } + } + var api = /*#__PURE__*/Object.freeze({ + __proto__: null + }); + let Builder$1 = class Builder { + // TEMPLATE // + + template(symbols, body, loc) { + return new Template$1({ + table: symbols, + body, + loc + }); + } + + // INTERNAL (these nodes cannot be reached when doing general-purpose visiting) // + + block(symbols, body, loc) { + return new Block({ + scope: symbols, + body, + loc + }); + } + namedBlock(name, block, loc) { + return new NamedBlock$1({ + name, + block, + attrs: [], + componentArgs: [], + modifiers: [], + loc + }); + } + simpleNamedBlock(name, block, loc) { + return new BuildElement({ + selfClosing: false, + attrs: [], + componentArgs: [], + modifiers: [], + comments: [] + }).named(name, block, loc); + } + slice(chars, loc) { + return new SourceSlice({ + loc, + chars + }); + } + args(positional, named, loc) { + return new Args$1({ + loc, + positional, + named + }); + } + positional(exprs, loc) { + return new PositionalArguments({ + loc, + exprs + }); + } + namedArgument(key, value) { + return new NamedArgument$1({ + name: key, + value + }); + } + named(entries, loc) { + return new NamedArguments$1({ + loc, + entries + }); + } + attr({ + name, + value, + trusting + }, loc) { + return new HtmlAttr({ + loc, + name, + value, + trusting + }); + } + splatAttr(symbol, loc) { + return new SplatAttr$1({ + symbol, + loc + }); + } + arg({ + name, + value, + trusting + }, loc) { + return new ComponentArg({ + name, + value, + trusting, + loc + }); + } + + // EXPRESSIONS // + + path(head, tail, loc) { + return new PathExpression$1({ + loc, + ref: head, + tail + }); + } + keyword(name, symbol, loc) { + return new KeywordExpression({ + loc, + name, + symbol + }); + } + self(loc) { + return new ThisReference({ + loc + }); + } + at(name, symbol, loc) { + // the `@` should be included so we have a complete source range + debugAssert(name[0] === '@', `call builders.at() with a string that starts with '@'`); + return new ArgReference({ + loc, + name: new SourceSlice({ + loc, + chars: name + }), + symbol + }); + } + freeVar({ + name, + context, + symbol, + loc + }) { + debugAssert(name !== 'this', `You called builders.freeVar() with 'this'. Call builders.this instead`); + debugAssert(name[0] !== '@', `You called builders.freeVar() with '${name}'. Call builders.at('${name}') instead`); + return new FreeVarReference({ + name, + resolution: context, + symbol, + loc + }); + } + localVar(name, symbol, isTemplateLocal, loc) { + debugAssert(name !== 'this', `You called builders.var() with 'this'. Call builders.this instead`); + debugAssert(name[0] !== '@', `You called builders.var() with '${name}'. Call builders.at('${name}') instead`); + return new LocalVarReference({ + loc, + name, + isTemplateLocal, + symbol + }); + } + sexp(parts, loc) { + return new CallExpression$1({ + loc, + callee: parts.callee, + args: parts.args + }); + } + interpolate(parts, loc) { + assertPresentArray(parts); + return new InterpolateExpression$1({ + loc, + parts + }); + } + literal(value, loc) { + return new LiteralExpression({ + loc, + value + }); + } + + // STATEMENTS // + + append({ + table, + trusting, + value + }, loc) { + return new AppendContent({ + table, + trusting, + value, + loc + }); + } + modifier({ + callee, + args + }, loc) { + return new ElementModifier({ + loc, + callee, + args + }); + } + namedBlocks(blocks, loc) { + return new NamedBlocks$1({ + loc, + blocks + }); + } + blockStatement({ + program, + inverse = null, + ...call + }, loc) { + let blocksLoc = program.loc; + let blocks = [this.namedBlock(SourceSlice.synthetic('default'), program, program.loc)]; + if (inverse) { + blocksLoc = blocksLoc.extend(inverse.loc); + blocks.push(this.namedBlock(SourceSlice.synthetic('else'), inverse, inverse.loc)); + } + return new InvokeBlock$1({ + loc, + blocks: this.namedBlocks(blocks, blocksLoc), + callee: call.callee, + args: call.args + }); + } + element(options) { + return new BuildElement(options); + } + }; + class BuildElement { + builder; + constructor(base) { + this.base = base; + this.builder = new Builder$1(); + } + simple(tag, body, loc) { + return new SimpleElement$1(assign({ + tag, + body, + componentArgs: [], + loc + }, this.base)); + } + named(name, block, loc) { + return new NamedBlock$1(assign({ + name, + block, + componentArgs: [], + loc + }, this.base)); + } + selfClosingComponent(callee, loc) { + return new InvokeComponent$1(assign({ + loc, + callee, + // point the empty named blocks at the `/` self-closing tag + blocks: new NamedBlocks$1({ + blocks: [], + loc: loc.sliceEndChars({ + skipEnd: 1, + chars: 1 + }) + }) + }, this.base)); + } + componentWithDefaultBlock(callee, children, symbols, loc) { + let block = this.builder.block(symbols, children, loc); + let namedBlock = this.builder.namedBlock(SourceSlice.synthetic('default'), block, loc); // BUILDER.simpleNamedBlock('default', children, symbols, loc); + + return new InvokeComponent$1(assign({ + loc, + callee, + blocks: this.builder.namedBlocks([namedBlock], namedBlock.loc) + }, this.base)); + } + componentWithNamedBlocks(callee, blocks, loc) { + return new InvokeComponent$1(assign({ + loc, + callee, + blocks: this.builder.namedBlocks(blocks, SpanList.range(blocks)) + }, this.base)); + } + } + function SexpSyntaxContext(node) { + if (isSimpleCallee(node)) { + return LooseModeResolution.namespaced(HELPER_NAMESPACE); + } else { + return null; + } + } + function ModifierSyntaxContext(node) { + if (isSimpleCallee(node)) { + return LooseModeResolution.namespaced(MODIFIER_NAMESPACE); + } else { + return null; + } + } + function BlockSyntaxContext(node) { + if (isSimpleCallee(node)) { + return LooseModeResolution.namespaced(COMPONENT_NAMESPACE); + } else { + return null; + } + } + function ComponentSyntaxContext(node) { + if (isSimplePath(node)) { + return LooseModeResolution.namespaced(COMPONENT_NAMESPACE, true); + } else { + return null; + } + } + + /** + * This corresponds to attribute curlies (). + * In strict mode, this also corresponds to arg curlies. + */ + function AttrValueSyntaxContext(node) { + if (isSimpleCallee(node)) { + return LooseModeResolution.namespaced(HELPER_NAMESPACE); + } else { + return null; + } + } + + /** + * This corresponds to append positions text curlies. + */ + function AppendSyntaxContext(node) { + let isSimple = isSimpleCallee(node); + let trusting = node.trusting; + if (isSimple) { + return trusting ? LooseModeResolution.trustingAppend() : LooseModeResolution.append(); + } else { + return null; + } + } + // UTILITIES + + /** + * A call node has a simple callee if its head is: + * + * - a `PathExpression` + * - the `PathExpression`'s head is a `VarHead` + * - it has no tail + * + * Simple heads: + * + * ``` + * {{x}} + * {{x y}} + * ``` + * + * Not simple heads: + * + * ``` + * {{x.y}} + * {{x.y z}} + * {{@x}} + * {{@x a}} + * {{this}} + * {{this a}} + * ``` + */ + function isSimpleCallee(node) { + return isSimplePath(node.path); + } + function isSimplePath(node) { + if (node.type === 'PathExpression' && node.head.type === 'VarHead') { + return node.tail.length === 0; + } else { + return false; + } + } + function normalize$1(source, options = { + lexicalScope: () => false + }) { + let ast = preprocess(source, options); + let normalizeOptions = { + strictMode: false, + ...options, + locals: ast.blockParams, + keywords: options.keywords ?? [] + }; + let top = SymbolTable.top(normalizeOptions.locals, normalizeOptions.keywords, { + customizeComponentName: options.customizeComponentName ?? (name => name), + lexicalScope: options.lexicalScope + }); + let block = new BlockContext(source, normalizeOptions, top); + let normalizer = new StatementNormalizer(block); + let astV2 = new TemplateChildren(block.loc(ast.loc), ast.body.map(b => normalizer.normalize(b)), block).assertTemplate(top); + let locals = top.getUsedTemplateLocals(); + return [astV2, locals]; + } + + /** + * A `BlockContext` represents the block that a particular AST node is contained inside of. + * + * `BlockContext` is aware of template-wide options (such as strict mode), as well as the bindings + * that are in-scope within that block. + * + * Concretely, it has the `PrecompileOptions` and current `SymbolTable`, and provides + * facilities for working with those options. + * + * `BlockContext` is stateless. + */ + class BlockContext { + builder; + constructor(source, options, table) { + this.source = source; + this.options = options; + this.table = table; + this.builder = new Builder$1(); + } + get strict() { + return this.options.strictMode || false; + } + loc(loc) { + return this.source.spanFor(loc); + } + resolutionFor(node, resolution) { + if (this.strict) { + return { + result: STRICT_RESOLUTION + }; + } + if (this.isFreeVar(node)) { + let r = resolution(node); + if (r === null) { + return { + result: 'error', + path: printPath(node), + head: printHead(node) + }; + } + return { + result: r + }; + } else { + return { + result: STRICT_RESOLUTION + }; + } + } + isLexicalVar(variable) { + return this.table.hasLexical(variable); + } + isKeyword(name) { + return this.strict && !this.table.hasLexical(name) && this.table.hasKeyword(name); + } + isFreeVar(callee) { + if (callee.type === 'PathExpression') { + if (callee.head.type !== 'VarHead') { + return false; + } + return !this.table.has(callee.head.name); + } else if (callee.path.type === 'PathExpression') { + return this.isFreeVar(callee.path); + } else { + return false; + } + } + hasBinding(name) { + return this.table.has(name) || this.table.hasLexical(name); + } + child(blockParams) { + return new BlockContext(this.source, this.options, this.table.child(blockParams)); + } + customizeComponentName(input) { + if (this.options.customizeComponentName) { + return this.options.customizeComponentName(input); + } else { + return input; + } + } + } + + /** + * An `ExpressionNormalizer` normalizes expressions within a block. + * + * `ExpressionNormalizer` is stateless. + */ + class ExpressionNormalizer { + constructor(block) { + this.block = block; + } + + /** + * The `normalize` method takes an arbitrary expression and its original syntax context and + * normalizes it to an ASTv2 expression. + * + * @see {SyntaxContext} + */ + + normalize(expr, resolution) { + switch (expr.type) { + case 'NullLiteral': + case 'BooleanLiteral': + case 'NumberLiteral': + case 'StringLiteral': + case 'UndefinedLiteral': + return this.block.builder.literal(expr.value, this.block.loc(expr.loc)); + case 'PathExpression': + debugAssert(resolution, '[BUG] resolution is required'); + return this.path(expr, resolution); + case 'SubExpression': + { + // expr.path used to incorrectly have the type ASTv1.Expression + if (isLiteral(expr.path)) { + assertIllegalLiteral(expr.path, expr.loc); + } + let resolution = this.block.resolutionFor(expr, SexpSyntaxContext); + if (resolution.result === 'error') { + throw generateSyntaxError(`You attempted to invoke a path (\`${resolution.path}\`) but ${resolution.head} was not in scope`, expr.loc); + } + return this.block.builder.sexp(this.callParts(expr, resolution.result), this.block.loc(expr.loc)); + } + } + } + path(expr, resolution) { + let loc = this.block.loc(expr.loc); + if (expr.head.type === 'VarHead' && expr.tail.length === 0 && this.block.isKeyword(expr.head.name)) { + return this.block.builder.keyword(expr.head.name, this.block.table.getKeyword(expr.head.name), loc); + } + let headOffsets = this.block.loc(expr.head.loc); + let tail = []; + + // start with the head + let offset = headOffsets; + for (let part of expr.tail) { + offset = offset.sliceStartChars({ + chars: part.length, + skipStart: 1 + }); + tail.push(new SourceSlice({ + loc: offset, + chars: part + })); + } + return this.block.builder.path(this.ref(expr.head, resolution), tail, loc); + } + + /** + * The `callParts` method takes ASTv1.CallParts as well as a syntax context and normalizes + * it to an ASTv2 CallParts. + */ + callParts(parts, context) { + let { + path, + params, + hash, + loc + } = parts; + let callee = this.normalize(path, context); + let paramList = params.map(p => this.normalize(p, STRICT_RESOLUTION)); + let paramLoc = SpanList.range(paramList, callee.loc.collapse('end')); + let namedLoc = this.block.loc(hash.loc); + let argsLoc = SpanList.range([paramLoc, namedLoc]); + let positional = this.block.builder.positional(params.map(p => this.normalize(p, STRICT_RESOLUTION)), paramLoc); + let named = this.block.builder.named(hash.pairs.map(p => this.namedArgument(p)), this.block.loc(hash.loc)); + switch (callee.type) { + case 'Literal': + throw generateSyntaxError(`Invalid invocation of a literal value (\`${callee.value}\`)`, loc); + + // This really shouldn't be possible, something has gone pretty wrong + case 'Interpolate': + throw generateSyntaxError(`Invalid invocation of a interpolated string`, loc); + } + return { + callee, + args: this.block.builder.args(positional, named, argsLoc) + }; + } + namedArgument(pair) { + let offsets = this.block.loc(pair.loc); + let keyOffsets = offsets.sliceStartChars({ + chars: pair.key.length + }); + return this.block.builder.namedArgument(new SourceSlice({ + chars: pair.key, + loc: keyOffsets + }), this.normalize(pair.value, STRICT_RESOLUTION)); + } + + /** + * The `ref` method normalizes an `ASTv1.PathHead` into an `ASTv2.VariableReference`. + * This method is extremely important, because it is responsible for normalizing free + * variables into an an ASTv2.PathHead *with appropriate context*. + * + * The syntax context is originally determined by the syntactic position that this `PathHead` + * came from, and is ultimately attached to the `ASTv2.VariableReference` here. In ASTv2, + * the `VariableReference` node bears full responsibility for loose mode rules that control + * the behavior of free variables. + */ + ref(head, resolution) { + let { + block + } = this; + let { + builder, + table + } = block; + let offsets = block.loc(head.loc); + switch (head.type) { + case 'ThisHead': + return builder.self(offsets); + case 'AtHead': + { + let symbol = table.allocateNamed(head.name); + return builder.at(head.name, symbol, offsets); + } + case 'VarHead': + { + if (block.hasBinding(head.name)) { + let [symbol, isRoot] = table.get(head.name); + return block.builder.localVar(head.name, symbol, isRoot, offsets); + } else { + let context = block.strict ? STRICT_RESOLUTION : resolution; + let symbol = block.table.allocateFree(head.name, context); + return block.builder.freeVar({ + name: head.name, + context, + symbol, + loc: offsets + }); + } + } + } + } + } + + /** + * `TemplateNormalizer` normalizes top-level ASTv1 statements to ASTv2. + */ + class StatementNormalizer { + constructor(block) { + this.block = block; + } + normalize(node) { + switch (node.type) { + case 'BlockStatement': + return this.BlockStatement(node); + case 'ElementNode': + return new ElementNormalizer(this.block).ElementNode(node); + case 'MustacheStatement': + return this.MustacheStatement(node); + + // These are the same in ASTv2 + case 'MustacheCommentStatement': + return this.MustacheCommentStatement(node); + case 'CommentStatement': + { + let loc = this.block.loc(node.loc); + return new HtmlComment({ + loc, + text: loc.slice({ + skipStart: 4, + skipEnd: 3 + }).toSlice(node.value) + }); + } + case 'TextNode': + return new HtmlText({ + loc: this.block.loc(node.loc), + chars: node.chars + }); + } + } + MustacheCommentStatement(node) { + let loc = this.block.loc(node.loc); + let textLoc; + if (loc.asString().slice(0, 5) === '{{!--') { + textLoc = loc.slice({ + skipStart: 5, + skipEnd: 4 + }); + } else { + textLoc = loc.slice({ + skipStart: 3, + skipEnd: 2 + }); + } + return new GlimmerComment({ + loc, + text: textLoc.toSlice(node.value) + }); + } + + /** + * Normalizes an ASTv1.MustacheStatement to an ASTv2.AppendStatement + */ + MustacheStatement(mustache) { + let { + path, + params, + hash, + trusting + } = mustache; + let loc = this.block.loc(mustache.loc); + let value; + if (isLiteral(path)) { + if (params.length === 0 && hash.pairs.length === 0) { + value = this.expr.normalize(path); + } else { + assertIllegalLiteral(path, loc); + } + } else { + let resolution = this.block.resolutionFor(mustache, AppendSyntaxContext); + if (resolution.result === 'error') { + throw generateSyntaxError(`You attempted to render a path (\`{{${resolution.path}}}\`), but ${resolution.head} was not in scope`, loc); + } + + // Normalize the call parts in AppendSyntaxContext + let callParts = this.expr.callParts({ + path, + params, + hash, + loc + }, resolution.result); + value = callParts.args.isEmpty() ? callParts.callee : this.block.builder.sexp(callParts, loc); + } + return this.block.builder.append({ + table: this.block.table, + trusting, + value + }, loc); + } + + /** + * Normalizes a ASTv1.BlockStatement to an ASTv2.BlockStatement + */ + BlockStatement(block) { + let { + program, + inverse + } = block; + let loc = this.block.loc(block.loc); + + // block.path used to incorrectly have the type ASTv1.Expression + if (isLiteral(block.path)) { + assertIllegalLiteral(block.path, loc); + } + let resolution = this.block.resolutionFor(block, BlockSyntaxContext); + if (resolution.result === 'error') { + throw generateSyntaxError(`You attempted to invoke a path (\`{{#${resolution.path}}}\`) but ${resolution.head} was not in scope`, loc); + } + let callParts = this.expr.callParts(block, resolution.result); + return this.block.builder.blockStatement(assign({ + symbols: this.block.table, + program: this.Block(program), + inverse: inverse ? this.Block(inverse) : null + }, callParts), loc); + } + Block({ + body, + loc, + blockParams + }) { + let child = this.block.child(blockParams); + let normalizer = new StatementNormalizer(child); + return new BlockChildren(this.block.loc(loc), body.map(b => normalizer.normalize(b)), this.block).assertBlock(child.table); + } + get expr() { + return new ExpressionNormalizer(this.block); + } + } + class ElementNormalizer { + constructor(ctx) { + this.ctx = ctx; + } + + /** + * Normalizes an ASTv1.ElementNode to: + * + * - ASTv2.NamedBlock if the tag name begins with `:` + * - ASTv2.Component if the tag name matches the component heuristics + * - ASTv2.SimpleElement if the tag name doesn't match the component heuristics + * + * A tag name represents a component if: + * + * - it begins with `@` + * - it is exactly `this` or begins with `this.` + * - the part before the first `.` is a reference to an in-scope variable binding + * - it begins with an uppercase character + */ + ElementNode(element) { + let { + tag, + selfClosing, + comments + } = element; + let loc = this.ctx.loc(element.loc); + let [tagHead, ...rest] = asPresentArray(tag.split('.')); + + // the head, attributes and modifiers are in the current scope + let path = this.classifyTag(tagHead, rest, element.loc); + let attrs = element.attributes.filter(a => a.name[0] !== '@').map(a => this.attr(a)); + let args = element.attributes.filter(a => a.name[0] === '@').map(a => this.arg(a)); + let modifiers = element.modifiers.map(m => this.modifier(m)); + + // the element's block params are in scope for the children + let child = this.ctx.child(element.blockParams); + let normalizer = new StatementNormalizer(child); + let childNodes = element.children.map(s => normalizer.normalize(s)); + let el = this.ctx.builder.element({ + selfClosing, + attrs, + componentArgs: args, + modifiers, + comments: comments.map(c => new StatementNormalizer(this.ctx).MustacheCommentStatement(c)) + }); + let children = new ElementChildren(el, loc, childNodes, this.ctx); + let offsets = this.ctx.loc(element.loc); + let tagOffsets = offsets.sliceStartChars({ + chars: tag.length, + skipStart: 1 + }); + if (path === 'ElementHead') { + if (tag[0] === ':') { + return children.assertNamedBlock(tagOffsets.slice({ + skipStart: 1 + }).toSlice(tag.slice(1)), child.table); + } else { + return children.assertElement(tagOffsets.toSlice(tag), element.blockParams.length > 0); + } + } + if (element.selfClosing) { + return el.selfClosingComponent(path, loc); + } else { + let blocks = children.assertComponent(tag, child.table, element.blockParams.length > 0); + return el.componentWithNamedBlocks(path, blocks, loc); + } + } + modifier(m) { + // modifier.path used to incorrectly have the type ASTv1.Expression + if (isLiteral(m.path)) { + assertIllegalLiteral(m.path, m.loc); + } + let resolution = this.ctx.resolutionFor(m, ModifierSyntaxContext); + if (resolution.result === 'error') { + throw generateSyntaxError(`You attempted to invoke a path (\`{{${resolution.path}}}\`) as a modifier, but ${resolution.head} was not in scope`, m.loc); + } + let callParts = this.expr.callParts(m, resolution.result); + return this.ctx.builder.modifier(callParts, this.ctx.loc(m.loc)); + } + + /** + * This method handles attribute values that are curlies, as well as curlies nested inside of + * interpolations: + * + * ```hbs + * + * + * ``` + */ + mustacheAttr(mustache) { + let { + path, + params, + hash, + loc + } = mustache; + if (isLiteral(path)) { + if (params.length === 0 && hash.pairs.length === 0) { + return this.expr.normalize(path); + } else { + assertIllegalLiteral(path, loc); + } + } + + // Normalize the call parts in AttrValueSyntaxContext + let resolution = this.ctx.resolutionFor(mustache, AttrValueSyntaxContext); + if (resolution.result === 'error') { + throw generateSyntaxError(`You attempted to render a path (\`{{${resolution.path}}}\`), but ${resolution.head} was not in scope`, mustache.loc); + } + let sexp = this.ctx.builder.sexp(this.expr.callParts(mustache, resolution.result), this.ctx.loc(mustache.loc)); + + // If there are no params or hash, just return the function part as its own expression + if (sexp.args.isEmpty()) { + return sexp.callee; + } else { + return sexp; + } + } + + /** + * attrPart is the narrowed down list of valid attribute values that are also + * allowed as a concat part (you can't nest concats). + */ + attrPart(part) { + switch (part.type) { + case 'MustacheStatement': + return { + expr: this.mustacheAttr(part), + trusting: part.trusting + }; + case 'TextNode': + return { + expr: this.ctx.builder.literal(part.chars, this.ctx.loc(part.loc)), + trusting: true + }; + } + } + attrValue(part) { + switch (part.type) { + case 'ConcatStatement': + { + let parts = part.parts.map(p => this.attrPart(p).expr); + return { + expr: this.ctx.builder.interpolate(parts, this.ctx.loc(part.loc)), + trusting: false + }; + } + default: + return this.attrPart(part); + } + } + attr(m) { + debugAssert(m.name[0] !== '@', 'An attr name must not start with `@`'); + if (m.name === '...attributes') { + return this.ctx.builder.splatAttr(this.ctx.table.allocateBlock('attrs'), this.ctx.loc(m.loc)); + } + let offsets = this.ctx.loc(m.loc); + let nameSlice = offsets.sliceStartChars({ + chars: m.name.length + }).toSlice(m.name); + let value = this.attrValue(m.value); + return this.ctx.builder.attr({ + name: nameSlice, + value: value.expr, + trusting: value.trusting + }, offsets); + } + + // An arg curly is the same as an attribute curly for + // our purposes, except that in loose mode is an error: + checkArgCall(arg) { + let { + value + } = arg; + if (value.type !== 'MustacheStatement') { + return; + } + if (value.params.length !== 0 || value.hash.pairs.length !== 0) { + return; + } + let { + path + } = value; + if (path.type !== 'PathExpression') { + return; + } + if (path.tail.length > 0) { + return; + } + let resolution = this.ctx.resolutionFor(path, () => { + // We deliberately don't want this to resolve anything. The purpose of + // calling `resolutionFor` here is to check for strict mode, in-scope + // local variables, etc. + return null; + }); + if (resolution.result === 'error' && resolution.path !== 'has-block') { + throw generateSyntaxError(`You attempted to pass a path as argument (\`${arg.name}={{${resolution.path}}}\`) but ${resolution.head} was not in scope. Try:\n` + `* \`${arg.name}={{this.${resolution.path}}}\` if this is meant to be a property lookup, or\n` + `* \`${arg.name}={{(${resolution.path})}}\` if this is meant to invoke the resolved helper, or\n` + `* \`${arg.name}={{helper "${resolution.path}"}}\` if this is meant to pass the resolved helper by value`, arg.loc); + } + } + arg(arg) { + debugAssert(arg.name[0] === '@', 'An arg name must start with `@`'); + this.checkArgCall(arg); + let offsets = this.ctx.loc(arg.loc); + let nameSlice = offsets.sliceStartChars({ + chars: arg.name.length + }).toSlice(arg.name); + let value = this.attrValue(arg.value); + return this.ctx.builder.arg({ + name: nameSlice, + value: value.expr, + trusting: value.trusting + }, offsets); + } + + /** + * This function classifies the head of an ASTv1.Element into an ASTv2.PathHead (if the + * element is a component) or `'ElementHead'` (if the element is a simple element). + * + * Rules: + * + * 1. If the variable is an `@arg`, return an `AtHead` + * 2. If the variable is `this`, return a `ThisHead` + * 3. If the variable is in the current scope: + * a. If the scope is the root scope, then return a Free `LocalVarHead` + * b. Else, return a standard `LocalVarHead` + * 4. If the tag name is a path and the variable is not in the current scope, Syntax Error + * 5. If the variable is uppercase return a FreeVar(ResolveAsComponentHead) + * 6. Otherwise, return `'ElementHead'` + */ + classifyTag(variable, tail, loc) { + let uppercase = isUpperCase(variable); + let inScope = variable[0] === '@' || variable === 'this' || this.ctx.hasBinding(variable); + if (this.ctx.strict && !inScope) { + if (uppercase) { + throw generateSyntaxError(`Attempted to invoke a component that was not in scope in a strict mode template, \`<${variable}>\`. If you wanted to create an element with that name, convert it to lowercase - \`<${variable.toLowerCase()}>\``, loc); + } + + // In strict mode, values are always elements unless they are in scope + return 'ElementHead'; + } + + // Since the parser handed us the HTML element name as a string, we need + // to convert it into an ASTv1 path so it can be processed using the + // expression normalizer. + let isComponent = inScope || uppercase; + let variableLoc = loc.sliceStartChars({ + skipStart: 1, + chars: variable.length + }); + let tailLength = tail.reduce((accum, part) => accum + 1 + part.length, 0); + let pathEnd = variableLoc.getEnd().move(tailLength); + let pathLoc = variableLoc.withEnd(pathEnd); + if (isComponent) { + let path = b.path({ + head: b.head({ + original: variable, + loc: variableLoc + }), + tail, + loc: pathLoc + }); + let resolution = this.ctx.isLexicalVar(variable) ? { + result: STRICT_RESOLUTION + } : this.ctx.resolutionFor(path, ComponentSyntaxContext); + if (resolution.result === 'error') { + throw generateSyntaxError(`You attempted to invoke a path (\`<${resolution.path}>\`) but ${resolution.head} was not in scope`, loc); + } + return new ExpressionNormalizer(this.ctx).normalize(path, resolution.result); + } else { + this.ctx.table.allocateFree(variable, STRICT_RESOLUTION); + } + + // If the tag name wasn't a valid component but contained a `.`, it's + // a syntax error. + if (tail.length > 0) { + throw generateSyntaxError(`You used ${variable}.${tail.join('.')} as a tag name, but ${variable} is not in scope`, loc); + } + return 'ElementHead'; + } + get expr() { + return new ExpressionNormalizer(this.ctx); + } + } + class Children { + namedBlocks; + hasSemanticContent; + nonBlockChildren; + constructor(loc, children, block) { + this.loc = loc; + this.children = children; + this.block = block; + this.namedBlocks = children.filter(c => c instanceof NamedBlock$1); + this.hasSemanticContent = Boolean(children.filter(c => { + if (c instanceof NamedBlock$1) { + return false; + } + switch (c.type) { + case 'GlimmerComment': + case 'HtmlComment': + return false; + case 'HtmlText': + return !/^\s*$/u.test(c.chars); + default: + return true; + } + }).length); + this.nonBlockChildren = children.filter(c => !(c instanceof NamedBlock$1)); + } + } + class TemplateChildren extends Children { + assertTemplate(table) { + if (isPresentArray(this.namedBlocks)) { + throw generateSyntaxError(`Unexpected named block at the top-level of a template`, this.loc); + } + return this.block.builder.template(table, this.nonBlockChildren, this.block.loc(this.loc)); + } + } + class BlockChildren extends Children { + assertBlock(table) { + if (isPresentArray(this.namedBlocks)) { + throw generateSyntaxError(`Unexpected named block nested in a normal block`, this.loc); + } + return this.block.builder.block(table, this.nonBlockChildren, this.loc); + } + } + class ElementChildren extends Children { + constructor(el, loc, children, block) { + super(loc, children, block); + this.el = el; + } + assertNamedBlock(name, table) { + if (this.el.base.selfClosing) { + throw generateSyntaxError(`<:${name.chars}/> is not a valid named block: named blocks cannot be self-closing`, this.loc); + } + if (isPresentArray(this.namedBlocks)) { + throw generateSyntaxError(`Unexpected named block inside <:${name.chars}> named block: named blocks cannot contain nested named blocks`, this.loc); + } + if (!isLowerCase(name.chars)) { + throw generateSyntaxError(`<:${name.chars}> is not a valid named block, and named blocks must begin with a lowercase letter`, this.loc); + } + if (this.el.base.attrs.length > 0 || this.el.base.componentArgs.length > 0 || this.el.base.modifiers.length > 0) { + throw generateSyntaxError(`named block <:${name.chars}> cannot have attributes, arguments, or modifiers`, this.loc); + } + let offsets = SpanList.range(this.nonBlockChildren, this.loc); + return this.block.builder.namedBlock(name, this.block.builder.block(table, this.nonBlockChildren, offsets), this.loc); + } + assertElement(name, hasBlockParams) { + if (hasBlockParams) { + throw generateSyntaxError(`Unexpected block params in <${name.chars}>: simple elements cannot have block params`, this.loc); + } + if (isPresentArray(this.namedBlocks)) { + let names = this.namedBlocks.map(b => b.name); + if (names.length === 1) { + throw generateSyntaxError(`Unexpected named block <:foo> inside <${name.chars}> HTML element`, this.loc); + } else { + let printedNames = names.map(n => `<:${n.chars}>`).join(', '); + throw generateSyntaxError(`Unexpected named blocks inside <${name.chars}> HTML element (${printedNames})`, this.loc); + } + } + return this.el.simple(name, this.nonBlockChildren, this.loc); + } + assertComponent(name, table, hasBlockParams) { + if (isPresentArray(this.namedBlocks) && this.hasSemanticContent) { + throw generateSyntaxError(`Unexpected content inside <${name}> component invocation: when using named blocks, the tag cannot contain other content`, this.loc); + } + if (isPresentArray(this.namedBlocks)) { + if (hasBlockParams) { + throw generateSyntaxError(`Unexpected block params list on <${name}> component invocation: when passing named blocks, the invocation tag cannot take block params`, this.loc); + } + let seenNames = new Set(); + for (let block of this.namedBlocks) { + let name = block.name.chars; + if (seenNames.has(name)) { + throw generateSyntaxError(`Component had two named blocks with the same name, \`<:${name}>\`. Only one block with a given name may be passed`, this.loc); + } + if (name === 'inverse' && seenNames.has('else') || name === 'else' && seenNames.has('inverse')) { + throw generateSyntaxError(`Component has both <:else> and <:inverse> block. <:inverse> is an alias for <:else>`, this.loc); + } + seenNames.add(name); + } + return this.namedBlocks; + } else { + return [this.block.builder.namedBlock(SourceSlice.synthetic('default'), this.block.builder.block(table, this.nonBlockChildren, this.loc), this.loc)]; + } + } + } + function isLiteral(node) { + switch (node.type) { + case 'StringLiteral': + case 'BooleanLiteral': + case 'NumberLiteral': + case 'UndefinedLiteral': + case 'NullLiteral': + return true; + default: + return false; + } + } + function assertIllegalLiteral(node, loc) { + let value = node.type === 'StringLiteral' ? JSON.stringify(node.value) : String(node.value); + throw generateSyntaxError(`Unexpected literal \`${value}\``, loc); + } + function printPath(node) { + if (node.type !== 'PathExpression' && node.path.type === 'PathExpression') { + return printPath(node.path); + } else { + return new Printer({ + entityEncoding: 'raw' + }).print(node); + } + } + function printHead(node) { + if (node.type === 'PathExpression') { + return node.head.original; + } else if (node.path.type === 'PathExpression') { + return printHead(node.path); + } else { + return new Printer({ + entityEncoding: 'raw' + }).print(node); + } + } + + const glimmerSyntax = /*#__PURE__*/Object.defineProperty({ + __proto__: null, + AST: api, + ASTv1: api, + ASTv2: api$1, + BlockSymbolTable, + KEYWORDS_TYPES, + Path: Walker, + ProgramSymbolTable, + SourceSlice, + SpanList, + SymbolTable, + Walker, + WalkerPath, + builders: publicBuilder, + cannotRemoveNode, + cannotReplaceNode, + generateSyntaxError, + getTemplateLocals, + getVoidTags, + hasSpan, + isKeyword, + isVoidTag, + loc, + maybeLoc, + node, + normalize: normalize$1, + preprocess, + print: build, + sortByLoc, + src: api$2, + traverse, + visitorKeys + }, Symbol.toStringTag, { value: 'Module' }); + + const ContentType = { + Component: 0, + Helper: 1, + String: 2, + Empty: 3, + SafeString: 4, + Fragment: 5, + Node: 6, + Other: 8 + }; + const CurriedTypes = { + Component: 0, + Helper: 1, + Modifier: 2 + }; + const InternalComponentCapabilities = { + Empty: 0, + dynamicLayout: 0b0000000000001, + dynamicTag: 0b0000000000010, + prepareArgs: 0b0000000000100, + createArgs: 0b0000000001000, + attributeHook: 0b0000000010000, + elementHook: 0b0000000100000, + dynamicScope: 0b0000001000000, + createCaller: 0b0000010000000, + updateHook: 0b0000100000000, + createInstance: 0b0001000000000, + wrapped: 0b0010000000000, + willDestroy: 0b0100000000000, + hasSubOwner: 0b1000000000000 + }; + const ARG_SHIFT = 8; + const MAX_SIZE = 0x7fffffff; + const TYPE_SIZE = 0b11111111; + const TYPE_MASK = 0b00000000000000000000000011111111; + const OPERAND_LEN_MASK = 0b00000000000000000000001100000000; + const MACHINE_MASK = 0b00000000000000000000010000000000; + const MachineOp = { + PushFrame: 0, + PopFrame: 1, + InvokeVirtual: 2, + InvokeStatic: 3, + Jump: 4, + Return: 5, + ReturnTo: 6, + Size: 7 + }; + const Op = { + Helper: 16, + SetNamedVariables: 17, + SetBlocks: 18, + SetVariable: 19, + SetBlock: 20, + GetVariable: 21, + GetProperty: 22, + GetBlock: 23, + SpreadBlock: 24, + HasBlock: 25, + HasBlockParams: 26, + Concat: 27, + Constant: 28, + ConstantReference: 29, + Primitive: 30, + PrimitiveReference: 31, + ReifyU32: 32, + Dup: 33, + Pop: 34, + Load: 35, + Fetch: 36, + RootScope: 37, + VirtualRootScope: 38, + ChildScope: 39, + PopScope: 40, + Text: 41, + Comment: 42, + AppendHTML: 43, + AppendSafeHTML: 44, + AppendDocumentFragment: 45, + AppendNode: 46, + AppendText: 47, + OpenElement: 48, + OpenDynamicElement: 49, + PushRemoteElement: 50, + StaticAttr: 51, + DynamicAttr: 52, + ComponentAttr: 53, + FlushElement: 54, + CloseElement: 55, + PopRemoteElement: 56, + Modifier: 57, + BindDynamicScope: 58, + PushDynamicScope: 59, + PopDynamicScope: 60, + CompileBlock: 61, + PushBlockScope: 62, + PushSymbolTable: 63, + InvokeYield: 64, + JumpIf: 65, + JumpUnless: 66, + JumpEq: 67, + AssertSame: 68, + Enter: 69, + Exit: 70, + ToBoolean: 71, + EnterList: 72, + ExitList: 73, + Iterate: 74, + Main: 75, + ContentType: 76, + Curry: 77, + PushComponentDefinition: 78, + PushDynamicComponentInstance: 79, + ResolveDynamicComponent: 80, + ResolveCurriedComponent: 81, + PushArgs: 82, + PushEmptyArgs: 83, + PopArgs: 84, + PrepareArgs: 85, + CaptureArgs: 86, + CreateComponent: 87, + RegisterComponentDestructor: 88, + PutComponentOperations: 89, + GetComponentSelf: 90, + GetComponentTagName: 91, + GetComponentLayout: 92, + BindEvalScope: 93, + SetupForEval: 94, + PopulateLayout: 95, + InvokeComponentLayout: 96, + BeginComponentTransaction: 97, + CommitComponentTransaction: 98, + DidCreateElement: 99, + DidRenderLayout: 100, + ResolveMaybeLocal: 102, + Debugger: 103, + Size: 104, + StaticComponentAttr: 105, + DynamicContentType: 106, + DynamicHelper: 107, + DynamicModifier: 108, + IfInline: 109, + Not: 110, + GetDynamicVar: 111, + Log: 112 + }; + function isMachineOp(value) { + return value >= 0 && value <= 15; + } + function isOp(value) { + return value >= 16; + } + + /** + * Registers + * + * For the most part, these follows MIPS naming conventions, however the + * register numbers are different. + */ + + // $0 or $pc (program counter): pointer into `program` for the next insturction; -1 means exit + const $pc = 0; + // $1 or $ra (return address): pointer into `program` for the return + const $ra = 1; + // $2 or $fp (frame pointer): pointer into the `evalStack` for the base of the stack + const $fp = 2; + // $3 or $sp (stack pointer): pointer into the `evalStack` for the top of the stack + const $sp = 3; + // $4-$5 or $s0-$s1 (saved): callee saved general-purpose registers + const $s0 = 4; + const $s1 = 5; + // $6-$7 or $t0-$t1 (temporaries): caller saved general-purpose registers + const $t0 = 6; + const $t1 = 7; + // $8 or $v0 (return value) + const $v0 = 8; + let MachineRegister = /*#__PURE__*/function (MachineRegister) { + MachineRegister[MachineRegister["pc"] = 0] = "pc"; + MachineRegister[MachineRegister["ra"] = 1] = "ra"; + MachineRegister[MachineRegister["fp"] = 2] = "fp"; + MachineRegister[MachineRegister["sp"] = 3] = "sp"; + return MachineRegister; + }({}); + function isLowLevelRegister(register) { + return register <= $sp; + } + let SavedRegister = /*#__PURE__*/function (SavedRegister) { + SavedRegister[SavedRegister["s0"] = 4] = "s0"; + SavedRegister[SavedRegister["s1"] = 5] = "s1"; + return SavedRegister; + }({}); + let TemporaryRegister = /*#__PURE__*/function (TemporaryRegister) { + TemporaryRegister[TemporaryRegister["t0"] = 6] = "t0"; + TemporaryRegister[TemporaryRegister["t1"] = 7] = "t1"; + return TemporaryRegister; + }({}); + + const glimmerVm = /*#__PURE__*/Object.defineProperty({ + __proto__: null, + $fp, + $pc, + $ra, + $s0, + $s1, + $sp, + $t0, + $t1, + $v0, + ARG_SHIFT, + ContentType, + CurriedType: CurriedTypes, + CurriedTypes, + InternalComponentCapabilities, + InternalComponentCapability: InternalComponentCapabilities, + MACHINE_MASK, + MAX_SIZE, + MachineOp, + MachineRegister, + OPERAND_LEN_MASK, + Op, + SavedRegister, + TYPE_MASK, + TYPE_SIZE, + TemporaryRegister, + isLowLevelRegister, + isMachineOp, + isOp + }, Symbol.toStringTag, { value: 'Module' }); + + let HeadKind = /*#__PURE__*/function (HeadKind) { + HeadKind["Block"] = "Block"; + HeadKind["Call"] = "Call"; + HeadKind["Element"] = "Element"; + HeadKind["AppendPath"] = "AppendPath"; + HeadKind["AppendExpr"] = "AppendExpr"; + HeadKind["Literal"] = "Literal"; + HeadKind["Modifier"] = "Modifier"; + HeadKind["DynamicComponent"] = "DynamicComponent"; + HeadKind["Comment"] = "Comment"; + HeadKind["Splat"] = "Splat"; + HeadKind["Keyword"] = "Keyword"; + return HeadKind; + }({}); + let VariableKind = /*#__PURE__*/function (VariableKind) { + VariableKind["Local"] = "Local"; + VariableKind["Free"] = "Free"; + VariableKind["Arg"] = "Arg"; + VariableKind["Block"] = "Block"; + VariableKind["This"] = "This"; + return VariableKind; + }({}); + function normalizeStatement(statement) { + if (Array.isArray(statement)) { + if (statementIsExpression(statement)) { + return normalizeAppendExpression(statement); + } else if (isSugaryArrayStatement(statement)) { + return normalizeSugaryArrayStatement(statement); + } else { + return normalizeVerboseStatement(statement); + } + } else if (typeof statement === 'string') { + return normalizeAppendHead(normalizeDottedPath(statement), false); + } else { + throw assertNever(statement); + } + } + function normalizeAppendHead(head, trusted) { + if (head.type === ExpressionKind.GetPath) { + return { + kind: HeadKind.AppendPath, + path: head, + trusted + }; + } else { + return { + kind: HeadKind.AppendExpr, + expr: head, + trusted + }; + } + } + function isSugaryArrayStatement(statement) { + if (Array.isArray(statement) && typeof statement[0] === 'string') { + switch (statement[0][0]) { + case '(': + case '#': + case '<': + case '!': + return true; + default: + return false; + } + } + return false; + } + function normalizeSugaryArrayStatement(statement) { + const name = statement[0]; + switch (name[0]) { + case '(': + { + let params = null; + let hash = null; + if (statement.length === 3) { + params = normalizeParams(statement[1]); + hash = normalizeHash(statement[2]); + } else if (statement.length === 2) { + if (Array.isArray(statement[1])) { + params = normalizeParams(statement[1]); + } else { + hash = normalizeHash(statement[1]); + } + } + return { + kind: HeadKind.Call, + head: normalizeCallHead(name), + params, + hash, + trusted: false + }; + } + case '#': + { + const { + head: path, + params, + hash, + blocks, + blockParams + } = normalizeBuilderBlockStatement(statement); + return { + kind: HeadKind.Block, + head: path, + params, + hash, + blocks, + blockParams + }; + } + case '!': + { + const name = statement[0].slice(1); + const { + params, + hash, + blocks, + blockParams + } = normalizeBuilderBlockStatement(statement); + return { + kind: HeadKind.Keyword, + name, + params, + hash, + blocks, + blockParams + }; + } + case '<': + { + let attrs = dict(); + let block = []; + if (statement.length === 3) { + attrs = normalizeAttrs(statement[1]); + block = normalizeBlock(statement[2]); + } else if (statement.length === 2) { + if (Array.isArray(statement[1])) { + block = normalizeBlock(statement[1]); + } else { + attrs = normalizeAttrs(statement[1]); + } + } + return { + kind: HeadKind.Element, + name: expect(extractElement(name), `BUG: expected ${name} to look like a tag name`), + attrs, + block + }; + } + default: + throw new Error(`Unreachable ${JSON.stringify(statement)} in normalizeSugaryArrayStatement`); + } + } + function normalizeVerboseStatement(statement) { + switch (statement[0]) { + case Builder.Literal: + { + return { + kind: HeadKind.Literal, + value: statement[1] + }; + } + case Builder.Append: + { + return normalizeAppendExpression(statement[1], statement[2]); + } + case Builder.Modifier: + { + return { + kind: HeadKind.Modifier, + params: normalizeParams(statement[1]), + hash: normalizeHash(statement[2]) + }; + } + case Builder.DynamicComponent: + { + return { + kind: HeadKind.DynamicComponent, + expr: normalizeExpression(statement[1]), + hash: normalizeHash(statement[2]), + block: normalizeBlock(statement[3]) + }; + } + case Builder.Comment: + { + return { + kind: HeadKind.Comment, + value: statement[1] + }; + } + } + } + function extractBlockHead(name) { + const result = /^(#|!)(.*)$/u.exec(name); + if (result === null) { + throw new Error(`Unexpected missing # in block head`); + } + return normalizeDottedPath(result[2]); + } + function normalizeCallHead(name) { + const result = /^\((.*)\)$/u.exec(name); + if (result === null) { + throw new Error(`Unexpected missing () in call head`); + } + return normalizeDottedPath(result[1]); + } + function normalizePath(head, tail = []) { + const pathHead = normalizePathHead(head); + if (isPresentArray(tail)) { + return { + type: ExpressionKind.GetPath, + path: { + head: pathHead, + tail + } + }; + } else { + return { + type: ExpressionKind.GetVar, + variable: pathHead + }; + } + } + function normalizeDottedPath(whole) { + const { + kind, + name: rest + } = normalizePathHead(whole); + const [name, ...tail] = rest.split('.'); + const variable = { + kind, + name, + mode: 'loose' + }; + if (isPresentArray(tail)) { + return { + type: ExpressionKind.GetPath, + path: { + head: variable, + tail + } + }; + } else { + return { + type: ExpressionKind.GetVar, + variable + }; + } + } + function normalizePathHead(whole) { + let kind; + let name; + if (/^this(?:\.|$)/u.test(whole)) { + return { + kind: VariableKind.This, + name: whole, + mode: 'loose' + }; + } + switch (whole[0]) { + case '^': + kind = VariableKind.Free; + name = whole.slice(1); + break; + case '@': + kind = VariableKind.Arg; + name = whole.slice(1); + break; + case '&': + kind = VariableKind.Block; + name = whole.slice(1); + break; + default: + kind = VariableKind.Local; + name = whole; + } + return { + kind, + name, + mode: 'loose' + }; + } + function normalizeBuilderBlockStatement(statement) { + const head = statement[0]; + let blocks = dict(); + let params = null; + let hash = null; + let blockParams = null; + if (statement.length === 2) { + blocks = normalizeBlocks(statement[1]); + } else if (statement.length === 3) { + if (Array.isArray(statement[1])) { + params = normalizeParams(statement[1]); + } else { + ({ + hash, + blockParams + } = normalizeBlockHash(statement[1])); + } + blocks = normalizeBlocks(statement[2]); + } else if (statement.length === 4) { + params = normalizeParams(statement[1]); + ({ + hash, + blockParams + } = normalizeBlockHash(statement[2])); + blocks = normalizeBlocks(statement[3]); + } + return { + head: extractBlockHead(head), + params, + hash, + blockParams, + blocks + }; + } + function normalizeBlockHash(hash) { + if (hash === null) { + return { + hash: null, + blockParams: null + }; + } + let out = null; + let blockParams = null; + entries(hash, (key, value) => { + if (key === 'as') { + blockParams = Array.isArray(value) ? value : [value]; + } else { + out = out || dict(); + out[key] = normalizeExpression(value); + } + }); + return { + hash: out, + blockParams + }; + } + function entries(dict, callback) { + Object.keys(dict).forEach(key => { + const value = dict[key]; + callback(key, value); + }); + } + function normalizeBlocks(value) { + if (Array.isArray(value)) { + return { + default: normalizeBlock(value) + }; + } else { + return mapObject(value, normalizeBlock); + } + } + function normalizeBlock(block) { + return block.map(s => normalizeStatement(s)); + } + function normalizeAttrs(attrs) { + return mapObject(attrs, a => normalizeAttr(a).expr); + } + function normalizeAttr(attr) { + if (attr === 'splat') { + return { + expr: HeadKind.Splat, + trusted: false + }; + } else { + const expr = normalizeExpression(attr); + return { + expr, + trusted: false + }; + } + } + function mapObject(object, mapper) { + const out = dict(); + Object.keys(object).forEach(k => { + out[k] = mapper(object[k], k); + }); + return out; + } + function extractElement(input) { + const match = /^<([\d\-a-z][\d\-A-Za-z]*)>$/u.exec(input); + return match?.[1] ?? null; + } + let Builder = /*#__PURE__*/function (Builder) { + Builder[Builder["Literal"] = 0] = "Literal"; + Builder[Builder["Comment"] = 1] = "Comment"; + Builder[Builder["Append"] = 2] = "Append"; + Builder[Builder["Modifier"] = 3] = "Modifier"; + Builder[Builder["DynamicComponent"] = 4] = "DynamicComponent"; + Builder[Builder["Get"] = 5] = "Get"; + Builder[Builder["Concat"] = 6] = "Concat"; + Builder[Builder["HasBlock"] = 7] = "HasBlock"; + Builder[Builder["HasBlockParams"] = 8] = "HasBlockParams"; + return Builder; + }({}); + let ExpressionKind = /*#__PURE__*/function (ExpressionKind) { + ExpressionKind["Literal"] = "Literal"; + ExpressionKind["Call"] = "Call"; + ExpressionKind["GetPath"] = "GetPath"; + ExpressionKind["GetVar"] = "GetVar"; + ExpressionKind["Concat"] = "Concat"; + ExpressionKind["HasBlock"] = "HasBlock"; + ExpressionKind["HasBlockParams"] = "HasBlockParams"; + return ExpressionKind; + }({}); + function normalizeAppendExpression(expression, forceTrusted = false) { + if (expression === null || expression === undefined) { + return { + expr: { + type: ExpressionKind.Literal, + value: expression + }, + kind: HeadKind.AppendExpr, + trusted: false + }; + } else if (Array.isArray(expression)) { + switch (expression[0]) { + case Builder.Literal: + return { + expr: { + type: ExpressionKind.Literal, + value: expression[1] + }, + kind: HeadKind.AppendExpr, + trusted: false + }; + case Builder.Get: + { + return normalizeAppendHead(normalizePath(expression[1], expression[2]), forceTrusted); + } + case Builder.Concat: + { + const expr = { + type: ExpressionKind.Concat, + params: normalizeParams(expression.slice(1)) + }; + return { + expr, + kind: HeadKind.AppendExpr, + trusted: forceTrusted + }; + } + case Builder.HasBlock: + return { + expr: { + type: ExpressionKind.HasBlock, + name: expression[1] + }, + kind: HeadKind.AppendExpr, + trusted: forceTrusted + }; + case Builder.HasBlockParams: + return { + expr: { + type: ExpressionKind.HasBlockParams, + name: expression[1] + }, + kind: HeadKind.AppendExpr, + trusted: forceTrusted + }; + default: + { + if (isBuilderCallExpression(expression)) { + return { + expr: normalizeCallExpression(expression), + kind: HeadKind.AppendExpr, + trusted: forceTrusted + }; + } else { + throw new Error(`Unexpected array in expression position (wasn't a tuple expression and ${expression[0]} isn't wrapped in parens, so it isn't a call): ${JSON.stringify(expression)}`); + } + } + // BuilderCallExpression + } + } else if (typeof expression !== 'object') { + switch (typeof expression) { + case 'string': + { + return normalizeAppendHead(normalizeDottedPath(expression), forceTrusted); + } + case 'boolean': + case 'number': + return { + expr: { + type: ExpressionKind.Literal, + value: expression + }, + kind: HeadKind.AppendExpr, + trusted: true + }; + default: + throw assertNever(expression); + } + } else { + throw assertNever(expression); + } + } + function normalizeExpression(expression) { + if (expression === null || expression === undefined) { + return { + type: ExpressionKind.Literal, + value: expression + }; + } else if (Array.isArray(expression)) { + switch (expression[0]) { + case Builder.Literal: + return { + type: ExpressionKind.Literal, + value: expression[1] + }; + case Builder.Get: + { + return normalizePath(expression[1], expression[2]); + } + case Builder.Concat: + { + const expr = { + type: ExpressionKind.Concat, + params: normalizeParams(expression.slice(1)) + }; + return expr; + } + case Builder.HasBlock: + return { + type: ExpressionKind.HasBlock, + name: expression[1] + }; + case Builder.HasBlockParams: + return { + type: ExpressionKind.HasBlockParams, + name: expression[1] + }; + default: + { + if (isBuilderCallExpression(expression)) { + return normalizeCallExpression(expression); + } else { + throw new Error(`Unexpected array in expression position (wasn't a tuple expression and ${expression[0]} isn't wrapped in parens, so it isn't a call): ${JSON.stringify(expression)}`); + } + } + // BuilderCallExpression + } + } else if (typeof expression !== 'object') { + switch (typeof expression) { + case 'string': + { + return normalizeDottedPath(expression); + } + case 'boolean': + case 'number': + return { + type: ExpressionKind.Literal, + value: expression + }; + default: + throw assertNever(expression); + } + } else { + throw assertNever(expression); + } + } + function statementIsExpression(statement) { + if (!Array.isArray(statement)) { + return false; + } + const name = statement[0]; + if (typeof name === 'number') { + switch (name) { + case Builder.Literal: + case Builder.Get: + case Builder.Concat: + case Builder.HasBlock: + case Builder.HasBlockParams: + return true; + default: + return false; + } + } + if (name[0] === '(') { + return true; + } + return false; + } + function isBuilderCallExpression(value) { + return typeof value[0] === 'string' && value[0][0] === '('; + } + function normalizeParams(input) { + return input.map(normalizeExpression); + } + function normalizeHash(input) { + if (input === null) return null; + return mapObject(input, normalizeExpression); + } + function normalizeCallExpression(expr) { + switch (expr.length) { + case 1: + return { + type: ExpressionKind.Call, + head: normalizeCallHead(expr[0]), + params: null, + hash: null + }; + case 2: + { + if (Array.isArray(expr[1])) { + return { + type: ExpressionKind.Call, + head: normalizeCallHead(expr[0]), + params: normalizeParams(expr[1]), + hash: null + }; + } else { + return { + type: ExpressionKind.Call, + head: normalizeCallHead(expr[0]), + params: null, + hash: normalizeHash(expr[1]) + }; + } + } + case 3: + return { + type: ExpressionKind.Call, + head: normalizeCallHead(expr[0]), + params: normalizeParams(expr[1]), + hash: normalizeHash(expr[2]) + }; + } + } + class ProgramSymbols { + _freeVariables = []; + _symbols = ['this']; + top = this; + toSymbols() { + return this._symbols.slice(1); + } + toUpvars() { + return this._freeVariables; + } + freeVar(name) { + return addString(this._freeVariables, name); + } + block(name) { + return this.symbol(name); + } + arg(name) { + return addString(this._symbols, name); + } + local(name) { + throw new Error(`No local ${name} was found. Maybe you meant ^${name} for upvar, or !${name} for keyword?`); + } + this() { + return 0; + } + hasLocal(_name) { + return false; + } + + // any symbol + symbol(name) { + return addString(this._symbols, name); + } + child(locals) { + return new LocalSymbols(this, locals); + } + } + class LocalSymbols { + locals = dict(); + constructor(parent, locals) { + this.parent = parent; + for (let local of locals) { + this.locals[local] = parent.top.symbol(local); + } + } + get paramSymbols() { + return values(this.locals); + } + get top() { + return this.parent.top; + } + freeVar(name) { + return this.parent.freeVar(name); + } + arg(name) { + return this.parent.arg(name); + } + block(name) { + return this.parent.block(name); + } + local(name) { + if (name in this.locals) { + return this.locals[name]; + } else { + return this.parent.local(name); + } + } + this() { + return this.parent.this(); + } + hasLocal(name) { + if (name in this.locals) { + return true; + } else { + return this.parent.hasLocal(name); + } + } + child(locals) { + return new LocalSymbols(this, locals); + } + } + function addString(array, item) { + let index = array.indexOf(item); + if (index === -1) { + index = array.length; + array.push(item); + return index; + } else { + return index; + } + } + function unimpl(message) { + return new Error(`unimplemented ${message}`); + } + function buildStatements(statements, symbols) { + let out = []; + statements.forEach(s => out.push(...buildStatement(normalizeStatement(s), symbols))); + return out; + } + function buildNormalizedStatements(statements, symbols) { + let out = []; + statements.forEach(s => out.push(...buildStatement(s, symbols))); + return out; + } + function buildStatement(normalized, symbols = new ProgramSymbols()) { + switch (normalized.kind) { + case HeadKind.AppendPath: + { + return [[normalized.trusted ? opcodes.TrustingAppend : opcodes.Append, buildGetPath(normalized.path, symbols)]]; + } + case HeadKind.AppendExpr: + { + return [[normalized.trusted ? opcodes.TrustingAppend : opcodes.Append, buildExpression(normalized.expr, normalized.trusted ? 'TrustedAppend' : 'Append', symbols)]]; + } + case HeadKind.Call: + { + let { + head: path, + params, + hash, + trusted + } = normalized; + let builtParams = params ? buildParams(params, symbols) : null; + let builtHash = hash ? buildHash(hash, symbols) : null; + let builtExpr = buildCallHead(path, trusted ? resolution.ResolveAsHelperHead : resolution.ResolveAsComponentOrHelperHead, symbols); + return [[trusted ? opcodes.TrustingAppend : opcodes.Append, [opcodes.Call, builtExpr, builtParams, builtHash]]]; + } + case HeadKind.Literal: + { + return [[opcodes.Append, normalized.value]]; + } + case HeadKind.Comment: + { + return [[opcodes.Comment, normalized.value]]; + } + case HeadKind.Block: + { + let blocks = buildBlocks(normalized.blocks, normalized.blockParams, symbols); + let hash = buildHash(normalized.hash, symbols); + let params = buildParams(normalized.params, symbols); + let path = buildCallHead(normalized.head, resolution.ResolveAsComponentHead, symbols); + return [[opcodes.Block, path, params, hash, blocks]]; + } + case HeadKind.Keyword: + { + return [buildKeyword(normalized, symbols)]; + } + case HeadKind.Element: + return buildElement(normalized, symbols); + case HeadKind.Modifier: + throw unimpl('modifier'); + case HeadKind.DynamicComponent: + throw unimpl('dynamic component'); + default: + throw assertNever(normalized); + } + } + function s(arr, ...interpolated) { + let result = arr.reduce((result, string, i) => result + `${string}${interpolated[i] ? String(interpolated[i]) : ''}`, ''); + return [Builder.Literal, result]; + } + function c(arr, ...interpolated) { + let result = arr.reduce((result, string, i) => result + `${string}${interpolated[i] ? String(interpolated[i]) : ''}`, ''); + return [Builder.Comment, result]; + } + function unicode(charCode) { + return String.fromCharCode(parseInt(charCode, 16)); + } + const NEWLINE = '\n'; + function buildKeyword(normalized, symbols) { + let { + name + } = normalized; + let params = buildParams(normalized.params, symbols); + let childSymbols = symbols.child(normalized.blockParams || []); + let block = buildBlock(normalized.blocks['default'], childSymbols, childSymbols.paramSymbols); + let inverse = normalized.blocks['else'] ? buildBlock(normalized.blocks['else'], symbols, []) : null; + switch (name) { + case 'let': + return [opcodes.Let, expect(params, 'let requires params'), block]; + case 'if': + return [opcodes.If, expect(params, 'if requires params')[0], block, inverse]; + case 'each': + { + let keyExpr = normalized.hash ? normalized.hash['key'] : null; + let key = keyExpr ? buildExpression(keyExpr, 'Strict', symbols) : null; + return [opcodes.Each, expect(params, 'if requires params')[0], key, block, inverse]; + } + default: + throw new Error('unimplemented keyword'); + } + } + function buildElement({ + name, + attrs, + block + }, symbols) { + let out = [hasSplat(attrs) ? [opcodes.OpenElementWithSplat, name] : [opcodes.OpenElement, name]]; + if (attrs) { + let { + params, + args + } = buildElementParams(attrs, symbols); + out.push(...params); + debugAssert(args === null, `Can't pass args to a simple element`); + } + out.push([opcodes.FlushElement]); + if (Array.isArray(block)) { + block.forEach(s => out.push(...buildStatement(s, symbols))); + } else if (block === null) ;else { + throw assertNever(block); + } + out.push([opcodes.CloseElement]); + return out; + } + function hasSplat(attrs) { + if (attrs === null) return false; + return Object.keys(attrs).some(a => attrs[a] === HeadKind.Splat); + } + function buildElementParams(attrs, symbols) { + let params = []; + let keys = []; + let values = []; + for (const [key, value] of Object.entries(attrs)) { + if (value === HeadKind.Splat) { + params.push([opcodes.AttrSplat, symbols.block('&attrs')]); + } else if (key[0] === '@') { + keys.push(key); + values.push(buildExpression(value, 'Strict', symbols)); + } else { + params.push(...buildAttributeValue(key, value, + // TODO: extract namespace from key + extractNamespace(key), symbols)); + } + } + return { + params, + args: isPresentArray(keys) && isPresentArray(values) ? [keys, values] : null + }; + } + function extractNamespace(name) { + if (name === 'xmlns') { + return NS_XMLNS; + } + let match = /^([^:]*):([^:]*)$/u.exec(name); + if (match === null) { + return null; + } + let namespace = match[1]; + switch (namespace) { + case 'xlink': + return NS_XLINK; + case 'xml': + return NS_XML; + case 'xmlns': + return NS_XMLNS; + } + return null; + } + function buildAttributeValue(name, value, namespace, symbols) { + switch (value.type) { + case ExpressionKind.Literal: + { + let val = value.value; + if (val === false) { + return []; + } else if (val === true) { + return [[opcodes.StaticAttr, name, '', namespace ?? undefined]]; + } else if (typeof val === 'string') { + return [[opcodes.StaticAttr, name, val, namespace ?? undefined]]; + } else { + throw new Error(`Unexpected/unimplemented literal attribute ${JSON.stringify(val)}`); + } + } + default: + return [[opcodes.DynamicAttr, name, buildExpression(value, 'AttrValue', symbols), namespace ?? undefined]]; + } + } + function varContext(context, bare) { + switch (context) { + case 'Append': + return bare ? 'AppendBare' : 'AppendInvoke'; + case 'TrustedAppend': + return bare ? 'TrustedAppendBare' : 'TrustedAppendInvoke'; + case 'AttrValue': + return bare ? 'AttrValueBare' : 'AttrValueInvoke'; + default: + return context; + } + } + function buildExpression(expr, context, symbols) { + switch (expr.type) { + case ExpressionKind.GetPath: + { + return buildGetPath(expr, symbols); + } + case ExpressionKind.GetVar: + { + return buildVar(expr.variable, varContext(context, true), symbols); + } + case ExpressionKind.Concat: + { + return [opcodes.Concat, buildConcat(expr.params, symbols)]; + } + case ExpressionKind.Call: + { + let builtParams = buildParams(expr.params, symbols); + let builtHash = buildHash(expr.hash, symbols); + let builtExpr = buildCallHead(expr.head, context === 'Strict' ? 'SubExpression' : varContext(context, false), symbols); + return [opcodes.Call, builtExpr, builtParams, builtHash]; + } + case ExpressionKind.HasBlock: + { + return [opcodes.HasBlock, buildVar({ + kind: VariableKind.Block, + name: expr.name, + mode: 'loose' + }, resolution.Strict, symbols)]; + } + case ExpressionKind.HasBlockParams: + { + return [opcodes.HasBlockParams, buildVar({ + kind: VariableKind.Block, + name: expr.name, + mode: 'loose' + }, resolution.Strict, symbols)]; + } + case ExpressionKind.Literal: + { + if (expr.value === undefined) { + return [opcodes.Undefined]; + } else { + return expr.value; + } + } + default: + assertNever(expr); + } + } + function buildCallHead(callHead, context, symbols) { + if (callHead.type === ExpressionKind.GetVar) { + return buildVar(callHead.variable, context, symbols); + } else { + return buildGetPath(callHead, symbols); + } + } + function buildGetPath(head, symbols) { + return buildVar(head.path.head, resolution.Strict, symbols, head.path.tail); + } + function buildVar(head, context, symbols, path) { + let op = opcodes.GetSymbol; + let sym; + switch (head.kind) { + case VariableKind.Free: + if (context === 'Strict') { + op = opcodes.GetStrictKeyword; + } else if (context === 'AppendBare') { + op = opcodes.GetFreeAsComponentOrHelperHead; + } else if (context === 'AppendInvoke') { + op = opcodes.GetFreeAsComponentOrHelperHead; + } else if (context === 'TrustedAppendBare') { + op = opcodes.GetFreeAsHelperHead; + } else if (context === 'TrustedAppendInvoke') { + op = opcodes.GetFreeAsHelperHead; + } else if (context === 'AttrValueBare') { + op = opcodes.GetFreeAsHelperHead; + } else if (context === 'AttrValueInvoke') { + op = opcodes.GetFreeAsHelperHead; + } else if (context === 'SubExpression') { + op = opcodes.GetFreeAsHelperHead; + } else { + op = expressionContextOp(context); + } + sym = symbols.freeVar(head.name); + break; + default: + op = opcodes.GetSymbol; + sym = getSymbolForVar(head.kind, symbols, head.name); + } + if (path === undefined || path.length === 0) { + return [op, sym]; + } else { + debugAssert(op !== opcodes.GetStrictKeyword, '[BUG] keyword with a path'); + return [op, sym, path]; + } + } + function getSymbolForVar(kind, symbols, name) { + switch (kind) { + case VariableKind.Arg: + return symbols.arg(name); + case VariableKind.Block: + return symbols.block(name); + case VariableKind.Local: + return symbols.local(name); + case VariableKind.This: + return symbols.this(); + default: + return exhausted(kind); + } + } + function expressionContextOp(context) { + switch (context) { + case resolution.Strict: + return opcodes.GetStrictKeyword; + case resolution.ResolveAsComponentOrHelperHead: + return opcodes.GetFreeAsComponentOrHelperHead; + case resolution.ResolveAsHelperHead: + return opcodes.GetFreeAsHelperHead; + case resolution.ResolveAsModifierHead: + return opcodes.GetFreeAsModifierHead; + case resolution.ResolveAsComponentHead: + return opcodes.GetFreeAsComponentHead; + default: + return exhausted(context); + } + } + function buildParams(exprs, symbols) { + if (exprs === null || !isPresentArray(exprs)) return null; + return exprs.map(e => buildExpression(e, 'Strict', symbols)); + } + function buildConcat(exprs, symbols) { + return exprs.map(e => buildExpression(e, 'AttrValue', symbols)); + } + function buildHash(exprs, symbols) { + if (exprs === null) return null; + let out = [[], []]; + for (const [key, value] of Object.entries(exprs)) { + out[0].push(key); + out[1].push(buildExpression(value, 'Strict', symbols)); + } + return out; + } + function buildBlocks(blocks, blockParams, parent) { + let keys = []; + let values = []; + for (const [name, block] of Object.entries(blocks)) { + keys.push(name); + if (name === 'default') { + let symbols = parent.child(blockParams || []); + values.push(buildBlock(block, symbols, symbols.paramSymbols)); + } else { + values.push(buildBlock(block, parent, [])); + } + } + return [keys, values]; + } + function buildBlock(block, symbols, locals = []) { + return [buildNormalizedStatements(block, symbols), locals]; + } + class Template extends node('Template').fields() {} + class InElement extends node('InElement').fields() {} + class Not extends node('Not').fields() {} + class If extends node('If').fields() {} + class IfInline extends node('IfInline').fields() {} + class Each extends node('Each').fields() {} + class Let extends node('Let').fields() {} + class WithDynamicVars extends node('WithDynamicVars').fields() {} + class GetDynamicVar extends node('GetDynamicVar').fields() {} + class Log extends node('Log').fields() {} + class InvokeComponent extends node('InvokeComponent').fields() {} + class NamedBlocks extends node('NamedBlocks').fields() {} + class NamedBlock extends node('NamedBlock').fields() {} + class AppendTrustedHTML extends node('AppendTrustedHTML').fields() {} + class AppendTextNode extends node('AppendTextNode').fields() {} + class AppendComment extends node('AppendComment').fields() {} + class Component extends node('Component').fields() {} + class StaticAttr extends node('StaticAttr').fields() {} + class DynamicAttr extends node('DynamicAttr').fields() {} + class SimpleElement extends node('SimpleElement').fields() {} + class ElementParameters extends node('ElementParameters').fields() {} + class Yield extends node('Yield').fields() {} + class Debugger extends node('Debugger').fields() {} + class CallExpression extends node('CallExpression').fields() {} + class Modifier extends node('Modifier').fields() {} + class InvokeBlock extends node('InvokeBlock').fields() {} + class SplatAttr extends node('SplatAttr').fields() {} + class PathExpression extends node('PathExpression').fields() {} + class Missing extends node('Missing').fields() {} + class InterpolateExpression extends node('InterpolateExpression').fields() {} + class HasBlock extends node('HasBlock').fields() {} + class HasBlockParams extends node('HasBlockParams').fields() {} + class Curry extends node('Curry').fields() {} + class Positional extends node('Positional').fields() {} + class NamedArguments extends node('NamedArguments').fields() {} + class NamedArgument extends node('NamedArgument').fields() {} + class Args extends node('Args').fields() {} + class Tail extends node('Tail').fields() {} + class PresentList { + constructor(list) { + this.list = list; + } + toArray() { + return this.list; + } + map(callback) { + let result = mapPresentArray(this.list, callback); + return new PresentList(result); + } + filter(predicate) { + let out = []; + for (let item of this.list) { + if (predicate(item)) { + out.push(item); + } + } + return OptionalList(out); + } + toPresentArray() { + return this.list; + } + into({ + ifPresent + }) { + return ifPresent(this); + } + } + class EmptyList { + list = []; + map(_callback) { + return new EmptyList(); + } + filter(_predicate) { + return new EmptyList(); + } + toArray() { + return this.list; + } + toPresentArray() { + return null; + } + into({ + ifEmpty + }) { + return ifEmpty(); + } + } + + // export type OptionalList = PresentList | EmptyList; + + function OptionalList(value) { + if (isPresentArray(value)) { + return new PresentList(value); + } else { + return new EmptyList(); + } + } + class ResultImpl { + static all(...results) { + let out = []; + for (let result of results) { + if (result.isErr) { + return result.cast(); + } else { + out.push(result.value); + } + } + return Ok(out); + } + } + const Result = ResultImpl; + class OkImpl extends ResultImpl { + isOk = true; + isErr = false; + constructor(value) { + super(); + this.value = value; + } + expect(_message) { + return this.value; + } + ifOk(callback) { + callback(this.value); + return this; + } + andThen(callback) { + return callback(this.value); + } + mapOk(callback) { + return Ok(callback(this.value)); + } + ifErr(_callback) { + return this; + } + mapErr(_callback) { + return this; + } + } + class ErrImpl extends ResultImpl { + isOk = false; + isErr = true; + constructor(reason) { + super(); + this.reason = reason; + } + expect(message) { + throw new Error(message || 'expected an Ok, got Err'); + } + andThen(_callback) { + return this.cast(); + } + mapOk(_callback) { + return this.cast(); + } + ifOk(_callback) { + return this; + } + mapErr(callback) { + return Err(callback(this.reason)); + } + ifErr(callback) { + callback(this.reason); + return this; + } + cast() { + return this; + } + } + function Ok(value) { + return new OkImpl(value); + } + function Err(reason) { + return new ErrImpl(reason); + } + class ResultArray { + constructor(items = []) { + this.items = items; + } + add(item) { + this.items.push(item); + } + toArray() { + let err = this.items.filter(item => item instanceof ErrImpl)[0]; + if (err !== undefined) { + return err.cast(); + } else { + return Ok(this.items.map(item => item.value)); + } + } + toOptionalList() { + return this.toArray().mapOk(arr => OptionalList(arr)); + } + } + class NormalizeExpressions { + visit(node, state) { + switch (node.type) { + case 'Literal': + return Ok(this.Literal(node)); + case 'Keyword': + return Ok(this.Keyword(node)); + case 'Interpolate': + return this.Interpolate(node, state); + case 'Path': + return this.PathExpression(node); + case 'Call': + { + let translated = CALL_KEYWORDS.translate(node, state); + if (translated !== null) { + return translated; + } + return this.CallExpression(node, state); + } + } + } + visitList(nodes, state) { + return new ResultArray(nodes.map(e => VISIT_EXPRS.visit(e, state))).toOptionalList(); + } + + /** + * Normalize paths into `hir.Path` or a `hir.Expr` that corresponds to the ref. + * + * TODO since keywords don't support tails anyway, distinguish PathExpression from + * VariableReference in ASTv2. + */ + PathExpression(path) { + let ref = this.VariableReference(path.ref); + let { + tail + } = path; + if (isPresentArray(tail)) { + let tailLoc = tail[0].loc.extend(getLast(tail).loc); + return Ok(new PathExpression({ + loc: path.loc, + head: ref, + tail: new Tail({ + loc: tailLoc, + members: tail + }) + })); + } else { + return Ok(ref); + } + } + VariableReference(ref) { + return ref; + } + Literal(literal) { + return literal; + } + Keyword(keyword) { + return keyword; + } + Interpolate(expr, state) { + let parts = expr.parts.map(convertPathToCallIfKeyword); + return VISIT_EXPRS.visitList(parts, state).mapOk(parts => new InterpolateExpression({ + loc: expr.loc, + parts: parts + })); + } + CallExpression(expr, state) { + if (expr.callee.type === 'Call') { + throw new Error(`unimplemented: subexpression at the head of a subexpression`); + } else { + return Result.all(VISIT_EXPRS.visit(expr.callee, state), VISIT_EXPRS.Args(expr.args, state)).mapOk(([callee, args]) => new CallExpression({ + loc: expr.loc, + callee, + args + })); + } + } + Args({ + positional, + named, + loc + }, state) { + return Result.all(this.Positional(positional, state), this.NamedArguments(named, state)).mapOk(([positional, named]) => new Args({ + loc, + positional, + named + })); + } + Positional(positional, state) { + return VISIT_EXPRS.visitList(positional.exprs, state).mapOk(list => new Positional({ + loc: positional.loc, + list + })); + } + NamedArguments(named, state) { + let pairs = named.entries.map(arg => { + let value = convertPathToCallIfKeyword(arg.value); + return VISIT_EXPRS.visit(value, state).mapOk(value => new NamedArgument({ + loc: arg.loc, + key: arg.name, + value + })); + }); + return new ResultArray(pairs).toOptionalList().mapOk(pairs => new NamedArguments({ + loc: named.loc, + entries: pairs + })); + } + } + function convertPathToCallIfKeyword(path) { + if (path.type === 'Path' && path.ref.type === 'Free' && path.ref.name in KEYWORDS_TYPES) { + return new api$1.CallExpression({ + callee: path, + args: api$1.Args.empty(path.loc), + loc: path.loc + }); + } + return path; + } + const VISIT_EXPRS = new NormalizeExpressions(); + class KeywordImpl { + types; + constructor(keyword, type, delegate) { + this.keyword = keyword; + this.delegate = delegate; + let nodes = new Set(); + for (let nodeType of KEYWORD_NODES[type]) { + nodes.add(nodeType); + } + this.types = nodes; + } + match(node) { + if (!this.types.has(node.type)) { + return false; + } + let path = getCalleeExpression(node); + if (path !== null && path.type === 'Path' && path.ref.type === 'Free') { + return path.ref.name === this.keyword; + } else { + return false; + } + } + translate(node, state) { + if (this.match(node)) { + let path = getCalleeExpression(node); + if (path !== null && path.type === 'Path' && path.tail.length > 0) { + return Err(generateSyntaxError(`The \`${this.keyword}\` keyword was used incorrectly. It was used as \`${path.loc.asString()}\`, but it cannot be used with additional path segments. \n\nError caused by`, node.loc)); + } + let param = this.delegate.assert(node, state); + return param.andThen(param => this.delegate.translate({ + node, + state + }, param)); + } else { + return null; + } + } + } + const KEYWORD_NODES = { + Call: ['Call'], + Block: ['InvokeBlock'], + Append: ['AppendContent'], + Modifier: ['ElementModifier'] + }; + + /** + * A "generic" keyword is something like `has-block`, which makes sense in the context + * of sub-expression or append + */ + + function keyword(keyword, type, delegate) { + return new KeywordImpl(keyword, type, delegate); + } + function getCalleeExpression(node) { + switch (node.type) { + // This covers the inside of attributes and expressions, as well as the callee + // of call nodes + case 'Path': + return node; + case 'AppendContent': + return getCalleeExpression(node.value); + case 'Call': + case 'InvokeBlock': + case 'ElementModifier': + return node.callee; + default: + return null; + } + } + class Keywords { + _keywords = []; + _type; + constructor(type) { + this._type = type; + } + kw(name, delegate) { + this._keywords.push(keyword(name, this._type, delegate)); + return this; + } + translate(node, state) { + for (let keyword of this._keywords) { + let result = keyword.translate(node, state); + if (result !== null) { + return result; + } + } + let path = getCalleeExpression(node); + if (path && path.type === 'Path' && path.ref.type === 'Free' && isKeyword(path.ref.name)) { + let { + name + } = path.ref; + let usedType = this._type; + let validTypes = KEYWORDS_TYPES[name]; + if (!validTypes.includes(usedType)) { + return Err(generateSyntaxError(`The \`${name}\` keyword was used incorrectly. It was used as ${typesToReadableName[usedType]}, but its valid usages are:\n\n${generateTypesMessage(name, validTypes)}\n\nError caused by`, node.loc)); + } + } + return null; + } + } + const typesToReadableName = { + Append: 'an append statement', + Block: 'a block statement', + Call: 'a call expression', + Modifier: 'a modifier' + }; + function generateTypesMessage(name, types) { + return types.map(type => { + switch (type) { + case 'Append': + return `- As an append statement, as in: {{${name}}}`; + case 'Block': + return `- As a block statement, as in: {{#${name}}}{{/${name}}}`; + case 'Call': + return `- As an expression, as in: (${name})`; + case 'Modifier': + return `- As a modifier, as in:
`; + default: + return exhausted(type); + } + }).join('\n\n'); + } + + /** + * This function builds keyword definitions for a particular type of AST node (`KeywordType`). + * + * You can build keyword definitions for: + * + * - `Expr`: A `SubExpression` or `PathExpression` + * - `Block`: A `BlockStatement` + * - A `BlockStatement` is a keyword candidate if its head is a + * `PathExpression` + * - `Append`: An `AppendStatement` + * + * A node is a keyword candidate if: + * + * - A `PathExpression` is a keyword candidate if it has no tail, and its + * head expression is a `LocalVarHead` or `FreeVarHead` whose name is + * the keyword's name. + * - A `SubExpression`, `AppendStatement`, or `BlockStatement` is a keyword + * candidate if its head is a keyword candidate. + * + * The keyword infrastructure guarantees that: + * + * - If a node is not a keyword candidate, it is never passed to any keyword's + * `assert` method. + * - If a node is not the `KeywordType` for a particular keyword, it will not + * be passed to the keyword's `assert` method. + * + * `Expr` keywords are used in expression positions and should return HIR + * expressions. `Block` and `Append` keywords are used in statement + * positions and should return HIR statements. + * + * A keyword definition has two parts: + * + * - `match`, which determines whether an AST node matches the keyword, and can + * optionally return some information extracted from the AST node. + * - `translate`, which takes a matching AST node as well as the extracted + * information and returns an appropriate HIR instruction. + * + * # Example + * + * This keyword: + * + * - turns `(hello)` into `"hello"` + * - as long as `hello` is not in scope + * - makes it an error to pass any arguments (such as `(hello world)`) + * + * ```ts + * keywords('SubExpr').kw('hello', { + * assert(node: ExprKeywordNode): Result | false { + * // we don't want to transform `hello` as a `PathExpression` + * if (node.type !== 'SubExpression') { + * return false; + * } + * + * // node.head would be `LocalVarHead` if `hello` was in scope + * if (node.head.type !== 'FreeVarHead') { + * return false; + * } + * + * if (node.params.length || node.hash) { + * return Err(generateSyntaxError(`(hello) does not take any arguments`), node.loc); + * } else { + * return Ok(); + * } + * }, + * + * translate(node: ASTv2.SubExpression): hir.Expression { + * return ASTv2.builders.literal("hello", node.loc) + * } + * }) + * ``` + * + * The keyword infrastructure checks to make sure that the node is the right + * type before calling `assert`, so you only need to consider `SubExpression` + * and `PathExpression` here. It also checks to make sure that the node passed + * to `assert` has the keyword name in the right place. + * + * Note the important difference between returning `false` from `assert`, + * which just means that the node didn't match, and returning `Err`, which + * means that the node matched, but there was a keyword-specific syntax + * error. + */ + function keywords(type) { + return new Keywords(type); + } + function toAppend({ + assert, + translate + }) { + return { + assert, + translate({ + node, + state + }, value) { + let result = translate({ + node, + state + }, value); + return result.mapOk(text => new AppendTextNode({ + text, + loc: node.loc + })); + } + }; + } + const CurriedTypeToReadableType = { + [CurriedTypes.Component]: 'component', + [CurriedTypes.Helper]: 'helper', + [CurriedTypes.Modifier]: 'modifier' + }; + function assertCurryKeyword(curriedType) { + return (node, state) => { + let readableType = CurriedTypeToReadableType[curriedType]; + let stringsAllowed = curriedType === CurriedTypes.Component; + let { + args + } = node; + let definition = args.nth(0); + if (definition === null) { + return Err(generateSyntaxError(`(${readableType}) requires a ${readableType} definition or identifier as its first positional parameter, did not receive any parameters.`, args.loc)); + } + if (definition.type === 'Literal') { + if (stringsAllowed && state.isStrict) { + return Err(generateSyntaxError(`(${readableType}) cannot resolve string values in strict mode templates`, node.loc)); + } else if (!stringsAllowed) { + return Err(generateSyntaxError(`(${readableType}) cannot resolve string values, you must pass a ${readableType} definition directly`, node.loc)); + } + } + args = new api$1.Args({ + positional: new api$1.PositionalArguments({ + exprs: args.positional.exprs.slice(1), + loc: args.positional.loc + }), + named: args.named, + loc: args.loc + }); + return Ok({ + definition, + args + }); + }; + } + function translateCurryKeyword(curriedType) { + return ({ + node, + state + }, { + definition, + args + }) => { + let definitionResult = VISIT_EXPRS.visit(definition, state); + let argsResult = VISIT_EXPRS.Args(args, state); + return Result.all(definitionResult, argsResult).mapOk(([definition, args]) => new Curry({ + loc: node.loc, + curriedType, + definition, + args + })); + }; + } + function curryKeyword(curriedType) { + return { + assert: assertCurryKeyword(curriedType), + translate: translateCurryKeyword(curriedType) + }; + } + function assertGetDynamicVarKeyword(node) { + let call = node.type === 'AppendContent' ? node.value : node; + let named = call.type === 'Call' ? call.args.named : null; + let positionals = call.type === 'Call' ? call.args.positional : null; + if (named && !named.isEmpty()) { + return Err(generateSyntaxError(`(-get-dynamic-vars) does not take any named arguments`, node.loc)); + } + let varName = positionals?.nth(0); + if (!varName) { + return Err(generateSyntaxError(`(-get-dynamic-vars) requires a var name to get`, node.loc)); + } + if (positionals && positionals.size > 1) { + return Err(generateSyntaxError(`(-get-dynamic-vars) only receives one positional arg`, node.loc)); + } + return Ok(varName); + } + function translateGetDynamicVarKeyword({ + node, + state + }, name) { + return VISIT_EXPRS.visit(name, state).mapOk(name => new GetDynamicVar({ + name, + loc: node.loc + })); + } + const getDynamicVarKeyword = { + assert: assertGetDynamicVarKeyword, + translate: translateGetDynamicVarKeyword + }; + function assertHasBlockKeyword(type) { + return node => { + let call = node.type === 'AppendContent' ? node.value : node; + let named = call.type === 'Call' ? call.args.named : null; + let positionals = call.type === 'Call' ? call.args.positional : null; + if (named && !named.isEmpty()) { + return Err(generateSyntaxError(`(${type}) does not take any named arguments`, call.loc)); + } + if (!positionals || positionals.isEmpty()) { + return Ok(SourceSlice.synthetic('default')); + } else if (positionals.exprs.length === 1) { + let positional = positionals.exprs[0]; + if (api$1.isLiteral(positional, 'string')) { + return Ok(positional.toSlice()); + } else { + return Err(generateSyntaxError(`(${type}) can only receive a string literal as its first argument`, call.loc)); + } + } else { + return Err(generateSyntaxError(`(${type}) only takes a single positional argument`, call.loc)); + } + }; + } + function translateHasBlockKeyword(type) { + return ({ + node, + state: { + scope + } + }, target) => { + let block = type === 'has-block' ? new HasBlock({ + loc: node.loc, + target, + symbol: scope.allocateBlock(target.chars) + }) : new HasBlockParams({ + loc: node.loc, + target, + symbol: scope.allocateBlock(target.chars) + }); + return Ok(block); + }; + } + function hasBlockKeyword(type) { + return { + assert: assertHasBlockKeyword(type), + translate: translateHasBlockKeyword(type) + }; + } + function assertIfUnlessInlineKeyword(type) { + return originalNode => { + let inverted = type === 'unless'; + let node = originalNode.type === 'AppendContent' ? originalNode.value : originalNode; + let named = node.type === 'Call' ? node.args.named : null; + let positional = node.type === 'Call' ? node.args.positional : null; + if (named && !named.isEmpty()) { + return Err(generateSyntaxError(`(${type}) cannot receive named parameters, received ${named.entries.map(e => e.name.chars).join(', ')}`, originalNode.loc)); + } + let condition = positional?.nth(0); + if (!positional || !condition) { + return Err(generateSyntaxError(`When used inline, (${type}) requires at least two parameters 1. the condition that determines the state of the (${type}), and 2. the value to return if the condition is ${inverted ? 'false' : 'true'}. Did not receive any parameters`, originalNode.loc)); + } + let truthy = positional.nth(1); + let falsy = positional.nth(2); + if (truthy === null) { + return Err(generateSyntaxError(`When used inline, (${type}) requires at least two parameters 1. the condition that determines the state of the (${type}), and 2. the value to return if the condition is ${inverted ? 'false' : 'true'}. Received only one parameter, the condition`, originalNode.loc)); + } + if (positional.size > 3) { + return Err(generateSyntaxError(`When used inline, (${type}) can receive a maximum of three positional parameters 1. the condition that determines the state of the (${type}), 2. the value to return if the condition is ${inverted ? 'false' : 'true'}, and 3. the value to return if the condition is ${inverted ? 'true' : 'false'}. Received ${positional?.size ?? 0} parameters`, originalNode.loc)); + } + return Ok({ + condition, + truthy, + falsy + }); + }; + } + function translateIfUnlessInlineKeyword(type) { + let inverted = type === 'unless'; + return ({ + node, + state + }, { + condition, + truthy, + falsy + }) => { + let conditionResult = VISIT_EXPRS.visit(condition, state); + let truthyResult = VISIT_EXPRS.visit(truthy, state); + let falsyResult = falsy ? VISIT_EXPRS.visit(falsy, state) : Ok(null); + return Result.all(conditionResult, truthyResult, falsyResult).mapOk(([condition, truthy, falsy]) => { + if (inverted) { + condition = new Not({ + value: condition, + loc: node.loc + }); + } + return new IfInline({ + loc: node.loc, + condition, + truthy, + falsy + }); + }); + }; + } + function ifUnlessInlineKeyword(type) { + return { + assert: assertIfUnlessInlineKeyword(type), + translate: translateIfUnlessInlineKeyword(type) + }; + } + function assertLogKeyword(node) { + let { + args: { + named, + positional + } + } = node; + if (named && !named.isEmpty()) { + return Err(generateSyntaxError(`(log) does not take any named arguments`, node.loc)); + } + return Ok(positional); + } + function translateLogKeyword({ + node, + state + }, positional) { + return VISIT_EXPRS.Positional(positional, state).mapOk(positional => new Log({ + positional, + loc: node.loc + })); + } + const logKeyword = { + assert: assertLogKeyword, + translate: translateLogKeyword + }; + const APPEND_KEYWORDS = keywords('Append').kw('has-block', toAppend(hasBlockKeyword('has-block'))).kw('has-block-params', toAppend(hasBlockKeyword('has-block-params'))).kw('-get-dynamic-var', toAppend(getDynamicVarKeyword)).kw('log', toAppend(logKeyword)).kw('if', toAppend(ifUnlessInlineKeyword('if'))).kw('unless', toAppend(ifUnlessInlineKeyword('unless'))).kw('yield', { + assert(node) { + let { + args + } = node; + if (args.named.isEmpty()) { + return Ok({ + target: api$2.SourceSpan.synthetic('default').toSlice(), + positional: args.positional + }); + } else { + let target = args.named.get('to'); + if (args.named.size > 1 || target === null) { + return Err(generateSyntaxError(`yield only takes a single named argument: 'to'`, args.named.loc)); + } + if (api$1.isLiteral(target, 'string')) { + return Ok({ + target: target.toSlice(), + positional: args.positional + }); + } else { + return Err(generateSyntaxError(`you can only yield to a literal string value`, target.loc)); + } + } + }, + translate({ + node, + state + }, { + target, + positional + }) { + return VISIT_EXPRS.Positional(positional, state).mapOk(positional => new Yield({ + loc: node.loc, + target, + to: state.scope.allocateBlock(target.chars), + positional + })); + } + }).kw('debugger', { + assert(node) { + let { + args + } = node; + let { + positional + } = args; + if (args.isEmpty()) { + return Ok(undefined); + } else { + if (positional.isEmpty()) { + return Err(generateSyntaxError(`debugger does not take any named arguments`, node.loc)); + } else { + return Err(generateSyntaxError(`debugger does not take any positional arguments`, node.loc)); + } + } + }, + translate({ + node, + state: { + scope + } + }) { + scope.setHasDebugger(); + return Ok(new Debugger({ + loc: node.loc, + scope + })); + } + }).kw('component', { + assert: assertCurryKeyword(CurriedTypes.Component), + translate({ + node, + state + }, { + definition, + args + }) { + let definitionResult = VISIT_EXPRS.visit(definition, state); + let argsResult = VISIT_EXPRS.Args(args, state); + return Result.all(definitionResult, argsResult).mapOk(([definition, args]) => new InvokeComponent({ + loc: node.loc, + definition, + args, + blocks: null + })); + } + }).kw('helper', { + assert: assertCurryKeyword(CurriedTypes.Helper), + translate({ + node, + state + }, { + definition, + args + }) { + let definitionResult = VISIT_EXPRS.visit(definition, state); + let argsResult = VISIT_EXPRS.Args(args, state); + return Result.all(definitionResult, argsResult).mapOk(([definition, args]) => { + let text = new CallExpression({ + callee: definition, + args, + loc: node.loc + }); + return new AppendTextNode({ + loc: node.loc, + text + }); + }); + } + }); + const BLOCK_KEYWORDS = keywords('Block').kw('in-element', { + assert(node) { + let { + args + } = node; + let guid = args.get('guid'); + if (guid) { + return Err(generateSyntaxError(`Cannot pass \`guid\` to \`{{#in-element}}\``, guid.loc)); + } + let insertBefore = args.get('insertBefore'); + let destination = args.nth(0); + if (destination === null) { + return Err(generateSyntaxError(`{{#in-element}} requires a target element as its first positional parameter`, args.loc)); + } + + // TODO Better syntax checks + + return Ok({ + insertBefore, + destination + }); + }, + translate({ + node, + state + }, { + insertBefore, + destination + }) { + let named = node.blocks.get('default'); + let body = VISIT_STMTS.NamedBlock(named, state); + let destinationResult = VISIT_EXPRS.visit(destination, state); + return Result.all(body, destinationResult).andThen(([body, destination]) => { + if (insertBefore) { + return VISIT_EXPRS.visit(insertBefore, state).mapOk(insertBefore => ({ + body, + destination, + insertBefore + })); + } else { + return Ok({ + body, + destination, + insertBefore: new Missing({ + loc: node.callee.loc.collapse('end') + }) + }); + } + }).mapOk(({ + body, + destination, + insertBefore + }) => new InElement({ + loc: node.loc, + block: body, + insertBefore, + guid: state.generateUniqueCursor(), + destination + })); + } + }).kw('if', { + assert(node) { + let { + args + } = node; + if (!args.named.isEmpty()) { + return Err(generateSyntaxError(`{{#if}} cannot receive named parameters, received ${args.named.entries.map(e => e.name.chars).join(', ')}`, node.loc)); + } + if (args.positional.size > 1) { + return Err(generateSyntaxError(`{{#if}} can only receive one positional parameter in block form, the conditional value. Received ${args.positional.size} parameters`, node.loc)); + } + let condition = args.nth(0); + if (condition === null) { + return Err(generateSyntaxError(`{{#if}} requires a condition as its first positional parameter, did not receive any parameters`, node.loc)); + } + return Ok({ + condition + }); + }, + translate({ + node, + state + }, { + condition + }) { + let block = node.blocks.get('default'); + let inverse = node.blocks.get('else'); + let conditionResult = VISIT_EXPRS.visit(condition, state); + let blockResult = VISIT_STMTS.NamedBlock(block, state); + let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); + return Result.all(conditionResult, blockResult, inverseResult).mapOk(([condition, block, inverse]) => new If({ + loc: node.loc, + condition, + block, + inverse + })); + } + }).kw('unless', { + assert(node) { + let { + args + } = node; + if (!args.named.isEmpty()) { + return Err(generateSyntaxError(`{{#unless}} cannot receive named parameters, received ${args.named.entries.map(e => e.name.chars).join(', ')}`, node.loc)); + } + if (args.positional.size > 1) { + return Err(generateSyntaxError(`{{#unless}} can only receive one positional parameter in block form, the conditional value. Received ${args.positional.size} parameters`, node.loc)); + } + let condition = args.nth(0); + if (condition === null) { + return Err(generateSyntaxError(`{{#unless}} requires a condition as its first positional parameter, did not receive any parameters`, node.loc)); + } + return Ok({ + condition + }); + }, + translate({ + node, + state + }, { + condition + }) { + let block = node.blocks.get('default'); + let inverse = node.blocks.get('else'); + let conditionResult = VISIT_EXPRS.visit(condition, state); + let blockResult = VISIT_STMTS.NamedBlock(block, state); + let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); + return Result.all(conditionResult, blockResult, inverseResult).mapOk(([condition, block, inverse]) => new If({ + loc: node.loc, + condition: new Not({ + value: condition, + loc: node.loc + }), + block, + inverse + })); + } + }).kw('each', { + assert(node) { + let { + args + } = node; + if (!args.named.entries.every(e => e.name.chars === 'key')) { + return Err(generateSyntaxError(`{{#each}} can only receive the 'key' named parameter, received ${args.named.entries.filter(e => e.name.chars !== 'key').map(e => e.name.chars).join(', ')}`, args.named.loc)); + } + if (args.positional.size > 1) { + return Err(generateSyntaxError(`{{#each}} can only receive one positional parameter, the collection being iterated. Received ${args.positional.size} parameters`, args.positional.loc)); + } + let value = args.nth(0); + let key = args.get('key'); + if (value === null) { + return Err(generateSyntaxError(`{{#each}} requires an iterable value to be passed as its first positional parameter, did not receive any parameters`, args.loc)); + } + return Ok({ + value, + key + }); + }, + translate({ + node, + state + }, { + value, + key + }) { + let block = node.blocks.get('default'); + let inverse = node.blocks.get('else'); + let valueResult = VISIT_EXPRS.visit(value, state); + let keyResult = key ? VISIT_EXPRS.visit(key, state) : Ok(null); + let blockResult = VISIT_STMTS.NamedBlock(block, state); + let inverseResult = inverse ? VISIT_STMTS.NamedBlock(inverse, state) : Ok(null); + return Result.all(valueResult, keyResult, blockResult, inverseResult).mapOk(([value, key, block, inverse]) => new Each({ + loc: node.loc, + value, + key, + block, + inverse + })); + } + }).kw('let', { + assert(node) { + let { + args + } = node; + if (!args.named.isEmpty()) { + return Err(generateSyntaxError(`{{#let}} cannot receive named parameters, received ${args.named.entries.map(e => e.name.chars).join(', ')}`, args.named.loc)); + } + if (args.positional.size === 0) { + return Err(generateSyntaxError(`{{#let}} requires at least one value as its first positional parameter, did not receive any parameters`, args.positional.loc)); + } + if (node.blocks.get('else')) { + return Err(generateSyntaxError(`{{#let}} cannot receive an {{else}} block`, args.positional.loc)); + } + return Ok({ + positional: args.positional + }); + }, + translate({ + node, + state + }, { + positional + }) { + let block = node.blocks.get('default'); + let positionalResult = VISIT_EXPRS.Positional(positional, state); + let blockResult = VISIT_STMTS.NamedBlock(block, state); + return Result.all(positionalResult, blockResult).mapOk(([positional, block]) => new Let({ + loc: node.loc, + positional, + block + })); + } + }).kw('-with-dynamic-vars', { + assert(node) { + return Ok({ + named: node.args.named + }); + }, + translate({ + node, + state + }, { + named + }) { + let block = node.blocks.get('default'); + let namedResult = VISIT_EXPRS.NamedArguments(named, state); + let blockResult = VISIT_STMTS.NamedBlock(block, state); + return Result.all(namedResult, blockResult).mapOk(([named, block]) => new WithDynamicVars({ + loc: node.loc, + named, + block + })); + } + }).kw('component', { + assert: assertCurryKeyword(CurriedTypes.Component), + translate({ + node, + state + }, { + definition, + args + }) { + let definitionResult = VISIT_EXPRS.visit(definition, state); + let argsResult = VISIT_EXPRS.Args(args, state); + let blocksResult = VISIT_STMTS.NamedBlocks(node.blocks, state); + return Result.all(definitionResult, argsResult, blocksResult).mapOk(([definition, args, blocks]) => new InvokeComponent({ + loc: node.loc, + definition, + args, + blocks + })); + } + }); + const CALL_KEYWORDS = keywords('Call').kw('has-block', hasBlockKeyword('has-block')).kw('has-block-params', hasBlockKeyword('has-block-params')).kw('-get-dynamic-var', getDynamicVarKeyword).kw('log', logKeyword).kw('if', ifUnlessInlineKeyword('if')).kw('unless', ifUnlessInlineKeyword('unless')).kw('component', curryKeyword(CurriedTypes.Component)).kw('helper', curryKeyword(CurriedTypes.Helper)).kw('modifier', curryKeyword(CurriedTypes.Modifier)); + const MODIFIER_KEYWORDS = keywords('Modifier'); + + // There is a small whitelist of namespaced attributes specially + // enumerated in + // https://www.w3.org/TR/html/syntax.html#attributes-0 + // + // > When a foreign element has one of the namespaced attributes given by + // > the local name and namespace of the first and second cells of a row + // > from the following table, it must be written using the name given by + // > the third cell from the same row. + // + // In all other cases, colons are interpreted as a regular character + // with no special meaning: + // + // > No other namespaced attribute can be expressed in the HTML syntax. + + const XLINK = 'http://www.w3.org/1999/xlink'; + const XML = 'http://www.w3.org/XML/1998/namespace'; + const XMLNS = 'http://www.w3.org/2000/xmlns/'; + const WHITELIST = { + 'xlink:actuate': XLINK, + 'xlink:arcrole': XLINK, + 'xlink:href': XLINK, + 'xlink:role': XLINK, + 'xlink:show': XLINK, + 'xlink:title': XLINK, + 'xlink:type': XLINK, + 'xml:base': XML, + 'xml:lang': XML, + 'xml:space': XML, + xmlns: XMLNS, + 'xmlns:xlink': XMLNS + }; + function getAttrNamespace(attrName) { + return WHITELIST[attrName]; + } + const DEFLATE_TAG_TABLE = { + div: WellKnownTagNames.div, + span: WellKnownTagNames.span, + p: WellKnownTagNames.p, + a: WellKnownTagNames.a + }; + const INFLATE_TAG_TABLE = ['div', 'span', 'p', 'a']; + function deflateTagName(tagName) { + return DEFLATE_TAG_TABLE[tagName] ?? tagName; + } + function inflateTagName(tagName) { + return typeof tagName === 'string' ? tagName : INFLATE_TAG_TABLE[tagName]; + } + const DEFLATE_ATTR_TABLE = { + class: WellKnownAttrNames.class, + id: WellKnownAttrNames.id, + value: WellKnownAttrNames.value, + name: WellKnownAttrNames.name, + type: WellKnownAttrNames.type, + style: WellKnownAttrNames.style, + href: WellKnownAttrNames.href + }; + const INFLATE_ATTR_TABLE = ['class', 'id', 'value', 'name', 'type', 'style', 'href']; + function deflateAttrName(attrName) { + return DEFLATE_ATTR_TABLE[attrName] ?? attrName; + } + function inflateAttrName(attrName) { + return typeof attrName === 'string' ? attrName : INFLATE_ATTR_TABLE[attrName]; + } + class ClassifiedElement { + delegate; + constructor(element, delegate, state) { + this.element = element; + this.state = state; + this.delegate = delegate; + } + toStatement() { + return this.prepare().andThen(prepared => this.delegate.toStatement(this, prepared)); + } + attr(attr) { + let name = attr.name; + let rawValue = attr.value; + let namespace = getAttrNamespace(name.chars) || undefined; + if (api$1.isLiteral(rawValue, 'string')) { + return Ok(new StaticAttr({ + loc: attr.loc, + name, + value: rawValue.toSlice(), + namespace, + kind: { + component: this.delegate.dynamicFeatures + } + })); + } + return VISIT_EXPRS.visit(convertPathToCallIfKeyword(rawValue), this.state).mapOk(value => { + let isTrusting = attr.trusting; + return new DynamicAttr({ + loc: attr.loc, + name, + value: value, + namespace, + kind: { + trusting: isTrusting, + component: this.delegate.dynamicFeatures + } + }); + }); + } + modifier(modifier) { + let translated = MODIFIER_KEYWORDS.translate(modifier, this.state); + if (translated !== null) { + return translated; + } + let head = VISIT_EXPRS.visit(modifier.callee, this.state); + let args = VISIT_EXPRS.Args(modifier.args, this.state); + return Result.all(head, args).mapOk(([head, args]) => new Modifier({ + loc: modifier.loc, + callee: head, + args + })); + } + attrs() { + let attrs = new ResultArray(); + let args = new ResultArray(); + + // Unlike most attributes, the `type` attribute can change how + // subsequent attributes are interpreted by the browser. To address + // this, in simple cases, we special case the `type` attribute to be set + // last. For elements with splattributes, where attribute order affects + // precedence, this re-ordering happens at runtime instead. + // See https://github.com/glimmerjs/glimmer-vm/pull/726 + let typeAttr = null; + let simple = this.element.attrs.filter(attr => attr.type === 'SplatAttr').length === 0; + for (let attr of this.element.attrs) { + if (attr.type === 'SplatAttr') { + attrs.add(Ok(new SplatAttr({ + loc: attr.loc, + symbol: this.state.scope.allocateBlock('attrs') + }))); + } else if (attr.name.chars === 'type' && simple) { + typeAttr = attr; + } else { + attrs.add(this.attr(attr)); + } + } + for (let arg of this.element.componentArgs) { + args.add(this.delegate.arg(arg, this)); + } + if (typeAttr) { + attrs.add(this.attr(typeAttr)); + } + return Result.all(args.toArray(), attrs.toArray()).mapOk(([args, attrs]) => ({ + attrs, + args: new NamedArguments({ + loc: maybeLoc(args, api$2.SourceSpan.NON_EXISTENT), + entries: OptionalList(args) + }) + })); + } + prepare() { + let attrs = this.attrs(); + let modifiers = new ResultArray(this.element.modifiers.map(m => this.modifier(m))).toArray(); + return Result.all(attrs, modifiers).mapOk(([result, modifiers]) => { + let { + attrs, + args + } = result; + let elementParams = [...attrs, ...modifiers]; + let params = new ElementParameters({ + loc: maybeLoc(elementParams, api$2.SourceSpan.NON_EXISTENT), + body: OptionalList(elementParams) + }); + return { + args, + params + }; + }); + } + } + function hasDynamicFeatures({ + attrs, + modifiers + }) { + // ElementModifier needs the special ComponentOperations + if (modifiers.length > 0) { + return true; + } + + // Splattributes need the special ComponentOperations to merge into + return !!attrs.filter(attr => attr.type === 'SplatAttr')[0]; + } + class ClassifiedComponent { + dynamicFeatures = true; + constructor(tag, element) { + this.tag = tag; + this.element = element; + } + arg(attr, { + state + }) { + let name = attr.name; + return VISIT_EXPRS.visit(convertPathToCallIfKeyword(attr.value), state).mapOk(value => new NamedArgument({ + loc: attr.loc, + key: name, + value + })); + } + toStatement(component, { + args, + params + }) { + let { + element, + state + } = component; + return this.blocks(state).mapOk(blocks => new Component({ + loc: element.loc, + tag: this.tag, + params, + args, + blocks + })); + } + blocks(state) { + return VISIT_STMTS.NamedBlocks(this.element.blocks, state); + } + } + class ClassifiedSimpleElement { + constructor(tag, element, dynamicFeatures) { + this.tag = tag; + this.element = element; + this.dynamicFeatures = dynamicFeatures; + } + isComponent = false; + arg(attr) { + return Err(generateSyntaxError(`${attr.name.chars} is not a valid attribute name. @arguments are only allowed on components, but the tag for this element (\`${this.tag.chars}\`) is a regular, non-component HTML element.`, attr.loc)); + } + toStatement(classified, { + params + }) { + let { + state, + element + } = classified; + let body = VISIT_STMTS.visitList(this.element.body, state); + return body.mapOk(body => new SimpleElement({ + loc: element.loc, + tag: this.tag, + params, + body: body.toArray(), + dynamicFeatures: this.dynamicFeatures + })); + } + } + class NormalizationStatements { + visitList(nodes, state) { + return new ResultArray(nodes.map(e => VISIT_STMTS.visit(e, state))).toOptionalList().mapOk(list => list.filter(s => s !== null)); + } + visit(node, state) { + switch (node.type) { + case 'GlimmerComment': + return Ok(null); + case 'AppendContent': + return this.AppendContent(node, state); + case 'HtmlText': + return Ok(this.TextNode(node)); + case 'HtmlComment': + return Ok(this.HtmlComment(node)); + case 'InvokeBlock': + return this.InvokeBlock(node, state); + case 'InvokeComponent': + return this.Component(node, state); + case 'SimpleElement': + return this.SimpleElement(node, state); + } + } + InvokeBlock(node, state) { + let translated = BLOCK_KEYWORDS.translate(node, state); + if (translated !== null) { + return translated; + } + let head = VISIT_EXPRS.visit(node.callee, state); + let args = VISIT_EXPRS.Args(node.args, state); + return Result.all(head, args).andThen(([head, args]) => this.NamedBlocks(node.blocks, state).mapOk(blocks => new InvokeBlock({ + loc: node.loc, + head, + args, + blocks + }))); + } + NamedBlocks(blocks, state) { + let list = new ResultArray(blocks.blocks.map(b => this.NamedBlock(b, state))); + return list.toArray().mapOk(list => new NamedBlocks({ + loc: blocks.loc, + blocks: OptionalList(list) + })); + } + NamedBlock(named, state) { + let body = state.visitBlock(named.block); + return body.mapOk(body => { + return new NamedBlock({ + loc: named.loc, + name: named.name, + body: body.toArray(), + scope: named.block.scope + }); + }); + } + SimpleElement(element, state) { + return new ClassifiedElement(element, new ClassifiedSimpleElement(element.tag, element, hasDynamicFeatures(element)), state).toStatement(); + } + Component(component, state) { + return VISIT_EXPRS.visit(component.callee, state).andThen(callee => new ClassifiedElement(component, new ClassifiedComponent(callee, component), state).toStatement()); + } + AppendContent(append, state) { + let translated = APPEND_KEYWORDS.translate(append, state); + if (translated !== null) { + return translated; + } + let value = VISIT_EXPRS.visit(append.value, state); + return value.mapOk(value => { + if (append.trusting) { + return new AppendTrustedHTML({ + loc: append.loc, + html: value + }); + } else { + return new AppendTextNode({ + loc: append.loc, + text: value + }); + } + }); + } + TextNode(text) { + return new AppendTextNode({ + loc: text.loc, + text: new api$1.LiteralExpression({ + loc: text.loc, + value: text.chars + }) + }); + } + HtmlComment(comment) { + return new AppendComment({ + loc: comment.loc, + value: comment.text + }); + } + } + const VISIT_STMTS = new NormalizationStatements(); + + /** + * This is the mutable state for this compiler pass. + */ + class NormalizationState { + _currentScope; + _cursorCount = 0; + constructor(block, isStrict) { + this.isStrict = isStrict; + this._currentScope = block; + } + generateUniqueCursor() { + return `%cursor:${this._cursorCount++}%`; + } + get scope() { + return this._currentScope; + } + visitBlock(block) { + let oldBlock = this._currentScope; + this._currentScope = block.scope; + try { + return VISIT_STMTS.visitList(block.body, this); + } finally { + this._currentScope = oldBlock; + } + } + } + var ResolutionType = /*#__PURE__*/function (ResolutionType) { + ResolutionType["Value"] = "value"; + ResolutionType["Component"] = "component"; + ResolutionType["Helper"] = "helper"; + ResolutionType["Modifier"] = "modifier"; + ResolutionType["ComponentOrHelper"] = "component or helper"; + return ResolutionType; + }(ResolutionType || {}); + class StrictModeValidationPass { + // This is done at the end of all the keyword normalizations + // At this point any free variables that isn't a valid keyword + // in its context should be considered a syntax error. We + // probably had various opportunities to do this inline in the + // earlier passes, but this aims to produce a better syntax + // error as we don't always have the right loc-context to do + // so in the other spots. + static validate(template) { + return new this(template).validate(); + } + constructor(template) { + this.template = template; + } + validate() { + return this.Statements(this.template.body).mapOk(() => this.template); + } + Statements(statements) { + let result = Ok(null); + for (let statement of statements) { + result = result.andThen(() => this.Statement(statement)); + } + return result; + } + NamedBlocks({ + blocks + }) { + let result = Ok(null); + for (let block of blocks.toArray()) { + result = result.andThen(() => this.NamedBlock(block)); + } + return result; + } + NamedBlock(block) { + return this.Statements(block.body); + } + Statement(statement) { + switch (statement.type) { + case 'InElement': + return this.InElement(statement); + case 'Debugger': + return Ok(null); + case 'Yield': + return this.Yield(statement); + case 'AppendTrustedHTML': + return this.AppendTrustedHTML(statement); + case 'AppendTextNode': + return this.AppendTextNode(statement); + case 'Component': + return this.Component(statement); + case 'SimpleElement': + return this.SimpleElement(statement); + case 'InvokeBlock': + return this.InvokeBlock(statement); + case 'AppendComment': + return Ok(null); + case 'If': + return this.If(statement); + case 'Each': + return this.Each(statement); + case 'Let': + return this.Let(statement); + case 'WithDynamicVars': + return this.WithDynamicVars(statement); + case 'InvokeComponent': + return this.InvokeComponent(statement); + } + } + Expressions(expressions) { + let result = Ok(null); + for (let expression of expressions) { + result = result.andThen(() => this.Expression(expression)); + } + return result; + } + Expression(expression, span = expression, resolution) { + switch (expression.type) { + case 'Literal': + case 'Keyword': + case 'Missing': + case 'This': + case 'Arg': + case 'Local': + case 'HasBlock': + case 'HasBlockParams': + case 'GetDynamicVar': + return Ok(null); + case 'PathExpression': + return this.Expression(expression.head, span, resolution); + case 'Free': + return this.errorFor(expression.name, span, resolution); + case 'InterpolateExpression': + return this.InterpolateExpression(expression, span, resolution); + case 'CallExpression': + return this.CallExpression(expression, span, resolution ?? ResolutionType.Helper); + case 'Not': + return this.Expression(expression.value, span, resolution); + case 'IfInline': + return this.IfInline(expression); + case 'Curry': + return this.Curry(expression); + case 'Log': + return this.Log(expression); + } + } + Args(args) { + return this.Positional(args.positional).andThen(() => this.NamedArguments(args.named)); + } + Positional(positional, span) { + let result = Ok(null); + let expressions = positional.list.toArray(); + + // For cases like {{yield foo}}, when there is only a single argument, it + // makes for a slightly better error to report that entire span. However, + // when there are more than one, we need to be specific. + if (expressions.length === 1) { + result = this.Expression(expressions[0], span); + } else { + result = this.Expressions(expressions); + } + return result; + } + NamedArguments({ + entries + }) { + let result = Ok(null); + for (let arg of entries.toArray()) { + result = result.andThen(() => this.NamedArgument(arg)); + } + return result; + } + NamedArgument(arg) { + if (arg.value.type === 'CallExpression') { + return this.Expression(arg.value, arg, ResolutionType.Helper); + } else { + return this.Expression(arg.value, arg); + } + } + ElementParameters({ + body + }) { + let result = Ok(null); + for (let param of body.toArray()) { + result = result.andThen(() => this.ElementParameter(param)); + } + return result; + } + ElementParameter(param) { + switch (param.type) { + case 'StaticAttr': + return Ok(null); + case 'DynamicAttr': + return this.DynamicAttr(param); + case 'Modifier': + return this.Modifier(param); + case 'SplatAttr': + return Ok(null); + } + } + DynamicAttr(attr) { + if (attr.value.type === 'CallExpression') { + return this.Expression(attr.value, attr, ResolutionType.Helper); + } else { + return this.Expression(attr.value, attr); + } + } + Modifier(modifier) { + return this.Expression(modifier.callee, modifier, ResolutionType.Modifier).andThen(() => this.Args(modifier.args)); + } + InElement(inElement) { + return this.Expression(inElement.destination) + // Unfortunately we lost the `insertBefore=` part of the span + .andThen(() => this.Expression(inElement.insertBefore)).andThen(() => this.NamedBlock(inElement.block)); + } + Yield(statement) { + return this.Positional(statement.positional, statement); + } + AppendTrustedHTML(statement) { + return this.Expression(statement.html, statement); + } + AppendTextNode(statement) { + if (statement.text.type === 'CallExpression') { + return this.Expression(statement.text, statement, ResolutionType.ComponentOrHelper); + } else { + return this.Expression(statement.text, statement); + } + } + Component(statement) { + return this.Expression(statement.tag, statement, ResolutionType.Component).andThen(() => this.ElementParameters(statement.params)).andThen(() => this.NamedArguments(statement.args)).andThen(() => this.NamedBlocks(statement.blocks)); + } + SimpleElement(statement) { + return this.ElementParameters(statement.params).andThen(() => this.Statements(statement.body)); + } + InvokeBlock(statement) { + return this.Expression(statement.head, statement.head, ResolutionType.Component).andThen(() => this.Args(statement.args)).andThen(() => this.NamedBlocks(statement.blocks)); + } + If(statement) { + return this.Expression(statement.condition, statement).andThen(() => this.NamedBlock(statement.block)).andThen(() => { + if (statement.inverse) { + return this.NamedBlock(statement.inverse); + } else { + return Ok(null); + } + }); + } + Each(statement) { + return this.Expression(statement.value, statement).andThen(() => { + if (statement.key) { + return this.Expression(statement.key, statement); + } else { + return Ok(null); + } + }).andThen(() => this.NamedBlock(statement.block)).andThen(() => { + if (statement.inverse) { + return this.NamedBlock(statement.inverse); + } else { + return Ok(null); + } + }); + } + Let(statement) { + return this.Positional(statement.positional).andThen(() => this.NamedBlock(statement.block)); + } + WithDynamicVars(statement) { + return this.NamedArguments(statement.named).andThen(() => this.NamedBlock(statement.block)); + } + InvokeComponent(statement) { + return this.Expression(statement.definition, statement, ResolutionType.Component).andThen(() => this.Args(statement.args)).andThen(() => { + if (statement.blocks) { + return this.NamedBlocks(statement.blocks); + } else { + return Ok(null); + } + }); + } + InterpolateExpression(expression, span, resolution) { + let expressions = expression.parts.toArray(); + if (expressions.length === 1) { + return this.Expression(expressions[0], span, resolution); + } else { + return this.Expressions(expressions); + } + } + CallExpression(expression, span, resolution) { + return this.Expression(expression.callee, span, resolution).andThen(() => this.Args(expression.args)); + } + IfInline(expression) { + return this.Expression(expression.condition).andThen(() => this.Expression(expression.truthy)).andThen(() => { + if (expression.falsy) { + return this.Expression(expression.falsy); + } else { + return Ok(null); + } + }); + } + Curry(expression) { + let resolution; + if (expression.curriedType === CurriedTypes.Component) { + resolution = ResolutionType.Component; + } else if (expression.curriedType === CurriedTypes.Helper) { + resolution = ResolutionType.Helper; + } else { + resolution = ResolutionType.Modifier; + } + return this.Expression(expression.definition, expression, resolution).andThen(() => this.Args(expression.args)); + } + Log(expression) { + return this.Positional(expression.positional, expression); + } + errorFor(name, span, type = ResolutionType.Value) { + return Err(generateSyntaxError(`Attempted to resolve a ${type} in a strict mode template, but that value was not in scope: ${name}`, loc(span))); + } + } + + /** + * Normalize the AST from @glimmer/syntax into the HIR. The HIR has special + * instructions for keywords like `{{yield}}`, `(has-block)` and + * `{{#in-element}}`. + * + * Most importantly, it also classifies HTML element syntax into: + * + * 1. simple HTML element (with optional splattributes) + * 2. component invocation + * + * Because the @glimmer/syntax AST gives us a string for an element's tag, + * this pass also normalizes that string into an expression. + * + * ``` + * // normalized into a path expression whose head is `this` and tail is + * // `["x"]` + * + * + * {{#let expr as |t|}} + * // `"t"` is normalized into a variable lookup. + * + * + * // normalized into a path expression whose head is the variable lookup + * // `t` and tail is `["input"]`. + * + * {{/let}} + * + * // normalized into a free variable lookup for `SomeComponent` (with the + * // context `ComponentHead`). + * + * + * // normalized into a path expression whose head is the free variable + * // `notInScope` (with the context `Expression`), and whose tail is + * // `["SomeComponent"]`. In resolver mode, this path will be rejected later, + * // since it cannot serve as an input to the resolver. + * + * ``` + */ + function normalize(source, root, isStrict) { + // create a new context for the normalization pass + let state = new NormalizationState(root.table, isStrict); + let body = VISIT_STMTS.visitList(root.body, state); + let template = body.mapOk(body => new Template({ + loc: root.loc, + scope: root.table, + body: body.toArray() + })); + if (isStrict) { + template = template.andThen(template => StrictModeValidationPass.validate(template)); + } + return template; + } + class WireFormatDebugger { + upvars; + symbols; + constructor([_statements, symbols, _hasEval, upvars]) { + this.upvars = upvars; + this.symbols = symbols; + } + format(program) { + let out = []; + for (let statement of program[0]) { + out.push(this.formatOpcode(statement)); + } + return out; + } + formatOpcode(opcode) { + if (Array.isArray(opcode)) { + switch (opcode[0]) { + case opcodes.Append: + return ['append', this.formatOpcode(opcode[1])]; + case opcodes.TrustingAppend: + return ['trusting-append', this.formatOpcode(opcode[1])]; + case opcodes.Block: + return ['block', this.formatOpcode(opcode[1]), this.formatParams(opcode[2]), this.formatHash(opcode[3]), this.formatBlocks(opcode[4])]; + case opcodes.InElement: + return ['in-element', opcode[1], this.formatOpcode(opcode[2]), opcode[3] ? this.formatOpcode(opcode[3]) : undefined]; + case opcodes.OpenElement: + return ['open-element', inflateTagName(opcode[1])]; + case opcodes.OpenElementWithSplat: + return ['open-element-with-splat', inflateTagName(opcode[1])]; + case opcodes.CloseElement: + return ['close-element']; + case opcodes.FlushElement: + return ['flush-element']; + case opcodes.StaticAttr: + return ['static-attr', inflateAttrName(opcode[1]), opcode[2], opcode[3]]; + case opcodes.StaticComponentAttr: + return ['static-component-attr', inflateAttrName(opcode[1]), opcode[2], opcode[3]]; + case opcodes.DynamicAttr: + return ['dynamic-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; + case opcodes.ComponentAttr: + return ['component-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; + case opcodes.AttrSplat: + return ['attr-splat']; + case opcodes.Yield: + return ['yield', opcode[1], this.formatParams(opcode[2])]; + case opcodes.DynamicArg: + return ['dynamic-arg', opcode[1], this.formatOpcode(opcode[2])]; + case opcodes.StaticArg: + return ['static-arg', opcode[1], this.formatOpcode(opcode[2])]; + case opcodes.TrustingDynamicAttr: + return ['trusting-dynamic-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; + case opcodes.TrustingComponentAttr: + return ['trusting-component-attr', inflateAttrName(opcode[1]), this.formatOpcode(opcode[2]), opcode[3]]; + case opcodes.Debugger: + return ['debugger', opcode[1]]; + case opcodes.Comment: + return ['comment', opcode[1]]; + case opcodes.Modifier: + return ['modifier', this.formatOpcode(opcode[1]), this.formatParams(opcode[2]), this.formatHash(opcode[3])]; + case opcodes.Component: + return ['component', this.formatOpcode(opcode[1]), this.formatElementParams(opcode[2]), this.formatHash(opcode[3]), this.formatBlocks(opcode[4])]; + case opcodes.HasBlock: + return ['has-block', this.formatOpcode(opcode[1])]; + case opcodes.HasBlockParams: + return ['has-block-params', this.formatOpcode(opcode[1])]; + case opcodes.Curry: + return ['curry', this.formatOpcode(opcode[1]), this.formatCurryType(opcode[2]), this.formatParams(opcode[3]), this.formatHash(opcode[4])]; + case opcodes.Undefined: + return ['undefined']; + case opcodes.Call: + return ['call', this.formatOpcode(opcode[1]), this.formatParams(opcode[2]), this.formatHash(opcode[3])]; + case opcodes.Concat: + return ['concat', this.formatParams(opcode[1])]; + case opcodes.GetStrictKeyword: + return ['get-strict-free', this.upvars[opcode[1]]]; + case opcodes.GetFreeAsComponentOrHelperHead: + return ['GetFreeAsComponentOrHelperHead', this.upvars[opcode[1]], opcode[2]]; + case opcodes.GetFreeAsHelperHead: + return ['GetFreeAsHelperHead', this.upvars[opcode[1]], opcode[2]]; + case opcodes.GetFreeAsComponentHead: + return ['GetFreeAsComponentHead', this.upvars[opcode[1]], opcode[2]]; + case opcodes.GetFreeAsModifierHead: + return ['GetFreeAsModifierHead', this.upvars[opcode[1]], opcode[2]]; + case opcodes.GetSymbol: + { + if (opcode[1] === 0) { + return ['get-symbol', 'this', opcode[2]]; + } else { + return ['get-symbol', this.symbols[opcode[1] - 1], opcode[2]]; + } + } + case opcodes.GetLexicalSymbol: + { + return ['get-template-symbol', opcode[1], opcode[2]]; + } + case opcodes.If: + return ['if', this.formatOpcode(opcode[1]), this.formatBlock(opcode[2]), opcode[3] ? this.formatBlock(opcode[3]) : null]; + case opcodes.IfInline: + return ['if-inline']; + case opcodes.Not: + return ['not']; + case opcodes.Each: + return ['each', this.formatOpcode(opcode[1]), opcode[2] ? this.formatOpcode(opcode[2]) : null, this.formatBlock(opcode[3]), opcode[4] ? this.formatBlock(opcode[4]) : null]; + case opcodes.Let: + return ['let', this.formatParams(opcode[1]), this.formatBlock(opcode[2])]; + case opcodes.Log: + return ['log', this.formatParams(opcode[1])]; + case opcodes.WithDynamicVars: + return ['-with-dynamic-vars', this.formatHash(opcode[1]), this.formatBlock(opcode[2])]; + case opcodes.GetDynamicVar: + return ['-get-dynamic-vars', this.formatOpcode(opcode[1])]; + case opcodes.InvokeComponent: + return ['component', this.formatOpcode(opcode[1]), this.formatParams(opcode[2]), this.formatHash(opcode[3]), this.formatBlocks(opcode[4])]; + } + } else { + return opcode; + } + } + formatCurryType(value) { + switch (value) { + case CurriedTypes.Component: + return 'component'; + case CurriedTypes.Helper: + return 'helper'; + case CurriedTypes.Modifier: + return 'modifier'; + default: + throw exhausted(value); + } + } + formatElementParams(opcodes) { + if (opcodes === null) return null; + return opcodes.map(o => this.formatOpcode(o)); + } + formatParams(opcodes) { + if (opcodes === null) return null; + return opcodes.map(o => this.formatOpcode(o)); + } + formatHash(hash) { + if (hash === null) return null; + return hash[0].reduce((accum, key, index) => { + accum[key] = this.formatOpcode(hash[1][index]); + return accum; + }, dict()); + } + formatBlocks(blocks) { + if (blocks === null) return null; + return blocks[0].reduce((accum, key, index) => { + accum[key] = this.formatBlock(blocks[1][index]); + return accum; + }, dict()); + } + formatBlock(block) { + return { + statements: block[0].map(s => this.formatOpcode(s)), + parameters: block[1] + }; + } + } + class ExpressionEncoder { + expr(expr) { + switch (expr.type) { + case 'Missing': + return undefined; + case 'Literal': + return this.Literal(expr); + case 'Keyword': + return this.Keyword(expr); + case 'CallExpression': + return this.CallExpression(expr); + case 'PathExpression': + return this.PathExpression(expr); + case 'Arg': + return [opcodes.GetSymbol, expr.symbol]; + case 'Local': + return this.Local(expr); + case 'This': + return [opcodes.GetSymbol, 0]; + case 'Free': + return [expr.resolution.resolution(), expr.symbol]; + case 'HasBlock': + return this.HasBlock(expr); + case 'HasBlockParams': + return this.HasBlockParams(expr); + case 'Curry': + return this.Curry(expr); + case 'Not': + return this.Not(expr); + case 'IfInline': + return this.IfInline(expr); + case 'InterpolateExpression': + return this.InterpolateExpression(expr); + case 'GetDynamicVar': + return this.GetDynamicVar(expr); + case 'Log': + return this.Log(expr); + } + } + Literal({ + value + }) { + if (value === undefined) { + return [opcodes.Undefined]; + } else { + return value; + } + } + Missing() { + return undefined; + } + HasBlock({ + symbol + }) { + return [opcodes.HasBlock, [opcodes.GetSymbol, symbol]]; + } + HasBlockParams({ + symbol + }) { + return [opcodes.HasBlockParams, [opcodes.GetSymbol, symbol]]; + } + Curry({ + definition, + curriedType, + args + }) { + return [opcodes.Curry, EXPR.expr(definition), curriedType, EXPR.Positional(args.positional), EXPR.NamedArguments(args.named)]; + } + Local({ + isTemplateLocal, + symbol + }) { + return [isTemplateLocal ? opcodes.GetLexicalSymbol : opcodes.GetSymbol, symbol]; + } + Keyword({ + symbol + }) { + return [opcodes.GetStrictKeyword, symbol]; + } + PathExpression({ + head, + tail + }) { + let getOp = EXPR.expr(head); + debugAssert(getOp[0] !== opcodes.GetStrictKeyword, '[BUG] keyword in a PathExpression'); + return [...getOp, EXPR.Tail(tail)]; + } + InterpolateExpression({ + parts + }) { + return [opcodes.Concat, parts.map(e => EXPR.expr(e)).toArray()]; + } + CallExpression({ + callee, + args + }) { + return [opcodes.Call, EXPR.expr(callee), ...EXPR.Args(args)]; + } + Tail({ + members + }) { + return mapPresentArray(members, member => member.chars); + } + Args({ + positional, + named + }) { + return [this.Positional(positional), this.NamedArguments(named)]; + } + Positional({ + list + }) { + return list.map(l => EXPR.expr(l)).toPresentArray(); + } + NamedArgument({ + key, + value + }) { + return [key.chars, EXPR.expr(value)]; + } + NamedArguments({ + entries: pairs + }) { + let list = pairs.toArray(); + if (isPresentArray(list)) { + let names = []; + let values = []; + for (let pair of list) { + let [name, value] = EXPR.NamedArgument(pair); + names.push(name); + values.push(value); + } + assertPresentArray(names); + assertPresentArray(values); + return [names, values]; + } else { + return null; + } + } + Not({ + value + }) { + return [opcodes.Not, EXPR.expr(value)]; + } + IfInline({ + condition, + truthy, + falsy + }) { + let expr = [opcodes.IfInline, EXPR.expr(condition), EXPR.expr(truthy)]; + if (falsy) { + expr.push(EXPR.expr(falsy)); + } + return expr; + } + GetDynamicVar({ + name + }) { + return [opcodes.GetDynamicVar, EXPR.expr(name)]; + } + Log({ + positional + }) { + return [opcodes.Log, this.Positional(positional)]; + } + } + const EXPR = new ExpressionEncoder(); + class WireStatements { + constructor(statements) { + this.statements = statements; + } + toArray() { + return this.statements; + } + } + class ContentEncoder { + list(statements) { + let out = []; + for (let statement of statements) { + let result = CONTENT.content(statement); + if (result && result instanceof WireStatements) { + out.push(...result.toArray()); + } else { + out.push(result); + } + } + return out; + } + content(stmt) { + return this.visitContent(stmt); + } + visitContent(stmt) { + switch (stmt.type) { + case 'Debugger': + return [opcodes.Debugger, stmt.scope.getDebugInfo()]; + case 'AppendComment': + return this.AppendComment(stmt); + case 'AppendTextNode': + return this.AppendTextNode(stmt); + case 'AppendTrustedHTML': + return this.AppendTrustedHTML(stmt); + case 'Yield': + return this.Yield(stmt); + case 'Component': + return this.Component(stmt); + case 'SimpleElement': + return this.SimpleElement(stmt); + case 'InElement': + return this.InElement(stmt); + case 'InvokeBlock': + return this.InvokeBlock(stmt); + case 'If': + return this.If(stmt); + case 'Each': + return this.Each(stmt); + case 'Let': + return this.Let(stmt); + case 'WithDynamicVars': + return this.WithDynamicVars(stmt); + case 'InvokeComponent': + return this.InvokeComponent(stmt); + default: + return exhausted(stmt); + } + } + Yield({ + to, + positional + }) { + return [opcodes.Yield, to, EXPR.Positional(positional)]; + } + InElement({ + guid, + insertBefore, + destination, + block + }) { + let wireBlock = CONTENT.NamedBlock(block)[1]; + // let guid = args.guid; + let wireDestination = EXPR.expr(destination); + let wireInsertBefore = EXPR.expr(insertBefore); + if (wireInsertBefore === undefined) { + return [opcodes.InElement, wireBlock, guid, wireDestination]; + } else { + return [opcodes.InElement, wireBlock, guid, wireDestination, wireInsertBefore]; + } + } + InvokeBlock({ + head, + args, + blocks + }) { + return [opcodes.Block, EXPR.expr(head), ...EXPR.Args(args), CONTENT.NamedBlocks(blocks)]; + } + AppendTrustedHTML({ + html + }) { + return [opcodes.TrustingAppend, EXPR.expr(html)]; + } + AppendTextNode({ + text + }) { + return [opcodes.Append, EXPR.expr(text)]; + } + AppendComment({ + value + }) { + return [opcodes.Comment, value.chars]; + } + SimpleElement({ + tag, + params, + body, + dynamicFeatures + }) { + let op = dynamicFeatures ? opcodes.OpenElementWithSplat : opcodes.OpenElement; + return new WireStatements([[op, deflateTagName(tag.chars)], ...CONTENT.ElementParameters(params).toArray(), [opcodes.FlushElement], ...CONTENT.list(body), [opcodes.CloseElement]]); + } + Component({ + tag, + params, + args, + blocks + }) { + let wireTag = EXPR.expr(tag); + let wirePositional = CONTENT.ElementParameters(params); + let wireNamed = EXPR.NamedArguments(args); + let wireNamedBlocks = CONTENT.NamedBlocks(blocks); + return [opcodes.Component, wireTag, wirePositional.toPresentArray(), wireNamed, wireNamedBlocks]; + } + ElementParameters({ + body + }) { + return body.map(p => CONTENT.ElementParameter(p)); + } + ElementParameter(param) { + switch (param.type) { + case 'SplatAttr': + return [opcodes.AttrSplat, param.symbol]; + case 'DynamicAttr': + return [dynamicAttrOp(param.kind), ...dynamicAttr(param)]; + case 'StaticAttr': + return [staticAttrOp(param.kind), ...staticAttr(param)]; + case 'Modifier': + return [opcodes.Modifier, EXPR.expr(param.callee), ...EXPR.Args(param.args)]; + } + } + NamedBlocks({ + blocks + }) { + let names = []; + let serializedBlocks = []; + for (let block of blocks.toArray()) { + let [name, serializedBlock] = CONTENT.NamedBlock(block); + names.push(name); + serializedBlocks.push(serializedBlock); + } + return names.length > 0 ? [names, serializedBlocks] : null; + } + NamedBlock({ + name, + body, + scope + }) { + let nameChars = name.chars; + if (nameChars === 'inverse') { + nameChars = 'else'; + } + return [nameChars, [CONTENT.list(body), scope.slots]]; + } + If({ + condition, + block, + inverse + }) { + return [opcodes.If, EXPR.expr(condition), CONTENT.NamedBlock(block)[1], inverse ? CONTENT.NamedBlock(inverse)[1] : null]; + } + Each({ + value, + key, + block, + inverse + }) { + return [opcodes.Each, EXPR.expr(value), key ? EXPR.expr(key) : null, CONTENT.NamedBlock(block)[1], inverse ? CONTENT.NamedBlock(inverse)[1] : null]; + } + Let({ + positional, + block + }) { + return [opcodes.Let, EXPR.Positional(positional), CONTENT.NamedBlock(block)[1]]; + } + WithDynamicVars({ + named, + block + }) { + return [opcodes.WithDynamicVars, EXPR.NamedArguments(named), CONTENT.NamedBlock(block)[1]]; + } + InvokeComponent({ + definition, + args, + blocks + }) { + return [opcodes.InvokeComponent, EXPR.expr(definition), EXPR.Positional(args.positional), EXPR.NamedArguments(args.named), blocks ? CONTENT.NamedBlocks(blocks) : null]; + } + } + const CONTENT = new ContentEncoder(); + function staticAttr({ + name, + value, + namespace + }) { + let out = [deflateAttrName(name.chars), value.chars]; + if (namespace) { + out.push(namespace); + } + return out; + } + function dynamicAttr({ + name, + value, + namespace + }) { + let out = [deflateAttrName(name.chars), EXPR.expr(value)]; + if (namespace) { + out.push(namespace); + } + return out; + } + function staticAttrOp(kind) { + if (kind.component) { + return opcodes.StaticComponentAttr; + } else { + return opcodes.StaticAttr; + } + } + function dynamicAttrOp(kind) { + if (kind.component) { + return kind.trusting ? opcodes.TrustingComponentAttr : opcodes.ComponentAttr; + } else { + return kind.trusting ? opcodes.TrustingDynamicAttr : opcodes.DynamicAttr; + } + } + function visit(template) { + let statements = CONTENT.list(template.body); + let scope = template.scope; + let block = [statements, scope.symbols, scope.hasEval, scope.upvars]; + return block; + } + const defaultId = (() => { + const req = typeof module === 'object' && typeof module.require === 'function' ? module.require : globalThis.require; + if (req) { + try { + const crypto = req('crypto'); + const idFn = src => { + const hash = crypto.createHash('sha1'); + hash.update(src, 'utf8'); + // trim to 6 bytes of data (2^48 - 1) + return hash.digest('base64').substring(0, 8); + }; + idFn('test'); + return idFn; + } catch { + // do nothing + } + } + return function idFn() { + return null; + }; + })(); + const defaultOptions = { + id: defaultId + }; + + /* + * Compile a string into a template javascript string. + * + * Example usage: + * import { precompile } from '@glimmer/compiler'; + * import { templateFactory } from 'glimmer-runtime'; + * let templateJs = precompile("Howdy {{name}}"); + * let factory = templateFactory(new Function("return " + templateJs)()); + * let template = factory.create(env); + * + * @method precompile + * @param {string} string a Glimmer template string + * @return {string} a template javascript string + */ + function precompileJSON(string, options = defaultOptions) { + const source = new api$2.Source(string ?? '', options.meta?.moduleName); + const [ast, locals] = normalize$1(source, { + lexicalScope: () => false, + ...options + }); + const block = normalize(source, ast, options.strictMode ?? false).mapOk(pass2In => { + return visit(pass2In); + }); + if (block.isOk) { + return [block.value, locals]; + } else { + throw block.reason; + } + } + + // UUID used as a unique placeholder for placing a snippet of JS code into + // the otherwise JSON stringified value below. + const SCOPE_PLACEHOLDER = '796d24e6-2450-4fb0-8cdf-b65638b5ef70'; + + /* + * Compile a string into a template javascript string. + * + * Example usage: + * import { precompile } from '@glimmer/compiler'; + * import { templateFactory } from 'glimmer-runtime'; + * let templateJs = precompile("Howdy {{name}}"); + * let factory = templateFactory(new Function("return " + templateJs)()); + * let template = factory.create(env); + * + * @method precompile + * @param {string} string a Glimmer template string + * @return {string} a template javascript string + */ + function precompile$1(source, options = defaultOptions) { + const [block, usedLocals] = precompileJSON(source, options); + const moduleName = options.meta?.moduleName; + const idFn = options.id || defaultId; + const blockJSON = JSON.stringify(block); + const templateJSONObject = { + id: idFn(JSON.stringify(options.meta) + blockJSON), + block: blockJSON, + moduleName: moduleName ?? '(unknown template module)', + // lying to the type checker here because we're going to + // replace it just below, after stringification + scope: SCOPE_PLACEHOLDER, + isStrictMode: options.strictMode ?? false + }; + if (usedLocals.length === 0) { + delete templateJSONObject.scope; + } + + // JSON is javascript + let stringified = JSON.stringify(templateJSONObject); + if (usedLocals.length > 0) { + const scopeFn = `()=>[${usedLocals.join(',')}]`; + stringified = stringified.replace(`"${SCOPE_PLACEHOLDER}"`, scopeFn); + } + return stringified; + } + + const glimmerCompiler = /*#__PURE__*/Object.defineProperty({ + __proto__: null, + Builder, + NEWLINE, + ProgramSymbols, + WireFormatDebugger, + buildStatement, + buildStatements, + c, + defaultId, + precompile: precompile$1, + precompileJSON, + s, + unicode + }, Symbol.toStringTag, { value: 'Module' }); + + const DEBUG = false; + const CI = false; + + const glimmerEnv = /*#__PURE__*/Object.defineProperty({ + __proto__: null, + CI, + DEBUG + }, Symbol.toStringTag, { value: 'Module' }); + + // this file gets replaced with the real value during the build + const version = '5.10.0-alpha.1'; + + const emberVersion = /*#__PURE__*/Object.defineProperty({ + __proto__: null, + default: version + }, Symbol.toStringTag, { value: 'Module' }); + + function calculateLocationDisplay(moduleName, loc) { + let moduleInfo = ''; + if (moduleName) { + moduleInfo += `'${moduleName}' `; + } + if (loc) { + let { + column, + line + } = loc.start || { + line: undefined, + column: undefined + }; + if (line !== undefined && column !== undefined) { + if (moduleName) { + // only prepend @ if the moduleName was present + moduleInfo += '@ '; + } + moduleInfo += `L${line}:C${column}`; + } + } + if (moduleInfo) { + moduleInfo = `(${moduleInfo}) `; + } + return moduleInfo; + } + + const emberTemplateCompilerLibSystemCalculateLocationDisplay = /*#__PURE__*/Object.defineProperty({ + __proto__: null, + default: calculateLocationDisplay + }, Symbol.toStringTag, { value: 'Module' }); + + /** + @module ember + */ + + /** + A Glimmer2 AST transformation that asserts against + + ```handlebars + {{attrs.foo.bar}} + ``` + + ...as well as `{{#if attrs.foo}}`, `{{deeply (nested attrs.foobar.baz)}}`. + + @private + @class AssertAgainstAttrs + */ + + function assertAgainstAttrs(env) { + let { + builders: b + } = env.syntax; + let moduleName = env.meta?.moduleName; + let stack = [[]]; + function updateBlockParamsStack(blockParams) { + let parent = stack[stack.length - 1]; + (!(parent) && assert('has parent', parent)); + stack.push(parent.concat(blockParams)); + } + return { + name: 'assert-against-attrs', + visitor: { + Template: { + enter(node) { + updateBlockParamsStack(node.blockParams); + }, + exit() { + stack.pop(); + } + }, + Block: { + enter(node) { + updateBlockParamsStack(node.blockParams); + }, + exit() { + stack.pop(); + } + }, + ElementNode: { + enter(node) { + updateBlockParamsStack(node.blockParams); + }, + exit() { + stack.pop(); + } + }, + PathExpression(node) { + if (isAttrs(node, stack[stack.length - 1])) { + (assert(`Using {{attrs}} to reference named arguments is not supported. {{${node.original}}} should be updated to {{@${node.original.slice(6)}}}. ${calculateLocationDisplay(moduleName, node.loc)}`)); + } else if (isThisDotAttrs(node)) { + // When removing this, ensure `{{this.attrs.foo}}` is left as-is, without triggering + // any assertions/deprecations. It's perfectly legal to reference `{{this.attrs.foo}}` + // in the template since it is a real property on the backing class – it will give you + // a `MutableCell` wrapper object, but maybe that's what you want. And in any case, + // there is no compelling to special case that property access. + (deprecate(`Using {{this.attrs}} to reference named arguments has been deprecated. {{${node.original}}} should be updated to {{@${node.original.slice(11)}}}. ${calculateLocationDisplay(moduleName, node.loc)}`, false, { + id: 'attrs-arg-access', + url: 'https://deprecations.emberjs.com/v3.x/#toc_attrs-arg-access', + until: '6.0.0', + for: 'ember-source', + since: { + available: '3.26.0', + enabled: '3.26.0' + } + })); + return b.path(`@${node.original.slice(11)}`, node.loc); + } + } + } + }; + } + function isAttrs(node, symbols) { + return node.head.type === 'VarHead' && node.head.name === 'attrs' && symbols.indexOf(node.head.name) === -1; + } + function isThisDotAttrs(node) { + return node.head.type === 'ThisHead' && node.tail[0] === 'attrs'; + } + + const emberTemplateCompilerLibPluginsAssertAgainstAttrs = /*#__PURE__*/Object.defineProperty({ + __proto__: null, + default: assertAgainstAttrs + }, Symbol.toStringTag, { value: 'Module' }); + + /** + @module ember + */ + + /** + Prevents usage of named outlets, a legacy concept in Ember removed in 4.0. + + @private + @class AssertAgainstNamedOutlets + */ + function assertAgainstNamedOutlets(env) { + let moduleName = env.meta?.moduleName; + return { + name: 'assert-against-named-outlets', + visitor: { + MustacheStatement(node) { + if (node.path.type === 'PathExpression' && node.path.original === 'outlet' && node.params[0]) { + let sourceInformation = calculateLocationDisplay(moduleName, node.loc); + (assert(`Named outlets were removed in Ember 4.0. See https://deprecations.emberjs.com/v3.x#toc_route-render-template for guidance on alternative APIs for named outlet use cases. ${sourceInformation}`)); + } + } + } + }; + } + + const emberTemplateCompilerLibPluginsAssertAgainstNamedOutlets = /*#__PURE__*/Object.defineProperty({ + __proto__: null, + default: assertAgainstNamedOutlets + }, Symbol.toStringTag, { value: 'Module' }); + + function isPath(node) { + return node.type === 'PathExpression'; + } + function isSubExpression(node) { + return node.type === 'SubExpression'; + } + function isStringLiteral(node) { + return node.type === 'StringLiteral'; + } + function getLocalName(node) { + if (typeof node === 'string') { + return node; + } else { + return node.original; + } + } + function trackLocals() { + let locals = new Map(); + let node = { + enter(node) { + let params = 'params' in node ? node.params : node.blockParams; + for (let param of params) { + let name = getLocalName(param); + let value = locals.get(param) || 0; + locals.set(name, value + 1); + } + }, + exit(node) { + let params = 'params' in node ? node.params : node.blockParams; + for (let param of params) { + let name = getLocalName(param); + let value = locals.get(name) - 1; + if (value === 0) { + locals.delete(name); + } else { + locals.set(name, value); + } + } + } + }; + return { + hasLocal: key => locals.has(key), + node + }; + } + + const emberTemplateCompilerLibPluginsUtils = /*#__PURE__*/Object.defineProperty({ + __proto__: null, + isPath, + isStringLiteral, + isSubExpression, + trackLocals + }, Symbol.toStringTag, { value: 'Module' }); + + function errorOnInputWithContent(env) { + let moduleName = env.meta?.moduleName; + return { + name: 'assert-input-helper-without-block', + visitor: { + BlockStatement(node) { + if (isPath(node.path) && node.path.original === 'input') { + (assert(assertMessage$1(moduleName, node))); + } + } + } + }; + } + function assertMessage$1(moduleName, node) { + let sourceInformation = calculateLocationDisplay(moduleName, node.loc); + return `The {{input}} helper cannot be used in block form. ${sourceInformation}`; + } + + const emberTemplateCompilerLibPluginsAssertInputHelperWithoutBlock = /*#__PURE__*/Object.defineProperty({ + __proto__: null, + default: errorOnInputWithContent + }, Symbol.toStringTag, { value: 'Module' }); + + function assertReservedNamedArguments(env) { + let moduleName = env.meta?.moduleName; + return { + name: 'assert-reserved-named-arguments', + visitor: { + // In general, we don't assert on the invocation side to avoid creating migration + // hazards (e.g. using angle bracket to invoke a classic component that uses + // `this.someReservedName`. However, we want to avoid leaking special internal + // things, such as `__ARGS__`, so those would need to be asserted on both sides. + + AttrNode({ + name, + loc + }) { + if (name === '@__ARGS__') { + (assert(`${assertMessage(name)} ${calculateLocationDisplay(moduleName, loc)}`)); + } + }, + HashPair({ + key, + loc + }) { + if (key === '__ARGS__') { + (assert(`${assertMessage(key)} ${calculateLocationDisplay(moduleName, loc)}`)); + } + }, + PathExpression({ + original, + loc + }) { + if (isReserved(original)) { + (assert(`${assertMessage(original)} ${calculateLocationDisplay(moduleName, loc)}`)); + } + } + } + }; + } + const RESERVED = ['@arguments', '@args', '@block', '@else']; + function isReserved(name) { + return RESERVED.indexOf(name) !== -1 || Boolean(name.match(/^@[^a-z]/)); + } + function assertMessage(name) { + return `'${name}' is reserved.`; + } + + const emberTemplateCompilerLibPluginsAssertReservedNamedArguments = /*#__PURE__*/Object.defineProperty({ + __proto__: null, + default: assertReservedNamedArguments + }, Symbol.toStringTag, { value: 'Module' }); + + /** + @module ember + */ + + /** + A Glimmer2 AST transformation that replaces all instances of + + ```handlebars +