lula2 0.0.6 → 0.0.7-nightly.1

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/dist/index.js CHANGED
@@ -2770,31 +2770,15 @@ var UICommand = class _UICommand {
2770
2770
  };
2771
2771
 
2772
2772
  // cli/commands/version.ts
2773
+ import { fileURLToPath as fileURLToPath2 } from "url";
2773
2774
  import fs3 from "fs";
2774
2775
  import path from "path";
2775
- import { fileURLToPath as fileURLToPath2 } from "url";
2776
+ var __dirname2 = path.dirname(fileURLToPath2(import.meta.url));
2776
2777
  function getVersion() {
2777
- const __dirname2 = path.dirname(fileURLToPath2(import.meta.url));
2778
- const possiblePaths = [
2779
- path.resolve(__dirname2, "../../package.json"),
2780
- // dev: cli/commands -> root
2781
- path.resolve(__dirname2, "../../../package.json"),
2782
- // alt dev path
2783
- path.resolve(__dirname2, "../package.json"),
2784
- // dist: dist/cli/commands -> dist -> root
2785
- path.resolve(__dirname2, "./package.json"),
2786
- // dist bundled
2787
- path.resolve(process.cwd(), "package.json")
2788
- // current directory fallback
2789
- ];
2790
- for (const pkgPath of possiblePaths) {
2791
- if (fs3.existsSync(pkgPath)) {
2792
- const packageJson = fs3.readFileSync(pkgPath, "utf8");
2793
- const { version } = JSON.parse(packageJson);
2794
- return version;
2795
- }
2796
- }
2797
- return "unknown";
2778
+ const pkgPath = path.resolve(__dirname2, "../package.json");
2779
+ const packageJson = fs3.readFileSync(pkgPath, "utf8");
2780
+ const { version } = JSON.parse(packageJson);
2781
+ return version;
2798
2782
  }
2799
2783
 
2800
2784
  // cli/commands/crawl.ts
@@ -2922,6 +2906,6 @@ SHA-256 of block contents: \`${blockSha256}\`.
2922
2906
  // index.ts
2923
2907
  var program = new Command2();
2924
2908
  program.name("lula2").description("Lula - Git-friendly compliance control management").version(getVersion(), "-v, --version", "output the current version").option("--debug", "Enable debug logging");
2925
- UICommand.register(program, () => program.opts().debug || false);
2926
2909
  program.addCommand(crawlCommand());
2910
+ UICommand.register(program, () => program.opts().debug || false);
2927
2911
  program.parse(process.argv);
package/package.json CHANGED
@@ -1,122 +1,121 @@
1
1
  {
2
- "name": "lula2",
3
- "version": "0.0.6",
4
- "description": "A tool for managing compliance as code in your GitHub repositories.",
5
- "bin": {
6
- "lula2": "./dist/lula2"
7
- },
8
- "main": "dist/index.js",
9
- "types": "dist/index.d.ts",
10
- "type": "module",
11
- "engines": {
12
- "node": ">=22.0.0"
13
- },
14
- "repository": {
15
- "type": "git",
16
- "url": "git+https://github.com/defenseunicorns/lula-next.git"
17
- },
18
- "keywords": [
19
- "compliance",
20
- "devops",
21
- "devsecops"
22
- ],
23
- "author": "Defense Unicorns",
24
- "license": "Apache-2.0",
25
- "bugs": {
26
- "url": "https://github.com/defenseunicorns/lula-next/issues"
27
- },
28
- "homepage": "https://github.com/defenseunicorns/lula-next#readme",
29
- "files": [
30
- "/src",
31
- "/dist",
32
- "!src/**/*.test.ts",
33
- "!dist/**/*.test.js*",
34
- "!dist/**/*.test.d.ts*"
35
- ],
36
- "scripts": {
37
- "dev": "vite dev --port 5173",
38
- "dev:api": "tsx --watch index.ts --debug ui --port 3000 --no-open-browser",
39
- "dev:full": "concurrently \"npm run dev:api\" \"npm run dev\"",
40
- "build": "npm run build:svelte && npm run build:cli && npm run postbuild:cli",
41
- "build:svelte": "vite build",
42
- "build:cli": "esbuild index.ts cli/**/*.ts --bundle --platform=node --target=node22 --format=esm --outdir=dist --external:express --external:commander --external:js-yaml --external:yaml --external:isomorphic-git --external:glob --external:open --external:ws --external:cors --external:multer --external:@octokit/rest --external:undici --external:exceljs --external:csv-parse",
43
- "postbuild:cli": "cp cli-wrapper.mjs dist/lula2 && chmod +x dist/lula2",
44
- "preview": "vite preview",
45
- "prepare": "svelte-kit sync || echo ''",
46
- "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json && tsc --noEmit",
47
- "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
48
- "format": "prettier --write 'src/**/*.{ts,js,svelte}' 'cli/**/*.ts' 'index.ts'",
49
- "format:check": "prettier --check 'src/**/*.{ts,js,svelte}' 'cli/**/*.ts' 'index.ts'",
50
- "lint": "prettier --check 'src/**/*.{ts,js,svelte}' 'cli/**/*.ts' 'index.ts' && eslint src cli",
51
- "test": "npm run test:unit -- --run --coverage",
52
- "test:integration": "vitest --config integration/vitest.config.integration.ts",
53
- "test:unit": "vitest"
54
- },
55
- "dependencies": {
56
- "@octokit/rest": "^22.0.0",
57
- "@types/ws": "^8.18.1",
58
- "commander": "^14.0.0",
59
- "cors": "^2.8.5",
60
- "csv-parse": "^6.1.0",
61
- "exceljs": "^4.4.0",
62
- "express": "^4.21.2",
63
- "flowbite": "^2.5.2",
64
- "glob": "^10.4.5",
65
- "isomorphic-git": "^1.33.1",
66
- "js-yaml": "^4.1.0",
67
- "multer": "^2.0.2",
68
- "open": "^9.1.0",
69
- "undici": "^7.15.0",
70
- "ws": "^8.18.3",
71
- "yaml": "^2.8.1"
72
- },
73
- "devDependencies": {
74
- "@commitlint/cli": "^19.8.1",
75
- "@commitlint/config-conventional": "^19.8.1",
76
- "@eslint/compat": "^1.3.2",
77
- "@eslint/js": "^9.35.0",
78
- "@sveltejs/adapter-static": "^3.0.9",
79
- "@sveltejs/kit": "^2.37.1",
80
- "@sveltejs/vite-plugin-svelte": "^6.1.4",
81
- "@tailwindcss/vite": "^4.1.13",
82
- "@types/cors": "^2.8.19",
83
- "@types/express": "^4.17.23",
84
- "@types/js-yaml": "^4.0.9",
85
- "@types/multer": "^2.0.0",
86
- "@typescript-eslint/eslint-plugin": "^8.42.0",
87
- "@typescript-eslint/parser": "^8.42.0",
88
- "@vitest/browser": "^3.2.4",
89
- "@vitest/coverage-v8": "^3.2.4",
90
- "carbon-icons-svelte": "^13.5.0",
91
- "carbon-preprocess-svelte": "^0.11.11",
92
- "concurrently": "^9.2.1",
93
- "esbuild": "^0.25.9",
94
- "eslint": "^9.35.0",
95
- "eslint-config-prettier": "^10.1.8",
96
- "eslint-plugin-jsdoc": "^54.5.0",
97
- "eslint-plugin-svelte": "^3.12.2",
98
- "globals": "^16.3.0",
99
- "husky": "^9.1.7",
100
- "playwright": "^1.55.0",
101
- "prettier": "3.6.2",
102
- "prettier-plugin-svelte": "^3.4.0",
103
- "semantic-release": "^24.2.7",
104
- "shellcheck": "^4.1.0",
105
- "svelte": "^5.38.7",
106
- "svelte-check": "^4.3.1",
107
- "tailwind-merge": "^3.3.1",
108
- "tailwindcss": "^4.1.13",
109
- "tsx": "^4.20.5",
110
- "typescript": "5.9.2",
111
- "typescript-eslint": "^8.42.0",
112
- "vite": "^7.1.4",
113
- "vitest": "^3.2.4",
114
- "vitest-browser-svelte": "^0.1.0"
115
- },
116
- "release": {
117
- "branches": [
118
- "main",
119
- "next"
120
- ]
121
- }
122
- }
2
+ "name": "lula2",
3
+ "version": "0.0.7-nightly.1",
4
+ "description": "A tool for managing compliance as code in your GitHub repositories.",
5
+ "bin": {
6
+ "lula2": "./dist/lula2"
7
+ },
8
+ "main": "dist/index.js",
9
+ "types": "dist/index.d.ts",
10
+ "type": "module",
11
+ "engines": {
12
+ "node": ">=22.0.0"
13
+ },
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "git+https://github.com/defenseunicorns/lula-next.git"
17
+ },
18
+ "keywords": [
19
+ "compliance",
20
+ "devops",
21
+ "devsecops"
22
+ ],
23
+ "author": "Defense Unicorns",
24
+ "license": "Apache-2.0",
25
+ "bugs": {
26
+ "url": "https://github.com/defenseunicorns/lula-next/issues"
27
+ },
28
+ "homepage": "https://github.com/defenseunicorns/lula-next#readme",
29
+ "files": [
30
+ "/src",
31
+ "/dist",
32
+ "!src/**/*.test.ts",
33
+ "!dist/**/*.test.js*",
34
+ "!dist/**/*.test.d.ts*"
35
+ ],
36
+ "dependencies": {
37
+ "@octokit/rest": "^22.0.0",
38
+ "@types/ws": "^8.18.1",
39
+ "commander": "^14.0.0",
40
+ "cors": "^2.8.5",
41
+ "csv-parse": "^6.1.0",
42
+ "exceljs": "^4.4.0",
43
+ "express": "^4.21.2",
44
+ "flowbite": "^2.5.2",
45
+ "glob": "^10.4.5",
46
+ "isomorphic-git": "^1.33.1",
47
+ "js-yaml": "^4.1.0",
48
+ "multer": "^2.0.2",
49
+ "open": "^9.1.0",
50
+ "undici": "^7.15.0",
51
+ "ws": "^8.18.3",
52
+ "yaml": "^2.8.1"
53
+ },
54
+ "devDependencies": {
55
+ "@commitlint/cli": "^19.8.1",
56
+ "@commitlint/config-conventional": "^19.8.1",
57
+ "@eslint/compat": "^1.3.2",
58
+ "@eslint/js": "^9.35.0",
59
+ "@sveltejs/adapter-static": "^3.0.9",
60
+ "@sveltejs/kit": "^2.37.1",
61
+ "@sveltejs/vite-plugin-svelte": "^6.1.4",
62
+ "@tailwindcss/vite": "^4.1.13",
63
+ "@types/cors": "^2.8.19",
64
+ "@types/express": "^4.17.23",
65
+ "@types/js-yaml": "^4.0.9",
66
+ "@types/multer": "^2.0.0",
67
+ "@typescript-eslint/eslint-plugin": "^8.42.0",
68
+ "@typescript-eslint/parser": "^8.42.0",
69
+ "@vitest/browser": "^3.2.4",
70
+ "@vitest/coverage-v8": "^3.2.4",
71
+ "carbon-icons-svelte": "^13.5.0",
72
+ "carbon-preprocess-svelte": "^0.11.11",
73
+ "concurrently": "^9.2.1",
74
+ "esbuild": "^0.25.9",
75
+ "eslint": "^9.35.0",
76
+ "eslint-config-prettier": "^10.1.8",
77
+ "eslint-plugin-jsdoc": "^54.5.0",
78
+ "eslint-plugin-svelte": "^3.12.2",
79
+ "globals": "^16.3.0",
80
+ "husky": "^9.1.7",
81
+ "playwright": "^1.55.0",
82
+ "prettier": "3.6.2",
83
+ "prettier-plugin-svelte": "^3.4.0",
84
+ "semantic-release": "^24.2.7",
85
+ "shellcheck": "^4.1.0",
86
+ "svelte": "^5.38.7",
87
+ "svelte-check": "^4.3.1",
88
+ "tailwind-merge": "^3.3.1",
89
+ "tailwindcss": "^4.1.13",
90
+ "tsx": "^4.20.5",
91
+ "typescript": "5.9.2",
92
+ "typescript-eslint": "^8.42.0",
93
+ "vite": "^7.1.4",
94
+ "vitest": "^3.2.4",
95
+ "vitest-browser-svelte": "^0.1.0"
96
+ },
97
+ "release": {
98
+ "branches": [
99
+ "main",
100
+ "next"
101
+ ]
102
+ },
103
+ "scripts": {
104
+ "dev": "vite dev --port 5173",
105
+ "dev:api": "tsx --watch index.ts --debug ui --port 3000 --no-open-browser",
106
+ "dev:full": "concurrently \"npm run dev:api\" \"npm run dev\"",
107
+ "build": "npm run build:svelte && npm run build:cli && npm run postbuild:cli",
108
+ "build:svelte": "vite build",
109
+ "build:cli": "esbuild index.ts cli/**/*.ts --bundle --platform=node --target=node22 --format=esm --outdir=dist --external:express --external:commander --external:js-yaml --external:yaml --external:isomorphic-git --external:glob --external:open --external:ws --external:cors --external:multer --external:@octokit/rest --external:undici --external:exceljs --external:csv-parse",
110
+ "postbuild:cli": "cp cli-wrapper.mjs dist/lula2 && chmod +x dist/lula2",
111
+ "preview": "vite preview",
112
+ "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json && tsc --noEmit",
113
+ "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
114
+ "format": "prettier --write 'src/**/*.{ts,js,svelte}' 'cli/**/*.ts' 'index.ts'",
115
+ "format:check": "prettier --check 'src/**/*.{ts,js,svelte}' 'cli/**/*.ts' 'index.ts'",
116
+ "lint": "prettier --check 'src/**/*.{ts,js,svelte}' 'cli/**/*.ts' 'index.ts' && eslint src cli",
117
+ "test": "npm run test:unit -- --run --coverage",
118
+ "test:integration": "vitest --config integration/vitest.config.integration.ts",
119
+ "test:unit": "vitest"
120
+ }
121
+ }
@@ -1,3 +0,0 @@
1
- import{b2 as Ae,o as De,g as L,h as P,d as x,bg as yt,as as Fe}from"./B_3ksxz5.js";class le{constructor(t,n){this.status=t,typeof n=="string"?this.body={message:n}:n?this.body=n:this.body={message:`Error: ${t}`}}toString(){return JSON.stringify(this.body)}}class Se{constructor(t,n){this.status=t,this.location=n}}class Re extends Error{constructor(t,n,r){super(r),this.status=t,this.text=n}}new URL("sveltekit-internal://");function wt(e,t){return e==="/"||t==="ignore"?e:t==="never"?e.endsWith("/")?e.slice(0,-1):e:t==="always"&&!e.endsWith("/")?e+"/":e}function vt(e){return e.split("%25").map(decodeURI).join("%25")}function bt(e){for(const t in e)e[t]=decodeURIComponent(e[t]);return e}function me({href:e}){return e.split("#")[0]}function kt(e,t,n,r=!1){const a=new URL(e);Object.defineProperty(a,"searchParams",{value:new Proxy(a.searchParams,{get(i,o){if(o==="get"||o==="getAll"||o==="has")return u=>(n(u),i[o](u));t();const c=Reflect.get(i,o);return typeof c=="function"?c.bind(i):c}}),enumerable:!0,configurable:!0});const s=["href","pathname","search","toString","toJSON"];r&&s.push("hash");for(const i of s)Object.defineProperty(a,i,{get(){return t(),e[i]},enumerable:!0,configurable:!0});return a}function Et(...e){let t=5381;for(const n of e)if(typeof n=="string"){let r=n.length;for(;r;)t=t*33^n.charCodeAt(--r)}else if(ArrayBuffer.isView(n)){const r=new Uint8Array(n.buffer,n.byteOffset,n.byteLength);let a=r.length;for(;a;)t=t*33^r[--a]}else throw new TypeError("value must be a string or TypedArray");return(t>>>0).toString(36)}new TextEncoder;const At=new TextDecoder;function St(e){const t=atob(e),n=new Uint8Array(t.length);for(let r=0;r<t.length;r++)n[r]=t.charCodeAt(r);return n}const Rt=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||"GET")!=="GET"&&G.delete(Te(e)),Rt(e,t));const G=new Map;function Tt(e,t){const n=Te(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:a,...s}=JSON.parse(r.textContent);const i=r.getAttribute("data-ttl");return i&&G.set(n,{body:a,init:s,ttl:1e3*Number(i)}),r.getAttribute("data-b64")!==null&&(a=St(a)),Promise.resolve(new Response(a,s))}return window.fetch(e,t)}function It(e,t,n){if(G.size>0){const r=Te(e,n),a=G.get(r);if(a){if(performance.now()<a.ttl&&["default","force-cache","only-if-cached",void 0].includes(n?.cache))return new Response(a.body,a.init);G.delete(r)}}return window.fetch(t,n)}function Te(e,t){let r=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){const a=[];t.headers&&a.push([...new Headers(t.headers)].join(",")),t.body&&(typeof t.body=="string"||ArrayBuffer.isView(t.body))&&a.push(t.body),r+=`[data-hash="${Et(...a)}"]`}return r}const Ut=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/;function Lt(e){const t=[];return{pattern:e==="/"?/^\/$/:new RegExp(`^${xt(e).map(r=>{const a=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(r);if(a)return t.push({name:a[1],matcher:a[2],optional:!1,rest:!0,chained:!0}),"(?:/([^]*))?";const s=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(r);if(s)return t.push({name:s[1],matcher:s[2],optional:!0,rest:!1,chained:!0}),"(?:/([^/]+))?";if(!r)return;const i=r.split(/\[(.+?)\](?!\])/);return"/"+i.map((c,u)=>{if(u%2){if(c.startsWith("x+"))return _e(String.fromCharCode(parseInt(c.slice(2),16)));if(c.startsWith("u+"))return _e(String.fromCharCode(...c.slice(2).split("-").map(w=>parseInt(w,16))));const d=Ut.exec(c),[,h,f,l,p]=d;return t.push({name:l,matcher:p,optional:!!h,rest:!!f,chained:f?u===1&&i[0]==="":!1}),f?"([^]*?)":h?"([^/]*)?":"([^/]+?)"}return _e(c)}).join("")}).join("")}/?$`),params:t}}function Pt(e){return e!==""&&!/^\([^)]+\)$/.test(e)}function xt(e){return e.slice(1).split("/").filter(Pt)}function Ct(e,t,n){const r={},a=e.slice(1),s=a.filter(o=>o!==void 0);let i=0;for(let o=0;o<t.length;o+=1){const c=t[o];let u=a[o-i];if(c.chained&&c.rest&&i&&(u=a.slice(o-i,o+1).filter(d=>d).join("/"),i=0),u===void 0){c.rest&&(r[c.name]="");continue}if(!c.matcher||n[c.matcher](u)){r[c.name]=u;const d=t[o+1],h=a[o+1];d&&!d.rest&&d.optional&&h&&c.chained&&(i=0),!d&&!h&&Object.keys(r).length===s.length&&(i=0);continue}if(c.optional&&c.chained){i++;continue}return}if(!i)return r}function _e(e){return e.normalize().replace(/[[\]]/g,"\\$&").replace(/%/g,"%25").replace(/\//g,"%2[Ff]").replace(/\?/g,"%3[Ff]").replace(/#/g,"%23").replace(/[.*+?^${}()|\\]/g,"\\$&")}function jt({nodes:e,server_loads:t,dictionary:n,matchers:r}){const a=new Set(t);return Object.entries(n).map(([o,[c,u,d]])=>{const{pattern:h,params:f}=Lt(o),l={id:o,exec:p=>{const w=h.exec(p);if(w)return Ct(w,f,r)},errors:[1,...d||[]].map(p=>e[p]),layouts:[0,...u||[]].map(i),leaf:s(c)};return l.errors.length=l.layouts.length=Math.max(l.errors.length,l.layouts.length),l});function s(o){const c=o<0;return c&&(o=~o),[c,e[o]]}function i(o){return o===void 0?o:[a.has(o),e[o]]}}function ze(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function qe(e,t,n=JSON.stringify){const r=n(t);try{sessionStorage[e]=r}catch{}}const T=globalThis.__sveltekit_qxnjjs?.base??"",Nt=globalThis.__sveltekit_qxnjjs?.assets??T,Ot="1757449494999",Xe="sveltekit:snapshot",Ze="sveltekit:scroll",Qe="sveltekit:states",$t="sveltekit:pageurl",q="sveltekit:history",W="sveltekit:navigation",O={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},Z=location.origin;function Ie(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){const n=document.getElementsByTagName("base");t=n.length?n[0].href:document.URL}return new URL(e,t)}function ue(){return{x:pageXOffset,y:pageYOffset}}function F(e,t){return e.getAttribute(`data-sveltekit-${t}`)}const Be={...O,"":O.hover};function et(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function tt(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()==="A"&&e.hasAttribute("href"))return e;e=et(e)}}function ve(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){const o=location.hash.split("#")[1]||"/";r.hash=`#${o}${r.hash}`}}catch{}const a=e instanceof SVGAElement?e.target.baseVal:e.target,s=!r||!!a||fe(r,t,n)||(e.getAttribute("rel")||"").split(/\s+/).includes("external"),i=r?.origin===Z&&e.hasAttribute("download");return{url:r,external:s,target:a,download:i}}function te(e){let t=null,n=null,r=null,a=null,s=null,i=null,o=e;for(;o&&o!==document.documentElement;)r===null&&(r=F(o,"preload-code")),a===null&&(a=F(o,"preload-data")),t===null&&(t=F(o,"keepfocus")),n===null&&(n=F(o,"noscroll")),s===null&&(s=F(o,"reload")),i===null&&(i=F(o,"replacestate")),o=et(o);function c(u){switch(u){case"":case"true":return!0;case"off":case"false":return!1;default:return}}return{preload_code:Be[r??"off"],preload_data:Be[a??"off"],keepfocus:c(t),noscroll:c(n),reload:c(s),replace_state:c(i)}}function Ve(e){const t=Ae(e);let n=!0;function r(){n=!0,t.update(i=>i)}function a(i){n=!1,t.set(i)}function s(i){let o;return t.subscribe(c=>{(o===void 0||n&&c!==o)&&i(o=c)})}return{notify:r,set:a,subscribe:s}}const nt={v:()=>{}};function Dt(){const{set:e,subscribe:t}=Ae(!1);let n;async function r(){clearTimeout(n);try{const a=await fetch(`${Nt}/_app/version.json`,{headers:{pragma:"no-cache","cache-control":"no-cache"}});if(!a.ok)return!1;const i=(await a.json()).version!==Ot;return i&&(e(!0),nt.v(),clearTimeout(n)),i}catch{return!1}}return{subscribe:t,check:r}}function fe(e,t,n){return e.origin!==Z||!e.pathname.startsWith(t)?!0:n?!(e.pathname===t+"/"||e.pathname===t+"/index.html"||e.protocol==="file:"&&e.pathname.replace(/\/[^/]+\.html?$/,"")===t):!1}function An(e){}function Ft(e){const t=Bt(e),n=new ArrayBuffer(t.length),r=new DataView(n);for(let a=0;a<n.byteLength;a++)r.setUint8(a,t.charCodeAt(a));return n}const qt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Bt(e){e.length%4===0&&(e=e.replace(/==?$/,""));let t="",n=0,r=0;for(let a=0;a<e.length;a++)n<<=6,n|=qt.indexOf(e[a]),r+=6,r===24&&(t+=String.fromCharCode((n&16711680)>>16),t+=String.fromCharCode((n&65280)>>8),t+=String.fromCharCode(n&255),n=r=0);return r===12?(n>>=4,t+=String.fromCharCode(n)):r===18&&(n>>=2,t+=String.fromCharCode((n&65280)>>8),t+=String.fromCharCode(n&255)),t}const Vt=-1,Mt=-2,Gt=-3,Ht=-4,Kt=-5,Yt=-6;function Wt(e,t){if(typeof e=="number")return a(e,!0);if(!Array.isArray(e)||e.length===0)throw new Error("Invalid input");const n=e,r=Array(n.length);function a(s,i=!1){if(s===Vt)return;if(s===Gt)return NaN;if(s===Ht)return 1/0;if(s===Kt)return-1/0;if(s===Yt)return-0;if(i||typeof s!="number")throw new Error("Invalid input");if(s in r)return r[s];const o=n[s];if(!o||typeof o!="object")r[s]=o;else if(Array.isArray(o))if(typeof o[0]=="string"){const c=o[0],u=t?.[c];if(u)return r[s]=u(a(o[1]));switch(c){case"Date":r[s]=new Date(o[1]);break;case"Set":const d=new Set;r[s]=d;for(let l=1;l<o.length;l+=1)d.add(a(o[l]));break;case"Map":const h=new Map;r[s]=h;for(let l=1;l<o.length;l+=2)h.set(a(o[l]),a(o[l+1]));break;case"RegExp":r[s]=new RegExp(o[1],o[2]);break;case"Object":r[s]=Object(o[1]);break;case"BigInt":r[s]=BigInt(o[1]);break;case"null":const f=Object.create(null);r[s]=f;for(let l=1;l<o.length;l+=2)f[o[l]]=a(o[l+1]);break;case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"BigInt64Array":case"BigUint64Array":{const l=globalThis[c],p=new l(a(o[1]));r[s]=o[2]!==void 0?p.subarray(o[2],o[3]):p;break}case"ArrayBuffer":{const l=o[1],p=Ft(l);r[s]=p;break}case"Temporal.Duration":case"Temporal.Instant":case"Temporal.PlainDate":case"Temporal.PlainTime":case"Temporal.PlainDateTime":case"Temporal.PlainMonthDay":case"Temporal.PlainYearMonth":case"Temporal.ZonedDateTime":{const l=c.slice(9);r[s]=Temporal[l].from(o[1]);break}case"URL":{const l=new URL(o[1]);r[s]=l;break}case"URLSearchParams":{const l=new URLSearchParams(o[1]);r[s]=l;break}default:throw new Error(`Unknown type ${c}`)}}else{const c=new Array(o.length);r[s]=c;for(let u=0;u<o.length;u+=1){const d=o[u];d!==Mt&&(c[u]=a(d))}}else{const c={};r[s]=c;for(const u in o){if(u==="__proto__")throw new Error("Cannot parse an object with a `__proto__` property");const d=o[u];c[u]=a(d)}}return r[s]}return a(0)}const rt=new Set(["load","prerender","csr","ssr","trailingSlash","config"]);[...rt];const Jt=new Set([...rt]);[...Jt];function zt(e){return e.filter(t=>t!=null)}const Xt="x-sveltekit-invalidated",Zt="x-sveltekit-trailing-slash";function ne(e){return e instanceof le||e instanceof Re?e.status:500}function Qt(e){return e instanceof Re?e.text:"Internal Error"}let A,J,ye;const en=De.toString().includes("$$")||/function \w+\(\) \{\}/.test(De.toString());en?(A={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL("https://example.com")},J={current:null},ye={current:!1}):(A=new class{#e=L({});get data(){return P(this.#e)}set data(t){x(this.#e,t)}#t=L(null);get form(){return P(this.#t)}set form(t){x(this.#t,t)}#n=L(null);get error(){return P(this.#n)}set error(t){x(this.#n,t)}#r=L({});get params(){return P(this.#r)}set params(t){x(this.#r,t)}#a=L({id:null});get route(){return P(this.#a)}set route(t){x(this.#a,t)}#o=L({});get state(){return P(this.#o)}set state(t){x(this.#o,t)}#s=L(-1);get status(){return P(this.#s)}set status(t){x(this.#s,t)}#i=L(new URL("https://example.com"));get url(){return P(this.#i)}set url(t){x(this.#i,t)}},J=new class{#e=L(null);get current(){return P(this.#e)}set current(t){x(this.#e,t)}},ye=new class{#e=L(!1);get current(){return P(this.#e)}set current(t){x(this.#e,t)}},nt.v=()=>ye.current=!0);function tn(e){Object.assign(A,e)}const nn="/__data.json",rn=".html__data.json";function an(e){return e.endsWith(".html")?e.replace(/\.html$/,rn):e.replace(/\/$/,"")+nn}const Me={spanContext(){return on},setAttribute(){return this},setAttributes(){return this},addEvent(){return this},setStatus(){return this},updateName(){return this},end(){return this},isRecording(){return!1},recordException(){return this},addLink(){return this},addLinks(){return this}},on={traceId:"",spanId:"",traceFlags:0},{tick:sn}=yt,cn=new Set(["icon","shortcut icon","apple-touch-icon"]),D=ze(Ze)??{},z=ze(Xe)??{},N={url:Ve({}),page:Ve({}),navigating:Ae(null),updated:Dt()};function Ue(e){D[e]=ue()}function ln(e,t){let n=e+1;for(;D[n];)delete D[n],n+=1;for(n=t+1;z[n];)delete z[n],n+=1}function V(e){return location.href=e.href,new Promise(()=>{})}async function at(){if("serviceWorker"in navigator){const e=await navigator.serviceWorker.getRegistration(T||"/");e&&await e.update()}}function Ge(){}let Le,be,re,C,ke,v;globalThis.__sveltekit_qxnjjs?.data;const ae=[],oe=[];let j=null;const ee=new Map,ot=new Set,un=new Set,H=new Set;let y={branch:[],error:null,url:null},Pe=!1,se=!1,He=!0,X=!1,M=!1,st=!1,xe=!1,it,k,R,$;const K=new Set,Ke=new Map;async function In(e,t,n){document.URL!==location.href&&(location.href=location.href),v=e,await e.hooks.init?.(),Le=jt(e),C=document.documentElement,ke=t,be=e.nodes[0],re=e.nodes[1],be(),re(),k=history.state?.[q],R=history.state?.[W],k||(k=R=Date.now(),history.replaceState({...history.state,[q]:k,[W]:R},""));const r=D[k];function a(){r&&(history.scrollRestoration="manual",scrollTo(r.x,r.y))}n?(a(),await vn(ke,n)):(await Y({type:"enter",url:Ie(v.hash?kn(new URL(location.href)):location.href),replace_state:!0}),a()),wn()}function fn(){ae.length=0,xe=!1}function ct(e){oe.some(t=>t?.snapshot)&&(z[e]=oe.map(t=>t?.snapshot?.capture()))}function lt(e){z[e]?.forEach((t,n)=>{oe[n]?.snapshot?.restore(t)})}function Ye(){Ue(k),qe(Ze,D),ct(R),qe(Xe,z)}async function Ce(e,t,n,r){let a;const s=await Y({type:"goto",url:Ie(e),keepfocus:t.keepFocus,noscroll:t.noScroll,replace_state:t.replaceState,state:t.state,redirect_count:n,nav_token:r,accept:()=>{t.invalidateAll&&(xe=!0,a=[...Ke.keys()]),t.invalidate&&t.invalidate.forEach(yn)}});return t.invalidateAll&&Fe().then(Fe).then(()=>{Ke.forEach(({resource:i},o)=>{a?.includes(o)&&i.refresh?.()})}),s}async function dn(e){if(e.id!==j?.id){const t={};K.add(t),j={id:e.id,token:t,promise:dt({...e,preload:t}).then(n=>(K.delete(t),n.type==="loaded"&&n.state.error&&(j=null),n))}}return j.promise}async function we(e){const t=(await he(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].map(n=>n?.[1]()))}function ut(e,t,n){y=e.state;const r=document.querySelector("style[data-sveltekit]");if(r&&r.remove(),Object.assign(A,e.props.page),it=new v.root({target:t,props:{...e.props,stores:N,components:oe},hydrate:n,sync:!1}),lt(R),n){const a={from:null,to:{params:y.params,route:{id:y.route?.id??null},url:new URL(location.href)},willUnload:!1,type:"enter",complete:Promise.resolve()};H.forEach(s=>s(a))}se=!0}function ie({url:e,params:t,branch:n,status:r,error:a,route:s,form:i}){let o="never";if(T&&(e.pathname===T||e.pathname===T+"/"))o="always";else for(const l of n)l?.slash!==void 0&&(o=l.slash);e.pathname=wt(e.pathname,o),e.search=e.search;const c={type:"loaded",state:{url:e,params:t,branch:n,error:a,route:s},props:{constructors:zt(n).map(l=>l.node.component),page:$e(A)}};i!==void 0&&(c.props.form=i);let u={},d=!A,h=0;for(let l=0;l<Math.max(n.length,y.branch.length);l+=1){const p=n[l],w=y.branch[l];p?.data!==w?.data&&(d=!0),p&&(u={...u,...p.data},d&&(c.props[`data_${h}`]=u),h+=1)}return(!y.url||e.href!==y.url.href||y.error!==a||i!==void 0&&i!==A.form||d)&&(c.props.page={error:a,params:t,route:{id:s?.id??null},state:{},status:r,url:new URL(e),form:i??null,data:d?u:A.data}),c}async function je({loader:e,parent:t,url:n,params:r,route:a,server_data_node:s}){let i=null,o=!0;const c={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},u=await e();if(u.universal?.load){let d=function(...f){for(const l of f){const{href:p}=new URL(l,n);c.dependencies.add(p)}};const h={tracing:{enabled:!1,root:Me,current:Me},route:new Proxy(a,{get:(f,l)=>(o&&(c.route=!0),f[l])}),params:new Proxy(r,{get:(f,l)=>(o&&c.params.add(l),f[l])}),data:s?.data??null,url:kt(n,()=>{o&&(c.url=!0)},f=>{o&&c.search_params.add(f)},v.hash),async fetch(f,l){f instanceof Request&&(l={body:f.method==="GET"||f.method==="HEAD"?void 0:await f.blob(),cache:f.cache,credentials:f.credentials,headers:[...f.headers].length>0?f?.headers:void 0,integrity:f.integrity,keepalive:f.keepalive,method:f.method,mode:f.mode,redirect:f.redirect,referrer:f.referrer,referrerPolicy:f.referrerPolicy,signal:f.signal,...l});const{resolved:p,promise:w}=ft(f,l,n);return o&&d(p.href),w},setHeaders:()=>{},depends:d,parent(){return o&&(c.parent=!0),t()},untrack(f){o=!1;try{return f()}finally{o=!0}}};i=await u.universal.load.call(null,h)??null}return{node:u,loader:e,server:s,universal:u.universal?.load?{type:"data",data:i,uses:c}:null,data:i??s?.data??null,slash:u.universal?.trailingSlash??s?.slash}}function ft(e,t,n){let r=e instanceof Request?e.url:e;const a=new URL(r,n);a.origin===n.origin&&(r=a.href.slice(n.origin.length));const s=se?It(r,a.href,t):Tt(r,t);return{resolved:a,promise:s}}function We(e,t,n,r,a,s){if(xe)return!0;if(!a)return!1;if(a.parent&&e||a.route&&t||a.url&&n)return!0;for(const i of a.search_params)if(r.has(i))return!0;for(const i of a.params)if(s[i]!==y.params[i])return!0;for(const i of a.dependencies)if(ae.some(o=>o(new URL(i))))return!0;return!1}function Ne(e,t){return e?.type==="data"?e:e?.type==="skip"?t??null:null}function hn(e,t){if(!e)return new Set(t.searchParams.keys());const n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(const r of n){const a=e.searchParams.getAll(r),s=t.searchParams.getAll(r);a.every(i=>s.includes(i))&&s.every(i=>a.includes(i))&&n.delete(r)}return n}function Je({error:e,url:t,route:n,params:r}){return{type:"loaded",state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:$e(A),constructors:[]}}}async function dt({id:e,invalidating:t,url:n,params:r,route:a,preload:s}){if(j?.id===e)return K.delete(j.token),j.promise;const{errors:i,layouts:o,leaf:c}=a,u=[...o,c];i.forEach(g=>g?.().catch(()=>{})),u.forEach(g=>g?.[1]().catch(()=>{}));let d=null;const h=y.url?e!==ce(y.url):!1,f=y.route?a.id!==y.route.id:!1,l=hn(y.url,n);let p=!1;const w=u.map((g,_)=>{const b=y.branch[_],E=!!g?.[0]&&(b?.loader!==g[1]||We(p,f,h,l,b.server?.uses,r));return E&&(p=!0),E});if(w.some(Boolean)){try{d=await gt(n,w)}catch(g){const _=await B(g,{url:n,params:r,route:{id:e}});return K.has(s)?Je({error:_,url:n,params:r,route:a}):de({status:ne(g),error:_,url:n,route:a})}if(d.type==="redirect")return d}const m=d?.nodes;let S=!1;const U=u.map(async(g,_)=>{if(!g)return;const b=y.branch[_],E=m?.[_];if((!E||E.type==="skip")&&g[1]===b?.loader&&!We(S,f,h,l,b.universal?.uses,r))return b;if(S=!0,E?.type==="error")throw E;return je({loader:g[1],url:n,params:r,route:a,parent:async()=>{const pe={};for(let ge=0;ge<_;ge+=1)Object.assign(pe,(await U[ge])?.data);return pe},server_data_node:Ne(E===void 0&&g[0]?{type:"skip"}:E??null,g[0]?b?.server:void 0)})});for(const g of U)g.catch(()=>{});const I=[];for(let g=0;g<u.length;g+=1)if(u[g])try{I.push(await U[g])}catch(_){if(_ instanceof Se)return{type:"redirect",location:_.location};if(K.has(s))return Je({error:await B(_,{params:r,url:n,route:{id:a.id}}),url:n,params:r,route:a});let b=ne(_),E;if(m?.includes(_))b=_.status??b,E=_.error;else if(_ instanceof le)E=_.body;else{if(await N.updated.check())return await at(),await V(n);E=await B(_,{params:r,url:n,route:{id:a.id}})}const Q=await pn(g,I,i);return Q?ie({url:n,params:r,branch:I.slice(0,Q.idx).concat(Q.node),status:b,error:E,route:a}):await pt(n,{id:a.id},E,b)}else I.push(void 0);return ie({url:n,params:r,branch:I,status:200,error:null,route:a,form:t?void 0:null})}async function pn(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)r-=1;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function de({status:e,error:t,url:n,route:r}){const a={};let s=null;if(v.server_loads[0]===0)try{const o=await gt(n,[!0]);if(o.type!=="data"||o.nodes[0]&&o.nodes[0].type!=="data")throw 0;s=o.nodes[0]??null}catch{(n.origin!==Z||n.pathname!==location.pathname||Pe)&&await V(n)}try{const o=await je({loader:be,url:n,params:a,route:r,parent:()=>Promise.resolve({}),server_data_node:Ne(s)}),c={node:await re(),loader:re,universal:null,server:null,data:null};return ie({url:n,params:a,branch:[o,c],status:e,error:t,route:null})}catch(o){if(o instanceof Se)return Ce(new URL(o.location,location.href),{},0);throw o}}async function gn(e){const t=e.href;if(ee.has(t))return ee.get(t);let n;try{const r=(async()=>{let a=await v.hooks.reroute({url:new URL(e),fetch:async(s,i)=>ft(s,i,e).promise})??e;if(typeof a=="string"){const s=new URL(e);v.hash?s.hash=a:s.pathname=a,a=s}return a})();ee.set(t,r),n=await r}catch{ee.delete(t);return}return n}async function he(e,t){if(e&&!fe(e,T,v.hash)){const n=await gn(e);if(!n)return;const r=mn(n);for(const a of Le){const s=a.exec(r);if(s)return{id:ce(e),invalidating:t,route:a,params:bt(s),url:e}}}}function mn(e){return vt(v.hash?e.hash.replace(/^#/,"").replace(/[?#].+/,""):e.pathname.slice(T.length))||"/"}function ce(e){return(v.hash?e.hash.replace(/^#/,""):e.pathname)+e.search}function ht({url:e,type:t,intent:n,delta:r}){let a=!1;const s=Oe(y,n,e,t);r!==void 0&&(s.navigation.delta=r);const i={...s.navigation,cancel:()=>{a=!0,s.reject(new Error("navigation cancelled"))}};return X||ot.forEach(o=>o(i)),a?null:s}async function Y({type:e,url:t,popped:n,keepfocus:r,noscroll:a,replace_state:s,state:i={},redirect_count:o=0,nav_token:c={},accept:u=Ge,block:d=Ge}){const h=$;$=c;const f=await he(t,!1),l=e==="enter"?Oe(y,f,t,e):ht({url:t,type:e,delta:n?.delta,intent:f});if(!l){d(),$===c&&($=h);return}const p=k,w=R;u(),X=!0,se&&l.navigation.type!=="enter"&&N.navigating.set(J.current=l.navigation);let m=f&&await dt(f);if(!m){if(fe(t,T,v.hash))return await V(t);m=await pt(t,{id:null},await B(new Re(404,"Not Found",`Not found: ${t.pathname}`),{url:t,params:{},route:{id:null}}),404)}if(t=f?.url||t,$!==c)return l.reject(new Error("navigation aborted")),!1;if(m.type==="redirect")if(o>=20)m=await de({status:500,error:await B(new Error("Redirect loop"),{url:t,params:{},route:{id:null}}),url:t,route:{id:null}});else return await Ce(new URL(m.location,t).href,{},o+1,c),!1;else m.props.page.status>=400&&await N.updated.check()&&(await at(),await V(t));if(fn(),Ue(p),ct(w),m.props.page.url.pathname!==t.pathname&&(t.pathname=m.props.page.url.pathname),i=n?n.state:i,!n){const g=s?0:1,_={[q]:k+=g,[W]:R+=g,[Qe]:i};(s?history.replaceState:history.pushState).call(history,_,"",t),s||ln(k,R)}if(j=null,m.props.page.state=i,se){const g=(await Promise.all(Array.from(un,_=>_(l.navigation)))).filter(_=>typeof _=="function");if(g.length>0){let _=function(){g.forEach(b=>{H.delete(b)})};g.push(_),g.forEach(b=>{H.add(b)})}y=m.state,m.props.page&&(m.props.page.url=t),it.$set(m.props),tn(m.props.page),st=!0}else ut(m,ke,!1);const{activeElement:S}=document;await sn();const U=n?n.scroll:a?ue():null;if(He){const g=t.hash&&document.getElementById(_t(t));U?scrollTo(U.x,U.y):g?g.scrollIntoView():scrollTo(0,0)}const I=document.activeElement!==S&&document.activeElement!==document.body;!r&&!I&&bn(t),He=!0,m.props.page&&Object.assign(A,m.props.page),X=!1,e==="popstate"&&lt(R),l.fulfil(void 0),H.forEach(g=>g(l.navigation)),N.navigating.set(J.current=null)}async function pt(e,t,n,r){return e.origin===Z&&e.pathname===location.pathname&&!Pe?await de({status:r,error:n,url:e,route:t}):await V(e)}function _n(){let e,t,n;C.addEventListener("mousemove",o=>{const c=o.target;clearTimeout(e),e=setTimeout(()=>{s(c,O.hover)},20)});function r(o){o.defaultPrevented||s(o.composedPath()[0],O.tap)}C.addEventListener("mousedown",r),C.addEventListener("touchstart",r,{passive:!0});const a=new IntersectionObserver(o=>{for(const c of o)c.isIntersecting&&(we(new URL(c.target.href)),a.unobserve(c.target))},{threshold:0});async function s(o,c){const u=tt(o,C),d=u===t&&c>=n;if(!u||d)return;const{url:h,external:f,download:l}=ve(u,T,v.hash);if(f||l)return;const p=te(u),w=h&&ce(y.url)===ce(h);if(!(p.reload||w))if(c<=p.preload_data){t=u,n=O.tap;const m=await he(h,!1);if(!m)return;dn(m)}else c<=p.preload_code&&(t=u,n=c,we(h))}function i(){a.disconnect();for(const o of C.querySelectorAll("a")){const{url:c,external:u,download:d}=ve(o,T,v.hash);if(u||d)continue;const h=te(o);h.reload||(h.preload_code===O.viewport&&a.observe(o),h.preload_code===O.eager&&we(c))}}H.add(i),i()}function B(e,t){if(e instanceof le)return e.body;const n=ne(e),r=Qt(e);return v.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function Un(e,t={}){return e=new URL(Ie(e)),e.origin!==Z?Promise.reject(new Error("goto: invalid URL")):Ce(e,t,0)}function yn(e){if(typeof e=="function")ae.push(e);else{const{href:t}=new URL(e,location.href);ae.push(n=>n.href===t)}}function wn(){history.scrollRestoration="manual",addEventListener("beforeunload",t=>{let n=!1;if(Ye(),!X){const r=Oe(y,void 0,null,"leave"),a={...r.navigation,cancel:()=>{n=!0,r.reject(new Error("navigation cancelled"))}};ot.forEach(s=>s(a))}n?(t.preventDefault(),t.returnValue=""):history.scrollRestoration="auto"}),addEventListener("visibilitychange",()=>{document.visibilityState==="hidden"&&Ye()}),navigator.connection?.saveData||_n(),C.addEventListener("click",async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;const n=tt(t.composedPath()[0],C);if(!n)return;const{url:r,external:a,target:s,download:i}=ve(n,T,v.hash);if(!r)return;if(s==="_parent"||s==="_top"){if(window.parent!==window)return}else if(s&&s!=="_self")return;const o=te(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&!(r.protocol==="https:"||r.protocol==="http:")||i)return;const[u,d]=(v.hash?r.hash.replace(/^#/,""):r.href).split("#"),h=u===me(location);if(a||o.reload&&(!h||!d)){ht({url:r,type:"link"})?X=!0:t.preventDefault();return}if(d!==void 0&&h){const[,f]=y.url.href.split("#");if(f===d){if(t.preventDefault(),d===""||d==="top"&&n.ownerDocument.getElementById("top")===null)window.scrollTo({top:0});else{const l=n.ownerDocument.getElementById(decodeURIComponent(d));l&&(l.scrollIntoView(),l.focus())}return}if(M=!0,Ue(k),e(r),!o.replace_state)return;M=!1}t.preventDefault(),await new Promise(f=>{requestAnimationFrame(()=>{setTimeout(f,0)}),setTimeout(f,100)}),await Y({type:"link",url:r,keepfocus:o.keepfocus,noscroll:o.noscroll,replace_state:o.replace_state??r.href===location.href})}),C.addEventListener("submit",t=>{if(t.defaultPrevented)return;const n=HTMLFormElement.prototype.cloneNode.call(t.target),r=t.submitter;if((r?.formTarget||n.target)==="_blank"||(r?.formMethod||n.method)!=="get")return;const i=new URL(r?.hasAttribute("formaction")&&r?.formAction||n.action);if(fe(i,T,!1))return;const o=t.target,c=te(o);if(c.reload)return;t.preventDefault(),t.stopPropagation();const u=new FormData(o),d=r?.getAttribute("name");d&&u.append(d,r?.getAttribute("value")??""),i.search=new URLSearchParams(u).toString(),Y({type:"form",url:i,keepfocus:c.keepfocus,noscroll:c.noscroll,replace_state:c.replace_state??i.href===location.href})}),addEventListener("popstate",async t=>{if(!Ee){if(t.state?.[q]){const n=t.state[q];if($={},n===k)return;const r=D[n],a=t.state[Qe]??{},s=new URL(t.state[$t]??location.href),i=t.state[W],o=y.url?me(location)===me(y.url):!1;if(i===R&&(st||o)){a!==A.state&&(A.state=a),e(s),D[k]=ue(),r&&scrollTo(r.x,r.y),k=n;return}const u=n-k;await Y({type:"popstate",url:s,popped:{state:a,scroll:r,delta:u},accept:()=>{k=n,R=i},block:()=>{history.go(-u)},nav_token:$})}else if(!M){const n=new URL(location.href);e(n),v.hash&&location.reload()}}}),addEventListener("hashchange",()=>{M&&(M=!1,history.replaceState({...history.state,[q]:++k,[W]:R},"",location.href))});for(const t of document.querySelectorAll("link"))cn.has(t.rel)&&(t.href=t.href);addEventListener("pageshow",t=>{t.persisted&&N.navigating.set(J.current=null)});function e(t){y.url=A.url=t,N.page.set($e(A)),N.page.notify()}}async function vn(e,{status:t=200,error:n,node_ids:r,params:a,route:s,server_route:i,data:o,form:c}){Pe=!0;const u=new URL(location.href);let d;({params:a={},route:s={id:null}}=await he(u,!1)||{}),d=Le.find(({id:l})=>l===s.id);let h,f=!0;try{const l=r.map(async(w,m)=>{const S=o[m];return S?.uses&&(S.uses=mt(S.uses)),je({loader:v.nodes[w],url:u,params:a,route:s,parent:async()=>{const U={};for(let I=0;I<m;I+=1)Object.assign(U,(await l[I]).data);return U},server_data_node:Ne(S)})}),p=await Promise.all(l);if(d){const w=d.layouts;for(let m=0;m<w.length;m++)w[m]||p.splice(m,0,void 0)}h=ie({url:u,params:a,branch:p,status:t,error:n,form:c,route:d??null})}catch(l){if(l instanceof Se){await V(new URL(l.location,location.href));return}h=await de({status:ne(l),error:await B(l,{url:u,params:a,route:s}),url:u,route:s}),e.textContent="",f=!1}h.props.page&&(h.props.page.state={}),ut(h,e,f)}async function gt(e,t){const n=new URL(e);n.pathname=an(e.pathname),e.pathname.endsWith("/")&&n.searchParams.append(Zt,"1"),n.searchParams.append(Xt,t.map(s=>s?"1":"0").join(""));const r=window.fetch,a=await r(n.href,{});if(!a.ok){let s;throw a.headers.get("content-type")?.includes("application/json")?s=await a.json():a.status===404?s="Not Found":a.status===500&&(s="Internal Error"),new le(a.status,s)}return new Promise(async s=>{const i=new Map,o=a.body.getReader();function c(d){return Wt(d,{...v.decoders,Promise:h=>new Promise((f,l)=>{i.set(h,{fulfil:f,reject:l})})})}let u="";for(;;){const{done:d,value:h}=await o.read();if(d&&!u)break;for(u+=!h&&u?`
2
- `:At.decode(h,{stream:!0});;){const f=u.indexOf(`
3
- `);if(f===-1)break;const l=JSON.parse(u.slice(0,f));if(u=u.slice(f+1),l.type==="redirect")return s(l);if(l.type==="data")l.nodes?.forEach(p=>{p?.type==="data"&&(p.uses=mt(p.uses),p.data=c(p.data))}),s(l);else if(l.type==="chunk"){const{id:p,data:w,error:m}=l,S=i.get(p);i.delete(p),m?S.reject(c(m)):S.fulfil(c(w))}}}})}function mt(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??[])}}let Ee=!1;function bn(e){const t=document.querySelector("[autofocus]");if(t)t.focus();else{const n=_t(e);if(n&&document.getElementById(n)){const{x:a,y:s}=ue();setTimeout(()=>{const i=history.state;Ee=!0,location.replace(`#${n}`),v.hash&&location.replace(e.hash),history.replaceState(i,"",e.hash),scrollTo(a,s),Ee=!1})}else{const a=document.body,s=a.getAttribute("tabindex");a.tabIndex=-1,a.focus({preventScroll:!0,focusVisible:!1}),s!==null?a.setAttribute("tabindex",s):a.removeAttribute("tabindex")}const r=getSelection();if(r&&r.type!=="None"){const a=[];for(let s=0;s<r.rangeCount;s+=1)a.push(r.getRangeAt(s));setTimeout(()=>{if(r.rangeCount===a.length){for(let s=0;s<r.rangeCount;s+=1){const i=a[s],o=r.getRangeAt(s);if(i.commonAncestorContainer!==o.commonAncestorContainer||i.startContainer!==o.startContainer||i.endContainer!==o.endContainer||i.startOffset!==o.startOffset||i.endOffset!==o.endOffset)return}r.removeAllRanges()}})}}}function Oe(e,t,n,r){let a,s;const i=new Promise((c,u)=>{a=c,s=u});return i.catch(()=>{}),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n},willUnload:!t,type:r,complete:i},fulfil:a,reject:s}}function $e(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 kn(e){const t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function _t(e){let t;if(v.hash){const[,,n]=e.hash.split("#",3);t=n??""}else t=e.hash.slice(1);return decodeURIComponent(t)}export{In as a,Un as g,An as l,A as p,N as s};
@@ -1 +0,0 @@
1
- import{l as o,a as r}from"../chunks/Bg_R1qWi.js";export{o as load_css,r as start};