unpoly
Version:
Progressive enhancement for HTML
1 lines • 192 kB
JavaScript
(()=>{var t={4518(){},3278(){},7339(){},4598(){},7412(){},2208(){},889(){up.browser={submitForm:function(t){t.submit()},canPushState:function(){return"GET"===up.protocol.initialRequestMethod()},canJQuery:function(){return!!window.jQuery},assertConfirmed:function(t){if(t.confirm&&!window.confirm(t.confirm))throw new up.Aborted("User canceled action");return!0},popCookie:function(t){var e;let n=null===(e=document.cookie.match(new RegExp(t+"=(\\w+)")))||void 0===e?void 0:e[1];if(n)return document.cookie=t+"=;Max-Age=0;Path=/",n}}},8504(){const t=up.element,e=up.util;up.BodyShifter=class BodyShifter{constructor(){this.t=new Set,this.i=0,this.o=e.cleaner()}lowerStack(){0===--this.i&&this.u()}raiseStack(){1===++this.i&&this.l()}onAnchoredElementInserted(t){return this.t.add(t),this.h(t,"right"),()=>this.t.delete(t)}p(){return this.i>0}l(){this.m=up.viewport.rootScrollbarWidth(),this.o(t.setStyleTemp(t.root,{"--up-scrollbar-width":this.m+"px"})),this.h(document.body,"padding-right");for(let t of this.t)this.h(t,"right")}u(){this.o.clean()}h(e,n){if(!this.p())return;let i=t.style(e,n);this.o(t.setStyleTemp(e,{["--up-original-"+n]:i}),t.addClassTemp(e,"up-scrollbar-away"))}}},8195(){const t=up.util,e=up.element;up.Change.Addition=class Addition extends up.Change{constructor(t){super(t),this.v=t.acceptLayer,this._=t.dismissLayer,this.O=t.eventPlans||[],this.k=t.response}handleLayerChangeRequests(t,e){this.layer.isOverlay()&&(this.S(),this.layer.assertAlive(),this.layer.tryAcceptForLocation(e,this.k),this.layer.assertAlive(),this.layer.tryAcceptForElements(t,this.k),this.layer.assertAlive(),this.j(),this.layer.assertAlive(),this.layer.tryDismissForLocation(e,this.k),this.layer.assertAlive(),this.layer.tryDismissForElements(t,this.k),this.layer.assertAlive()),this.layer.asCurrent(()=>{for(let t of this.O)up.emit(Object.assign(Object.assign({},t),{response:this.k})),this.layer.assertAlive()})}S(){t.isDefined(this.v)&&this.layer.accept(this.v,{response:this.k})}j(){t.isDefined(this._)&&this.layer.dismiss(this._,{response:this.k})}C({oldElement:t,newElement:n,source:i}){"keep"===i&&(i=t&&up.fragment.source(t)),i&&e.setMissingAttr(n,"up-source",up.fragment.normalizeSource(i))}F({newElement:t,time:n}){e.setMissingAttr(t,"up-time",!!n&&n.toUTCString())}T({newElement:t,etag:n}){e.setMissingAttr(t,"up-etag",n||!1)}setReloadAttrs(t){this.C(t),this.F(t),this.T(t)}executeSteps({steps:t,responseDoc:e,noneOptions:n}){return new up.Change.UpdateSteps({steps:t,noneOptions:n}).execute(e)}}},6347(){up.Change=class Change{constructor(t){this.options=t}execute(){throw new up.NotImplemented}deriveFailOptions(){return up.RenderOptions.deriveFailOptions(this.options)}}},2113(){const t=up.util;up.Change.CloseLayer=class CloseLayer extends up.Change{constructor(t){var e,n;super(t),this.P=t.verb,this.layer=up.layer.get(t),this.R=t.origin,this.L=t.value,this.A=null===(e=t.preventable)||void 0===e||e,this.k=t.response,this.D=null===(n=t.history)||void 0===n||n}execute(){if(this.layer.assertAlive(),up.browser.assertConfirmed(this.options),this.$().defaultPrevented&&this.A)throw new up.Aborted("Close event was prevented");this.M(),up.fragment.abort({reason:"Layer is closing",layer:this.layer}),this.layer.state="closing";const{parent:t}=this.layer;this.layer.peel(),this.H(t),this.layer.teardownHandlers(),this.layer.destroyElements(this.options),this.layer.stack.remove(this.layer),this.D&&t.restoreHistory(),this.layer.state="closed",this.N(t)}$(){let e=this.layer.emit(this.B(`up:layer:${this.P}`),{callback:this.layer.callback(`on${t.upperCaseFirst(this.P)}`),log:[`Will ${this.P} ${this.layer} with value %o`,this.L]});return this.L=e.value,e}M(){let t=this.B(`up:layer:${this.P}ing`);this.layer.emit(t,{log:!1})}N(e){const n=`${this.P}ed`,i=t.upperCaseFirst(n);return this.layer.emit(this.B(`up:layer:${n}`),{baseLayer:e,callback:this.layer.callback(`on${i}`),ensureBubbles:!0,log:[`${i} ${this.layer} with value %o`,this.L]})}B(t){return up.event.build(t,{layer:this.layer,value:this.L,origin:this.R,response:this.k})}H(t){var e;let n=this.layer.hasFocus();if(this.layer.overlayFocus.teardown(),null===(e=t.overlayFocus)||void 0===e||e.moveToFront(),n){let e=this.layer.origin||t.element;up.focus(e,{preventScroll:!0})}}}},864(){up.Change.DestroyFragment=class DestroyFragment extends up.Change{constructor(t){super(t),this.I=up.layer.get(t)||up.layer.current,this.q=this.options.element,this.U=this.options.animation,this.V=this.options.log}execute(){this.K=this.q.parentNode,up.fragment.markAsDestroying(this.q),up.animate(this.q,this.U,Object.assign(Object.assign({},this.options),{onFinished:()=>{var t,e;this.X(),this.W(),null===(e=(t=this.options).onFinished)||void 0===e||e.call(t)}}))}X(){this.I.asCurrent(()=>{up.fragment.abort(this.q),up.script.clean(this.q,{layer:this.I}),this.q.remove()})}W(){up.fragment.emitDestroyed(this.q,{parent:this.K,log:this.V})}}},5249(){var t;const e=up.util;up.Change.FromContent=(t=class FromContent extends up.Change{constructor(t){super(t),this.R=t.origin,this.G=t.preflight,this.J=up.layer.getAll(t)}Y(){let t=[];return this.Z(),this.tt(),this.et(t,this.J,this.options.target),this.et(t,this.J,this.options.fallback),t}nt(t){return"new"===t||t.isAlive()}Z(){this.J=e.filter(this.J,this.nt)}et(t,e,n){for(let i of e)for(let e of this.it(n,i)){const n=Object.assign(Object.assign({},this.options),{target:e,layer:i,defaultPlacement:this.rt()}),r="new"===i?new up.Change.OpenLayer(n):new up.Change.UpdateLayer(n);t.push(r)}}it(t,e){return up.fragment.expandTargets(t,{layer:e,mode:this.options.mode,origin:this.R})}execute(){return this.options.preload?Promise.resolve():this.st(this.ot.bind(this))||this.ut()}ot(t){return up.fragment.mutate(()=>t.execute(this.ct(),this.lt.bind(this,t)))}ht(t){return!(t instanceof up.CannotMatch)}lt(t){let e=this.Y()[0];t!==e&&up.puts("up.render()",'Could not match primary target "%s". Updating a fallback target "%s".',e.target,t.target);let{assets:n}=this.ct();n&&up.script.assertAssetsOK(n,t.options),this.options.handleAbort(this.getPreflightProps())}ct(){var t,n;if(this.G)return;const i=e.pick(this.options,["target","content","fragment","document","html","cspInfo","origin","data"]);return null===(n=(t=up.migrate).handleResponseDocOptions)||void 0===n||n.call(t,i),"content"===this.rt()&&(i.target=this.ft(i.target)),new up.ResponseDoc(i)}tt(){var t;if(this.G)return;let e=this.ct();this.options.fragment&&((t=this.options).target||(t.target=e.rootSelector())),this.options.title=up.history.refineOption(this.options.title,e.title),this.options.metaTags=up.history.refineOption(this.options.metaTags,e.metaTags),this.options.lang=up.history.refineOption(this.options.lang,e.lang)}rt(){if(!this.options.document&&!this.options.fragment)return"content"}ft(t){let e=this.J[0]||up.layer.root;return this.it(t||":main",e)[0]}getPreflightProps(t={}){return this.st(t=>t.getPreflightProps())||t.optional||this.dt()}dt(){this.gt("Could not find target in current page")}ut(){this.gt("Could not find common target in current page and response")}gt(t){if(this.Y().length){const n=e.uniq(e.map(this.Y(),"target")),i=up.layer.optionToString(this.options.layer);throw new up.CannotMatch([t+" (tried selectors %o in %s)",n,i])}if(0!==this.J.length)throw this.options.didForceFailOptions?new up.CannotMatch("No target selector given for failed responses (https://unpoly.com/failed-responses)"):new up.CannotMatch("No target selector given");this.vt()}vt(){throw new up.CannotMatch("Could not find a layer to render in. You may have passed an unmatchable layer reference, or a detached element.")}st(t){for(let e of this.Y())try{return t(e)}catch(t){if(this.ht(t))throw t}}},e.memoizeMethod(t.prototype,{Y:!0,ct:!0,getPreflightProps:!0}),t)},9797(){var t,e=this&&this.bt||function(t,e,n,i){return new(n||(n=Promise))(function(r,s){function o(t){try{a(i.next(t))}catch(t){s(t)}}function u(t){try{a(i.throw(t))}catch(t){s(t)}}function a(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(o,u)}a((i=i.apply(t,e||[])).next())})};const n=up.util;up.Change.FromResponse=(t=class FromResponse extends up.Change{constructor(t){super(t),this.k=t.response,this.yt=this.k.request}execute(){var t;if(up.fragment.config.skipResponse(this.wt())?this._t():(this.yt.assertEmitted("up:fragment:loaded",Object.assign(Object.assign({},this.wt()),{callback:this.options.onLoaded,log:["Loaded fragment from %s",this.k.description],skip:()=>this._t()})),this.Ot()),null!==(t=n.evalOption(this.options.fail,this.k))&&void 0!==t?t:!this.k.ok)throw this.kt(this.deriveFailOptions());return this.kt(this.options)}Ot(){if(!up.fragment.config.renderableResponse(this.k))throw new up.CannotParse(['Cannot render response with content-type "%s" (configure with up.fragment.config.renderableResponse)',this.k.contentType])}_t(){up.puts("up.render()","Skipping "+this.k.description),this.options.target=":none",this.options.failTarget=":none"}kt(t){return t.didForceFailOptions&&up.puts("up.render()","Rendering failed response using fail-prefixed options (https://unpoly.com/failed-responses)"),this.St(t),t.meta=this.Et(),t.verifyFinished=e=>this.jt(e,t),new up.Change.FromContent(t).execute()}jt(t,n){return e(this,void 0,void 0,function*(){if(!up.fragment.shouldRevalidate(this.yt,this.k,n))return;let e=n.target,i=t.target;if(/:(before|after)/.test(e))up.warn("up.render()","Cannot revalidate cache when prepending/appending (target %s)",e);else{up.puts("up.render()",'Revalidating cached response for target "%s"',i);let e=yield up.reload(i,Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},n),up.RenderOptions.NO_MOTION),up.RenderOptions.NO_INPUT_INTERFERENCE),up.RenderOptions.NO_PREVIEWS),{feedback:n.feedback,preferOldElements:t.fragments,layer:t.layer,onFinished:null,expiredResponse:this.k,preview:this.Ct(n),abort:!1,cache:!1,background:!0}));if(!e.none)return e}})}Ct({preview:t,revalidatePreview:e}){return!0===e?t:e}wt(){const{expiredResponse:t}=this.options;return{request:this.yt,response:this.k,renderOptions:this.options,revalidating:!!t,expiredResponse:t}}Et(){var t,e;let n={revalidating:!!this.options.expiredResponse,ok:this.k.ok};return null===(e=(t=up.migrate).processHelloMeta)||void 0===e||e.call(t,n,this.k),n}St(t){var e,i;const r=this.k.url;let s=r,o=this.yt.hash;o&&(t.hash=o,s+=o),"GET"===this.k.method?t.source=up.history.refineOption(t.source,r):(t.source=up.history.refineOption(t.source,"keep"),t.history=!!t.location);let u=this.k.openLayer;u&&(up.script.adoptRenderOptionsFromHeader(u,this.k.cspInfo),Object.assign(t,Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},up.Layer.Overlay.UNSET_VISUALS),{target:void 0}),up.fragment.config.navigateOptions),u),{layer:"new"}))),t.location=up.history.refineOption(t.location,s),t.title=up.history.refineOption(t.title,this.k.title),t.eventPlans=this.k.eventPlans;let a=this.k.target;a&&(t.target=a),t.acceptLayer=this.k.acceptLayer,t.dismissLayer=this.k.dismissLayer,t.document=this.k.text,this.k.none&&(t.target=":none"),t.context=n.merge(t.context,this.k.context),t.cspInfo=this.k.cspInfo,null!==(e=t.time)&&void 0!==e||(t.time=this.k.lastModified),null!==(i=t.etag)&&void 0!==i||(t.etag=this.k.etag)}},n.memoizeMethod(t.prototype,{wt:!0}),t)},1589(){var t,e=this&&this.bt||function(t,e,n,i){return new(n||(n=Promise))(function(r,s){function o(t){try{a(i.next(t))}catch(t){s(t)}}function u(t){try{a(i.throw(t))}catch(t){s(t)}}function a(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(o,u)}a((i=i.apply(t,e||[])).next())})};const n=up.util;up.Change.FromURL=(t=class FromURL extends up.Change{execute(){return e(this,void 0,void 0,function*(){var t,e;let i=this.xt();if(i)return up.puts("up.render()",i),up.network.loadPage(this.options),n.unresolvablePromise();let r=this.Ft(),s=this.request=up.request(r);return null===(e=(t=this.options).onRequestKnown)||void 0===e||e.call(t,s),this.options.preload?s:(this.options.handleAbort(Object.assign({request:s},r)),s.runPreviews(this.options),yield n.always(s,t=>this.Tt(t)))})}xt(){return n.isCrossOrigin(this.options.url)?"Loading cross-origin content in new page":this.options.history&&!up.browser.canPushState()?"Loading content in new page to restore history support":void 0}Ft(){const t=this.Pt(this.options),e=this.Pt(this.deriveFailOptions(),{optional:!0});return Object.assign(Object.assign(Object.assign({},this.options),t),n.withRenamedKeys(e,up.fragment.failKey))}getPreflightProps(){return this.Ft()}Pt(t,e){return new up.Change.FromContent(Object.assign(Object.assign({},t),{preflight:!0})).getPreflightProps(e)}Tt(t){return t instanceof up.Response?this.Rt(t):this.Lt(t)}Rt(t){return new up.Change.FromResponse(Object.assign(Object.assign({},this.options),{response:t})).execute()}Lt(t){if(t instanceof up.Offline){let e=["Cannot load fragment from %s: %s",t.request.description,t.reason];this.request.emit("up:fragment:offline",{callback:this.options.onOffline,renderOptions:this.options,retry:t=>up.render(Object.assign(Object.assign({},this.options),t)),log:e})}throw t}},n.memoizeMethod(t.prototype,{Ft:!0}),t)},5845(){var t=this&&this.bt||function(t,e,n,i){return new(n||(n=Promise))(function(r,s){function o(t){try{a(i.next(t))}catch(t){s(t)}}function u(t){try{a(i.throw(t))}catch(t){s(t)}}function a(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(o,u)}a((i=i.apply(t,e||[])).next())})};let e=up.util;up.Change.OpenLayer=class OpenLayer extends up.Change.Addition{constructor(t){super(t),this.target=t.target,this.R=t.origin,this.At=t.baseLayer}getPreflightProps(){return{mode:this.options.mode,context:this.Dt().context,origin:this.options.origin,target:this.target,bindLayer:this.At,layer:"new",bindFragments:e.compact([up.fragment.get(":main",{layer:this.At})]),fragments:[]}}execute(t,n){this.$t(t),n(),this.Mt();let i=e.memoize(()=>this.Ht(t)),r=this.layer.on("up:layer:accepting up:layer:dismissing",i);try{let e=[this.Nt(t),...i()];return new up.RenderResult({layer:this.layer,target:this.target,renderOptions:this.options,partialResults:e})}finally{r()}}$t(t){if(":none"===this.target?this.Bt=document.createElement("up-none"):this.Bt=t.select(this.target),!this.Bt||!this.At.isAlive())throw new up.CannotMatch}Mt(){up.puts("up.render()",`Opening element "${this.target}" in new overlay`),this.It(),this.layer=this.Dt(),this.At.peel({history:!this.layer.history,intent:this.options.peel}),this.At.saveHistory(),up.layer.stack.push(this.layer),this.layer.createElements(),this.layer.setupHandlers()}Nt(t){this.handleLayerChangeRequests([this.Bt],this.qt()),t.commitElement(this.Bt),this.layer.setContent(this.Bt),t.finalizeElement(this.Bt),this.Ut(),this.setReloadAttrs({newElement:this.Bt,source:this.options.source});let e=this.zt();this.H(),this.Vt(),this.layer.state="opened",this.Kt(),this.layer.assertAlive();let n=this.layer.startOpenAnimation();return{fragments:[this.Bt],finished:Promise.all([e,n]),verifyFinished:()=>this.layer.assertAlive()}}Ht(t){let e=this.Xt().other;return this.executeSteps({steps:e,responseDoc:t})}zt(){return t(this,void 0,void 0,function*(){yield up.hello(this.layer.element,Object.assign(Object.assign({},this.options),{layer:this.layer,dataRoot:this.Bt}))})}Dt(){return up.layer.build(this.options,t=>this.options=up.RenderOptions.finalize(t))}Ut(){var t;"auto"===this.layer.history&&(this.layer.history=up.fragment.hasAutoHistory([this.Bt],this.layer)),(t=this.layer).history&&(t.history=this.At.history),this.layer.updateHistory(this.Wt())}H(){var t;null===(t=this.At.overlayFocus)||void 0===t||t.moveToBack(),this.layer.overlayFocus.moveToFront(),new up.FragmentFocus({fragment:this.Bt,layer:this.layer,autoMeans:["autofocus","layer"],inputDevice:this.options.inputDevice}).process(this.options.focus)}Vt(){var t;const e=Object.assign(Object.assign({},this.options),{fragment:this.Bt,layer:this.layer,autoMeans:["hash","layer"]});new up.FragmentScrolling(e).process(null!==(t=this.options.scrollMap)&&void 0!==t?t:this.options.scroll)}It(){up.event.assertEmitted("up:layer:open",{origin:this.R,baseLayer:this.At,layerOptions:this.options,log:"Opening new overlay"})}Kt(){this.layer.emit("up:layer:opened",{origin:this.R,callback:this.layer.callback("onOpened"),log:`Opened new ${this.layer}`})}Xt(){return up.radio.hungrySteps(this.Gt())}Gt(){return Object.assign(Object.assign({},this.options),{layer:this.layer,history:this.layer.history})}Wt(){return up.history.options(this.options)}qt(){return this.Gt().location}}},5224(){var t;const e=up.util;up.Change.UpdateLayer=(t=class UpdateLayer extends up.Change.Addition{constructor(t){super(t=up.RenderOptions.finalize(t)),this.layer=t.layer,this.target=t.target,this.Jt=t.context,this.Qt=up.fragment.parseTargetSteps(this.target,this.options)}getPreflightProps(){this.Yt();let t=this.Zt();return{layer:this.layer,bindLayer:this.layer,mode:this.layer.mode,context:e.merge(this.layer.context,this.Jt),origin:this.options.origin,target:this.te(),fragments:t,bindFragments:t}}te(){this.Yt();let t=this.Qt.filter(t=>{var e;return!t.maybe||(null===(e=t.oldElement)||void 0===e?void 0:e.isConnected)});return e.map(t,"selector").join(", ")||":none"}Zt(){return this.Yt(),e.map(this.Qt,"oldElement")}execute(t,n){this.$t(t),n();let i=e.memoize(()=>this.Ht(t)),r=this.layer.on("up:layer:accepting up:layer:dismissing",i);try{let e=[...this.ee(t),...i()];return new up.RenderResult({target:this.target,layer:this.layer,renderOptions:this.options,partialResults:e})}finally{r()}}ee(t){this.Qt.length&&up.puts("up.render()",`Updating "${this.te()}" in ${this.layer}`),this.ne(),this.options.saveScroll&&up.viewport.saveScroll({layer:this.layer}),this.options.saveFocus&&up.viewport.saveFocus({layer:this.layer});let{peel:n}=this.options;return n&&this.layer.peel({history:!this.ie(),intent:n}),!1!==this.options.abort&&up.fragment.abort(this.Zt(),{reason:"Fragment is being replaced",jid:this.options.jid}),Object.assign(this.layer.context,this.Jt),this.handleLayerChangeRequests(e.map(this.Qt,"newElement"),this.qt()),this.layer.updateHistory(this.Wt()),this.executeSteps({steps:this.Qt,noneOptions:this.options,responseDoc:t})}Ht(t){let e=this.Xt().other;return this.executeSteps({steps:e,responseDoc:t})}Yt(){this.re(),this.se()}$t(t){this.re(),this.oe(),this.se(),this.ue(t)}oe(){this.Qt.push(...this.Xt().current)}re(){this.Qt=this.Qt.filter(t=>{const n=new up.FragmentFinder(e.pick(t,["selector","origin","layer","match","preferOldElements"]));if(t.oldElement||(t.oldElement=n.find()),t.oldElement)return!0;if(!t.maybe)throw new up.CannotMatch})}ue(t){this.Qt=t.selectSteps(this.Qt)}se(){this.Qt=up.fragment.compressNestedSteps(this.Qt)}Xt(){return up.radio.hungrySteps(this.Gt())}ne(){let t=up.FocusCapsule.preserve(this.layer),e=up.viewport.getScrollTops({layer:this.layer});this.Qt.forEach((n,i)=>{n.focusCapsule=t,n.oldScrollTops=e,n.scrollMap&&(n.scroll=!1),i>0&&(n.focus=!1,n.scrollMap=void 0,"keep"!==n.scroll&&(n.scroll=!1),n.data=void 0)})}ie(){return e.evalAutoOption(this.options.history,this.ae.bind(this))}ae(){const t=e.map(this.Qt,"oldElement");return up.fragment.hasAutoHistory(t,this.layer)}qt(){return this.Wt().location}Gt(){return Object.assign(Object.assign({},this.options),{layer:this.layer,history:this.ie()})}Wt(){return this.ie()?up.history.options(this.options):{}}},e.memoizeMethod(t.prototype,{Yt:!0,re:!0,ie:!0,Xt:!0}),t)},302(){const t=up.util,e=up.element;up.Change.UpdateSteps=class UpdateSteps extends up.Change.Addition{constructor(e){super(e),this.Qt=t.copy(t.assert(e.steps)),this.ce=e.noneOptions||{}}execute(t){return this.responseDoc=t,this.Qt=t.selectSteps(this.Qt),this.Qt=t.commitSteps(this.Qt),[...this.le(),this.he()]}le(){return this.Qt.length?this.Qt.toReversed().map(t=>this.pe(t)).toReversed():this.fe()}he(){return{verifyFinished:()=>{for(let t of this.Qt)t.layer.assertAlive()}}}pe(t){switch(t.placement){case"swap":{let e=up.fragment.keepPlan(t);return e?this.de(t,e):this.me(t)}case"content":return this.ge(t);case"before":case"after":return this.ve(t);default:up.fail("Unknown placement: %o",t.placement)}}fe(){return this.H(null,this.ce),this.Vt(null,this.ce),[{}]}de(t,e){if(e)return up.fragment.emitKept(e),this.H(t.oldElement,t),this.Vt(t.oldElement,t),{}}me(t){var e;const n=null!==(e=t.parentElement)&&void 0!==e?e:t.oldElement.parentNode;let i;up.fragment.markAsDestroying(t.oldElement),this.be(t);let r=up.motion.morph(t.oldElement,t.newElement,t.transition,Object.assign(Object.assign({},t),{afterInsert:()=>{this.ye(t),i=this.we(t.newElement,t),this._e(t),this.H(t.newElement,t),this.Vt(t.newElement,t)},beforeRemove:()=>{up.script.clean(t.oldElement,{layer:t.layer})},afterRemove:()=>{var e;up.fragment.emitDestroyed(t.oldElement,{parent:n,log:!1}),null===(e=t.afterRemove)||void 0===e||e.call(t)}}));return{fragments:[t.newElement],finished:Promise.all([r,i])}}ge(t){let n=[...t.newElement.children],i=e.wrapChildren(t.oldElement),r=e.wrapChildren(t.newElement);return{fragments:n,finished:this.me(Object.assign(Object.assign({},t),{placement:"swap",parentElement:t.oldElement.parentNode,oldElement:i,newElement:r,focus:!1,afterRemove:()=>{e.unwrap(r),this.H(t.oldElement,t)}})).finished}}ve(t){let n=[...t.newElement.children],i=e.wrapChildren(t.newElement),r="before"===t.placement?"afterbegin":"beforeend";t.oldElement.insertAdjacentElement(r,i);let s=this.we(i,t);this.Vt(i,t);let o=up.animate(i,t.animation,Object.assign(Object.assign({},t),{onFinished:()=>{e.unwrap(i);const n=e.leadingElement(t.oldElement.childNodes)||t.oldElement;this.H(n,t)}}));return{fragments:n,finished:Promise.all([s,o])}}we(t,e){return this.responseDoc.finalizeElement(t),this.setReloadAttrs(e),up.hello(t,e)}be(e){const n=[];if(e.keep)for(let i of e.oldElement.querySelectorAll("[up-keep]")){let r=up.fragment.keepPlan(Object.assign(Object.assign({},e),{oldElement:i,descendantsOnly:!0}));if(r){const e=i.cloneNode(!0);i.insertAdjacentElement("beforebegin",e),i.classList.add("up-keeping"),up.script.block(r.newElement);let s=up.viewport.subtree(r.oldElement);r.revivers=t.map(s,function(t){let e=up.viewport.copyCursorProps(t);return()=>up.viewport.copyCursorProps(e,t)}),this.Oe()?r.newElement.replaceWith(i):document.body.append(i),n.push(r)}}e.descendantKeepPlans=n}ye(t){for(let e of t.descendantKeepPlans){e.newElement.replaceWith(e.oldElement);for(let t of e.revivers)t()}}_e(t){for(let e of t.descendantKeepPlans)e.oldElement.classList.remove("up-keeping"),up.fragment.emitKept(e)}Oe(){return t.some(this.Qt,t=>t.oldElement.matches("body"))}H(t,e){new up.FragmentFocus(Object.assign(Object.assign({},e),{fragment:t,autoMeans:up.fragment.config.autoFocus})).process(e.focus)}Vt(t,e){var n;new up.FragmentScrolling(Object.assign(Object.assign({},e),{fragment:t,autoMeans:up.fragment.config.autoScroll})).process(null!==(n=e.scrollMap)&&void 0!==n?n:e.scroll)}}},3526(){const t=up.util,e=up.element;up.Config=class Config{constructor(t=()=>({})){this.ke=t,this.reset(),document.addEventListener("up:framework:reset",()=>this.reset())}reset(){Object.assign(this,this.ke())}matches(t,e,n){return null==t?void 0:t.matches(this.selector(e,n))}matchesFn(t){return(e,n)=>this.matches(e,t,n)}selector(n,i=""){let r=this[n],s=this["no"+t.upperCaseFirst(n)];return e.unionSelector(r,s,i)}selectorFn(t){return e=>this.selector(t,e)}selectorFns(t){return[this.selectorFn(t),this.matchesFn(t)]}}},8379(){const t=up.util,e=/'nonce-([^']+)'/g;function n(n){let i=n.matchAll(e);return t.map(i,"1")}up.CSPInfo=class CSPInfo{constructor(t="",e=[]){this.declaration=t,this.nonces=e}isStrictDynamic(){return this.declaration.includes("'strict-dynamic'")}isUnsafeEval(){return this.declaration.includes("'unsafe-eval'")}static fromHeader(t){var e;let i={};if(t){let r=t.split(/\s*;\s*/);for(let t of r){let r=null===(e=t.match(/^(script|default)-src\s/))||void 0===e?void 0:e[1];r&&(i[r]=[t,n(t)])}}let r=i.script||i.default;return r?new this(...r):this.none()}static none(){return new this}}},1739(){const t=up.util;up.DestructorPass=class DestructorPass{constructor(t,e){this.Se=t,this.Ee=e}run(){for(let e of this.je()){let n=t.pluckKey(e,"upDestructors");null==n||n.clean(e)}}je(){const t=Object.assign(Object.assign({},this.Ee),{destroying:!0});return up.fragment.subtree(this.Se,".up-can-clean",t)}}},611(){const t=up.util,e=up.element;up.EventEmitter=class EventEmitter extends up.Record{keys(){return["target","event","baseLayer","callback","log","ensureBubbles"]}emit(){return this.Ce(),this.baseLayer?this.baseLayer.asCurrent(()=>this.xe()):this.xe(),this.event}xe(){this.target.dispatchEvent(this.event),this.ensureBubbles&&!this.target.isConnected&&document.dispatchEvent(this.event),up.error.guard(()=>{var t;return null===(t=this.callback)||void 0===t?void 0:t.call(this,this.event)})}assertEmitted(){const t=this.emit();if(t.defaultPrevented)throw new up.Aborted(`Event ${t.type} was prevented`)}Ce(){if(!up.log.config.enabled)return;let e,n=this.log;t.isArray(n)?[n,...e]=n:e=[];const{type:i}=this.event;t.isString(n)?up.puts(i,n,...e):!1!==n&&up.puts(i,`Event ${i}`)}static fromEmitArgs(n,i={}){var r,s;let o,u=t.extractOptions(n);return u=t.merge(i,u),t.isElementLike(n[0])?u.target=e.get(n.shift()):n[0]instanceof up.Layer&&(u.layer=n.shift()),t.isGiven(u.layer)&&(o=up.layer.get(u.layer),u.target||(u.target=o.element),u.baseLayer||(u.baseLayer=o)),u.baseLayer&&(u.baseLayer=up.layer.get(u.baseLayer)),t.isString(u.target)?u.target=up.fragment.get(u.target,{layer:u.layer}):u.target||(u.target=document),(null===(r=n[0])||void 0===r?void 0:r.preventDefault)?(u.event=n[0],null!==(s=u.log)&&void 0!==s||(u.log=n[0].log)):t.isString(n[0])?u.event=up.event.build(n[0],u):u.event=up.event.build(u),new this(u)}}},5229(){const t=up.util;up.EventListener=class EventListener extends up.Record{keys(){return["element","eventType","selector","callback","guard","baseLayer","passive","once","capture","beforeBoot"]}constructor(t){var e;super(t),this.Fe=this.constructor.Te(t),this.isDefault=up.framework.evaling,null!==(e=this.beforeBoot)&&void 0!==e||(this.beforeBoot=0===this.eventType.indexOf("up:framework:")),this.nativeCallback=this.nativeCallback.bind(this)}bind(){var t;const e=(t=this.element).upEventListeners||(t.upEventListeners={});e[this.Fe]&&up.fail("up.on(): The %o callback %o cannot be registered more than once",this.eventType,this.callback),e[this.Fe]=this,this.element.addEventListener(...this.Pe())}Pe(){let e=t.compactObject(t.pick(this,["once","passive","capture"]));return[this.eventType,this.nativeCallback,e]}unbind(){let t=this.element.upEventListeners;t&&delete t[this.Fe],this.element.removeEventListener(...this.Pe())}nativeCallback(e){if(up.framework.beforeBoot&&!this.beforeBoot)return;let n=e.target;if(this.selector){let e=t.evalOption(this.selector);n=n.closest(e)}if((!this.guard||this.guard(e))&&n){const t=[e,n],i=this.callback.length;if(1!==i&&2!==i){const e=up.script.data(n);t.push(e)}if("click"===this.eventType&&n.disabled)return;const r=this.callback.bind(n,...t);this.baseLayer?this.baseLayer.asCurrent(r):r()}}static fromElement(t){let e=t.element.upEventListeners;if(e)return e[this.Te(t)]}static Te(e){var n;return(n=e.callback).upUid||(n.upUid=t.uid()),[e.eventType,e.selector,e.callback.upUid].join("|")}static allNonDefault(e){let n=e.upEventListeners;if(n){const e=Object.values(n);return t.reject(e,"isDefault")}return[]}}},3441(){const t=up.util;up.EventListenerGroup=class EventListenerGroup extends up.Record{keys(){return["elements","eventTypes","selector","callback","guard","baseLayer","passive","once","capture","beforeBoot"]}bind(){const e=t.cleaner();return this.Re(function(t){const n=new up.EventListener(t);return n.bind(),e(n.unbind.bind(n))}),e.clean}Re(t){for(let e of this.elements)for(let n of this.eventTypes)t(this.Le(e,n))}Le(t,e){return Object.assign(Object.assign({},this.attributes()),{element:t,eventType:e})}unbind(){this.Re(function(t){let e=up.EventListener.fromElement(t);e&&e.unbind()})}static fromBindArgs(e,n){const i=(e=t.copy(e)).pop();let r;r=e[0].addEventListener?[e.shift()]:t.isJQuery(e[0])||t.isList(e[0])&&e[0][0].addEventListener?e.shift():[document];let s=t.getSimpleTokens(e.shift()),o=up.migrate.fixEventTypes;o&&(s=o(s));const u=t.extractOptions(e),a=e[0];return new this(Object.assign(Object.assign({elements:r,eventTypes:s,selector:a,callback:i},u),n))}}},621(){var t=this&&this.bt||function(t,e,n,i){return new(n||(n=Promise))(function(r,s){function o(t){try{a(i.next(t))}catch(t){s(t)}}function u(t){try{a(i.throw(t))}catch(t){s(t)}}function a(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(o,u)}a((i=i.apply(t,e||[])).next())})};const e=up.util;up.FieldWatcher=class FieldWatcher{constructor(t,e,n){var i;this.Ee=e,this.Ae=t,this.De=n,this.$e=e.batch,this.Me=null!==(i=e.logPrefix)&&void 0!==i?i:"up.watch()",this.He=e.includeDisabled,this.Ne()}start(){return this.Be=null,this.Ie=this.qe(),this.Ue=null,this.ze=!1,e.sequence(this.Ve(),this.Ke(),this.Xe(),()=>this.We())}Ne(){const t=t=>up.fail(t,this.Me,this.Ae);this.De||t("No callback provided for %s (%o)"),this.Ae.matches("input[type=radio]")&&t("Use %s with the container of a radio group, not with an individual radio button (%o)"),up.form.isField(this.Ae)&&!this.Ae.name&&t("%s can only watch fields with a name (%o)")}Ve(){return up.form.isField(this.Ae)?this.Ge(this.Ae):up.form.trackFields(this.Ae,t=>this.Ge(t))}Ke(){return up.on("up:fragment:aborted",{guard:({target:t})=>t.contains(this.Je)},()=>this.We())}Xe(){return up.on("reset",{guard:({target:t})=>t===this.Je},t=>this.Qe(t))}get Je(){return up.form.getRegion(this.Ae)}Ye(t){let n=e.copy(this.Ee);return up.form.watchOptions(t,n,{defaults:{event:"input"}})}Ge(t){let e=this.Ye(t),n=e.event;return up.on(t,n,t=>this.Ze(t,e))}We(){this.Be=null}tn(t,n){this.Be=t,this.en=n;let i=n.delay||0;clearTimeout(this.Ue),this.Ue=e.timer(i,()=>{this.Ue=null,this.nn()})}rn(t){return!e.isEqual(t,this.Ie)&&!e.isEqual(this.Be,t)}nn(){return t(this,void 0,void 0,function*(){if(!this.Be)return;if(this.ze)return;if(this.Ue)return;if(!up.fragment.isAlive(this.Je))return;let t=e.omit(this.en,["event","delay"]);const n=this.sn(this.Ie,this.Be);this.Ie=this.Be,this.Be=null,this.ze=!0,this.en=null;const i=[];if(this.$e)i.push(this.un(n,t));else for(let e in n){const r=n[e];i.push(this.un(r,e,t))}if(e.some(i,e.isPromise)){let t=Promise.allSettled(i);yield t}this.ze=!1,this.nn()})}un(...t){return up.error.guard(this.De,...t)}sn(t,n){const i={};let r=Object.keys(t);r=r.concat(Object.keys(n)),r=e.uniq(r);for(let s of r){const r=t[s],o=n[s];e.isEqual(r,o)||(i[s]=o)}return i}qe(){return up.Params.fromContainer(this.Ae,{includeDisabled:this.He}).toObject()}Ze(t,e={}){const n=this.qe();this.rn(n)&&(up.log.putsEvent(t),this.tn(n,e))}Qe(t){e.task(()=>this.Ze(t))}}},7275(){const t=up.util;up.FIFOCache=class FIFOCache{constructor({capacity:e=10,normalizeKey:n=t.identity}={}){this.an=new Map,this.cn=e,this.ln=n}get(t){return t=this.ln(t),this.an.get(t)}set(t,e){if(this.an.size===this.cn){let t=this.an.keys().next().value;this.an.delete(t)}t=this.ln(t),this.an.set(t,e)}clear(){this.an.clear()}}},1438(){up.FocusCapsule=class FocusCapsule{constructor(t,e){this.q=t,this.hn=e,this.pn=up.viewport.copyCursorProps(this.q)}wasLost(){return document.activeElement!==this.q&&!this.fn}autoVoid(){up.on("focusin",{once:!0},()=>this.fn=!0)}restore(t,e){if(!this.wasLost())return!1;let n=up.fragment.get(this.hn,{layer:t});return n?(up.viewport.copyCursorProps(this.pn,n),up.focus(n,e),!0):void 0}static preserve(t){let e=up.viewport.focusedElementWithin(t.element);if(!e)return;let n=up.fragment.tryToTarget(e);return n?new this(e,n):void 0}}},1499(){var t=this&&this.bt||function(t,e,n,i){return new(n||(n=Promise))(function(r,s){function o(t){try{a(i.next(t))}catch(t){s(t)}}function u(t){try{a(i.throw(t))}catch(t){s(t)}}function a(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(o,u)}a((i=i.apply(t,e||[])).next())})},e=this&&this.dn||function(t,e){var n={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(i=Object.getOwnPropertySymbols(t);r<i.length;r++)e.indexOf(i[r])<0&&Object.prototype.propertyIsEnumerable.call(t,i[r])&&(n[i[r]]=t[i[r]])}return n};const n=up.util,i=up.element;up.FormValidator=class FormValidator{constructor(t){this.mn=t,this.gn=[],this.vn=null,this.bn=!1,this.yn()}start(){return up.form.trackFields(this.mn,{guard:t=>this.wn(t)},t=>this._n(t))}wn(t){return t.closest("[up-validate]:not([up-validate=false])")}_n(t){let e=up.form.validateOptions(t).event;return up.on(t,e,e=>{t.closest(".up-keeping")||(up.log.putsEvent(e),up.error.muteUncriticalRejection(this.validate({origin:t})))})}yn(){up.fragment.onAborted(this.mn,t=>this.On(t))}On(t){let e,n=new up.Aborted(t.reason);for(;e=this.gn.shift();)e.deferred.reject(n)}validate(t={}){var e;let n=this.kn(t);return this.gn.push(...n),this.Sn(),null===(e=n[0])||void 0===e?void 0:e.deferred}kn(t){let e=this.En(t)||this.jn(t)||this.Cn(t.origin),i=n.newDeferred();for(let r of e){let e=up.form.validateOptions(r.origin,t);r.batch=n.pluckKey(e,"batch"),r.renderOptions=e,r.destination=`${e.method} ${e.url}`,r.target=up.fragment.resolveOrigin(r.target,r),r.deferred=i}return e}jn(t){var{origin:n}=t,i=e(t,["origin"]);if(up.form.isField(n))return this.xn(n)||this.Fn(n,i)}Fn(t,{formGroup:e=!0}){if(!e)return;let n=up.form.groupSolution(t);return n?(up.puts("up.validate()","Validating form group of field %o",t),[n]):void 0}En({target:t,origin:e}){if(n.isString(t)){up.puts("up.validate()",'Validating target "%s"',t);let i=up.fragment.splitTarget(t);return n.compact(i.map(function(t){let n=up.fragment.get(t,{origin:e});if(n)return{element:n,target:t,origin:e};up.fail('Validation target "%s" does not match an element',t)}))}}Cn(t){return up.puts("up.validate()","Validating element %o",t),[{element:t,target:up.fragment.toTarget(t),origin:t}]}xn(t){let e=t.closest("[up-validate]");if(e){let n=i.booleanOrStringAttr(e,"up-validate");return this.En({target:n,origin:t})}}Sn(){let t=this.gn.map(t=>t.renderOptions.delay),e=Math.min(...t)||0;clearTimeout(this.vn),this.vn=n.timer(e,()=>{this.vn=null,this.Tn()})}Tn(){up.error.muteUncriticalRejection(this.Pn())}Pn(){return t(this,void 0,void 0,function*(){if(!this.gn.length)return;if(this.bn)return;if(this.vn)return;let t=this.Rn(),e=this.Ln(t);this.bn=!0;try{let n=up.render(e);for(let e of t)e.deferred.resolve(n);yield n}finally{this.bn=!1,this.Tn()}})}Rn(){let t=[],e=0;for(;e<this.gn.length;){let n=this.gn[e];0===t.length||this.An(t[0],n)?(t.push(n),this.gn.splice(e,1)):e++}return t}An(t,e){return t.destination===e.destination&&t.batch&&e.batch}Ln(t){var e;let i=n.map(t,"origin"),r=n.flatMap(i,up.form.fields),s=n.uniq(n.map(r,"name")),o=n.map(t,"renderOptions"),u=up.form.destinationOptions(this.mn),a=n.mergeDefined(u,...o);return a.target=n.map(t,"target").join(", "),a.origin=this.mn,null!==(e=a.focus)&&void 0!==e||(a.focus="keep"),a.failOptions=!1,a.defaultMaybe=!0,a.params=up.Params.merge(u.params,...n.map(o,"params")),a.headers=n.merge(u.headers,...n.map(o,"headers")),this.Dn(a.headers,s),a.feedback=n.some(o,"feedback"),a.data=void 0,a.dataMap=n.mapObject(t,({target:t,element:e,renderOptions:{data:n,keepData:i}})=>[t,i?up.data(e):n]),a.preview=void 0,a.previewMap=n.mapObject(t,({target:t,renderOptions:{preview:e}})=>[t,e]),a.placeholder=void 0,a.placeholderMap=n.mapObject(t,({target:t,renderOptions:{placeholder:e}})=>[t,e]),a.disable=t.map(t=>up.fragment.resolveOrigin(t.renderOptions.disable,t)),a.guardEvent=up.event.build("up:form:validate",{fields:r,log:"Validating form",params:a.params,form:this.mn}),a}Dn(t,e){let n=up.protocol.headerize("validate"),i=e.join(" ");(!i||i.length>up.protocol.config.maxHeaderSize)&&(i=":unknown"),t[n]=i}}},5887(){const t=up.util,e=/^([^ >+(]+) (.+)$/;up.FragmentFinder=class FragmentFinder{constructor(t){var e;this.Ee=t,this.R=t.origin,this.$n=t.selector,this.Mn=t.document||window.document,this.Hn=null!==(e=t.match)&&void 0!==e?e:up.fragment.config.match,this.Nn=t.preferOldElements}find(){return this.Bn()||this.In()||this.qn()}Bn(){if(this.Nn)return this.Nn.find(t=>this.Mn.contains(t)&&up.fragment.matches(t,this.$n))}In(){var t;if("region"===this.Hn&&!up.fragment.containsMainPseudo(this.$n)&&(null===(t=this.R)||void 0===t?void 0:t.isConnected))return this.Un()||this.zn()}Un(){return up.fragment.closest(this.R,this.$n,this.Ee)}zn(){let n=up.fragment.splitTarget(this.$n);return t.findResult(n,t=>{let n=t.match(e);if(n){let t=up.fragment.closest(this.R,n[1],this.Ee);if(t)return up.fragment.getFirstDescendant(t,n[2])}})}qn(){return up.fragment.getFirstDescendant(this.Mn,this.$n,this.Ee)}}},7919(){const t=up.util,e=up.element,n={preventScroll:!0};up.FragmentFocus=class FragmentFocus extends up.FragmentProcessor{keys(){return super.keys().concat(["hash","focusVisible","focusCapsule","inputDevice"])}processPrimitive(e){switch(e){case"keep":return this.Vn();case"restore":return this.Kn();case"target":case!0:return this.Xn(this.fragment);case"layer":return this.Xn(this.layer.getFocusElement());case"main":return this.Wn(":main");case"hash":return this.Gn();case"autofocus":return this.Jn();default:if(t.isString(e))return this.Wn(e)}}processElement(t){return this.Xn(t)}resolveCondition(t){return"lost"===t?this.Qn():super.resolveCondition(t)}Wn(t){let e=this.findSelector(t);return this.Xn(e)}Vn(){var t;return null===(t=this.focusCapsule)||void 0===t?void 0:t.restore(this.layer,n)}Kn(){return up.viewport.restoreFocus({layer:this.layer})}Jn(){let t=this.fragment&&e.subtreeFirst(this.fragment,"[autofocus]");if(t)return this.Xn(t)}Xn(t){if(t)return up.focus(t,Object.assign(Object.assign({force:!0},n),{inputDevice:this.inputDevice,focusVisible:this.focusVisible})),!0}Gn(){let t=up.viewport.firstHashTarget(this.hash,{layer:this.layer});if(t)return this.Xn(t)}Qn(){var t;return null===(t=this.focusCapsule)||void 0===t?void 0:t.wasLost()}}},3728(){const t=up.element,e=up.util;up.FragmentPolling=class FragmentPolling{static forFragment(t){return t.upPolling||(t.upPolling=new this(t))}constructor(t){this.Ee=up.radio.pollOptions(t),this.Se=t,up.destructor(t,this.Yn.bind(this)),this.Zn="stopped",this.ti=null,this.ei=e.uid(),this.ni=!1,this.ii()}onPollAttributeObserved(){this.ri()}si({newLayer:t,jid:e}){e===this.ei||t||this.oi()}ui(){"stop"!==this.ti&&this.ri()}Yn(){this.oi()}ri(t){if(Object.assign(this.Ee,t),"stopped"===this.Zn){if(!up.fragment.isTargetable(this.Se))return void up.warn("[up-poll]","Cannot poll untargetable fragment %o",this.Se);this.Zn="started",this.ai(),this.ci()}}oi(){"started"===this.Zn&&(this.li(),this.Zn="stopped")}forceStart(t){Object.assign(this.Ee,t),this.ti="start",this.ri()}forceStop(){this.ti="stop",this.oi()}ai(){this.hi||(this.hi=!0,up.destructor(this.Se,up.on("visibilitychange up:layer:opened up:layer:dismissed up:layer:accepted",this.pi.bind(this))),up.fragment.onAborted(this.Se,this.si.bind(this)),up.fragment.onKept(this.Se,this.ui.bind(this)))}pi(){this.fi()?this.ci():this.li()}fi(){return!document.hidden&&("any"===this.Ee.ifLayer||this.di())}li(){clearTimeout(this.mi),this.mi=null}ci(){this.mi||this.ni||"stopped"===this.Zn||(this.li(),this.mi=setTimeout(this.gi.bind(this),this.bi()))}gi(){this.mi=null,this.yi()}yi(){if("stopped"!==this.Zn)return up.fragment.isAlive(this.Se)?void(this.fi()?this.wi():up.puts("[up-poll]","Will not poll hidden fragment")):(this.oi(),void up.puts("[up-poll]","Stopped polling a detached fragment"))}_i(){var e,n;return null!==(n=null!==(e=this.Ee.interval)&&void 0!==e?e:t.numberAttr(this.Se,"up-interval"))&&void 0!==n?n:up.radio.config.pollInterval}bi(){return Math.max(this._i()-this.Oi(),0)}Oi(){return new Date-this.ki}di(){var t,e;return this.layer||(this.layer=up.layer.get(this.Se)),null===(e=null===(t=this.layer)||void 0===t?void 0:t.isFront)||void 0===e?void 0:e.call(t)}wi(){this.li(),this.ni=!0;let t=up.event.build("up:fragment:poll",{log:["Polling fragment",this.Se]}),e=Object.assign(Object.assign({},this.Ee),{guardEvent:t,jid:this.ei});up.reload(this.Se,e).then(this.Si.bind(this),this.Ei.bind(this))}Si({fragment:t}){this.ni=!1,this.ii(),t?this.ji(t):this.ci()}ji(t){"start"===this.ti&&up.fragment.matches(this.Se,t)&&this.constructor.forFragment(t).forceStart(this.Ee)}Ei(t){this.ni=!1,this.ii(),this.ci(),up.error.throwCritical(t)}ii(){this.ki=new Date}}},2459(){const t=up.util;up.FragmentProcessor=class FragmentProcessor extends up.Record{keys(){return["fragment","autoMeans","origin","layer"]}process(t){let e=this.preprocessOnce(t);return this.tryProcess(e)}preprocessOnce(e){return t.getComplexTokens(e)}tryProcess(e){if(t.isArray(e))return this.processArray(e);if(t.isOptions(e))return this.processSelectorMap(e);if(t.isFunction(e)){let t=up.error.guard(e,this.fragment,this.attributes());return this.tryProcess(t)}if(t.isElement(e))return this.processElement(e);if(t.isString(e)){if("auto"===e)return this.tryProcess(this.autoMeans);let t=e.match(/^(.+?)-if-(.+?)$/);if(t)return this.resolveCondition(t[2])&&this.tryProcess(t[1])}return this.processPrimitive(e)}processSelectorMap(t){return Object.keys(t).filter(e=>{let n=this.findSelector(e);if(n){let i=new this.constructor(Object.assign(Object.assign({},this.attributes()),{fragment:n})),r=t[e];return i.process(r)}})}processArray(e){return t.find(e,t=>this.tryProcess(t))}resolveCondition(t){if("main"===t)return this.fragment&&up.fragment.contains(this.fragment,":main")}findSelector(t){const e={layer:this.layer,origin:this.origin};let n=this.fragment&&up.fragment.get(this.fragment,t,e)||up.fragment.get(t,e);if(n)return n;up.warn("up.render()",'Could not find an element matching "%s"',t)}}},9844(){const t=up.util;up.FragmentScrolling=class FragmentScrolling extends up.FragmentProcessor{keys(){return super.keys().concat(["hash","mode","revealTop","revealMax","revealSnap","scrollBehavior","oldScrollTops"])}processPrimitive(e){switch(e){case"top":return this.Ci(0);case"bottom":return this.Ci(-0);case"layer":return this.xi();case"main":return this.Fi(":main");case"keep":return this.Ti();case"restore":return this.Pi();case"hash":return this.hash&&up.viewport.revealHash(this.hash,this.attributes());case"target":case"reveal":case!0:return this.Ri(this.fragment);default:if(t.isNumber(e))return this.Ci(e);if(t.isString(e))return this.Fi(e)}}processElement(t){return this.Ri(t)}Ri(t){if(t)return up.reveal(t,this.attributes()),!0}Fi(t){let e=this.findSelector(t);return this.Ri(e)}xi(){return this.Ri(this.layer.getBoxElement())}Ci(t){return up.viewport.scrollTo(t,Object.assign(Object.assign({},this.attributes()),{around:this.fragment}))}Ti(){if(this.oldScrollTops)return this.Pi({scrollTops:this.oldScrollTops})}Pi(t){return up.viewport.restoreScroll(Object.assign(Object.assign(Object.assign({},this.attributes()),{around:this.fragment}),t))}}},4281(){var t=this&&this.bt||function(t,e,n,i){return new(n||(n=Promise))(function(r,s){function o(t){try{a(i.next(t))}catch(t){s(t)}}function u(t){try{a(i.throw(t))}catch(t){s(t)}}function a(t){var e;t.done?r(t.value):(e=t.value,e instanceof n?e:new n(function(t){t(e)})).then(o,u)}a((i=i.apply(t,e||[])).next())})};const e=up.util;up.HelloFragment=class HelloFragment{constructor(t,e,n,{layer:i,data:r,dataRoot:s,dataMap:o,meta:u,insertedEvent:a}){var c,l,h;i||(i=up.layer.get(t)||up.layer.current),this.Ae=t,this.Li=e,this.Ai=n,this.I=i,this.Di=r,this.$i=s||t,this.Mi=o,this.Hi=[],this.Ni=null==a||a,u||(u={}),null!==(c=u.layer)&&void 0!==c||(u.layer=i),null!==(l=u.ok)&&void 0!==l||(u.ok=!0),null!==(h=u.revalidating)&&void 0!==h||(u.revalidating=!1),this.Bi=u}run(){return t(this,void 0,void 0,function*(){return up.puts("up.hello()","Compiling fragment %o",this.Ae),this.Ii(),this.qi(this.Li),this.Ui(),this.qi(this.Ai),this.zi(),yield Promise.all(this.Hi),this.Ae})}Ui(){up.emit(this.Ae,"up:compilers:before",{log:!1})}zi(){this.Ni&&up.fragment.emitInserted(this.Ae,this.Bi)}Ii(){if(this.Di&&(this.$i.upCompileData=this.Di),this.Mi)for(let t in this.Mi)for(let e of this.Vi(t))e.upCompileData=this.Mi[t]}qi(t){this.I.asCurrent(()=>{for(let e of t)this.Ki(e)})}Ki(t){var e,n;const i=this.Xi(t);if(i.length){if(t.isDefault||up.puts("up.hello()",'Compiling %d× "%s" on %s',i.length,t.selector,this.I),t.batch)this.Wi(t,i);else for(let e of i)this.Gi(t,e);null===(n=(e=up.migrate).postCompile)||void 0===n||n.call(e,i,t)}}Gi(t,e){const n=[e];if(1!==t.length){const t=up.script.data(e);n.push(t,this.Bi)}this.Ji(t,e,n,t=>up.destructor(e,t))}Wi(t,n){const i=[n];if(1!==t.length){const t=e.map(n,up.script.data);i.push(t,this.Bi)}this.Ji(t,n,i,()=>this.Qi(t))}Ji(n,i,r,s){return t(this,void 0,void 0,function*(){let t=up.error.guard(()=>n.apply(i,r));if(e.isPromise(t)){let e=up.error.guardPromise(t);this.Hi.push(e),t=yield e}t&&s(t)})}Qi(t){let e=new up.Error(["Batch compiler (%s) cannot return a destructor",t.selector]);reportError(e)}Vi(t){return up.fragment.subtree(this.Ae,e.evalOption(t),{layer:this.I})}Xi(t){let n=this.Vi(t.selector);return t.rerun||(n=e.filter(n,e=>{let n=e.upAppliedCompilers||(e.upAppliedCompilers=new Set);if(!n.has(t))return n.add(t),!0})),n}}},7687(){const t=up.element,e=up.util;up.Layer=class Layer extends up.Record{keys(){return["element","stack","history","mode","context","lastScrollTops","lastFocusCapsules"]}defaults(){return{context:{},lastScrollTops:up.viewport.newStateCache(),lastFocusCapsules:up.viewport.newStateCache()}}constructor(t={}){super(t),e.assert(this.mode)}setupHandlers(){up.link.convertClicks(this),this.Yi=up.on("up:location:changed",t=>this.Zi(t))}teardownHandlers(){var t;null===(t=this.Yi)||void 0===t||t.call(this)}mainTargets(){return up.layer.mainTargets(this.mode)}sync(){}accept(){throw new up.NotImplemented}dismiss(){throw new up.NotImplemented}peel(t){this.stack.peel(this,t)}evalOption(t){return e.evalOption(t,this)}isCurrent(){return this.stack.isCurrent(this)}isFront(){return this.stack.isFront(this)}isRoot(){return this.stack.isRoot(this)}isOverlay(){return this.stack.isOverlay(this)}isAlive(){throw new up.NotImplemented}assertAlive(){if(!this.isAlive())throw new up.Aborted("Layer is no longer alive")}get parent(){return this.stack.parentOf(this)}get child(){return this.stack.childOf(this)}get ancestors(){return this.stack.ancestorsOf(this)}get descendants(){return this.stack.descendantsOf(this)}get subtree(){return[this,...this.descendants]}get index(){var t;return null!==(t=this.tr)&&void 0!==t?t:this.tr=this.stack.indexOf(this)}getContentElement(){return this.contentElement||this.element}getBoxElement(){return this.boxElement||this.element}getFocusElement(){return this.getBoxElement()}getFirstSwappableElement(){throw new up.NotImplemented}contains(t){return t.closest(up.layer.anySelector())===this.element}on(...t){return this.er(t).bind()}off(...t){return this.er(t).unbind()}er(t){return up.EventListenerGroup.fromBindArgs(t,{guard:t=>this.nr(t),elements:[this.element],baseLayer:this})}nr(t){return this.contains(t.target)}wasHitByMouseEvent({clientX:t,clientY:e}){const n=document.elementFromPoint(t,e);return!n||this.contains(n)}ir(t){return up.EventEmitter.fromEmitArgs(t,{layer:this})}emit(...t){return this.ir(t).emit()}saveHistory(){e.assert(this.isFront()),this.showsLiveHistory()&&(this.rr=this.title,this.sr=this.metaTags,this.ur=this.location,this.ar=this.lang)}restoreHistory(){this.showsLiveHistory()&&(this.ur&&up.history.push(this.ur),this.rr&&(document.title=this.rr),this.sr&&up.history.updateMetaTags(this.sr),e.isString(this.ar)&&up.history.updateLang(this.ar))}asCurrent(t){return this.stack.asCurrent(this,t)}updateHistory(t){var n,i;e.isString(t.location)&&this.cr(t.location,{push:!0}),up.history.config.updateMetaTags&&e.isList(t.metaTags)&&(null===(i=null===(n=up.migrate)||void 0===n?void 0:n.warnOfHungryMetaTags)||void 0===i||i.call(n,t.metaTags),this.lr(t.metaTags)),e.isString(t.title)&&this.hr(t.title),e.isString(t.lang)&&this.pr(t.lang)}showsLiveHistory(){return this.history&&this.isFront()}Zi({location:t}){this.showsLiveHistory()&&this.cr(t,{push:!1})}get title(){return this.showsLiveHistory()?document.title:this.rr}hr(t){this.rr=t,this.showsLiveHistory()&&(document.title=t)}get metaTags(){return this.showsLiveHistory()?up.history.findMetaTags():this.sr}lr(t){this.sr=t,this.showsLiveHistory()&&up.history.updateMetaTags(t)}get lang(){return this.showsLiveHistory()?up.history.getLang():this.ar}pr(t){this.ar=t,this.showsLiveHistory()&&up.history.updateLang(t)}get location(){return this.showsLiveHistory()?up.history.location:this.ur}cr(t,{push:e}){let n=this.ur,i=up.history.location;this.ur=t,t!==i&&this.showsLiveHistory()&&e&&up.history.push(t),t!==n&&"opening"!==this.state&&this.emit("up:layer:location:changed",{location:t,previousLocation:n,log:!1})}selector(t){return this.constructor.selector(t)}static selector(t){throw new up.NotImplemented}toString(){throw new up.NotImplemented}affix(...e){return t.affix(this.getFirstSwappableElement(),...e)}[e.isEqual.key](t){return this.constructor===t.constructor&&this.element===t.element}hasFocus(){let t=document.activeElement;return t!==document.body&&this.element.contains(t)}reset(){Object.assign(this,this.defaults())}}},3383(){var t;up.Layer.Cover=((t=class Cover extends up.Layer.OverlayWithViewport{}).mode="cover",t)},8268(){var t;up.Layer.Drawer=((t=class Drawer extends up.Layer.OverlayWithViewport{}).mode="drawer",t)},2009(){var t;up.Layer.Modal=((t=class Modal extends up.Layer.OverlayWithViewport{}).mode="modal",t)},7304(){var t;const e=up.element,n=up.util;up.Layer.Overlay=((t=class Overlay extends up.Layer{keys(){return[...super.keys(),...this.constructor.VISUAL_KEYS,"onOpened","onAccept","onAccepted","onDismiss","onDismissed","acceptEvent","dismissEvent","acceptLocation","dismissLocation","acceptFragment","dismissFragment"]}constructor(t){super(t),this.state="opening",!0===this.dismissible?this.dismissible=["button","key","outside"]:!1===t