var ne=Object.defineProperty;var w=(t,e,n)=>()=>{if(n)throw n[0];try{return t&&(e=t(t=0)),e}catch(r){throw n=[r],r}};var re=(t,e)=>{for(var n in e)ne(t,n,{get:e[n],enumerable:!0})};function st(){for(let t of at)document.querySelectorAll(`[data-r-portal-slot="${CSS.escape(t)}"]`).forEach(e=>e.remove());at=W,W=new Set}function D(t){return document.getElementById(t)??document.querySelector(`[data-r-portal-target="${CSS.escape(t)}"]`)}function j(t){let e=it.get(t);return e||(e=`p${++oe}`,it.set(t,e)),W.add(e),e}function U(t,e){t.querySelectorAll(`[data-r-portal-slot="${CSS.escape(e)}"]`).forEach(n=>n.remove())}function ct(t,e,n){U(e,n);let r=document.createElement("div");r.dataset.rPortalSlot=n,r.appendChild(t.content.cloneNode(!0)),e.appendChild(r)}function lt(t){t.querySelectorAll("template[data-r-portal]").forEach(e=>{let n=e.closest("[data-r-show-if]");if(n?.closest("resuma-show")?.dataset.rPortalTarget||n?.hidden)return;let r=e.getAttribute("data-r-portal");if(!r)return;let o=D(r);o&&ct(e,o,j(e))})}function ut(t,e,n){let r=t.querySelector("template[data-r-portal]");r&&ct(r,e,n)}var oe,it,W,at,V=w(()=>{"use strict";oe=0,it=new WeakMap,W=new Set,at=new Set});function p(t){B.push(t)}function dt(){for(;B.length;){let t=B.pop();try{t?.()}catch{}}}var B,E=w(()=>{"use strict";B=[]});function wt(t){let e=new Map;for(let n of t){let r=b(n.id);e.set(r,ie(r,n.value))}return e}function b(t){return typeof t=="string"?t:typeof t=="number"?`s${t}`:`s${t[0]}`}function ie(t,e){let n=e,r=new Set,o={id:t,get value(){return n},set value(i){o.set(i)},set(i){Object.is(i,n)||(n=i,r.forEach(a=>a(n)))},update(i){let a=i(n);a!==void 0&&o.set(a)},subscribe(i){return r.add(i),()=>r.delete(i)}};return o}function A(t,e){t.querySelectorAll(ae.toLowerCase()).forEach(r=>{if(ft.has(r))return;let o=r.getAttribute("data-r-signal");if(!o)return;let i=e.get(o);i&&(r.textContent=T(i.value),p(i.subscribe(a=>{r.textContent=T(a)})),ft.add(r))})}function x(t,e){t.querySelectorAll("[data-r-bind]").forEach(r=>bt(r,e)),se(t,e)}function se(t,e){let n=document.createTreeWalker(t,NodeFilter.SHOW_ELEMENT),r=n.currentNode;for(;r;)r instanceof HTMLElement&&bt(r,e),r=n.nextNode()}function ce(t){let e=t.toLowerCase();return e.startsWith("on")||e==="style"}function ue(t){let e=t.replace(/[\u0000-\u0020]+/g,"");return/^(?:javascript|vbscript|data):/i.test(e)?"":t}function bt(t,e){if(gt.has(t))return;let n=!1;for(let r of Array.from(t.attributes)){let o=r.name;if(!o.startsWith("data-r-bind:"))continue;let i=o.slice(12);if(ce(i))continue;let[a,s="{}"]=r.value.split("|"),c=e.get(a);if(!c)continue;let u=le.has(i.toLowerCase()),l=g=>{let f=s.replace("{}",T(g));u&&(f=ue(f)),t.setAttribute(i,f)};l(c.value),p(c.subscribe(l)),n=!0}n&>.add(t)}function T(t){if(t==null)return"";if(typeof t=="string")return t;if(typeof t=="number"||typeof t=="boolean")return String(t);try{return JSON.stringify(t)}catch{return String(t)}}function de(t){if(t===void 0)return"";if(typeof t=="string")return t;try{let e=JSON.stringify(t);if(e===void 0)return"";let n=JSON.parse(e);return typeof n=="string"?n:e}catch{return T(t)}}function z(t,e){t.querySelectorAll("resuma-show").forEach(n=>{if(mt.has(n))return;let r=n.getAttribute("data-r-show");if(!r)return;let o=n.getAttribute("data-r-inverted")==="true",i=n.querySelector("[data-r-show-if]"),a=n.querySelector("[data-r-show-else]"),s=e.get(r);if(!s||!i)return;let c=u=>{let l=o?!u:!!u;i.hidden=!l,a&&(a.hidden=l);let g=n.dataset.rPortalTarget,f=i.querySelector("template[data-r-portal]");if(!g&&f&&(g=f.getAttribute("data-r-portal")??void 0,g&&(n.dataset.rPortalTarget=g)),g){let m=D(g);if(m){let d=j(n);l?f&&ut(i,m,d):U(m,d)}}};c(s.value),p(s.subscribe(c)),mt.add(n)})}function K(t){if(t&&typeof t=="object")for(let e of["title","name","label","text"]){let n=t[e];if(typeof n=="string")return n}return T(t)}function yt(t){return t.hasAttribute("data-r-signal")}function fe(t,e){A(t,e),x(t,e)}function ge(t,e,n){if(n){let i=n.cloneNode(!0);return i.setAttribute("data-r-for-key",e),i.removeAttribute("data-r-for-new"),i.querySelectorAll("resuma-dyn").forEach(a=>{yt(a)||(a.textContent=K(t))}),i}let r=document.createElement("div");r.setAttribute("data-r-for-item",""),r.setAttribute("data-r-for-key",e);let o=document.createElement("span");return o.textContent=K(t),r.appendChild(o),r}function me(t,e){t.querySelectorAll("resuma-dyn").forEach(n=>{yt(n)||(n.textContent=K(e))})}function pe(t,e,n){if(e&&t&&typeof t=="object"){let r=t[e];if(r!=null)return String(r)}return String(n)}function he(t,e){let n=new Set;return t.map((r,o)=>{let i=pe(r,e,o);return n.has(i)&&(i=`${i}:${o}`),n.add(i),i})}function G(t,e){t.querySelectorAll("resuma-for").forEach(n=>{if(pt.has(n))return;let r=n.getAttribute("data-r-for");if(!r)return;let o=n.getAttribute("data-r-key"),i=n.querySelector("[data-r-for-list]"),a=e.get(r);if(!a||!i)return;let s=c=>{let u=Array.isArray(c)?c:[],l=new Map;i.querySelectorAll("[data-r-for-item]").forEach(d=>{let h=d.getAttribute("data-r-for-key");h&&l.set(h,d)});let g=document.createDocumentFragment(),f=i.querySelector("[data-r-for-item]:not([data-r-for-new])")??void 0,m=he(u,o);u.forEach((d,h)=>{let S=m[h],v=l.get(S);v?(l.delete(S),me(v,d)):(v=ge(d,S,f),v.setAttribute("data-r-for-new","true")),g.appendChild(v)}),i.replaceChildren(g),l.forEach(d=>d.remove()),fe(i,e)};s(a.value),p(a.subscribe(s)),pt.add(n)})}function J(t,e){t.querySelectorAll("resuma-match").forEach(n=>{if(ht.has(n))return;let r=n.getAttribute("data-r-match");if(!r)return;let o=e.get(r);if(!o)return;let i=n.querySelectorAll("[data-r-match-case]"),a=n.querySelector("[data-r-match-default]"),s=c=>{let u=de(c),l=!1;i.forEach(g=>{let m=(g.getAttribute("data-r-match-when")??"")===u;g.hidden=!m,m&&(l=!0)}),a&&(a.hidden=l)};s(o.value),p(o.subscribe(s)),ht.add(n)})}var ae,ft,gt,mt,pt,ht,le,H=w(()=>{"use strict";V();E();ae="RESUMA-DYN",ft=new WeakSet,gt=new WeakSet,mt=new WeakSet,pt=new WeakSet,ht=new WeakSet;le=new Set(["href","src","action","formaction","xlink:href","poster","background","ping","data"])});function R(){return window.__resuma}function Q(t,e){return`${t}:${e}`}function we(t,e,n){let r=t==="handler"?`/_resuma/handler/${encodeURIComponent(e)}.js`:`/_resuma/island-chunk/${encodeURIComponent(e)}.js`;return n?`${r}?v=${encodeURIComponent(n)}`:r}function be(t,e){return e?R().chunkDigests?.[t]||String(Date.now()):R().chunkDigests?.[t]}function ye(t,e){Z([...t].map(n=>({kind:"handler",chunk:n})),e)}function Z(t,e,n){Y++;for(let{kind:r,chunk:o}of t){if(!o)continue;(r==="handler"?e:n)?.delete(o);let a=Q(r,o);M.delete(a),M.delete(`${a}:bust`)}}async function k(t,e,n=!1){let r=R(),o=t==="handler"?r.loaded:r.islandLoaded,i=n?`${Q(t,e)}:bust`:Q(t,e),a=Y,s=be(e,n);if(!n){let l=o.get(e);if(l)return l}let c=M.get(i);c||(c=import(we(t,e,s)),M.set(i,c),c.finally(()=>M.delete(i)));let u=await c;if(a!==Y)return k(t,e,!0);if(!n){let l=o.get(e);if(l)return l}return o.set(e,u),u}function tt(t){R().loaded.has(t)||k("handler",t).catch(()=>{})}function kt(t){for(let e of t)e&&k("handler",e,!0).catch(()=>{})}function St(t){for(let e of t)e&&k("island",e,!0).catch(()=>{})}function Et(){X.clear()}async function Tt(t){return k("island",t)}async function Mt(t,e){if(e){let c=X.get(e);return c||(c=vt(e),X.set(e,c)),c}let n=t.indexOf("#"),r=n===-1?t:t.slice(0,n),o=n===-1?t:t.slice(n+1),i=R();if(r==="__page__"){let c=i.handlers[r]?.[o];if(c)return vt(c)}let a=await k("handler",r),s=a[o];if(s||(ye([r]),a=await k("handler",r,!0),s=a[o]),!s)throw new Error(`handler ${o} missing in ${r}`);return s}function vt(t){let e=t.trim(),r=e.startsWith("(")||e.startsWith("function")||e.startsWith("async")?`return (${t});`:`return (async (event, state, __resuma) => { ${t} });`;return new Function(r)()}var X,M,Y,C=w(()=>{"use strict";X=new Map,M=new Map,Y=0});function et(t,e){let n=t.querySelectorAll(ve),r=[];n.forEach(o=>{let i=o.getAttribute("data-r-chunk");if(!i)return;if((o.getAttribute("data-r-load")??"eager")==="visible"&&"IntersectionObserver"in window){let s=new IntersectionObserver((c,u)=>{for(let l of c)l.isIntersecting&&(u.unobserve(l.target),Rt(o,i,e))},{rootMargin:"100px"});r.push(s),s.observe(o);return}Rt(o,i,e)}),r.length&&p(()=>{for(let o of r)o.disconnect()})}async function Rt(t,e,n){let r=t.getAttribute("data-r-props")??"{}",o={};try{o=JSON.parse(r)}catch{}await ke(e,o,t,n)}async function ke(t,e,n,r){if(n.dataset.rHydrated!=="true")try{let o=await Tt(t);typeof o.resume=="function"&&(o.resume(e,r,n),n.dataset.rHydrated="true")}catch(o){console.debug("[r] island static",t,o)}}var ve,Ct=w(()=>{"use strict";C();E();ve="resuma-island"});function Se(t,e,n){let r=Object.create(n.state);if(!t)return r;for(let[o,i]of Object.entries(t)){let a=e.get(b(i));a&&(r[o]=a)}return r}function Lt(){for(;L.length;){let t=L.pop();try{t?.()}catch{}}}function At(t,e,n){for(let r of t)try{let o=Se(r.captures,e,n),i=new Function(`return (${r.body});`)();if(r.kind==="debounce"){let s=i(o,n);typeof s=="function"&&L.push(s)}else{let s=r.target!=null?e.get(b(r.target)):void 0,c=()=>{try{let f=i(o,n);s&&f!==void 0&&s.set(f)}catch(f){console.error("[r] effect",r.id,f)}},u,l=()=>{let f=r.debounce_ms;if(f!=null&&f>0){u!==void 0&&clearTimeout(u),u=setTimeout(c,f);return}c()};l(),L.push(()=>{u!==void 0&&clearTimeout(u)});let g=new Set;for(let f of r.deps)g.add(b(f));if(r.captures)for(let f of Object.values(r.captures))g.add(b(f));for(let f of g){let d=e.get(f)?.subscribe(()=>l());d&&L.push(d)}}}catch(o){console.error("[r] effect init",r.id,o)}}var L,xt=w(()=>{"use strict";H();L=[]});function _t(t,e){e.querySelectorAll(`[${Ht}]`).forEach(o=>o.remove());let n=[...new Set(t.filter(Boolean))];if(!n.length)return;if(!("IntersectionObserver"in window)){for(let o of n)tt(o);return}let r=new IntersectionObserver((o,i)=>{for(let a of o){if(!a.isIntersecting)continue;let s=a.target.dataset.rChunk;s&&tt(s),i.unobserve(a.target)}},{rootMargin:"120px"});p(()=>r.disconnect());for(let o of e.querySelectorAll("resuma-boundary[data-r-chunk]"))r.observe(o);for(let o of n){let i=document.createElement("resuma-boundary");i.hidden=!0,i.dataset.rChunk=o,i.setAttribute(Ht,"true"),e.appendChild(i),r.observe(i)}}var Ht,It=w(()=>{"use strict";E();C();Ht="data-r-lazy-chunk-marker"});var _=w(()=>{"use strict"});async function Ee(t){if(!(!t||nt.has(t))&&!(t.startsWith("http")&&!t.startsWith(location.origin))){nt.add(t);try{let e=await fetch(t,{headers:{Accept:"text/html"},credentials:"same-origin",cache:"no-store"});e.ok&&I.set(t,await e.text())}catch{}finally{nt.delete(t)}}}function qt(t){rt=t}function Nt(){return document.getElementById($t)??document.body}function Te(t){try{return new URL(t,location.origin).origin===location.origin}catch{return!1}}function Wt(t,e,n=!1){if(n){if(t===e)return!0;let a="http://resuma.local",s=new URL(t,a),c=new URL(e,a);return s.search?s.pathname+s.search===c.pathname+c.search:s.pathname===c.pathname}if(t===e)return!0;let r="http://resuma.local",o=new URL(t,r),i=new URL(e,r);if(o.search)return o.pathname+o.search===i.pathname+i.search;if(o.pathname===i.pathname)return!0;if(o.pathname!=="/"&&i.pathname.startsWith(o.pathname)){let a=i.pathname.charCodeAt(o.pathname.length);return a===void 0||a===47}return!1}function Ot(t,e,n,r){let o=t.getAttribute("data-r-base-class");o||(o=t.className.split(/\s+/).filter(i=>i&&i!==n).join(" "),o||(o=t.className),t.setAttribute("data-r-base-class",o)),t.className=r?`${o} ${n}`.trim():o,r?t.setAttribute("aria-current","page"):t.removeAttribute("aria-current")}function Me(t,e){let n=null,r=-1;for(let o of t){let i=o.getAttribute("href");if(!i)continue;let a=o.hasAttribute("data-r-nav-exact");Wt(i,e,a)&&i.length>r&&(n=o,r=i.length)}return n}function P(t){let e=[...document.querySelectorAll("a[data-r-nav]")],n=new Set;for(let o of document.querySelectorAll("[data-r-nav-exclusive]"))n.add(o);let r=new Set;for(let o of n){let i=e.filter(s=>o.contains(s)),a=Me(i,t);for(let s of i){let c=s.getAttribute("data-r-active-class");c&&(Ot(s,t,c,s===a),r.add(s))}}for(let o of e){if(r.has(o))continue;let i=o.getAttribute("href");if(!i)continue;let a=o.getAttribute("data-r-active-class");if(!a)continue;let s=o.hasAttribute("data-r-nav-exact");Ot(o,t,a,Wt(i,t,s))}}async function Re(){if(!window.__resuma){window.location.reload();return}if(rt){rt(),P(location.pathname+location.search);return}try{(await Promise.resolve().then(()=>(Bt(),Vt))).mountPage(),P(location.pathname+location.search)}catch{window.location.reload()}}function Ce(){let t=Nt(),e=t.querySelector("[autofocus]")??t.querySelector("h1, [role='heading'], main")??t;e.hasAttribute("tabindex")||e.setAttribute("tabindex","-1");try{e.focus({preventScroll:!0})}catch{e.focus()}}function F(t,e){let n=new URL(t,location.origin);if(e)for(let[r,o]of Object.entries(e))o!=null&&o!==""&&n.searchParams.set(r,o);return n.pathname+n.search}async function Dt(t,e){I.clear();let n=t?.split("?")[0]??location.pathname,r=String(Date.now());await y(F(n,{...e,_r:r}))}async function Le(t,e,n,r){if(r!==O)return;let o=new DOMParser().parseFromString(e,"text/html"),i=o.getElementById($t),a=o.getElementById(Pt);if(!i||!a?.textContent){window.location.href=t;return}Nt().innerHTML=i.innerHTML;let s=document.getElementById(Pt);s&&(s.textContent=a.textContent),o.title&&(document.title=o.title),n&&history.pushState({resumaNav:!0},"",t),await Re(),n&&window.scrollTo(0,0),Ce(),document.dispatchEvent(new CustomEvent("resuma:navigate",{detail:{href:t}}))}async function Ae(t,e,n,r){let o=I.get(t);if(o)I.delete(t);else{let i=await fetch(t,{headers:{Accept:"text/html"},credentials:"same-origin",cache:"no-store",signal:r});if(n!==O)return;if(!i.ok){window.location.href=t;return}o=await i.text()}n===O&&await Le(t,o,e,n)}async function y(t,e=!0){if(!Te(t)){window.location.assign(t);return}let n=++O;Ft?.abort();let r=new AbortController;Ft=r;let o=async()=>{try{await Ae(t,e,n,r.signal)}catch(a){if(a instanceof DOMException&&a.name==="AbortError")return;console.error("[r] nav",a),window.location.href=t}},i=document;if(i.startViewTransition)try{await i.startViewTransition(o).finished}catch{await o()}else await o()}function $(t){if(t.startsWith("/")&&!t.startsWith("//")){y(t);return}try{let e=new URL(t,location.origin);if(e.origin===location.origin&&(e.protocol==="http:"||e.protocol==="https:")){y(e.pathname+e.search+e.hash);return}}catch{}console.warn("[r] bad redirect",t)}function xe(t,e){if(e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||t.target&&t.target!=="_self")return!1;let n=t.getAttribute("href");if(!n||n.startsWith("#")||n.startsWith("javascript:"))return!1;if(n.startsWith("http://")||n.startsWith("https://"))try{return new URL(n).origin===location.origin}catch{return!1}return!0}function jt(){document.addEventListener("mouseenter",t=>{let e=t.target;if(!(e instanceof Element))return;let r=e.closest("a[data-r-nav]")?.getAttribute("href");r&&Ee(r)},!0),document.addEventListener("click",t=>{let e=t.target;if(!(e instanceof Element))return;let n=e.closest("a[data-r-nav]");if(!n||!xe(n,t))return;let r=n.getAttribute("href");r&&(t.preventDefault(),y(r))}),window.addEventListener("popstate",()=>{y(location.pathname+location.search,!1)})}var $t,Pt,I,nt,rt,O,Ft,Ut=w(()=>{"use strict";_();$t="resuma-root",Pt="resuma-state",I=new Map,nt=new Set;rt=null;O=0,Ft=null});function He(t){return typeof t=="string"?{body:t}:t}function _e(t,e,n){let r=Object.create(n);if(!t)return r;for(let[o,i]of Object.entries(t)){let a=e.get(b(i));a&&(r[o]=a)}return r}function Kt(t,e,n,r){let o=Object.entries(t).map(([c,u])=>[c,He(u)]);if(!o.length)return;let i=async(c,u)=>{try{let l=u.body.trim();l.endsWith(")()")&&(l=l.slice(0,-2));let g=_e(u.captures,e,n),f=new Function("state","__resuma",`return (${l})(state, __resuma);`),m=await Promise.resolve(f(g,window.__resuma));typeof m=="function"&&p(m)}catch(l){console.error("[r] task",c,l)}},a=new Set(o.map(([c])=>c)),s=(c,u)=>{a.has(c)&&(a.delete(c),i(c,u))};if("IntersectionObserver"in window){let c=new IntersectionObserver((u,l)=>{for(let g of u){if(!g.isIntersecting)continue;let f=g.target.dataset.rVisibleTask,m=f?o.find(([d])=>d===f)?.[1]:void 0;f&&m&&s(f,m),l.unobserve(g.target)}},{rootMargin:"50px"});p(()=>c.disconnect()),r().querySelectorAll("[data-r-visible-task]").forEach(u=>u.remove());for(let[u]of o){let l=document.createElement("span");l.dataset.rVisibleTask=u,l.className="r-visible-task-marker",l.setAttribute("aria-hidden","true"),r().appendChild(l),c.observe(l)}}else for(let[c,u]of o)s(c,u)}var zt=w(()=>{"use strict";_();H();E()});var Vt={};re(Vt,{bootstrap:()=>qe,buildLocalState:()=>Zt,mountFlowWidgets:()=>Pe,mountPage:()=>ot,mutationHeaders:()=>q,runHandler:()=>Ne,showActionFieldErrors:()=>Ge});function Ie(t){return t instanceof Document||t instanceof Element?!!t.querySelector(Gt):!1}async function Yt(t){if(Ie(t))try{(await import("/_resuma/flow.js?v=1.3.0")).initFlowWidgets(t)}catch(e){console.error("[r] flow load",e)}}function Pe(t=document){Yt(t)}function Fe(){let t=document.getElementById(Qt);if(!t?.textContent)return"";try{return JSON.parse(t.textContent).csrf_token??""}catch{return""}}function q(t={}){let e={...t},n=Fe();return n&&(e["x-resuma-csrf"]=n),e}function $e(){let t=document.getElementById(Qt);if(!t||!t.textContent)return{signals:[],handlers:{},islands:[],actions:[]};try{let e=JSON.parse(t.textContent);return e.serialization_error&&console.error("[r] resumability payload failed to serialize on the server \u2014 page interactivity is broken"),e}catch(e){return console.error("[r] state",e),{signals:[],handlers:{},islands:[],actions:[]}}}function ot(){Lt(),dt(),st();let t=$e(),e=wt(t.signals),n={};for(let[d,h]of e)n[d]=h;let r=window.__resuma,o=r?.loaded??new Map,i=r?.islandLoaded??new Map,a=r?.chunkDigests??{},s=t.chunk_digests??{},c=new Set(t.lazy_chunks??[]),u=new Set(t.islands??[]);for(let d of document.querySelectorAll("[data-r-on\\:click], [data-r-on\\:submit], [data-r-on\\:input], [data-r-on\\:change]"))for(let h of d.attributes){if(!h.name.startsWith("data-r-on:"))continue;let S=h.value,v=S.indexOf("#");if(v===-1)continue;let N=S.slice(0,v);N&&N!=="__page__"&&c.add(N)}let l=Jt();for(let d of l.querySelectorAll("resuma-island[data-r-chunk]")){let h=d.getAttribute("data-r-chunk");h&&u.add(h),delete d.dataset.rHydrated}let g=[];for(let d of c)(!s[d]||a[d]!==s[d])&&g.push(d);let f=[];for(let d of u)(!s[d]||a[d]!==s[d])&&f.push(d);(g.length||f.length)&&Z([...g.map(d=>({kind:"handler",chunk:d})),...f.map(d=>({kind:"island",chunk:d}))],o,i),Et();let m={state:n,signals:e,handlers:t.handlers,contexts:t.contexts??{},loaded:o,islandLoaded:i,chunkDigests:s,action:Ke,safeAction:ze,refreshIsland:ee,context:d=>m.contexts[d],navigate:y,buildUrl:F,invalidate:Dt};window.__resuma=m,c.size&&kt(c),u.size&&St(u),A(l,e),x(l,e),z(l,e),G(l,e),J(l,e),et(l,e),Ue(l),lt(l),Be(l),Yt(l),Kt(t.visible_tasks??{},e,n,Jt),At(t.effects??[],e,m),_t(t.lazy_chunks??[],l)}async function qe(){Xt||(Xt=!0,qt(ot),ot(),We(),je(),jt(),P(location.pathname+location.search),Je())}function Zt(t){let e=window.__resuma;if(!t.length)return e.state;let n={};for(let r of t){let o=r.indexOf(":"),i=o===-1?r:r.slice(0,o),a=o===-1?void 0:r.slice(o+1),s=a!=null?b(a):i,c=e.signals.get(s);c&&(n[i]=c)}return Object.assign(Object.create(e.state),n)}async function Ne(t,e,n,r){let o=await Mt(t,e),i=Zt(r);await o(n,i,window.__resuma)}function We(){document.addEventListener("submit",async t=>{if(!(t.target instanceof HTMLFormElement))return;let e=t.target;if(!e.getAttribute("data-r-submit"))return;t.preventDefault();let n=e.getAttribute("data-r-submit"),r=new FormData(e),o={};r.forEach((a,s)=>{o[s]=String(a)});let i=new URLSearchParams(o);try{let a=await fetch(e.action||`/_resuma/submit/${encodeURIComponent(n)}`,{method:"POST",credentials:"same-origin",headers:q({"content-type":"application/x-www-form-urlencoded",accept:"application/json"}),body:i.toString()}),s=await a.json();if(!a.ok||s.ok===!1){De(e,s.field_errors??{}),(a.status>=500||!s.field_errors)&&console.error("[r] submit",s.error??n);return}te(e),s.redirect&&$(s.redirect)}catch(a){console.error("[r] submit",a)}},!0)}function De(t,e){te(t);for(let[n,r]of Object.entries(e)){let o=t.querySelector(`[name="${CSS.escape(n)}"]`);if(!o)continue;let i=document.createElement("span");i.className="resuma-field-error",i.setAttribute("data-r-field-error",n),i.textContent=r,o.insertAdjacentElement("afterend",i)}}function te(t){t.querySelectorAll("[data-r-field-error]").forEach(e=>e.remove())}function je(){document.addEventListener("submit",t=>{if(!(t.target instanceof HTMLFormElement))return;let e=t.target;if(!e.hasAttribute("data-r-loader-refresh")||e.getAttribute("data-r-on:submit")||e.querySelector("[data-r-on\\:submit]"))return;t.preventDefault();let n=new FormData(e),r={};n.forEach((i,a)=>{let s=String(i);s&&(r[a]=s)});let o=e.getAttribute("action")||location.pathname;window.__resuma?.navigate(F(o,r))},!0)}function Ue(t){t.querySelectorAll("template[data-r-stream-chunk]").forEach(e=>{let n=e.getAttribute("data-r-stream-chunk");if(!n)return;let r=t.querySelector(`template[data-r-stream="${n}"]`);if(!r||!r.parentElement)return;let o=e.innerHTML,i=document.createRange().createContextualFragment(o);r.replaceWith(i),e.remove()})}function Ve(t){if(t.startsWith("/")&&!t.startsWith("//")){y(t);return}try{let e=new URL(t,location.origin);if(e.origin===location.origin&&(e.protocol==="http:"||e.protocol==="https:")){y(e.pathname+e.search+e.hash);return}}catch{}window.location.assign(t)}function Be(t){t.querySelectorAll("[data-r-vt]").forEach(e=>{e.addEventListener("click",n=>{let r=n.target?.closest("a[href]");if(!r||r.getAttribute("target")==="_blank")return;let o=r.getAttribute("href");!o||o.startsWith("#")||o.startsWith("javascript:")||r.hasAttribute("data-r-nav")||(n.preventDefault(),Ve(o))})})}async function Ke(t,e){let n=await fetch(`/_resuma/action/${encodeURIComponent(t)}`,{method:"POST",credentials:"same-origin",headers:q({"content-type":"application/json"}),body:JSON.stringify({args:e})}),r;try{r=await n.json()}catch{throw n.ok?new Error(`action ${t}: invalid response`):new Error(`action ${t}: ${n.status}`)}if(!n.ok||r.ok===!1)throw new Error(r.error??`action ${t}: ${n.status}`);return r.redirect&&$(r.redirect),r.value}async function ze(t,e){try{let n=await fetch(`/_resuma/action/${encodeURIComponent(t)}`,{method:"POST",credentials:"same-origin",headers:q({"content-type":"application/json"}),body:JSON.stringify({args:e})}),r;try{r=await n.json()}catch{return{ok:!1,error:`action ${t}: ${n.status}`}}return!n.ok||r.ok===!1?{ok:!1,error:r.error??`action ${t}: ${n.status}`,field_errors:r.field_errors}:(r.redirect&&$(r.redirect),{ok:!0,value:r.value})}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}function Ge(t,e){t.querySelectorAll("[data-r-field-error]").forEach(n=>n.remove());for(let[n,r]of Object.entries(e)){let o=t.querySelector(`[name="${CSS.escape(n)}"]`);if(!o)continue;let i=document.createElement("span");i.className="resuma-field-error",i.setAttribute("data-r-field-error",n),i.textContent=r,o.insertAdjacentElement("afterend",i)}}async function ee(t){let e=await fetch(`/_resuma/island/${encodeURIComponent(t)}`);if(!e.ok)return;let n=await e.text(),r=document.querySelector(`resuma-island[data-r-instance="${t}"]`);if(!r)return;r.outerHTML=n;let o=document.querySelector(`resuma-island[data-r-instance="${CSS.escape(t)}"]`),i=window.__resuma?.signals;!o||!i||(A(o,i),x(o,i),z(o,i),G(o,i),J(o,i),et(o,i))}function Je(){if(!window.__resumaDev||typeof WebSocket>"u")return;let t=location.protocol==="https:"?"wss":"ws",e=!1,n=()=>{let r=new WebSocket(`${t}://${location.host}/_resuma/dev/ws`);r.addEventListener("open",()=>{if(e){location.reload();return}e=!0}),r.addEventListener("message",o=>{let i=String(o.data);if(i==="reload"){location.reload();return}i.startsWith("island:")&&ee(i.slice(7))}),r.addEventListener("close",()=>{setTimeout(n,500)}),r.addEventListener("error",()=>{r.close()})};n()}var Gt,Qt,Oe,Jt,Xt,Bt=w(()=>{H();Ct();xt();It();C();C();Ut();zt();E();V();_();Gt="[data-r-flow-dashboard], [data-r-flow-graph], [data-r-event-stream], [data-r-worker-panel]";Qt="resuma-state",Oe="resuma-root";Jt=()=>document.getElementById(Oe)??document.body;Xt=!1});Bt();export{qe as bootstrap,Zt as buildLocalState,Pe as mountFlowWidgets,ot as mountPage,q as mutationHeaders,Ne as runHandler,Ge as showActionFieldErrors};