mirror of
https://github.com/samvallad33/vestige.git
synced 2026-07-24 23:41:01 +02:00
Turn all 17 sparse organs from text-on-black voids into full-bleed, moving, bioluminescent WebGPU fields. Each cell maps to a real backend fact; verified live on the real brain with a decoded fill% + motion + zero-error probe. Foundation: one reusable LivingFieldPass (src/lib/observatory/field/) does splat -> separable-blur (render passes) -> membrane base coat -> HDR cells with orbital drift and a CPU pick-mirror. Each organ writes a ~20-line data->cells mapper (cell-layout.ts: layoutGalaxy / layoutRings / FIELD_HUE). Organs brought alive (fill% before -> after, all zero WebGPU errors): stats 0.8->80.9, observatory 10.8->81.4, graph 12.3->82.4, memories ->78.4, blackbox 18.2->83.3, contradictions 1.6->69.6, dreams 0.3->64.5, settings 2.7->76.4, reasoning 2.7->39.2, patterns 7.1->45.6, activation 10->64.9, feed ->89, explore ->83.3, intentions ->66.6, importance ->73.7, memory-prs ->74.4, schedule ->37.1. Backend surfaces: add api.memoryChangelog() + ChangelogResponse; surface suppress/unsuppress on the memories field (shift/alt-click -> scar). Tests: palace-launch-gate now asserts fillPct>30 + isAnimating (not just non-black), with a longer settle for reasoning's deep_reference and a raised timeout for the curated tour. all-routes-smoke treats settings as the WebGPU field it now is. Gates green: check 0/0, build ok, palace-launch-gate 22/22 + tour, all-routes-smoke 20/20. Protected work untouched: MemoryCinema, graph/cinema, observatory scene shaders, node-renderer, palace-map. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 line
21 KiB
JavaScript
1 line
21 KiB
JavaScript
import{i as ne,w as re}from"./DAau0uzT.js";import{c as oe,H as C,N as q,r as ot,i as wt,b as L,s as j,p as k,n as ht,f as Dt,g as dt,a as J,d as lt,S as vt,P as qt,e as se,h as ie,o as Kt,j as K,k as ce,l as Ft,m as le,q as fe,t as Mt,u as Tt,v as ue}from"./DY7cP31Q.js";import{x as X,y as he,be as de}from"./CGq8RnJq.js";class yt{constructor(a,e){this.status=a,typeof e=="string"?this.body={message:e}:e?this.body=e:this.body={message:`Error: ${a}`}}toString(){return JSON.stringify(this.body)}}class Et{constructor(a,e){this.status=a,this.location=e}}class bt extends Error{constructor(a,e,r){super(r),this.status=a,this.text=e}}const pe=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/;function ge(t){const a=[];return{pattern:t==="/"?/^\/$/:new RegExp(`^${_e(t).map(r=>{const n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(r);if(n)return a.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),"(?:/([^]*))?";const o=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(r);if(o)return a.push({name:o[1],matcher:o[2],optional:!0,rest:!1,chained:!0}),"(?:/([^/]+))?";if(!r)return;const s=r.split(/\[(.+?)\](?!\])/);return"/"+s.map((c,l)=>{if(l%2){if(c.startsWith("x+"))return ft(String.fromCharCode(parseInt(c.slice(2),16)));if(c.startsWith("u+"))return ft(String.fromCharCode(...c.slice(2).split("-").map(_=>parseInt(_,16))));const h=pe.exec(c),[,u,w,f,d]=h;return a.push({name:f,matcher:d,optional:!!u,rest:!!w,chained:w?l===1&&s[0]==="":!1}),w?"([^]*?)":u?"([^/]*)?":"([^/]+?)"}return ft(c)}).join("")}).join("")}/?$`),params:a}}function me(t){return t!==""&&!/^\([^)]+\)$/.test(t)}function _e(t){return t.slice(1).split("/").filter(me)}function we(t,a,e){const r={},n=t.slice(1),o=n.filter(i=>i!==void 0);let s=0;for(let i=0;i<a.length;i+=1){const c=a[i];let l=n[i-s];if(c.chained&&c.rest&&s&&(l=n.slice(i-s,i+1).filter(h=>h).join("/"),s=0),l===void 0)if(c.rest)l="";else continue;if(!c.matcher||e[c.matcher](l)){r[c.name]=l;const h=a[i+1],u=n[i+1];h&&!h.rest&&h.optional&&u&&c.chained&&(s=0),!h&&!u&&Object.keys(r).length===o.length&&(s=0);continue}if(c.optional&&c.chained){s++;continue}return}if(!s)return r}function ft(t){return t.normalize().replace(/[[\]]/g,"\\$&").replace(/%/g,"%25").replace(/\//g,"%2[Ff]").replace(/\?/g,"%3[Ff]").replace(/#/g,"%23").replace(/[.*+?^${}()|\\]/g,"\\$&")}function ve({nodes:t,server_loads:a,dictionary:e,matchers:r}){const n=new Set(a);return Object.entries(e).map(([i,[c,l,h]])=>{const{pattern:u,params:w}=ge(i),f={id:i,exec:d=>{const _=u.exec(d);if(_)return we(_,w,r)},errors:[1,...h||[]].map(d=>t[d]),layouts:[0,...l||[]].map(s),leaf:o(c)};return f.errors.length=f.layouts.length=Math.max(f.errors.length,f.layouts.length),f});function o(i){const c=i<0;return c&&(i=~i),[c,t[i]]}function s(i){return i===void 0?i:[n.has(i),t[i]]}}function zt(t,a=JSON.parse){try{return a(sessionStorage[t])}catch{}}function Ot(t,a,e=JSON.stringify){const r=e(a);try{sessionStorage[t]=r}catch{}}function ye(t){return t.filter(a=>a!=null)}function St(t){return t instanceof yt||t instanceof bt?t.status:500}function Ee(t){return t instanceof bt?t.text:"Internal Error"}const{onMount:be}=ne,Se=he??(t=>t()),ke=new Set(["icon","shortcut icon","apple-touch-icon"]),I=zt(Mt)??{},z=zt(Ft)??{},P={url:Tt({}),page:Tt({}),navigating:re(null),updated:oe()};function kt(t){I[t]=j()}function Re(t,a){let e=t+1;for(;I[e];)delete I[e],e+=1;for(e=a+1;z[e];)delete z[e],e+=1}function B(t,a=!1){return a?location.replace(t.href):location.href=t.href,new Promise(()=>{})}async function Bt(){if("serviceWorker"in navigator){const t=await navigator.serviceWorker.getRegistration(L||"/");t&&await t.update()}}function Ct(){}let Rt,pt,Q,U,gt,b;const Z=[],tt=[];let v=null;function mt(){var t;(t=v==null?void 0:v.fork)==null||t.then(a=>a==null?void 0:a.discard()),v=null}const G=new Map,Vt=new Set,Ht=new Set,M=new Set;let m={branch:[],error:null,url:null},Yt=!1,et=!1,jt=!0,V=!1,F=!1,Wt=!1,xt=!1,Lt,y,x,O;const at=new Set,$t=new Map;async function He(t,a,e){var o,s,i,c,l;(o=globalThis.__sveltekit_1vzfo5)!=null&&o.data&&globalThis.__sveltekit_1vzfo5.data,document.URL!==location.href&&(location.href=location.href),b=t,await((i=(s=t.hooks).init)==null?void 0:i.call(s)),Rt=ve(t),U=document.documentElement,gt=a,pt=t.nodes[0],Q=t.nodes[1],pt(),Q(),y=(c=history.state)==null?void 0:c[C],x=(l=history.state)==null?void 0:l[q],y||(y=x=Date.now(),history.replaceState({...history.state,[C]:y,[q]:x},""));const r=I[y];function n(){r&&(history.scrollRestoration="manual",scrollTo(r.x,r.y))}e?(n(),await qe(gt,e)):(await D({type:"enter",url:ot(b.hash?Me(new URL(location.href)):location.href),replace_state:!0}),n()),De()}function xe(){Z.length=0,xt=!1}function Gt(t){tt.some(a=>a==null?void 0:a.snapshot)&&(z[t]=tt.map(a=>{var e;return(e=a==null?void 0:a.snapshot)==null?void 0:e.capture()}))}function Jt(t){var a;(a=z[t])==null||a.forEach((e,r)=>{var n,o;(o=(n=tt[r])==null?void 0:n.snapshot)==null||o.restore(e)})}function Nt(){kt(y),Ot(Mt,I),Gt(x),Ot(Ft,z)}async function Xt(t,a,e,r){let n;a.invalidateAll&&mt(),await D({type:"goto",url:ot(t),keepfocus:a.keepFocus,noscroll:a.noScroll,replace_state:a.replaceState,state:a.state,redirect_count:e,nav_token:r,accept:()=>{a.invalidateAll&&(xt=!0,n=[...$t.keys()]),a.invalidate&&a.invalidate.forEach(Ne)}}),a.invalidateAll&&X().then(X).then(()=>{$t.forEach(({resource:o},s)=>{var i;n!=null&&n.includes(s)&&((i=o.refresh)==null||i.call(o))})})}async function Le(t){if(t.id!==(v==null?void 0:v.id)){mt();const a={};at.add(a),v={id:t.id,token:a,promise:Zt({...t,preload:a}).then(e=>(at.delete(a),e.type==="loaded"&&e.state.error&&mt(),e)),fork:null}}return v.promise}async function ut(t){var e;const a=(e=await st(t,!1))==null?void 0:e.route;a&&await Promise.all([...a.layouts,a.leaf].filter(Boolean).map(r=>r[1]()))}async function Qt(t,a,e){var n;m=t.state;const r=document.querySelector("style[data-sveltekit]");if(r&&r.remove(),Object.assign(k,t.props.page),Lt=new b.root({target:a,props:{...t.props,stores:P,components:tt},hydrate:e,sync:!1}),await Promise.resolve(),Jt(x),e){const o={from:null,to:{params:m.params,route:{id:((n=m.route)==null?void 0:n.id)??null},url:new URL(location.href),scroll:I[y]??j()},willUnload:!1,type:"enter",complete:Promise.resolve()};M.forEach(s=>s(o))}et=!0}function nt({url:t,params:a,branch:e,status:r,error:n,route:o,form:s}){let i="never";if(L&&(t.pathname===L||t.pathname===L+"/"))i="always";else for(const f of e)(f==null?void 0:f.slash)!==void 0&&(i=f.slash);t.pathname=ie(t.pathname,i),t.search=t.search;const c={type:"loaded",state:{url:t,params:a,branch:e,error:n,route:o},props:{constructors:ye(e).map(f=>f.node.component),page:it(k)}};s!==void 0&&(c.props.form=s);let l={},h=!k,u=0;for(let f=0;f<Math.max(e.length,m.branch.length);f+=1){const d=e[f],_=m.branch[f];(d==null?void 0:d.data)!==(_==null?void 0:_.data)&&(h=!0),d&&(l={...l,...d.data},h&&(c.props[`data_${u}`]=l),u+=1)}return(!m.url||t.href!==m.url.href||m.error!==n||s!==void 0&&s!==k.form||h)&&(c.props.page={error:n,params:a,route:{id:(o==null?void 0:o.id)??null},state:{},status:r,url:new URL(t),form:s??null,data:h?l:k.data}),c}async function Ut({loader:t,parent:a,url:e,params:r,route:n,server_data_node:o}){var l,h;let s=null;const i={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},c=await t();return{node:c,loader:t,server:o,universal:(l=c.universal)!=null&&l.load?{type:"data",data:s,uses:i}:null,data:s??(o==null?void 0:o.data)??null,slash:((h=c.universal)==null?void 0:h.trailingSlash)??(o==null?void 0:o.slash)}}function Ue(t,a,e){let r=t instanceof Request?t.url:t;const n=new URL(r,e);n.origin===e.origin&&(r=n.href.slice(e.origin.length));const o=et?le(r,n.href,a):fe(r,a);return{resolved:n,promise:o}}function Ae(t,a,e,r,n,o){if(xt)return!0;if(!n)return!1;if(n.parent&&t||n.route&&a||n.url&&e)return!0;for(const s of n.search_params)if(r.has(s))return!0;for(const s of n.params)if(o[s]!==m.params[s])return!0;for(const s of n.dependencies)if(Z.some(i=>i(new URL(s))))return!0;return!1}function At(t,a){return(t==null?void 0:t.type)==="data"?t:(t==null?void 0:t.type)==="skip"?a??null:null}function Pe(t,a){if(!t)return new Set(a.searchParams.keys());const e=new Set([...t.searchParams.keys(),...a.searchParams.keys()]);for(const r of e){const n=t.searchParams.getAll(r),o=a.searchParams.getAll(r);n.every(s=>o.includes(s))&&o.every(s=>n.includes(s))&&e.delete(r)}return e}function Ie({error:t,url:a,route:e,params:r}){return{type:"loaded",state:{error:t,url:a,route:e,params:r,branch:[]},props:{page:it(k),constructors:[]}}}async function Zt({id:t,invalidating:a,url:e,params:r,route:n,preload:o}){if((v==null?void 0:v.id)===t)return at.delete(v.token),v.promise;const{errors:s,layouts:i,leaf:c}=n,l=[...i,c];s.forEach(g=>g==null?void 0:g().catch(()=>{})),l.forEach(g=>g==null?void 0:g[1]().catch(()=>{}));const h=m.url?t!==rt(m.url):!1,u=m.route?n.id!==m.route.id:!1,w=Pe(m.url,e);let f=!1;const d=l.map(async(g,p)=>{var A;if(!g)return;const E=m.branch[p];return g[1]===(E==null?void 0:E.loader)&&!Ae(f,u,h,w,(A=E.universal)==null?void 0:A.uses,r)?E:(f=!0,Ut({loader:g[1],url:e,params:r,route:n,parent:async()=>{var Y;const T={};for(let $=0;$<p;$+=1)Object.assign(T,(Y=await d[$])==null?void 0:Y.data);return T},server_data_node:At(g[0]?{type:"skip"}:null,g[0]?E==null?void 0:E.server:void 0)}))});for(const g of d)g.catch(()=>{});const _=[];for(let g=0;g<l.length;g+=1)if(l[g])try{_.push(await d[g])}catch(p){if(p instanceof Et)return{type:"redirect",location:p.location};if(at.has(o))return Ie({error:await H(p,{params:r,url:e,route:{id:n.id}}),url:e,params:r,route:n});let E=St(p),R;if(p instanceof yt)R=p.body;else{if(await P.updated.check())return await Bt(),await B(e);R=await H(p,{params:r,url:e,route:{id:n.id}})}const A=await Te(g,_,s);return A?nt({url:e,params:r,branch:_.slice(0,A.idx).concat(A.node),status:E,error:R,route:n}):await ee(e,{id:n.id},R,E)}else _.push(void 0);return nt({url:e,params:r,branch:_,status:200,error:null,route:n,form:a?void 0:null})}async function Te(t,a,e){for(;t--;)if(e[t]){let r=t;for(;!a[r];)r-=1;try{return{idx:r+1,node:{node:await e[t](),loader:e[t],data:{},server:null,universal:null}}}catch{continue}}}async function Pt({status:t,error:a,url:e,route:r}){const n={};let o=null;try{const s=await Ut({loader:pt,url:e,params:n,route:r,parent:()=>Promise.resolve({}),server_data_node:At(o)}),i={node:await Q(),loader:Q,universal:null,server:null,data:null};return nt({url:e,params:n,branch:[s,i],status:t,error:a,route:null})}catch(s){if(s instanceof Et)return Xt(new URL(s.location,location.href),{},0);throw s}}async function Oe(t){const a=t.href;if(G.has(a))return G.get(a);let e;try{const r=(async()=>{let n=await b.hooks.reroute({url:new URL(t),fetch:async(o,s)=>Ue(o,s,t).promise})??t;if(typeof n=="string"){const o=new URL(t);b.hash?o.hash=n:o.pathname=n,n=o}return n})();G.set(a,r),e=await r}catch{G.delete(a);return}return e}async function st(t,a){if(t&&!wt(t,L,b.hash)){const e=await Oe(t);if(!e)return;const r=Ce(e);for(const n of Rt){const o=n.exec(r);if(o)return{id:rt(t),invalidating:a,route:n,params:se(o),url:t}}}}function Ce(t){return ce(b.hash?t.hash.replace(/^#/,"").replace(/[?#].+/,""):t.pathname.slice(L.length))||"/"}function rt(t){return(b.hash?t.hash.replace(/^#/,""):t.pathname)+t.search}function te({url:t,type:a,intent:e,delta:r,event:n,scroll:o}){let s=!1;const i=It(m,e,t,a,o??null);r!==void 0&&(i.navigation.delta=r),n!==void 0&&(i.navigation.event=n);const c={...i.navigation,cancel:()=>{s=!0,i.reject(new Error("navigation cancelled"))}};return V||Vt.forEach(l=>l(c)),s?null:i}async function D({type:t,url:a,popped:e,keepfocus:r,noscroll:n,replace_state:o,state:s={},redirect_count:i=0,nav_token:c={},accept:l=Ct,block:h=Ct,event:u}){var $;const w=O;O=c;const f=await st(a,!1),d=t==="enter"?It(m,f,a,t):te({url:a,type:t,delta:e==null?void 0:e.delta,intent:f,scroll:e==null?void 0:e.scroll,event:u});if(!d){h(),O===c&&(O=w);return}const _=y,g=x;l(),V=!0,et&&d.navigation.type!=="enter"&&P.navigating.set(ht.current=d.navigation);let p=f&&await Zt(f);if(!p){if(wt(a,L,b.hash))return await B(a,o);p=await ee(a,{id:null},await H(new bt(404,"Not Found",`Not found: ${a.pathname}`),{url:a,params:{},route:{id:null}}),404,o)}if(a=(f==null?void 0:f.url)||a,O!==c)return d.reject(new Error("navigation aborted")),!1;if(p.type==="redirect"){if(i<20){await D({type:t,url:new URL(p.location,a),popped:e,keepfocus:r,noscroll:n,replace_state:o,state:s,redirect_count:i+1,nav_token:c}),d.fulfil(void 0);return}p=await Pt({status:500,error:await H(new Error("Redirect loop"),{url:a,params:{},route:{id:null}}),url:a,route:{id:null}})}else p.props.page.status>=400&&await P.updated.check()&&(await Bt(),await B(a,o));if(xe(),kt(_),Gt(g),p.props.page.url.pathname!==a.pathname&&(a.pathname=p.props.page.url.pathname),s=e?e.state:s,!e){const S=o?0:1,W={[C]:y+=S,[q]:x+=S,[vt]:s};(o?history.replaceState:history.pushState).call(history,W,"",a),o||Re(y,x)}const E=f&&(v==null?void 0:v.id)===f.id?v.fork:null;v=null,p.props.page.state=s;let R;if(et){const S=(await Promise.all(Array.from(Ht,N=>N(d.navigation)))).filter(N=>typeof N=="function");if(S.length>0){let N=function(){S.forEach(ct=>{M.delete(ct)})};S.push(N),S.forEach(ct=>{M.add(ct)})}m=p.state,p.props.page&&(p.props.page.url=a);const W=E&&await E;W?R=W.commit():(Lt.$set(p.props),ue(p.props.page),R=($=de)==null?void 0:$()),Wt=!0}else await Qt(p,gt,!1);const{activeElement:A}=document;await R,await X(),await X();let T=null;if(jt){const S=e?e.scroll:n?j():null;S?scrollTo(S.x,S.y):(T=a.hash&&document.getElementById(ae(a)))?T.scrollIntoView():scrollTo(0,0)}const Y=document.activeElement!==A&&document.activeElement!==document.body;!r&&!Y&&Fe(a,!T),jt=!0,p.props.page&&Object.assign(k,p.props.page),V=!1,t==="popstate"&&Jt(x),d.fulfil(void 0),d.navigation.to&&(d.navigation.to.scroll=j()),M.forEach(S=>S(d.navigation)),P.navigating.set(ht.current=null)}async function ee(t,a,e,r,n){return t.origin===Kt&&t.pathname===location.pathname&&!Yt?await Pt({status:r,error:e,url:t,route:a}):await B(t,n)}function je(){let t,a={element:void 0,href:void 0},e;U.addEventListener("mousemove",i=>{const c=i.target;clearTimeout(t),t=setTimeout(()=>{o(c,K.hover)},20)});function r(i){i.defaultPrevented||o(i.composedPath()[0],K.tap)}U.addEventListener("mousedown",r),U.addEventListener("touchstart",r,{passive:!0});const n=new IntersectionObserver(i=>{for(const c of i)c.isIntersecting&&(ut(new URL(c.target.href)),n.unobserve(c.target))},{threshold:0});async function o(i,c){const l=Dt(i,U),h=l===a.element&&(l==null?void 0:l.href)===a.href&&c>=e;if(!l||h)return;const{url:u,external:w,download:f}=dt(l,L,b.hash);if(w||f)return;const d=J(l),_=u&&rt(m.url)===rt(u);if(!(d.reload||_))if(c<=d.preload_data){a={element:l,href:l.href},e=K.tap;const g=await st(u,!1);if(!g)return;Le(g)}else c<=d.preload_code&&(a={element:l,href:l.href},e=c,ut(u))}function s(){n.disconnect();for(const i of U.querySelectorAll("a")){const{url:c,external:l,download:h}=dt(i,L,b.hash);if(l||h)continue;const u=J(i);u.reload||(u.preload_code===K.viewport&&n.observe(i),u.preload_code===K.eager&&ut(c))}}M.add(s),s()}function H(t,a){if(t instanceof yt)return t.body;const e=St(t),r=Ee(t);return b.hooks.handleError({error:t,event:a,status:e,message:r})??{message:r}}function $e(t,a){be(()=>(t.add(a),()=>{t.delete(a)}))}function Ye(t){$e(Ht,t)}function We(t,a={}){return t=new URL(ot(t)),t.origin!==Kt?Promise.reject(new Error("goto: invalid URL")):Xt(t,a,0)}function Ne(t){if(typeof t=="function")Z.push(t);else{const{href:a}=new URL(t,location.href);Z.push(e=>e.href===a)}}function Ge(t,a){const e={[C]:y,[q]:x,[qt]:k.url.href,[vt]:a};history.replaceState(e,"",ot(t)),k.state=a,Lt.$set({page:Se(()=>it(k))})}function De(){var a;history.scrollRestoration="manual",addEventListener("beforeunload",e=>{let r=!1;if(Nt(),!V){const n=It(m,void 0,null,"leave"),o={...n.navigation,cancel:()=>{r=!0,n.reject(new Error("navigation cancelled"))}};Vt.forEach(s=>s(o))}r?(e.preventDefault(),e.returnValue=""):history.scrollRestoration="auto"}),addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&Nt()}),(a=navigator.connection)!=null&&a.saveData||je(),U.addEventListener("click",async e=>{if(e.button||e.which!==1||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey||e.defaultPrevented)return;const r=Dt(e.composedPath()[0],U);if(!r)return;const{url:n,external:o,target:s,download:i}=dt(r,L,b.hash);if(!n)return;if(s==="_parent"||s==="_top"){if(window.parent!==window)return}else if(s&&s!=="_self")return;const c=J(r);if(!(r instanceof SVGAElement)&&n.protocol!==location.protocol&&!(n.protocol==="https:"||n.protocol==="http:")||i)return;const[h,u]=(b.hash?n.hash.replace(/^#/,""):n.href).split("#"),w=h===lt(location);if(o||c.reload&&(!w||!u)){te({url:n,type:"link",event:e})?V=!0:e.preventDefault();return}if(u!==void 0&&w){const[,f]=m.url.href.split("#");if(f===u){if(e.preventDefault(),u===""||u==="top"&&r.ownerDocument.getElementById("top")===null)scrollTo({top:0});else{const d=r.ownerDocument.getElementById(decodeURIComponent(u));d&&(d.scrollIntoView(),d.focus())}return}if(F=!0,kt(y),t(n),!c.replace_state)return;F=!1}e.preventDefault(),await new Promise(f=>{requestAnimationFrame(()=>{setTimeout(f,0)}),setTimeout(f,100)}),await D({type:"link",url:n,keepfocus:c.keepfocus,noscroll:c.noscroll,replace_state:c.replace_state??n.href===location.href,event:e})}),U.addEventListener("submit",e=>{if(e.defaultPrevented)return;const r=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if(((n==null?void 0:n.formTarget)||r.target)==="_blank"||((n==null?void 0:n.formMethod)||r.method)!=="get")return;const i=new URL((n==null?void 0:n.hasAttribute("formaction"))&&(n==null?void 0:n.formAction)||r.action);if(wt(i,L,!1))return;const c=e.target,l=J(c);if(l.reload)return;e.preventDefault(),e.stopPropagation();const h=new FormData(c,n);i.search=new URLSearchParams(h).toString(),D({type:"form",url:i,keepfocus:l.keepfocus,noscroll:l.noscroll,replace_state:l.replace_state??i.href===location.href,event:e})}),addEventListener("popstate",async e=>{var r;if(!_t){if((r=e.state)!=null&&r[C]){const n=e.state[C];if(O={},n===y)return;const o=I[n],s=e.state[vt]??{},i=new URL(e.state[qt]??location.href),c=e.state[q],l=m.url?lt(location)===lt(m.url):!1;if(c===x&&(Wt||l)){s!==k.state&&(k.state=s),t(i),I[y]=j(),o&&scrollTo(o.x,o.y),y=n;return}const u=n-y;await D({type:"popstate",url:i,popped:{state:s,scroll:o,delta:u},accept:()=>{y=n,x=c},block:()=>{history.go(-u)},nav_token:O,event:e})}else if(!F){const n=new URL(location.href);t(n),b.hash&&location.reload()}}}),addEventListener("hashchange",()=>{F&&(F=!1,history.replaceState({...history.state,[C]:++y,[q]:x},"",location.href))});for(const e of document.querySelectorAll("link"))ke.has(e.rel)&&(e.href=e.href);addEventListener("pageshow",e=>{e.persisted&&P.navigating.set(ht.current=null)});function t(e){m.url=k.url=e,P.page.set(it(k)),P.page.notify()}}async function qe(t,{status:a=200,error:e,node_ids:r,params:n,route:o,server_route:s,data:i,form:c}){Yt=!0;const l=new URL(location.href);let h;({params:n={},route:o={id:null}}=await st(l,!1)||{}),h=Rt.find(({id:f})=>f===o.id);let u,w=!0;try{const f=r.map(async(_,g)=>{const p=i[g];return p!=null&&p.uses&&(p.uses=Ke(p.uses)),Ut({loader:b.nodes[_],url:l,params:n,route:o,parent:async()=>{const E={};for(let R=0;R<g;R+=1)Object.assign(E,(await f[R]).data);return E},server_data_node:At(p)})}),d=await Promise.all(f);if(h){const _=h.layouts;for(let g=0;g<_.length;g++)_[g]||d.splice(g,0,void 0)}u=nt({url:l,params:n,branch:d,status:a,error:e,form:c,route:h??null})}catch(f){if(f instanceof Et){await B(new URL(f.location,location.href));return}u=await Pt({status:St(f),error:await H(f,{url:l,params:n,route:o}),url:l,route:o}),t.textContent="",w=!1}u.props.page&&(u.props.page.state={}),await Qt(u,t,w)}function Ke(t){return{dependencies:new Set((t==null?void 0:t.dependencies)??[]),params:new Set((t==null?void 0:t.params)??[]),parent:!!(t!=null&&t.parent),route:!!(t!=null&&t.route),url:!!(t!=null&&t.url),search_params:new Set((t==null?void 0:t.search_params)??[])}}let _t=!1;function Fe(t,a=!0){const e=document.querySelector("[autofocus]");if(e)e.focus();else{const r=ae(t);if(r&&document.getElementById(r)){const{x:o,y:s}=j();setTimeout(()=>{const i=history.state;_t=!0,location.replace(new URL(`#${r}`,location.href)),history.replaceState(i,"",t),a&&scrollTo(o,s),_t=!1})}else{const o=document.body,s=o.getAttribute("tabindex");o.tabIndex=-1,o.focus({preventScroll:!0,focusVisible:!1}),s!==null?o.setAttribute("tabindex",s):o.removeAttribute("tabindex")}const n=getSelection();if(n&&n.type!=="None"){const o=[];for(let s=0;s<n.rangeCount;s+=1)o.push(n.getRangeAt(s));setTimeout(()=>{if(n.rangeCount===o.length){for(let s=0;s<n.rangeCount;s+=1){const i=o[s],c=n.getRangeAt(s);if(i.commonAncestorContainer!==c.commonAncestorContainer||i.startContainer!==c.startContainer||i.endContainer!==c.endContainer||i.startOffset!==c.startOffset||i.endOffset!==c.endOffset)return}n.removeAllRanges()}})}}}function It(t,a,e,r,n=null){var l,h;let o,s;const i=new Promise((u,w)=>{o=u,s=w});return i.catch(()=>{}),{navigation:{from:{params:t.params,route:{id:((l=t.route)==null?void 0:l.id)??null},url:t.url,scroll:j()},to:e&&{params:(a==null?void 0:a.params)??null,route:{id:((h=a==null?void 0:a.route)==null?void 0:h.id)??null},url:e,scroll:n},willUnload:!a,type:r,complete:i},fulfil:o,reject:s}}function it(t){return{data:t.data,error:t.error,form:t.form,params:t.params,route:t.route,state:t.state,status:t.status,url:t.url}}function Me(t){const a=new URL(t);return a.hash=decodeURIComponent(t.hash),a}function ae(t){let a;if(b.hash){const[,,e]=t.hash.split("#",3);a=e??""}else a=t.hash.slice(1);return decodeURIComponent(a)}export{He as a,We as g,Ye as o,Ge as r,P as s};
|