@lamplitisles/codex-for-love 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Codex for Love
2
2
 
3
- This is the Linux x64 standalone app-server runtime. Install the matching
4
- `@lamplitisles/codex-for-love-linux-x64` package through npm; the launcher
5
- selects and verifies its pinned native executable before startup.
3
+ This is the Linux x64 and macOS ARM64 standalone app-server runtime. npm
4
+ installs the matching pinned platform package automatically; the launcher
5
+ selects and verifies its app-server and code-mode host before startup.
6
+
7
+ The installed `vendor/ecosystem-mcp.example.toml` is an optional, static
8
+ example for adding FlickNote and Guion Web after CFL has created its minimal
9
+ workspace configuration. The bundled Companion MCP is the only required
10
+ integration.
@@ -5,13 +5,17 @@ import { createRequire } from 'node:module';
5
5
  import { dirname, join } from 'node:path';
6
6
  import { fileURLToPath } from 'node:url';
7
7
 
8
- if (process.platform !== 'linux' || process.arch !== 'x64') {
9
- throw new Error(`Unsupported platform ${process.platform}-${process.arch}; @lamplitisles/codex-for-love supports Linux x64 only.`);
8
+ const nativePackages = {
9
+ 'linux-x64': '@lamplitisles/codex-for-love-linux-x64',
10
+ 'darwin-arm64': '@lamplitisles/codex-for-love-darwin-arm64',
11
+ };
12
+ const nativePackage = nativePackages[`${process.platform}-${process.arch}`];
13
+ if (!nativePackage) {
14
+ throw new Error(`Unsupported platform ${process.platform}-${process.arch}; CFL supports Linux x64 and macOS ARM64.`);
10
15
  }
11
16
 
12
17
  const require = createRequire(import.meta.url);
13
18
  const packageRoot = dirname(dirname(fileURLToPath(import.meta.url)));
14
- const nativePackage = '@lamplitisles/codex-for-love-linux-x64';
15
19
  const nativeVersion = JSON.parse(readFileSync(join(packageRoot, 'package.json'), 'utf8')).optionalDependencies?.[nativePackage];
16
20
  if (typeof nativeVersion !== 'string') {
17
21
  throw new Error(`Missing exact optional dependency declaration for ${nativePackage}.`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lamplitisles/codex-for-love",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "Codex for Love standalone app-server runtime",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -15,7 +15,8 @@
15
15
  "README.md"
16
16
  ],
17
17
  "optionalDependencies": {
18
- "@lamplitisles/codex-for-love-linux-x64": "0.1.0-beta.0"
18
+ "@lamplitisles/codex-for-love-linux-x64": "0.1.0-beta.0",
19
+ "@lamplitisles/codex-for-love-darwin-arm64": "0.1.0-beta.0"
19
20
  },
20
21
  "engines": {
21
22
  "node": ">=24"
package/vendor/IMPORTS.md CHANGED
@@ -103,12 +103,9 @@ license copies are retained in
103
103
  [`licenses/jaminzhou-codex-app-server-client-MIT.txt`](../licenses/jaminzhou-codex-app-server-client-MIT.txt)
104
104
  and [`licenses/openai-codex-generated-Apache-2.0.txt`](../licenses/openai-codex-generated-Apache-2.0.txt).
105
105
 
106
- The selected MCP configuration is intentionally limited to `web` (`web mcp
107
- --provider kepos-bridge`), `project` (`project mcp`), `flicknote` (`flicknote
108
- mcp`) and `guion-email` (`https://mail.guion.io/mcp`). The project-local Codex
109
- overlay disables the known unselected `og`, `skill` and
110
- `openaiDeveloperDocs` entries without changing the operator's global Codex
111
- configuration.
106
+ CFL configures only its bundled Companion MCP and SessionStart hook. FlickNote
107
+ and Web are optional operator-provided MCPs documented in a static template;
108
+ CFL does not inject, disable, or require any external MCP configuration.
112
109
 
113
110
  ## Notices
114
111
 
@@ -136,6 +133,15 @@ distribution artifact and preserves its native `provenance.json`, license and
136
133
  notice. Later CFL main releases continue to pin that exact native version until
137
134
  an explicitly reviewed binary update publishes a replacement.
138
135
 
136
+ The macOS ARM64 package
137
+ `@lamplitisles/codex-for-love-darwin-arm64@0.1.0-beta.0` contains the app-server
138
+ built from fork revision `c1139f7b2793e94c14243689d756b09c0186708d` and the
139
+ official Codex 0.154.0 ARM64 code-mode host. That revision has an identical
140
+ `codex-rs` tree to the Linux build source. The executable hashes and local
141
+ assembly identity are pinned in `release/codex-artifact-darwin-arm64.json`;
142
+ the identity is not a claim that a fork GitHub Release was published. The
143
+ package retains the same Codex Apache-2.0 license and upstream notice.
144
+
139
145
  ## npm publication workflow
140
146
 
141
147
  `.github/workflows/publish.yml` and the narrow `scripts/release-*.mjs` helpers
@@ -0,0 +1 @@
1
+ import{H as e,U as t,V as n,ft as r,i,n as a,ot as o,st as s}from"./eSlNf1Mv.js";var c=class{constructor(e,t){this.status=e,this.body=typeof t==`string`?{message:t}:t||{message:`Error: ${e}`}}toString(){return JSON.stringify(this.body)}},l=class{constructor(e,t){try{new Headers({location:t})}catch{throw Error(`Invalid redirect location ${JSON.stringify(t)}: this string contains characters that cannot be used in HTTP headers`)}this.status=e,this.location=t}},u=class extends Error{constructor(e,t,n){super(n),this.status=e,this.text=t}};new URL(`sveltekit-internal://`);function d(e,t){return e===`/`||t===`ignore`?e:t===`never`?e.endsWith(`/`)?e.slice(0,-1):e:t===`always`&&!e.endsWith(`/`)?e+`/`:e}function f(e){return e.split(`%25`).map(decodeURI).join(`%25`)}function p(e){for(let t in e)e[t]=decodeURIComponent(e[t]);return e}function m({href:e}){return e.split(`#`)[0]}function h(){}function g(...e){let t=5381;for(let n of e)if(typeof n==`string`){let e=n.length;for(;e;)t=t*33^n.charCodeAt(--e)}else if(ArrayBuffer.isView(n)){let e=new Uint8Array(n.buffer,n.byteOffset,n.byteLength),r=e.length;for(;r;)t=t*33^e[--r]}else throw TypeError(`value must be a string or TypedArray`);return(t>>>0).toString(36)}new TextEncoder;function _(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}var v=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&y.delete(x(e)),v(e,t));var y=new Map;function ee(e,t){let n=x(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent);r.getAttribute(`data-b64`)!==null&&(e=_(e));let i=r.getAttribute(`data-ttl`);return i&&y.set(n,{body:e,init:t,ttl:1e3*Number(i)}),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function b(e,t,n){if(y.size>0){let t=x(e,n),r=y.get(t);if(r){if(performance.now()<r.ttl&&[`default`,`force-cache`,`only-if-cached`,void 0].includes(n?.cache))return new Response(r.body,r.init);y.delete(t)}}return window.fetch(t,n)}function x(e,t){let n=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){let e=[];t.headers&&e.push([...new Headers(t.headers)].join(`,`)),t.body&&(typeof t.body==`string`||ArrayBuffer.isView(t.body))&&e.push(t.body),n+=`[data-hash="${g(...e)}"]`}return n}var te=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,ne=/^\/\((?:[^)]+)\)$/;function re(e){let t=[];return{pattern:e===`/`||ne.test(e)?/^\/$/:RegExp(`^${ae(e).map(e=>{let n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(e);if(n)return t.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),`(?:/([^]*))?`;let r=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(e);if(r)return t.push({name:r[1],matcher:r[2],optional:!0,rest:!1,chained:!0}),`(?:/([^/]+))?`;if(!e)return;let i=e.split(/\[(.+?)\](?!\])/);return`/`+i.map((e,n)=>{if(n%2){if(e.startsWith(`x+`))return se(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return se(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=te.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return se(e)}).join(``)}).join(``)}/?$`),params:t}}function ie(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function ae(e){return e.slice(1).split(`/`).filter(ie)}function oe(e,t,n){let r={},i=e.slice(1),a=i.filter(e=>e!==void 0),o=0;for(let e=0;e<t.length;e+=1){let s=t[e],c=i[e-o];if(s.chained&&s.rest&&o&&(c=i.slice(e-o,e+1).filter(e=>e).join(`/`),o=0),c===void 0){if(s.rest)c=``;else continue}if(!s.matcher||n[s.matcher](c)){r[s.name]=c;let n=t[e+1],l=i[e+1];n&&!n.rest&&n.optional&&l&&s.chained&&(o=0),!n&&!l&&Object.keys(r).length===a.length&&(o=0);continue}if(s.optional&&s.chained){o++;continue}return}if(!o)return r}function se(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}function ce({nodes:e,server_loads:t,dictionary:n,matchers:r}){let i=new Set(t);return Object.entries(n).map(([t,[n,i,s]])=>{let{pattern:c,params:l}=re(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return oe(t,l,r)},errors:[1,...s||[]].map(t=>e[t]),layouts:[0,...i||[]].map(o),leaf:a(n)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function a(t){let n=t<0;return n&&(t=~t),[n,e[t]]}function o(t){return t===void 0?t:[i.has(t),e[t]]}}function le(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function ue(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var S=globalThis.__sveltekit_1xsvv7j?.base??``,de=globalThis.__sveltekit_1xsvv7j?.assets??S??``,fe=`1789524429562`,pe=`sveltekit:snapshot`,me=`sveltekit:scroll`,he=`sveltekit:states`,C=`sveltekit:history`,w=`sveltekit:navigation`,T={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},ge=location.origin;function _e(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){let e=document.getElementsByTagName(`base`);t=e.length?e[0].href:document.URL}return new URL(e,t)}function E(){return{x:pageXOffset,y:pageYOffset}}function D(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var ve={...T,"":T.hover};function ye(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function be(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=ye(e)}}function xe(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){let e=location.hash.split(`#`)[1]||`/`;r.hash=`#${e}${r.hash}`}}catch{}let i=e instanceof SVGAElement?e.target.baseVal:e.target,a=!r||!!i||k(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===ge&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function O(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=D(s,`preload-code`)),i===null&&(i=D(s,`preload-data`)),t===null&&(t=D(s,`keepfocus`)),n===null&&(n=D(s,`noscroll`)),a===null&&(a=D(s,`reload`)),o===null&&(o=D(s,`replacestate`)),s=ye(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:ve[r??`off`],preload_data:ve[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function Se(e){let t=r(e),n=!0;function i(){n=!0,t.update(e=>e)}function a(e){n=!1,t.set(e)}function o(e){let r;return t.subscribe(t=>{(r===void 0||n&&t!==r)&&e(r=t)})}return{notify:i,set:a,subscribe:o}}var Ce={v:h};function we(){let{set:e,subscribe:t}=r(!1),n;async function i(){clearTimeout(n);try{let t=await fetch(`${de}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let r=(await t.json()).version!==fe;return r&&(e(!0),Ce.v(),clearTimeout(n)),r}catch{return!1}}return{subscribe:t,check:i}}function k(e,t,n){return e.origin!==ge||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function Te(e){}var Ee=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);[...Ee],[...new Set([...Ee])];function De(e){return e.filter(e=>e!=null)}function A(e,t){return e+`/`+t}function Oe(e){return e instanceof c||e instanceof u?e.status:500}function ke(e){return e instanceof u?e.text:`Internal Error`}var j,M,Ae,je=i.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(i.toString()),Me=`a:`;je?(j={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(Me)},M={current:null},Ae={current:!1}):(j=new class{#e=s({});get data(){return n(this.#e)}set data(e){o(this.#e,e)}#t=s(null);get form(){return n(this.#t)}set form(e){o(this.#t,e)}#n=s(null);get error(){return n(this.#n)}set error(e){o(this.#n,e)}#r=s({});get params(){return n(this.#r)}set params(e){o(this.#r,e)}#i=s({id:null});get route(){return n(this.#i)}set route(e){o(this.#i,e)}#a=s({});get state(){return n(this.#a)}set state(e){o(this.#a,e)}#o=s(-1);get status(){return n(this.#o)}set status(e){o(this.#o,e)}#s=s(new URL(Me));get url(){return n(this.#s)}set url(e){o(this.#s,e)}},M=new class{#e=s(null);get current(){return n(this.#e)}set current(e){o(this.#e,e)}},Ae=new class{#e=s(!1);get current(){return n(this.#e)}set current(e){o(this.#e,e)}},Ce.v=()=>Ae.current=!0);function Ne(e){Object.assign(j,e)}var{onMount:Pe,tick:Fe}=a,Ie=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),N=null,P=le(`sveltekit:scroll`)??{},F=le(`sveltekit:snapshot`)??{},I={url:Se({}),page:Se({}),navigating:r(null),updated:we()};function Le(e){P[e]=E()}function Re(e,t){let n=e+1;for(;P[n];)delete P[n],n+=1;for(n=t+1;F[n];)delete F[n],n+=1}function L(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(h)}async function ze(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(S||`/`);e&&await e.update()}}var Be,Ve,R,z,He,B,Ue={},We={},V=[],H=[],U=null;function Ge(){U?.fork?.then(e=>e?.discard()),U=null,Q={element:void 0,href:void 0}}var Ke=new Map,qe=new Set,Je=new Set,W=new Set,G={branch:[],error:null,url:null,nav:null},Ye=!1,Xe=!1,Ze=!0,K=!1,q=!1,Qe=!1,$e=!1,et,J,Y,X,tt=new Set,nt=new Map,rt=new Map;async function it(e,t,n){if(globalThis.__sveltekit_1xsvv7j.data){let{q:e={},p:t={},l:n={},f:r={}}=globalThis.__sveltekit_1xsvv7j.data;for(let t in e)Ue[t]=e[t];for(let e in n)Ue[e]=n[e];for(let e in r)Ue[e]=r[e];for(let e in t)We[e]=t[e]}document.URL!==location.href&&(location.href=location.href),B=e,await e.hooks.init?.(),Be=ce(e),z=document.documentElement,He=t,Ve=e.nodes[0],R=e.nodes[1],Ve(),R(),J=history.state?.[C],Y=history.state?.[w],J||(J=Y=Date.now(),history.replaceState({...history.state,[C]:J,[w]:Y},``));let r=P[J];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await Mt(He,n)):(await Z({type:`enter`,url:_e(B.hash?Rt(new URL(location.href)):location.href),replace_state:!0}),i()),jt()}function at(){V.length=0,$e=!1}function ot(e){H.some(e=>e?.snapshot)&&(F[e]=H.map(e=>e?.snapshot?.capture()))}function st(e){F[e]?.forEach((e,t)=>{H[t]?.snapshot?.restore(e)})}function ct(){Le(J),ue(me,P),ot(Y),ue(pe,F)}async function lt(e,n,r,i){let a,o;n.invalidateAll&&Ge(),await Z({type:`goto`,url:_e(e),keepfocus:n.keepFocus,noscroll:n.noScroll,replace_state:n.replaceState,state:n.state,redirect_count:r,nav_token:i,accept:()=>{if(n.invalidateAll){$e=!0,a=new Set;for(let[e,t]of nt)for(let[n,r]of t)r.resource?.reset(),a.add(A(e,n));o=new Set;for(let[e,t]of rt)for(let n of t.keys())o.add(A(e,n))}n.invalidate&&n.invalidate.forEach(At)}}),n.invalidateAll&&t().then(t).then(()=>{for(let[e,t]of nt)for(let[n,{resource:r}]of t)a?.has(A(e,n))&&r.start();for(let[e,t]of rt)for(let[n,{resource:r}]of t)o?.has(A(e,n))&&r.reconnect()})}async function ut(e){if(e.id!==U?.id){Ge();let t={};tt.add(t),U={id:e.id,token:t,promise:bt({...e,preload:t}).then(e=>(tt.delete(t),e.type===`loaded`&&e.state.error&&Ge(),e)),fork:null}}return U.promise}async function dt(e){let t=(await wt(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function ft(e,t,n){let r={params:G.params,route:{id:G.route?.id??null},url:new URL(location.href)};if(G={...e.state,nav:r},Ne(e.props.page),et=new B.root({target:t,props:{...e.props,stores:I,components:H},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),n){let e={from:null,to:{...r,scroll:P[J]??E()},willUnload:!1,type:`enter`,complete:Promise.resolve()};W.forEach(t=>t(e))}st(Y),Xe=!0}async function pt({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(S&&(e.pathname===S||e.pathname===S+`/`))c=`always`;else for(let e of n)e?.slash!==void 0&&(c=e.slash);e.pathname=d(e.pathname,c),e.search=e.search;let l={type:`loaded`,state:{url:e,params:t,branch:n,error:a,route:o},props:{constructors:De(n).map(e=>e.node.component),page:Lt(j)}};s!==void 0&&(l.props.form=s);let u={},f=!j,p=0;for(let e=0;e<Math.max(n.length,G.branch.length);e+=1){let t=n[e],r=G.branch[e];t?.data!==r?.data&&(f=!0),t&&(u={...u,...t.data},f&&(l.props[`data_${p}`]=u),p+=1)}return(!G.url||e.href!==G.url.href||G.error!==a||s!==void 0&&s!==j.form||f)&&(l.props.page={error:a,params:t,route:{id:o?.id??null},state:{},status:i,url:new URL(e),form:s??null,data:f?u:j.data}),l}async function mt({loader:e,parent:t,url:n,params:r,route:i,server_data_node:a}){let o={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},s=await e();return{node:s,loader:e,server:a,universal:s.universal?.load?{type:`data`,data:null,uses:o}:null,data:a?.data??null,slash:s.universal?.trailingSlash??a?.slash}}function ht(e,t,n){let r=e instanceof Request?e.url:e,i=new URL(r,n);return i.origin===n.origin&&(r=i.href.slice(n.origin.length)),{resolved:i,promise:Xe?b(r,i.href,t):ee(r,t)}}function gt(e,t,n,r,i,a){if($e)return!0;if(!i)return!1;if(i.parent&&e||i.route&&t||i.url&&n)return!0;for(let e of i.search_params)if(r.has(e))return!0;for(let e of i.params)if(a[e]!==G.params[e])return!0;for(let e of i.dependencies)if(V.some(t=>t(new URL(e))))return!0;return!1}function _t(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function vt(e,t){if(!e)return new Set(t.searchParams.keys());let n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(let r of n){let i=e.searchParams.getAll(r),a=t.searchParams.getAll(r);i.every(e=>a.includes(e))&&a.every(e=>i.includes(e))&&n.delete(r)}return n}function yt({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:Lt(j),constructors:[]}}}async function bt({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(U?.id===e)return tt.delete(U.token),U.promise;let{errors:o,layouts:s,leaf:u}=i,d=[...s,u];o.forEach(e=>e?.().catch(h)),d.forEach(e=>e?.[1]().catch(h));let f=G.url?e!==Et(G.url):!1,p=G.route?i.id!==G.route.id:!1,m=vt(G.url,n),g=!1,_=d.map(async(e,t)=>{if(!e)return;let a=G.branch[t];return e[1]===a?.loader&&!gt(g,p,f,m,a.universal?.uses,r)?a:(g=!0,mt({loader:e[1],url:n,params:r,route:i,parent:async()=>{let e={};for(let n=0;n<t;n+=1)Object.assign(e,(await _[n])?.data);return e},server_data_node:_t(e[0]?{type:`skip`}:null,e[0]?a?.server:void 0)}))});for(let e of _)e.catch(h);let v=[];for(let e=0;e<d.length;e+=1)if(d[e])try{v.push(await _[e])}catch(t){if(t instanceof l)return{type:`redirect`,location:t.location};if(a&&tt.has(a))return yt({error:await $(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=Oe(t),u;if(t instanceof c)u=t.body;else{if(await I.updated.check())return await ze(),await L(n);u=await $(t,{params:r,url:n,route:{id:i.id}})}let d=await xt(e,v,o);return d?pt({url:n,params:r,branch:v.slice(0,d.idx).concat(d.node),errors:o,status:s,error:u,route:i}):await Ot(n,{id:i.id},u,s)}else v.push(void 0);return pt({url:n,params:r,branch:v,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function xt(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)--r;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function St({status:e,error:t,url:n,route:r}){let i={};try{return pt({url:n,params:i,branch:[await mt({loader:Ve,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:_t(null)}),{node:await R(),loader:R,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(t){if(t instanceof l){await lt(new URL(t.location,location.href),{},0);return}let a=await B.get_error_template(),o=await $(t,{url:n,params:i,route:r}),s=a({status:e,message:String(o?.message??``).replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`)}),c=new DOMParser().parseFromString(s,`text/html`);throw document.documentElement.replaceChild(document.adoptNode(c.head),document.head),document.documentElement.replaceChild(document.adoptNode(c.body),document.body),t}}async function Ct(e){let t=e.href;if(Ke.has(t))return Ke.get(t);let n;try{let r=(async()=>{let t=await B.hooks.reroute({url:new URL(e),fetch:async(t,n)=>ht(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);B.hash?n.hash=t:n.pathname=t,t=n}return t})();Ke.set(t,r),n=await r}catch{Ke.delete(t);return}return n}async function wt(e,t){if(e&&!k(e,S,B.hash)){let n=await Ct(e);if(!n)return;let r=Tt(n);for(let n of Be){let i=n.exec(r);if(i)return{id:Et(e),invalidating:t,route:n,params:p(i),url:e}}}}function Tt(e){return f(B.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(S.length))||`/`}function Et(e){return(B.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function Dt({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=It(G,n,e,t,a??null);r!==void 0&&(s.navigation.delta=r),i!==void 0&&(s.navigation.event=i);let c={...s.navigation,cancel:()=>{o=!0,s.reject(Error(`navigation cancelled`))}};return K||qe.forEach(e=>e(c)),o?null:s}async function Z({type:n,url:r,popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c={},redirect_count:l=0,nav_token:d={},accept:f=h,block:p=h,event:m}){let g=X;X=d;let _=await wt(r,!1),v=n===`enter`?It(G,_,r,n):Dt({url:r,type:n,delta:i?.delta,intent:_,scroll:i?.scroll,event:m});if(!v){p(),X===d&&(X=g);return}let y=J,ee=Y;f(),K=!0,Xe&&v.navigation.type!==`enter`&&I.navigating.set(M.current=v.navigation);let b=_&&await bt(_);if(!b){if(k(r,S,B.hash))return await L(r,s);b=await Ot(r,{id:null},await $(new u(404,`Not Found`,`Not found: ${r.pathname}`),{url:r,params:{},route:{id:null}}),404,s)}if(r=_?.url||r,X!==d){v.reject(Error(`navigation aborted`));return}if(!b)return;if(b.type===`redirect`){if(l<20){await Z({type:n,url:new URL(b.location,r),popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c,redirect_count:l+1,nav_token:d}),v.fulfil(void 0);return}if(b=await St({status:500,error:await $(Error(`Redirect loop`),{url:r,params:{},route:{id:null}}),url:r,route:{id:null}}),!b)return}else if(b.props.page.status>=400&&await I.updated.check())return await ze(),await L(r,s);if(at(),Le(y),ot(ee),b.props.page.url.pathname!==r.pathname&&(r.pathname=b.props.page.url.pathname),c=i?i.state:c,!i){let e=+!s,t={[C]:J+=e,[w]:Y+=e,[he]:c};(s?history.replaceState:history.pushState).call(history,t,``,r),s||Re(J,Y)}let x=_&&U?.id===_.id?U.fork:null;U?.fork&&!x?Ge():(U=null,Q={element:void 0,href:void 0}),b.props.page.state=c;let te;if(Xe){let t=(await Promise.all(Array.from(Je,e=>e(v.navigation)))).filter(e=>typeof e==`function`);if(t.length>0){function e(){t.forEach(e=>{W.delete(e)})}t.push(e),t.forEach(e=>{W.add(e)})}let n=v.navigation.to;G={...b.state,nav:{params:n.params,route:n.route,url:n.url}},b.props.page&&(b.props.page.url=r),!a&&document.activeElement instanceof HTMLElement&&document.activeElement!==document.body&&document.activeElement.blur();let i=x&&await x;i?te=i.commit():(N=null,et.$set(b.props),N&&Object.assign(b.props.page,N),Ne(b.props.page),te=e?.()),Qe=!0}else await ft(b,He,!1);let{activeElement:ne}=document;if(await te,await t(),await t(),X!==d){v.reject(Error(`navigation aborted`));return}b.props.page&&N&&Object.assign(b.props.page,N);let re=null;if(Ze){let e=i?i.scroll:o?E():null;e?scrollTo(e.x,e.y):(re=r.hash&&document.getElementById(zt(r)))?re.scrollIntoView():scrollTo(0,0)}let ie=document.activeElement!==ne&&document.activeElement!==document.body;!a&&!ie&&Ft(r,!re),Ze=!0,K=!1,v.fulfil(void 0),v.navigation.to&&(v.navigation.to.scroll=E()),W.forEach(e=>e(v.navigation)),n===`popstate`&&st(Y),I.navigating.set(M.current=null)}async function Ot(e,t,n,r,i){return e.origin===ge&&e.pathname===location.pathname&&!Ye?await St({status:r,error:n,url:e,route:t}):await L(e,i)}var Q={element:void 0,href:void 0};function kt(){let e,t;z.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{i(n,T.hover)},20)});function n(e){e.defaultPrevented||i(e.composedPath()[0],T.tap)}z.addEventListener(`mousedown`,n),z.addEventListener(`touchstart`,n,{passive:!0});let r=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(dt(new URL(t.target.href)),r.unobserve(t.target))},{threshold:0});async function i(e,n){let r=be(e,z),i=r===Q.element&&r?.href===Q.href&&n>=t;if(!r||i)return;let{url:a,external:o,download:s}=xe(r,S,B.hash);if(o||s)return;let c=O(r),l=a&&Et(G.url)===Et(a);if(!(c.reload||l)){if(n<=c.preload_data){Q={element:r,href:r.href},t=T.tap;let e=await wt(a,!1);if(!e)return;ut(e)}else n<=c.preload_code&&(Q={element:r,href:r.href},t=n,dt(a))}}function a(){r.disconnect();for(let e of z.querySelectorAll(`a`)){let{url:t,external:n,download:i}=xe(e,S,B.hash);if(n||i)continue;let a=O(e);a.reload||(a.preload_code===T.viewport&&r.observe(e),a.preload_code===T.eager&&dt(t))}}W.add(a),a()}function $(e,t){if(e instanceof c)return e.body;let n=Oe(e),r=ke(e);return B.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function At(e){if(typeof e==`function`)V.push(e);else{let{href:t}=new URL(e,location.href);V.push(e=>e.href===t)}}function jt(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(ct(),!K){let e=It(G,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};qe.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&ct()}),navigator.connection?.saveData||kt(),z.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=be(t.composedPath()[0],z);if(!n)return;let{url:r,external:i,target:a,download:o}=xe(n,S,B.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=O(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&r.protocol!==`https:`&&r.protocol!==`http:`||o)return;let[c,l]=(B.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l)){Dt({url:r,type:`link`,event:t})?K=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=G.url.href.split(`#`);if(i===l){if(t.preventDefault(),l===``||l===`top`&&n.ownerDocument.getElementById(`top`)===null)scrollTo({top:0});else{let e=n.ownerDocument.getElementById(decodeURIComponent(l));e&&(e.scrollIntoView(),e.focus())}return}if(q=!0,Le(J),e(r),!s.replace_state)return;q=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Z({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}),z.addEventListener(`submit`,e=>{if(e.defaultPrevented)return;let t=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if((n?.formTarget||t.target)===`_blank`||(n?.formMethod||t.method)!==`get`)return;let r=new URL(n?.hasAttribute(`formaction`)&&n?.formAction||t.action);if(k(r,S,!1))return;let i=e.target,a=O(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Z({type:`form`,url:r,keepfocus:a.keepfocus,noscroll:a.noscroll,replace_state:a.replace_state??r.href===location.href,event:e})}),addEventListener(`popstate`,async t=>{if(!Pt){if(t.state?.[`sveltekit:history`]){let n=t.state[C];if(X={},n===J)return;let r=P[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[w],s=G.url?m(location)===m(G.url):!1;if(o===Y&&(Qe||s)){i!==j.state&&(j.state=i),e(a),P[J]=E(),r&&scrollTo(r.x,r.y),J=n;return}let c=n-J;await Z({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{J=n,Y=o},block:()=>{history.go(-c)},nav_token:X,event:t})}else q||(e(new URL(location.href)),B.hash&&location.reload())}}),addEventListener(`hashchange`,()=>{q&&(q=!1,history.replaceState({...history.state,[C]:++J,[w]:Y},``,location.href))});for(let e of document.querySelectorAll(`link`))Ie.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&I.navigating.set(M.current=null)});function e(e){G.url=j.url=e,I.page.set(Lt(j)),I.page.notify()}}async function Mt(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){Ye=!0;let u=new URL(location.href),d;({params:i={},route:a={id:null}}=await wt(u,!1)||{}),d=Be.find(({id:e})=>e===a.id);let f,p=!0;try{let e=r.map(async(t,n)=>{let r=s[n];return r?.uses&&(r.uses=Nt(r.uses)),mt({loader:B.nodes[t],url:u,params:i,route:a,parent:async()=>{let t={};for(let r=0;r<n;r+=1)Object.assign(t,(await e[r]).data);return t},server_data_node:_t(r)})}),o=await Promise.all(e);if(d){let e=d.layouts;for(let t=0;t<e.length;t++)e[t]||o.splice(t,0,void 0)}f=await pt({url:u,params:i,branch:o,status:t,error:n,errors:d?.errors,form:c,route:d??null})}catch(t){if(t instanceof l)return await L(new URL(t.location,location.href));f=await St({status:Oe(t),error:await $(t,{url:u,params:i,route:a}),url:u,route:a}),e.textContent=``,p=!1}f&&(f.props.page&&(f.props.page.state={}),await ft(f,e,p))}function Nt(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}var Pt=!1;function Ft(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=zt(e);if(n&&document.getElementById(n)){let{x:r,y:i}=E();setTimeout(()=>{let a=history.state;Pt=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),Pt=!1})}else{let e=document.body,t=e.getAttribute(`tabindex`);e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),t===null?e.removeAttribute(`tabindex`):e.setAttribute(`tabindex`,t)}let r=getSelection();if(r&&r.type!==`None`){let e=[];for(let t=0;t<r.rangeCount;t+=1)e.push(r.getRangeAt(t));setTimeout(()=>{if(r.rangeCount===e.length){for(let t=0;t<r.rangeCount;t+=1){let n=e[t],i=r.getRangeAt(t);if(n.commonAncestorContainer!==i.commonAncestorContainer||n.startContainer!==i.startContainer||n.endContainer!==i.endContainer||n.startOffset!==i.startOffset||n.endOffset!==i.endOffset)return}r.removeAllRanges()}})}}}function It(e,t,n,r,i=null){let a,o,s=new Promise((e,t)=>{a=e,o=t});return s.catch(h),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:E()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:i},willUnload:!t,type:r,complete:s},fulfil:a,reject:o}}function Lt(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function Rt(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function zt(e){let t;if(B.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{Te as i,M as n,j as r,it as t};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.gonV4k8o.js","../chunks/eSlNf1Mv.js","../chunks/xihTtKlq.js","../assets/0.BvPOd6uh.css","../nodes/1.BNCm5L6_.js","../chunks/BMiSuNVz.js","../nodes/2.z56Ql74q.js","../assets/2.D_B1Of5x.css"])))=>i.map(i=>d[i]);
2
- import{$ as e,F as t,J as n,L as r,M as i,N as a,P as o,T as s,U as c,V as l,X as u,Y as d,a as f,bt as p,et as m,gt as h,ht as g,i as _,j as v,nt as y,ot as b,p as x,s as S,st as C,ut as w}from"../chunks/eSlNf1Mv.js";import"../chunks/xihTtKlq.js";var T=`modulepreload`,E=function(e,t){return new URL(e,t).href},D={},O=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=E(t,n),t=s(t),t in D)return;D[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:T,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}).filter(e=>e!==void 0))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},k={},A=t(`<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>`),j=t(`<!> <!>`,1);function M(t,f){h(f,!0);let T=S(f,`components`,23,()=>[]),E=S(f,`data_0`,3,null),D=S(f,`data_1`,3,null);u(()=>f.stores.page.set(f.page)),d(()=>{f.stores,f.page,f.constructors,T(),f.form,E(),D(),f.stores.page.notify()});let O=C(!1),k=C(!1),M=C(null);_(()=>{let e=f.stores.page.subscribe(()=>{l(O)&&(b(k,!0),c().then(()=>{b(M,document.title||`untitled page`,!0)}))});return b(O,!0),e});let N=w(()=>f.constructors[1]);var P=j(),F=m(P),I=e=>{let t=w(()=>f.constructors[0]);var n=o(),r=m(n);s(r,()=>l(t),(e,t)=>{x(t(e,{get data(){return E()},get form(){return f.form},get params(){return f.page.params},children:(e,t)=>{var n=o(),r=m(n);s(r,()=>l(N),(e,t)=>{x(t(e,{get data(){return D()},get form(){return f.form},get params(){return f.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),a(e,n)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),a(e,n)},L=e=>{let t=w(()=>f.constructors[0]);var n=o(),r=m(n);s(r,()=>l(t),(e,t)=>{x(t(e,{get data(){return E()},get form(){return f.form},get params(){return f.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),a(e,n)};v(F,e=>{f.constructors[1]?e(I):e(L,-1)});var R=y(F,2),z=t=>{var o=A(),s=e(o),c=e=>{var t=r();n(()=>i(t,l(M))),a(e,t)};v(s,e=>{l(k)&&e(c)}),p(o),a(t,o)};v(R,e=>{l(O)&&e(z)}),a(t,P),g()}var N=f(M),P=[()=>O(()=>import(`../nodes/0.gonV4k8o.js`),__vite__mapDeps([0,1,2,3]),import.meta.url),()=>O(()=>import(`../nodes/1.BNCm5L6_.js`),__vite__mapDeps([4,1,5,2]),import.meta.url),()=>O(()=>import(`../nodes/2.z56Ql74q.js`),__vite__mapDeps([6,1,2,7]),import.meta.url)],F=[],I={"/":[2]},L={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},R=Object.fromEntries(Object.entries(L.transport).map(([e,t])=>[e,t.decode])),z=Object.fromEntries(Object.entries(L.transport).map(([e,t])=>[e,t.encode])),B=!1,V=(e,t)=>R[e](t),H=()=>O(()=>import(`../chunks/Bjy-W4x2.js`).then(e=>e.default),[],import.meta.url);export{V as decode,R as decoders,I as dictionary,z as encoders,H as get_error_template,B as hash,L as hooks,k as matchers,P as nodes,N as root,F as server_loads};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.gonV4k8o.js","../chunks/eSlNf1Mv.js","../chunks/xihTtKlq.js","../assets/0.BvPOd6uh.css","../nodes/1.DGueOk17.js","../chunks/CJEIC--P.js","../nodes/2.z56Ql74q.js","../assets/2.D_B1Of5x.css"])))=>i.map(i=>d[i]);
2
+ import{$ as e,F as t,J as n,L as r,M as i,N as a,P as o,T as s,U as c,V as l,X as u,Y as d,a as f,bt as p,et as m,gt as h,ht as g,i as _,j as v,nt as y,ot as b,p as x,s as S,st as C,ut as w}from"../chunks/eSlNf1Mv.js";import"../chunks/xihTtKlq.js";var T=`modulepreload`,E=function(e,t){return new URL(e,t).href},D={},O=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=E(t,n),t=s(t),t in D)return;D[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:T,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}).filter(e=>e!==void 0))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},k={},A=t(`<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>`),j=t(`<!> <!>`,1);function M(t,f){h(f,!0);let T=S(f,`components`,23,()=>[]),E=S(f,`data_0`,3,null),D=S(f,`data_1`,3,null);u(()=>f.stores.page.set(f.page)),d(()=>{f.stores,f.page,f.constructors,T(),f.form,E(),D(),f.stores.page.notify()});let O=C(!1),k=C(!1),M=C(null);_(()=>{let e=f.stores.page.subscribe(()=>{l(O)&&(b(k,!0),c().then(()=>{b(M,document.title||`untitled page`,!0)}))});return b(O,!0),e});let N=w(()=>f.constructors[1]);var P=j(),F=m(P),I=e=>{let t=w(()=>f.constructors[0]);var n=o(),r=m(n);s(r,()=>l(t),(e,t)=>{x(t(e,{get data(){return E()},get form(){return f.form},get params(){return f.page.params},children:(e,t)=>{var n=o(),r=m(n);s(r,()=>l(N),(e,t)=>{x(t(e,{get data(){return D()},get form(){return f.form},get params(){return f.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),a(e,n)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),a(e,n)},L=e=>{let t=w(()=>f.constructors[0]);var n=o(),r=m(n);s(r,()=>l(t),(e,t)=>{x(t(e,{get data(){return E()},get form(){return f.form},get params(){return f.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),a(e,n)};v(F,e=>{f.constructors[1]?e(I):e(L,-1)});var R=y(F,2),z=t=>{var o=A(),s=e(o),c=e=>{var t=r();n(()=>i(t,l(M))),a(e,t)};v(s,e=>{l(k)&&e(c)}),p(o),a(t,o)};v(R,e=>{l(O)&&e(z)}),a(t,P),g()}var N=f(M),P=[()=>O(()=>import(`../nodes/0.gonV4k8o.js`),__vite__mapDeps([0,1,2,3]),import.meta.url),()=>O(()=>import(`../nodes/1.DGueOk17.js`),__vite__mapDeps([4,1,5,2]),import.meta.url),()=>O(()=>import(`../nodes/2.z56Ql74q.js`),__vite__mapDeps([6,1,2,7]),import.meta.url)],F=[],I={"/":[2]},L={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},R=Object.fromEntries(Object.entries(L.transport).map(([e,t])=>[e,t.decode])),z=Object.fromEntries(Object.entries(L.transport).map(([e,t])=>[e,t.encode])),B=!1,V=(e,t)=>R[e](t),H=()=>O(()=>import(`../chunks/Bjy-W4x2.js`).then(e=>e.default),[],import.meta.url);export{V as decode,R as decoders,I as dictionary,z as encoders,H as get_error_template,B as hash,L as hooks,k as matchers,P as nodes,N as root,F as server_loads};
@@ -0,0 +1 @@
1
+ import{i as e,t}from"../chunks/CJEIC--P.js";export{e as load_css,t as start};
@@ -1 +1 @@
1
- import{F as e,J as t,M as n,N as r,et as i,gt as a,ht as o,nt as s,tt as c}from"../chunks/eSlNf1Mv.js";import{r as l}from"../chunks/BMiSuNVz.js";import"../chunks/xihTtKlq.js";var u={get data(){return l.data},get error(){return l.error},get form(){return l.form},get params(){return l.params},get route(){return l.route},get state(){return l.state},get status(){return l.status},get url(){return l.url}},d=e(`<h1> </h1> <p> </p>`,1);function f(e,l){a(l,!0);var f=d(),p=i(f),m=c(p,!0),h=s(p,2),g=c(h,!0);t(()=>{n(m,u.status),n(g,u.error?.message)}),r(e,f),o()}export{f as component};
1
+ import{F as e,J as t,M as n,N as r,et as i,gt as a,ht as o,nt as s,tt as c}from"../chunks/eSlNf1Mv.js";import{r as l}from"../chunks/CJEIC--P.js";import"../chunks/xihTtKlq.js";var u={get data(){return l.data},get error(){return l.error},get form(){return l.form},get params(){return l.params},get route(){return l.route},get state(){return l.state},get status(){return l.status},get url(){return l.url}},d=e(`<h1> </h1> <p> </p>`,1);function f(e,l){a(l,!0);var f=d(),p=i(f),m=c(p,!0),h=s(p,2),g=c(h,!0);t(()=>{n(m,u.status),n(g,u.error?.message)}),r(e,f),o()}export{f as component};
@@ -1 +1 @@
1
- {"version":"1789466693520"}
1
+ {"version":"1789524429562"}
@@ -1,9 +1,9 @@
1
1
  <!doctype html>
2
2
  <html lang="zh-Hans" data-theme="coffee">
3
- <head><meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" /><link href="/_app/immutable/entry/start.5Dogon7_.js" rel="modulepreload">
4
- <link href="/_app/immutable/chunks/BMiSuNVz.js" rel="modulepreload">
3
+ <head><meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" /><link href="/_app/immutable/entry/start.Ci41Krex.js" rel="modulepreload">
4
+ <link href="/_app/immutable/chunks/CJEIC--P.js" rel="modulepreload">
5
5
  <link href="/_app/immutable/chunks/eSlNf1Mv.js" rel="modulepreload">
6
- <link href="/_app/immutable/entry/app.DBkGh5I7.js" rel="modulepreload">
6
+ <link href="/_app/immutable/entry/app._LCN_YSo.js" rel="modulepreload">
7
7
  <link href="/_app/immutable/chunks/xihTtKlq.js" rel="modulepreload">
8
8
  <link href="/_app/immutable/nodes/0.gonV4k8o.js" rel="modulepreload">
9
9
 
@@ -11,15 +11,15 @@
11
11
  <body data-sveltekit-preload-data="hover"><div style="display: contents">
12
12
  <script>
13
13
  {
14
- __sveltekit_yry919 = {
14
+ __sveltekit_1xsvv7j = {
15
15
  base: ""
16
16
  };
17
17
 
18
18
  const element = document.currentScript.parentElement;
19
19
 
20
20
  Promise.all([
21
- import("/_app/immutable/entry/start.5Dogon7_.js"),
22
- import("/_app/immutable/entry/app.DBkGh5I7.js")
21
+ import("/_app/immutable/entry/start.Ci41Krex.js"),
22
+ import("/_app/immutable/entry/app._LCN_YSo.js")
23
23
  ]).then(([kit, app]) => {
24
24
  kit.start(app, element);
25
25
  });
@@ -17,6 +17,7 @@ user = "./workspace/.lamplit/profile/user-avatar.png"
17
17
  [codex]
18
18
  model = "gpt-5.6-luna"
19
19
  # The installed launcher selects and verifies its matching standalone app-server.
20
+ # A checkout configuration may set command to a verified codex-app-server path.
20
21
  # local_compaction = true
21
22
  # home = "/path/to/a/Codex-home" # omit to use the existing Codex login
22
23
 
@@ -0,0 +1,25 @@
1
+ # Optional Lamplit ecosystem MCPs.
2
+ #
3
+ # CFL itself needs only its bundled `companion` MCP. Start CFL once to create
4
+ # <workspace>/.codex/config.toml, then copy the tables below into that file if
5
+ # you want these integrations. CFL preserves operator-provided MCP entries and
6
+ # never waits for them before starting the Partner.
7
+
8
+ # FlickNote stores and retrieves local-first notes through its user daemon.
9
+ # Install: brew install GuionAI/tap/flicknote
10
+ # Then authenticate and install/start the daemon: flicknote login
11
+ # Check daemon readiness before use: flicknote daemon status
12
+ # Docs: https://github.com/GuionAI/flicknote-cli#install
13
+ # https://github.com/GuionAI/flicknote-cli#mcp-server
14
+ [mcp_servers.flicknote]
15
+ command = "flicknote"
16
+ args = ["mcp"]
17
+
18
+ # Guion Web provides search, documentation lookup, source search, and fetching.
19
+ # Install (Node.js 20+): npm install --global @guionai/web
20
+ # This process uses the managed Kepos Bridge search provider.
21
+ # Docs: https://github.com/GuionAI/web#install-and-configure
22
+ # https://github.com/GuionAI/web#mcp
23
+ [mcp_servers.web]
24
+ command = "web"
25
+ args = ["mcp", "--provider", "kepos-bridge"]
@@ -6181,16 +6181,14 @@ const schema = object({
6181
6181
  }).strict().optional(),
6182
6182
  port: number$1().int().min(1024).max(65535).default(3082),
6183
6183
  codex: object({
6184
- command: string().min(1).default("codex"),
6185
- executable_type: _enum(["cli", "app-server"]).default("cli"),
6184
+ command: string().min(1).default("codex-app-server"),
6186
6185
  model: string().min(1).default(DEFAULT_CODEX_MODEL),
6187
6186
  version: literal(SUPPORTED_CODEX_VERSION).default(SUPPORTED_CODEX_VERSION),
6188
6187
  home: string().min(1).optional(),
6189
6188
  provenance: string().min(1).optional(),
6190
6189
  local_compaction: boolean().default(false)
6191
6190
  }).strict().default({
6192
- command: "codex",
6193
- executable_type: "cli",
6191
+ command: "codex-app-server",
6194
6192
  model: DEFAULT_CODEX_MODEL,
6195
6193
  version: SUPPORTED_CODEX_VERSION,
6196
6194
  local_compaction: false
@@ -62649,68 +62647,30 @@ function hookCommand(contextPath) {
62649
62647
  function isRecord$1(value) {
62650
62648
  return typeof value === "object" && value !== null && !Array.isArray(value);
62651
62649
  }
62652
- const selectedMcpServers = {
62653
- web: {
62654
- command: "web",
62655
- args: [
62656
- "mcp",
62657
- "--provider",
62658
- "kepos-bridge"
62659
- ]
62660
- },
62661
- project: {
62662
- command: "project",
62663
- args: ["mcp"]
62664
- },
62665
- flicknote: {
62666
- command: "flicknote",
62667
- args: ["mcp"]
62668
- },
62669
- "guion-email": { url: "https://mail.guion.io/mcp" }
62670
- };
62671
- const disabledMcpServers = [
62672
- "og",
62673
- "skill",
62674
- "openaiDeveloperDocs"
62675
- ];
62676
62650
  function sameValue(left, right) {
62677
62651
  return JSON.stringify(left) === JSON.stringify(right);
62678
62652
  }
62679
- function ensureMcpInventory(config, workspace) {
62653
+ /** Keep only CFL's installation-specific Companion endpoint current. */
62654
+ function ensureCompanionMcp(config, workspace) {
62680
62655
  const servers = isRecord$1(config.mcp_servers) ? config.mcp_servers : {};
62681
62656
  let changed = !isRecord$1(config.mcp_servers);
62682
- for (const [name, required] of Object.entries({
62683
- companion: {
62684
- command: process.execPath,
62685
- args: [fileURLToPath(new URL(`./${companionMcpFileName}`, import.meta.url)), resolve(workspace)]
62686
- },
62687
- ...selectedMcpServers
62688
- })) {
62689
- const server = isRecord$1(servers[name]) ? servers[name] : {};
62690
- for (const [key, value] of Object.entries(required)) if (!sameValue(server[key], value)) {
62691
- server[key] = value;
62692
- changed = true;
62693
- }
62694
- if (servers[name] !== server) {
62695
- servers[name] = server;
62696
- changed = true;
62697
- }
62657
+ const required = {
62658
+ command: process.execPath,
62659
+ args: [fileURLToPath(new URL(`./${companionMcpFileName}`, import.meta.url)), resolve(workspace)]
62660
+ };
62661
+ const companion = isRecord$1(servers.companion) ? servers.companion : {};
62662
+ for (const [key, value] of Object.entries(required)) if (!sameValue(companion[key], value)) {
62663
+ companion[key] = value;
62664
+ changed = true;
62698
62665
  }
62699
- for (const name of disabledMcpServers) {
62700
- const server = isRecord$1(servers[name]) ? servers[name] : {};
62701
- if (server.enabled !== false) {
62702
- server.enabled = false;
62703
- changed = true;
62704
- }
62705
- if (servers[name] !== server) {
62706
- servers[name] = server;
62707
- changed = true;
62708
- }
62666
+ if (servers.companion !== companion) {
62667
+ servers.companion = companion;
62668
+ changed = true;
62709
62669
  }
62710
62670
  if (changed) config.mcp_servers = servers;
62711
62671
  return changed;
62712
62672
  }
62713
- /** Add project-owned hooks and the selected MCP inventory while preserving config. */
62673
+ /** Add project-owned hooks and the bundled Companion MCP while preserving config. */
62714
62674
  async function ensureHookDeclaration(workspace, contextPath) {
62715
62675
  const configPath = join(resolve(workspace), ".codex", "config.toml");
62716
62676
  const command = hookCommand(contextPath);
@@ -62728,7 +62688,7 @@ async function ensureHookDeclaration(workspace, contextPath) {
62728
62688
  }
62729
62689
  const hooks = isRecord$1(config.hooks) ? config.hooks : {};
62730
62690
  const sessionStart = Array.isArray(hooks.SessionStart) ? hooks.SessionStart : [];
62731
- let changed = ensureMcpInventory(config, workspace);
62691
+ let changed = ensureCompanionMcp(config, workspace);
62732
62692
  let own = false;
62733
62693
  const normalizedGroups = sessionStart.map((group) => {
62734
62694
  if (!isRecord$1(group) || !Array.isArray(group.hooks)) return group;
@@ -62863,18 +62823,28 @@ const compactionPrompt = [
62863
62823
  ].join("\n");
62864
62824
  //#endregion
62865
62825
  //#region apps/partner/runtime/provenance.ts
62826
+ const CFL_FORK_REPOSITORY = "https://github.com/lamplitisles/codex";
62827
+ const CFL_FORK_SOURCE_REVISION = "445477b6a83514611ac206d2ab04b79374555a4c";
62866
62828
  const provenanceSchema = object({
62867
62829
  schemaVersion: literal(1),
62868
- forkRepository: literal("https://github.com/lamplitisles/codex"),
62869
- sourceRevision: literal("445477b6a83514611ac206d2ab04b79374555a4c"),
62870
- releaseTag: string().regex(/^cfl\/v0\.154\.0-app-server-musl\.[0-9]+$/u),
62830
+ forkRepository: literal(CFL_FORK_REPOSITORY),
62831
+ sourceRevision: string(),
62832
+ releaseTag: string(),
62871
62833
  codexVersion: literal(SUPPORTED_CODEX_VERSION),
62872
- target: literal("x86_64-unknown-linux-musl"),
62834
+ target: _enum(["x86_64-unknown-linux-musl", "aarch64-apple-darwin"]),
62873
62835
  executables: object({
62874
62836
  "bin/codex-app-server": string().regex(/^[a-f0-9]{64}$/u),
62875
62837
  "bin/codex-code-mode-host": string().regex(/^[a-f0-9]{64}$/u)
62876
62838
  }).strict()
62877
- }).strict();
62839
+ }).strict().superRefine((value, context) => {
62840
+ const mac = value.target === "aarch64-apple-darwin";
62841
+ const revision = mac ? "c1139f7b2793e94c14243689d756b09c0186708d" : CFL_FORK_SOURCE_REVISION;
62842
+ const tag = mac ? /^cfl\/v0\.154\.0-app-server-darwin\.[0-9]+$/u : /^cfl\/v0\.154\.0-app-server-musl\.[0-9]+$/u;
62843
+ if (value.sourceRevision !== revision || !tag.test(value.releaseTag)) context.addIssue({
62844
+ code: "custom",
62845
+ message: "Source revision/release identity does not match the selected platform"
62846
+ });
62847
+ });
62878
62848
  async function sha256(path) {
62879
62849
  const hash = createHash("sha256");
62880
62850
  for await (const chunk of createReadStream(path)) hash.update(chunk);
@@ -64632,7 +64602,7 @@ async function convertDshSession(config, inputPath, companionStatePath, attachme
64632
64602
  version: "0.1.0"
64633
64603
  },
64634
64604
  codexPath: selectedCodexPath,
64635
- codexExecutableType: config.codex.executable_type,
64605
+ codexExecutableType: "app-server",
64636
64606
  configOverrides: injected.configOverrides,
64637
64607
  cwd: destination,
64638
64608
  env: environment,
@@ -66203,7 +66173,6 @@ async function createPartner(config, credentials, dependencies = {}) {
66203
66173
  } catch (error) {
66204
66174
  if (error.code !== "ENOENT") throw error;
66205
66175
  }
66206
- if (marker?.model && marker.model !== config.codex.model) throw new Error(`Stored session uses ${marker.model}; configured ${config.codex.model}. Select a separate Partner workspace to use a different model.`);
66207
66176
  startupPending = !marker?.threadId;
66208
66177
  await refreshBootstrap();
66209
66178
  const injected = dependencies.appServer ?? {};
@@ -66237,7 +66206,7 @@ async function createPartner(config, credentials, dependencies = {}) {
66237
66206
  version: "0.1.0"
66238
66207
  },
66239
66208
  codexPath: selectedCodexPath,
66240
- codexExecutableType: config.codex.executable_type,
66209
+ codexExecutableType: "app-server",
66241
66210
  configOverrides: injected.configOverrides,
66242
66211
  cwd: paths.workspaceRoot,
66243
66212
  env: environment,
@@ -66299,12 +66268,6 @@ async function createPartner(config, credentials, dependencies = {}) {
66299
66268
  model: config.codex.model
66300
66269
  }), { mode: 384 });
66301
66270
  }
66302
- const requiredMcpServers = [
66303
- "companion",
66304
- "flicknote",
66305
- "project",
66306
- "web"
66307
- ];
66308
66271
  const readinessDeadline = Date.now() + 1e4;
66309
66272
  for (;;) {
66310
66273
  const mcpStatuses = [];
@@ -66317,20 +66280,17 @@ async function createPartner(config, credentials, dependencies = {}) {
66317
66280
  mcpStatuses.push(...page.data);
66318
66281
  cursor = page.nextCursor ?? void 0;
66319
66282
  } while (cursor);
66320
- const transient = [];
66321
- const terminal = [];
66322
- for (const name of requiredMcpServers) {
66323
- const status = mcpStatuses.find((entry) => entry.name === name);
66324
- if (status?.runtimeStatus === "connected" && (status.toolsError === null || status.toolsError === void 0)) continue;
66325
- if (status?.runtimeStatus === "notStarted" || status?.runtimeStatus === "starting") transient.push(name);
66326
- else terminal.push(name);
66327
- }
66328
- if (!terminal.length && !transient.length) break;
66329
- if (terminal.length) throw new Error(`Required workspace MCP servers unavailable: ${terminal.join(", ")}`);
66330
- if (Date.now() >= readinessDeadline) throw new Error(`Required workspace MCP servers unavailable after readiness timeout: ${transient.join(", ")}`);
66283
+ const companion = mcpStatuses.find((entry) => entry.name === "companion");
66284
+ if (companion?.runtimeStatus === "connected" && (companion.toolsError === null || companion.toolsError === void 0)) break;
66285
+ if (companion?.runtimeStatus !== "notStarted" && companion?.runtimeStatus !== "starting") throw new Error("Required workspace MCP servers unavailable: companion");
66286
+ if (Date.now() >= readinessDeadline) throw new Error("Required workspace MCP servers unavailable after readiness timeout: companion");
66331
66287
  await new Promise((resolve) => setTimeout(resolve, 100));
66332
66288
  }
66333
66289
  if (response.model !== void 0 && response.model !== config.codex.model) throw new Error(`Codex selected ${String(response.model)} instead of configured ${config.codex.model}`);
66290
+ if (marker?.threadId && marker.model !== config.codex.model) await writeFile(markerPath, JSON.stringify({
66291
+ threadId,
66292
+ model: config.codex.model
66293
+ }), { mode: 384 });
66334
66294
  await hydrateHistory();
66335
66295
  startupPending = false;
66336
66296
  await refreshBootstrap();
@@ -67510,7 +67470,6 @@ if (nativePackageRoot) {
67510
67470
  codex: {
67511
67471
  ...config.codex,
67512
67472
  command: join(root, "bin", "codex-app-server"),
67513
- executable_type: "app-server",
67514
67473
  provenance: join(root, "provenance.json")
67515
67474
  }
67516
67475
  };
@@ -1 +0,0 @@
1
- import{H as e,U as t,V as n,ft as r,i,n as a,ot as o,st as s}from"./eSlNf1Mv.js";var c=class{constructor(e,t){this.status=e,this.body=typeof t==`string`?{message:t}:t||{message:`Error: ${e}`}}toString(){return JSON.stringify(this.body)}},l=class{constructor(e,t){try{new Headers({location:t})}catch{throw Error(`Invalid redirect location ${JSON.stringify(t)}: this string contains characters that cannot be used in HTTP headers`)}this.status=e,this.location=t}},u=class extends Error{constructor(e,t,n){super(n),this.status=e,this.text=t}};new URL(`sveltekit-internal://`);function d(e,t){return e===`/`||t===`ignore`?e:t===`never`?e.endsWith(`/`)?e.slice(0,-1):e:t===`always`&&!e.endsWith(`/`)?e+`/`:e}function f(e){return e.split(`%25`).map(decodeURI).join(`%25`)}function p(e){for(let t in e)e[t]=decodeURIComponent(e[t]);return e}function m({href:e}){return e.split(`#`)[0]}function h(){}function g(...e){let t=5381;for(let n of e)if(typeof n==`string`){let e=n.length;for(;e;)t=t*33^n.charCodeAt(--e)}else if(ArrayBuffer.isView(n)){let e=new Uint8Array(n.buffer,n.byteOffset,n.byteLength),r=e.length;for(;r;)t=t*33^e[--r]}else throw TypeError(`value must be a string or TypedArray`);return(t>>>0).toString(36)}new TextEncoder;function _(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}var v=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&y.delete(x(e)),v(e,t));var y=new Map;function ee(e,t){let n=x(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent);r.getAttribute(`data-b64`)!==null&&(e=_(e));let i=r.getAttribute(`data-ttl`);return i&&y.set(n,{body:e,init:t,ttl:1e3*Number(i)}),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function b(e,t,n){if(y.size>0){let t=x(e,n),r=y.get(t);if(r){if(performance.now()<r.ttl&&[`default`,`force-cache`,`only-if-cached`,void 0].includes(n?.cache))return new Response(r.body,r.init);y.delete(t)}}return window.fetch(t,n)}function x(e,t){let n=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){let e=[];t.headers&&e.push([...new Headers(t.headers)].join(`,`)),t.body&&(typeof t.body==`string`||ArrayBuffer.isView(t.body))&&e.push(t.body),n+=`[data-hash="${g(...e)}"]`}return n}var te=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,ne=/^\/\((?:[^)]+)\)$/;function re(e){let t=[];return{pattern:e===`/`||ne.test(e)?/^\/$/:RegExp(`^${ae(e).map(e=>{let n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(e);if(n)return t.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),`(?:/([^]*))?`;let r=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(e);if(r)return t.push({name:r[1],matcher:r[2],optional:!0,rest:!1,chained:!0}),`(?:/([^/]+))?`;if(!e)return;let i=e.split(/\[(.+?)\](?!\])/);return`/`+i.map((e,n)=>{if(n%2){if(e.startsWith(`x+`))return se(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return se(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=te.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return se(e)}).join(``)}).join(``)}/?$`),params:t}}function ie(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function ae(e){return e.slice(1).split(`/`).filter(ie)}function oe(e,t,n){let r={},i=e.slice(1),a=i.filter(e=>e!==void 0),o=0;for(let e=0;e<t.length;e+=1){let s=t[e],c=i[e-o];if(s.chained&&s.rest&&o&&(c=i.slice(e-o,e+1).filter(e=>e).join(`/`),o=0),c===void 0){if(s.rest)c=``;else continue}if(!s.matcher||n[s.matcher](c)){r[s.name]=c;let n=t[e+1],l=i[e+1];n&&!n.rest&&n.optional&&l&&s.chained&&(o=0),!n&&!l&&Object.keys(r).length===a.length&&(o=0);continue}if(s.optional&&s.chained){o++;continue}return}if(!o)return r}function se(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}function ce({nodes:e,server_loads:t,dictionary:n,matchers:r}){let i=new Set(t);return Object.entries(n).map(([t,[n,i,s]])=>{let{pattern:c,params:l}=re(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return oe(t,l,r)},errors:[1,...s||[]].map(t=>e[t]),layouts:[0,...i||[]].map(o),leaf:a(n)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function a(t){let n=t<0;return n&&(t=~t),[n,e[t]]}function o(t){return t===void 0?t:[i.has(t),e[t]]}}function le(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function ue(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var S=globalThis.__sveltekit_yry919?.base??``,de=globalThis.__sveltekit_yry919?.assets??S??``,fe=`1789466693520`,pe=`sveltekit:snapshot`,me=`sveltekit:scroll`,he=`sveltekit:states`,C=`sveltekit:history`,w=`sveltekit:navigation`,T={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},ge=location.origin;function _e(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){let e=document.getElementsByTagName(`base`);t=e.length?e[0].href:document.URL}return new URL(e,t)}function E(){return{x:pageXOffset,y:pageYOffset}}function D(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var ve={...T,"":T.hover};function ye(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function be(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=ye(e)}}function xe(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){let e=location.hash.split(`#`)[1]||`/`;r.hash=`#${e}${r.hash}`}}catch{}let i=e instanceof SVGAElement?e.target.baseVal:e.target,a=!r||!!i||k(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===ge&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function O(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=D(s,`preload-code`)),i===null&&(i=D(s,`preload-data`)),t===null&&(t=D(s,`keepfocus`)),n===null&&(n=D(s,`noscroll`)),a===null&&(a=D(s,`reload`)),o===null&&(o=D(s,`replacestate`)),s=ye(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:ve[r??`off`],preload_data:ve[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function Se(e){let t=r(e),n=!0;function i(){n=!0,t.update(e=>e)}function a(e){n=!1,t.set(e)}function o(e){let r;return t.subscribe(t=>{(r===void 0||n&&t!==r)&&e(r=t)})}return{notify:i,set:a,subscribe:o}}var Ce={v:h};function we(){let{set:e,subscribe:t}=r(!1),n;async function i(){clearTimeout(n);try{let t=await fetch(`${de}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let r=(await t.json()).version!==fe;return r&&(e(!0),Ce.v(),clearTimeout(n)),r}catch{return!1}}return{subscribe:t,check:i}}function k(e,t,n){return e.origin!==ge||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function Te(e){}var Ee=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);[...Ee],[...new Set([...Ee])];function De(e){return e.filter(e=>e!=null)}function A(e,t){return e+`/`+t}function Oe(e){return e instanceof c||e instanceof u?e.status:500}function ke(e){return e instanceof u?e.text:`Internal Error`}var j,M,Ae,je=i.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(i.toString()),Me=`a:`;je?(j={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(Me)},M={current:null},Ae={current:!1}):(j=new class{#e=s({});get data(){return n(this.#e)}set data(e){o(this.#e,e)}#t=s(null);get form(){return n(this.#t)}set form(e){o(this.#t,e)}#n=s(null);get error(){return n(this.#n)}set error(e){o(this.#n,e)}#r=s({});get params(){return n(this.#r)}set params(e){o(this.#r,e)}#i=s({id:null});get route(){return n(this.#i)}set route(e){o(this.#i,e)}#a=s({});get state(){return n(this.#a)}set state(e){o(this.#a,e)}#o=s(-1);get status(){return n(this.#o)}set status(e){o(this.#o,e)}#s=s(new URL(Me));get url(){return n(this.#s)}set url(e){o(this.#s,e)}},M=new class{#e=s(null);get current(){return n(this.#e)}set current(e){o(this.#e,e)}},Ae=new class{#e=s(!1);get current(){return n(this.#e)}set current(e){o(this.#e,e)}},Ce.v=()=>Ae.current=!0);function Ne(e){Object.assign(j,e)}var{onMount:Pe,tick:Fe}=a,Ie=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),N=null,P=le(`sveltekit:scroll`)??{},F=le(`sveltekit:snapshot`)??{},I={url:Se({}),page:Se({}),navigating:r(null),updated:we()};function Le(e){P[e]=E()}function Re(e,t){let n=e+1;for(;P[n];)delete P[n],n+=1;for(n=t+1;F[n];)delete F[n],n+=1}function L(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(h)}async function ze(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(S||`/`);e&&await e.update()}}var Be,Ve,R,z,He,B,Ue={},We={},V=[],H=[],U=null;function Ge(){U?.fork?.then(e=>e?.discard()),U=null,Q={element:void 0,href:void 0}}var Ke=new Map,qe=new Set,Je=new Set,W=new Set,G={branch:[],error:null,url:null,nav:null},Ye=!1,Xe=!1,Ze=!0,K=!1,q=!1,Qe=!1,$e=!1,et,J,Y,X,tt=new Set,nt=new Map,rt=new Map;async function it(e,t,n){if(globalThis.__sveltekit_yry919.data){let{q:e={},p:t={},l:n={},f:r={}}=globalThis.__sveltekit_yry919.data;for(let t in e)Ue[t]=e[t];for(let e in n)Ue[e]=n[e];for(let e in r)Ue[e]=r[e];for(let e in t)We[e]=t[e]}document.URL!==location.href&&(location.href=location.href),B=e,await e.hooks.init?.(),Be=ce(e),z=document.documentElement,He=t,Ve=e.nodes[0],R=e.nodes[1],Ve(),R(),J=history.state?.[C],Y=history.state?.[w],J||(J=Y=Date.now(),history.replaceState({...history.state,[C]:J,[w]:Y},``));let r=P[J];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await Mt(He,n)):(await Z({type:`enter`,url:_e(B.hash?Rt(new URL(location.href)):location.href),replace_state:!0}),i()),jt()}function at(){V.length=0,$e=!1}function ot(e){H.some(e=>e?.snapshot)&&(F[e]=H.map(e=>e?.snapshot?.capture()))}function st(e){F[e]?.forEach((e,t)=>{H[t]?.snapshot?.restore(e)})}function ct(){Le(J),ue(me,P),ot(Y),ue(pe,F)}async function lt(e,n,r,i){let a,o;n.invalidateAll&&Ge(),await Z({type:`goto`,url:_e(e),keepfocus:n.keepFocus,noscroll:n.noScroll,replace_state:n.replaceState,state:n.state,redirect_count:r,nav_token:i,accept:()=>{if(n.invalidateAll){$e=!0,a=new Set;for(let[e,t]of nt)for(let[n,r]of t)r.resource?.reset(),a.add(A(e,n));o=new Set;for(let[e,t]of rt)for(let n of t.keys())o.add(A(e,n))}n.invalidate&&n.invalidate.forEach(At)}}),n.invalidateAll&&t().then(t).then(()=>{for(let[e,t]of nt)for(let[n,{resource:r}]of t)a?.has(A(e,n))&&r.start();for(let[e,t]of rt)for(let[n,{resource:r}]of t)o?.has(A(e,n))&&r.reconnect()})}async function ut(e){if(e.id!==U?.id){Ge();let t={};tt.add(t),U={id:e.id,token:t,promise:bt({...e,preload:t}).then(e=>(tt.delete(t),e.type===`loaded`&&e.state.error&&Ge(),e)),fork:null}}return U.promise}async function dt(e){let t=(await wt(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function ft(e,t,n){let r={params:G.params,route:{id:G.route?.id??null},url:new URL(location.href)};if(G={...e.state,nav:r},Ne(e.props.page),et=new B.root({target:t,props:{...e.props,stores:I,components:H},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),n){let e={from:null,to:{...r,scroll:P[J]??E()},willUnload:!1,type:`enter`,complete:Promise.resolve()};W.forEach(t=>t(e))}st(Y),Xe=!0}async function pt({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(S&&(e.pathname===S||e.pathname===S+`/`))c=`always`;else for(let e of n)e?.slash!==void 0&&(c=e.slash);e.pathname=d(e.pathname,c),e.search=e.search;let l={type:`loaded`,state:{url:e,params:t,branch:n,error:a,route:o},props:{constructors:De(n).map(e=>e.node.component),page:Lt(j)}};s!==void 0&&(l.props.form=s);let u={},f=!j,p=0;for(let e=0;e<Math.max(n.length,G.branch.length);e+=1){let t=n[e],r=G.branch[e];t?.data!==r?.data&&(f=!0),t&&(u={...u,...t.data},f&&(l.props[`data_${p}`]=u),p+=1)}return(!G.url||e.href!==G.url.href||G.error!==a||s!==void 0&&s!==j.form||f)&&(l.props.page={error:a,params:t,route:{id:o?.id??null},state:{},status:i,url:new URL(e),form:s??null,data:f?u:j.data}),l}async function mt({loader:e,parent:t,url:n,params:r,route:i,server_data_node:a}){let o={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},s=await e();return{node:s,loader:e,server:a,universal:s.universal?.load?{type:`data`,data:null,uses:o}:null,data:a?.data??null,slash:s.universal?.trailingSlash??a?.slash}}function ht(e,t,n){let r=e instanceof Request?e.url:e,i=new URL(r,n);return i.origin===n.origin&&(r=i.href.slice(n.origin.length)),{resolved:i,promise:Xe?b(r,i.href,t):ee(r,t)}}function gt(e,t,n,r,i,a){if($e)return!0;if(!i)return!1;if(i.parent&&e||i.route&&t||i.url&&n)return!0;for(let e of i.search_params)if(r.has(e))return!0;for(let e of i.params)if(a[e]!==G.params[e])return!0;for(let e of i.dependencies)if(V.some(t=>t(new URL(e))))return!0;return!1}function _t(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function vt(e,t){if(!e)return new Set(t.searchParams.keys());let n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(let r of n){let i=e.searchParams.getAll(r),a=t.searchParams.getAll(r);i.every(e=>a.includes(e))&&a.every(e=>i.includes(e))&&n.delete(r)}return n}function yt({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:Lt(j),constructors:[]}}}async function bt({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(U?.id===e)return tt.delete(U.token),U.promise;let{errors:o,layouts:s,leaf:u}=i,d=[...s,u];o.forEach(e=>e?.().catch(h)),d.forEach(e=>e?.[1]().catch(h));let f=G.url?e!==Et(G.url):!1,p=G.route?i.id!==G.route.id:!1,m=vt(G.url,n),g=!1,_=d.map(async(e,t)=>{if(!e)return;let a=G.branch[t];return e[1]===a?.loader&&!gt(g,p,f,m,a.universal?.uses,r)?a:(g=!0,mt({loader:e[1],url:n,params:r,route:i,parent:async()=>{let e={};for(let n=0;n<t;n+=1)Object.assign(e,(await _[n])?.data);return e},server_data_node:_t(e[0]?{type:`skip`}:null,e[0]?a?.server:void 0)}))});for(let e of _)e.catch(h);let v=[];for(let e=0;e<d.length;e+=1)if(d[e])try{v.push(await _[e])}catch(t){if(t instanceof l)return{type:`redirect`,location:t.location};if(a&&tt.has(a))return yt({error:await $(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=Oe(t),u;if(t instanceof c)u=t.body;else{if(await I.updated.check())return await ze(),await L(n);u=await $(t,{params:r,url:n,route:{id:i.id}})}let d=await xt(e,v,o);return d?pt({url:n,params:r,branch:v.slice(0,d.idx).concat(d.node),errors:o,status:s,error:u,route:i}):await Ot(n,{id:i.id},u,s)}else v.push(void 0);return pt({url:n,params:r,branch:v,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function xt(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)--r;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function St({status:e,error:t,url:n,route:r}){let i={};try{return pt({url:n,params:i,branch:[await mt({loader:Ve,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:_t(null)}),{node:await R(),loader:R,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(t){if(t instanceof l){await lt(new URL(t.location,location.href),{},0);return}let a=await B.get_error_template(),o=await $(t,{url:n,params:i,route:r}),s=a({status:e,message:String(o?.message??``).replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`)}),c=new DOMParser().parseFromString(s,`text/html`);throw document.documentElement.replaceChild(document.adoptNode(c.head),document.head),document.documentElement.replaceChild(document.adoptNode(c.body),document.body),t}}async function Ct(e){let t=e.href;if(Ke.has(t))return Ke.get(t);let n;try{let r=(async()=>{let t=await B.hooks.reroute({url:new URL(e),fetch:async(t,n)=>ht(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);B.hash?n.hash=t:n.pathname=t,t=n}return t})();Ke.set(t,r),n=await r}catch{Ke.delete(t);return}return n}async function wt(e,t){if(e&&!k(e,S,B.hash)){let n=await Ct(e);if(!n)return;let r=Tt(n);for(let n of Be){let i=n.exec(r);if(i)return{id:Et(e),invalidating:t,route:n,params:p(i),url:e}}}}function Tt(e){return f(B.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(S.length))||`/`}function Et(e){return(B.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function Dt({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=It(G,n,e,t,a??null);r!==void 0&&(s.navigation.delta=r),i!==void 0&&(s.navigation.event=i);let c={...s.navigation,cancel:()=>{o=!0,s.reject(Error(`navigation cancelled`))}};return K||qe.forEach(e=>e(c)),o?null:s}async function Z({type:n,url:r,popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c={},redirect_count:l=0,nav_token:d={},accept:f=h,block:p=h,event:m}){let g=X;X=d;let _=await wt(r,!1),v=n===`enter`?It(G,_,r,n):Dt({url:r,type:n,delta:i?.delta,intent:_,scroll:i?.scroll,event:m});if(!v){p(),X===d&&(X=g);return}let y=J,ee=Y;f(),K=!0,Xe&&v.navigation.type!==`enter`&&I.navigating.set(M.current=v.navigation);let b=_&&await bt(_);if(!b){if(k(r,S,B.hash))return await L(r,s);b=await Ot(r,{id:null},await $(new u(404,`Not Found`,`Not found: ${r.pathname}`),{url:r,params:{},route:{id:null}}),404,s)}if(r=_?.url||r,X!==d){v.reject(Error(`navigation aborted`));return}if(!b)return;if(b.type===`redirect`){if(l<20){await Z({type:n,url:new URL(b.location,r),popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c,redirect_count:l+1,nav_token:d}),v.fulfil(void 0);return}if(b=await St({status:500,error:await $(Error(`Redirect loop`),{url:r,params:{},route:{id:null}}),url:r,route:{id:null}}),!b)return}else if(b.props.page.status>=400&&await I.updated.check())return await ze(),await L(r,s);if(at(),Le(y),ot(ee),b.props.page.url.pathname!==r.pathname&&(r.pathname=b.props.page.url.pathname),c=i?i.state:c,!i){let e=+!s,t={[C]:J+=e,[w]:Y+=e,[he]:c};(s?history.replaceState:history.pushState).call(history,t,``,r),s||Re(J,Y)}let x=_&&U?.id===_.id?U.fork:null;U?.fork&&!x?Ge():(U=null,Q={element:void 0,href:void 0}),b.props.page.state=c;let te;if(Xe){let t=(await Promise.all(Array.from(Je,e=>e(v.navigation)))).filter(e=>typeof e==`function`);if(t.length>0){function e(){t.forEach(e=>{W.delete(e)})}t.push(e),t.forEach(e=>{W.add(e)})}let n=v.navigation.to;G={...b.state,nav:{params:n.params,route:n.route,url:n.url}},b.props.page&&(b.props.page.url=r),!a&&document.activeElement instanceof HTMLElement&&document.activeElement!==document.body&&document.activeElement.blur();let i=x&&await x;i?te=i.commit():(N=null,et.$set(b.props),N&&Object.assign(b.props.page,N),Ne(b.props.page),te=e?.()),Qe=!0}else await ft(b,He,!1);let{activeElement:ne}=document;if(await te,await t(),await t(),X!==d){v.reject(Error(`navigation aborted`));return}b.props.page&&N&&Object.assign(b.props.page,N);let re=null;if(Ze){let e=i?i.scroll:o?E():null;e?scrollTo(e.x,e.y):(re=r.hash&&document.getElementById(zt(r)))?re.scrollIntoView():scrollTo(0,0)}let ie=document.activeElement!==ne&&document.activeElement!==document.body;!a&&!ie&&Ft(r,!re),Ze=!0,K=!1,v.fulfil(void 0),v.navigation.to&&(v.navigation.to.scroll=E()),W.forEach(e=>e(v.navigation)),n===`popstate`&&st(Y),I.navigating.set(M.current=null)}async function Ot(e,t,n,r,i){return e.origin===ge&&e.pathname===location.pathname&&!Ye?await St({status:r,error:n,url:e,route:t}):await L(e,i)}var Q={element:void 0,href:void 0};function kt(){let e,t;z.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{i(n,T.hover)},20)});function n(e){e.defaultPrevented||i(e.composedPath()[0],T.tap)}z.addEventListener(`mousedown`,n),z.addEventListener(`touchstart`,n,{passive:!0});let r=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(dt(new URL(t.target.href)),r.unobserve(t.target))},{threshold:0});async function i(e,n){let r=be(e,z),i=r===Q.element&&r?.href===Q.href&&n>=t;if(!r||i)return;let{url:a,external:o,download:s}=xe(r,S,B.hash);if(o||s)return;let c=O(r),l=a&&Et(G.url)===Et(a);if(!(c.reload||l)){if(n<=c.preload_data){Q={element:r,href:r.href},t=T.tap;let e=await wt(a,!1);if(!e)return;ut(e)}else n<=c.preload_code&&(Q={element:r,href:r.href},t=n,dt(a))}}function a(){r.disconnect();for(let e of z.querySelectorAll(`a`)){let{url:t,external:n,download:i}=xe(e,S,B.hash);if(n||i)continue;let a=O(e);a.reload||(a.preload_code===T.viewport&&r.observe(e),a.preload_code===T.eager&&dt(t))}}W.add(a),a()}function $(e,t){if(e instanceof c)return e.body;let n=Oe(e),r=ke(e);return B.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function At(e){if(typeof e==`function`)V.push(e);else{let{href:t}=new URL(e,location.href);V.push(e=>e.href===t)}}function jt(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(ct(),!K){let e=It(G,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};qe.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&ct()}),navigator.connection?.saveData||kt(),z.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=be(t.composedPath()[0],z);if(!n)return;let{url:r,external:i,target:a,download:o}=xe(n,S,B.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=O(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&r.protocol!==`https:`&&r.protocol!==`http:`||o)return;let[c,l]=(B.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l)){Dt({url:r,type:`link`,event:t})?K=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=G.url.href.split(`#`);if(i===l){if(t.preventDefault(),l===``||l===`top`&&n.ownerDocument.getElementById(`top`)===null)scrollTo({top:0});else{let e=n.ownerDocument.getElementById(decodeURIComponent(l));e&&(e.scrollIntoView(),e.focus())}return}if(q=!0,Le(J),e(r),!s.replace_state)return;q=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Z({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}),z.addEventListener(`submit`,e=>{if(e.defaultPrevented)return;let t=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if((n?.formTarget||t.target)===`_blank`||(n?.formMethod||t.method)!==`get`)return;let r=new URL(n?.hasAttribute(`formaction`)&&n?.formAction||t.action);if(k(r,S,!1))return;let i=e.target,a=O(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Z({type:`form`,url:r,keepfocus:a.keepfocus,noscroll:a.noscroll,replace_state:a.replace_state??r.href===location.href,event:e})}),addEventListener(`popstate`,async t=>{if(!Pt){if(t.state?.[`sveltekit:history`]){let n=t.state[C];if(X={},n===J)return;let r=P[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[w],s=G.url?m(location)===m(G.url):!1;if(o===Y&&(Qe||s)){i!==j.state&&(j.state=i),e(a),P[J]=E(),r&&scrollTo(r.x,r.y),J=n;return}let c=n-J;await Z({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{J=n,Y=o},block:()=>{history.go(-c)},nav_token:X,event:t})}else q||(e(new URL(location.href)),B.hash&&location.reload())}}),addEventListener(`hashchange`,()=>{q&&(q=!1,history.replaceState({...history.state,[C]:++J,[w]:Y},``,location.href))});for(let e of document.querySelectorAll(`link`))Ie.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&I.navigating.set(M.current=null)});function e(e){G.url=j.url=e,I.page.set(Lt(j)),I.page.notify()}}async function Mt(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){Ye=!0;let u=new URL(location.href),d;({params:i={},route:a={id:null}}=await wt(u,!1)||{}),d=Be.find(({id:e})=>e===a.id);let f,p=!0;try{let e=r.map(async(t,n)=>{let r=s[n];return r?.uses&&(r.uses=Nt(r.uses)),mt({loader:B.nodes[t],url:u,params:i,route:a,parent:async()=>{let t={};for(let r=0;r<n;r+=1)Object.assign(t,(await e[r]).data);return t},server_data_node:_t(r)})}),o=await Promise.all(e);if(d){let e=d.layouts;for(let t=0;t<e.length;t++)e[t]||o.splice(t,0,void 0)}f=await pt({url:u,params:i,branch:o,status:t,error:n,errors:d?.errors,form:c,route:d??null})}catch(t){if(t instanceof l)return await L(new URL(t.location,location.href));f=await St({status:Oe(t),error:await $(t,{url:u,params:i,route:a}),url:u,route:a}),e.textContent=``,p=!1}f&&(f.props.page&&(f.props.page.state={}),await ft(f,e,p))}function Nt(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}var Pt=!1;function Ft(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=zt(e);if(n&&document.getElementById(n)){let{x:r,y:i}=E();setTimeout(()=>{let a=history.state;Pt=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),Pt=!1})}else{let e=document.body,t=e.getAttribute(`tabindex`);e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),t===null?e.removeAttribute(`tabindex`):e.setAttribute(`tabindex`,t)}let r=getSelection();if(r&&r.type!==`None`){let e=[];for(let t=0;t<r.rangeCount;t+=1)e.push(r.getRangeAt(t));setTimeout(()=>{if(r.rangeCount===e.length){for(let t=0;t<r.rangeCount;t+=1){let n=e[t],i=r.getRangeAt(t);if(n.commonAncestorContainer!==i.commonAncestorContainer||n.startContainer!==i.startContainer||n.endContainer!==i.endContainer||n.startOffset!==i.startOffset||n.endOffset!==i.endOffset)return}r.removeAllRanges()}})}}}function It(e,t,n,r,i=null){let a,o,s=new Promise((e,t)=>{a=e,o=t});return s.catch(h),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:E()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:i},willUnload:!t,type:r,complete:s},fulfil:a,reject:o}}function Lt(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function Rt(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function zt(e){let t;if(B.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{Te as i,M as n,j as r,it as t};
@@ -1 +0,0 @@
1
- import{i as e,t}from"../chunks/BMiSuNVz.js";export{e as load_css,t as start};