My nix-darwin and NixOS config
3
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat(pds-landing): migrate to SvelteKit app consuming @ewanc26/pds-landing

- Add full SvelteKit app scaffolding (routes, layout, CSS, tsconfig, etc.)
- Import PDSPage from @ewanc26/pds-landing v2.0.0 with production props
- Add +layout.ts with prerender = true for adapter-static compatibility
- Update Caddy static file matcher to SvelteKit output paths (/_app/*)
- Remove stale packages.pds-landing re-export from flake.nix

+1676 -6
+4
.prettierignore
··· 1 + # The pds-landing subdirectory is a standalone SvelteKit app with its own 2 + # node_modules and prettier config (prettier-plugin-svelte). Exclude it from 3 + # the repo-root prettier run to avoid "cannot find package" errors. 4 + modules/server/pds-landing/
-4
flake.nix
··· 147 147 ]; 148 148 }; 149 149 150 - packages = forAllSystems (system: { 151 - pds-landing = pkgs-monorepo.packages.${system}.pds-landing; 152 - }); 153 - 154 150 nixosConfigurations = { 155 151 laptop = nixpkgs.lib.nixosSystem { 156 152 specialArgs = { inherit self; };
+23
modules/server/pds-landing/.gitignore
··· 1 + node_modules 2 + 3 + # Output 4 + .output 5 + .vercel 6 + .netlify 7 + .wrangler 8 + /.svelte-kit 9 + /build 10 + 11 + # OS 12 + .DS_Store 13 + Thumbs.db 14 + 15 + # Env 16 + .env 17 + .env.* 18 + !.env.example 19 + !.env.test 20 + 21 + # Vite 22 + vite.config.js.timestamp-* 23 + vite.config.ts.timestamp-*
+1
modules/server/pds-landing/.npmrc
··· 1 + engine-strict=true
+9
modules/server/pds-landing/.prettierignore
··· 1 + # Package Managers 2 + package-lock.json 3 + pnpm-lock.yaml 4 + yarn.lock 5 + bun.lock 6 + bun.lockb 7 + 8 + # Miscellaneous 9 + /static/
+16
modules/server/pds-landing/.prettierrc
··· 1 + { 2 + "useTabs": true, 3 + "singleQuote": true, 4 + "trailingComma": "none", 5 + "printWidth": 100, 6 + "plugins": ["prettier-plugin-svelte", "prettier-plugin-tailwindcss"], 7 + "overrides": [ 8 + { 9 + "files": "*.svelte", 10 + "options": { 11 + "parser": "svelte" 12 + } 13 + } 14 + ], 15 + "tailwindStylesheet": "./src/routes/layout.css" 16 + }
+22
modules/server/pds-landing/README.md
··· 1 + # pds-landing 2 + 3 + SvelteKit app that renders the landing page at [pds.ewancroft.uk](https://pds.ewancroft.uk) using 4 + [`@ewanc26/pds-landing`](https://github.com/ewanc26/pkgs/tree/main/packages/pds-landing). 5 + 6 + Built with `@sveltejs/adapter-static` and served by Caddy via the NixOS configuration in `../pds.nix`. 7 + 8 + ## Development 9 + 10 + ```sh 11 + pnpm install 12 + pnpm dev 13 + ``` 14 + 15 + ## Build 16 + 17 + ```sh 18 + pnpm build 19 + ``` 20 + 21 + The output in `build/` is what the Nix derivation in `pkgs/packages/pds-landing/default.nix` produces 22 + and serves at the PDS root URL.
+35
modules/server/pds-landing/package.json
··· 1 + { 2 + "name": "pds-landing", 3 + "private": true, 4 + "version": "0.0.1", 5 + "type": "module", 6 + "scripts": { 7 + "dev": "vite dev", 8 + "build": "vite build", 9 + "preview": "vite preview", 10 + "prepare": "svelte-kit sync || echo ''", 11 + "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", 12 + "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", 13 + "lint": "prettier --check .", 14 + "format": "prettier --write ." 15 + }, 16 + "dependencies": { 17 + "@ewanc26/pds-landing": "^2.0.0", 18 + "@ewanc26/ui": "^0.1.2" 19 + }, 20 + "devDependencies": { 21 + "@sveltejs/adapter-static": "^3.0.10", 22 + "@sveltejs/kit": "^2.50.2", 23 + "@sveltejs/vite-plugin-svelte": "^6.2.4", 24 + "@tailwindcss/typography": "^0.5.19", 25 + "@tailwindcss/vite": "^4.1.18", 26 + "prettier": "^3.8.1", 27 + "prettier-plugin-svelte": "^3.4.1", 28 + "prettier-plugin-tailwindcss": "^0.7.2", 29 + "svelte": "^5.51.0", 30 + "svelte-check": "^4.4.2", 31 + "tailwindcss": "^4.1.18", 32 + "typescript": "^5.9.3", 33 + "vite": "^7.3.1" 34 + } 35 + }
+1450
modules/server/pds-landing/pnpm-lock.yaml
··· 1 + lockfileVersion: '9.0' 2 + 3 + settings: 4 + autoInstallPeers: true 5 + excludeLinksFromLockfile: false 6 + 7 + importers: 8 + 9 + .: 10 + devDependencies: 11 + '@sveltejs/adapter-static': 12 + specifier: ^3.0.10 13 + version: 3.0.10(@sveltejs/kit@2.53.4(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.53.7)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)))(svelte@5.53.7)(typescript@5.9.3)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1))) 14 + '@sveltejs/kit': 15 + specifier: ^2.50.2 16 + version: 2.53.4(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.53.7)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)))(svelte@5.53.7)(typescript@5.9.3)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)) 17 + '@sveltejs/vite-plugin-svelte': 18 + specifier: ^6.2.4 19 + version: 6.2.4(svelte@5.53.7)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)) 20 + '@tailwindcss/typography': 21 + specifier: ^0.5.19 22 + version: 0.5.19(tailwindcss@4.2.1) 23 + '@tailwindcss/vite': 24 + specifier: ^4.1.18 25 + version: 4.2.1(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)) 26 + prettier: 27 + specifier: ^3.8.1 28 + version: 3.8.1 29 + prettier-plugin-svelte: 30 + specifier: ^3.4.1 31 + version: 3.5.1(prettier@3.8.1)(svelte@5.53.7) 32 + prettier-plugin-tailwindcss: 33 + specifier: ^0.7.2 34 + version: 0.7.2(prettier-plugin-svelte@3.5.1(prettier@3.8.1)(svelte@5.53.7))(prettier@3.8.1) 35 + svelte: 36 + specifier: ^5.51.0 37 + version: 5.53.7 38 + svelte-check: 39 + specifier: ^4.4.2 40 + version: 4.4.5(picomatch@4.0.3)(svelte@5.53.7)(typescript@5.9.3) 41 + tailwindcss: 42 + specifier: ^4.1.18 43 + version: 4.2.1 44 + typescript: 45 + specifier: ^5.9.3 46 + version: 5.9.3 47 + vite: 48 + specifier: ^7.3.1 49 + version: 7.3.1(jiti@2.6.1)(lightningcss@1.31.1) 50 + 51 + packages: 52 + 53 + '@esbuild/aix-ppc64@0.27.3': 54 + resolution: {integrity: sha512-9fJMTNFTWZMh5qwrBItuziu834eOCUcEqymSH7pY+zoMVEZg3gcPuBNxH1EvfVYe9h0x/Ptw8KBzv7qxb7l8dg==} 55 + engines: {node: '>=18'} 56 + cpu: [ppc64] 57 + os: [aix] 58 + 59 + '@esbuild/android-arm64@0.27.3': 60 + resolution: {integrity: sha512-YdghPYUmj/FX2SYKJ0OZxf+iaKgMsKHVPF1MAq/P8WirnSpCStzKJFjOjzsW0QQ7oIAiccHdcqjbHmJxRb/dmg==} 61 + engines: {node: '>=18'} 62 + cpu: [arm64] 63 + os: [android] 64 + 65 + '@esbuild/android-arm@0.27.3': 66 + resolution: {integrity: sha512-i5D1hPY7GIQmXlXhs2w8AWHhenb00+GxjxRncS2ZM7YNVGNfaMxgzSGuO8o8SJzRc/oZwU2bcScvVERk03QhzA==} 67 + engines: {node: '>=18'} 68 + cpu: [arm] 69 + os: [android] 70 + 71 + '@esbuild/android-x64@0.27.3': 72 + resolution: {integrity: sha512-IN/0BNTkHtk8lkOM8JWAYFg4ORxBkZQf9zXiEOfERX/CzxW3Vg1ewAhU7QSWQpVIzTW+b8Xy+lGzdYXV6UZObQ==} 73 + engines: {node: '>=18'} 74 + cpu: [x64] 75 + os: [android] 76 + 77 + '@esbuild/darwin-arm64@0.27.3': 78 + resolution: {integrity: sha512-Re491k7ByTVRy0t3EKWajdLIr0gz2kKKfzafkth4Q8A5n1xTHrkqZgLLjFEHVD+AXdUGgQMq+Godfq45mGpCKg==} 79 + engines: {node: '>=18'} 80 + cpu: [arm64] 81 + os: [darwin] 82 + 83 + '@esbuild/darwin-x64@0.27.3': 84 + resolution: {integrity: sha512-vHk/hA7/1AckjGzRqi6wbo+jaShzRowYip6rt6q7VYEDX4LEy1pZfDpdxCBnGtl+A5zq8iXDcyuxwtv3hNtHFg==} 85 + engines: {node: '>=18'} 86 + cpu: [x64] 87 + os: [darwin] 88 + 89 + '@esbuild/freebsd-arm64@0.27.3': 90 + resolution: {integrity: sha512-ipTYM2fjt3kQAYOvo6vcxJx3nBYAzPjgTCk7QEgZG8AUO3ydUhvelmhrbOheMnGOlaSFUoHXB6un+A7q4ygY9w==} 91 + engines: {node: '>=18'} 92 + cpu: [arm64] 93 + os: [freebsd] 94 + 95 + '@esbuild/freebsd-x64@0.27.3': 96 + resolution: {integrity: sha512-dDk0X87T7mI6U3K9VjWtHOXqwAMJBNN2r7bejDsc+j03SEjtD9HrOl8gVFByeM0aJksoUuUVU9TBaZa2rgj0oA==} 97 + engines: {node: '>=18'} 98 + cpu: [x64] 99 + os: [freebsd] 100 + 101 + '@esbuild/linux-arm64@0.27.3': 102 + resolution: {integrity: sha512-sZOuFz/xWnZ4KH3YfFrKCf1WyPZHakVzTiqji3WDc0BCl2kBwiJLCXpzLzUBLgmp4veFZdvN5ChW4Eq/8Fc2Fg==} 103 + engines: {node: '>=18'} 104 + cpu: [arm64] 105 + os: [linux] 106 + 107 + '@esbuild/linux-arm@0.27.3': 108 + resolution: {integrity: sha512-s6nPv2QkSupJwLYyfS+gwdirm0ukyTFNl3KTgZEAiJDd+iHZcbTPPcWCcRYH+WlNbwChgH2QkE9NSlNrMT8Gfw==} 109 + engines: {node: '>=18'} 110 + cpu: [arm] 111 + os: [linux] 112 + 113 + '@esbuild/linux-ia32@0.27.3': 114 + resolution: {integrity: sha512-yGlQYjdxtLdh0a3jHjuwOrxQjOZYD/C9PfdbgJJF3TIZWnm/tMd/RcNiLngiu4iwcBAOezdnSLAwQDPqTmtTYg==} 115 + engines: {node: '>=18'} 116 + cpu: [ia32] 117 + os: [linux] 118 + 119 + '@esbuild/linux-loong64@0.27.3': 120 + resolution: {integrity: sha512-WO60Sn8ly3gtzhyjATDgieJNet/KqsDlX5nRC5Y3oTFcS1l0KWba+SEa9Ja1GfDqSF1z6hif/SkpQJbL63cgOA==} 121 + engines: {node: '>=18'} 122 + cpu: [loong64] 123 + os: [linux] 124 + 125 + '@esbuild/linux-mips64el@0.27.3': 126 + resolution: {integrity: sha512-APsymYA6sGcZ4pD6k+UxbDjOFSvPWyZhjaiPyl/f79xKxwTnrn5QUnXR5prvetuaSMsb4jgeHewIDCIWljrSxw==} 127 + engines: {node: '>=18'} 128 + cpu: [mips64el] 129 + os: [linux] 130 + 131 + '@esbuild/linux-ppc64@0.27.3': 132 + resolution: {integrity: sha512-eizBnTeBefojtDb9nSh4vvVQ3V9Qf9Df01PfawPcRzJH4gFSgrObw+LveUyDoKU3kxi5+9RJTCWlj4FjYXVPEA==} 133 + engines: {node: '>=18'} 134 + cpu: [ppc64] 135 + os: [linux] 136 + 137 + '@esbuild/linux-riscv64@0.27.3': 138 + resolution: {integrity: sha512-3Emwh0r5wmfm3ssTWRQSyVhbOHvqegUDRd0WhmXKX2mkHJe1SFCMJhagUleMq+Uci34wLSipf8Lagt4LlpRFWQ==} 139 + engines: {node: '>=18'} 140 + cpu: [riscv64] 141 + os: [linux] 142 + 143 + '@esbuild/linux-s390x@0.27.3': 144 + resolution: {integrity: sha512-pBHUx9LzXWBc7MFIEEL0yD/ZVtNgLytvx60gES28GcWMqil8ElCYR4kvbV2BDqsHOvVDRrOxGySBM9Fcv744hw==} 145 + engines: {node: '>=18'} 146 + cpu: [s390x] 147 + os: [linux] 148 + 149 + '@esbuild/linux-x64@0.27.3': 150 + resolution: {integrity: sha512-Czi8yzXUWIQYAtL/2y6vogER8pvcsOsk5cpwL4Gk5nJqH5UZiVByIY8Eorm5R13gq+DQKYg0+JyQoytLQas4dA==} 151 + engines: {node: '>=18'} 152 + cpu: [x64] 153 + os: [linux] 154 + 155 + '@esbuild/netbsd-arm64@0.27.3': 156 + resolution: {integrity: sha512-sDpk0RgmTCR/5HguIZa9n9u+HVKf40fbEUt+iTzSnCaGvY9kFP0YKBWZtJaraonFnqef5SlJ8/TiPAxzyS+UoA==} 157 + engines: {node: '>=18'} 158 + cpu: [arm64] 159 + os: [netbsd] 160 + 161 + '@esbuild/netbsd-x64@0.27.3': 162 + resolution: {integrity: sha512-P14lFKJl/DdaE00LItAukUdZO5iqNH7+PjoBm+fLQjtxfcfFE20Xf5CrLsmZdq5LFFZzb5JMZ9grUwvtVYzjiA==} 163 + engines: {node: '>=18'} 164 + cpu: [x64] 165 + os: [netbsd] 166 + 167 + '@esbuild/openbsd-arm64@0.27.3': 168 + resolution: {integrity: sha512-AIcMP77AvirGbRl/UZFTq5hjXK+2wC7qFRGoHSDrZ5v5b8DK/GYpXW3CPRL53NkvDqb9D+alBiC/dV0Fb7eJcw==} 169 + engines: {node: '>=18'} 170 + cpu: [arm64] 171 + os: [openbsd] 172 + 173 + '@esbuild/openbsd-x64@0.27.3': 174 + resolution: {integrity: sha512-DnW2sRrBzA+YnE70LKqnM3P+z8vehfJWHXECbwBmH/CU51z6FiqTQTHFenPlHmo3a8UgpLyH3PT+87OViOh1AQ==} 175 + engines: {node: '>=18'} 176 + cpu: [x64] 177 + os: [openbsd] 178 + 179 + '@esbuild/openharmony-arm64@0.27.3': 180 + resolution: {integrity: sha512-NinAEgr/etERPTsZJ7aEZQvvg/A6IsZG/LgZy+81wON2huV7SrK3e63dU0XhyZP4RKGyTm7aOgmQk0bGp0fy2g==} 181 + engines: {node: '>=18'} 182 + cpu: [arm64] 183 + os: [openharmony] 184 + 185 + '@esbuild/sunos-x64@0.27.3': 186 + resolution: {integrity: sha512-PanZ+nEz+eWoBJ8/f8HKxTTD172SKwdXebZ0ndd953gt1HRBbhMsaNqjTyYLGLPdoWHy4zLU7bDVJztF5f3BHA==} 187 + engines: {node: '>=18'} 188 + cpu: [x64] 189 + os: [sunos] 190 + 191 + '@esbuild/win32-arm64@0.27.3': 192 + resolution: {integrity: sha512-B2t59lWWYrbRDw/tjiWOuzSsFh1Y/E95ofKz7rIVYSQkUYBjfSgf6oeYPNWHToFRr2zx52JKApIcAS/D5TUBnA==} 193 + engines: {node: '>=18'} 194 + cpu: [arm64] 195 + os: [win32] 196 + 197 + '@esbuild/win32-ia32@0.27.3': 198 + resolution: {integrity: sha512-QLKSFeXNS8+tHW7tZpMtjlNb7HKau0QDpwm49u0vUp9y1WOF+PEzkU84y9GqYaAVW8aH8f3GcBck26jh54cX4Q==} 199 + engines: {node: '>=18'} 200 + cpu: [ia32] 201 + os: [win32] 202 + 203 + '@esbuild/win32-x64@0.27.3': 204 + resolution: {integrity: sha512-4uJGhsxuptu3OcpVAzli+/gWusVGwZZHTlS63hh++ehExkVT8SgiEf7/uC/PclrPPkLhZqGgCTjd0VWLo6xMqA==} 205 + engines: {node: '>=18'} 206 + cpu: [x64] 207 + os: [win32] 208 + 209 + '@jridgewell/gen-mapping@0.3.13': 210 + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} 211 + 212 + '@jridgewell/remapping@2.3.5': 213 + resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} 214 + 215 + '@jridgewell/resolve-uri@3.1.2': 216 + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 217 + engines: {node: '>=6.0.0'} 218 + 219 + '@jridgewell/sourcemap-codec@1.5.5': 220 + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} 221 + 222 + '@jridgewell/trace-mapping@0.3.31': 223 + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} 224 + 225 + '@polka/url@1.0.0-next.29': 226 + resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==} 227 + 228 + '@rollup/rollup-android-arm-eabi@4.59.0': 229 + resolution: {integrity: sha512-upnNBkA6ZH2VKGcBj9Fyl9IGNPULcjXRlg0LLeaioQWueH30p6IXtJEbKAgvyv+mJaMxSm1l6xwDXYjpEMiLMg==} 230 + cpu: [arm] 231 + os: [android] 232 + 233 + '@rollup/rollup-android-arm64@4.59.0': 234 + resolution: {integrity: sha512-hZ+Zxj3SySm4A/DylsDKZAeVg0mvi++0PYVceVyX7hemkw7OreKdCvW2oQ3T1FMZvCaQXqOTHb8qmBShoqk69Q==} 235 + cpu: [arm64] 236 + os: [android] 237 + 238 + '@rollup/rollup-darwin-arm64@4.59.0': 239 + resolution: {integrity: sha512-W2Psnbh1J8ZJw0xKAd8zdNgF9HRLkdWwwdWqubSVk0pUuQkoHnv7rx4GiF9rT4t5DIZGAsConRE3AxCdJ4m8rg==} 240 + cpu: [arm64] 241 + os: [darwin] 242 + 243 + '@rollup/rollup-darwin-x64@4.59.0': 244 + resolution: {integrity: sha512-ZW2KkwlS4lwTv7ZVsYDiARfFCnSGhzYPdiOU4IM2fDbL+QGlyAbjgSFuqNRbSthybLbIJ915UtZBtmuLrQAT/w==} 245 + cpu: [x64] 246 + os: [darwin] 247 + 248 + '@rollup/rollup-freebsd-arm64@4.59.0': 249 + resolution: {integrity: sha512-EsKaJ5ytAu9jI3lonzn3BgG8iRBjV4LxZexygcQbpiU0wU0ATxhNVEpXKfUa0pS05gTcSDMKpn3Sx+QB9RlTTA==} 250 + cpu: [arm64] 251 + os: [freebsd] 252 + 253 + '@rollup/rollup-freebsd-x64@4.59.0': 254 + resolution: {integrity: sha512-d3DuZi2KzTMjImrxoHIAODUZYoUUMsuUiY4SRRcJy6NJoZ6iIqWnJu9IScV9jXysyGMVuW+KNzZvBLOcpdl3Vg==} 255 + cpu: [x64] 256 + os: [freebsd] 257 + 258 + '@rollup/rollup-linux-arm-gnueabihf@4.59.0': 259 + resolution: {integrity: sha512-t4ONHboXi/3E0rT6OZl1pKbl2Vgxf9vJfWgmUoCEVQVxhW6Cw/c8I6hbbu7DAvgp82RKiH7TpLwxnJeKv2pbsw==} 260 + cpu: [arm] 261 + os: [linux] 262 + 263 + '@rollup/rollup-linux-arm-musleabihf@4.59.0': 264 + resolution: {integrity: sha512-CikFT7aYPA2ufMD086cVORBYGHffBo4K8MQ4uPS/ZnY54GKj36i196u8U+aDVT2LX4eSMbyHtyOh7D7Zvk2VvA==} 265 + cpu: [arm] 266 + os: [linux] 267 + 268 + '@rollup/rollup-linux-arm64-gnu@4.59.0': 269 + resolution: {integrity: sha512-jYgUGk5aLd1nUb1CtQ8E+t5JhLc9x5WdBKew9ZgAXg7DBk0ZHErLHdXM24rfX+bKrFe+Xp5YuJo54I5HFjGDAA==} 270 + cpu: [arm64] 271 + os: [linux] 272 + 273 + '@rollup/rollup-linux-arm64-musl@4.59.0': 274 + resolution: {integrity: sha512-peZRVEdnFWZ5Bh2KeumKG9ty7aCXzzEsHShOZEFiCQlDEepP1dpUl/SrUNXNg13UmZl+gzVDPsiCwnV1uI0RUA==} 275 + cpu: [arm64] 276 + os: [linux] 277 + 278 + '@rollup/rollup-linux-loong64-gnu@4.59.0': 279 + resolution: {integrity: sha512-gbUSW/97f7+r4gHy3Jlup8zDG190AuodsWnNiXErp9mT90iCy9NKKU0Xwx5k8VlRAIV2uU9CsMnEFg/xXaOfXg==} 280 + cpu: [loong64] 281 + os: [linux] 282 + 283 + '@rollup/rollup-linux-loong64-musl@4.59.0': 284 + resolution: {integrity: sha512-yTRONe79E+o0FWFijasoTjtzG9EBedFXJMl888NBEDCDV9I2wGbFFfJQQe63OijbFCUZqxpHz1GzpbtSFikJ4Q==} 285 + cpu: [loong64] 286 + os: [linux] 287 + 288 + '@rollup/rollup-linux-ppc64-gnu@4.59.0': 289 + resolution: {integrity: sha512-sw1o3tfyk12k3OEpRddF68a1unZ5VCN7zoTNtSn2KndUE+ea3m3ROOKRCZxEpmT9nsGnogpFP9x6mnLTCaoLkA==} 290 + cpu: [ppc64] 291 + os: [linux] 292 + 293 + '@rollup/rollup-linux-ppc64-musl@4.59.0': 294 + resolution: {integrity: sha512-+2kLtQ4xT3AiIxkzFVFXfsmlZiG5FXYW7ZyIIvGA7Bdeuh9Z0aN4hVyXS/G1E9bTP/vqszNIN/pUKCk/BTHsKA==} 295 + cpu: [ppc64] 296 + os: [linux] 297 + 298 + '@rollup/rollup-linux-riscv64-gnu@4.59.0': 299 + resolution: {integrity: sha512-NDYMpsXYJJaj+I7UdwIuHHNxXZ/b/N2hR15NyH3m2qAtb/hHPA4g4SuuvrdxetTdndfj9b1WOmy73kcPRoERUg==} 300 + cpu: [riscv64] 301 + os: [linux] 302 + 303 + '@rollup/rollup-linux-riscv64-musl@4.59.0': 304 + resolution: {integrity: sha512-nLckB8WOqHIf1bhymk+oHxvM9D3tyPndZH8i8+35p/1YiVoVswPid2yLzgX7ZJP0KQvnkhM4H6QZ5m0LzbyIAg==} 305 + cpu: [riscv64] 306 + os: [linux] 307 + 308 + '@rollup/rollup-linux-s390x-gnu@4.59.0': 309 + resolution: {integrity: sha512-oF87Ie3uAIvORFBpwnCvUzdeYUqi2wY6jRFWJAy1qus/udHFYIkplYRW+wo+GRUP4sKzYdmE1Y3+rY5Gc4ZO+w==} 310 + cpu: [s390x] 311 + os: [linux] 312 + 313 + '@rollup/rollup-linux-x64-gnu@4.59.0': 314 + resolution: {integrity: sha512-3AHmtQq/ppNuUspKAlvA8HtLybkDflkMuLK4DPo77DfthRb71V84/c4MlWJXixZz4uruIH4uaa07IqoAkG64fg==} 315 + cpu: [x64] 316 + os: [linux] 317 + 318 + '@rollup/rollup-linux-x64-musl@4.59.0': 319 + resolution: {integrity: sha512-2UdiwS/9cTAx7qIUZB/fWtToJwvt0Vbo0zmnYt7ED35KPg13Q0ym1g442THLC7VyI6JfYTP4PiSOWyoMdV2/xg==} 320 + cpu: [x64] 321 + os: [linux] 322 + 323 + '@rollup/rollup-openbsd-x64@4.59.0': 324 + resolution: {integrity: sha512-M3bLRAVk6GOwFlPTIxVBSYKUaqfLrn8l0psKinkCFxl4lQvOSz8ZrKDz2gxcBwHFpci0B6rttydI4IpS4IS/jQ==} 325 + cpu: [x64] 326 + os: [openbsd] 327 + 328 + '@rollup/rollup-openharmony-arm64@4.59.0': 329 + resolution: {integrity: sha512-tt9KBJqaqp5i5HUZzoafHZX8b5Q2Fe7UjYERADll83O4fGqJ49O1FsL6LpdzVFQcpwvnyd0i+K/VSwu/o/nWlA==} 330 + cpu: [arm64] 331 + os: [openharmony] 332 + 333 + '@rollup/rollup-win32-arm64-msvc@4.59.0': 334 + resolution: {integrity: sha512-V5B6mG7OrGTwnxaNUzZTDTjDS7F75PO1ae6MJYdiMu60sq0CqN5CVeVsbhPxalupvTX8gXVSU9gq+Rx1/hvu6A==} 335 + cpu: [arm64] 336 + os: [win32] 337 + 338 + '@rollup/rollup-win32-ia32-msvc@4.59.0': 339 + resolution: {integrity: sha512-UKFMHPuM9R0iBegwzKF4y0C4J9u8C6MEJgFuXTBerMk7EJ92GFVFYBfOZaSGLu6COf7FxpQNqhNS4c4icUPqxA==} 340 + cpu: [ia32] 341 + os: [win32] 342 + 343 + '@rollup/rollup-win32-x64-gnu@4.59.0': 344 + resolution: {integrity: sha512-laBkYlSS1n2L8fSo1thDNGrCTQMmxjYY5G0WFWjFFYZkKPjsMBsgJfGf4TLxXrF6RyhI60L8TMOjBMvXiTcxeA==} 345 + cpu: [x64] 346 + os: [win32] 347 + 348 + '@rollup/rollup-win32-x64-msvc@4.59.0': 349 + resolution: {integrity: sha512-2HRCml6OztYXyJXAvdDXPKcawukWY2GpR5/nxKp4iBgiO3wcoEGkAaqctIbZcNB6KlUQBIqt8VYkNSj2397EfA==} 350 + cpu: [x64] 351 + os: [win32] 352 + 353 + '@standard-schema/spec@1.1.0': 354 + resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} 355 + 356 + '@sveltejs/acorn-typescript@1.0.9': 357 + resolution: {integrity: sha512-lVJX6qEgs/4DOcRTpo56tmKzVPtoWAaVbL4hfO7t7NVwl9AAXzQR6cihesW1BmNMPl+bK6dreu2sOKBP2Q9CIA==} 358 + peerDependencies: 359 + acorn: ^8.9.0 360 + 361 + '@sveltejs/adapter-static@3.0.10': 362 + resolution: {integrity: sha512-7D9lYFWJmB7zxZyTE/qxjksvMqzMuYrrsyh1f4AlZqeZeACPRySjbC3aFiY55wb1tWUaKOQG9PVbm74JcN2Iew==} 363 + peerDependencies: 364 + '@sveltejs/kit': ^2.0.0 365 + 366 + '@sveltejs/kit@2.53.4': 367 + resolution: {integrity: sha512-iAIPEahFgDJJyvz8g0jP08KvqnM6JvdW8YfsygZ+pMeMvyM2zssWMltcsotETvjSZ82G3VlitgDtBIvpQSZrTA==} 368 + engines: {node: '>=18.13'} 369 + hasBin: true 370 + peerDependencies: 371 + '@opentelemetry/api': ^1.0.0 372 + '@sveltejs/vite-plugin-svelte': ^3.0.0 || ^4.0.0-next.1 || ^5.0.0 || ^6.0.0-next.0 || ^7.0.0 373 + svelte: ^4.0.0 || ^5.0.0-next.0 374 + typescript: ^5.3.3 375 + vite: ^5.0.3 || ^6.0.0 || ^7.0.0-beta.0 || ^8.0.0 376 + peerDependenciesMeta: 377 + '@opentelemetry/api': 378 + optional: true 379 + typescript: 380 + optional: true 381 + 382 + '@sveltejs/vite-plugin-svelte-inspector@5.0.2': 383 + resolution: {integrity: sha512-TZzRTcEtZffICSAoZGkPSl6Etsj2torOVrx6Uw0KpXxrec9Gg6jFWQ60Q3+LmNGfZSxHRCZL7vXVZIWmuV50Ig==} 384 + engines: {node: ^20.19 || ^22.12 || >=24} 385 + peerDependencies: 386 + '@sveltejs/vite-plugin-svelte': ^6.0.0-next.0 387 + svelte: ^5.0.0 388 + vite: ^6.3.0 || ^7.0.0 389 + 390 + '@sveltejs/vite-plugin-svelte@6.2.4': 391 + resolution: {integrity: sha512-ou/d51QSdTyN26D7h6dSpusAKaZkAiGM55/AKYi+9AGZw7q85hElbjK3kEyzXHhLSnRISHOYzVge6x0jRZ7DXA==} 392 + engines: {node: ^20.19 || ^22.12 || >=24} 393 + peerDependencies: 394 + svelte: ^5.0.0 395 + vite: ^6.3.0 || ^7.0.0 396 + 397 + '@tailwindcss/node@4.2.1': 398 + resolution: {integrity: sha512-jlx6sLk4EOwO6hHe1oCGm1Q4AN/s0rSrTTPBGPM0/RQ6Uylwq17FuU8IeJJKEjtc6K6O07zsvP+gDO6MMWo7pg==} 399 + 400 + '@tailwindcss/oxide-android-arm64@4.2.1': 401 + resolution: {integrity: sha512-eZ7G1Zm5EC8OOKaesIKuw77jw++QJ2lL9N+dDpdQiAB/c/B2wDh0QPFHbkBVrXnwNugvrbJFk1gK2SsVjwWReg==} 402 + engines: {node: '>= 20'} 403 + cpu: [arm64] 404 + os: [android] 405 + 406 + '@tailwindcss/oxide-darwin-arm64@4.2.1': 407 + resolution: {integrity: sha512-q/LHkOstoJ7pI1J0q6djesLzRvQSIfEto148ppAd+BVQK0JYjQIFSK3JgYZJa+Yzi0DDa52ZsQx2rqytBnf8Hw==} 408 + engines: {node: '>= 20'} 409 + cpu: [arm64] 410 + os: [darwin] 411 + 412 + '@tailwindcss/oxide-darwin-x64@4.2.1': 413 + resolution: {integrity: sha512-/f/ozlaXGY6QLbpvd/kFTro2l18f7dHKpB+ieXz+Cijl4Mt9AI2rTrpq7V+t04nK+j9XBQHnSMdeQRhbGyt6fw==} 414 + engines: {node: '>= 20'} 415 + cpu: [x64] 416 + os: [darwin] 417 + 418 + '@tailwindcss/oxide-freebsd-x64@4.2.1': 419 + resolution: {integrity: sha512-5e/AkgYJT/cpbkys/OU2Ei2jdETCLlifwm7ogMC7/hksI2fC3iiq6OcXwjibcIjPung0kRtR3TxEITkqgn0TcA==} 420 + engines: {node: '>= 20'} 421 + cpu: [x64] 422 + os: [freebsd] 423 + 424 + '@tailwindcss/oxide-linux-arm-gnueabihf@4.2.1': 425 + resolution: {integrity: sha512-Uny1EcVTTmerCKt/1ZuKTkb0x8ZaiuYucg2/kImO5A5Y/kBz41/+j0gxUZl+hTF3xkWpDmHX+TaWhOtba2Fyuw==} 426 + engines: {node: '>= 20'} 427 + cpu: [arm] 428 + os: [linux] 429 + 430 + '@tailwindcss/oxide-linux-arm64-gnu@4.2.1': 431 + resolution: {integrity: sha512-CTrwomI+c7n6aSSQlsPL0roRiNMDQ/YzMD9EjcR+H4f0I1SQ8QqIuPnsVp7QgMkC1Qi8rtkekLkOFjo7OlEFRQ==} 432 + engines: {node: '>= 20'} 433 + cpu: [arm64] 434 + os: [linux] 435 + 436 + '@tailwindcss/oxide-linux-arm64-musl@4.2.1': 437 + resolution: {integrity: sha512-WZA0CHRL/SP1TRbA5mp9htsppSEkWuQ4KsSUumYQnyl8ZdT39ntwqmz4IUHGN6p4XdSlYfJwM4rRzZLShHsGAQ==} 438 + engines: {node: '>= 20'} 439 + cpu: [arm64] 440 + os: [linux] 441 + 442 + '@tailwindcss/oxide-linux-x64-gnu@4.2.1': 443 + resolution: {integrity: sha512-qMFzxI2YlBOLW5PhblzuSWlWfwLHaneBE0xHzLrBgNtqN6mWfs+qYbhryGSXQjFYB1Dzf5w+LN5qbUTPhW7Y5g==} 444 + engines: {node: '>= 20'} 445 + cpu: [x64] 446 + os: [linux] 447 + 448 + '@tailwindcss/oxide-linux-x64-musl@4.2.1': 449 + resolution: {integrity: sha512-5r1X2FKnCMUPlXTWRYpHdPYUY6a1Ar/t7P24OuiEdEOmms5lyqjDRvVY1yy9Rmioh+AunQ0rWiOTPE8F9A3v5g==} 450 + engines: {node: '>= 20'} 451 + cpu: [x64] 452 + os: [linux] 453 + 454 + '@tailwindcss/oxide-wasm32-wasi@4.2.1': 455 + resolution: {integrity: sha512-MGFB5cVPvshR85MTJkEvqDUnuNoysrsRxd6vnk1Lf2tbiqNlXpHYZqkqOQalydienEWOHHFyyuTSYRsLfxFJ2Q==} 456 + engines: {node: '>=14.0.0'} 457 + cpu: [wasm32] 458 + bundledDependencies: 459 + - '@napi-rs/wasm-runtime' 460 + - '@emnapi/core' 461 + - '@emnapi/runtime' 462 + - '@tybys/wasm-util' 463 + - '@emnapi/wasi-threads' 464 + - tslib 465 + 466 + '@tailwindcss/oxide-win32-arm64-msvc@4.2.1': 467 + resolution: {integrity: sha512-YlUEHRHBGnCMh4Nj4GnqQyBtsshUPdiNroZj8VPkvTZSoHsilRCwXcVKnG9kyi0ZFAS/3u+qKHBdDc81SADTRA==} 468 + engines: {node: '>= 20'} 469 + cpu: [arm64] 470 + os: [win32] 471 + 472 + '@tailwindcss/oxide-win32-x64-msvc@4.2.1': 473 + resolution: {integrity: sha512-rbO34G5sMWWyrN/idLeVxAZgAKWrn5LiR3/I90Q9MkA67s6T1oB0xtTe+0heoBvHSpbU9Mk7i6uwJnpo4u21XQ==} 474 + engines: {node: '>= 20'} 475 + cpu: [x64] 476 + os: [win32] 477 + 478 + '@tailwindcss/oxide@4.2.1': 479 + resolution: {integrity: sha512-yv9jeEFWnjKCI6/T3Oq50yQEOqmpmpfzG1hcZsAOaXFQPfzWprWrlHSdGPEF3WQTi8zu8ohC9Mh9J470nT5pUw==} 480 + engines: {node: '>= 20'} 481 + 482 + '@tailwindcss/typography@0.5.19': 483 + resolution: {integrity: sha512-w31dd8HOx3k9vPtcQh5QHP9GwKcgbMp87j58qi6xgiBnFFtKEAgCWnDw4qUT8aHwkCp8bKvb/KGKWWHedP0AAg==} 484 + peerDependencies: 485 + tailwindcss: '>=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1' 486 + 487 + '@tailwindcss/vite@4.2.1': 488 + resolution: {integrity: sha512-TBf2sJjYeb28jD2U/OhwdW0bbOsxkWPwQ7SrqGf9sVcoYwZj7rkXljroBO9wKBut9XnmQLXanuDUeqQK0lGg/w==} 489 + peerDependencies: 490 + vite: ^5.2.0 || ^6 || ^7 491 + 492 + '@types/cookie@0.6.0': 493 + resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} 494 + 495 + '@types/estree@1.0.8': 496 + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} 497 + 498 + '@types/trusted-types@2.0.7': 499 + resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} 500 + 501 + acorn@8.16.0: 502 + resolution: {integrity: sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==} 503 + engines: {node: '>=0.4.0'} 504 + hasBin: true 505 + 506 + aria-query@5.3.1: 507 + resolution: {integrity: sha512-Z/ZeOgVl7bcSYZ/u/rh0fOpvEpq//LZmdbkXyc7syVzjPAhfOa9ebsdTSjEBDU4vs5nC98Kfduj1uFo0qyET3g==} 508 + engines: {node: '>= 0.4'} 509 + 510 + axobject-query@4.1.0: 511 + resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} 512 + engines: {node: '>= 0.4'} 513 + 514 + chokidar@4.0.3: 515 + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} 516 + engines: {node: '>= 14.16.0'} 517 + 518 + clsx@2.1.1: 519 + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} 520 + engines: {node: '>=6'} 521 + 522 + cookie@0.6.0: 523 + resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} 524 + engines: {node: '>= 0.6'} 525 + 526 + cssesc@3.0.0: 527 + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} 528 + engines: {node: '>=4'} 529 + hasBin: true 530 + 531 + deepmerge@4.3.1: 532 + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} 533 + engines: {node: '>=0.10.0'} 534 + 535 + detect-libc@2.1.2: 536 + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} 537 + engines: {node: '>=8'} 538 + 539 + devalue@5.6.3: 540 + resolution: {integrity: sha512-nc7XjUU/2Lb+SvEFVGcWLiKkzfw8+qHI7zn8WYXKkLMgfGSHbgCEaR6bJpev8Cm6Rmrb19Gfd/tZvGqx9is3wg==} 541 + 542 + enhanced-resolve@5.20.0: 543 + resolution: {integrity: sha512-/ce7+jQ1PQ6rVXwe+jKEg5hW5ciicHwIQUagZkp6IufBoY3YDgdTTY1azVs0qoRgVmvsNB+rbjLJxDAeHHtwsQ==} 544 + engines: {node: '>=10.13.0'} 545 + 546 + esbuild@0.27.3: 547 + resolution: {integrity: sha512-8VwMnyGCONIs6cWue2IdpHxHnAjzxnw2Zr7MkVxB2vjmQ2ivqGFb4LEG3SMnv0Gb2F/G/2yA8zUaiL1gywDCCg==} 548 + engines: {node: '>=18'} 549 + hasBin: true 550 + 551 + esm-env@1.2.2: 552 + resolution: {integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==} 553 + 554 + esrap@2.2.3: 555 + resolution: {integrity: sha512-8fOS+GIGCQZl/ZIlhl59htOlms6U8NvX6ZYgYHpRU/b6tVSh3uHkOHZikl3D4cMbYM0JlpBe+p/BkZEi8J9XIQ==} 556 + 557 + fdir@6.5.0: 558 + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} 559 + engines: {node: '>=12.0.0'} 560 + peerDependencies: 561 + picomatch: ^3 || ^4 562 + peerDependenciesMeta: 563 + picomatch: 564 + optional: true 565 + 566 + fsevents@2.3.3: 567 + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 568 + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 569 + os: [darwin] 570 + 571 + graceful-fs@4.2.11: 572 + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 573 + 574 + is-reference@3.0.3: 575 + resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==} 576 + 577 + jiti@2.6.1: 578 + resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} 579 + hasBin: true 580 + 581 + kleur@4.1.5: 582 + resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} 583 + engines: {node: '>=6'} 584 + 585 + lightningcss-android-arm64@1.31.1: 586 + resolution: {integrity: sha512-HXJF3x8w9nQ4jbXRiNppBCqeZPIAfUo8zE/kOEGbW5NZvGc/K7nMxbhIr+YlFlHW5mpbg/YFPdbnCh1wAXCKFg==} 587 + engines: {node: '>= 12.0.0'} 588 + cpu: [arm64] 589 + os: [android] 590 + 591 + lightningcss-darwin-arm64@1.31.1: 592 + resolution: {integrity: sha512-02uTEqf3vIfNMq3h/z2cJfcOXnQ0GRwQrkmPafhueLb2h7mqEidiCzkE4gBMEH65abHRiQvhdcQ+aP0D0g67sg==} 593 + engines: {node: '>= 12.0.0'} 594 + cpu: [arm64] 595 + os: [darwin] 596 + 597 + lightningcss-darwin-x64@1.31.1: 598 + resolution: {integrity: sha512-1ObhyoCY+tGxtsz1lSx5NXCj3nirk0Y0kB/g8B8DT+sSx4G9djitg9ejFnjb3gJNWo7qXH4DIy2SUHvpoFwfTA==} 599 + engines: {node: '>= 12.0.0'} 600 + cpu: [x64] 601 + os: [darwin] 602 + 603 + lightningcss-freebsd-x64@1.31.1: 604 + resolution: {integrity: sha512-1RINmQKAItO6ISxYgPwszQE1BrsVU5aB45ho6O42mu96UiZBxEXsuQ7cJW4zs4CEodPUioj/QrXW1r9pLUM74A==} 605 + engines: {node: '>= 12.0.0'} 606 + cpu: [x64] 607 + os: [freebsd] 608 + 609 + lightningcss-linux-arm-gnueabihf@1.31.1: 610 + resolution: {integrity: sha512-OOCm2//MZJ87CdDK62rZIu+aw9gBv4azMJuA8/KB74wmfS3lnC4yoPHm0uXZ/dvNNHmnZnB8XLAZzObeG0nS1g==} 611 + engines: {node: '>= 12.0.0'} 612 + cpu: [arm] 613 + os: [linux] 614 + 615 + lightningcss-linux-arm64-gnu@1.31.1: 616 + resolution: {integrity: sha512-WKyLWztD71rTnou4xAD5kQT+982wvca7E6QoLpoawZ1gP9JM0GJj4Tp5jMUh9B3AitHbRZ2/H3W5xQmdEOUlLg==} 617 + engines: {node: '>= 12.0.0'} 618 + cpu: [arm64] 619 + os: [linux] 620 + 621 + lightningcss-linux-arm64-musl@1.31.1: 622 + resolution: {integrity: sha512-mVZ7Pg2zIbe3XlNbZJdjs86YViQFoJSpc41CbVmKBPiGmC4YrfeOyz65ms2qpAobVd7WQsbW4PdsSJEMymyIMg==} 623 + engines: {node: '>= 12.0.0'} 624 + cpu: [arm64] 625 + os: [linux] 626 + 627 + lightningcss-linux-x64-gnu@1.31.1: 628 + resolution: {integrity: sha512-xGlFWRMl+0KvUhgySdIaReQdB4FNudfUTARn7q0hh/V67PVGCs3ADFjw+6++kG1RNd0zdGRlEKa+T13/tQjPMA==} 629 + engines: {node: '>= 12.0.0'} 630 + cpu: [x64] 631 + os: [linux] 632 + 633 + lightningcss-linux-x64-musl@1.31.1: 634 + resolution: {integrity: sha512-eowF8PrKHw9LpoZii5tdZwnBcYDxRw2rRCyvAXLi34iyeYfqCQNA9rmUM0ce62NlPhCvof1+9ivRaTY6pSKDaA==} 635 + engines: {node: '>= 12.0.0'} 636 + cpu: [x64] 637 + os: [linux] 638 + 639 + lightningcss-win32-arm64-msvc@1.31.1: 640 + resolution: {integrity: sha512-aJReEbSEQzx1uBlQizAOBSjcmr9dCdL3XuC/6HLXAxmtErsj2ICo5yYggg1qOODQMtnjNQv2UHb9NpOuFtYe4w==} 641 + engines: {node: '>= 12.0.0'} 642 + cpu: [arm64] 643 + os: [win32] 644 + 645 + lightningcss-win32-x64-msvc@1.31.1: 646 + resolution: {integrity: sha512-I9aiFrbd7oYHwlnQDqr1Roz+fTz61oDDJX7n9tYF9FJymH1cIN1DtKw3iYt6b8WZgEjoNwVSncwF4wx/ZedMhw==} 647 + engines: {node: '>= 12.0.0'} 648 + cpu: [x64] 649 + os: [win32] 650 + 651 + lightningcss@1.31.1: 652 + resolution: {integrity: sha512-l51N2r93WmGUye3WuFoN5k10zyvrVs0qfKBhyC5ogUQ6Ew6JUSswh78mbSO+IU3nTWsyOArqPCcShdQSadghBQ==} 653 + engines: {node: '>= 12.0.0'} 654 + 655 + locate-character@3.0.0: 656 + resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} 657 + 658 + magic-string@0.30.21: 659 + resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} 660 + 661 + mri@1.2.0: 662 + resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} 663 + engines: {node: '>=4'} 664 + 665 + mrmime@2.0.1: 666 + resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==} 667 + engines: {node: '>=10'} 668 + 669 + nanoid@3.3.11: 670 + resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} 671 + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 672 + hasBin: true 673 + 674 + obug@2.1.1: 675 + resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==} 676 + 677 + picocolors@1.1.1: 678 + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} 679 + 680 + picomatch@4.0.3: 681 + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} 682 + engines: {node: '>=12'} 683 + 684 + postcss-selector-parser@6.0.10: 685 + resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} 686 + engines: {node: '>=4'} 687 + 688 + postcss@8.5.8: 689 + resolution: {integrity: sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==} 690 + engines: {node: ^10 || ^12 || >=14} 691 + 692 + prettier-plugin-svelte@3.5.1: 693 + resolution: {integrity: sha512-65+fr5+cgIKWKiqM1Doum4uX6bY8iFCdztvvp2RcF+AJoieaw9kJOFMNcJo/bkmKYsxFaM9OsVZK/gWauG/5mg==} 694 + peerDependencies: 695 + prettier: ^3.0.0 696 + svelte: ^3.2.0 || ^4.0.0-next.0 || ^5.0.0-next.0 697 + 698 + prettier-plugin-tailwindcss@0.7.2: 699 + resolution: {integrity: sha512-LkphyK3Fw+q2HdMOoiEHWf93fNtYJwfamoKPl7UwtjFQdei/iIBoX11G6j706FzN3ymX9mPVi97qIY8328vdnA==} 700 + engines: {node: '>=20.19'} 701 + peerDependencies: 702 + '@ianvs/prettier-plugin-sort-imports': '*' 703 + '@prettier/plugin-hermes': '*' 704 + '@prettier/plugin-oxc': '*' 705 + '@prettier/plugin-pug': '*' 706 + '@shopify/prettier-plugin-liquid': '*' 707 + '@trivago/prettier-plugin-sort-imports': '*' 708 + '@zackad/prettier-plugin-twig': '*' 709 + prettier: ^3.0 710 + prettier-plugin-astro: '*' 711 + prettier-plugin-css-order: '*' 712 + prettier-plugin-jsdoc: '*' 713 + prettier-plugin-marko: '*' 714 + prettier-plugin-multiline-arrays: '*' 715 + prettier-plugin-organize-attributes: '*' 716 + prettier-plugin-organize-imports: '*' 717 + prettier-plugin-sort-imports: '*' 718 + prettier-plugin-svelte: '*' 719 + peerDependenciesMeta: 720 + '@ianvs/prettier-plugin-sort-imports': 721 + optional: true 722 + '@prettier/plugin-hermes': 723 + optional: true 724 + '@prettier/plugin-oxc': 725 + optional: true 726 + '@prettier/plugin-pug': 727 + optional: true 728 + '@shopify/prettier-plugin-liquid': 729 + optional: true 730 + '@trivago/prettier-plugin-sort-imports': 731 + optional: true 732 + '@zackad/prettier-plugin-twig': 733 + optional: true 734 + prettier-plugin-astro: 735 + optional: true 736 + prettier-plugin-css-order: 737 + optional: true 738 + prettier-plugin-jsdoc: 739 + optional: true 740 + prettier-plugin-marko: 741 + optional: true 742 + prettier-plugin-multiline-arrays: 743 + optional: true 744 + prettier-plugin-organize-attributes: 745 + optional: true 746 + prettier-plugin-organize-imports: 747 + optional: true 748 + prettier-plugin-sort-imports: 749 + optional: true 750 + prettier-plugin-svelte: 751 + optional: true 752 + 753 + prettier@3.8.1: 754 + resolution: {integrity: sha512-UOnG6LftzbdaHZcKoPFtOcCKztrQ57WkHDeRD9t/PTQtmT0NHSeWWepj6pS0z/N7+08BHFDQVUrfmfMRcZwbMg==} 755 + engines: {node: '>=14'} 756 + hasBin: true 757 + 758 + readdirp@4.1.2: 759 + resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} 760 + engines: {node: '>= 14.18.0'} 761 + 762 + rollup@4.59.0: 763 + resolution: {integrity: sha512-2oMpl67a3zCH9H79LeMcbDhXW/UmWG/y2zuqnF2jQq5uq9TbM9TVyXvA4+t+ne2IIkBdrLpAaRQAvo7YI/Yyeg==} 764 + engines: {node: '>=18.0.0', npm: '>=8.0.0'} 765 + hasBin: true 766 + 767 + sade@1.8.1: 768 + resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} 769 + engines: {node: '>=6'} 770 + 771 + set-cookie-parser@3.0.1: 772 + resolution: {integrity: sha512-n7Z7dXZhJbwuAHhNzkTti6Aw9QDDjZtm3JTpTGATIdNzdQz5GuFs22w90BcvF4INfnrL5xrX3oGsuqO5Dx3A1Q==} 773 + 774 + sirv@3.0.2: 775 + resolution: {integrity: sha512-2wcC/oGxHis/BoHkkPwldgiPSYcpZK3JU28WoMVv55yHJgcZ8rlXvuG9iZggz+sU1d4bRgIGASwyWqjxu3FM0g==} 776 + engines: {node: '>=18'} 777 + 778 + source-map-js@1.2.1: 779 + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} 780 + engines: {node: '>=0.10.0'} 781 + 782 + svelte-check@4.4.5: 783 + resolution: {integrity: sha512-1bSwIRCvvmSHrlK52fOlZmVtUZgil43jNL/2H18pRpa+eQjzGt6e3zayxhp1S7GajPFKNM/2PMCG+DZFHlG9fw==} 784 + engines: {node: '>= 18.0.0'} 785 + hasBin: true 786 + peerDependencies: 787 + svelte: ^4.0.0 || ^5.0.0-next.0 788 + typescript: '>=5.0.0' 789 + 790 + svelte@5.53.7: 791 + resolution: {integrity: sha512-uxck1KI7JWtlfP3H6HOWi/94soAl23jsGJkBzN2BAWcQng0+lTrRNhxActFqORgnO9BHVd1hKJhG+ljRuIUWfQ==} 792 + engines: {node: '>=18'} 793 + 794 + tailwindcss@4.2.1: 795 + resolution: {integrity: sha512-/tBrSQ36vCleJkAOsy9kbNTgaxvGbyOamC30PRePTQe/o1MFwEKHQk4Cn7BNGaPtjp+PuUrByJehM1hgxfq4sw==} 796 + 797 + tapable@2.3.0: 798 + resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==} 799 + engines: {node: '>=6'} 800 + 801 + tinyglobby@0.2.15: 802 + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} 803 + engines: {node: '>=12.0.0'} 804 + 805 + totalist@3.0.1: 806 + resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} 807 + engines: {node: '>=6'} 808 + 809 + typescript@5.9.3: 810 + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} 811 + engines: {node: '>=14.17'} 812 + hasBin: true 813 + 814 + util-deprecate@1.0.2: 815 + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 816 + 817 + vite@7.3.1: 818 + resolution: {integrity: sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==} 819 + engines: {node: ^20.19.0 || >=22.12.0} 820 + hasBin: true 821 + peerDependencies: 822 + '@types/node': ^20.19.0 || >=22.12.0 823 + jiti: '>=1.21.0' 824 + less: ^4.0.0 825 + lightningcss: ^1.21.0 826 + sass: ^1.70.0 827 + sass-embedded: ^1.70.0 828 + stylus: '>=0.54.8' 829 + sugarss: ^5.0.0 830 + terser: ^5.16.0 831 + tsx: ^4.8.1 832 + yaml: ^2.4.2 833 + peerDependenciesMeta: 834 + '@types/node': 835 + optional: true 836 + jiti: 837 + optional: true 838 + less: 839 + optional: true 840 + lightningcss: 841 + optional: true 842 + sass: 843 + optional: true 844 + sass-embedded: 845 + optional: true 846 + stylus: 847 + optional: true 848 + sugarss: 849 + optional: true 850 + terser: 851 + optional: true 852 + tsx: 853 + optional: true 854 + yaml: 855 + optional: true 856 + 857 + vitefu@1.1.2: 858 + resolution: {integrity: sha512-zpKATdUbzbsycPFBN71nS2uzBUQiVnFoOrr2rvqv34S1lcAgMKKkjWleLGeiJlZ8lwCXvtWaRn7R3ZC16SYRuw==} 859 + peerDependencies: 860 + vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-beta.0 861 + peerDependenciesMeta: 862 + vite: 863 + optional: true 864 + 865 + zimmerframe@1.1.4: 866 + resolution: {integrity: sha512-B58NGBEoc8Y9MWWCQGl/gq9xBCe4IiKM0a2x7GZdQKOW5Exr8S1W24J6OgM1njK8xCRGvAJIL/MxXHf6SkmQKQ==} 867 + 868 + snapshots: 869 + 870 + '@esbuild/aix-ppc64@0.27.3': 871 + optional: true 872 + 873 + '@esbuild/android-arm64@0.27.3': 874 + optional: true 875 + 876 + '@esbuild/android-arm@0.27.3': 877 + optional: true 878 + 879 + '@esbuild/android-x64@0.27.3': 880 + optional: true 881 + 882 + '@esbuild/darwin-arm64@0.27.3': 883 + optional: true 884 + 885 + '@esbuild/darwin-x64@0.27.3': 886 + optional: true 887 + 888 + '@esbuild/freebsd-arm64@0.27.3': 889 + optional: true 890 + 891 + '@esbuild/freebsd-x64@0.27.3': 892 + optional: true 893 + 894 + '@esbuild/linux-arm64@0.27.3': 895 + optional: true 896 + 897 + '@esbuild/linux-arm@0.27.3': 898 + optional: true 899 + 900 + '@esbuild/linux-ia32@0.27.3': 901 + optional: true 902 + 903 + '@esbuild/linux-loong64@0.27.3': 904 + optional: true 905 + 906 + '@esbuild/linux-mips64el@0.27.3': 907 + optional: true 908 + 909 + '@esbuild/linux-ppc64@0.27.3': 910 + optional: true 911 + 912 + '@esbuild/linux-riscv64@0.27.3': 913 + optional: true 914 + 915 + '@esbuild/linux-s390x@0.27.3': 916 + optional: true 917 + 918 + '@esbuild/linux-x64@0.27.3': 919 + optional: true 920 + 921 + '@esbuild/netbsd-arm64@0.27.3': 922 + optional: true 923 + 924 + '@esbuild/netbsd-x64@0.27.3': 925 + optional: true 926 + 927 + '@esbuild/openbsd-arm64@0.27.3': 928 + optional: true 929 + 930 + '@esbuild/openbsd-x64@0.27.3': 931 + optional: true 932 + 933 + '@esbuild/openharmony-arm64@0.27.3': 934 + optional: true 935 + 936 + '@esbuild/sunos-x64@0.27.3': 937 + optional: true 938 + 939 + '@esbuild/win32-arm64@0.27.3': 940 + optional: true 941 + 942 + '@esbuild/win32-ia32@0.27.3': 943 + optional: true 944 + 945 + '@esbuild/win32-x64@0.27.3': 946 + optional: true 947 + 948 + '@jridgewell/gen-mapping@0.3.13': 949 + dependencies: 950 + '@jridgewell/sourcemap-codec': 1.5.5 951 + '@jridgewell/trace-mapping': 0.3.31 952 + 953 + '@jridgewell/remapping@2.3.5': 954 + dependencies: 955 + '@jridgewell/gen-mapping': 0.3.13 956 + '@jridgewell/trace-mapping': 0.3.31 957 + 958 + '@jridgewell/resolve-uri@3.1.2': {} 959 + 960 + '@jridgewell/sourcemap-codec@1.5.5': {} 961 + 962 + '@jridgewell/trace-mapping@0.3.31': 963 + dependencies: 964 + '@jridgewell/resolve-uri': 3.1.2 965 + '@jridgewell/sourcemap-codec': 1.5.5 966 + 967 + '@polka/url@1.0.0-next.29': {} 968 + 969 + '@rollup/rollup-android-arm-eabi@4.59.0': 970 + optional: true 971 + 972 + '@rollup/rollup-android-arm64@4.59.0': 973 + optional: true 974 + 975 + '@rollup/rollup-darwin-arm64@4.59.0': 976 + optional: true 977 + 978 + '@rollup/rollup-darwin-x64@4.59.0': 979 + optional: true 980 + 981 + '@rollup/rollup-freebsd-arm64@4.59.0': 982 + optional: true 983 + 984 + '@rollup/rollup-freebsd-x64@4.59.0': 985 + optional: true 986 + 987 + '@rollup/rollup-linux-arm-gnueabihf@4.59.0': 988 + optional: true 989 + 990 + '@rollup/rollup-linux-arm-musleabihf@4.59.0': 991 + optional: true 992 + 993 + '@rollup/rollup-linux-arm64-gnu@4.59.0': 994 + optional: true 995 + 996 + '@rollup/rollup-linux-arm64-musl@4.59.0': 997 + optional: true 998 + 999 + '@rollup/rollup-linux-loong64-gnu@4.59.0': 1000 + optional: true 1001 + 1002 + '@rollup/rollup-linux-loong64-musl@4.59.0': 1003 + optional: true 1004 + 1005 + '@rollup/rollup-linux-ppc64-gnu@4.59.0': 1006 + optional: true 1007 + 1008 + '@rollup/rollup-linux-ppc64-musl@4.59.0': 1009 + optional: true 1010 + 1011 + '@rollup/rollup-linux-riscv64-gnu@4.59.0': 1012 + optional: true 1013 + 1014 + '@rollup/rollup-linux-riscv64-musl@4.59.0': 1015 + optional: true 1016 + 1017 + '@rollup/rollup-linux-s390x-gnu@4.59.0': 1018 + optional: true 1019 + 1020 + '@rollup/rollup-linux-x64-gnu@4.59.0': 1021 + optional: true 1022 + 1023 + '@rollup/rollup-linux-x64-musl@4.59.0': 1024 + optional: true 1025 + 1026 + '@rollup/rollup-openbsd-x64@4.59.0': 1027 + optional: true 1028 + 1029 + '@rollup/rollup-openharmony-arm64@4.59.0': 1030 + optional: true 1031 + 1032 + '@rollup/rollup-win32-arm64-msvc@4.59.0': 1033 + optional: true 1034 + 1035 + '@rollup/rollup-win32-ia32-msvc@4.59.0': 1036 + optional: true 1037 + 1038 + '@rollup/rollup-win32-x64-gnu@4.59.0': 1039 + optional: true 1040 + 1041 + '@rollup/rollup-win32-x64-msvc@4.59.0': 1042 + optional: true 1043 + 1044 + '@standard-schema/spec@1.1.0': {} 1045 + 1046 + '@sveltejs/acorn-typescript@1.0.9(acorn@8.16.0)': 1047 + dependencies: 1048 + acorn: 8.16.0 1049 + 1050 + '@sveltejs/adapter-static@3.0.10(@sveltejs/kit@2.53.4(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.53.7)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)))(svelte@5.53.7)(typescript@5.9.3)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)))': 1051 + dependencies: 1052 + '@sveltejs/kit': 2.53.4(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.53.7)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)))(svelte@5.53.7)(typescript@5.9.3)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)) 1053 + 1054 + '@sveltejs/kit@2.53.4(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.53.7)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)))(svelte@5.53.7)(typescript@5.9.3)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1))': 1055 + dependencies: 1056 + '@standard-schema/spec': 1.1.0 1057 + '@sveltejs/acorn-typescript': 1.0.9(acorn@8.16.0) 1058 + '@sveltejs/vite-plugin-svelte': 6.2.4(svelte@5.53.7)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)) 1059 + '@types/cookie': 0.6.0 1060 + acorn: 8.16.0 1061 + cookie: 0.6.0 1062 + devalue: 5.6.3 1063 + esm-env: 1.2.2 1064 + kleur: 4.1.5 1065 + magic-string: 0.30.21 1066 + mrmime: 2.0.1 1067 + set-cookie-parser: 3.0.1 1068 + sirv: 3.0.2 1069 + svelte: 5.53.7 1070 + vite: 7.3.1(jiti@2.6.1)(lightningcss@1.31.1) 1071 + optionalDependencies: 1072 + typescript: 5.9.3 1073 + 1074 + '@sveltejs/vite-plugin-svelte-inspector@5.0.2(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.53.7)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)))(svelte@5.53.7)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1))': 1075 + dependencies: 1076 + '@sveltejs/vite-plugin-svelte': 6.2.4(svelte@5.53.7)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)) 1077 + obug: 2.1.1 1078 + svelte: 5.53.7 1079 + vite: 7.3.1(jiti@2.6.1)(lightningcss@1.31.1) 1080 + 1081 + '@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.53.7)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1))': 1082 + dependencies: 1083 + '@sveltejs/vite-plugin-svelte-inspector': 5.0.2(@sveltejs/vite-plugin-svelte@6.2.4(svelte@5.53.7)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)))(svelte@5.53.7)(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)) 1084 + deepmerge: 4.3.1 1085 + magic-string: 0.30.21 1086 + obug: 2.1.1 1087 + svelte: 5.53.7 1088 + vite: 7.3.1(jiti@2.6.1)(lightningcss@1.31.1) 1089 + vitefu: 1.1.2(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)) 1090 + 1091 + '@tailwindcss/node@4.2.1': 1092 + dependencies: 1093 + '@jridgewell/remapping': 2.3.5 1094 + enhanced-resolve: 5.20.0 1095 + jiti: 2.6.1 1096 + lightningcss: 1.31.1 1097 + magic-string: 0.30.21 1098 + source-map-js: 1.2.1 1099 + tailwindcss: 4.2.1 1100 + 1101 + '@tailwindcss/oxide-android-arm64@4.2.1': 1102 + optional: true 1103 + 1104 + '@tailwindcss/oxide-darwin-arm64@4.2.1': 1105 + optional: true 1106 + 1107 + '@tailwindcss/oxide-darwin-x64@4.2.1': 1108 + optional: true 1109 + 1110 + '@tailwindcss/oxide-freebsd-x64@4.2.1': 1111 + optional: true 1112 + 1113 + '@tailwindcss/oxide-linux-arm-gnueabihf@4.2.1': 1114 + optional: true 1115 + 1116 + '@tailwindcss/oxide-linux-arm64-gnu@4.2.1': 1117 + optional: true 1118 + 1119 + '@tailwindcss/oxide-linux-arm64-musl@4.2.1': 1120 + optional: true 1121 + 1122 + '@tailwindcss/oxide-linux-x64-gnu@4.2.1': 1123 + optional: true 1124 + 1125 + '@tailwindcss/oxide-linux-x64-musl@4.2.1': 1126 + optional: true 1127 + 1128 + '@tailwindcss/oxide-wasm32-wasi@4.2.1': 1129 + optional: true 1130 + 1131 + '@tailwindcss/oxide-win32-arm64-msvc@4.2.1': 1132 + optional: true 1133 + 1134 + '@tailwindcss/oxide-win32-x64-msvc@4.2.1': 1135 + optional: true 1136 + 1137 + '@tailwindcss/oxide@4.2.1': 1138 + optionalDependencies: 1139 + '@tailwindcss/oxide-android-arm64': 4.2.1 1140 + '@tailwindcss/oxide-darwin-arm64': 4.2.1 1141 + '@tailwindcss/oxide-darwin-x64': 4.2.1 1142 + '@tailwindcss/oxide-freebsd-x64': 4.2.1 1143 + '@tailwindcss/oxide-linux-arm-gnueabihf': 4.2.1 1144 + '@tailwindcss/oxide-linux-arm64-gnu': 4.2.1 1145 + '@tailwindcss/oxide-linux-arm64-musl': 4.2.1 1146 + '@tailwindcss/oxide-linux-x64-gnu': 4.2.1 1147 + '@tailwindcss/oxide-linux-x64-musl': 4.2.1 1148 + '@tailwindcss/oxide-wasm32-wasi': 4.2.1 1149 + '@tailwindcss/oxide-win32-arm64-msvc': 4.2.1 1150 + '@tailwindcss/oxide-win32-x64-msvc': 4.2.1 1151 + 1152 + '@tailwindcss/typography@0.5.19(tailwindcss@4.2.1)': 1153 + dependencies: 1154 + postcss-selector-parser: 6.0.10 1155 + tailwindcss: 4.2.1 1156 + 1157 + '@tailwindcss/vite@4.2.1(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1))': 1158 + dependencies: 1159 + '@tailwindcss/node': 4.2.1 1160 + '@tailwindcss/oxide': 4.2.1 1161 + tailwindcss: 4.2.1 1162 + vite: 7.3.1(jiti@2.6.1)(lightningcss@1.31.1) 1163 + 1164 + '@types/cookie@0.6.0': {} 1165 + 1166 + '@types/estree@1.0.8': {} 1167 + 1168 + '@types/trusted-types@2.0.7': {} 1169 + 1170 + acorn@8.16.0: {} 1171 + 1172 + aria-query@5.3.1: {} 1173 + 1174 + axobject-query@4.1.0: {} 1175 + 1176 + chokidar@4.0.3: 1177 + dependencies: 1178 + readdirp: 4.1.2 1179 + 1180 + clsx@2.1.1: {} 1181 + 1182 + cookie@0.6.0: {} 1183 + 1184 + cssesc@3.0.0: {} 1185 + 1186 + deepmerge@4.3.1: {} 1187 + 1188 + detect-libc@2.1.2: {} 1189 + 1190 + devalue@5.6.3: {} 1191 + 1192 + enhanced-resolve@5.20.0: 1193 + dependencies: 1194 + graceful-fs: 4.2.11 1195 + tapable: 2.3.0 1196 + 1197 + esbuild@0.27.3: 1198 + optionalDependencies: 1199 + '@esbuild/aix-ppc64': 0.27.3 1200 + '@esbuild/android-arm': 0.27.3 1201 + '@esbuild/android-arm64': 0.27.3 1202 + '@esbuild/android-x64': 0.27.3 1203 + '@esbuild/darwin-arm64': 0.27.3 1204 + '@esbuild/darwin-x64': 0.27.3 1205 + '@esbuild/freebsd-arm64': 0.27.3 1206 + '@esbuild/freebsd-x64': 0.27.3 1207 + '@esbuild/linux-arm': 0.27.3 1208 + '@esbuild/linux-arm64': 0.27.3 1209 + '@esbuild/linux-ia32': 0.27.3 1210 + '@esbuild/linux-loong64': 0.27.3 1211 + '@esbuild/linux-mips64el': 0.27.3 1212 + '@esbuild/linux-ppc64': 0.27.3 1213 + '@esbuild/linux-riscv64': 0.27.3 1214 + '@esbuild/linux-s390x': 0.27.3 1215 + '@esbuild/linux-x64': 0.27.3 1216 + '@esbuild/netbsd-arm64': 0.27.3 1217 + '@esbuild/netbsd-x64': 0.27.3 1218 + '@esbuild/openbsd-arm64': 0.27.3 1219 + '@esbuild/openbsd-x64': 0.27.3 1220 + '@esbuild/openharmony-arm64': 0.27.3 1221 + '@esbuild/sunos-x64': 0.27.3 1222 + '@esbuild/win32-arm64': 0.27.3 1223 + '@esbuild/win32-ia32': 0.27.3 1224 + '@esbuild/win32-x64': 0.27.3 1225 + 1226 + esm-env@1.2.2: {} 1227 + 1228 + esrap@2.2.3: 1229 + dependencies: 1230 + '@jridgewell/sourcemap-codec': 1.5.5 1231 + 1232 + fdir@6.5.0(picomatch@4.0.3): 1233 + optionalDependencies: 1234 + picomatch: 4.0.3 1235 + 1236 + fsevents@2.3.3: 1237 + optional: true 1238 + 1239 + graceful-fs@4.2.11: {} 1240 + 1241 + is-reference@3.0.3: 1242 + dependencies: 1243 + '@types/estree': 1.0.8 1244 + 1245 + jiti@2.6.1: {} 1246 + 1247 + kleur@4.1.5: {} 1248 + 1249 + lightningcss-android-arm64@1.31.1: 1250 + optional: true 1251 + 1252 + lightningcss-darwin-arm64@1.31.1: 1253 + optional: true 1254 + 1255 + lightningcss-darwin-x64@1.31.1: 1256 + optional: true 1257 + 1258 + lightningcss-freebsd-x64@1.31.1: 1259 + optional: true 1260 + 1261 + lightningcss-linux-arm-gnueabihf@1.31.1: 1262 + optional: true 1263 + 1264 + lightningcss-linux-arm64-gnu@1.31.1: 1265 + optional: true 1266 + 1267 + lightningcss-linux-arm64-musl@1.31.1: 1268 + optional: true 1269 + 1270 + lightningcss-linux-x64-gnu@1.31.1: 1271 + optional: true 1272 + 1273 + lightningcss-linux-x64-musl@1.31.1: 1274 + optional: true 1275 + 1276 + lightningcss-win32-arm64-msvc@1.31.1: 1277 + optional: true 1278 + 1279 + lightningcss-win32-x64-msvc@1.31.1: 1280 + optional: true 1281 + 1282 + lightningcss@1.31.1: 1283 + dependencies: 1284 + detect-libc: 2.1.2 1285 + optionalDependencies: 1286 + lightningcss-android-arm64: 1.31.1 1287 + lightningcss-darwin-arm64: 1.31.1 1288 + lightningcss-darwin-x64: 1.31.1 1289 + lightningcss-freebsd-x64: 1.31.1 1290 + lightningcss-linux-arm-gnueabihf: 1.31.1 1291 + lightningcss-linux-arm64-gnu: 1.31.1 1292 + lightningcss-linux-arm64-musl: 1.31.1 1293 + lightningcss-linux-x64-gnu: 1.31.1 1294 + lightningcss-linux-x64-musl: 1.31.1 1295 + lightningcss-win32-arm64-msvc: 1.31.1 1296 + lightningcss-win32-x64-msvc: 1.31.1 1297 + 1298 + locate-character@3.0.0: {} 1299 + 1300 + magic-string@0.30.21: 1301 + dependencies: 1302 + '@jridgewell/sourcemap-codec': 1.5.5 1303 + 1304 + mri@1.2.0: {} 1305 + 1306 + mrmime@2.0.1: {} 1307 + 1308 + nanoid@3.3.11: {} 1309 + 1310 + obug@2.1.1: {} 1311 + 1312 + picocolors@1.1.1: {} 1313 + 1314 + picomatch@4.0.3: {} 1315 + 1316 + postcss-selector-parser@6.0.10: 1317 + dependencies: 1318 + cssesc: 3.0.0 1319 + util-deprecate: 1.0.2 1320 + 1321 + postcss@8.5.8: 1322 + dependencies: 1323 + nanoid: 3.3.11 1324 + picocolors: 1.1.1 1325 + source-map-js: 1.2.1 1326 + 1327 + prettier-plugin-svelte@3.5.1(prettier@3.8.1)(svelte@5.53.7): 1328 + dependencies: 1329 + prettier: 3.8.1 1330 + svelte: 5.53.7 1331 + 1332 + prettier-plugin-tailwindcss@0.7.2(prettier-plugin-svelte@3.5.1(prettier@3.8.1)(svelte@5.53.7))(prettier@3.8.1): 1333 + dependencies: 1334 + prettier: 3.8.1 1335 + optionalDependencies: 1336 + prettier-plugin-svelte: 3.5.1(prettier@3.8.1)(svelte@5.53.7) 1337 + 1338 + prettier@3.8.1: {} 1339 + 1340 + readdirp@4.1.2: {} 1341 + 1342 + rollup@4.59.0: 1343 + dependencies: 1344 + '@types/estree': 1.0.8 1345 + optionalDependencies: 1346 + '@rollup/rollup-android-arm-eabi': 4.59.0 1347 + '@rollup/rollup-android-arm64': 4.59.0 1348 + '@rollup/rollup-darwin-arm64': 4.59.0 1349 + '@rollup/rollup-darwin-x64': 4.59.0 1350 + '@rollup/rollup-freebsd-arm64': 4.59.0 1351 + '@rollup/rollup-freebsd-x64': 4.59.0 1352 + '@rollup/rollup-linux-arm-gnueabihf': 4.59.0 1353 + '@rollup/rollup-linux-arm-musleabihf': 4.59.0 1354 + '@rollup/rollup-linux-arm64-gnu': 4.59.0 1355 + '@rollup/rollup-linux-arm64-musl': 4.59.0 1356 + '@rollup/rollup-linux-loong64-gnu': 4.59.0 1357 + '@rollup/rollup-linux-loong64-musl': 4.59.0 1358 + '@rollup/rollup-linux-ppc64-gnu': 4.59.0 1359 + '@rollup/rollup-linux-ppc64-musl': 4.59.0 1360 + '@rollup/rollup-linux-riscv64-gnu': 4.59.0 1361 + '@rollup/rollup-linux-riscv64-musl': 4.59.0 1362 + '@rollup/rollup-linux-s390x-gnu': 4.59.0 1363 + '@rollup/rollup-linux-x64-gnu': 4.59.0 1364 + '@rollup/rollup-linux-x64-musl': 4.59.0 1365 + '@rollup/rollup-openbsd-x64': 4.59.0 1366 + '@rollup/rollup-openharmony-arm64': 4.59.0 1367 + '@rollup/rollup-win32-arm64-msvc': 4.59.0 1368 + '@rollup/rollup-win32-ia32-msvc': 4.59.0 1369 + '@rollup/rollup-win32-x64-gnu': 4.59.0 1370 + '@rollup/rollup-win32-x64-msvc': 4.59.0 1371 + fsevents: 2.3.3 1372 + 1373 + sade@1.8.1: 1374 + dependencies: 1375 + mri: 1.2.0 1376 + 1377 + set-cookie-parser@3.0.1: {} 1378 + 1379 + sirv@3.0.2: 1380 + dependencies: 1381 + '@polka/url': 1.0.0-next.29 1382 + mrmime: 2.0.1 1383 + totalist: 3.0.1 1384 + 1385 + source-map-js@1.2.1: {} 1386 + 1387 + svelte-check@4.4.5(picomatch@4.0.3)(svelte@5.53.7)(typescript@5.9.3): 1388 + dependencies: 1389 + '@jridgewell/trace-mapping': 0.3.31 1390 + chokidar: 4.0.3 1391 + fdir: 6.5.0(picomatch@4.0.3) 1392 + picocolors: 1.1.1 1393 + sade: 1.8.1 1394 + svelte: 5.53.7 1395 + typescript: 5.9.3 1396 + transitivePeerDependencies: 1397 + - picomatch 1398 + 1399 + svelte@5.53.7: 1400 + dependencies: 1401 + '@jridgewell/remapping': 2.3.5 1402 + '@jridgewell/sourcemap-codec': 1.5.5 1403 + '@sveltejs/acorn-typescript': 1.0.9(acorn@8.16.0) 1404 + '@types/estree': 1.0.8 1405 + '@types/trusted-types': 2.0.7 1406 + acorn: 8.16.0 1407 + aria-query: 5.3.1 1408 + axobject-query: 4.1.0 1409 + clsx: 2.1.1 1410 + devalue: 5.6.3 1411 + esm-env: 1.2.2 1412 + esrap: 2.2.3 1413 + is-reference: 3.0.3 1414 + locate-character: 3.0.0 1415 + magic-string: 0.30.21 1416 + zimmerframe: 1.1.4 1417 + 1418 + tailwindcss@4.2.1: {} 1419 + 1420 + tapable@2.3.0: {} 1421 + 1422 + tinyglobby@0.2.15: 1423 + dependencies: 1424 + fdir: 6.5.0(picomatch@4.0.3) 1425 + picomatch: 4.0.3 1426 + 1427 + totalist@3.0.1: {} 1428 + 1429 + typescript@5.9.3: {} 1430 + 1431 + util-deprecate@1.0.2: {} 1432 + 1433 + vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1): 1434 + dependencies: 1435 + esbuild: 0.27.3 1436 + fdir: 6.5.0(picomatch@4.0.3) 1437 + picomatch: 4.0.3 1438 + postcss: 8.5.8 1439 + rollup: 4.59.0 1440 + tinyglobby: 0.2.15 1441 + optionalDependencies: 1442 + fsevents: 2.3.3 1443 + jiti: 2.6.1 1444 + lightningcss: 1.31.1 1445 + 1446 + vitefu@1.1.2(vite@7.3.1(jiti@2.6.1)(lightningcss@1.31.1)): 1447 + optionalDependencies: 1448 + vite: 7.3.1(jiti@2.6.1)(lightningcss@1.31.1) 1449 + 1450 + zimmerframe@1.1.4: {}
+2
modules/server/pds-landing/pnpm-workspace.yaml
··· 1 + onlyBuiltDependencies: 2 + - esbuild
+13
modules/server/pds-landing/src/app.d.ts
··· 1 + // See https://svelte.dev/docs/kit/types#app.d.ts 2 + // for information about these interfaces 3 + declare global { 4 + namespace App { 5 + // interface Error {} 6 + // interface Locals {} 7 + // interface PageData {} 8 + // interface PageState {} 9 + // interface Platform {} 10 + } 11 + } 12 + 13 + export {};
+11
modules/server/pds-landing/src/app.html
··· 1 + <!doctype html> 2 + <html lang="en"> 3 + <head> 4 + <meta charset="utf-8" /> 5 + <meta name="viewport" content="width=device-width, initial-scale=1" /> 6 + %sveltekit.head% 7 + </head> 8 + <body data-sveltekit-preload-data="hover"> 9 + <div style="display: contents">%sveltekit.body%</div> 10 + </body> 11 + </html>
+1
modules/server/pds-landing/src/lib/assets/favicon.svg
··· 1 + <svg xmlns="http://www.w3.org/2000/svg" width="107" height="128" viewBox="0 0 107 128"><title>svelte-logo</title><path d="M94.157 22.819c-10.4-14.885-30.94-19.297-45.792-9.835L22.282 29.608A29.92 29.92 0 0 0 8.764 49.65a31.5 31.5 0 0 0 3.108 20.231 30 30 0 0 0-4.477 11.183 31.9 31.9 0 0 0 5.448 24.116c10.402 14.887 30.942 19.297 45.791 9.835l26.083-16.624A29.92 29.92 0 0 0 98.235 78.35a31.53 31.53 0 0 0-3.105-20.232 30 30 0 0 0 4.474-11.182 31.88 31.88 0 0 0-5.447-24.116" style="fill:#ff3e00"/><path d="M45.817 106.582a20.72 20.72 0 0 1-22.237-8.243 19.17 19.17 0 0 1-3.277-14.503 18 18 0 0 1 .624-2.435l.49-1.498 1.337.981a33.6 33.6 0 0 0 10.203 5.098l.97.294-.09.968a5.85 5.85 0 0 0 1.052 3.878 6.24 6.24 0 0 0 6.695 2.485 5.8 5.8 0 0 0 1.603-.704L69.27 76.28a5.43 5.43 0 0 0 2.45-3.631 5.8 5.8 0 0 0-.987-4.371 6.24 6.24 0 0 0-6.698-2.487 5.7 5.7 0 0 0-1.6.704l-9.953 6.345a19 19 0 0 1-5.296 2.326 20.72 20.72 0 0 1-22.237-8.243 19.17 19.17 0 0 1-3.277-14.502 17.99 17.99 0 0 1 8.13-12.052l26.081-16.623a19 19 0 0 1 5.3-2.329 20.72 20.72 0 0 1 22.237 8.243 19.17 19.17 0 0 1 3.277 14.503 18 18 0 0 1-.624 2.435l-.49 1.498-1.337-.98a33.6 33.6 0 0 0-10.203-5.1l-.97-.294.09-.968a5.86 5.86 0 0 0-1.052-3.878 6.24 6.24 0 0 0-6.696-2.485 5.8 5.8 0 0 0-1.602.704L37.73 51.72a5.42 5.42 0 0 0-2.449 3.63 5.79 5.79 0 0 0 .986 4.372 6.24 6.24 0 0 0 6.698 2.486 5.8 5.8 0 0 0 1.602-.704l9.952-6.342a19 19 0 0 1 5.295-2.328 20.72 20.72 0 0 1 22.237 8.242 19.17 19.17 0 0 1 3.277 14.503 18 18 0 0 1-8.13 12.053l-26.081 16.622a19 19 0 0 1-5.3 2.328" style="fill:#fff"/></svg>
+1
modules/server/pds-landing/src/lib/index.ts
··· 1 + // place files you want to import through the `$lib` alias in this folder.
+11
modules/server/pds-landing/src/routes/+layout.svelte
··· 1 + <script lang="ts"> 2 + import './layout.css'; 3 + 4 + const { children } = $props(); 5 + </script> 6 + 7 + <svelte:head> 8 + <link rel="icon" href="/favicon.svg" type="image/svg+xml" /> 9 + </svelte:head> 10 + 11 + {@render children()}
+1
modules/server/pds-landing/src/routes/+layout.ts
··· 1 + export const prerender = true;
+14
modules/server/pds-landing/src/routes/+page.svelte
··· 1 + <script lang="ts"> 2 + import { PDSPage } from '@ewanc26/pds-landing'; 3 + </script> 4 + 5 + <PDSPage 6 + cardTitle="ewan's pds" 7 + promptUser="server" 8 + promptHost="pds.ewancroft.uk" 9 + promptPath="~" 10 + tagline="Bluesky-compatible ATProto PDS · personal instance" 11 + blueskyHandle="ewancroft.uk" 12 + blueskyClientUrl="https://witchsky.app" 13 + staticLinks={[{ href: 'https://witchsky.app', label: 'Witchsky Web Client' }]} 14 + />
+29
modules/server/pds-landing/src/routes/layout.css
··· 1 + @import 'tailwindcss'; 2 + @import '@ewanc26/ui/styles/pds-tokens.css'; 3 + 4 + /* ─── Global resets & base ───────────────────────────────────────────────── */ 5 + *, 6 + *::before, 7 + *::after { 8 + box-sizing: border-box; 9 + margin: 0; 10 + padding: 0; 11 + } 12 + 13 + html, 14 + body { 15 + min-height: 100dvh; 16 + background-color: var(--pds-color-crust); 17 + color: var(--pds-color-text); 18 + font-family: var(--pds-font-mono); 19 + font-size: clamp(13px, 3.5vw, 15px); 20 + line-height: 1.6; 21 + } 22 + 23 + body { 24 + display: flex; 25 + flex-direction: column; 26 + align-items: center; 27 + padding: clamp(1.5rem, 6vw, 4rem) clamp(1rem, 4vw, 1.5rem) clamp(1.5rem, 6vw, 3rem); 28 + gap: 2rem; 29 + }
+6
modules/server/pds-landing/svelte.config.js
··· 1 + import adapter from '@sveltejs/adapter-static'; 2 + 3 + /** @type {import('@sveltejs/kit').Config} */ 4 + const config = { kit: { adapter: adapter() } }; 5 + 6 + export default config;
+20
modules/server/pds-landing/tsconfig.json
··· 1 + { 2 + "extends": "./.svelte-kit/tsconfig.json", 3 + "compilerOptions": { 4 + "rewriteRelativeImportExtensions": true, 5 + "allowJs": true, 6 + "checkJs": true, 7 + "esModuleInterop": true, 8 + "forceConsistentCasingInFileNames": true, 9 + "resolveJsonModule": true, 10 + "skipLibCheck": true, 11 + "sourceMap": true, 12 + "strict": true, 13 + "moduleResolution": "bundler" 14 + } 15 + // Path aliases are handled by https://svelte.dev/docs/kit/configuration#alias 16 + // except $lib which is handled by https://svelte.dev/docs/kit/configuration#files 17 + // 18 + // To make changes to top-level options such as include and exclude, we recommend extending 19 + // the generated config; see https://svelte.dev/docs/kit/configuration#typescript 20 + }
+5
modules/server/pds-landing/vite.config.ts
··· 1 + import tailwindcss from '@tailwindcss/vite'; 2 + import { sveltekit } from '@sveltejs/kit/vite'; 3 + import { defineConfig } from 'vite'; 4 + 5 + export default defineConfig({ plugins: [tailwindcss(), sveltekit()] });
+2 -2
modules/server/pds.nix
··· 101 101 extraConfig = '' 102 102 ${ageAssuranceBlocks} 103 103 104 - # Landing page — serve static assets; redirect bare /index.html to /. 104 + # Landing page — SvelteKit static build; redirect bare /index.html to /. 105 105 handle /index.html { 106 106 redir / permanent 107 107 } 108 - @landing path / /style.css /utils.js /status.js /script.js /assets/* /favicon.ico /favicon-*.png /apple-icon-*.png /android-icon-*.png /ms-icon-*.png /manifest.json /browserconfig.xml 108 + @landing path / /_app/* /favicon.svg /favicon.ico 109 109 handle @landing { 110 110 root * ${landingPage} 111 111 file_server