web components for a integrable atproto based guestbook

Init fork

yuna0x0.com dd9c34c7 7befa943

verified
+2282 -3407
+9 -9
README.md
··· 2 2 3 3 Web components for AT Protocol guestbooks. Sign and display guestbook entries stored in user repositories, indexed via Constellation. 4 4 5 - Demo: https://guestbook.nkp.pet/ 5 + Forked from [nekomimi.pet/cutebook](https://tangled.org/nekomimi.pet/cutebook). 6 6 7 7 ## Installation 8 8 9 9 ```bash 10 - npm install cutebook 10 + pnpm install cutebook 11 11 ``` 12 12 13 13 Peer dependencies: 14 14 15 15 ```bash 16 - npm install @atcute/client @atcute/oauth-browser-client @atcute/identity-resolver 16 + pnpm install @atcute/client @atcute/oauth-browser-client @atcute/identity-resolver 17 17 ``` 18 18 19 19 ## Quick Start ··· 87 87 88 88 ## Lexicon 89 89 90 - Signatures use the `pet.nkp.guestbook.sign` record type: 90 + Signatures use the `com.yuna0x0.guestbook.sign` record type: 91 91 92 92 ```json 93 93 { 94 - "$type": "pet.nkp.guestbook.sign", 94 + "$type": "com.yuna0x0.guestbook.sign", 95 95 "subject": "did:plc:guestbook-owner", 96 96 "message": "Your message here", 97 97 "createdAt": "2024-01-01T00:00:00.000Z" ··· 101 101 ## Development 102 102 103 103 ```bash 104 - npm run dev # Run demo app 105 - npm run build # Build library 106 - npm run build:demo # Build demo app 107 - npm run check # Type check 104 + pnpm run dev # Run demo app 105 + pnpm run build # Build library 106 + pnpm run build:demo # Build demo app 107 + pnpm run check # Type check 108 108 ``` 109 109 110 110 ## Credits
-244
bun.lock
··· 1 - { 2 - "lockfileVersion": 1, 3 - "configVersion": 0, 4 - "workspaces": { 5 - "": { 6 - "name": "cutebook", 7 - "dependencies": { 8 - "@atcute/atproto": "^3.1.9", 9 - "@atcute/client": "^4.1.0", 10 - "@atcute/identity-resolver": "^1.1.4", 11 - "@atcute/lex-cli": "^2.5.0", 12 - "@atcute/lexicon-doc": "^2.0.4", 13 - "@atcute/oauth-browser-client": "^2.0.1", 14 - }, 15 - "devDependencies": { 16 - "@sveltejs/vite-plugin-svelte": "^6.2.1", 17 - "@tsconfig/svelte": "^5.0.6", 18 - "@types/node": "^24.10.1", 19 - "svelte": "^5.43.8", 20 - "svelte-check": "^4.3.4", 21 - "typescript": "~5.9.3", 22 - "vite": "npm:rolldown-vite@7.2.5", 23 - }, 24 - }, 25 - }, 26 - "overrides": { 27 - "vite": "npm:rolldown-vite@7.2.5", 28 - }, 29 - "packages": { 30 - "@atcute/atproto": ["@atcute/atproto@3.1.9", "", { "dependencies": { "@atcute/lexicons": "^1.2.2" } }, "sha512-DyWwHCTdR4hY2BPNbLXgVmm7lI+fceOwWbE4LXbGvbvVtSn+ejSVFaAv01Ra3kWDha0whsOmbJL8JP0QPpf1+w=="], 31 - 32 - "@atcute/car": ["@atcute/car@5.0.0", "", { "dependencies": { "@atcute/cbor": "^2.2.7", "@atcute/cid": "^2.2.6", "@atcute/uint8array": "^1.0.5", "@atcute/varint": "^1.0.3" } }, "sha512-OIY2xTXv8lSpZsDSn/UYQtJSMvDw5Hi4Q+uyvmiqSM+fht08QRAEq/nxa5YFciPZ3nfDFnZ3//EgJw7QhkSXLQ=="], 33 - 34 - "@atcute/cbor": ["@atcute/cbor@2.2.8", "", { "dependencies": { "@atcute/cid": "^2.2.6", "@atcute/multibase": "^1.1.6", "@atcute/uint8array": "^1.0.5" } }, "sha512-UzOAN9BuN6JCXgn0ryV8qZuRJUDrNqrbLd6EFM8jc6RYssjRyGRxNy6RZ1NU/07Hd8Tq/0pz8+nQiMu5Zai5uw=="], 35 - 36 - "@atcute/cid": ["@atcute/cid@2.2.6", "", { "dependencies": { "@atcute/multibase": "^1.1.6", "@atcute/uint8array": "^1.0.5" } }, "sha512-bTAHHbJ24p+E//V4KCS4xdmd39o211jJswvqQOevj7vk+5IYcgDLx1ryZWZ1sEPOo9x875li/kj5gpKL14RDwQ=="], 37 - 38 - "@atcute/client": ["@atcute/client@4.1.0", "", { "dependencies": { "@atcute/identity": "^1.1.3", "@atcute/lexicons": "^1.2.5" } }, "sha512-AYhSu3RSDA2VDkVGOmad320NRbUUUf5pCFWJcOzlk25YC/4kyzmMFfpzhf1jjjEcY+anNBXGGhav/kKB1evggQ=="], 39 - 40 - "@atcute/crypto": ["@atcute/crypto@2.2.6", "", { "dependencies": { "@atcute/multibase": "^1.1.6", "@atcute/uint8array": "^1.0.5", "@noble/secp256k1": "^3.0.0" } }, "sha512-vkuexF+kmrKE1/Uqzub99Qi4QpnxA2jbu60E6PTgL4XypELQ6rb59MB/J1VbY2gs0kd3ET7+L3+NWpKD5nXyfA=="], 41 - 42 - "@atcute/identity": ["@atcute/identity@1.1.3", "", { "dependencies": { "@atcute/lexicons": "^1.2.4", "@badrap/valita": "^0.4.6" } }, "sha512-oIqPoI8TwWeQxvcLmFEZLdN2XdWcaLVtlm8pNk0E72As9HNzzD9pwKPrLr3rmTLRIoULPPFmq9iFNsTeCIU9ng=="], 43 - 44 - "@atcute/identity-resolver": ["@atcute/identity-resolver@1.1.4", "", { "dependencies": { "@atcute/lexicons": "^1.2.2", "@atcute/util-fetch": "^1.0.3", "@badrap/valita": "^0.4.6" }, "peerDependencies": { "@atcute/identity": "^1.0.0" } }, "sha512-/SVh8vf2cXFJenmBnGeYF2aY3WGQm3cJeew5NWTlkqoy3LvJ5wkvKq9PWu4Tv653VF40rPOp6LOdVr9Fa+q5rA=="], 45 - 46 - "@atcute/lex-cli": ["@atcute/lex-cli@2.5.0", "", { "dependencies": { "@atcute/identity": "^1.1.3", "@atcute/identity-resolver": "^1.1.4", "@atcute/lexicon-doc": "^2.0.3", "@atcute/lexicon-resolver": "^0.1.4", "@atcute/lexicons": "^1.2.5", "@badrap/valita": "^0.4.6", "@optique/core": "^0.6.3", "@optique/run": "^0.6.3", "picocolors": "^1.1.1", "prettier": "^3.6.2" }, "bin": { "lex-cli": "cli.mjs" } }, "sha512-mIla9XeK9HJqFW0m/FaHI3+wIQlUL3PJYFpGmlXVwJISQVHASvWpU6gCHSYtAySZTrfVDv73fsVDBkpw9mnTjA=="], 47 - 48 - "@atcute/lexicon-doc": ["@atcute/lexicon-doc@2.0.4", "", { "dependencies": { "@atcute/identity": "^1.1.3", "@atcute/lexicons": "^1.2.5", "@badrap/valita": "^0.4.6" } }, "sha512-YfwlYFoYiBvRIYG0I1zsINCTFugFtS8l67uT3nQ04zdKVflzdg8uUj8cNZYRNY1V7okoOPdikhR4kPFhYGyemw=="], 49 - 50 - "@atcute/lexicon-resolver": ["@atcute/lexicon-resolver@0.1.5", "", { "dependencies": { "@atcute/crypto": "^2.2.6", "@atcute/lexicon-doc": "^2.0.4", "@atcute/lexicons": "^1.2.5", "@atcute/repo": "^0.1.0", "@atcute/util-fetch": "^1.0.4", "@badrap/valita": "^0.4.6" }, "peerDependencies": { "@atcute/identity": "^1.1.0", "@atcute/identity-resolver": "^1.1.3" } }, "sha512-0bx1/zdMQPuxvRcHW6ykAxRxktC2rEZLoAVSFoLSWDAA92Tf09F9QPK5wgXSF4MNODm1dvzMEdWSMIvlg8sr3A=="], 51 - 52 - "@atcute/lexicons": ["@atcute/lexicons@1.2.5", "", { "dependencies": { "@standard-schema/spec": "^1.0.0", "esm-env": "^1.2.2" } }, "sha512-9yO9WdgxW8jZ7SbzUycH710z+JmsQ9W9n5S6i6eghYju32kkluFmgBeS47r8e8p2+Dv4DemS7o/3SUGsX9FR5Q=="], 53 - 54 - "@atcute/mst": ["@atcute/mst@0.1.0", "", { "dependencies": { "@atcute/cbor": "^2.2.7", "@atcute/cid": "^2.2.6", "@atcute/uint8array": "^1.0.5" } }, "sha512-h+iDToKEnBpigk2DOHjSqY63vJtjYKUIztqu1CZ0P+I54wV2SrgoqAXAT1xrW6A1Iup8cjTv+U2H5WVG4KxPLw=="], 55 - 56 - "@atcute/multibase": ["@atcute/multibase@1.1.6", "", { "dependencies": { "@atcute/uint8array": "^1.0.5" } }, "sha512-HBxuCgYLKPPxETV0Rot4VP9e24vKl8JdzGCZOVsDaOXJgbRZoRIF67Lp0H/OgnJeH/Xpva8Z5ReoTNJE5dn3kg=="], 57 - 58 - "@atcute/oauth-browser-client": ["@atcute/oauth-browser-client@2.0.1", "", { "dependencies": { "@atcute/client": "^4.0.5", "@atcute/identity": "^1.1.1", "@atcute/identity-resolver": "^1.1.4", "@atcute/lexicons": "^1.2.2", "@atcute/multibase": "^1.1.6", "@atcute/uint8array": "^1.0.5", "nanoid": "^5.1.5" } }, "sha512-lG021GkeORG06zfFf4bH85egObjBEKHNgAWHvbtY/E2dX4wxo88hf370pJDx8acdnuUJLJ2VKPikJtZwo4Heeg=="], 59 - 60 - "@atcute/repo": ["@atcute/repo@0.1.0", "", { "dependencies": { "@atcute/car": "^5.0.0", "@atcute/cbor": "^2.2.7", "@atcute/cid": "^2.2.6", "@atcute/crypto": "^2.2.5", "@atcute/lexicons": "^1.2.2", "@atcute/mst": "^0.1.0", "@atcute/uint8array": "^1.0.5" } }, "sha512-INiYAuma8dydBu7cqd2WVpcXh3mzhIepYBUqFWAK5MqMulPRLTRCc/9GW3G9pxYrOdlvLCVamG2Jf8XK0nuFEw=="], 61 - 62 - "@atcute/uint8array": ["@atcute/uint8array@1.0.5", "", {}, "sha512-XLWWxoR2HNl2qU+FCr0rp1APwJXci7HnzbOQLxK55OaMNBXZ19+xNC5ii4QCsThsDxa4JS/JTzuiQLziITWf2Q=="], 63 - 64 - "@atcute/util-fetch": ["@atcute/util-fetch@1.0.3", "", { "dependencies": { "@badrap/valita": "^0.4.6" } }, "sha512-f8zzTb/xlKIwv2OQ31DhShPUNCmIIleX6p7qIXwWwEUjX6x8skUtpdISSjnImq01LXpltGV5y8yhV4/Mlb7CRQ=="], 65 - 66 - "@atcute/varint": ["@atcute/varint@1.0.3", "", {}, "sha512-fdvMPyBB+McDT+Ai5e9RwEbwYV4yjZ60S2Dn5PTjGqUyxvoCH1z42viuheDZRUDkmfQehXJTZ5az7dSozVNtog=="], 67 - 68 - "@badrap/valita": ["@badrap/valita@0.4.6", "", {}, "sha512-4kdqcjyxo/8RQ8ayjms47HCWZIF5981oE5nIenbfThKDxWXtEHKipAOWlflpPJzZx9y/JWYQkp18Awr7VuepFg=="], 69 - 70 - "@emnapi/core": ["@emnapi/core@1.7.1", "", { "dependencies": { "@emnapi/wasi-threads": "1.1.0", "tslib": "^2.4.0" } }, "sha512-o1uhUASyo921r2XtHYOHy7gdkGLge8ghBEQHMWmyJFoXlpU58kIrhhN3w26lpQb6dspetweapMn2CSNwQ8I4wg=="], 71 - 72 - "@emnapi/runtime": ["@emnapi/runtime@1.7.1", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-PVtJr5CmLwYAU9PZDMITZoR5iAOShYREoR45EyyLrbntV50mdePTgUn4AmOw90Ifcj+x2kRjdzr1HP3RrNiHGA=="], 73 - 74 - "@emnapi/wasi-threads": ["@emnapi/wasi-threads@1.1.0", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ=="], 75 - 76 - "@jridgewell/gen-mapping": ["@jridgewell/gen-mapping@0.3.13", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0", "@jridgewell/trace-mapping": "^0.3.24" } }, "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA=="], 77 - 78 - "@jridgewell/remapping": ["@jridgewell/remapping@2.3.5", "", { "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.24" } }, "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ=="], 79 - 80 - "@jridgewell/resolve-uri": ["@jridgewell/resolve-uri@3.1.2", "", {}, "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw=="], 81 - 82 - "@jridgewell/sourcemap-codec": ["@jridgewell/sourcemap-codec@1.5.5", "", {}, "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og=="], 83 - 84 - "@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.31", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" } }, "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw=="], 85 - 86 - "@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@1.0.7", "", { "dependencies": { "@emnapi/core": "^1.5.0", "@emnapi/runtime": "^1.5.0", "@tybys/wasm-util": "^0.10.1" } }, "sha512-SeDnOO0Tk7Okiq6DbXmmBODgOAb9dp9gjlphokTUxmt8U3liIP1ZsozBahH69j/RJv+Rfs6IwUKHTgQYJ/HBAw=="], 87 - 88 - "@noble/secp256k1": ["@noble/secp256k1@3.0.0", "", {}, "sha512-NJBaR352KyIvj3t6sgT/+7xrNyF9Xk9QlLSIqUGVUYlsnDTAUqY8LOmwpcgEx4AMJXRITQ5XEVHD+mMaPfr3mg=="], 89 - 90 - "@optique/core": ["@optique/core@0.6.3", "", {}, "sha512-Aw7naHPeZr+YThJRrfk+Ds3OuAd7HUD1chsGncay+6crmLyrraXh0s0xDuJ52kCfNPdCTKAW3MG0XLcuEIr8qQ=="], 91 - 92 - "@optique/run": ["@optique/run@0.6.3", "", { "dependencies": { "@optique/core": "0.6.3" } }, "sha512-6zesLs4XLyFtG8s/JoG2VO/+plJVZhqbLK20yDm0hFEXrqcP+VCKTsoFAlWoWv4Us48V170SKH+8DZcxw8raJw=="], 93 - 94 - "@oxc-project/runtime": ["@oxc-project/runtime@0.97.0", "", {}, "sha512-yH0zw7z+jEws4dZ4IUKoix5Lh3yhqIJWF9Dc8PWvhpo7U7O+lJrv7ZZL4BeRO0la8LBQFwcCewtLBnVV7hPe/w=="], 95 - 96 - "@oxc-project/types": ["@oxc-project/types@0.97.0", "", {}, "sha512-lxmZK4xFrdvU0yZiDwgVQTCvh2gHWBJCBk5ALsrtsBWhs0uDIi+FTOnXRQeQfs304imdvTdaakT/lqwQ8hkOXQ=="], 97 - 98 - "@rolldown/binding-android-arm64": ["@rolldown/binding-android-arm64@1.0.0-beta.50", "", { "os": "android", "cpu": "arm64" }, "sha512-XlEkrOIHLyGT3avOgzfTFSjG+f+dZMw+/qd+Y3HLN86wlndrB/gSimrJCk4gOhr1XtRtEKfszpadI3Md4Z4/Ag=="], 99 - 100 - "@rolldown/binding-darwin-arm64": ["@rolldown/binding-darwin-arm64@1.0.0-beta.50", "", { "os": "darwin", "cpu": "arm64" }, "sha512-+JRqKJhoFlt5r9q+DecAGPLZ5PxeLva+wCMtAuoFMWPoZzgcYrr599KQ+Ix0jwll4B4HGP43avu9My8KtSOR+w=="], 101 - 102 - "@rolldown/binding-darwin-x64": ["@rolldown/binding-darwin-x64@1.0.0-beta.50", "", { "os": "darwin", "cpu": "x64" }, "sha512-fFXDjXnuX7/gQZQm/1FoivVtRcyAzdjSik7Eo+9iwPQ9EgtA5/nB2+jmbzaKtMGG3q+BnZbdKHCtOacmNrkIDA=="], 103 - 104 - "@rolldown/binding-freebsd-x64": ["@rolldown/binding-freebsd-x64@1.0.0-beta.50", "", { "os": "freebsd", "cpu": "x64" }, "sha512-F1b6vARy49tjmT/hbloplzgJS7GIvwWZqt+tAHEstCh0JIh9sa8FAMVqEmYxDviqKBaAI8iVvUREm/Kh/PD26Q=="], 105 - 106 - "@rolldown/binding-linux-arm-gnueabihf": ["@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.50", "", { "os": "linux", "cpu": "arm" }, "sha512-U6cR76N8T8M6lHj7EZrQ3xunLPxSvYYxA8vJsBKZiFZkT8YV4kjgCO3KwMJL0NOjQCPGKyiXO07U+KmJzdPGRw=="], 107 - 108 - "@rolldown/binding-linux-arm64-gnu": ["@rolldown/binding-linux-arm64-gnu@1.0.0-beta.50", "", { "os": "linux", "cpu": "arm64" }, "sha512-ONgyjofCrrE3bnh5GZb8EINSFyR/hmwTzZ7oVuyUB170lboza1VMCnb8jgE6MsyyRgHYmN8Lb59i3NKGrxrYjw=="], 109 - 110 - "@rolldown/binding-linux-arm64-musl": ["@rolldown/binding-linux-arm64-musl@1.0.0-beta.50", "", { "os": "linux", "cpu": "arm64" }, "sha512-L0zRdH2oDPkmB+wvuTl+dJbXCsx62SkqcEqdM+79LOcB+PxbAxxjzHU14BuZIQdXcAVDzfpMfaHWzZuwhhBTcw=="], 111 - 112 - "@rolldown/binding-linux-x64-gnu": ["@rolldown/binding-linux-x64-gnu@1.0.0-beta.50", "", { "os": "linux", "cpu": "x64" }, "sha512-gyoI8o/TGpQd3OzkJnh1M2kxy1Bisg8qJ5Gci0sXm9yLFzEXIFdtc4EAzepxGvrT2ri99ar5rdsmNG0zP0SbIg=="], 113 - 114 - "@rolldown/binding-linux-x64-musl": ["@rolldown/binding-linux-x64-musl@1.0.0-beta.50", "", { "os": "linux", "cpu": "x64" }, "sha512-zti8A7M+xFDpKlghpcCAzyOi+e5nfUl3QhU023ce5NCgUxRG5zGP2GR9LTydQ1rnIPwZUVBWd4o7NjZDaQxaXA=="], 115 - 116 - "@rolldown/binding-openharmony-arm64": ["@rolldown/binding-openharmony-arm64@1.0.0-beta.50", "", { "os": "none", "cpu": "arm64" }, "sha512-eZUssog7qljrrRU9Mi0eqYEPm3Ch0UwB+qlWPMKSUXHNqhm3TvDZarJQdTevGEfu3EHAXJvBIe0YFYr0TPVaMA=="], 117 - 118 - "@rolldown/binding-wasm32-wasi": ["@rolldown/binding-wasm32-wasi@1.0.0-beta.50", "", { "dependencies": { "@napi-rs/wasm-runtime": "^1.0.7" }, "cpu": "none" }, "sha512-nmCN0nIdeUnmgeDXiQ+2HU6FT162o+rxnF7WMkBm4M5Ds8qTU7Dzv2Wrf22bo4ftnlrb2hKK6FSwAJSAe2FWLg=="], 119 - 120 - "@rolldown/binding-win32-arm64-msvc": ["@rolldown/binding-win32-arm64-msvc@1.0.0-beta.50", "", { "os": "win32", "cpu": "arm64" }, "sha512-7kcNLi7Ua59JTTLvbe1dYb028QEPaJPJQHqkmSZ5q3tJueUeb6yjRtx8mw4uIqgWZcnQHAR3PrLN4XRJxvgIkA=="], 121 - 122 - "@rolldown/binding-win32-ia32-msvc": ["@rolldown/binding-win32-ia32-msvc@1.0.0-beta.50", "", { "os": "win32", "cpu": "ia32" }, "sha512-lL70VTNvSCdSZkDPPVMwWn/M2yQiYvSoXw9hTLgdIWdUfC3g72UaruezusR6ceRuwHCY1Ayu2LtKqXkBO5LIwg=="], 123 - 124 - "@rolldown/binding-win32-x64-msvc": ["@rolldown/binding-win32-x64-msvc@1.0.0-beta.50", "", { "os": "win32", "cpu": "x64" }, "sha512-4qU4x5DXWB4JPjyTne/wBNPqkbQU8J45bl21geERBKtEittleonioACBL1R0PsBu0Aq21SwMK5a9zdBkWSlQtQ=="], 125 - 126 - "@rolldown/pluginutils": ["@rolldown/pluginutils@1.0.0-beta.50", "", {}, "sha512-5e76wQiQVeL1ICOZVUg4LSOVYg9jyhGCin+icYozhsUzM+fHE7kddi1bdiE0jwVqTfkjba3jUFbEkoC9WkdvyA=="], 127 - 128 - "@standard-schema/spec": ["@standard-schema/spec@1.0.0", "", {}, "sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA=="], 129 - 130 - "@sveltejs/acorn-typescript": ["@sveltejs/acorn-typescript@1.0.7", "", { "peerDependencies": { "acorn": "^8.9.0" } }, "sha512-znp1A/Y1Jj4l/Zy7PX5DZKBE0ZNY+5QBngiE21NJkfSTyzzC5iKNWOtwFXKtIrn7MXEFBck4jD95iBNkGjK92Q=="], 131 - 132 - "@sveltejs/vite-plugin-svelte": ["@sveltejs/vite-plugin-svelte@6.2.1", "", { "dependencies": { "@sveltejs/vite-plugin-svelte-inspector": "^5.0.0", "debug": "^4.4.1", "deepmerge": "^4.3.1", "magic-string": "^0.30.17", "vitefu": "^1.1.1" }, "peerDependencies": { "svelte": "^5.0.0", "vite": "^6.3.0 || ^7.0.0" } }, "sha512-YZs/OSKOQAQCnJvM/P+F1URotNnYNeU3P2s4oIpzm1uFaqUEqRxUB0g5ejMjEb5Gjb9/PiBI5Ktrq4rUUF8UVQ=="], 133 - 134 - "@sveltejs/vite-plugin-svelte-inspector": ["@sveltejs/vite-plugin-svelte-inspector@5.0.1", "", { "dependencies": { "debug": "^4.4.1" }, "peerDependencies": { "@sveltejs/vite-plugin-svelte": "^6.0.0-next.0", "svelte": "^5.0.0", "vite": "^6.3.0 || ^7.0.0" } }, "sha512-ubWshlMk4bc8mkwWbg6vNvCeT7lGQojE3ijDh3QTR6Zr/R+GXxsGbyH4PExEPpiFmqPhYiVSVmHBjUcVc1JIrA=="], 135 - 136 - "@tsconfig/svelte": ["@tsconfig/svelte@5.0.6", "", {}, "sha512-yGxYL0I9eETH1/DR9qVJey4DAsCdeau4a9wYPKuXfEhm8lFO8wg+LLYJjIpAm6Fw7HSlhepPhYPDop75485yWQ=="], 137 - 138 - "@tybys/wasm-util": ["@tybys/wasm-util@0.10.1", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg=="], 139 - 140 - "@types/estree": ["@types/estree@1.0.8", "", {}, "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w=="], 141 - 142 - "@types/node": ["@types/node@24.10.1", "", { "dependencies": { "undici-types": "~7.16.0" } }, "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ=="], 143 - 144 - "acorn": ["acorn@8.15.0", "", { "bin": "bin/acorn" }, "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg=="], 145 - 146 - "aria-query": ["aria-query@5.3.2", "", {}, "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw=="], 147 - 148 - "axobject-query": ["axobject-query@4.1.0", "", {}, "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ=="], 149 - 150 - "chokidar": ["chokidar@4.0.3", "", { "dependencies": { "readdirp": "^4.0.1" } }, "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA=="], 151 - 152 - "clsx": ["clsx@2.1.1", "", {}, "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA=="], 153 - 154 - "debug": ["debug@4.4.3", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="], 155 - 156 - "deepmerge": ["deepmerge@4.3.1", "", {}, "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A=="], 157 - 158 - "detect-libc": ["detect-libc@2.1.2", "", {}, "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ=="], 159 - 160 - "devalue": ["devalue@5.5.0", "", {}, "sha512-69sM5yrHfFLJt0AZ9QqZXGCPfJ7fQjvpln3Rq5+PS03LD32Ost1Q9N+eEnaQwGRIriKkMImXD56ocjQmfjbV3w=="], 161 - 162 - "esm-env": ["esm-env@1.2.2", "", {}, "sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA=="], 163 - 164 - "esrap": ["esrap@2.2.0", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" } }, "sha512-WBmtxe7R9C5mvL4n2le8nMUe4mD5V9oiK2vJpQ9I3y20ENPUomPcphBXE8D1x/Bm84oN1V+lOfgXxtqmxTp3Xg=="], 165 - 166 - "fdir": ["fdir@6.5.0", "", { "peerDependencies": { "picomatch": "^3 || ^4" } }, "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg=="], 167 - 168 - "fsevents": ["fsevents@2.3.3", "", { "os": "darwin" }, "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw=="], 169 - 170 - "is-reference": ["is-reference@3.0.3", "", { "dependencies": { "@types/estree": "^1.0.6" } }, "sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw=="], 171 - 172 - "lightningcss": ["lightningcss@1.30.2", "", { "dependencies": { "detect-libc": "^2.0.3" }, "optionalDependencies": { "lightningcss-android-arm64": "1.30.2", "lightningcss-darwin-arm64": "1.30.2", "lightningcss-darwin-x64": "1.30.2", "lightningcss-freebsd-x64": "1.30.2", "lightningcss-linux-arm-gnueabihf": "1.30.2", "lightningcss-linux-arm64-gnu": "1.30.2", "lightningcss-linux-arm64-musl": "1.30.2", "lightningcss-linux-x64-gnu": "1.30.2", "lightningcss-linux-x64-musl": "1.30.2", "lightningcss-win32-arm64-msvc": "1.30.2", "lightningcss-win32-x64-msvc": "1.30.2" } }, "sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ=="], 173 - 174 - "lightningcss-android-arm64": ["lightningcss-android-arm64@1.30.2", "", { "os": "android", "cpu": "arm64" }, "sha512-BH9sEdOCahSgmkVhBLeU7Hc9DWeZ1Eb6wNS6Da8igvUwAe0sqROHddIlvU06q3WyXVEOYDZ6ykBZQnjTbmo4+A=="], 175 - 176 - "lightningcss-darwin-arm64": ["lightningcss-darwin-arm64@1.30.2", "", { "os": "darwin", "cpu": "arm64" }, "sha512-ylTcDJBN3Hp21TdhRT5zBOIi73P6/W0qwvlFEk22fkdXchtNTOU4Qc37SkzV+EKYxLouZ6M4LG9NfZ1qkhhBWA=="], 177 - 178 - "lightningcss-darwin-x64": ["lightningcss-darwin-x64@1.30.2", "", { "os": "darwin", "cpu": "x64" }, "sha512-oBZgKchomuDYxr7ilwLcyms6BCyLn0z8J0+ZZmfpjwg9fRVZIR5/GMXd7r9RH94iDhld3UmSjBM6nXWM2TfZTQ=="], 179 - 180 - "lightningcss-freebsd-x64": ["lightningcss-freebsd-x64@1.30.2", "", { "os": "freebsd", "cpu": "x64" }, "sha512-c2bH6xTrf4BDpK8MoGG4Bd6zAMZDAXS569UxCAGcA7IKbHNMlhGQ89eRmvpIUGfKWNVdbhSbkQaWhEoMGmGslA=="], 181 - 182 - "lightningcss-linux-arm-gnueabihf": ["lightningcss-linux-arm-gnueabihf@1.30.2", "", { "os": "linux", "cpu": "arm" }, "sha512-eVdpxh4wYcm0PofJIZVuYuLiqBIakQ9uFZmipf6LF/HRj5Bgm0eb3qL/mr1smyXIS1twwOxNWndd8z0E374hiA=="], 183 - 184 - "lightningcss-linux-arm64-gnu": ["lightningcss-linux-arm64-gnu@1.30.2", "", { "os": "linux", "cpu": "arm64" }, "sha512-UK65WJAbwIJbiBFXpxrbTNArtfuznvxAJw4Q2ZGlU8kPeDIWEX1dg3rn2veBVUylA2Ezg89ktszWbaQnxD/e3A=="], 185 - 186 - "lightningcss-linux-arm64-musl": ["lightningcss-linux-arm64-musl@1.30.2", "", { "os": "linux", "cpu": "arm64" }, "sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA=="], 187 - 188 - "lightningcss-linux-x64-gnu": ["lightningcss-linux-x64-gnu@1.30.2", "", { "os": "linux", "cpu": "x64" }, "sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w=="], 189 - 190 - "lightningcss-linux-x64-musl": ["lightningcss-linux-x64-musl@1.30.2", "", { "os": "linux", "cpu": "x64" }, "sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA=="], 191 - 192 - "lightningcss-win32-arm64-msvc": ["lightningcss-win32-arm64-msvc@1.30.2", "", { "os": "win32", "cpu": "arm64" }, "sha512-FZn+vaj7zLv//D/192WFFVA0RgHawIcHqLX9xuWiQt7P0PtdFEVaxgF9rjM/IRYHQXNnk61/H/gb2Ei+kUQ4xQ=="], 193 - 194 - "lightningcss-win32-x64-msvc": ["lightningcss-win32-x64-msvc@1.30.2", "", { "os": "win32", "cpu": "x64" }, "sha512-5g1yc73p+iAkid5phb4oVFMB45417DkRevRbt/El/gKXJk4jid+vPFF/AXbxn05Aky8PapwzZrdJShv5C0avjw=="], 195 - 196 - "locate-character": ["locate-character@3.0.0", "", {}, "sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA=="], 197 - 198 - "magic-string": ["magic-string@0.30.21", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.5" } }, "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ=="], 199 - 200 - "mri": ["mri@1.2.0", "", {}, "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA=="], 201 - 202 - "ms": ["ms@2.1.3", "", {}, "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="], 203 - 204 - "nanoid": ["nanoid@5.1.6", "", { "bin": { "nanoid": "bin/nanoid.js" } }, "sha512-c7+7RQ+dMB5dPwwCp4ee1/iV/q2P6aK1mTZcfr1BTuVlyW9hJYiMPybJCcnBlQtuSmTIWNeazm/zqNoZSSElBg=="], 205 - 206 - "picocolors": ["picocolors@1.1.1", "", {}, "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="], 207 - 208 - "picomatch": ["picomatch@4.0.3", "", {}, "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q=="], 209 - 210 - "postcss": ["postcss@8.5.6", "", { "dependencies": { "nanoid": "^3.3.11", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" } }, "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg=="], 211 - 212 - "prettier": ["prettier@3.7.1", "", { "bin": { "prettier": "bin/prettier.cjs" } }, "sha512-RWKXE4qB3u5Z6yz7omJkjWwmTfLdcbv44jUVHC5NpfXwFGzvpQM798FGv/6WNK879tc+Cn0AAyherCl1KjbyZQ=="], 213 - 214 - "readdirp": ["readdirp@4.1.2", "", {}, "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg=="], 215 - 216 - "rolldown": ["rolldown@1.0.0-beta.50", "", { "dependencies": { "@oxc-project/types": "=0.97.0", "@rolldown/pluginutils": "1.0.0-beta.50" }, "optionalDependencies": { "@rolldown/binding-android-arm64": "1.0.0-beta.50", "@rolldown/binding-darwin-arm64": "1.0.0-beta.50", "@rolldown/binding-darwin-x64": "1.0.0-beta.50", "@rolldown/binding-freebsd-x64": "1.0.0-beta.50", "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-beta.50", "@rolldown/binding-linux-arm64-gnu": "1.0.0-beta.50", "@rolldown/binding-linux-arm64-musl": "1.0.0-beta.50", "@rolldown/binding-linux-x64-gnu": "1.0.0-beta.50", "@rolldown/binding-linux-x64-musl": "1.0.0-beta.50", "@rolldown/binding-openharmony-arm64": "1.0.0-beta.50", "@rolldown/binding-wasm32-wasi": "1.0.0-beta.50", "@rolldown/binding-win32-arm64-msvc": "1.0.0-beta.50", "@rolldown/binding-win32-ia32-msvc": "1.0.0-beta.50", "@rolldown/binding-win32-x64-msvc": "1.0.0-beta.50" }, "bin": "bin/cli.mjs" }, "sha512-JFULvCNl/anKn99eKjOSEubi0lLmNqQDAjyEMME2T4CwezUDL0i6t1O9xZsu2OMehPnV2caNefWpGF+8TnzB6A=="], 217 - 218 - "sade": ["sade@1.8.1", "", { "dependencies": { "mri": "^1.1.0" } }, "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A=="], 219 - 220 - "source-map-js": ["source-map-js@1.2.1", "", {}, "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA=="], 221 - 222 - "svelte": ["svelte@5.45.2", "", { "dependencies": { "@jridgewell/remapping": "^2.3.4", "@jridgewell/sourcemap-codec": "^1.5.0", "@sveltejs/acorn-typescript": "^1.0.5", "@types/estree": "^1.0.5", "acorn": "^8.12.1", "aria-query": "^5.3.1", "axobject-query": "^4.1.0", "clsx": "^2.1.1", "devalue": "^5.5.0", "esm-env": "^1.2.1", "esrap": "^2.2.0", "is-reference": "^3.0.3", "locate-character": "^3.0.0", "magic-string": "^0.30.11", "zimmerframe": "^1.1.2" } }, "sha512-yyXdW2u3H0H/zxxWoGwJoQlRgaSJLp+Vhktv12iRw2WRDlKqUPT54Fi0K/PkXqrdkcQ98aBazpy0AH4BCBVfoA=="], 223 - 224 - "svelte-check": ["svelte-check@4.3.4", "", { "dependencies": { "@jridgewell/trace-mapping": "^0.3.25", "chokidar": "^4.0.1", "fdir": "^6.2.0", "picocolors": "^1.0.0", "sade": "^1.7.4" }, "peerDependencies": { "svelte": "^4.0.0 || ^5.0.0-next.0", "typescript": ">=5.0.0" }, "bin": "bin/svelte-check" }, "sha512-DVWvxhBrDsd+0hHWKfjP99lsSXASeOhHJYyuKOFYJcP7ThfSCKgjVarE8XfuMWpS5JV3AlDf+iK1YGGo2TACdw=="], 225 - 226 - "tinyglobby": ["tinyglobby@0.2.15", "", { "dependencies": { "fdir": "^6.5.0", "picomatch": "^4.0.3" } }, "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ=="], 227 - 228 - "tslib": ["tslib@2.8.1", "", {}, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], 229 - 230 - "typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw=="], 231 - 232 - "undici-types": ["undici-types@7.16.0", "", {}, "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw=="], 233 - 234 - "vite": ["rolldown-vite@7.2.5", "", { "dependencies": { "@oxc-project/runtime": "0.97.0", "fdir": "^6.5.0", "lightningcss": "^1.30.2", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rolldown": "1.0.0-beta.50", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "esbuild": "^0.25.0", "jiti": ">=1.21.0", "less": "^4.0.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["esbuild", "jiti", "less", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-u09tdk/huMiN8xwoiBbig197jKdCamQTtOruSalOzbqGje3jdHiV0njQlAW0YvzoahkirFePNQ4RYlfnRQpXZA=="], 235 - 236 - "vitefu": ["vitefu@1.1.1", "", { "peerDependencies": { "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0-beta.0" } }, "sha512-B/Fegf3i8zh0yFbpzZ21amWzHmuNlLlmJT6n7bu5e+pCHUKQIfXSYokrqOBGEMMe9UG2sostKQF9mml/vYaWJQ=="], 237 - 238 - "zimmerframe": ["zimmerframe@1.1.4", "", {}, "sha512-B58NGBEoc8Y9MWWCQGl/gq9xBCe4IiKM0a2x7GZdQKOW5Exr8S1W24J6OgM1njK8xCRGvAJIL/MxXHf6SkmQKQ=="], 239 - 240 - "@atcute/lexicon-resolver/@atcute/util-fetch": ["@atcute/util-fetch@1.0.4", "", { "dependencies": { "@badrap/valita": "^0.4.6" } }, "sha512-sIU9Qk0dE8PLEXSfhy+gIJV+HpiiknMytCI2SqLlqd0vgZUtEKI/EQfP+23LHWvP+CLCzVDOa6cpH045OlmNBg=="], 241 - 242 - "postcss/nanoid": ["nanoid@3.3.11", "", { "bin": "bin/nanoid.cjs" }, "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w=="], 243 - } 244 - }
+24
lexicons/com/yuna0x0/guestbook/sign.ts
··· 1 + import { 2 + document, 3 + object, 4 + record, 5 + required, 6 + string, 7 + } from "@atcute/lexicon-doc/builder"; 8 + 9 + export default document({ 10 + id: "com.yuna0x0.guestbook.sign", 11 + defs: { 12 + main: record({ 13 + key: "tid", 14 + description: "a sign in the guestbook", 15 + record: object({ 16 + properties: { 17 + subject: required(string({ format: "at-identifier" })), 18 + createdAt: required(string({ format: "datetime" })), 19 + message: required(string({ maxLength: 100 })), 20 + }, 21 + }), 22 + }), 23 + }, 24 + });
+1 -1
lexicons/pet/nkp/guestbook/sign.json lexicons/com/yuna0x0/guestbook/sign.json
··· 24 24 "type": "record" 25 25 } 26 26 }, 27 - "id": "pet.nkp.guestbook.sign", 27 + "id": "com.yuna0x0.guestbook.sign", 28 28 "lexicon": 1 29 29 }
-18
lexicons/pet/nkp/guestbook/sign.ts
··· 1 - import { document, object, record, required, string } from '@atcute/lexicon-doc/builder'; 2 - 3 - export default document({ 4 - id: 'pet.nkp.guestbook.sign', 5 - defs: { 6 - main: record({ 7 - key: 'tid', 8 - description: 'a sign in the guestbook', 9 - record: object({ 10 - properties: { 11 - subject: required(string({ format: 'at-identifier' })), 12 - createdAt: required(string({ format: 'datetime' })), 13 - message: required(string({ maxLength: 100 })), 14 - }, 15 - }), 16 - }), 17 - }, 18 - });
+258 -233
lib/guestbook-display.ts
··· 4 4 * represents a guestbook signature from constellation 5 5 */ 6 6 export interface GuestbookSignature { 7 - uri: string; 8 - cid: string; 9 - value: { 10 - $type: 'pet.nkp.guestbook.sign'; 11 - subject: string; // DID (at-identifier format) 12 - message: string; 13 - createdAt: string; 14 - }; 15 - author: string; 16 - authorHandle?: string; 7 + uri: string; 8 + cid: string; 9 + value: { 10 + $type: "com.yuna0x0.guestbook.sign"; 11 + subject: string; // DID (at-identifier format) 12 + message: string; 13 + createdAt: string; 14 + }; 15 + author: string; 16 + authorHandle?: string; 17 17 } 18 18 19 19 /** 20 20 * constellation API response for backlinks 21 21 */ 22 22 interface ConstellationBacklinksResponse { 23 - total: number; 24 - records: Array<{ 25 - did: string; 26 - collection: string; 27 - rkey: string; 28 - }>; 29 - cursor?: string; 23 + total: number; 24 + records: Array<{ 25 + did: string; 26 + collection: string; 27 + rkey: string; 28 + }>; 29 + cursor?: string; 30 30 } 31 31 32 32 /** 33 33 * Web component for displaying guestbook signatures. 34 - * 34 + * 35 35 * Usage: 36 - * <guestbook-display 36 + * <guestbook-display 37 37 * did="did:web:nekomimi.pet" 38 38 * limit="50"> 39 39 * </guestbook-display> 40 40 */ 41 41 export class GuestbookDisplayElement extends HTMLElement { 42 - private signatures: GuestbookSignature[] = []; 43 - private loading = false; 44 - private error: string | null = null; 42 + private signatures: GuestbookSignature[] = []; 43 + private loading = false; 44 + private error: string | null = null; 45 45 46 - static get observedAttributes() { 47 - return ['did', 'limit']; 48 - } 46 + static get observedAttributes() { 47 + return ["did", "limit"]; 48 + } 49 49 50 - constructor() { 51 - super(); 52 - this.attachShadow({ mode: 'open' }); 53 - } 50 + constructor() { 51 + super(); 52 + this.attachShadow({ mode: "open" }); 53 + } 54 54 55 - connectedCallback() { 56 - this.render(); 57 - this.fetchSignatures(); 58 - } 55 + connectedCallback() { 56 + this.render(); 57 + this.fetchSignatures(); 58 + } 59 59 60 - attributeChangedCallback(name: string, oldValue: string, newValue: string) { 61 - if (oldValue !== newValue && (name === 'did' || name === 'limit')) { 62 - this.fetchSignatures(); 63 - } 64 - } 60 + attributeChangedCallback(name: string, oldValue: string, newValue: string) { 61 + if (oldValue !== newValue && (name === "did" || name === "limit")) { 62 + this.fetchSignatures(); 63 + } 64 + } 65 65 66 - private render() { 67 - if (!this.shadowRoot) { 68 - return; 69 - } 66 + private render() { 67 + if (!this.shadowRoot) { 68 + return; 69 + } 70 70 71 - this.shadowRoot.innerHTML = ` 71 + this.shadowRoot.innerHTML = ` 72 72 <style> 73 73 * { 74 74 box-sizing: border-box; ··· 209 209 </div> 210 210 `; 211 211 212 - this.updateContent(); 213 - } 212 + this.updateContent(); 213 + } 214 214 215 - private updateContent() { 216 - const contentDiv = this.shadowRoot?.querySelector('#content'); 217 - if (!contentDiv) { 218 - return; 219 - } 215 + private updateContent() { 216 + const contentDiv = this.shadowRoot?.querySelector("#content"); 217 + if (!contentDiv) { 218 + return; 219 + } 220 220 221 - if (this.loading) { 222 - contentDiv.innerHTML = ` 221 + if (this.loading) { 222 + contentDiv.innerHTML = ` 223 223 <div class="loading"> 224 224 <div class="spinner"></div> 225 225 <p>Loading signatures...</p> 226 226 </div> 227 227 `; 228 - return; 229 - } 228 + return; 229 + } 230 230 231 - if (this.error) { 232 - contentDiv.innerHTML = ` 231 + if (this.error) { 232 + contentDiv.innerHTML = ` 233 233 <div class="error"> 234 234 <p><strong>Error:</strong> ${this.error}</p> 235 235 </div> 236 236 `; 237 - return; 238 - } 237 + return; 238 + } 239 239 240 - if (this.signatures.length === 0) { 241 - contentDiv.innerHTML = ` 240 + if (this.signatures.length === 0) { 241 + contentDiv.innerHTML = ` 242 242 <div class="empty"> 243 243 <div class="empty-icon">✍️</div> 244 244 <p>No signatures yet. Be the first to sign!</p> 245 245 </div> 246 246 `; 247 - return; 248 - } 247 + return; 248 + } 249 249 250 - // render signatures 251 - const signaturesHtml = this.signatures 252 - .map((sig) => this.renderSignature(sig)) 253 - .join(''); 250 + // render signatures 251 + const signaturesHtml = this.signatures 252 + .map((sig) => this.renderSignature(sig)) 253 + .join(""); 254 254 255 - contentDiv.innerHTML = ` 255 + contentDiv.innerHTML = ` 256 256 <div class="signature-count"> 257 - ${this.signatures.length} signature${this.signatures.length !== 1 ? 's' : ''} 257 + ${this.signatures.length} signature${this.signatures.length !== 1 ? "s" : ""} 258 258 </div> 259 259 <div class="signatures-list"> 260 260 ${signaturesHtml} 261 261 </div> 262 262 `; 263 - } 263 + } 264 264 265 - private renderSignature(sig: GuestbookSignature): string { 266 - const timestamp = this.formatTimestamp(sig.value.createdAt); 267 - const authorIdentifier = sig.authorHandle || sig.author; 268 - const authorLink = `https://bsky.app/profile/${sig.authorHandle || sig.author}`; 269 - const displayName = sig.authorHandle || this.shortenDid(sig.author); 265 + private renderSignature(sig: GuestbookSignature): string { 266 + const timestamp = this.formatTimestamp(sig.value.createdAt); 267 + const authorIdentifier = sig.authorHandle || sig.author; 268 + const authorLink = `https://bsky.app/profile/${sig.authorHandle || sig.author}`; 269 + const displayName = sig.authorHandle || this.shortenDid(sig.author); 270 270 271 - return ` 271 + return ` 272 272 <div class="signature-card"> 273 273 <div class="signature-header"> 274 274 <div class="author"> ··· 281 281 <div class="message">${this.escapeHtml(sig.value.message)}</div> 282 282 </div> 283 283 `; 284 - } 284 + } 285 285 286 - private async fetchSignatures() { 287 - const did = this.getAttribute('did'); 288 - if (!did) { 289 - this.error = 'Missing did attribute'; 290 - this.render(); 291 - return; 292 - } 286 + private async fetchSignatures() { 287 + const did = this.getAttribute("did"); 288 + if (!did) { 289 + this.error = "Missing did attribute"; 290 + this.render(); 291 + return; 292 + } 293 293 294 - // subject is just the DID (at-identifier format) 295 - const subject = did; 294 + // subject is just the DID (at-identifier format) 295 + const subject = did; 296 296 297 - const limit = parseInt(this.getAttribute('limit') || '50', 10); 297 + const limit = parseInt(this.getAttribute("limit") || "50", 10); 298 298 299 - this.loading = true; 300 - this.error = null; 301 - this.updateContent(); 299 + this.loading = true; 300 + this.error = null; 301 + this.updateContent(); 302 302 303 - try { 304 - // query constellation for backlinks 305 - // source format: collection:field.path 306 - // constellation is not in atproto schemas, so we use a direct fetch 307 - const url = new URL('/xrpc/blue.microcosm.links.getBacklinks', 'https://constellation.microcosm.blue'); 308 - url.searchParams.set('subject', subject); 309 - url.searchParams.set('source', 'pet.nkp.guestbook.sign:subject'); 310 - url.searchParams.set('limit', limit.toString()); 303 + try { 304 + // query constellation for backlinks 305 + // source format: collection:field.path 306 + // constellation is not in atproto schemas, so we use a direct fetch 307 + const url = new URL( 308 + "/xrpc/blue.microcosm.links.getBacklinks", 309 + "https://constellation.microcosm.blue", 310 + ); 311 + url.searchParams.set("subject", subject); 312 + url.searchParams.set("source", "com.yuna0x0.guestbook.sign:subject"); 313 + url.searchParams.set("limit", limit.toString()); 311 314 312 - const response = await fetch(url.toString()); 313 - if (!response.ok) { 314 - throw new Error('Failed to fetch signatures from Constellation'); 315 - } 315 + const response = await fetch(url.toString()); 316 + if (!response.ok) { 317 + throw new Error("Failed to fetch signatures from Constellation"); 318 + } 316 319 317 - const data: ConstellationBacklinksResponse = await response.json(); 320 + const data: ConstellationBacklinksResponse = await response.json(); 318 321 319 - console.log('Constellation response:', data); 322 + console.log("Constellation response:", data); 320 323 321 - // fetch actual records 322 - if (!data.records || !Array.isArray(data.records)) { 323 - console.warn('No records found in response'); 324 - this.signatures = []; 325 - } else { 326 - // Fetch all records in parallel 327 - const recordPromises = data.records.map(async (record) => { 328 - try { 329 - const recordUrl = new URL('/xrpc/com.atproto.repo.getRecord', 'https://slingshot.wisp.place'); 330 - recordUrl.searchParams.set('repo', record.did); 331 - recordUrl.searchParams.set('collection', record.collection); 332 - recordUrl.searchParams.set('rkey', record.rkey); 324 + // fetch actual records 325 + if (!data.records || !Array.isArray(data.records)) { 326 + console.warn("No records found in response"); 327 + this.signatures = []; 328 + } else { 329 + // Fetch all records in parallel 330 + const recordPromises = data.records.map(async (record) => { 331 + try { 332 + const recordUrl = new URL( 333 + "/xrpc/com.atproto.repo.getRecord", 334 + "https://slingshot.wisp.place", 335 + ); 336 + recordUrl.searchParams.set("repo", record.did); 337 + recordUrl.searchParams.set("collection", record.collection); 338 + recordUrl.searchParams.set("rkey", record.rkey); 333 339 334 - const recordResponse = await fetch(recordUrl.toString()); 335 - if (!recordResponse.ok) { 336 - console.warn(`Failed to fetch record ${record.did}/${record.collection}/${record.rkey}`); 337 - return null; 338 - } 340 + const recordResponse = await fetch(recordUrl.toString()); 341 + if (!recordResponse.ok) { 342 + console.warn( 343 + `Failed to fetch record ${record.did}/${record.collection}/${record.rkey}`, 344 + ); 345 + return null; 346 + } 339 347 340 - const recordData = await recordResponse.json(); 348 + const recordData = await recordResponse.json(); 341 349 342 - // validate the record 343 - if ( 344 - recordData.value && 345 - recordData.value.$type === 'pet.nkp.guestbook.sign' && 346 - typeof recordData.value.message === 'string' && 347 - typeof recordData.value.createdAt === 'string' 348 - ) { 349 - return { 350 - uri: recordData.uri, 351 - cid: recordData.cid, 352 - value: recordData.value, 353 - author: record.did, 354 - authorHandle: undefined, 355 - } as GuestbookSignature; 356 - } 357 - } catch (err) { 358 - console.warn(`Error fetching record ${record.did}/${record.collection}/${record.rkey}:`, err); 359 - } 360 - return null; 361 - }); 350 + // validate the record 351 + if ( 352 + recordData.value && 353 + recordData.value.$type === "com.yuna0x0.guestbook.sign" && 354 + typeof recordData.value.message === "string" && 355 + typeof recordData.value.createdAt === "string" 356 + ) { 357 + return { 358 + uri: recordData.uri, 359 + cid: recordData.cid, 360 + value: recordData.value, 361 + author: record.did, 362 + authorHandle: undefined, 363 + } as GuestbookSignature; 364 + } 365 + } catch (err) { 366 + console.warn( 367 + `Error fetching record ${record.did}/${record.collection}/${record.rkey}:`, 368 + err, 369 + ); 370 + } 371 + return null; 372 + }); 362 373 363 - const results = await Promise.all(recordPromises); 364 - const validSignatures = results.filter((sig): sig is GuestbookSignature => sig !== null); 374 + const results = await Promise.all(recordPromises); 375 + const validSignatures = results.filter( 376 + (sig): sig is GuestbookSignature => sig !== null, 377 + ); 365 378 366 - // Sort once after collecting all signatures 367 - validSignatures.sort((a, b) => { 368 - return new Date(b.value.createdAt).getTime() - new Date(a.value.createdAt).getTime(); 369 - }); 379 + // Sort once after collecting all signatures 380 + validSignatures.sort((a, b) => { 381 + return ( 382 + new Date(b.value.createdAt).getTime() - 383 + new Date(a.value.createdAt).getTime() 384 + ); 385 + }); 370 386 371 - this.signatures = validSignatures; 372 - this.loading = false; 373 - this.updateContent(); 387 + this.signatures = validSignatures; 388 + this.loading = false; 389 + this.updateContent(); 374 390 375 - // Batch fetch profiles asynchronously 376 - if (validSignatures.length > 0) { 377 - const uniqueDids = Array.from(new Set(validSignatures.map(sig => sig.author))); 391 + // Batch fetch profiles asynchronously 392 + if (validSignatures.length > 0) { 393 + const uniqueDids = Array.from( 394 + new Set(validSignatures.map((sig) => sig.author)), 395 + ); 378 396 379 - // Batch fetch profiles up to 25 at a time (API limit) 380 - const profilePromises = []; 381 - for (let i = 0; i < uniqueDids.length; i += 25) { 382 - const batch = uniqueDids.slice(i, i + 25); 397 + // Batch fetch profiles up to 25 at a time (API limit) 398 + const profilePromises = []; 399 + for (let i = 0; i < uniqueDids.length; i += 25) { 400 + const batch = uniqueDids.slice(i, i + 25); 383 401 384 - const profileUrl = new URL('/xrpc/app.bsky.actor.getProfiles', 'https://public.api.bsky.app'); 385 - batch.forEach(d => profileUrl.searchParams.append('actors', d)); 402 + const profileUrl = new URL( 403 + "/xrpc/app.bsky.actor.getProfiles", 404 + "https://public.api.bsky.app", 405 + ); 406 + batch.forEach((d) => profileUrl.searchParams.append("actors", d)); 386 407 387 - profilePromises.push( 388 - fetch(profileUrl.toString()) 389 - .then(profileResponse => profileResponse.ok ? profileResponse.json() : null) 390 - .then(profilesData => { 391 - if (profilesData?.profiles && Array.isArray(profilesData.profiles)) { 392 - const handles = new Map<string, string>(); 393 - profilesData.profiles.forEach((profile: any) => { 394 - if (profile.handle) { 395 - handles.set(profile.did, profile.handle); 396 - } 397 - }); 398 - return handles; 399 - } 400 - return new Map<string, string>(); 401 - }) 402 - .catch((err) => { 403 - console.warn('Failed to fetch profile batch:', err); 404 - return new Map<string, string>(); 405 - }) 406 - ); 407 - } 408 + profilePromises.push( 409 + fetch(profileUrl.toString()) 410 + .then((profileResponse) => 411 + profileResponse.ok ? profileResponse.json() : null, 412 + ) 413 + .then((profilesData) => { 414 + if ( 415 + profilesData?.profiles && 416 + Array.isArray(profilesData.profiles) 417 + ) { 418 + const handles = new Map<string, string>(); 419 + profilesData.profiles.forEach((profile: any) => { 420 + if (profile.handle) { 421 + handles.set(profile.did, profile.handle); 422 + } 423 + }); 424 + return handles; 425 + } 426 + return new Map<string, string>(); 427 + }) 428 + .catch((err) => { 429 + console.warn("Failed to fetch profile batch:", err); 430 + return new Map<string, string>(); 431 + }), 432 + ); 433 + } 408 434 409 - // Wait for all profile batches, then update once 410 - const handleMaps = await Promise.all(profilePromises); 411 - const allHandles = new Map<string, string>(); 412 - handleMaps.forEach(map => { 413 - map.forEach((handle, did) => allHandles.set(did, handle)); 414 - }); 435 + // Wait for all profile batches, then update once 436 + const handleMaps = await Promise.all(profilePromises); 437 + const allHandles = new Map<string, string>(); 438 + handleMaps.forEach((map) => { 439 + map.forEach((handle, did) => allHandles.set(did, handle)); 440 + }); 415 441 416 - if (allHandles.size > 0) { 417 - this.signatures = this.signatures.map(sig => { 418 - const handle = allHandles.get(sig.author); 419 - return handle ? { ...sig, authorHandle: handle } : sig; 420 - }); 421 - this.updateContent(); 422 - } 423 - } 424 - } 425 - 426 - } catch (error) { 427 - console.error('Error fetching signatures:', error); 428 - this.error = error instanceof Error ? error.message : 'Unknown error occurred'; 429 - this.loading = false; 430 - this.updateContent(); 431 - } 432 - } 442 + if (allHandles.size > 0) { 443 + this.signatures = this.signatures.map((sig) => { 444 + const handle = allHandles.get(sig.author); 445 + return handle ? { ...sig, authorHandle: handle } : sig; 446 + }); 447 + this.updateContent(); 448 + } 449 + } 450 + } 451 + } catch (error) { 452 + console.error("Error fetching signatures:", error); 453 + this.error = 454 + error instanceof Error ? error.message : "Unknown error occurred"; 455 + this.loading = false; 456 + this.updateContent(); 457 + } 458 + } 433 459 434 - private formatTimestamp(isoString: string): string { 435 - const date = new Date(isoString); 436 - // Format as "Nov 24, 2024" 437 - return date.toLocaleDateString('en-US', { 438 - month: 'short', 439 - day: 'numeric', 440 - year: 'numeric', 441 - }); 442 - } 460 + private formatTimestamp(isoString: string): string { 461 + const date = new Date(isoString); 462 + // Format as "Nov 24, 2024" 463 + return date.toLocaleDateString("en-US", { 464 + month: "short", 465 + day: "numeric", 466 + year: "numeric", 467 + }); 468 + } 443 469 444 - private shortenDid(did: string): string { 445 - if (did.startsWith('did:')) { 446 - const afterPrefix = did.indexOf(':', 4); 447 - if (afterPrefix !== -1) { 448 - return `${did.slice(0, afterPrefix + 9)}...`; 449 - } 450 - } 451 - return did; 452 - } 470 + private shortenDid(did: string): string { 471 + if (did.startsWith("did:")) { 472 + const afterPrefix = did.indexOf(":", 4); 473 + if (afterPrefix !== -1) { 474 + return `${did.slice(0, afterPrefix + 9)}...`; 475 + } 476 + } 477 + return did; 478 + } 453 479 454 - private escapeHtml(text: string): string { 455 - const div = document.createElement('div'); 456 - div.textContent = text; 457 - return div.innerHTML; 458 - } 480 + private escapeHtml(text: string): string { 481 + const div = document.createElement("div"); 482 + div.textContent = text; 483 + return div.innerHTML; 484 + } 459 485 460 - /** 461 - * refresh signatures from the API 462 - */ 463 - refresh() { 464 - this.fetchSignatures(); 465 - } 486 + /** 487 + * refresh signatures from the API 488 + */ 489 + refresh() { 490 + this.fetchSignatures(); 491 + } 466 492 } 467 -
+286 -275
lib/guestbook-sign.ts
··· 1 - import { Client } from '@atcute/client'; 2 - import type {} from '@atcute/atproto'; 1 + import { Client } from "@atcute/client"; 2 + import type {} from "@atcute/atproto"; 3 3 import { 4 - createAuthorizationUrl, 5 - finalizeAuthorization, 6 - OAuthUserAgent, 7 - } from '@atcute/oauth-browser-client'; 8 - import { getConfig } from './config'; 4 + createAuthorizationUrl, 5 + finalizeAuthorization, 6 + OAuthUserAgent, 7 + } from "@atcute/oauth-browser-client"; 8 + import { getConfig } from "./config"; 9 9 10 10 // Actor typeahead web component 11 - import 'actor-typeahead'; 11 + import "actor-typeahead"; 12 12 13 13 // Global agent instance 14 14 let globalAgent: OAuthUserAgent | null = null; 15 15 16 16 // Helper function to wait 17 - const sleep = (ms: number) => new Promise(resolve => setTimeout(resolve, ms)); 17 + const sleep = (ms: number) => new Promise((resolve) => setTimeout(resolve, ms)); 18 18 19 19 /** 20 20 * Web component for signing the guestbook. 21 - * 21 + * 22 22 * Usage: 23 23 * <guestbook-sign did="did:web:nekomimi.pet"></guestbook-sign> 24 24 */ 25 25 export class GuestbookSignElement extends HTMLElement { 26 - private form: HTMLFormElement | null = null; 27 - private messageInput: HTMLTextAreaElement | null = null; 28 - private submitButton: HTMLButtonElement | null = null; 29 - private statusDiv: HTMLDivElement | null = null; 30 - private loginInput: HTMLInputElement | null = null; 31 - private loginButton: HTMLButtonElement | null = null; 32 - private userHandle: string | null = null; 26 + private form: HTMLFormElement | null = null; 27 + private messageInput: HTMLTextAreaElement | null = null; 28 + private submitButton: HTMLButtonElement | null = null; 29 + private statusDiv: HTMLDivElement | null = null; 30 + private loginInput: HTMLInputElement | null = null; 31 + private loginButton: HTMLButtonElement | null = null; 32 + private userHandle: string | null = null; 33 + 34 + static get observedAttributes() { 35 + return ["did"]; 36 + } 37 + 38 + constructor() { 39 + super(); 40 + this.attachShadow({ mode: "open" }); 41 + } 42 + 43 + async connectedCallback() { 44 + await this.initializeAuth(); 45 + if (globalAgent) { 46 + await this.fetchUserHandle(); 47 + } 48 + this.render(); 49 + this.attachEventListeners(); 50 + } 51 + 52 + private async fetchUserHandle() { 53 + if (!globalAgent) return; 54 + 55 + try { 56 + const response = await fetch( 57 + `https://public.api.bsky.app/xrpc/app.bsky.actor.getProfile?actor=${globalAgent.session.info.sub}`, 58 + ); 59 + if (response.ok) { 60 + const data = await response.json(); 61 + this.userHandle = data.handle || null; 62 + } 63 + } catch (error) { 64 + console.error("Failed to fetch user handle:", error); 65 + } 66 + } 33 67 34 - static get observedAttributes() { 35 - return ['did']; 36 - } 68 + private async initializeAuth() { 69 + // Check if we have OAuth parameters in the hash (returning from OAuth) 70 + if (location.hash.length > 1) { 71 + const params = new URLSearchParams(location.hash.slice(1)); 37 72 38 - constructor() { 39 - super(); 40 - this.attachShadow({ mode: 'open' }); 41 - } 73 + if (params.has("state") && (params.has("code") || params.has("error"))) { 74 + try { 75 + // Scrub the parameters from history to prevent replay 76 + history.replaceState(null, "", location.pathname + location.search); 42 77 43 - async connectedCallback() { 44 - await this.initializeAuth(); 45 - if (globalAgent) { 46 - await this.fetchUserHandle(); 47 - } 48 - this.render(); 49 - this.attachEventListeners(); 50 - } 78 + // Finalize the authorization and get the result 79 + const result = await finalizeAuthorization(params); 51 80 52 - private async fetchUserHandle() { 53 - if (!globalAgent) return; 54 - 55 - try { 56 - const response = await fetch( 57 - `https://public.api.bsky.app/xrpc/app.bsky.actor.getProfile?actor=${globalAgent.session.info.sub}` 58 - ); 59 - if (response.ok) { 60 - const data = await response.json(); 61 - this.userHandle = data.handle || null; 62 - } 63 - } catch (error) { 64 - console.error('Failed to fetch user handle:', error); 65 - } 66 - } 81 + // Create the OAuth user agent with the session 82 + globalAgent = new OAuthUserAgent(result.session); 67 83 68 - private async initializeAuth() { 69 - // Check if we have OAuth parameters in the hash (returning from OAuth) 70 - if (location.hash.length > 1) { 71 - const params = new URLSearchParams(location.hash.slice(1)); 72 - 73 - if (params.has('state') && (params.has('code') || params.has('error'))) { 74 - try { 75 - // Scrub the parameters from history to prevent replay 76 - history.replaceState(null, '', location.pathname + location.search); 77 - 78 - // Finalize the authorization and get the result 79 - const result = await finalizeAuthorization(params); 80 - 81 - // Create the OAuth user agent with the session 82 - globalAgent = new OAuthUserAgent(result.session); 83 - 84 - console.log('Authorization successful! Logged in as:', result.session.info.sub); 85 - 86 - } catch (error) { 87 - console.error('Failed to finalize authorization:', error); 88 - alert('Login failed. Please try again.'); 89 - } 90 - } 91 - } 92 - } 84 + console.log( 85 + "Authorization successful! Logged in as:", 86 + result.session.info.sub, 87 + ); 88 + } catch (error) { 89 + console.error("Failed to finalize authorization:", error); 90 + alert("Login failed. Please try again."); 91 + } 92 + } 93 + } 94 + } 93 95 94 - private render() { 95 - if (!this.shadowRoot) { 96 - return; 97 - } 96 + private render() { 97 + if (!this.shadowRoot) { 98 + return; 99 + } 98 100 99 - const isLoggedIn = globalAgent !== null; 101 + const isLoggedIn = globalAgent !== null; 100 102 101 - this.shadowRoot.innerHTML = ` 103 + this.shadowRoot.innerHTML = ` 102 104 <style> 103 105 * { 104 106 box-sizing: border-box; ··· 229 231 </style> 230 232 231 233 <div class="guestbook-sign"> 232 - ${!isLoggedIn ? ` 234 + ${ 235 + !isLoggedIn 236 + ? ` 233 237 <form id="login-form"> 234 238 <div class="form-group"> 235 239 <label for="handle">AT Proto Handle</label> 236 240 <actor-typeahead> 237 - <input 238 - type="text" 239 - id="handle" 241 + <input 242 + type="text" 243 + id="handle" 240 244 name="handle" 241 245 placeholder="user.bsky.social" 242 246 autocomplete="off" ··· 249 253 <button type="submit" id="login-btn">Sign in to Continue</button> 250 254 <div class="status" id="status"></div> 251 255 </form> 252 - ` : ` 256 + ` 257 + : ` 253 258 <form id="sign-form"> 254 259 <div class="form-group"> 255 260 <label for="name">Name</label> 256 - <input 257 - type="text" 258 - id="name" 261 + <input 262 + type="text" 263 + id="name" 259 264 name="name" 260 265 placeholder="Your name" 261 - value="${this.userHandle || globalAgent?.session.info.sub || ''}" 266 + value="${this.userHandle || globalAgent?.session.info.sub || ""}" 262 267 readonly 263 268 /> 264 269 </div> 265 270 <div class="form-group"> 266 271 <label for="message">Message</label> 267 - <textarea 268 - id="message" 269 - name="message" 272 + <textarea 273 + id="message" 274 + name="message" 270 275 placeholder="Share your thoughts..." 271 276 maxlength="100" 272 277 required ··· 275 280 <button type="submit" id="submit-btn">Sign Guestbook</button> 276 281 <div class="status" id="status"></div> 277 282 </form> 278 - `} 283 + ` 284 + } 279 285 </div> 280 286 `; 281 287 282 - if (isLoggedIn) { 283 - this.form = this.shadowRoot.querySelector('#sign-form'); 284 - this.messageInput = this.shadowRoot.querySelector('#message'); 285 - this.submitButton = this.shadowRoot.querySelector('#submit-btn'); 286 - } else { 287 - this.form = this.shadowRoot.querySelector('#login-form'); 288 - this.loginInput = this.shadowRoot.querySelector('#handle'); 289 - this.loginButton = this.shadowRoot.querySelector('#login-btn'); 290 - } 291 - 292 - this.statusDiv = this.shadowRoot.querySelector('#status'); 293 - } 288 + if (isLoggedIn) { 289 + this.form = this.shadowRoot.querySelector("#sign-form"); 290 + this.messageInput = this.shadowRoot.querySelector("#message"); 291 + this.submitButton = this.shadowRoot.querySelector("#submit-btn"); 292 + } else { 293 + this.form = this.shadowRoot.querySelector("#login-form"); 294 + this.loginInput = this.shadowRoot.querySelector("#handle"); 295 + this.loginButton = this.shadowRoot.querySelector("#login-btn"); 296 + } 294 297 295 - private attachEventListeners() { 296 - if (!this.form) { 297 - return; 298 - } 298 + this.statusDiv = this.shadowRoot.querySelector("#status"); 299 + } 299 300 300 - const isLoggedIn = globalAgent !== null; 301 + private attachEventListeners() { 302 + if (!this.form) { 303 + return; 304 + } 301 305 302 - if (isLoggedIn && this.messageInput) { 303 - // character counter 304 - this.messageInput.addEventListener('input', () => { 305 - this.updateCharCount(); 306 - }); 306 + const isLoggedIn = globalAgent !== null; 307 + 308 + if (isLoggedIn && this.messageInput) { 309 + // character counter 310 + this.messageInput.addEventListener("input", () => { 311 + this.updateCharCount(); 312 + }); 313 + 314 + // form submission for signing 315 + this.form.addEventListener("submit", (e) => { 316 + e.preventDefault(); 317 + this.handleSubmit(); 318 + }); 319 + } else { 320 + // form submission for login 321 + this.form.addEventListener("submit", (e) => { 322 + e.preventDefault(); 323 + this.handleLogin(); 324 + }); 325 + } 326 + } 307 327 308 - // form submission for signing 309 - this.form.addEventListener('submit', (e) => { 310 - e.preventDefault(); 311 - this.handleSubmit(); 312 - }); 313 - } else { 314 - // form submission for login 315 - this.form.addEventListener('submit', (e) => { 316 - e.preventDefault(); 317 - this.handleLogin(); 318 - }); 319 - } 320 - } 328 + private updateCharCount() { 329 + if (!this.messageInput || !this.shadowRoot) { 330 + return; 331 + } 332 + 333 + const length = this.messageInput.value.length; 334 + const charCountEl = this.shadowRoot.querySelector("#char-count"); 335 + 336 + if (charCountEl) { 337 + charCountEl.textContent = `${length} / 100`; 338 + charCountEl.classList.remove("warning", "error"); 339 + 340 + if (length > 90) { 341 + charCountEl.classList.add("error"); 342 + } else if (length > 80) { 343 + charCountEl.classList.add("warning"); 344 + } 345 + } 346 + } 347 + 348 + private async handleLogin() { 349 + const handle = this.loginInput?.value.trim(); 350 + 351 + if (!handle) { 352 + this.showStatus("Please enter your Bluesky handle.", "error"); 353 + return; 354 + } 355 + 356 + try { 357 + this.showStatus("Redirecting to sign in...", "loading"); 358 + this.setFormDisabled(true); 359 + 360 + const config = getConfig(); 361 + if (!config) { 362 + throw new Error( 363 + "Guestbook not configured. Call configureGuestbook() first.", 364 + ); 365 + } 321 366 322 - private updateCharCount() { 323 - if (!this.messageInput || !this.shadowRoot) { 324 - return; 325 - } 367 + const authUrl = await createAuthorizationUrl({ 368 + target: { 369 + type: "account", 370 + identifier: handle as `${string}.${string}`, 371 + }, 372 + scope: config.oauth.scope, 373 + }); 326 374 327 - const length = this.messageInput.value.length; 328 - const charCountEl = this.shadowRoot.querySelector('#char-count'); 329 - 330 - if (charCountEl) { 331 - charCountEl.textContent = `${length} / 100`; 332 - charCountEl.classList.remove('warning', 'error'); 333 - 334 - if (length > 90) { 335 - charCountEl.classList.add('error'); 336 - } else if (length > 80) { 337 - charCountEl.classList.add('warning'); 338 - } 339 - } 340 - } 375 + // recommended to wait for the browser to persist local storage before proceeding 376 + await sleep(250); 341 377 342 - private async handleLogin() { 343 - const handle = this.loginInput?.value.trim(); 344 - 345 - if (!handle) { 346 - this.showStatus('Please enter your Bluesky handle.', 'error'); 347 - return; 348 - } 378 + // redirect the user to sign in and authorize the app 379 + window.location.assign(authUrl); 380 + } catch (error) { 381 + console.error("Login error:", error); 382 + this.showStatus("Login failed. Please try again.", "error"); 383 + this.setFormDisabled(false); 384 + } 385 + } 349 386 350 - try { 351 - this.showStatus('Redirecting to sign in...', 'loading'); 352 - this.setFormDisabled(true); 353 - 354 - const config = getConfig(); 355 - if (!config) { 356 - throw new Error('Guestbook not configured. Call configureGuestbook() first.'); 357 - } 358 - 359 - const authUrl = await createAuthorizationUrl({ 360 - target: { type: 'account', identifier: handle as `${string}.${string}` }, 361 - scope: config.oauth.scope, 362 - }); 363 - 364 - // recommended to wait for the browser to persist local storage before proceeding 365 - await sleep(250); 366 - 367 - // redirect the user to sign in and authorize the app 368 - window.location.assign(authUrl); 369 - 370 - } catch (error) { 371 - console.error('Login error:', error); 372 - this.showStatus('Login failed. Please try again.', 'error'); 373 - this.setFormDisabled(false); 374 - } 375 - } 387 + private async handleSubmit() { 388 + if (!globalAgent) { 389 + this.showStatus("Please log in first.", "error"); 390 + return; 391 + } 376 392 377 - private async handleSubmit() { 378 - if (!globalAgent) { 379 - this.showStatus('Please log in first.', 'error'); 380 - return; 381 - } 393 + const did = this.getAttribute("did"); 394 + if (!did) { 395 + this.showStatus("Missing guestbook DID.", "error"); 396 + return; 397 + } 382 398 383 - const did = this.getAttribute('did'); 384 - if (!did) { 385 - this.showStatus('Missing guestbook DID.', 'error'); 386 - return; 387 - } 399 + // subject is just the DID (at-identifier format) 400 + const subject = did; 388 401 389 - // subject is just the DID (at-identifier format) 390 - const subject = did; 402 + const message = this.messageInput?.value.trim(); 403 + if (!message) { 404 + this.showStatus("Please enter a message.", "error"); 405 + return; 406 + } 391 407 392 - const message = this.messageInput?.value.trim(); 393 - if (!message) { 394 - this.showStatus('Please enter a message.', 'error'); 395 - return; 396 - } 408 + try { 409 + this.showStatus("Signing guestbook...", "loading"); 410 + this.setFormDisabled(true); 397 411 398 - try { 399 - this.showStatus('Signing guestbook...', 'loading'); 400 - this.setFormDisabled(true); 412 + // get the client from the OAuth agent 413 + const client = new Client({ handler: globalAgent }); 401 414 402 - // get the client from the OAuth agent 403 - const client = new Client({ handler: globalAgent }); 415 + // create the record 416 + const record = { 417 + $type: "com.yuna0x0.guestbook.sign", 418 + subject: subject, 419 + message: message, 420 + createdAt: new Date().toISOString(), 421 + }; 404 422 405 - // create the record 406 - const record = { 407 - $type: 'pet.nkp.guestbook.sign', 408 - subject: subject, 409 - message: message, 410 - createdAt: new Date().toISOString(), 411 - }; 423 + const response = await client.post("com.atproto.repo.createRecord", { 424 + input: { 425 + repo: globalAgent.session.info.sub, // user's DID 426 + collection: "com.yuna0x0.guestbook.sign", 427 + record: record, 428 + }, 429 + }); 412 430 413 - const response = await client.post('com.atproto.repo.createRecord', { 414 - input: { 415 - repo: globalAgent.session.info.sub, // user's DID 416 - collection: 'pet.nkp.guestbook.sign', 417 - record: record, 418 - }, 419 - }); 431 + if (response.ok) { 432 + this.showStatus("✓ Successfully signed the guestbook!", "success"); 420 433 421 - if (response.ok) { 422 - this.showStatus('✓ Successfully signed the guestbook!', 'success'); 423 - 424 - // clear the form 425 - if (this.messageInput) { 426 - this.messageInput.value = ''; 427 - } 428 - this.updateCharCount(); 434 + // clear the form 435 + if (this.messageInput) { 436 + this.messageInput.value = ""; 437 + } 438 + this.updateCharCount(); 429 439 430 - // dispatch custom event for parent to listen to 431 - this.dispatchEvent(new CustomEvent('sign-created', { 432 - detail: { 433 - uri: response.data.uri, 434 - cid: response.data.cid, 435 - }, 436 - bubbles: true, 437 - composed: true, 438 - })); 440 + // dispatch custom event for parent to listen to 441 + this.dispatchEvent( 442 + new CustomEvent("sign-created", { 443 + detail: { 444 + uri: response.data.uri, 445 + cid: response.data.cid, 446 + }, 447 + bubbles: true, 448 + composed: true, 449 + }), 450 + ); 439 451 440 - // hide success message after 3 seconds 441 - setTimeout(() => { 442 - this.hideStatus(); 443 - }, 3000); 444 - } else { 445 - throw new Error('Failed to create record'); 446 - } 447 - } catch (error) { 448 - console.error('Error signing guestbook:', error); 449 - this.showStatus( 450 - `Failed to sign: ${error instanceof Error ? error.message : 'Unknown error'}`, 451 - 'error' 452 - ); 453 - } finally { 454 - this.setFormDisabled(false); 455 - } 456 - } 452 + // hide success message after 3 seconds 453 + setTimeout(() => { 454 + this.hideStatus(); 455 + }, 3000); 456 + } else { 457 + throw new Error("Failed to create record"); 458 + } 459 + } catch (error) { 460 + console.error("Error signing guestbook:", error); 461 + this.showStatus( 462 + `Failed to sign: ${error instanceof Error ? error.message : "Unknown error"}`, 463 + "error", 464 + ); 465 + } finally { 466 + this.setFormDisabled(false); 467 + } 468 + } 457 469 458 - private showStatus(message: string, type: 'success' | 'error' | 'loading') { 459 - if (!this.statusDiv) { 460 - return; 461 - } 470 + private showStatus(message: string, type: "success" | "error" | "loading") { 471 + if (!this.statusDiv) { 472 + return; 473 + } 462 474 463 - this.statusDiv.textContent = message; 464 - this.statusDiv.className = `status show ${type}`; 465 - } 475 + this.statusDiv.textContent = message; 476 + this.statusDiv.className = `status show ${type}`; 477 + } 466 478 467 - private hideStatus() { 468 - if (!this.statusDiv) { 469 - return; 470 - } 479 + private hideStatus() { 480 + if (!this.statusDiv) { 481 + return; 482 + } 471 483 472 - this.statusDiv.classList.remove('show'); 473 - } 484 + this.statusDiv.classList.remove("show"); 485 + } 474 486 475 - private setFormDisabled(disabled: boolean) { 476 - if (this.messageInput) { 477 - this.messageInput.disabled = disabled; 478 - } 479 - if (this.submitButton) { 480 - this.submitButton.disabled = disabled; 481 - } 482 - if (this.loginInput) { 483 - this.loginInput.disabled = disabled; 484 - } 485 - if (this.loginButton) { 486 - this.loginButton.disabled = disabled; 487 - } 488 - } 487 + private setFormDisabled(disabled: boolean) { 488 + if (this.messageInput) { 489 + this.messageInput.disabled = disabled; 490 + } 491 + if (this.submitButton) { 492 + this.submitButton.disabled = disabled; 493 + } 494 + if (this.loginInput) { 495 + this.loginInput.disabled = disabled; 496 + } 497 + if (this.loginButton) { 498 + this.loginButton.disabled = disabled; 499 + } 500 + } 489 501 } 490 -
-2627
package-lock.json
··· 1 - { 2 - "name": "@aspect/guestbook", 3 - "version": "0.1.0", 4 - "lockfileVersion": 3, 5 - "requires": true, 6 - "packages": { 7 - "": { 8 - "name": "@aspect/guestbook", 9 - "version": "0.1.0", 10 - "dependencies": { 11 - "actor-typeahead": "^0.1.2" 12 - }, 13 - "devDependencies": { 14 - "@atcute/atproto": "^3.1.9", 15 - "@atcute/client": "^4.1.0", 16 - "@atcute/identity-resolver": "^1.1.4", 17 - "@atcute/lex-cli": "^2.5.0", 18 - "@atcute/lexicon-doc": "^2.0.4", 19 - "@atcute/oauth-browser-client": "^2.0.1", 20 - "@sveltejs/vite-plugin-svelte": "^6.2.1", 21 - "@tsconfig/svelte": "^5.0.6", 22 - "@types/node": "^24.10.1", 23 - "svelte": "^5.43.8", 24 - "svelte-check": "^4.3.4", 25 - "typescript": "~5.9.3", 26 - "vite": "npm:rolldown-vite@7.2.5", 27 - "vite-plugin-dts": "^4.5.4" 28 - }, 29 - "peerDependencies": { 30 - "@atcute/client": "^4.0.0", 31 - "@atcute/identity-resolver": "^1.0.0", 32 - "@atcute/oauth-browser-client": "^2.0.0" 33 - } 34 - }, 35 - "node_modules/@atcute/atproto": { 36 - "version": "3.1.9", 37 - "resolved": "https://registry.npmjs.org/@atcute/atproto/-/atproto-3.1.9.tgz", 38 - "integrity": "sha512-DyWwHCTdR4hY2BPNbLXgVmm7lI+fceOwWbE4LXbGvbvVtSn+ejSVFaAv01Ra3kWDha0whsOmbJL8JP0QPpf1+w==", 39 - "dev": true, 40 - "license": "0BSD", 41 - "dependencies": { 42 - "@atcute/lexicons": "^1.2.2" 43 - } 44 - }, 45 - "node_modules/@atcute/car": { 46 - "version": "5.0.0", 47 - "resolved": "https://registry.npmjs.org/@atcute/car/-/car-5.0.0.tgz", 48 - "integrity": "sha512-OIY2xTXv8lSpZsDSn/UYQtJSMvDw5Hi4Q+uyvmiqSM+fht08QRAEq/nxa5YFciPZ3nfDFnZ3//EgJw7QhkSXLQ==", 49 - "dev": true, 50 - "license": "0BSD", 51 - "dependencies": { 52 - "@atcute/cbor": "^2.2.7", 53 - "@atcute/cid": "^2.2.6", 54 - "@atcute/uint8array": "^1.0.5", 55 - "@atcute/varint": "^1.0.3" 56 - } 57 - }, 58 - "node_modules/@atcute/cbor": { 59 - "version": "2.2.8", 60 - "resolved": "https://registry.npmjs.org/@atcute/cbor/-/cbor-2.2.8.tgz", 61 - "integrity": "sha512-UzOAN9BuN6JCXgn0ryV8qZuRJUDrNqrbLd6EFM8jc6RYssjRyGRxNy6RZ1NU/07Hd8Tq/0pz8+nQiMu5Zai5uw==", 62 - "dev": true, 63 - "license": "0BSD", 64 - "dependencies": { 65 - "@atcute/cid": "^2.2.6", 66 - "@atcute/multibase": "^1.1.6", 67 - "@atcute/uint8array": "^1.0.5" 68 - } 69 - }, 70 - "node_modules/@atcute/cid": { 71 - "version": "2.2.6", 72 - "resolved": "https://registry.npmjs.org/@atcute/cid/-/cid-2.2.6.tgz", 73 - "integrity": "sha512-bTAHHbJ24p+E//V4KCS4xdmd39o211jJswvqQOevj7vk+5IYcgDLx1ryZWZ1sEPOo9x875li/kj5gpKL14RDwQ==", 74 - "dev": true, 75 - "license": "0BSD", 76 - "dependencies": { 77 - "@atcute/multibase": "^1.1.6", 78 - "@atcute/uint8array": "^1.0.5" 79 - } 80 - }, 81 - "node_modules/@atcute/client": { 82 - "version": "4.1.0", 83 - "resolved": "https://registry.npmjs.org/@atcute/client/-/client-4.1.0.tgz", 84 - "integrity": "sha512-AYhSu3RSDA2VDkVGOmad320NRbUUUf5pCFWJcOzlk25YC/4kyzmMFfpzhf1jjjEcY+anNBXGGhav/kKB1evggQ==", 85 - "dev": true, 86 - "license": "0BSD", 87 - "dependencies": { 88 - "@atcute/identity": "^1.1.3", 89 - "@atcute/lexicons": "^1.2.5" 90 - } 91 - }, 92 - "node_modules/@atcute/crypto": { 93 - "version": "2.2.6", 94 - "resolved": "https://registry.npmjs.org/@atcute/crypto/-/crypto-2.2.6.tgz", 95 - "integrity": "sha512-vkuexF+kmrKE1/Uqzub99Qi4QpnxA2jbu60E6PTgL4XypELQ6rb59MB/J1VbY2gs0kd3ET7+L3+NWpKD5nXyfA==", 96 - "dev": true, 97 - "license": "0BSD", 98 - "dependencies": { 99 - "@atcute/multibase": "^1.1.6", 100 - "@atcute/uint8array": "^1.0.5", 101 - "@noble/secp256k1": "^3.0.0" 102 - } 103 - }, 104 - "node_modules/@atcute/identity": { 105 - "version": "1.1.3", 106 - "resolved": "https://registry.npmjs.org/@atcute/identity/-/identity-1.1.3.tgz", 107 - "integrity": "sha512-oIqPoI8TwWeQxvcLmFEZLdN2XdWcaLVtlm8pNk0E72As9HNzzD9pwKPrLr3rmTLRIoULPPFmq9iFNsTeCIU9ng==", 108 - "dev": true, 109 - "license": "0BSD", 110 - "peer": true, 111 - "dependencies": { 112 - "@atcute/lexicons": "^1.2.4", 113 - "@badrap/valita": "^0.4.6" 114 - } 115 - }, 116 - "node_modules/@atcute/identity-resolver": { 117 - "version": "1.1.4", 118 - "resolved": "https://registry.npmjs.org/@atcute/identity-resolver/-/identity-resolver-1.1.4.tgz", 119 - "integrity": "sha512-/SVh8vf2cXFJenmBnGeYF2aY3WGQm3cJeew5NWTlkqoy3LvJ5wkvKq9PWu4Tv653VF40rPOp6LOdVr9Fa+q5rA==", 120 - "dev": true, 121 - "license": "0BSD", 122 - "peer": true, 123 - "dependencies": { 124 - "@atcute/lexicons": "^1.2.2", 125 - "@atcute/util-fetch": "^1.0.3", 126 - "@badrap/valita": "^0.4.6" 127 - }, 128 - "peerDependencies": { 129 - "@atcute/identity": "^1.0.0" 130 - } 131 - }, 132 - "node_modules/@atcute/lex-cli": { 133 - "version": "2.5.0", 134 - "resolved": "https://registry.npmjs.org/@atcute/lex-cli/-/lex-cli-2.5.0.tgz", 135 - "integrity": "sha512-mIla9XeK9HJqFW0m/FaHI3+wIQlUL3PJYFpGmlXVwJISQVHASvWpU6gCHSYtAySZTrfVDv73fsVDBkpw9mnTjA==", 136 - "dev": true, 137 - "license": "0BSD", 138 - "dependencies": { 139 - "@atcute/identity": "^1.1.3", 140 - "@atcute/identity-resolver": "^1.1.4", 141 - "@atcute/lexicon-doc": "^2.0.3", 142 - "@atcute/lexicon-resolver": "^0.1.4", 143 - "@atcute/lexicons": "^1.2.5", 144 - "@badrap/valita": "^0.4.6", 145 - "@optique/core": "^0.6.3", 146 - "@optique/run": "^0.6.3", 147 - "picocolors": "^1.1.1", 148 - "prettier": "^3.6.2" 149 - }, 150 - "bin": { 151 - "lex-cli": "cli.mjs" 152 - } 153 - }, 154 - "node_modules/@atcute/lexicon-doc": { 155 - "version": "2.0.4", 156 - "resolved": "https://registry.npmjs.org/@atcute/lexicon-doc/-/lexicon-doc-2.0.4.tgz", 157 - "integrity": "sha512-YfwlYFoYiBvRIYG0I1zsINCTFugFtS8l67uT3nQ04zdKVflzdg8uUj8cNZYRNY1V7okoOPdikhR4kPFhYGyemw==", 158 - "dev": true, 159 - "license": "0BSD", 160 - "dependencies": { 161 - "@atcute/identity": "^1.1.3", 162 - "@atcute/lexicons": "^1.2.5", 163 - "@badrap/valita": "^0.4.6" 164 - } 165 - }, 166 - "node_modules/@atcute/lexicon-resolver": { 167 - "version": "0.1.5", 168 - "resolved": "https://registry.npmjs.org/@atcute/lexicon-resolver/-/lexicon-resolver-0.1.5.tgz", 169 - "integrity": "sha512-0bx1/zdMQPuxvRcHW6ykAxRxktC2rEZLoAVSFoLSWDAA92Tf09F9QPK5wgXSF4MNODm1dvzMEdWSMIvlg8sr3A==", 170 - "dev": true, 171 - "license": "0BSD", 172 - "dependencies": { 173 - "@atcute/crypto": "^2.2.6", 174 - "@atcute/lexicon-doc": "^2.0.4", 175 - "@atcute/lexicons": "^1.2.5", 176 - "@atcute/repo": "^0.1.0", 177 - "@atcute/util-fetch": "^1.0.4", 178 - "@badrap/valita": "^0.4.6" 179 - }, 180 - "peerDependencies": { 181 - "@atcute/identity": "^1.1.0", 182 - "@atcute/identity-resolver": "^1.1.3" 183 - } 184 - }, 185 - "node_modules/@atcute/lexicons": { 186 - "version": "1.2.5", 187 - "resolved": "https://registry.npmjs.org/@atcute/lexicons/-/lexicons-1.2.5.tgz", 188 - "integrity": "sha512-9yO9WdgxW8jZ7SbzUycH710z+JmsQ9W9n5S6i6eghYju32kkluFmgBeS47r8e8p2+Dv4DemS7o/3SUGsX9FR5Q==", 189 - "dev": true, 190 - "license": "0BSD", 191 - "dependencies": { 192 - "@standard-schema/spec": "^1.0.0", 193 - "esm-env": "^1.2.2" 194 - } 195 - }, 196 - "node_modules/@atcute/mst": { 197 - "version": "0.1.0", 198 - "resolved": "https://registry.npmjs.org/@atcute/mst/-/mst-0.1.0.tgz", 199 - "integrity": "sha512-h+iDToKEnBpigk2DOHjSqY63vJtjYKUIztqu1CZ0P+I54wV2SrgoqAXAT1xrW6A1Iup8cjTv+U2H5WVG4KxPLw==", 200 - "dev": true, 201 - "license": "0BSD", 202 - "dependencies": { 203 - "@atcute/cbor": "^2.2.7", 204 - "@atcute/cid": "^2.2.6", 205 - "@atcute/uint8array": "^1.0.5" 206 - } 207 - }, 208 - "node_modules/@atcute/multibase": { 209 - "version": "1.1.6", 210 - "resolved": "https://registry.npmjs.org/@atcute/multibase/-/multibase-1.1.6.tgz", 211 - "integrity": "sha512-HBxuCgYLKPPxETV0Rot4VP9e24vKl8JdzGCZOVsDaOXJgbRZoRIF67Lp0H/OgnJeH/Xpva8Z5ReoTNJE5dn3kg==", 212 - "dev": true, 213 - "license": "0BSD", 214 - "dependencies": { 215 - "@atcute/uint8array": "^1.0.5" 216 - } 217 - }, 218 - "node_modules/@atcute/oauth-browser-client": { 219 - "version": "2.0.1", 220 - "resolved": "https://registry.npmjs.org/@atcute/oauth-browser-client/-/oauth-browser-client-2.0.1.tgz", 221 - "integrity": "sha512-lG021GkeORG06zfFf4bH85egObjBEKHNgAWHvbtY/E2dX4wxo88hf370pJDx8acdnuUJLJ2VKPikJtZwo4Heeg==", 222 - "dev": true, 223 - "license": "0BSD", 224 - "dependencies": { 225 - "@atcute/client": "^4.0.5", 226 - "@atcute/identity": "^1.1.1", 227 - "@atcute/identity-resolver": "^1.1.4", 228 - "@atcute/lexicons": "^1.2.2", 229 - "@atcute/multibase": "^1.1.6", 230 - "@atcute/uint8array": "^1.0.5", 231 - "nanoid": "^5.1.5" 232 - } 233 - }, 234 - "node_modules/@atcute/oauth-browser-client/node_modules/nanoid": { 235 - "version": "5.1.6", 236 - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.6.tgz", 237 - "integrity": "sha512-c7+7RQ+dMB5dPwwCp4ee1/iV/q2P6aK1mTZcfr1BTuVlyW9hJYiMPybJCcnBlQtuSmTIWNeazm/zqNoZSSElBg==", 238 - "dev": true, 239 - "funding": [ 240 - { 241 - "type": "github", 242 - "url": "https://github.com/sponsors/ai" 243 - } 244 - ], 245 - "license": "MIT", 246 - "bin": { 247 - "nanoid": "bin/nanoid.js" 248 - }, 249 - "engines": { 250 - "node": "^18 || >=20" 251 - } 252 - }, 253 - "node_modules/@atcute/repo": { 254 - "version": "0.1.0", 255 - "resolved": "https://registry.npmjs.org/@atcute/repo/-/repo-0.1.0.tgz", 256 - "integrity": "sha512-INiYAuma8dydBu7cqd2WVpcXh3mzhIepYBUqFWAK5MqMulPRLTRCc/9GW3G9pxYrOdlvLCVamG2Jf8XK0nuFEw==", 257 - "dev": true, 258 - "license": "0BSD", 259 - "dependencies": { 260 - "@atcute/car": "^5.0.0", 261 - "@atcute/cbor": "^2.2.7", 262 - "@atcute/cid": "^2.2.6", 263 - "@atcute/crypto": "^2.2.5", 264 - "@atcute/lexicons": "^1.2.2", 265 - "@atcute/mst": "^0.1.0", 266 - "@atcute/uint8array": "^1.0.5" 267 - } 268 - }, 269 - "node_modules/@atcute/uint8array": { 270 - "version": "1.0.5", 271 - "resolved": "https://registry.npmjs.org/@atcute/uint8array/-/uint8array-1.0.5.tgz", 272 - "integrity": "sha512-XLWWxoR2HNl2qU+FCr0rp1APwJXci7HnzbOQLxK55OaMNBXZ19+xNC5ii4QCsThsDxa4JS/JTzuiQLziITWf2Q==", 273 - "dev": true, 274 - "license": "0BSD" 275 - }, 276 - "node_modules/@atcute/util-fetch": { 277 - "version": "1.0.4", 278 - "resolved": "https://registry.npmjs.org/@atcute/util-fetch/-/util-fetch-1.0.4.tgz", 279 - "integrity": "sha512-sIU9Qk0dE8PLEXSfhy+gIJV+HpiiknMytCI2SqLlqd0vgZUtEKI/EQfP+23LHWvP+CLCzVDOa6cpH045OlmNBg==", 280 - "dev": true, 281 - "license": "0BSD", 282 - "dependencies": { 283 - "@badrap/valita": "^0.4.6" 284 - } 285 - }, 286 - "node_modules/@atcute/varint": { 287 - "version": "1.0.3", 288 - "resolved": "https://registry.npmjs.org/@atcute/varint/-/varint-1.0.3.tgz", 289 - "integrity": "sha512-fdvMPyBB+McDT+Ai5e9RwEbwYV4yjZ60S2Dn5PTjGqUyxvoCH1z42viuheDZRUDkmfQehXJTZ5az7dSozVNtog==", 290 - "dev": true, 291 - "license": "0BSD" 292 - }, 293 - "node_modules/@babel/helper-string-parser": { 294 - "version": "7.27.1", 295 - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", 296 - "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==", 297 - "dev": true, 298 - "license": "MIT", 299 - "engines": { 300 - "node": ">=6.9.0" 301 - } 302 - }, 303 - "node_modules/@babel/helper-validator-identifier": { 304 - "version": "7.28.5", 305 - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", 306 - "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==", 307 - "dev": true, 308 - "license": "MIT", 309 - "engines": { 310 - "node": ">=6.9.0" 311 - } 312 - }, 313 - "node_modules/@babel/parser": { 314 - "version": "7.28.5", 315 - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.5.tgz", 316 - "integrity": "sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==", 317 - "dev": true, 318 - "license": "MIT", 319 - "dependencies": { 320 - "@babel/types": "^7.28.5" 321 - }, 322 - "bin": { 323 - "parser": "bin/babel-parser.js" 324 - }, 325 - "engines": { 326 - "node": ">=6.0.0" 327 - } 328 - }, 329 - "node_modules/@babel/types": { 330 - "version": "7.28.5", 331 - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz", 332 - "integrity": "sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==", 333 - "dev": true, 334 - "license": "MIT", 335 - "dependencies": { 336 - "@babel/helper-string-parser": "^7.27.1", 337 - "@babel/helper-validator-identifier": "^7.28.5" 338 - }, 339 - "engines": { 340 - "node": ">=6.9.0" 341 - } 342 - }, 343 - "node_modules/@badrap/valita": { 344 - "version": "0.4.6", 345 - "resolved": "https://registry.npmjs.org/@badrap/valita/-/valita-0.4.6.tgz", 346 - "integrity": "sha512-4kdqcjyxo/8RQ8ayjms47HCWZIF5981oE5nIenbfThKDxWXtEHKipAOWlflpPJzZx9y/JWYQkp18Awr7VuepFg==", 347 - "dev": true, 348 - "license": "MIT", 349 - "engines": { 350 - "node": ">= 18" 351 - } 352 - }, 353 - "node_modules/@emnapi/core": { 354 - "version": "1.7.1", 355 - "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.7.1.tgz", 356 - "integrity": "sha512-o1uhUASyo921r2XtHYOHy7gdkGLge8ghBEQHMWmyJFoXlpU58kIrhhN3w26lpQb6dspetweapMn2CSNwQ8I4wg==", 357 - "dev": true, 358 - "license": "MIT", 359 - "optional": true, 360 - "dependencies": { 361 - "@emnapi/wasi-threads": "1.1.0", 362 - "tslib": "^2.4.0" 363 - } 364 - }, 365 - "node_modules/@emnapi/runtime": { 366 - "version": "1.7.1", 367 - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.7.1.tgz", 368 - "integrity": "sha512-PVtJr5CmLwYAU9PZDMITZoR5iAOShYREoR45EyyLrbntV50mdePTgUn4AmOw90Ifcj+x2kRjdzr1HP3RrNiHGA==", 369 - "dev": true, 370 - "license": "MIT", 371 - "optional": true, 372 - "dependencies": { 373 - "tslib": "^2.4.0" 374 - } 375 - }, 376 - "node_modules/@emnapi/wasi-threads": { 377 - "version": "1.1.0", 378 - "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", 379 - "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", 380 - "dev": true, 381 - "license": "MIT", 382 - "optional": true, 383 - "dependencies": { 384 - "tslib": "^2.4.0" 385 - } 386 - }, 387 - "node_modules/@isaacs/balanced-match": { 388 - "version": "4.0.1", 389 - "resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", 390 - "integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==", 391 - "dev": true, 392 - "license": "MIT", 393 - "engines": { 394 - "node": "20 || >=22" 395 - } 396 - }, 397 - "node_modules/@isaacs/brace-expansion": { 398 - "version": "5.0.0", 399 - "resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.0.tgz", 400 - "integrity": "sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==", 401 - "dev": true, 402 - "license": "MIT", 403 - "dependencies": { 404 - "@isaacs/balanced-match": "^4.0.1" 405 - }, 406 - "engines": { 407 - "node": "20 || >=22" 408 - } 409 - }, 410 - "node_modules/@jridgewell/gen-mapping": { 411 - "version": "0.3.13", 412 - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", 413 - "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", 414 - "dev": true, 415 - "license": "MIT", 416 - "dependencies": { 417 - "@jridgewell/sourcemap-codec": "^1.5.0", 418 - "@jridgewell/trace-mapping": "^0.3.24" 419 - } 420 - }, 421 - "node_modules/@jridgewell/remapping": { 422 - "version": "2.3.5", 423 - "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", 424 - "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", 425 - "dev": true, 426 - "license": "MIT", 427 - "dependencies": { 428 - "@jridgewell/gen-mapping": "^0.3.5", 429 - "@jridgewell/trace-mapping": "^0.3.24" 430 - } 431 - }, 432 - "node_modules/@jridgewell/resolve-uri": { 433 - "version": "3.1.2", 434 - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", 435 - "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", 436 - "dev": true, 437 - "license": "MIT", 438 - "engines": { 439 - "node": ">=6.0.0" 440 - } 441 - }, 442 - "node_modules/@jridgewell/sourcemap-codec": { 443 - "version": "1.5.5", 444 - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", 445 - "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", 446 - "dev": true, 447 - "license": "MIT" 448 - }, 449 - "node_modules/@jridgewell/trace-mapping": { 450 - "version": "0.3.31", 451 - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", 452 - "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", 453 - "dev": true, 454 - "license": "MIT", 455 - "dependencies": { 456 - "@jridgewell/resolve-uri": "^3.1.0", 457 - "@jridgewell/sourcemap-codec": "^1.4.14" 458 - } 459 - }, 460 - "node_modules/@microsoft/api-extractor": { 461 - "version": "7.55.1", 462 - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.55.1.tgz", 463 - "integrity": "sha512-l8Z+8qrLkZFM3HM95Dbpqs6G39fpCa7O5p8A7AkA6hSevxkgwsOlLrEuPv0ADOyj5dI1Af5WVDiwpKG/ya5G3w==", 464 - "dev": true, 465 - "license": "MIT", 466 - "dependencies": { 467 - "@microsoft/api-extractor-model": "7.32.1", 468 - "@microsoft/tsdoc": "~0.16.0", 469 - "@microsoft/tsdoc-config": "~0.18.0", 470 - "@rushstack/node-core-library": "5.19.0", 471 - "@rushstack/rig-package": "0.6.0", 472 - "@rushstack/terminal": "0.19.4", 473 - "@rushstack/ts-command-line": "5.1.4", 474 - "diff": "~8.0.2", 475 - "lodash": "~4.17.15", 476 - "minimatch": "10.0.3", 477 - "resolve": "~1.22.1", 478 - "semver": "~7.5.4", 479 - "source-map": "~0.6.1", 480 - "typescript": "5.8.2" 481 - }, 482 - "bin": { 483 - "api-extractor": "bin/api-extractor" 484 - } 485 - }, 486 - "node_modules/@microsoft/api-extractor-model": { 487 - "version": "7.32.1", 488 - "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.32.1.tgz", 489 - "integrity": "sha512-u4yJytMYiUAnhcNQcZDTh/tVtlrzKlyKrQnLOV+4Qr/5gV+cpufWzCYAB1Q23URFqD6z2RoL2UYncM9xJVGNKA==", 490 - "dev": true, 491 - "license": "MIT", 492 - "dependencies": { 493 - "@microsoft/tsdoc": "~0.16.0", 494 - "@microsoft/tsdoc-config": "~0.18.0", 495 - "@rushstack/node-core-library": "5.19.0" 496 - } 497 - }, 498 - "node_modules/@microsoft/api-extractor/node_modules/typescript": { 499 - "version": "5.8.2", 500 - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.2.tgz", 501 - "integrity": "sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==", 502 - "dev": true, 503 - "license": "Apache-2.0", 504 - "bin": { 505 - "tsc": "bin/tsc", 506 - "tsserver": "bin/tsserver" 507 - }, 508 - "engines": { 509 - "node": ">=14.17" 510 - } 511 - }, 512 - "node_modules/@microsoft/tsdoc": { 513 - "version": "0.16.0", 514 - "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.16.0.tgz", 515 - "integrity": "sha512-xgAyonlVVS+q7Vc7qLW0UrJU7rSFcETRWsqdXZtjzRU8dF+6CkozTK4V4y1LwOX7j8r/vHphjDeMeGI4tNGeGA==", 516 - "dev": true, 517 - "license": "MIT" 518 - }, 519 - "node_modules/@microsoft/tsdoc-config": { 520 - "version": "0.18.0", 521 - "resolved": "https://registry.npmjs.org/@microsoft/tsdoc-config/-/tsdoc-config-0.18.0.tgz", 522 - "integrity": "sha512-8N/vClYyfOH+l4fLkkr9+myAoR6M7akc8ntBJ4DJdWH2b09uVfr71+LTMpNyG19fNqWDg8KEDZhx5wxuqHyGjw==", 523 - "dev": true, 524 - "license": "MIT", 525 - "dependencies": { 526 - "@microsoft/tsdoc": "0.16.0", 527 - "ajv": "~8.12.0", 528 - "jju": "~1.4.0", 529 - "resolve": "~1.22.2" 530 - } 531 - }, 532 - "node_modules/@napi-rs/wasm-runtime": { 533 - "version": "1.0.7", 534 - "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.0.7.tgz", 535 - "integrity": "sha512-SeDnOO0Tk7Okiq6DbXmmBODgOAb9dp9gjlphokTUxmt8U3liIP1ZsozBahH69j/RJv+Rfs6IwUKHTgQYJ/HBAw==", 536 - "dev": true, 537 - "license": "MIT", 538 - "optional": true, 539 - "dependencies": { 540 - "@emnapi/core": "^1.5.0", 541 - "@emnapi/runtime": "^1.5.0", 542 - "@tybys/wasm-util": "^0.10.1" 543 - } 544 - }, 545 - "node_modules/@noble/secp256k1": { 546 - "version": "3.0.0", 547 - "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-3.0.0.tgz", 548 - "integrity": "sha512-NJBaR352KyIvj3t6sgT/+7xrNyF9Xk9QlLSIqUGVUYlsnDTAUqY8LOmwpcgEx4AMJXRITQ5XEVHD+mMaPfr3mg==", 549 - "dev": true, 550 - "license": "MIT", 551 - "funding": { 552 - "url": "https://paulmillr.com/funding/" 553 - } 554 - }, 555 - "node_modules/@optique/core": { 556 - "version": "0.6.3", 557 - "resolved": "https://registry.npmjs.org/@optique/core/-/core-0.6.3.tgz", 558 - "integrity": "sha512-Aw7naHPeZr+YThJRrfk+Ds3OuAd7HUD1chsGncay+6crmLyrraXh0s0xDuJ52kCfNPdCTKAW3MG0XLcuEIr8qQ==", 559 - "dev": true, 560 - "funding": [ 561 - "https://github.com/sponsors/dahlia" 562 - ], 563 - "license": "MIT", 564 - "engines": { 565 - "bun": ">=1.2.0", 566 - "deno": ">=2.3.0", 567 - "node": ">=20.0.0" 568 - } 569 - }, 570 - "node_modules/@optique/run": { 571 - "version": "0.6.3", 572 - "resolved": "https://registry.npmjs.org/@optique/run/-/run-0.6.3.tgz", 573 - "integrity": "sha512-6zesLs4XLyFtG8s/JoG2VO/+plJVZhqbLK20yDm0hFEXrqcP+VCKTsoFAlWoWv4Us48V170SKH+8DZcxw8raJw==", 574 - "dev": true, 575 - "funding": [ 576 - "https://github.com/sponsors/dahlia" 577 - ], 578 - "license": "MIT", 579 - "dependencies": { 580 - "@optique/core": "0.6.3" 581 - }, 582 - "engines": { 583 - "bun": ">=1.2.0", 584 - "deno": ">=2.3.0", 585 - "node": ">=20.0.0" 586 - } 587 - }, 588 - "node_modules/@oxc-project/runtime": { 589 - "version": "0.97.0", 590 - "resolved": "https://registry.npmjs.org/@oxc-project/runtime/-/runtime-0.97.0.tgz", 591 - "integrity": "sha512-yH0zw7z+jEws4dZ4IUKoix5Lh3yhqIJWF9Dc8PWvhpo7U7O+lJrv7ZZL4BeRO0la8LBQFwcCewtLBnVV7hPe/w==", 592 - "dev": true, 593 - "license": "MIT", 594 - "engines": { 595 - "node": "^20.19.0 || >=22.12.0" 596 - } 597 - }, 598 - "node_modules/@oxc-project/types": { 599 - "version": "0.97.0", 600 - "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.97.0.tgz", 601 - "integrity": "sha512-lxmZK4xFrdvU0yZiDwgVQTCvh2gHWBJCBk5ALsrtsBWhs0uDIi+FTOnXRQeQfs304imdvTdaakT/lqwQ8hkOXQ==", 602 - "dev": true, 603 - "license": "MIT", 604 - "funding": { 605 - "url": "https://github.com/sponsors/Boshen" 606 - } 607 - }, 608 - "node_modules/@rolldown/binding-android-arm64": { 609 - "version": "1.0.0-beta.50", 610 - "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-beta.50.tgz", 611 - "integrity": "sha512-XlEkrOIHLyGT3avOgzfTFSjG+f+dZMw+/qd+Y3HLN86wlndrB/gSimrJCk4gOhr1XtRtEKfszpadI3Md4Z4/Ag==", 612 - "cpu": [ 613 - "arm64" 614 - ], 615 - "dev": true, 616 - "license": "MIT", 617 - "optional": true, 618 - "os": [ 619 - "android" 620 - ], 621 - "engines": { 622 - "node": "^20.19.0 || >=22.12.0" 623 - } 624 - }, 625 - "node_modules/@rolldown/binding-darwin-arm64": { 626 - "version": "1.0.0-beta.50", 627 - "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-beta.50.tgz", 628 - "integrity": "sha512-+JRqKJhoFlt5r9q+DecAGPLZ5PxeLva+wCMtAuoFMWPoZzgcYrr599KQ+Ix0jwll4B4HGP43avu9My8KtSOR+w==", 629 - "cpu": [ 630 - "arm64" 631 - ], 632 - "dev": true, 633 - "license": "MIT", 634 - "optional": true, 635 - "os": [ 636 - "darwin" 637 - ], 638 - "engines": { 639 - "node": "^20.19.0 || >=22.12.0" 640 - } 641 - }, 642 - "node_modules/@rolldown/binding-darwin-x64": { 643 - "version": "1.0.0-beta.50", 644 - "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.0-beta.50.tgz", 645 - "integrity": "sha512-fFXDjXnuX7/gQZQm/1FoivVtRcyAzdjSik7Eo+9iwPQ9EgtA5/nB2+jmbzaKtMGG3q+BnZbdKHCtOacmNrkIDA==", 646 - "cpu": [ 647 - "x64" 648 - ], 649 - "dev": true, 650 - "license": "MIT", 651 - "optional": true, 652 - "os": [ 653 - "darwin" 654 - ], 655 - "engines": { 656 - "node": "^20.19.0 || >=22.12.0" 657 - } 658 - }, 659 - "node_modules/@rolldown/binding-freebsd-x64": { 660 - "version": "1.0.0-beta.50", 661 - "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.0-beta.50.tgz", 662 - "integrity": "sha512-F1b6vARy49tjmT/hbloplzgJS7GIvwWZqt+tAHEstCh0JIh9sa8FAMVqEmYxDviqKBaAI8iVvUREm/Kh/PD26Q==", 663 - "cpu": [ 664 - "x64" 665 - ], 666 - "dev": true, 667 - "license": "MIT", 668 - "optional": true, 669 - "os": [ 670 - "freebsd" 671 - ], 672 - "engines": { 673 - "node": "^20.19.0 || >=22.12.0" 674 - } 675 - }, 676 - "node_modules/@rolldown/binding-linux-arm-gnueabihf": { 677 - "version": "1.0.0-beta.50", 678 - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.0-beta.50.tgz", 679 - "integrity": "sha512-U6cR76N8T8M6lHj7EZrQ3xunLPxSvYYxA8vJsBKZiFZkT8YV4kjgCO3KwMJL0NOjQCPGKyiXO07U+KmJzdPGRw==", 680 - "cpu": [ 681 - "arm" 682 - ], 683 - "dev": true, 684 - "license": "MIT", 685 - "optional": true, 686 - "os": [ 687 - "linux" 688 - ], 689 - "engines": { 690 - "node": "^20.19.0 || >=22.12.0" 691 - } 692 - }, 693 - "node_modules/@rolldown/binding-linux-arm64-gnu": { 694 - "version": "1.0.0-beta.50", 695 - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.0-beta.50.tgz", 696 - "integrity": "sha512-ONgyjofCrrE3bnh5GZb8EINSFyR/hmwTzZ7oVuyUB170lboza1VMCnb8jgE6MsyyRgHYmN8Lb59i3NKGrxrYjw==", 697 - "cpu": [ 698 - "arm64" 699 - ], 700 - "dev": true, 701 - "license": "MIT", 702 - "optional": true, 703 - "os": [ 704 - "linux" 705 - ], 706 - "engines": { 707 - "node": "^20.19.0 || >=22.12.0" 708 - } 709 - }, 710 - "node_modules/@rolldown/binding-linux-arm64-musl": { 711 - "version": "1.0.0-beta.50", 712 - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.0-beta.50.tgz", 713 - "integrity": "sha512-L0zRdH2oDPkmB+wvuTl+dJbXCsx62SkqcEqdM+79LOcB+PxbAxxjzHU14BuZIQdXcAVDzfpMfaHWzZuwhhBTcw==", 714 - "cpu": [ 715 - "arm64" 716 - ], 717 - "dev": true, 718 - "license": "MIT", 719 - "optional": true, 720 - "os": [ 721 - "linux" 722 - ], 723 - "engines": { 724 - "node": "^20.19.0 || >=22.12.0" 725 - } 726 - }, 727 - "node_modules/@rolldown/binding-linux-x64-gnu": { 728 - "version": "1.0.0-beta.50", 729 - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.0-beta.50.tgz", 730 - "integrity": "sha512-gyoI8o/TGpQd3OzkJnh1M2kxy1Bisg8qJ5Gci0sXm9yLFzEXIFdtc4EAzepxGvrT2ri99ar5rdsmNG0zP0SbIg==", 731 - "cpu": [ 732 - "x64" 733 - ], 734 - "dev": true, 735 - "license": "MIT", 736 - "optional": true, 737 - "os": [ 738 - "linux" 739 - ], 740 - "engines": { 741 - "node": "^20.19.0 || >=22.12.0" 742 - } 743 - }, 744 - "node_modules/@rolldown/binding-linux-x64-musl": { 745 - "version": "1.0.0-beta.50", 746 - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.0-beta.50.tgz", 747 - "integrity": "sha512-zti8A7M+xFDpKlghpcCAzyOi+e5nfUl3QhU023ce5NCgUxRG5zGP2GR9LTydQ1rnIPwZUVBWd4o7NjZDaQxaXA==", 748 - "cpu": [ 749 - "x64" 750 - ], 751 - "dev": true, 752 - "license": "MIT", 753 - "optional": true, 754 - "os": [ 755 - "linux" 756 - ], 757 - "engines": { 758 - "node": "^20.19.0 || >=22.12.0" 759 - } 760 - }, 761 - "node_modules/@rolldown/binding-openharmony-arm64": { 762 - "version": "1.0.0-beta.50", 763 - "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.0-beta.50.tgz", 764 - "integrity": "sha512-eZUssog7qljrrRU9Mi0eqYEPm3Ch0UwB+qlWPMKSUXHNqhm3TvDZarJQdTevGEfu3EHAXJvBIe0YFYr0TPVaMA==", 765 - "cpu": [ 766 - "arm64" 767 - ], 768 - "dev": true, 769 - "license": "MIT", 770 - "optional": true, 771 - "os": [ 772 - "openharmony" 773 - ], 774 - "engines": { 775 - "node": "^20.19.0 || >=22.12.0" 776 - } 777 - }, 778 - "node_modules/@rolldown/binding-wasm32-wasi": { 779 - "version": "1.0.0-beta.50", 780 - "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.0-beta.50.tgz", 781 - "integrity": "sha512-nmCN0nIdeUnmgeDXiQ+2HU6FT162o+rxnF7WMkBm4M5Ds8qTU7Dzv2Wrf22bo4ftnlrb2hKK6FSwAJSAe2FWLg==", 782 - "cpu": [ 783 - "wasm32" 784 - ], 785 - "dev": true, 786 - "license": "MIT", 787 - "optional": true, 788 - "dependencies": { 789 - "@napi-rs/wasm-runtime": "^1.0.7" 790 - }, 791 - "engines": { 792 - "node": ">=14.0.0" 793 - } 794 - }, 795 - "node_modules/@rolldown/binding-win32-arm64-msvc": { 796 - "version": "1.0.0-beta.50", 797 - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.0-beta.50.tgz", 798 - "integrity": "sha512-7kcNLi7Ua59JTTLvbe1dYb028QEPaJPJQHqkmSZ5q3tJueUeb6yjRtx8mw4uIqgWZcnQHAR3PrLN4XRJxvgIkA==", 799 - "cpu": [ 800 - "arm64" 801 - ], 802 - "dev": true, 803 - "license": "MIT", 804 - "optional": true, 805 - "os": [ 806 - "win32" 807 - ], 808 - "engines": { 809 - "node": "^20.19.0 || >=22.12.0" 810 - } 811 - }, 812 - "node_modules/@rolldown/binding-win32-ia32-msvc": { 813 - "version": "1.0.0-beta.50", 814 - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-1.0.0-beta.50.tgz", 815 - "integrity": "sha512-lL70VTNvSCdSZkDPPVMwWn/M2yQiYvSoXw9hTLgdIWdUfC3g72UaruezusR6ceRuwHCY1Ayu2LtKqXkBO5LIwg==", 816 - "cpu": [ 817 - "ia32" 818 - ], 819 - "dev": true, 820 - "license": "MIT", 821 - "optional": true, 822 - "os": [ 823 - "win32" 824 - ], 825 - "engines": { 826 - "node": "^20.19.0 || >=22.12.0" 827 - } 828 - }, 829 - "node_modules/@rolldown/binding-win32-x64-msvc": { 830 - "version": "1.0.0-beta.50", 831 - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.0-beta.50.tgz", 832 - "integrity": "sha512-4qU4x5DXWB4JPjyTne/wBNPqkbQU8J45bl21geERBKtEittleonioACBL1R0PsBu0Aq21SwMK5a9zdBkWSlQtQ==", 833 - "cpu": [ 834 - "x64" 835 - ], 836 - "dev": true, 837 - "license": "MIT", 838 - "optional": true, 839 - "os": [ 840 - "win32" 841 - ], 842 - "engines": { 843 - "node": "^20.19.0 || >=22.12.0" 844 - } 845 - }, 846 - "node_modules/@rolldown/pluginutils": { 847 - "version": "1.0.0-beta.50", 848 - "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.50.tgz", 849 - "integrity": "sha512-5e76wQiQVeL1ICOZVUg4LSOVYg9jyhGCin+icYozhsUzM+fHE7kddi1bdiE0jwVqTfkjba3jUFbEkoC9WkdvyA==", 850 - "dev": true, 851 - "license": "MIT" 852 - }, 853 - "node_modules/@rollup/pluginutils": { 854 - "version": "5.3.0", 855 - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.3.0.tgz", 856 - "integrity": "sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==", 857 - "dev": true, 858 - "license": "MIT", 859 - "dependencies": { 860 - "@types/estree": "^1.0.0", 861 - "estree-walker": "^2.0.2", 862 - "picomatch": "^4.0.2" 863 - }, 864 - "engines": { 865 - "node": ">=14.0.0" 866 - }, 867 - "peerDependencies": { 868 - "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" 869 - }, 870 - "peerDependenciesMeta": { 871 - "rollup": { 872 - "optional": true 873 - } 874 - } 875 - }, 876 - "node_modules/@rushstack/node-core-library": { 877 - "version": "5.19.0", 878 - "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-5.19.0.tgz", 879 - "integrity": "sha512-BxAopbeWBvNJ6VGiUL+5lbJXywTdsnMeOS8j57Cn/xY10r6sV/gbsTlfYKjzVCUBZATX2eRzJHSMCchsMTGN6A==", 880 - "dev": true, 881 - "license": "MIT", 882 - "dependencies": { 883 - "ajv": "~8.13.0", 884 - "ajv-draft-04": "~1.0.0", 885 - "ajv-formats": "~3.0.1", 886 - "fs-extra": "~11.3.0", 887 - "import-lazy": "~4.0.0", 888 - "jju": "~1.4.0", 889 - "resolve": "~1.22.1", 890 - "semver": "~7.5.4" 891 - }, 892 - "peerDependencies": { 893 - "@types/node": "*" 894 - }, 895 - "peerDependenciesMeta": { 896 - "@types/node": { 897 - "optional": true 898 - } 899 - } 900 - }, 901 - "node_modules/@rushstack/node-core-library/node_modules/ajv": { 902 - "version": "8.13.0", 903 - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.13.0.tgz", 904 - "integrity": "sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==", 905 - "dev": true, 906 - "license": "MIT", 907 - "dependencies": { 908 - "fast-deep-equal": "^3.1.3", 909 - "json-schema-traverse": "^1.0.0", 910 - "require-from-string": "^2.0.2", 911 - "uri-js": "^4.4.1" 912 - }, 913 - "funding": { 914 - "type": "github", 915 - "url": "https://github.com/sponsors/epoberezkin" 916 - } 917 - }, 918 - "node_modules/@rushstack/problem-matcher": { 919 - "version": "0.1.1", 920 - "resolved": "https://registry.npmjs.org/@rushstack/problem-matcher/-/problem-matcher-0.1.1.tgz", 921 - "integrity": "sha512-Fm5XtS7+G8HLcJHCWpES5VmeMyjAKaWeyZU5qPzZC+22mPlJzAsOxymHiWIfuirtPckX3aptWws+K2d0BzniJA==", 922 - "dev": true, 923 - "license": "MIT", 924 - "peerDependencies": { 925 - "@types/node": "*" 926 - }, 927 - "peerDependenciesMeta": { 928 - "@types/node": { 929 - "optional": true 930 - } 931 - } 932 - }, 933 - "node_modules/@rushstack/rig-package": { 934 - "version": "0.6.0", 935 - "resolved": "https://registry.npmjs.org/@rushstack/rig-package/-/rig-package-0.6.0.tgz", 936 - "integrity": "sha512-ZQmfzsLE2+Y91GF15c65L/slMRVhF6Hycq04D4TwtdGaUAbIXXg9c5pKA5KFU7M4QMaihoobp9JJYpYcaY3zOw==", 937 - "dev": true, 938 - "license": "MIT", 939 - "dependencies": { 940 - "resolve": "~1.22.1", 941 - "strip-json-comments": "~3.1.1" 942 - } 943 - }, 944 - "node_modules/@rushstack/terminal": { 945 - "version": "0.19.4", 946 - "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.19.4.tgz", 947 - "integrity": "sha512-f4XQk02CrKfrMgyOfhYd3qWI944dLC21S4I/LUhrlAP23GTMDNG6EK5effQtFkISwUKCgD9vMBrJZaPSUquxWQ==", 948 - "dev": true, 949 - "license": "MIT", 950 - "dependencies": { 951 - "@rushstack/node-core-library": "5.19.0", 952 - "@rushstack/problem-matcher": "0.1.1", 953 - "supports-color": "~8.1.1" 954 - }, 955 - "peerDependencies": { 956 - "@types/node": "*" 957 - }, 958 - "peerDependenciesMeta": { 959 - "@types/node": { 960 - "optional": true 961 - } 962 - } 963 - }, 964 - "node_modules/@rushstack/ts-command-line": { 965 - "version": "5.1.4", 966 - "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-5.1.4.tgz", 967 - "integrity": "sha512-H0I6VdJ6sOUbktDFpP2VW5N29w8v4hRoNZOQz02vtEi6ZTYL1Ju8u+TcFiFawUDrUsx/5MQTUhd79uwZZVwVlA==", 968 - "dev": true, 969 - "license": "MIT", 970 - "dependencies": { 971 - "@rushstack/terminal": "0.19.4", 972 - "@types/argparse": "1.0.38", 973 - "argparse": "~1.0.9", 974 - "string-argv": "~0.3.1" 975 - } 976 - }, 977 - "node_modules/@standard-schema/spec": { 978 - "version": "1.0.0", 979 - "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.0.0.tgz", 980 - "integrity": "sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==", 981 - "dev": true, 982 - "license": "MIT" 983 - }, 984 - "node_modules/@sveltejs/acorn-typescript": { 985 - "version": "1.0.7", 986 - "resolved": "https://registry.npmjs.org/@sveltejs/acorn-typescript/-/acorn-typescript-1.0.7.tgz", 987 - "integrity": "sha512-znp1A/Y1Jj4l/Zy7PX5DZKBE0ZNY+5QBngiE21NJkfSTyzzC5iKNWOtwFXKtIrn7MXEFBck4jD95iBNkGjK92Q==", 988 - "dev": true, 989 - "license": "MIT", 990 - "peerDependencies": { 991 - "acorn": "^8.9.0" 992 - } 993 - }, 994 - "node_modules/@sveltejs/vite-plugin-svelte": { 995 - "version": "6.2.1", 996 - "resolved": "https://registry.npmjs.org/@sveltejs/vite-plugin-svelte/-/vite-plugin-svelte-6.2.1.tgz", 997 - "integrity": "sha512-YZs/OSKOQAQCnJvM/P+F1URotNnYNeU3P2s4oIpzm1uFaqUEqRxUB0g5ejMjEb5Gjb9/PiBI5Ktrq4rUUF8UVQ==", 998 - "dev": true, 999 - "license": "MIT", 1000 - "peer": true, 1001 - "dependencies": { 1002 - "@sveltejs/vite-plugin-svelte-inspector": "^5.0.0", 1003 - "debug": "^4.4.1", 1004 - "deepmerge": "^4.3.1", 1005 - "magic-string": "^0.30.17", 1006 - "vitefu": "^1.1.1" 1007 - }, 1008 - "engines": { 1009 - "node": "^20.19 || ^22.12 || >=24" 1010 - }, 1011 - "peerDependencies": { 1012 - "svelte": "^5.0.0", 1013 - "vite": "^6.3.0 || ^7.0.0" 1014 - } 1015 - }, 1016 - "node_modules/@sveltejs/vite-plugin-svelte-inspector": { 1017 - "version": "5.0.1", 1018 - "resolved": "https://registry.npmjs.org/@sveltejs/vite-plugin-svelte-inspector/-/vite-plugin-svelte-inspector-5.0.1.tgz", 1019 - "integrity": "sha512-ubWshlMk4bc8mkwWbg6vNvCeT7lGQojE3ijDh3QTR6Zr/R+GXxsGbyH4PExEPpiFmqPhYiVSVmHBjUcVc1JIrA==", 1020 - "dev": true, 1021 - "license": "MIT", 1022 - "dependencies": { 1023 - "debug": "^4.4.1" 1024 - }, 1025 - "engines": { 1026 - "node": "^20.19 || ^22.12 || >=24" 1027 - }, 1028 - "peerDependencies": { 1029 - "@sveltejs/vite-plugin-svelte": "^6.0.0-next.0", 1030 - "svelte": "^5.0.0", 1031 - "vite": "^6.3.0 || ^7.0.0" 1032 - } 1033 - }, 1034 - "node_modules/@tsconfig/svelte": { 1035 - "version": "5.0.6", 1036 - "resolved": "https://registry.npmjs.org/@tsconfig/svelte/-/svelte-5.0.6.tgz", 1037 - "integrity": "sha512-yGxYL0I9eETH1/DR9qVJey4DAsCdeau4a9wYPKuXfEhm8lFO8wg+LLYJjIpAm6Fw7HSlhepPhYPDop75485yWQ==", 1038 - "dev": true, 1039 - "license": "MIT" 1040 - }, 1041 - "node_modules/@tybys/wasm-util": { 1042 - "version": "0.10.1", 1043 - "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", 1044 - "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", 1045 - "dev": true, 1046 - "license": "MIT", 1047 - "optional": true, 1048 - "dependencies": { 1049 - "tslib": "^2.4.0" 1050 - } 1051 - }, 1052 - "node_modules/@types/argparse": { 1053 - "version": "1.0.38", 1054 - "resolved": "https://registry.npmjs.org/@types/argparse/-/argparse-1.0.38.tgz", 1055 - "integrity": "sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==", 1056 - "dev": true, 1057 - "license": "MIT" 1058 - }, 1059 - "node_modules/@types/estree": { 1060 - "version": "1.0.8", 1061 - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", 1062 - "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==", 1063 - "dev": true, 1064 - "license": "MIT" 1065 - }, 1066 - "node_modules/@types/node": { 1067 - "version": "24.10.1", 1068 - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz", 1069 - "integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==", 1070 - "dev": true, 1071 - "license": "MIT", 1072 - "peer": true, 1073 - "dependencies": { 1074 - "undici-types": "~7.16.0" 1075 - } 1076 - }, 1077 - "node_modules/@volar/language-core": { 1078 - "version": "2.4.26", 1079 - "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.26.tgz", 1080 - "integrity": "sha512-hH0SMitMxnB43OZpyF1IFPS9bgb2I3bpCh76m2WEK7BE0A0EzpYsRp0CCH2xNKshr7kacU5TQBLYn4zj7CG60A==", 1081 - "dev": true, 1082 - "license": "MIT", 1083 - "dependencies": { 1084 - "@volar/source-map": "2.4.26" 1085 - } 1086 - }, 1087 - "node_modules/@volar/source-map": { 1088 - "version": "2.4.26", 1089 - "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.26.tgz", 1090 - "integrity": "sha512-JJw0Tt/kSFsIRmgTQF4JSt81AUSI1aEye5Zl65EeZ8H35JHnTvFGmpDOBn5iOxd48fyGE+ZvZBp5FcgAy/1Qhw==", 1091 - "dev": true, 1092 - "license": "MIT" 1093 - }, 1094 - "node_modules/@volar/typescript": { 1095 - "version": "2.4.26", 1096 - "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.26.tgz", 1097 - "integrity": "sha512-N87ecLD48Sp6zV9zID/5yuS1+5foj0DfuYGdQ6KHj/IbKvyKv1zNX6VCmnKYwtmHadEO6mFc2EKISiu3RDPAvA==", 1098 - "dev": true, 1099 - "license": "MIT", 1100 - "dependencies": { 1101 - "@volar/language-core": "2.4.26", 1102 - "path-browserify": "^1.0.1", 1103 - "vscode-uri": "^3.0.8" 1104 - } 1105 - }, 1106 - "node_modules/@vue/compiler-core": { 1107 - "version": "3.5.25", 1108 - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.25.tgz", 1109 - "integrity": "sha512-vay5/oQJdsNHmliWoZfHPoVZZRmnSWhug0BYT34njkYTPqClh3DNWLkZNJBVSjsNMrg0CCrBfoKkjZQPM/QVUw==", 1110 - "dev": true, 1111 - "license": "MIT", 1112 - "dependencies": { 1113 - "@babel/parser": "^7.28.5", 1114 - "@vue/shared": "3.5.25", 1115 - "entities": "^4.5.0", 1116 - "estree-walker": "^2.0.2", 1117 - "source-map-js": "^1.2.1" 1118 - } 1119 - }, 1120 - "node_modules/@vue/compiler-dom": { 1121 - "version": "3.5.25", 1122 - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.25.tgz", 1123 - "integrity": "sha512-4We0OAcMZsKgYoGlMjzYvaoErltdFI2/25wqanuTu+S4gismOTRTBPi4IASOjxWdzIwrYSjnqONfKvuqkXzE2Q==", 1124 - "dev": true, 1125 - "license": "MIT", 1126 - "dependencies": { 1127 - "@vue/compiler-core": "3.5.25", 1128 - "@vue/shared": "3.5.25" 1129 - } 1130 - }, 1131 - "node_modules/@vue/compiler-vue2": { 1132 - "version": "2.7.16", 1133 - "resolved": "https://registry.npmjs.org/@vue/compiler-vue2/-/compiler-vue2-2.7.16.tgz", 1134 - "integrity": "sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==", 1135 - "dev": true, 1136 - "license": "MIT", 1137 - "dependencies": { 1138 - "de-indent": "^1.0.2", 1139 - "he": "^1.2.0" 1140 - } 1141 - }, 1142 - "node_modules/@vue/language-core": { 1143 - "version": "2.2.0", 1144 - "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-2.2.0.tgz", 1145 - "integrity": "sha512-O1ZZFaaBGkKbsRfnVH1ifOK1/1BUkyK+3SQsfnh6PmMmD4qJcTU8godCeA96jjDRTL6zgnK7YzCHfaUlH2r0Mw==", 1146 - "dev": true, 1147 - "license": "MIT", 1148 - "dependencies": { 1149 - "@volar/language-core": "~2.4.11", 1150 - "@vue/compiler-dom": "^3.5.0", 1151 - "@vue/compiler-vue2": "^2.7.16", 1152 - "@vue/shared": "^3.5.0", 1153 - "alien-signals": "^0.4.9", 1154 - "minimatch": "^9.0.3", 1155 - "muggle-string": "^0.4.1", 1156 - "path-browserify": "^1.0.1" 1157 - }, 1158 - "peerDependencies": { 1159 - "typescript": "*" 1160 - }, 1161 - "peerDependenciesMeta": { 1162 - "typescript": { 1163 - "optional": true 1164 - } 1165 - } 1166 - }, 1167 - "node_modules/@vue/language-core/node_modules/minimatch": { 1168 - "version": "9.0.5", 1169 - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", 1170 - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", 1171 - "dev": true, 1172 - "license": "ISC", 1173 - "dependencies": { 1174 - "brace-expansion": "^2.0.1" 1175 - }, 1176 - "engines": { 1177 - "node": ">=16 || 14 >=14.17" 1178 - }, 1179 - "funding": { 1180 - "url": "https://github.com/sponsors/isaacs" 1181 - } 1182 - }, 1183 - "node_modules/@vue/shared": { 1184 - "version": "3.5.25", 1185 - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.25.tgz", 1186 - "integrity": "sha512-AbOPdQQnAnzs58H2FrrDxYj/TJfmeS2jdfEEhgiKINy+bnOANmVizIEgq1r+C5zsbs6l1CCQxtcj71rwNQ4jWg==", 1187 - "dev": true, 1188 - "license": "MIT" 1189 - }, 1190 - "node_modules/acorn": { 1191 - "version": "8.15.0", 1192 - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", 1193 - "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", 1194 - "dev": true, 1195 - "license": "MIT", 1196 - "peer": true, 1197 - "bin": { 1198 - "acorn": "bin/acorn" 1199 - }, 1200 - "engines": { 1201 - "node": ">=0.4.0" 1202 - } 1203 - }, 1204 - "node_modules/actor-typeahead": { 1205 - "version": "0.1.2", 1206 - "resolved": "https://registry.npmjs.org/actor-typeahead/-/actor-typeahead-0.1.2.tgz", 1207 - "integrity": "sha512-I97YqqNl7Kar0J/bIJvgY/KmHpssHcDElhfwVTLP7wRFlkxso2ZLBqiS2zol5A8UVUJbQK2JXYaqNpZXz8Uk2A==", 1208 - "license": "MPL-2.0" 1209 - }, 1210 - "node_modules/ajv": { 1211 - "version": "8.12.0", 1212 - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", 1213 - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", 1214 - "dev": true, 1215 - "license": "MIT", 1216 - "dependencies": { 1217 - "fast-deep-equal": "^3.1.1", 1218 - "json-schema-traverse": "^1.0.0", 1219 - "require-from-string": "^2.0.2", 1220 - "uri-js": "^4.2.2" 1221 - }, 1222 - "funding": { 1223 - "type": "github", 1224 - "url": "https://github.com/sponsors/epoberezkin" 1225 - } 1226 - }, 1227 - "node_modules/ajv-draft-04": { 1228 - "version": "1.0.0", 1229 - "resolved": "https://registry.npmjs.org/ajv-draft-04/-/ajv-draft-04-1.0.0.tgz", 1230 - "integrity": "sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==", 1231 - "dev": true, 1232 - "license": "MIT", 1233 - "peerDependencies": { 1234 - "ajv": "^8.5.0" 1235 - }, 1236 - "peerDependenciesMeta": { 1237 - "ajv": { 1238 - "optional": true 1239 - } 1240 - } 1241 - }, 1242 - "node_modules/ajv-formats": { 1243 - "version": "3.0.1", 1244 - "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", 1245 - "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", 1246 - "dev": true, 1247 - "license": "MIT", 1248 - "dependencies": { 1249 - "ajv": "^8.0.0" 1250 - }, 1251 - "peerDependencies": { 1252 - "ajv": "^8.0.0" 1253 - }, 1254 - "peerDependenciesMeta": { 1255 - "ajv": { 1256 - "optional": true 1257 - } 1258 - } 1259 - }, 1260 - "node_modules/alien-signals": { 1261 - "version": "0.4.14", 1262 - "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-0.4.14.tgz", 1263 - "integrity": "sha512-itUAVzhczTmP2U5yX67xVpsbbOiquusbWVyA9N+sy6+r6YVbFkahXvNCeEPWEOMhwDYwbVbGHFkVL03N9I5g+Q==", 1264 - "dev": true, 1265 - "license": "MIT" 1266 - }, 1267 - "node_modules/argparse": { 1268 - "version": "1.0.10", 1269 - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", 1270 - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", 1271 - "dev": true, 1272 - "license": "MIT", 1273 - "dependencies": { 1274 - "sprintf-js": "~1.0.2" 1275 - } 1276 - }, 1277 - "node_modules/aria-query": { 1278 - "version": "5.3.2", 1279 - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", 1280 - "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", 1281 - "dev": true, 1282 - "license": "Apache-2.0", 1283 - "engines": { 1284 - "node": ">= 0.4" 1285 - } 1286 - }, 1287 - "node_modules/axobject-query": { 1288 - "version": "4.1.0", 1289 - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", 1290 - "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", 1291 - "dev": true, 1292 - "license": "Apache-2.0", 1293 - "engines": { 1294 - "node": ">= 0.4" 1295 - } 1296 - }, 1297 - "node_modules/balanced-match": { 1298 - "version": "1.0.2", 1299 - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 1300 - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 1301 - "dev": true, 1302 - "license": "MIT" 1303 - }, 1304 - "node_modules/brace-expansion": { 1305 - "version": "2.0.2", 1306 - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", 1307 - "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", 1308 - "dev": true, 1309 - "license": "MIT", 1310 - "dependencies": { 1311 - "balanced-match": "^1.0.0" 1312 - } 1313 - }, 1314 - "node_modules/chokidar": { 1315 - "version": "4.0.3", 1316 - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", 1317 - "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", 1318 - "dev": true, 1319 - "license": "MIT", 1320 - "dependencies": { 1321 - "readdirp": "^4.0.1" 1322 - }, 1323 - "engines": { 1324 - "node": ">= 14.16.0" 1325 - }, 1326 - "funding": { 1327 - "url": "https://paulmillr.com/funding/" 1328 - } 1329 - }, 1330 - "node_modules/clsx": { 1331 - "version": "2.1.1", 1332 - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", 1333 - "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", 1334 - "dev": true, 1335 - "license": "MIT", 1336 - "engines": { 1337 - "node": ">=6" 1338 - } 1339 - }, 1340 - "node_modules/compare-versions": { 1341 - "version": "6.1.1", 1342 - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-6.1.1.tgz", 1343 - "integrity": "sha512-4hm4VPpIecmlg59CHXnRDnqGplJFrbLG4aFEl5vl6cK1u76ws3LLvX7ikFnTDl5vo39sjWD6AaDPYodJp/NNHg==", 1344 - "dev": true, 1345 - "license": "MIT" 1346 - }, 1347 - "node_modules/confbox": { 1348 - "version": "0.2.2", 1349 - "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.2.2.tgz", 1350 - "integrity": "sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==", 1351 - "dev": true, 1352 - "license": "MIT" 1353 - }, 1354 - "node_modules/de-indent": { 1355 - "version": "1.0.2", 1356 - "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", 1357 - "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", 1358 - "dev": true, 1359 - "license": "MIT" 1360 - }, 1361 - "node_modules/debug": { 1362 - "version": "4.4.3", 1363 - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", 1364 - "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", 1365 - "dev": true, 1366 - "license": "MIT", 1367 - "dependencies": { 1368 - "ms": "^2.1.3" 1369 - }, 1370 - "engines": { 1371 - "node": ">=6.0" 1372 - }, 1373 - "peerDependenciesMeta": { 1374 - "supports-color": { 1375 - "optional": true 1376 - } 1377 - } 1378 - }, 1379 - "node_modules/deepmerge": { 1380 - "version": "4.3.1", 1381 - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", 1382 - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", 1383 - "dev": true, 1384 - "license": "MIT", 1385 - "engines": { 1386 - "node": ">=0.10.0" 1387 - } 1388 - }, 1389 - "node_modules/detect-libc": { 1390 - "version": "2.1.2", 1391 - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", 1392 - "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", 1393 - "dev": true, 1394 - "license": "Apache-2.0", 1395 - "engines": { 1396 - "node": ">=8" 1397 - } 1398 - }, 1399 - "node_modules/devalue": { 1400 - "version": "5.5.0", 1401 - "resolved": "https://registry.npmjs.org/devalue/-/devalue-5.5.0.tgz", 1402 - "integrity": "sha512-69sM5yrHfFLJt0AZ9QqZXGCPfJ7fQjvpln3Rq5+PS03LD32Ost1Q9N+eEnaQwGRIriKkMImXD56ocjQmfjbV3w==", 1403 - "dev": true, 1404 - "license": "MIT" 1405 - }, 1406 - "node_modules/diff": { 1407 - "version": "8.0.2", 1408 - "resolved": "https://registry.npmjs.org/diff/-/diff-8.0.2.tgz", 1409 - "integrity": "sha512-sSuxWU5j5SR9QQji/o2qMvqRNYRDOcBTgsJ/DeCf4iSN4gW+gNMXM7wFIP+fdXZxoNiAnHUTGjCr+TSWXdRDKg==", 1410 - "dev": true, 1411 - "license": "BSD-3-Clause", 1412 - "engines": { 1413 - "node": ">=0.3.1" 1414 - } 1415 - }, 1416 - "node_modules/entities": { 1417 - "version": "4.5.0", 1418 - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", 1419 - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", 1420 - "dev": true, 1421 - "license": "BSD-2-Clause", 1422 - "engines": { 1423 - "node": ">=0.12" 1424 - }, 1425 - "funding": { 1426 - "url": "https://github.com/fb55/entities?sponsor=1" 1427 - } 1428 - }, 1429 - "node_modules/esm-env": { 1430 - "version": "1.2.2", 1431 - "resolved": "https://registry.npmjs.org/esm-env/-/esm-env-1.2.2.tgz", 1432 - "integrity": "sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==", 1433 - "dev": true, 1434 - "license": "MIT" 1435 - }, 1436 - "node_modules/esrap": { 1437 - "version": "2.2.0", 1438 - "resolved": "https://registry.npmjs.org/esrap/-/esrap-2.2.0.tgz", 1439 - "integrity": "sha512-WBmtxe7R9C5mvL4n2le8nMUe4mD5V9oiK2vJpQ9I3y20ENPUomPcphBXE8D1x/Bm84oN1V+lOfgXxtqmxTp3Xg==", 1440 - "dev": true, 1441 - "license": "MIT", 1442 - "dependencies": { 1443 - "@jridgewell/sourcemap-codec": "^1.4.15" 1444 - } 1445 - }, 1446 - "node_modules/estree-walker": { 1447 - "version": "2.0.2", 1448 - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", 1449 - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", 1450 - "dev": true, 1451 - "license": "MIT" 1452 - }, 1453 - "node_modules/exsolve": { 1454 - "version": "1.0.8", 1455 - "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.8.tgz", 1456 - "integrity": "sha512-LmDxfWXwcTArk8fUEnOfSZpHOJ6zOMUJKOtFLFqJLoKJetuQG874Uc7/Kki7zFLzYybmZhp1M7+98pfMqeX8yA==", 1457 - "dev": true, 1458 - "license": "MIT" 1459 - }, 1460 - "node_modules/fast-deep-equal": { 1461 - "version": "3.1.3", 1462 - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 1463 - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", 1464 - "dev": true, 1465 - "license": "MIT" 1466 - }, 1467 - "node_modules/fdir": { 1468 - "version": "6.5.0", 1469 - "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", 1470 - "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", 1471 - "dev": true, 1472 - "license": "MIT", 1473 - "engines": { 1474 - "node": ">=12.0.0" 1475 - }, 1476 - "peerDependencies": { 1477 - "picomatch": "^3 || ^4" 1478 - }, 1479 - "peerDependenciesMeta": { 1480 - "picomatch": { 1481 - "optional": true 1482 - } 1483 - } 1484 - }, 1485 - "node_modules/fs-extra": { 1486 - "version": "11.3.2", 1487 - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.2.tgz", 1488 - "integrity": "sha512-Xr9F6z6up6Ws+NjzMCZc6WXg2YFRlrLP9NQDO3VQrWrfiojdhS56TzueT88ze0uBdCTwEIhQ3ptnmKeWGFAe0A==", 1489 - "dev": true, 1490 - "license": "MIT", 1491 - "dependencies": { 1492 - "graceful-fs": "^4.2.0", 1493 - "jsonfile": "^6.0.1", 1494 - "universalify": "^2.0.0" 1495 - }, 1496 - "engines": { 1497 - "node": ">=14.14" 1498 - } 1499 - }, 1500 - "node_modules/fsevents": { 1501 - "version": "2.3.3", 1502 - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", 1503 - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", 1504 - "dev": true, 1505 - "hasInstallScript": true, 1506 - "license": "MIT", 1507 - "optional": true, 1508 - "os": [ 1509 - "darwin" 1510 - ], 1511 - "engines": { 1512 - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" 1513 - } 1514 - }, 1515 - "node_modules/function-bind": { 1516 - "version": "1.1.2", 1517 - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", 1518 - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", 1519 - "dev": true, 1520 - "license": "MIT", 1521 - "funding": { 1522 - "url": "https://github.com/sponsors/ljharb" 1523 - } 1524 - }, 1525 - "node_modules/graceful-fs": { 1526 - "version": "4.2.11", 1527 - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", 1528 - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", 1529 - "dev": true, 1530 - "license": "ISC" 1531 - }, 1532 - "node_modules/has-flag": { 1533 - "version": "4.0.0", 1534 - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", 1535 - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", 1536 - "dev": true, 1537 - "license": "MIT", 1538 - "engines": { 1539 - "node": ">=8" 1540 - } 1541 - }, 1542 - "node_modules/hasown": { 1543 - "version": "2.0.2", 1544 - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", 1545 - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", 1546 - "dev": true, 1547 - "license": "MIT", 1548 - "dependencies": { 1549 - "function-bind": "^1.1.2" 1550 - }, 1551 - "engines": { 1552 - "node": ">= 0.4" 1553 - } 1554 - }, 1555 - "node_modules/he": { 1556 - "version": "1.2.0", 1557 - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", 1558 - "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", 1559 - "dev": true, 1560 - "license": "MIT", 1561 - "bin": { 1562 - "he": "bin/he" 1563 - } 1564 - }, 1565 - "node_modules/import-lazy": { 1566 - "version": "4.0.0", 1567 - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", 1568 - "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", 1569 - "dev": true, 1570 - "license": "MIT", 1571 - "engines": { 1572 - "node": ">=8" 1573 - } 1574 - }, 1575 - "node_modules/is-core-module": { 1576 - "version": "2.16.1", 1577 - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", 1578 - "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", 1579 - "dev": true, 1580 - "license": "MIT", 1581 - "dependencies": { 1582 - "hasown": "^2.0.2" 1583 - }, 1584 - "engines": { 1585 - "node": ">= 0.4" 1586 - }, 1587 - "funding": { 1588 - "url": "https://github.com/sponsors/ljharb" 1589 - } 1590 - }, 1591 - "node_modules/is-reference": { 1592 - "version": "3.0.3", 1593 - "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.3.tgz", 1594 - "integrity": "sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==", 1595 - "dev": true, 1596 - "license": "MIT", 1597 - "dependencies": { 1598 - "@types/estree": "^1.0.6" 1599 - } 1600 - }, 1601 - "node_modules/jju": { 1602 - "version": "1.4.0", 1603 - "resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz", 1604 - "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==", 1605 - "dev": true, 1606 - "license": "MIT" 1607 - }, 1608 - "node_modules/json-schema-traverse": { 1609 - "version": "1.0.0", 1610 - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", 1611 - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", 1612 - "dev": true, 1613 - "license": "MIT" 1614 - }, 1615 - "node_modules/jsonfile": { 1616 - "version": "6.2.0", 1617 - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", 1618 - "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", 1619 - "dev": true, 1620 - "license": "MIT", 1621 - "dependencies": { 1622 - "universalify": "^2.0.0" 1623 - }, 1624 - "optionalDependencies": { 1625 - "graceful-fs": "^4.1.6" 1626 - } 1627 - }, 1628 - "node_modules/kolorist": { 1629 - "version": "1.8.0", 1630 - "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", 1631 - "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==", 1632 - "dev": true, 1633 - "license": "MIT" 1634 - }, 1635 - "node_modules/lightningcss": { 1636 - "version": "1.30.2", 1637 - "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.30.2.tgz", 1638 - "integrity": "sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ==", 1639 - "dev": true, 1640 - "license": "MPL-2.0", 1641 - "dependencies": { 1642 - "detect-libc": "^2.0.3" 1643 - }, 1644 - "engines": { 1645 - "node": ">= 12.0.0" 1646 - }, 1647 - "funding": { 1648 - "type": "opencollective", 1649 - "url": "https://opencollective.com/parcel" 1650 - }, 1651 - "optionalDependencies": { 1652 - "lightningcss-android-arm64": "1.30.2", 1653 - "lightningcss-darwin-arm64": "1.30.2", 1654 - "lightningcss-darwin-x64": "1.30.2", 1655 - "lightningcss-freebsd-x64": "1.30.2", 1656 - "lightningcss-linux-arm-gnueabihf": "1.30.2", 1657 - "lightningcss-linux-arm64-gnu": "1.30.2", 1658 - "lightningcss-linux-arm64-musl": "1.30.2", 1659 - "lightningcss-linux-x64-gnu": "1.30.2", 1660 - "lightningcss-linux-x64-musl": "1.30.2", 1661 - "lightningcss-win32-arm64-msvc": "1.30.2", 1662 - "lightningcss-win32-x64-msvc": "1.30.2" 1663 - } 1664 - }, 1665 - "node_modules/lightningcss-android-arm64": { 1666 - "version": "1.30.2", 1667 - "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.30.2.tgz", 1668 - "integrity": "sha512-BH9sEdOCahSgmkVhBLeU7Hc9DWeZ1Eb6wNS6Da8igvUwAe0sqROHddIlvU06q3WyXVEOYDZ6ykBZQnjTbmo4+A==", 1669 - "cpu": [ 1670 - "arm64" 1671 - ], 1672 - "dev": true, 1673 - "license": "MPL-2.0", 1674 - "optional": true, 1675 - "os": [ 1676 - "android" 1677 - ], 1678 - "engines": { 1679 - "node": ">= 12.0.0" 1680 - }, 1681 - "funding": { 1682 - "type": "opencollective", 1683 - "url": "https://opencollective.com/parcel" 1684 - } 1685 - }, 1686 - "node_modules/lightningcss-darwin-arm64": { 1687 - "version": "1.30.2", 1688 - "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.30.2.tgz", 1689 - "integrity": "sha512-ylTcDJBN3Hp21TdhRT5zBOIi73P6/W0qwvlFEk22fkdXchtNTOU4Qc37SkzV+EKYxLouZ6M4LG9NfZ1qkhhBWA==", 1690 - "cpu": [ 1691 - "arm64" 1692 - ], 1693 - "dev": true, 1694 - "license": "MPL-2.0", 1695 - "optional": true, 1696 - "os": [ 1697 - "darwin" 1698 - ], 1699 - "engines": { 1700 - "node": ">= 12.0.0" 1701 - }, 1702 - "funding": { 1703 - "type": "opencollective", 1704 - "url": "https://opencollective.com/parcel" 1705 - } 1706 - }, 1707 - "node_modules/lightningcss-darwin-x64": { 1708 - "version": "1.30.2", 1709 - "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.30.2.tgz", 1710 - "integrity": "sha512-oBZgKchomuDYxr7ilwLcyms6BCyLn0z8J0+ZZmfpjwg9fRVZIR5/GMXd7r9RH94iDhld3UmSjBM6nXWM2TfZTQ==", 1711 - "cpu": [ 1712 - "x64" 1713 - ], 1714 - "dev": true, 1715 - "license": "MPL-2.0", 1716 - "optional": true, 1717 - "os": [ 1718 - "darwin" 1719 - ], 1720 - "engines": { 1721 - "node": ">= 12.0.0" 1722 - }, 1723 - "funding": { 1724 - "type": "opencollective", 1725 - "url": "https://opencollective.com/parcel" 1726 - } 1727 - }, 1728 - "node_modules/lightningcss-freebsd-x64": { 1729 - "version": "1.30.2", 1730 - "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.30.2.tgz", 1731 - "integrity": "sha512-c2bH6xTrf4BDpK8MoGG4Bd6zAMZDAXS569UxCAGcA7IKbHNMlhGQ89eRmvpIUGfKWNVdbhSbkQaWhEoMGmGslA==", 1732 - "cpu": [ 1733 - "x64" 1734 - ], 1735 - "dev": true, 1736 - "license": "MPL-2.0", 1737 - "optional": true, 1738 - "os": [ 1739 - "freebsd" 1740 - ], 1741 - "engines": { 1742 - "node": ">= 12.0.0" 1743 - }, 1744 - "funding": { 1745 - "type": "opencollective", 1746 - "url": "https://opencollective.com/parcel" 1747 - } 1748 - }, 1749 - "node_modules/lightningcss-linux-arm-gnueabihf": { 1750 - "version": "1.30.2", 1751 - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.30.2.tgz", 1752 - "integrity": "sha512-eVdpxh4wYcm0PofJIZVuYuLiqBIakQ9uFZmipf6LF/HRj5Bgm0eb3qL/mr1smyXIS1twwOxNWndd8z0E374hiA==", 1753 - "cpu": [ 1754 - "arm" 1755 - ], 1756 - "dev": true, 1757 - "license": "MPL-2.0", 1758 - "optional": true, 1759 - "os": [ 1760 - "linux" 1761 - ], 1762 - "engines": { 1763 - "node": ">= 12.0.0" 1764 - }, 1765 - "funding": { 1766 - "type": "opencollective", 1767 - "url": "https://opencollective.com/parcel" 1768 - } 1769 - }, 1770 - "node_modules/lightningcss-linux-arm64-gnu": { 1771 - "version": "1.30.2", 1772 - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.30.2.tgz", 1773 - "integrity": "sha512-UK65WJAbwIJbiBFXpxrbTNArtfuznvxAJw4Q2ZGlU8kPeDIWEX1dg3rn2veBVUylA2Ezg89ktszWbaQnxD/e3A==", 1774 - "cpu": [ 1775 - "arm64" 1776 - ], 1777 - "dev": true, 1778 - "license": "MPL-2.0", 1779 - "optional": true, 1780 - "os": [ 1781 - "linux" 1782 - ], 1783 - "engines": { 1784 - "node": ">= 12.0.0" 1785 - }, 1786 - "funding": { 1787 - "type": "opencollective", 1788 - "url": "https://opencollective.com/parcel" 1789 - } 1790 - }, 1791 - "node_modules/lightningcss-linux-arm64-musl": { 1792 - "version": "1.30.2", 1793 - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.30.2.tgz", 1794 - "integrity": "sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA==", 1795 - "cpu": [ 1796 - "arm64" 1797 - ], 1798 - "dev": true, 1799 - "license": "MPL-2.0", 1800 - "optional": true, 1801 - "os": [ 1802 - "linux" 1803 - ], 1804 - "engines": { 1805 - "node": ">= 12.0.0" 1806 - }, 1807 - "funding": { 1808 - "type": "opencollective", 1809 - "url": "https://opencollective.com/parcel" 1810 - } 1811 - }, 1812 - "node_modules/lightningcss-linux-x64-gnu": { 1813 - "version": "1.30.2", 1814 - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.30.2.tgz", 1815 - "integrity": "sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w==", 1816 - "cpu": [ 1817 - "x64" 1818 - ], 1819 - "dev": true, 1820 - "license": "MPL-2.0", 1821 - "optional": true, 1822 - "os": [ 1823 - "linux" 1824 - ], 1825 - "engines": { 1826 - "node": ">= 12.0.0" 1827 - }, 1828 - "funding": { 1829 - "type": "opencollective", 1830 - "url": "https://opencollective.com/parcel" 1831 - } 1832 - }, 1833 - "node_modules/lightningcss-linux-x64-musl": { 1834 - "version": "1.30.2", 1835 - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.30.2.tgz", 1836 - "integrity": "sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA==", 1837 - "cpu": [ 1838 - "x64" 1839 - ], 1840 - "dev": true, 1841 - "license": "MPL-2.0", 1842 - "optional": true, 1843 - "os": [ 1844 - "linux" 1845 - ], 1846 - "engines": { 1847 - "node": ">= 12.0.0" 1848 - }, 1849 - "funding": { 1850 - "type": "opencollective", 1851 - "url": "https://opencollective.com/parcel" 1852 - } 1853 - }, 1854 - "node_modules/lightningcss-win32-arm64-msvc": { 1855 - "version": "1.30.2", 1856 - "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.30.2.tgz", 1857 - "integrity": "sha512-FZn+vaj7zLv//D/192WFFVA0RgHawIcHqLX9xuWiQt7P0PtdFEVaxgF9rjM/IRYHQXNnk61/H/gb2Ei+kUQ4xQ==", 1858 - "cpu": [ 1859 - "arm64" 1860 - ], 1861 - "dev": true, 1862 - "license": "MPL-2.0", 1863 - "optional": true, 1864 - "os": [ 1865 - "win32" 1866 - ], 1867 - "engines": { 1868 - "node": ">= 12.0.0" 1869 - }, 1870 - "funding": { 1871 - "type": "opencollective", 1872 - "url": "https://opencollective.com/parcel" 1873 - } 1874 - }, 1875 - "node_modules/lightningcss-win32-x64-msvc": { 1876 - "version": "1.30.2", 1877 - "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.30.2.tgz", 1878 - "integrity": "sha512-5g1yc73p+iAkid5phb4oVFMB45417DkRevRbt/El/gKXJk4jid+vPFF/AXbxn05Aky8PapwzZrdJShv5C0avjw==", 1879 - "cpu": [ 1880 - "x64" 1881 - ], 1882 - "dev": true, 1883 - "license": "MPL-2.0", 1884 - "optional": true, 1885 - "os": [ 1886 - "win32" 1887 - ], 1888 - "engines": { 1889 - "node": ">= 12.0.0" 1890 - }, 1891 - "funding": { 1892 - "type": "opencollective", 1893 - "url": "https://opencollective.com/parcel" 1894 - } 1895 - }, 1896 - "node_modules/local-pkg": { 1897 - "version": "1.1.2", 1898 - "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.1.2.tgz", 1899 - "integrity": "sha512-arhlxbFRmoQHl33a0Zkle/YWlmNwoyt6QNZEIJcqNbdrsix5Lvc4HyyI3EnwxTYlZYc32EbYrQ8SzEZ7dqgg9A==", 1900 - "dev": true, 1901 - "license": "MIT", 1902 - "dependencies": { 1903 - "mlly": "^1.7.4", 1904 - "pkg-types": "^2.3.0", 1905 - "quansync": "^0.2.11" 1906 - }, 1907 - "engines": { 1908 - "node": ">=14" 1909 - }, 1910 - "funding": { 1911 - "url": "https://github.com/sponsors/antfu" 1912 - } 1913 - }, 1914 - "node_modules/locate-character": { 1915 - "version": "3.0.0", 1916 - "resolved": "https://registry.npmjs.org/locate-character/-/locate-character-3.0.0.tgz", 1917 - "integrity": "sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==", 1918 - "dev": true, 1919 - "license": "MIT" 1920 - }, 1921 - "node_modules/lodash": { 1922 - "version": "4.17.21", 1923 - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", 1924 - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", 1925 - "dev": true, 1926 - "license": "MIT" 1927 - }, 1928 - "node_modules/lru-cache": { 1929 - "version": "6.0.0", 1930 - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", 1931 - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", 1932 - "dev": true, 1933 - "license": "ISC", 1934 - "dependencies": { 1935 - "yallist": "^4.0.0" 1936 - }, 1937 - "engines": { 1938 - "node": ">=10" 1939 - } 1940 - }, 1941 - "node_modules/magic-string": { 1942 - "version": "0.30.21", 1943 - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", 1944 - "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", 1945 - "dev": true, 1946 - "license": "MIT", 1947 - "dependencies": { 1948 - "@jridgewell/sourcemap-codec": "^1.5.5" 1949 - } 1950 - }, 1951 - "node_modules/minimatch": { 1952 - "version": "10.0.3", 1953 - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.3.tgz", 1954 - "integrity": "sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==", 1955 - "dev": true, 1956 - "license": "ISC", 1957 - "dependencies": { 1958 - "@isaacs/brace-expansion": "^5.0.0" 1959 - }, 1960 - "engines": { 1961 - "node": "20 || >=22" 1962 - }, 1963 - "funding": { 1964 - "url": "https://github.com/sponsors/isaacs" 1965 - } 1966 - }, 1967 - "node_modules/mlly": { 1968 - "version": "1.8.0", 1969 - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.8.0.tgz", 1970 - "integrity": "sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==", 1971 - "dev": true, 1972 - "license": "MIT", 1973 - "dependencies": { 1974 - "acorn": "^8.15.0", 1975 - "pathe": "^2.0.3", 1976 - "pkg-types": "^1.3.1", 1977 - "ufo": "^1.6.1" 1978 - } 1979 - }, 1980 - "node_modules/mlly/node_modules/confbox": { 1981 - "version": "0.1.8", 1982 - "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", 1983 - "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", 1984 - "dev": true, 1985 - "license": "MIT" 1986 - }, 1987 - "node_modules/mlly/node_modules/pkg-types": { 1988 - "version": "1.3.1", 1989 - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz", 1990 - "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", 1991 - "dev": true, 1992 - "license": "MIT", 1993 - "dependencies": { 1994 - "confbox": "^0.1.8", 1995 - "mlly": "^1.7.4", 1996 - "pathe": "^2.0.1" 1997 - } 1998 - }, 1999 - "node_modules/mri": { 2000 - "version": "1.2.0", 2001 - "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz", 2002 - "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==", 2003 - "dev": true, 2004 - "license": "MIT", 2005 - "engines": { 2006 - "node": ">=4" 2007 - } 2008 - }, 2009 - "node_modules/ms": { 2010 - "version": "2.1.3", 2011 - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", 2012 - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", 2013 - "dev": true, 2014 - "license": "MIT" 2015 - }, 2016 - "node_modules/muggle-string": { 2017 - "version": "0.4.1", 2018 - "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.4.1.tgz", 2019 - "integrity": "sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==", 2020 - "dev": true, 2021 - "license": "MIT" 2022 - }, 2023 - "node_modules/nanoid": { 2024 - "version": "3.3.11", 2025 - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz", 2026 - "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==", 2027 - "dev": true, 2028 - "funding": [ 2029 - { 2030 - "type": "github", 2031 - "url": "https://github.com/sponsors/ai" 2032 - } 2033 - ], 2034 - "license": "MIT", 2035 - "bin": { 2036 - "nanoid": "bin/nanoid.cjs" 2037 - }, 2038 - "engines": { 2039 - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" 2040 - } 2041 - }, 2042 - "node_modules/path-browserify": { 2043 - "version": "1.0.1", 2044 - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", 2045 - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", 2046 - "dev": true, 2047 - "license": "MIT" 2048 - }, 2049 - "node_modules/path-parse": { 2050 - "version": "1.0.7", 2051 - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", 2052 - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", 2053 - "dev": true, 2054 - "license": "MIT" 2055 - }, 2056 - "node_modules/pathe": { 2057 - "version": "2.0.3", 2058 - "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", 2059 - "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", 2060 - "dev": true, 2061 - "license": "MIT" 2062 - }, 2063 - "node_modules/picocolors": { 2064 - "version": "1.1.1", 2065 - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", 2066 - "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", 2067 - "dev": true, 2068 - "license": "ISC" 2069 - }, 2070 - "node_modules/picomatch": { 2071 - "version": "4.0.3", 2072 - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", 2073 - "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", 2074 - "dev": true, 2075 - "license": "MIT", 2076 - "peer": true, 2077 - "engines": { 2078 - "node": ">=12" 2079 - }, 2080 - "funding": { 2081 - "url": "https://github.com/sponsors/jonschlinkert" 2082 - } 2083 - }, 2084 - "node_modules/pkg-types": { 2085 - "version": "2.3.0", 2086 - "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-2.3.0.tgz", 2087 - "integrity": "sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig==", 2088 - "dev": true, 2089 - "license": "MIT", 2090 - "dependencies": { 2091 - "confbox": "^0.2.2", 2092 - "exsolve": "^1.0.7", 2093 - "pathe": "^2.0.3" 2094 - } 2095 - }, 2096 - "node_modules/postcss": { 2097 - "version": "8.5.6", 2098 - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", 2099 - "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==", 2100 - "dev": true, 2101 - "funding": [ 2102 - { 2103 - "type": "opencollective", 2104 - "url": "https://opencollective.com/postcss/" 2105 - }, 2106 - { 2107 - "type": "tidelift", 2108 - "url": "https://tidelift.com/funding/github/npm/postcss" 2109 - }, 2110 - { 2111 - "type": "github", 2112 - "url": "https://github.com/sponsors/ai" 2113 - } 2114 - ], 2115 - "license": "MIT", 2116 - "dependencies": { 2117 - "nanoid": "^3.3.11", 2118 - "picocolors": "^1.1.1", 2119 - "source-map-js": "^1.2.1" 2120 - }, 2121 - "engines": { 2122 - "node": "^10 || ^12 || >=14" 2123 - } 2124 - }, 2125 - "node_modules/prettier": { 2126 - "version": "3.7.1", 2127 - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.7.1.tgz", 2128 - "integrity": "sha512-RWKXE4qB3u5Z6yz7omJkjWwmTfLdcbv44jUVHC5NpfXwFGzvpQM798FGv/6WNK879tc+Cn0AAyherCl1KjbyZQ==", 2129 - "dev": true, 2130 - "license": "MIT", 2131 - "bin": { 2132 - "prettier": "bin/prettier.cjs" 2133 - }, 2134 - "engines": { 2135 - "node": ">=14" 2136 - }, 2137 - "funding": { 2138 - "url": "https://github.com/prettier/prettier?sponsor=1" 2139 - } 2140 - }, 2141 - "node_modules/punycode": { 2142 - "version": "2.3.1", 2143 - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", 2144 - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", 2145 - "dev": true, 2146 - "license": "MIT", 2147 - "engines": { 2148 - "node": ">=6" 2149 - } 2150 - }, 2151 - "node_modules/quansync": { 2152 - "version": "0.2.11", 2153 - "resolved": "https://registry.npmjs.org/quansync/-/quansync-0.2.11.tgz", 2154 - "integrity": "sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==", 2155 - "dev": true, 2156 - "funding": [ 2157 - { 2158 - "type": "individual", 2159 - "url": "https://github.com/sponsors/antfu" 2160 - }, 2161 - { 2162 - "type": "individual", 2163 - "url": "https://github.com/sponsors/sxzz" 2164 - } 2165 - ], 2166 - "license": "MIT" 2167 - }, 2168 - "node_modules/readdirp": { 2169 - "version": "4.1.2", 2170 - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", 2171 - "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", 2172 - "dev": true, 2173 - "license": "MIT", 2174 - "engines": { 2175 - "node": ">= 14.18.0" 2176 - }, 2177 - "funding": { 2178 - "type": "individual", 2179 - "url": "https://paulmillr.com/funding/" 2180 - } 2181 - }, 2182 - "node_modules/require-from-string": { 2183 - "version": "2.0.2", 2184 - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", 2185 - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", 2186 - "dev": true, 2187 - "license": "MIT", 2188 - "engines": { 2189 - "node": ">=0.10.0" 2190 - } 2191 - }, 2192 - "node_modules/resolve": { 2193 - "version": "1.22.11", 2194 - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz", 2195 - "integrity": "sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==", 2196 - "dev": true, 2197 - "license": "MIT", 2198 - "dependencies": { 2199 - "is-core-module": "^2.16.1", 2200 - "path-parse": "^1.0.7", 2201 - "supports-preserve-symlinks-flag": "^1.0.0" 2202 - }, 2203 - "bin": { 2204 - "resolve": "bin/resolve" 2205 - }, 2206 - "engines": { 2207 - "node": ">= 0.4" 2208 - }, 2209 - "funding": { 2210 - "url": "https://github.com/sponsors/ljharb" 2211 - } 2212 - }, 2213 - "node_modules/rolldown": { 2214 - "version": "1.0.0-beta.50", 2215 - "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-beta.50.tgz", 2216 - "integrity": "sha512-JFULvCNl/anKn99eKjOSEubi0lLmNqQDAjyEMME2T4CwezUDL0i6t1O9xZsu2OMehPnV2caNefWpGF+8TnzB6A==", 2217 - "dev": true, 2218 - "license": "MIT", 2219 - "dependencies": { 2220 - "@oxc-project/types": "=0.97.0", 2221 - "@rolldown/pluginutils": "1.0.0-beta.50" 2222 - }, 2223 - "bin": { 2224 - "rolldown": "bin/cli.mjs" 2225 - }, 2226 - "engines": { 2227 - "node": "^20.19.0 || >=22.12.0" 2228 - }, 2229 - "optionalDependencies": { 2230 - "@rolldown/binding-android-arm64": "1.0.0-beta.50", 2231 - "@rolldown/binding-darwin-arm64": "1.0.0-beta.50", 2232 - "@rolldown/binding-darwin-x64": "1.0.0-beta.50", 2233 - "@rolldown/binding-freebsd-x64": "1.0.0-beta.50", 2234 - "@rolldown/binding-linux-arm-gnueabihf": "1.0.0-beta.50", 2235 - "@rolldown/binding-linux-arm64-gnu": "1.0.0-beta.50", 2236 - "@rolldown/binding-linux-arm64-musl": "1.0.0-beta.50", 2237 - "@rolldown/binding-linux-x64-gnu": "1.0.0-beta.50", 2238 - "@rolldown/binding-linux-x64-musl": "1.0.0-beta.50", 2239 - "@rolldown/binding-openharmony-arm64": "1.0.0-beta.50", 2240 - "@rolldown/binding-wasm32-wasi": "1.0.0-beta.50", 2241 - "@rolldown/binding-win32-arm64-msvc": "1.0.0-beta.50", 2242 - "@rolldown/binding-win32-ia32-msvc": "1.0.0-beta.50", 2243 - "@rolldown/binding-win32-x64-msvc": "1.0.0-beta.50" 2244 - } 2245 - }, 2246 - "node_modules/sade": { 2247 - "version": "1.8.1", 2248 - "resolved": "https://registry.npmjs.org/sade/-/sade-1.8.1.tgz", 2249 - "integrity": "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==", 2250 - "dev": true, 2251 - "license": "MIT", 2252 - "dependencies": { 2253 - "mri": "^1.1.0" 2254 - }, 2255 - "engines": { 2256 - "node": ">=6" 2257 - } 2258 - }, 2259 - "node_modules/semver": { 2260 - "version": "7.5.4", 2261 - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", 2262 - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", 2263 - "dev": true, 2264 - "license": "ISC", 2265 - "dependencies": { 2266 - "lru-cache": "^6.0.0" 2267 - }, 2268 - "bin": { 2269 - "semver": "bin/semver.js" 2270 - }, 2271 - "engines": { 2272 - "node": ">=10" 2273 - } 2274 - }, 2275 - "node_modules/source-map": { 2276 - "version": "0.6.1", 2277 - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 2278 - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 2279 - "dev": true, 2280 - "license": "BSD-3-Clause", 2281 - "engines": { 2282 - "node": ">=0.10.0" 2283 - } 2284 - }, 2285 - "node_modules/source-map-js": { 2286 - "version": "1.2.1", 2287 - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", 2288 - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", 2289 - "dev": true, 2290 - "license": "BSD-3-Clause", 2291 - "engines": { 2292 - "node": ">=0.10.0" 2293 - } 2294 - }, 2295 - "node_modules/sprintf-js": { 2296 - "version": "1.0.3", 2297 - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 2298 - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", 2299 - "dev": true, 2300 - "license": "BSD-3-Clause" 2301 - }, 2302 - "node_modules/string-argv": { 2303 - "version": "0.3.2", 2304 - "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", 2305 - "integrity": "sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==", 2306 - "dev": true, 2307 - "license": "MIT", 2308 - "engines": { 2309 - "node": ">=0.6.19" 2310 - } 2311 - }, 2312 - "node_modules/strip-json-comments": { 2313 - "version": "3.1.1", 2314 - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", 2315 - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", 2316 - "dev": true, 2317 - "license": "MIT", 2318 - "engines": { 2319 - "node": ">=8" 2320 - }, 2321 - "funding": { 2322 - "url": "https://github.com/sponsors/sindresorhus" 2323 - } 2324 - }, 2325 - "node_modules/supports-color": { 2326 - "version": "8.1.1", 2327 - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", 2328 - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", 2329 - "dev": true, 2330 - "license": "MIT", 2331 - "dependencies": { 2332 - "has-flag": "^4.0.0" 2333 - }, 2334 - "engines": { 2335 - "node": ">=10" 2336 - }, 2337 - "funding": { 2338 - "url": "https://github.com/chalk/supports-color?sponsor=1" 2339 - } 2340 - }, 2341 - "node_modules/supports-preserve-symlinks-flag": { 2342 - "version": "1.0.0", 2343 - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", 2344 - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", 2345 - "dev": true, 2346 - "license": "MIT", 2347 - "engines": { 2348 - "node": ">= 0.4" 2349 - }, 2350 - "funding": { 2351 - "url": "https://github.com/sponsors/ljharb" 2352 - } 2353 - }, 2354 - "node_modules/svelte": { 2355 - "version": "5.45.2", 2356 - "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.45.2.tgz", 2357 - "integrity": "sha512-yyXdW2u3H0H/zxxWoGwJoQlRgaSJLp+Vhktv12iRw2WRDlKqUPT54Fi0K/PkXqrdkcQ98aBazpy0AH4BCBVfoA==", 2358 - "dev": true, 2359 - "license": "MIT", 2360 - "peer": true, 2361 - "dependencies": { 2362 - "@jridgewell/remapping": "^2.3.4", 2363 - "@jridgewell/sourcemap-codec": "^1.5.0", 2364 - "@sveltejs/acorn-typescript": "^1.0.5", 2365 - "@types/estree": "^1.0.5", 2366 - "acorn": "^8.12.1", 2367 - "aria-query": "^5.3.1", 2368 - "axobject-query": "^4.1.0", 2369 - "clsx": "^2.1.1", 2370 - "devalue": "^5.5.0", 2371 - "esm-env": "^1.2.1", 2372 - "esrap": "^2.2.0", 2373 - "is-reference": "^3.0.3", 2374 - "locate-character": "^3.0.0", 2375 - "magic-string": "^0.30.11", 2376 - "zimmerframe": "^1.1.2" 2377 - }, 2378 - "engines": { 2379 - "node": ">=18" 2380 - } 2381 - }, 2382 - "node_modules/svelte-check": { 2383 - "version": "4.3.4", 2384 - "resolved": "https://registry.npmjs.org/svelte-check/-/svelte-check-4.3.4.tgz", 2385 - "integrity": "sha512-DVWvxhBrDsd+0hHWKfjP99lsSXASeOhHJYyuKOFYJcP7ThfSCKgjVarE8XfuMWpS5JV3AlDf+iK1YGGo2TACdw==", 2386 - "dev": true, 2387 - "license": "MIT", 2388 - "dependencies": { 2389 - "@jridgewell/trace-mapping": "^0.3.25", 2390 - "chokidar": "^4.0.1", 2391 - "fdir": "^6.2.0", 2392 - "picocolors": "^1.0.0", 2393 - "sade": "^1.7.4" 2394 - }, 2395 - "bin": { 2396 - "svelte-check": "bin/svelte-check" 2397 - }, 2398 - "engines": { 2399 - "node": ">= 18.0.0" 2400 - }, 2401 - "peerDependencies": { 2402 - "svelte": "^4.0.0 || ^5.0.0-next.0", 2403 - "typescript": ">=5.0.0" 2404 - } 2405 - }, 2406 - "node_modules/tinyglobby": { 2407 - "version": "0.2.15", 2408 - "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", 2409 - "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", 2410 - "dev": true, 2411 - "license": "MIT", 2412 - "dependencies": { 2413 - "fdir": "^6.5.0", 2414 - "picomatch": "^4.0.3" 2415 - }, 2416 - "engines": { 2417 - "node": ">=12.0.0" 2418 - }, 2419 - "funding": { 2420 - "url": "https://github.com/sponsors/SuperchupuDev" 2421 - } 2422 - }, 2423 - "node_modules/tslib": { 2424 - "version": "2.8.1", 2425 - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", 2426 - "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", 2427 - "dev": true, 2428 - "license": "0BSD", 2429 - "optional": true 2430 - }, 2431 - "node_modules/typescript": { 2432 - "version": "5.9.3", 2433 - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", 2434 - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", 2435 - "dev": true, 2436 - "license": "Apache-2.0", 2437 - "peer": true, 2438 - "bin": { 2439 - "tsc": "bin/tsc", 2440 - "tsserver": "bin/tsserver" 2441 - }, 2442 - "engines": { 2443 - "node": ">=14.17" 2444 - } 2445 - }, 2446 - "node_modules/ufo": { 2447 - "version": "1.6.1", 2448 - "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.1.tgz", 2449 - "integrity": "sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==", 2450 - "dev": true, 2451 - "license": "MIT" 2452 - }, 2453 - "node_modules/undici-types": { 2454 - "version": "7.16.0", 2455 - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", 2456 - "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", 2457 - "dev": true, 2458 - "license": "MIT" 2459 - }, 2460 - "node_modules/universalify": { 2461 - "version": "2.0.1", 2462 - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", 2463 - "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", 2464 - "dev": true, 2465 - "license": "MIT", 2466 - "engines": { 2467 - "node": ">= 10.0.0" 2468 - } 2469 - }, 2470 - "node_modules/uri-js": { 2471 - "version": "4.4.1", 2472 - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", 2473 - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", 2474 - "dev": true, 2475 - "license": "BSD-2-Clause", 2476 - "dependencies": { 2477 - "punycode": "^2.1.0" 2478 - } 2479 - }, 2480 - "node_modules/vite": { 2481 - "name": "rolldown-vite", 2482 - "version": "7.2.5", 2483 - "resolved": "https://registry.npmjs.org/rolldown-vite/-/rolldown-vite-7.2.5.tgz", 2484 - "integrity": "sha512-u09tdk/huMiN8xwoiBbig197jKdCamQTtOruSalOzbqGje3jdHiV0njQlAW0YvzoahkirFePNQ4RYlfnRQpXZA==", 2485 - "dev": true, 2486 - "license": "MIT", 2487 - "peer": true, 2488 - "dependencies": { 2489 - "@oxc-project/runtime": "0.97.0", 2490 - "fdir": "^6.5.0", 2491 - "lightningcss": "^1.30.2", 2492 - "picomatch": "^4.0.3", 2493 - "postcss": "^8.5.6", 2494 - "rolldown": "1.0.0-beta.50", 2495 - "tinyglobby": "^0.2.15" 2496 - }, 2497 - "bin": { 2498 - "vite": "bin/vite.js" 2499 - }, 2500 - "engines": { 2501 - "node": "^20.19.0 || >=22.12.0" 2502 - }, 2503 - "funding": { 2504 - "url": "https://github.com/vitejs/vite?sponsor=1" 2505 - }, 2506 - "optionalDependencies": { 2507 - "fsevents": "~2.3.3" 2508 - }, 2509 - "peerDependencies": { 2510 - "@types/node": "^20.19.0 || >=22.12.0", 2511 - "esbuild": "^0.25.0", 2512 - "jiti": ">=1.21.0", 2513 - "less": "^4.0.0", 2514 - "sass": "^1.70.0", 2515 - "sass-embedded": "^1.70.0", 2516 - "stylus": ">=0.54.8", 2517 - "sugarss": "^5.0.0", 2518 - "terser": "^5.16.0", 2519 - "tsx": "^4.8.1", 2520 - "yaml": "^2.4.2" 2521 - }, 2522 - "peerDependenciesMeta": { 2523 - "@types/node": { 2524 - "optional": true 2525 - }, 2526 - "esbuild": { 2527 - "optional": true 2528 - }, 2529 - "jiti": { 2530 - "optional": true 2531 - }, 2532 - "less": { 2533 - "optional": true 2534 - }, 2535 - "sass": { 2536 - "optional": true 2537 - }, 2538 - "sass-embedded": { 2539 - "optional": true 2540 - }, 2541 - "stylus": { 2542 - "optional": true 2543 - }, 2544 - "sugarss": { 2545 - "optional": true 2546 - }, 2547 - "terser": { 2548 - "optional": true 2549 - }, 2550 - "tsx": { 2551 - "optional": true 2552 - }, 2553 - "yaml": { 2554 - "optional": true 2555 - } 2556 - } 2557 - }, 2558 - "node_modules/vite-plugin-dts": { 2559 - "version": "4.5.4", 2560 - "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-4.5.4.tgz", 2561 - "integrity": "sha512-d4sOM8M/8z7vRXHHq/ebbblfaxENjogAAekcfcDCCwAyvGqnPrc7f4NZbvItS+g4WTgerW0xDwSz5qz11JT3vg==", 2562 - "dev": true, 2563 - "license": "MIT", 2564 - "dependencies": { 2565 - "@microsoft/api-extractor": "^7.50.1", 2566 - "@rollup/pluginutils": "^5.1.4", 2567 - "@volar/typescript": "^2.4.11", 2568 - "@vue/language-core": "2.2.0", 2569 - "compare-versions": "^6.1.1", 2570 - "debug": "^4.4.0", 2571 - "kolorist": "^1.8.0", 2572 - "local-pkg": "^1.0.0", 2573 - "magic-string": "^0.30.17" 2574 - }, 2575 - "peerDependencies": { 2576 - "typescript": "*", 2577 - "vite": "*" 2578 - }, 2579 - "peerDependenciesMeta": { 2580 - "vite": { 2581 - "optional": true 2582 - } 2583 - } 2584 - }, 2585 - "node_modules/vitefu": { 2586 - "version": "1.1.1", 2587 - "resolved": "https://registry.npmjs.org/vitefu/-/vitefu-1.1.1.tgz", 2588 - "integrity": "sha512-B/Fegf3i8zh0yFbpzZ21amWzHmuNlLlmJT6n7bu5e+pCHUKQIfXSYokrqOBGEMMe9UG2sostKQF9mml/vYaWJQ==", 2589 - "dev": true, 2590 - "license": "MIT", 2591 - "workspaces": [ 2592 - "tests/deps/*", 2593 - "tests/projects/*", 2594 - "tests/projects/workspace/packages/*" 2595 - ], 2596 - "peerDependencies": { 2597 - "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0-beta.0" 2598 - }, 2599 - "peerDependenciesMeta": { 2600 - "vite": { 2601 - "optional": true 2602 - } 2603 - } 2604 - }, 2605 - "node_modules/vscode-uri": { 2606 - "version": "3.1.0", 2607 - "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.1.0.tgz", 2608 - "integrity": "sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==", 2609 - "dev": true, 2610 - "license": "MIT" 2611 - }, 2612 - "node_modules/yallist": { 2613 - "version": "4.0.0", 2614 - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", 2615 - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", 2616 - "dev": true, 2617 - "license": "ISC" 2618 - }, 2619 - "node_modules/zimmerframe": { 2620 - "version": "1.1.4", 2621 - "resolved": "https://registry.npmjs.org/zimmerframe/-/zimmerframe-1.1.4.tgz", 2622 - "integrity": "sha512-B58NGBEoc8Y9MWWCQGl/gq9xBCe4IiKM0a2x7GZdQKOW5Exr8S1W24J6OgM1njK8xCRGvAJIL/MxXHf6SkmQKQ==", 2623 - "dev": true, 2624 - "license": "MIT" 2625 - } 2626 - } 2627 - }
+1704
pnpm-lock.yaml
··· 1 + lockfileVersion: '9.0' 2 + 3 + settings: 4 + autoInstallPeers: true 5 + excludeLinksFromLockfile: false 6 + 7 + importers: 8 + 9 + .: 10 + dependencies: 11 + actor-typeahead: 12 + specifier: ^0.1.2 13 + version: 0.1.2 14 + devDependencies: 15 + '@atcute/atproto': 16 + specifier: ^3.1.9 17 + version: 3.1.9 18 + '@atcute/client': 19 + specifier: ^4.1.0 20 + version: 4.1.1 21 + '@atcute/identity-resolver': 22 + specifier: ^1.1.4 23 + version: 1.2.0(@atcute/identity@1.1.3) 24 + '@atcute/lex-cli': 25 + specifier: ^2.5.0 26 + version: 2.5.2 27 + '@atcute/lexicon-doc': 28 + specifier: ^2.0.4 29 + version: 2.0.5 30 + '@atcute/oauth-browser-client': 31 + specifier: ^2.0.1 32 + version: 2.0.3(@atcute/identity@1.1.3) 33 + '@sveltejs/vite-plugin-svelte': 34 + specifier: ^6.2.1 35 + version: 6.2.1(rolldown-vite@7.2.5(@types/node@24.10.4))(svelte@5.46.0) 36 + '@tsconfig/svelte': 37 + specifier: ^5.0.6 38 + version: 5.0.6 39 + '@types/node': 40 + specifier: ^24.10.1 41 + version: 24.10.4 42 + svelte: 43 + specifier: ^5.43.8 44 + version: 5.46.0 45 + svelte-check: 46 + specifier: ^4.3.4 47 + version: 4.3.5(picomatch@4.0.3)(svelte@5.46.0)(typescript@5.9.3) 48 + typescript: 49 + specifier: ~5.9.3 50 + version: 5.9.3 51 + vite: 52 + specifier: npm:rolldown-vite@7.2.5 53 + version: rolldown-vite@7.2.5(@types/node@24.10.4) 54 + vite-plugin-dts: 55 + specifier: ^4.5.4 56 + version: 4.5.4(@types/node@24.10.4)(rolldown-vite@7.2.5(@types/node@24.10.4))(typescript@5.9.3) 57 + 58 + packages: 59 + 60 + '@atcute/atproto@3.1.9': 61 + resolution: {integrity: sha512-DyWwHCTdR4hY2BPNbLXgVmm7lI+fceOwWbE4LXbGvbvVtSn+ejSVFaAv01Ra3kWDha0whsOmbJL8JP0QPpf1+w==} 62 + 63 + '@atcute/car@5.0.0': 64 + resolution: {integrity: sha512-OIY2xTXv8lSpZsDSn/UYQtJSMvDw5Hi4Q+uyvmiqSM+fht08QRAEq/nxa5YFciPZ3nfDFnZ3//EgJw7QhkSXLQ==} 65 + 66 + '@atcute/cbor@2.2.8': 67 + resolution: {integrity: sha512-UzOAN9BuN6JCXgn0ryV8qZuRJUDrNqrbLd6EFM8jc6RYssjRyGRxNy6RZ1NU/07Hd8Tq/0pz8+nQiMu5Zai5uw==} 68 + 69 + '@atcute/cid@2.2.6': 70 + resolution: {integrity: sha512-bTAHHbJ24p+E//V4KCS4xdmd39o211jJswvqQOevj7vk+5IYcgDLx1ryZWZ1sEPOo9x875li/kj5gpKL14RDwQ==} 71 + 72 + '@atcute/client@4.1.1': 73 + resolution: {integrity: sha512-FROCbTTCeL5u4tO/n72jDEKyKqjdlXMB56Ehve3W/gnnLGCYWvN42sS7tvL1Mgu6sbO3yZwsXKDrmM2No4XpjA==} 74 + 75 + '@atcute/crypto@2.3.0': 76 + resolution: {integrity: sha512-w5pkJKCjbNMQu+F4JRHbR3ROQyhi1wbn+GSC6WDQamcYHkZmEZk1/eoI354bIQOOfkEM6aFLv718iskrkon4GQ==} 77 + 78 + '@atcute/identity-resolver@1.2.0': 79 + resolution: {integrity: sha512-5UbSJfdV3JIkF8ksXz7g4nKBWasf2wROvzM66cfvTIWydWFO6/oS1KZd+zo9Eokje5Scf5+jsY9ZfgVARLepXg==} 80 + peerDependencies: 81 + '@atcute/identity': ^1.0.0 82 + 83 + '@atcute/identity@1.1.3': 84 + resolution: {integrity: sha512-oIqPoI8TwWeQxvcLmFEZLdN2XdWcaLVtlm8pNk0E72As9HNzzD9pwKPrLr3rmTLRIoULPPFmq9iFNsTeCIU9ng==} 85 + 86 + '@atcute/lex-cli@2.5.2': 87 + resolution: {integrity: sha512-u3xeu7uF7mAgAErYpXvdUaH2bxpthGWLg+vUf20cejWZHBH/dAzL4ixLRjw/39WwoVmmCQDTde79WTPoBjuhpg==} 88 + hasBin: true 89 + 90 + '@atcute/lexicon-doc@2.0.5': 91 + resolution: {integrity: sha512-fNCp94ehGjWFZMIqP6pWD1F9MOJogNCyqsaMVZluPSIclZ+lDL528iXB56aW4u0eSiD6Y9WJB1OI/lElG39cSA==} 92 + 93 + '@atcute/lexicon-resolver@0.1.5': 94 + resolution: {integrity: sha512-0bx1/zdMQPuxvRcHW6ykAxRxktC2rEZLoAVSFoLSWDAA92Tf09F9QPK5wgXSF4MNODm1dvzMEdWSMIvlg8sr3A==} 95 + peerDependencies: 96 + '@atcute/identity': ^1.1.0 97 + '@atcute/identity-resolver': ^1.1.3 98 + 99 + '@atcute/lexicons@1.2.5': 100 + resolution: {integrity: sha512-9yO9WdgxW8jZ7SbzUycH710z+JmsQ9W9n5S6i6eghYju32kkluFmgBeS47r8e8p2+Dv4DemS7o/3SUGsX9FR5Q==} 101 + 102 + '@atcute/mst@0.1.0': 103 + resolution: {integrity: sha512-h+iDToKEnBpigk2DOHjSqY63vJtjYKUIztqu1CZ0P+I54wV2SrgoqAXAT1xrW6A1Iup8cjTv+U2H5WVG4KxPLw==} 104 + 105 + '@atcute/multibase@1.1.6': 106 + resolution: {integrity: sha512-HBxuCgYLKPPxETV0Rot4VP9e24vKl8JdzGCZOVsDaOXJgbRZoRIF67Lp0H/OgnJeH/Xpva8Z5ReoTNJE5dn3kg==} 107 + 108 + '@atcute/oauth-browser-client@2.0.3': 109 + resolution: {integrity: sha512-rzUjwhjE4LRRKdQnCFQag/zXRZMEAB1hhBoLfnoQuHwWbmDUCL7fzwC3jRhDPp3om8XaYNDj8a/iqRip0wRqoQ==} 110 + 111 + '@atcute/repo@0.1.0': 112 + resolution: {integrity: sha512-INiYAuma8dydBu7cqd2WVpcXh3mzhIepYBUqFWAK5MqMulPRLTRCc/9GW3G9pxYrOdlvLCVamG2Jf8XK0nuFEw==} 113 + 114 + '@atcute/uint8array@1.0.6': 115 + resolution: {integrity: sha512-ucfRBQc7BFT8n9eCyGOzDHEMKF/nZwhS2pPao4Xtab1ML3HdFYcX2DM1tadCzas85QTGxHe5urnUAAcNKGRi9A==} 116 + 117 + '@atcute/util-fetch@1.0.4': 118 + resolution: {integrity: sha512-sIU9Qk0dE8PLEXSfhy+gIJV+HpiiknMytCI2SqLlqd0vgZUtEKI/EQfP+23LHWvP+CLCzVDOa6cpH045OlmNBg==} 119 + 120 + '@atcute/varint@1.0.3': 121 + resolution: {integrity: sha512-fdvMPyBB+McDT+Ai5e9RwEbwYV4yjZ60S2Dn5PTjGqUyxvoCH1z42viuheDZRUDkmfQehXJTZ5az7dSozVNtog==} 122 + 123 + '@babel/helper-string-parser@7.27.1': 124 + resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} 125 + engines: {node: '>=6.9.0'} 126 + 127 + '@babel/helper-validator-identifier@7.28.5': 128 + resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} 129 + engines: {node: '>=6.9.0'} 130 + 131 + '@babel/parser@7.28.5': 132 + resolution: {integrity: sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==} 133 + engines: {node: '>=6.0.0'} 134 + hasBin: true 135 + 136 + '@babel/types@7.28.5': 137 + resolution: {integrity: sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==} 138 + engines: {node: '>=6.9.0'} 139 + 140 + '@badrap/valita@0.4.6': 141 + resolution: {integrity: sha512-4kdqcjyxo/8RQ8ayjms47HCWZIF5981oE5nIenbfThKDxWXtEHKipAOWlflpPJzZx9y/JWYQkp18Awr7VuepFg==} 142 + engines: {node: '>= 18'} 143 + 144 + '@emnapi/core@1.7.1': 145 + resolution: {integrity: sha512-o1uhUASyo921r2XtHYOHy7gdkGLge8ghBEQHMWmyJFoXlpU58kIrhhN3w26lpQb6dspetweapMn2CSNwQ8I4wg==} 146 + 147 + '@emnapi/runtime@1.7.1': 148 + resolution: {integrity: sha512-PVtJr5CmLwYAU9PZDMITZoR5iAOShYREoR45EyyLrbntV50mdePTgUn4AmOw90Ifcj+x2kRjdzr1HP3RrNiHGA==} 149 + 150 + '@emnapi/wasi-threads@1.1.0': 151 + resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==} 152 + 153 + '@isaacs/balanced-match@4.0.1': 154 + resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==} 155 + engines: {node: 20 || >=22} 156 + 157 + '@isaacs/brace-expansion@5.0.0': 158 + resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==} 159 + engines: {node: 20 || >=22} 160 + 161 + '@jridgewell/gen-mapping@0.3.13': 162 + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} 163 + 164 + '@jridgewell/remapping@2.3.5': 165 + resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} 166 + 167 + '@jridgewell/resolve-uri@3.1.2': 168 + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 169 + engines: {node: '>=6.0.0'} 170 + 171 + '@jridgewell/sourcemap-codec@1.5.5': 172 + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} 173 + 174 + '@jridgewell/trace-mapping@0.3.31': 175 + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} 176 + 177 + '@microsoft/api-extractor-model@7.32.2': 178 + resolution: {integrity: sha512-Ussc25rAalc+4JJs9HNQE7TuO9y6jpYQX9nWD1DhqUzYPBr3Lr7O9intf+ZY8kD5HnIqeIRJX7ccCT0QyBy2Ww==} 179 + 180 + '@microsoft/api-extractor@7.55.2': 181 + resolution: {integrity: sha512-1jlWO4qmgqYoVUcyh+oXYRztZde/pAi7cSVzBz/rc+S7CoVzDasy8QE13dx6sLG4VRo8SfkkLbFORR6tBw4uGQ==} 182 + hasBin: true 183 + 184 + '@microsoft/tsdoc-config@0.18.0': 185 + resolution: {integrity: sha512-8N/vClYyfOH+l4fLkkr9+myAoR6M7akc8ntBJ4DJdWH2b09uVfr71+LTMpNyG19fNqWDg8KEDZhx5wxuqHyGjw==} 186 + 187 + '@microsoft/tsdoc@0.16.0': 188 + resolution: {integrity: sha512-xgAyonlVVS+q7Vc7qLW0UrJU7rSFcETRWsqdXZtjzRU8dF+6CkozTK4V4y1LwOX7j8r/vHphjDeMeGI4tNGeGA==} 189 + 190 + '@napi-rs/wasm-runtime@1.1.0': 191 + resolution: {integrity: sha512-Fq6DJW+Bb5jaWE69/qOE0D1TUN9+6uWhCeZpdnSBk14pjLcCWR7Q8n49PTSPHazM37JqrsdpEthXy2xn6jWWiA==} 192 + 193 + '@noble/secp256k1@3.0.0': 194 + resolution: {integrity: sha512-NJBaR352KyIvj3t6sgT/+7xrNyF9Xk9QlLSIqUGVUYlsnDTAUqY8LOmwpcgEx4AMJXRITQ5XEVHD+mMaPfr3mg==} 195 + 196 + '@optique/core@0.6.5': 197 + resolution: {integrity: sha512-H3O//t/qxq7GT+25oLi4mXyxB/PccTcj+0P4HcboDcTnAN7gcTgoxvAugaHExw9s7WrVOlRQRZuYXseKtU/cyw==} 198 + engines: {bun: '>=1.2.0', deno: '>=2.3.0', node: '>=20.0.0'} 199 + 200 + '@optique/run@0.6.5': 201 + resolution: {integrity: sha512-dJTfcNXRWM+dmGxbeTFNDt/cf3v92wNYcJVZUu+FqwNXD5lX/koWeMIGwT0eoJegGPWvzpCVRb0CVjc+b/AUbQ==} 202 + engines: {bun: '>=1.2.0', deno: '>=2.3.0', node: '>=20.0.0'} 203 + 204 + '@oxc-project/runtime@0.97.0': 205 + resolution: {integrity: sha512-yH0zw7z+jEws4dZ4IUKoix5Lh3yhqIJWF9Dc8PWvhpo7U7O+lJrv7ZZL4BeRO0la8LBQFwcCewtLBnVV7hPe/w==} 206 + engines: {node: ^20.19.0 || >=22.12.0} 207 + 208 + '@oxc-project/types@0.97.0': 209 + resolution: {integrity: sha512-lxmZK4xFrdvU0yZiDwgVQTCvh2gHWBJCBk5ALsrtsBWhs0uDIi+FTOnXRQeQfs304imdvTdaakT/lqwQ8hkOXQ==} 210 + 211 + '@rolldown/binding-android-arm64@1.0.0-beta.50': 212 + resolution: {integrity: sha512-XlEkrOIHLyGT3avOgzfTFSjG+f+dZMw+/qd+Y3HLN86wlndrB/gSimrJCk4gOhr1XtRtEKfszpadI3Md4Z4/Ag==} 213 + engines: {node: ^20.19.0 || >=22.12.0} 214 + cpu: [arm64] 215 + os: [android] 216 + 217 + '@rolldown/binding-darwin-arm64@1.0.0-beta.50': 218 + resolution: {integrity: sha512-+JRqKJhoFlt5r9q+DecAGPLZ5PxeLva+wCMtAuoFMWPoZzgcYrr599KQ+Ix0jwll4B4HGP43avu9My8KtSOR+w==} 219 + engines: {node: ^20.19.0 || >=22.12.0} 220 + cpu: [arm64] 221 + os: [darwin] 222 + 223 + '@rolldown/binding-darwin-x64@1.0.0-beta.50': 224 + resolution: {integrity: sha512-fFXDjXnuX7/gQZQm/1FoivVtRcyAzdjSik7Eo+9iwPQ9EgtA5/nB2+jmbzaKtMGG3q+BnZbdKHCtOacmNrkIDA==} 225 + engines: {node: ^20.19.0 || >=22.12.0} 226 + cpu: [x64] 227 + os: [darwin] 228 + 229 + '@rolldown/binding-freebsd-x64@1.0.0-beta.50': 230 + resolution: {integrity: sha512-F1b6vARy49tjmT/hbloplzgJS7GIvwWZqt+tAHEstCh0JIh9sa8FAMVqEmYxDviqKBaAI8iVvUREm/Kh/PD26Q==} 231 + engines: {node: ^20.19.0 || >=22.12.0} 232 + cpu: [x64] 233 + os: [freebsd] 234 + 235 + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.50': 236 + resolution: {integrity: sha512-U6cR76N8T8M6lHj7EZrQ3xunLPxSvYYxA8vJsBKZiFZkT8YV4kjgCO3KwMJL0NOjQCPGKyiXO07U+KmJzdPGRw==} 237 + engines: {node: ^20.19.0 || >=22.12.0} 238 + cpu: [arm] 239 + os: [linux] 240 + 241 + '@rolldown/binding-linux-arm64-gnu@1.0.0-beta.50': 242 + resolution: {integrity: sha512-ONgyjofCrrE3bnh5GZb8EINSFyR/hmwTzZ7oVuyUB170lboza1VMCnb8jgE6MsyyRgHYmN8Lb59i3NKGrxrYjw==} 243 + engines: {node: ^20.19.0 || >=22.12.0} 244 + cpu: [arm64] 245 + os: [linux] 246 + 247 + '@rolldown/binding-linux-arm64-musl@1.0.0-beta.50': 248 + resolution: {integrity: sha512-L0zRdH2oDPkmB+wvuTl+dJbXCsx62SkqcEqdM+79LOcB+PxbAxxjzHU14BuZIQdXcAVDzfpMfaHWzZuwhhBTcw==} 249 + engines: {node: ^20.19.0 || >=22.12.0} 250 + cpu: [arm64] 251 + os: [linux] 252 + 253 + '@rolldown/binding-linux-x64-gnu@1.0.0-beta.50': 254 + resolution: {integrity: sha512-gyoI8o/TGpQd3OzkJnh1M2kxy1Bisg8qJ5Gci0sXm9yLFzEXIFdtc4EAzepxGvrT2ri99ar5rdsmNG0zP0SbIg==} 255 + engines: {node: ^20.19.0 || >=22.12.0} 256 + cpu: [x64] 257 + os: [linux] 258 + 259 + '@rolldown/binding-linux-x64-musl@1.0.0-beta.50': 260 + resolution: {integrity: sha512-zti8A7M+xFDpKlghpcCAzyOi+e5nfUl3QhU023ce5NCgUxRG5zGP2GR9LTydQ1rnIPwZUVBWd4o7NjZDaQxaXA==} 261 + engines: {node: ^20.19.0 || >=22.12.0} 262 + cpu: [x64] 263 + os: [linux] 264 + 265 + '@rolldown/binding-openharmony-arm64@1.0.0-beta.50': 266 + resolution: {integrity: sha512-eZUssog7qljrrRU9Mi0eqYEPm3Ch0UwB+qlWPMKSUXHNqhm3TvDZarJQdTevGEfu3EHAXJvBIe0YFYr0TPVaMA==} 267 + engines: {node: ^20.19.0 || >=22.12.0} 268 + cpu: [arm64] 269 + os: [openharmony] 270 + 271 + '@rolldown/binding-wasm32-wasi@1.0.0-beta.50': 272 + resolution: {integrity: sha512-nmCN0nIdeUnmgeDXiQ+2HU6FT162o+rxnF7WMkBm4M5Ds8qTU7Dzv2Wrf22bo4ftnlrb2hKK6FSwAJSAe2FWLg==} 273 + engines: {node: '>=14.0.0'} 274 + cpu: [wasm32] 275 + 276 + '@rolldown/binding-win32-arm64-msvc@1.0.0-beta.50': 277 + resolution: {integrity: sha512-7kcNLi7Ua59JTTLvbe1dYb028QEPaJPJQHqkmSZ5q3tJueUeb6yjRtx8mw4uIqgWZcnQHAR3PrLN4XRJxvgIkA==} 278 + engines: {node: ^20.19.0 || >=22.12.0} 279 + cpu: [arm64] 280 + os: [win32] 281 + 282 + '@rolldown/binding-win32-ia32-msvc@1.0.0-beta.50': 283 + resolution: {integrity: sha512-lL70VTNvSCdSZkDPPVMwWn/M2yQiYvSoXw9hTLgdIWdUfC3g72UaruezusR6ceRuwHCY1Ayu2LtKqXkBO5LIwg==} 284 + engines: {node: ^20.19.0 || >=22.12.0} 285 + cpu: [ia32] 286 + os: [win32] 287 + 288 + '@rolldown/binding-win32-x64-msvc@1.0.0-beta.50': 289 + resolution: {integrity: sha512-4qU4x5DXWB4JPjyTne/wBNPqkbQU8J45bl21geERBKtEittleonioACBL1R0PsBu0Aq21SwMK5a9zdBkWSlQtQ==} 290 + engines: {node: ^20.19.0 || >=22.12.0} 291 + cpu: [x64] 292 + os: [win32] 293 + 294 + '@rolldown/pluginutils@1.0.0-beta.50': 295 + resolution: {integrity: sha512-5e76wQiQVeL1ICOZVUg4LSOVYg9jyhGCin+icYozhsUzM+fHE7kddi1bdiE0jwVqTfkjba3jUFbEkoC9WkdvyA==} 296 + 297 + '@rollup/pluginutils@5.3.0': 298 + resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==} 299 + engines: {node: '>=14.0.0'} 300 + peerDependencies: 301 + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 302 + peerDependenciesMeta: 303 + rollup: 304 + optional: true 305 + 306 + '@rushstack/node-core-library@5.19.1': 307 + resolution: {integrity: sha512-ESpb2Tajlatgbmzzukg6zyAhH+sICqJR2CNXNhXcEbz6UGCQfrKCtkxOpJTftWc8RGouroHG0Nud1SJAszvpmA==} 308 + peerDependencies: 309 + '@types/node': '*' 310 + peerDependenciesMeta: 311 + '@types/node': 312 + optional: true 313 + 314 + '@rushstack/problem-matcher@0.1.1': 315 + resolution: {integrity: sha512-Fm5XtS7+G8HLcJHCWpES5VmeMyjAKaWeyZU5qPzZC+22mPlJzAsOxymHiWIfuirtPckX3aptWws+K2d0BzniJA==} 316 + peerDependencies: 317 + '@types/node': '*' 318 + peerDependenciesMeta: 319 + '@types/node': 320 + optional: true 321 + 322 + '@rushstack/rig-package@0.6.0': 323 + resolution: {integrity: sha512-ZQmfzsLE2+Y91GF15c65L/slMRVhF6Hycq04D4TwtdGaUAbIXXg9c5pKA5KFU7M4QMaihoobp9JJYpYcaY3zOw==} 324 + 325 + '@rushstack/terminal@0.19.5': 326 + resolution: {integrity: sha512-6k5tpdB88G0K7QrH/3yfKO84HK9ggftfUZ51p7fePyCE7+RLLHkWZbID9OFWbXuna+eeCFE7AkKnRMHMxNbz7Q==} 327 + peerDependencies: 328 + '@types/node': '*' 329 + peerDependenciesMeta: 330 + '@types/node': 331 + optional: true 332 + 333 + '@rushstack/ts-command-line@5.1.5': 334 + resolution: {integrity: sha512-YmrFTFUdHXblYSa+Xc9OO9FsL/XFcckZy0ycQ6q7VSBsVs5P0uD9vcges5Q9vctGlVdu27w+Ct6IuJ458V0cTQ==} 335 + 336 + '@standard-schema/spec@1.1.0': 337 + resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==} 338 + 339 + '@sveltejs/acorn-typescript@1.0.8': 340 + resolution: {integrity: sha512-esgN+54+q0NjB0Y/4BomT9samII7jGwNy/2a3wNZbT2A2RpmXsXwUt24LvLhx6jUq2gVk4cWEvcRO6MFQbOfNA==} 341 + peerDependencies: 342 + acorn: ^8.9.0 343 + 344 + '@sveltejs/vite-plugin-svelte-inspector@5.0.1': 345 + resolution: {integrity: sha512-ubWshlMk4bc8mkwWbg6vNvCeT7lGQojE3ijDh3QTR6Zr/R+GXxsGbyH4PExEPpiFmqPhYiVSVmHBjUcVc1JIrA==} 346 + engines: {node: ^20.19 || ^22.12 || >=24} 347 + peerDependencies: 348 + '@sveltejs/vite-plugin-svelte': ^6.0.0-next.0 349 + svelte: ^5.0.0 350 + vite: ^6.3.0 || ^7.0.0 351 + 352 + '@sveltejs/vite-plugin-svelte@6.2.1': 353 + resolution: {integrity: sha512-YZs/OSKOQAQCnJvM/P+F1URotNnYNeU3P2s4oIpzm1uFaqUEqRxUB0g5ejMjEb5Gjb9/PiBI5Ktrq4rUUF8UVQ==} 354 + engines: {node: ^20.19 || ^22.12 || >=24} 355 + peerDependencies: 356 + svelte: ^5.0.0 357 + vite: ^6.3.0 || ^7.0.0 358 + 359 + '@tsconfig/svelte@5.0.6': 360 + resolution: {integrity: sha512-yGxYL0I9eETH1/DR9qVJey4DAsCdeau4a9wYPKuXfEhm8lFO8wg+LLYJjIpAm6Fw7HSlhepPhYPDop75485yWQ==} 361 + 362 + '@tybys/wasm-util@0.10.1': 363 + resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==} 364 + 365 + '@types/argparse@1.0.38': 366 + resolution: {integrity: sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==} 367 + 368 + '@types/estree@1.0.8': 369 + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} 370 + 371 + '@types/node@24.10.4': 372 + resolution: {integrity: sha512-vnDVpYPMzs4wunl27jHrfmwojOGKya0xyM3sH+UE5iv5uPS6vX7UIoh6m+vQc5LGBq52HBKPIn/zcSZVzeDEZg==} 373 + 374 + '@volar/language-core@2.4.27': 375 + resolution: {integrity: sha512-DjmjBWZ4tJKxfNC1F6HyYERNHPYS7L7OPFyCrestykNdUZMFYzI9WTyvwPcaNaHlrEUwESHYsfEw3isInncZxQ==} 376 + 377 + '@volar/source-map@2.4.27': 378 + resolution: {integrity: sha512-ynlcBReMgOZj2i6po+qVswtDUeeBRCTgDurjMGShbm8WYZgJ0PA4RmtebBJ0BCYol1qPv3GQF6jK7C9qoVc7lg==} 379 + 380 + '@volar/typescript@2.4.27': 381 + resolution: {integrity: sha512-eWaYCcl/uAPInSK2Lze6IqVWaBu/itVqR5InXcHXFyles4zO++Mglt3oxdgj75BDcv1Knr9Y93nowS8U3wqhxg==} 382 + 383 + '@vue/compiler-core@3.5.26': 384 + resolution: {integrity: sha512-vXyI5GMfuoBCnv5ucIT7jhHKl55Y477yxP6fc4eUswjP8FG3FFVFd41eNDArR+Uk3QKn2Z85NavjaxLxOC19/w==} 385 + 386 + '@vue/compiler-dom@3.5.26': 387 + resolution: {integrity: sha512-y1Tcd3eXs834QjswshSilCBnKGeQjQXB6PqFn/1nxcQw4pmG42G8lwz+FZPAZAby6gZeHSt/8LMPfZ4Rb+Bd/A==} 388 + 389 + '@vue/compiler-vue2@2.7.16': 390 + resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==} 391 + 392 + '@vue/language-core@2.2.0': 393 + resolution: {integrity: sha512-O1ZZFaaBGkKbsRfnVH1ifOK1/1BUkyK+3SQsfnh6PmMmD4qJcTU8godCeA96jjDRTL6zgnK7YzCHfaUlH2r0Mw==} 394 + peerDependencies: 395 + typescript: '*' 396 + peerDependenciesMeta: 397 + typescript: 398 + optional: true 399 + 400 + '@vue/shared@3.5.26': 401 + resolution: {integrity: sha512-7Z6/y3uFI5PRoKeorTOSXKcDj0MSasfNNltcslbFrPpcw6aXRUALq4IfJlaTRspiWIUOEZbrpM+iQGmCOiWe4A==} 402 + 403 + acorn@8.15.0: 404 + resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} 405 + engines: {node: '>=0.4.0'} 406 + hasBin: true 407 + 408 + actor-typeahead@0.1.2: 409 + resolution: {integrity: sha512-I97YqqNl7Kar0J/bIJvgY/KmHpssHcDElhfwVTLP7wRFlkxso2ZLBqiS2zol5A8UVUJbQK2JXYaqNpZXz8Uk2A==} 410 + 411 + ajv-draft-04@1.0.0: 412 + resolution: {integrity: sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==} 413 + peerDependencies: 414 + ajv: ^8.5.0 415 + peerDependenciesMeta: 416 + ajv: 417 + optional: true 418 + 419 + ajv-formats@3.0.1: 420 + resolution: {integrity: sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==} 421 + peerDependencies: 422 + ajv: ^8.0.0 423 + peerDependenciesMeta: 424 + ajv: 425 + optional: true 426 + 427 + ajv@8.12.0: 428 + resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} 429 + 430 + ajv@8.13.0: 431 + resolution: {integrity: sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA==} 432 + 433 + alien-signals@0.4.14: 434 + resolution: {integrity: sha512-itUAVzhczTmP2U5yX67xVpsbbOiquusbWVyA9N+sy6+r6YVbFkahXvNCeEPWEOMhwDYwbVbGHFkVL03N9I5g+Q==} 435 + 436 + argparse@1.0.10: 437 + resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} 438 + 439 + aria-query@5.3.2: 440 + resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} 441 + engines: {node: '>= 0.4'} 442 + 443 + axobject-query@4.1.0: 444 + resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} 445 + engines: {node: '>= 0.4'} 446 + 447 + balanced-match@1.0.2: 448 + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 449 + 450 + brace-expansion@2.0.2: 451 + resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} 452 + 453 + chokidar@4.0.3: 454 + resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} 455 + engines: {node: '>= 14.16.0'} 456 + 457 + clsx@2.1.1: 458 + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} 459 + engines: {node: '>=6'} 460 + 461 + compare-versions@6.1.1: 462 + resolution: {integrity: sha512-4hm4VPpIecmlg59CHXnRDnqGplJFrbLG4aFEl5vl6cK1u76ws3LLvX7ikFnTDl5vo39sjWD6AaDPYodJp/NNHg==} 463 + 464 + confbox@0.1.8: 465 + resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} 466 + 467 + confbox@0.2.2: 468 + resolution: {integrity: sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==} 469 + 470 + de-indent@1.0.2: 471 + resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==} 472 + 473 + debug@4.4.3: 474 + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} 475 + engines: {node: '>=6.0'} 476 + peerDependencies: 477 + supports-color: '*' 478 + peerDependenciesMeta: 479 + supports-color: 480 + optional: true 481 + 482 + deepmerge@4.3.1: 483 + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} 484 + engines: {node: '>=0.10.0'} 485 + 486 + detect-libc@2.1.2: 487 + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} 488 + engines: {node: '>=8'} 489 + 490 + devalue@5.6.1: 491 + resolution: {integrity: sha512-jDwizj+IlEZBunHcOuuFVBnIMPAEHvTsJj0BcIp94xYguLRVBcXO853px/MyIJvbVzWdsGvrRweIUWJw8hBP7A==} 492 + 493 + diff@8.0.2: 494 + resolution: {integrity: sha512-sSuxWU5j5SR9QQji/o2qMvqRNYRDOcBTgsJ/DeCf4iSN4gW+gNMXM7wFIP+fdXZxoNiAnHUTGjCr+TSWXdRDKg==} 495 + engines: {node: '>=0.3.1'} 496 + 497 + entities@7.0.0: 498 + resolution: {integrity: sha512-FDWG5cmEYf2Z00IkYRhbFrwIwvdFKH07uV8dvNy0omp/Qb1xcyCWp2UDtcwJF4QZZvk0sLudP6/hAu42TaqVhQ==} 499 + engines: {node: '>=0.12'} 500 + 501 + esm-env@1.2.2: 502 + resolution: {integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==} 503 + 504 + esrap@2.2.1: 505 + resolution: {integrity: sha512-GiYWG34AN/4CUyaWAgunGt0Rxvr1PTMlGC0vvEov/uOQYWne2bpN03Um+k8jT+q3op33mKouP2zeJ6OlM+qeUg==} 506 + 507 + estree-walker@2.0.2: 508 + resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} 509 + 510 + exsolve@1.0.8: 511 + resolution: {integrity: sha512-LmDxfWXwcTArk8fUEnOfSZpHOJ6zOMUJKOtFLFqJLoKJetuQG874Uc7/Kki7zFLzYybmZhp1M7+98pfMqeX8yA==} 512 + 513 + fast-deep-equal@3.1.3: 514 + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 515 + 516 + fdir@6.5.0: 517 + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} 518 + engines: {node: '>=12.0.0'} 519 + peerDependencies: 520 + picomatch: ^3 || ^4 521 + peerDependenciesMeta: 522 + picomatch: 523 + optional: true 524 + 525 + fs-extra@11.3.3: 526 + resolution: {integrity: sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==} 527 + engines: {node: '>=14.14'} 528 + 529 + fsevents@2.3.3: 530 + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 531 + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 532 + os: [darwin] 533 + 534 + function-bind@1.1.2: 535 + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} 536 + 537 + graceful-fs@4.2.11: 538 + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 539 + 540 + has-flag@4.0.0: 541 + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 542 + engines: {node: '>=8'} 543 + 544 + hasown@2.0.2: 545 + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} 546 + engines: {node: '>= 0.4'} 547 + 548 + he@1.2.0: 549 + resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} 550 + hasBin: true 551 + 552 + import-lazy@4.0.0: 553 + resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==} 554 + engines: {node: '>=8'} 555 + 556 + is-core-module@2.16.1: 557 + resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} 558 + engines: {node: '>= 0.4'} 559 + 560 + is-reference@3.0.3: 561 + resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==} 562 + 563 + jju@1.4.0: 564 + resolution: {integrity: sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==} 565 + 566 + json-schema-traverse@1.0.0: 567 + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} 568 + 569 + jsonfile@6.2.0: 570 + resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==} 571 + 572 + kolorist@1.8.0: 573 + resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==} 574 + 575 + lightningcss-android-arm64@1.30.2: 576 + resolution: {integrity: sha512-BH9sEdOCahSgmkVhBLeU7Hc9DWeZ1Eb6wNS6Da8igvUwAe0sqROHddIlvU06q3WyXVEOYDZ6ykBZQnjTbmo4+A==} 577 + engines: {node: '>= 12.0.0'} 578 + cpu: [arm64] 579 + os: [android] 580 + 581 + lightningcss-darwin-arm64@1.30.2: 582 + resolution: {integrity: sha512-ylTcDJBN3Hp21TdhRT5zBOIi73P6/W0qwvlFEk22fkdXchtNTOU4Qc37SkzV+EKYxLouZ6M4LG9NfZ1qkhhBWA==} 583 + engines: {node: '>= 12.0.0'} 584 + cpu: [arm64] 585 + os: [darwin] 586 + 587 + lightningcss-darwin-x64@1.30.2: 588 + resolution: {integrity: sha512-oBZgKchomuDYxr7ilwLcyms6BCyLn0z8J0+ZZmfpjwg9fRVZIR5/GMXd7r9RH94iDhld3UmSjBM6nXWM2TfZTQ==} 589 + engines: {node: '>= 12.0.0'} 590 + cpu: [x64] 591 + os: [darwin] 592 + 593 + lightningcss-freebsd-x64@1.30.2: 594 + resolution: {integrity: sha512-c2bH6xTrf4BDpK8MoGG4Bd6zAMZDAXS569UxCAGcA7IKbHNMlhGQ89eRmvpIUGfKWNVdbhSbkQaWhEoMGmGslA==} 595 + engines: {node: '>= 12.0.0'} 596 + cpu: [x64] 597 + os: [freebsd] 598 + 599 + lightningcss-linux-arm-gnueabihf@1.30.2: 600 + resolution: {integrity: sha512-eVdpxh4wYcm0PofJIZVuYuLiqBIakQ9uFZmipf6LF/HRj5Bgm0eb3qL/mr1smyXIS1twwOxNWndd8z0E374hiA==} 601 + engines: {node: '>= 12.0.0'} 602 + cpu: [arm] 603 + os: [linux] 604 + 605 + lightningcss-linux-arm64-gnu@1.30.2: 606 + resolution: {integrity: sha512-UK65WJAbwIJbiBFXpxrbTNArtfuznvxAJw4Q2ZGlU8kPeDIWEX1dg3rn2veBVUylA2Ezg89ktszWbaQnxD/e3A==} 607 + engines: {node: '>= 12.0.0'} 608 + cpu: [arm64] 609 + os: [linux] 610 + 611 + lightningcss-linux-arm64-musl@1.30.2: 612 + resolution: {integrity: sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA==} 613 + engines: {node: '>= 12.0.0'} 614 + cpu: [arm64] 615 + os: [linux] 616 + 617 + lightningcss-linux-x64-gnu@1.30.2: 618 + resolution: {integrity: sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w==} 619 + engines: {node: '>= 12.0.0'} 620 + cpu: [x64] 621 + os: [linux] 622 + 623 + lightningcss-linux-x64-musl@1.30.2: 624 + resolution: {integrity: sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA==} 625 + engines: {node: '>= 12.0.0'} 626 + cpu: [x64] 627 + os: [linux] 628 + 629 + lightningcss-win32-arm64-msvc@1.30.2: 630 + resolution: {integrity: sha512-FZn+vaj7zLv//D/192WFFVA0RgHawIcHqLX9xuWiQt7P0PtdFEVaxgF9rjM/IRYHQXNnk61/H/gb2Ei+kUQ4xQ==} 631 + engines: {node: '>= 12.0.0'} 632 + cpu: [arm64] 633 + os: [win32] 634 + 635 + lightningcss-win32-x64-msvc@1.30.2: 636 + resolution: {integrity: sha512-5g1yc73p+iAkid5phb4oVFMB45417DkRevRbt/El/gKXJk4jid+vPFF/AXbxn05Aky8PapwzZrdJShv5C0avjw==} 637 + engines: {node: '>= 12.0.0'} 638 + cpu: [x64] 639 + os: [win32] 640 + 641 + lightningcss@1.30.2: 642 + resolution: {integrity: sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ==} 643 + engines: {node: '>= 12.0.0'} 644 + 645 + local-pkg@1.1.2: 646 + resolution: {integrity: sha512-arhlxbFRmoQHl33a0Zkle/YWlmNwoyt6QNZEIJcqNbdrsix5Lvc4HyyI3EnwxTYlZYc32EbYrQ8SzEZ7dqgg9A==} 647 + engines: {node: '>=14'} 648 + 649 + locate-character@3.0.0: 650 + resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} 651 + 652 + lodash@4.17.21: 653 + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} 654 + 655 + lru-cache@6.0.0: 656 + resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 657 + engines: {node: '>=10'} 658 + 659 + magic-string@0.30.21: 660 + resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} 661 + 662 + minimatch@10.0.3: 663 + resolution: {integrity: sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==} 664 + engines: {node: 20 || >=22} 665 + 666 + minimatch@9.0.5: 667 + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} 668 + engines: {node: '>=16 || 14 >=14.17'} 669 + 670 + mlly@1.8.0: 671 + resolution: {integrity: sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==} 672 + 673 + mri@1.2.0: 674 + resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} 675 + engines: {node: '>=4'} 676 + 677 + ms@2.1.3: 678 + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 679 + 680 + muggle-string@0.4.1: 681 + resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} 682 + 683 + nanoid@3.3.11: 684 + resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==} 685 + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 686 + hasBin: true 687 + 688 + nanoid@5.1.6: 689 + resolution: {integrity: sha512-c7+7RQ+dMB5dPwwCp4ee1/iV/q2P6aK1mTZcfr1BTuVlyW9hJYiMPybJCcnBlQtuSmTIWNeazm/zqNoZSSElBg==} 690 + engines: {node: ^18 || >=20} 691 + hasBin: true 692 + 693 + path-browserify@1.0.1: 694 + resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} 695 + 696 + path-parse@1.0.7: 697 + resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 698 + 699 + pathe@2.0.3: 700 + resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} 701 + 702 + picocolors@1.1.1: 703 + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} 704 + 705 + picomatch@4.0.3: 706 + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} 707 + engines: {node: '>=12'} 708 + 709 + pkg-types@1.3.1: 710 + resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==} 711 + 712 + pkg-types@2.3.0: 713 + resolution: {integrity: sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig==} 714 + 715 + postcss@8.5.6: 716 + resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} 717 + engines: {node: ^10 || ^12 || >=14} 718 + 719 + prettier@3.7.4: 720 + resolution: {integrity: sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==} 721 + engines: {node: '>=14'} 722 + hasBin: true 723 + 724 + punycode@2.3.1: 725 + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} 726 + engines: {node: '>=6'} 727 + 728 + quansync@0.2.11: 729 + resolution: {integrity: sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==} 730 + 731 + readdirp@4.1.2: 732 + resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} 733 + engines: {node: '>= 14.18.0'} 734 + 735 + require-from-string@2.0.2: 736 + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} 737 + engines: {node: '>=0.10.0'} 738 + 739 + resolve@1.22.11: 740 + resolution: {integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==} 741 + engines: {node: '>= 0.4'} 742 + hasBin: true 743 + 744 + rolldown-vite@7.2.5: 745 + resolution: {integrity: sha512-u09tdk/huMiN8xwoiBbig197jKdCamQTtOruSalOzbqGje3jdHiV0njQlAW0YvzoahkirFePNQ4RYlfnRQpXZA==} 746 + engines: {node: ^20.19.0 || >=22.12.0} 747 + hasBin: true 748 + peerDependencies: 749 + '@types/node': ^20.19.0 || >=22.12.0 750 + esbuild: ^0.25.0 751 + jiti: '>=1.21.0' 752 + less: ^4.0.0 753 + sass: ^1.70.0 754 + sass-embedded: ^1.70.0 755 + stylus: '>=0.54.8' 756 + sugarss: ^5.0.0 757 + terser: ^5.16.0 758 + tsx: ^4.8.1 759 + yaml: ^2.4.2 760 + peerDependenciesMeta: 761 + '@types/node': 762 + optional: true 763 + esbuild: 764 + optional: true 765 + jiti: 766 + optional: true 767 + less: 768 + optional: true 769 + sass: 770 + optional: true 771 + sass-embedded: 772 + optional: true 773 + stylus: 774 + optional: true 775 + sugarss: 776 + optional: true 777 + terser: 778 + optional: true 779 + tsx: 780 + optional: true 781 + yaml: 782 + optional: true 783 + 784 + rolldown@1.0.0-beta.50: 785 + resolution: {integrity: sha512-JFULvCNl/anKn99eKjOSEubi0lLmNqQDAjyEMME2T4CwezUDL0i6t1O9xZsu2OMehPnV2caNefWpGF+8TnzB6A==} 786 + engines: {node: ^20.19.0 || >=22.12.0} 787 + hasBin: true 788 + 789 + sade@1.8.1: 790 + resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} 791 + engines: {node: '>=6'} 792 + 793 + semver@7.5.4: 794 + resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} 795 + engines: {node: '>=10'} 796 + hasBin: true 797 + 798 + source-map-js@1.2.1: 799 + resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} 800 + engines: {node: '>=0.10.0'} 801 + 802 + source-map@0.6.1: 803 + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} 804 + engines: {node: '>=0.10.0'} 805 + 806 + sprintf-js@1.0.3: 807 + resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} 808 + 809 + string-argv@0.3.2: 810 + resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} 811 + engines: {node: '>=0.6.19'} 812 + 813 + strip-json-comments@3.1.1: 814 + resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 815 + engines: {node: '>=8'} 816 + 817 + supports-color@8.1.1: 818 + resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} 819 + engines: {node: '>=10'} 820 + 821 + supports-preserve-symlinks-flag@1.0.0: 822 + resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 823 + engines: {node: '>= 0.4'} 824 + 825 + svelte-check@4.3.5: 826 + resolution: {integrity: sha512-e4VWZETyXaKGhpkxOXP+B/d0Fp/zKViZoJmneZWe/05Y2aqSKj3YN2nLfYPJBQ87WEiY4BQCQ9hWGu9mPT1a1Q==} 827 + engines: {node: '>= 18.0.0'} 828 + hasBin: true 829 + peerDependencies: 830 + svelte: ^4.0.0 || ^5.0.0-next.0 831 + typescript: '>=5.0.0' 832 + 833 + svelte@5.46.0: 834 + resolution: {integrity: sha512-ZhLtvroYxUxr+HQJfMZEDRsGsmU46x12RvAv/zi9584f5KOX7bUrEbhPJ7cKFmUvZTJXi/CFZUYwDC6M1FigPw==} 835 + engines: {node: '>=18'} 836 + 837 + tinyglobby@0.2.15: 838 + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} 839 + engines: {node: '>=12.0.0'} 840 + 841 + tslib@2.8.1: 842 + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} 843 + 844 + typescript@5.8.2: 845 + resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==} 846 + engines: {node: '>=14.17'} 847 + hasBin: true 848 + 849 + typescript@5.9.3: 850 + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} 851 + engines: {node: '>=14.17'} 852 + hasBin: true 853 + 854 + ufo@1.6.1: 855 + resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==} 856 + 857 + undici-types@7.16.0: 858 + resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} 859 + 860 + universalify@2.0.1: 861 + resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} 862 + engines: {node: '>= 10.0.0'} 863 + 864 + uri-js@4.4.1: 865 + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 866 + 867 + vite-plugin-dts@4.5.4: 868 + resolution: {integrity: sha512-d4sOM8M/8z7vRXHHq/ebbblfaxENjogAAekcfcDCCwAyvGqnPrc7f4NZbvItS+g4WTgerW0xDwSz5qz11JT3vg==} 869 + peerDependencies: 870 + typescript: '*' 871 + vite: '*' 872 + peerDependenciesMeta: 873 + vite: 874 + optional: true 875 + 876 + vitefu@1.1.1: 877 + resolution: {integrity: sha512-B/Fegf3i8zh0yFbpzZ21amWzHmuNlLlmJT6n7bu5e+pCHUKQIfXSYokrqOBGEMMe9UG2sostKQF9mml/vYaWJQ==} 878 + peerDependencies: 879 + vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0-beta.0 880 + peerDependenciesMeta: 881 + vite: 882 + optional: true 883 + 884 + vscode-uri@3.1.0: 885 + resolution: {integrity: sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==} 886 + 887 + yallist@4.0.0: 888 + resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 889 + 890 + zimmerframe@1.1.4: 891 + resolution: {integrity: sha512-B58NGBEoc8Y9MWWCQGl/gq9xBCe4IiKM0a2x7GZdQKOW5Exr8S1W24J6OgM1njK8xCRGvAJIL/MxXHf6SkmQKQ==} 892 + 893 + snapshots: 894 + 895 + '@atcute/atproto@3.1.9': 896 + dependencies: 897 + '@atcute/lexicons': 1.2.5 898 + 899 + '@atcute/car@5.0.0': 900 + dependencies: 901 + '@atcute/cbor': 2.2.8 902 + '@atcute/cid': 2.2.6 903 + '@atcute/uint8array': 1.0.6 904 + '@atcute/varint': 1.0.3 905 + 906 + '@atcute/cbor@2.2.8': 907 + dependencies: 908 + '@atcute/cid': 2.2.6 909 + '@atcute/multibase': 1.1.6 910 + '@atcute/uint8array': 1.0.6 911 + 912 + '@atcute/cid@2.2.6': 913 + dependencies: 914 + '@atcute/multibase': 1.1.6 915 + '@atcute/uint8array': 1.0.6 916 + 917 + '@atcute/client@4.1.1': 918 + dependencies: 919 + '@atcute/identity': 1.1.3 920 + '@atcute/lexicons': 1.2.5 921 + 922 + '@atcute/crypto@2.3.0': 923 + dependencies: 924 + '@atcute/multibase': 1.1.6 925 + '@atcute/uint8array': 1.0.6 926 + '@noble/secp256k1': 3.0.0 927 + 928 + '@atcute/identity-resolver@1.2.0(@atcute/identity@1.1.3)': 929 + dependencies: 930 + '@atcute/identity': 1.1.3 931 + '@atcute/lexicons': 1.2.5 932 + '@atcute/util-fetch': 1.0.4 933 + '@badrap/valita': 0.4.6 934 + 935 + '@atcute/identity@1.1.3': 936 + dependencies: 937 + '@atcute/lexicons': 1.2.5 938 + '@badrap/valita': 0.4.6 939 + 940 + '@atcute/lex-cli@2.5.2': 941 + dependencies: 942 + '@atcute/identity': 1.1.3 943 + '@atcute/identity-resolver': 1.2.0(@atcute/identity@1.1.3) 944 + '@atcute/lexicon-doc': 2.0.5 945 + '@atcute/lexicon-resolver': 0.1.5(@atcute/identity-resolver@1.2.0(@atcute/identity@1.1.3))(@atcute/identity@1.1.3) 946 + '@atcute/lexicons': 1.2.5 947 + '@badrap/valita': 0.4.6 948 + '@optique/core': 0.6.5 949 + '@optique/run': 0.6.5 950 + picocolors: 1.1.1 951 + prettier: 3.7.4 952 + 953 + '@atcute/lexicon-doc@2.0.5': 954 + dependencies: 955 + '@atcute/identity': 1.1.3 956 + '@atcute/lexicons': 1.2.5 957 + '@badrap/valita': 0.4.6 958 + 959 + '@atcute/lexicon-resolver@0.1.5(@atcute/identity-resolver@1.2.0(@atcute/identity@1.1.3))(@atcute/identity@1.1.3)': 960 + dependencies: 961 + '@atcute/crypto': 2.3.0 962 + '@atcute/identity': 1.1.3 963 + '@atcute/identity-resolver': 1.2.0(@atcute/identity@1.1.3) 964 + '@atcute/lexicon-doc': 2.0.5 965 + '@atcute/lexicons': 1.2.5 966 + '@atcute/repo': 0.1.0 967 + '@atcute/util-fetch': 1.0.4 968 + '@badrap/valita': 0.4.6 969 + 970 + '@atcute/lexicons@1.2.5': 971 + dependencies: 972 + '@standard-schema/spec': 1.1.0 973 + esm-env: 1.2.2 974 + 975 + '@atcute/mst@0.1.0': 976 + dependencies: 977 + '@atcute/cbor': 2.2.8 978 + '@atcute/cid': 2.2.6 979 + '@atcute/uint8array': 1.0.6 980 + 981 + '@atcute/multibase@1.1.6': 982 + dependencies: 983 + '@atcute/uint8array': 1.0.6 984 + 985 + '@atcute/oauth-browser-client@2.0.3(@atcute/identity@1.1.3)': 986 + dependencies: 987 + '@atcute/client': 4.1.1 988 + '@atcute/identity-resolver': 1.2.0(@atcute/identity@1.1.3) 989 + '@atcute/lexicons': 1.2.5 990 + '@atcute/multibase': 1.1.6 991 + '@atcute/uint8array': 1.0.6 992 + nanoid: 5.1.6 993 + transitivePeerDependencies: 994 + - '@atcute/identity' 995 + 996 + '@atcute/repo@0.1.0': 997 + dependencies: 998 + '@atcute/car': 5.0.0 999 + '@atcute/cbor': 2.2.8 1000 + '@atcute/cid': 2.2.6 1001 + '@atcute/crypto': 2.3.0 1002 + '@atcute/lexicons': 1.2.5 1003 + '@atcute/mst': 0.1.0 1004 + '@atcute/uint8array': 1.0.6 1005 + 1006 + '@atcute/uint8array@1.0.6': {} 1007 + 1008 + '@atcute/util-fetch@1.0.4': 1009 + dependencies: 1010 + '@badrap/valita': 0.4.6 1011 + 1012 + '@atcute/varint@1.0.3': {} 1013 + 1014 + '@babel/helper-string-parser@7.27.1': {} 1015 + 1016 + '@babel/helper-validator-identifier@7.28.5': {} 1017 + 1018 + '@babel/parser@7.28.5': 1019 + dependencies: 1020 + '@babel/types': 7.28.5 1021 + 1022 + '@babel/types@7.28.5': 1023 + dependencies: 1024 + '@babel/helper-string-parser': 7.27.1 1025 + '@babel/helper-validator-identifier': 7.28.5 1026 + 1027 + '@badrap/valita@0.4.6': {} 1028 + 1029 + '@emnapi/core@1.7.1': 1030 + dependencies: 1031 + '@emnapi/wasi-threads': 1.1.0 1032 + tslib: 2.8.1 1033 + optional: true 1034 + 1035 + '@emnapi/runtime@1.7.1': 1036 + dependencies: 1037 + tslib: 2.8.1 1038 + optional: true 1039 + 1040 + '@emnapi/wasi-threads@1.1.0': 1041 + dependencies: 1042 + tslib: 2.8.1 1043 + optional: true 1044 + 1045 + '@isaacs/balanced-match@4.0.1': {} 1046 + 1047 + '@isaacs/brace-expansion@5.0.0': 1048 + dependencies: 1049 + '@isaacs/balanced-match': 4.0.1 1050 + 1051 + '@jridgewell/gen-mapping@0.3.13': 1052 + dependencies: 1053 + '@jridgewell/sourcemap-codec': 1.5.5 1054 + '@jridgewell/trace-mapping': 0.3.31 1055 + 1056 + '@jridgewell/remapping@2.3.5': 1057 + dependencies: 1058 + '@jridgewell/gen-mapping': 0.3.13 1059 + '@jridgewell/trace-mapping': 0.3.31 1060 + 1061 + '@jridgewell/resolve-uri@3.1.2': {} 1062 + 1063 + '@jridgewell/sourcemap-codec@1.5.5': {} 1064 + 1065 + '@jridgewell/trace-mapping@0.3.31': 1066 + dependencies: 1067 + '@jridgewell/resolve-uri': 3.1.2 1068 + '@jridgewell/sourcemap-codec': 1.5.5 1069 + 1070 + '@microsoft/api-extractor-model@7.32.2(@types/node@24.10.4)': 1071 + dependencies: 1072 + '@microsoft/tsdoc': 0.16.0 1073 + '@microsoft/tsdoc-config': 0.18.0 1074 + '@rushstack/node-core-library': 5.19.1(@types/node@24.10.4) 1075 + transitivePeerDependencies: 1076 + - '@types/node' 1077 + 1078 + '@microsoft/api-extractor@7.55.2(@types/node@24.10.4)': 1079 + dependencies: 1080 + '@microsoft/api-extractor-model': 7.32.2(@types/node@24.10.4) 1081 + '@microsoft/tsdoc': 0.16.0 1082 + '@microsoft/tsdoc-config': 0.18.0 1083 + '@rushstack/node-core-library': 5.19.1(@types/node@24.10.4) 1084 + '@rushstack/rig-package': 0.6.0 1085 + '@rushstack/terminal': 0.19.5(@types/node@24.10.4) 1086 + '@rushstack/ts-command-line': 5.1.5(@types/node@24.10.4) 1087 + diff: 8.0.2 1088 + lodash: 4.17.21 1089 + minimatch: 10.0.3 1090 + resolve: 1.22.11 1091 + semver: 7.5.4 1092 + source-map: 0.6.1 1093 + typescript: 5.8.2 1094 + transitivePeerDependencies: 1095 + - '@types/node' 1096 + 1097 + '@microsoft/tsdoc-config@0.18.0': 1098 + dependencies: 1099 + '@microsoft/tsdoc': 0.16.0 1100 + ajv: 8.12.0 1101 + jju: 1.4.0 1102 + resolve: 1.22.11 1103 + 1104 + '@microsoft/tsdoc@0.16.0': {} 1105 + 1106 + '@napi-rs/wasm-runtime@1.1.0': 1107 + dependencies: 1108 + '@emnapi/core': 1.7.1 1109 + '@emnapi/runtime': 1.7.1 1110 + '@tybys/wasm-util': 0.10.1 1111 + optional: true 1112 + 1113 + '@noble/secp256k1@3.0.0': {} 1114 + 1115 + '@optique/core@0.6.5': {} 1116 + 1117 + '@optique/run@0.6.5': 1118 + dependencies: 1119 + '@optique/core': 0.6.5 1120 + 1121 + '@oxc-project/runtime@0.97.0': {} 1122 + 1123 + '@oxc-project/types@0.97.0': {} 1124 + 1125 + '@rolldown/binding-android-arm64@1.0.0-beta.50': 1126 + optional: true 1127 + 1128 + '@rolldown/binding-darwin-arm64@1.0.0-beta.50': 1129 + optional: true 1130 + 1131 + '@rolldown/binding-darwin-x64@1.0.0-beta.50': 1132 + optional: true 1133 + 1134 + '@rolldown/binding-freebsd-x64@1.0.0-beta.50': 1135 + optional: true 1136 + 1137 + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.50': 1138 + optional: true 1139 + 1140 + '@rolldown/binding-linux-arm64-gnu@1.0.0-beta.50': 1141 + optional: true 1142 + 1143 + '@rolldown/binding-linux-arm64-musl@1.0.0-beta.50': 1144 + optional: true 1145 + 1146 + '@rolldown/binding-linux-x64-gnu@1.0.0-beta.50': 1147 + optional: true 1148 + 1149 + '@rolldown/binding-linux-x64-musl@1.0.0-beta.50': 1150 + optional: true 1151 + 1152 + '@rolldown/binding-openharmony-arm64@1.0.0-beta.50': 1153 + optional: true 1154 + 1155 + '@rolldown/binding-wasm32-wasi@1.0.0-beta.50': 1156 + dependencies: 1157 + '@napi-rs/wasm-runtime': 1.1.0 1158 + optional: true 1159 + 1160 + '@rolldown/binding-win32-arm64-msvc@1.0.0-beta.50': 1161 + optional: true 1162 + 1163 + '@rolldown/binding-win32-ia32-msvc@1.0.0-beta.50': 1164 + optional: true 1165 + 1166 + '@rolldown/binding-win32-x64-msvc@1.0.0-beta.50': 1167 + optional: true 1168 + 1169 + '@rolldown/pluginutils@1.0.0-beta.50': {} 1170 + 1171 + '@rollup/pluginutils@5.3.0': 1172 + dependencies: 1173 + '@types/estree': 1.0.8 1174 + estree-walker: 2.0.2 1175 + picomatch: 4.0.3 1176 + 1177 + '@rushstack/node-core-library@5.19.1(@types/node@24.10.4)': 1178 + dependencies: 1179 + ajv: 8.13.0 1180 + ajv-draft-04: 1.0.0(ajv@8.13.0) 1181 + ajv-formats: 3.0.1(ajv@8.13.0) 1182 + fs-extra: 11.3.3 1183 + import-lazy: 4.0.0 1184 + jju: 1.4.0 1185 + resolve: 1.22.11 1186 + semver: 7.5.4 1187 + optionalDependencies: 1188 + '@types/node': 24.10.4 1189 + 1190 + '@rushstack/problem-matcher@0.1.1(@types/node@24.10.4)': 1191 + optionalDependencies: 1192 + '@types/node': 24.10.4 1193 + 1194 + '@rushstack/rig-package@0.6.0': 1195 + dependencies: 1196 + resolve: 1.22.11 1197 + strip-json-comments: 3.1.1 1198 + 1199 + '@rushstack/terminal@0.19.5(@types/node@24.10.4)': 1200 + dependencies: 1201 + '@rushstack/node-core-library': 5.19.1(@types/node@24.10.4) 1202 + '@rushstack/problem-matcher': 0.1.1(@types/node@24.10.4) 1203 + supports-color: 8.1.1 1204 + optionalDependencies: 1205 + '@types/node': 24.10.4 1206 + 1207 + '@rushstack/ts-command-line@5.1.5(@types/node@24.10.4)': 1208 + dependencies: 1209 + '@rushstack/terminal': 0.19.5(@types/node@24.10.4) 1210 + '@types/argparse': 1.0.38 1211 + argparse: 1.0.10 1212 + string-argv: 0.3.2 1213 + transitivePeerDependencies: 1214 + - '@types/node' 1215 + 1216 + '@standard-schema/spec@1.1.0': {} 1217 + 1218 + '@sveltejs/acorn-typescript@1.0.8(acorn@8.15.0)': 1219 + dependencies: 1220 + acorn: 8.15.0 1221 + 1222 + '@sveltejs/vite-plugin-svelte-inspector@5.0.1(@sveltejs/vite-plugin-svelte@6.2.1(rolldown-vite@7.2.5(@types/node@24.10.4))(svelte@5.46.0))(rolldown-vite@7.2.5(@types/node@24.10.4))(svelte@5.46.0)': 1223 + dependencies: 1224 + '@sveltejs/vite-plugin-svelte': 6.2.1(rolldown-vite@7.2.5(@types/node@24.10.4))(svelte@5.46.0) 1225 + debug: 4.4.3 1226 + svelte: 5.46.0 1227 + vite: rolldown-vite@7.2.5(@types/node@24.10.4) 1228 + transitivePeerDependencies: 1229 + - supports-color 1230 + 1231 + '@sveltejs/vite-plugin-svelte@6.2.1(rolldown-vite@7.2.5(@types/node@24.10.4))(svelte@5.46.0)': 1232 + dependencies: 1233 + '@sveltejs/vite-plugin-svelte-inspector': 5.0.1(@sveltejs/vite-plugin-svelte@6.2.1(rolldown-vite@7.2.5(@types/node@24.10.4))(svelte@5.46.0))(rolldown-vite@7.2.5(@types/node@24.10.4))(svelte@5.46.0) 1234 + debug: 4.4.3 1235 + deepmerge: 4.3.1 1236 + magic-string: 0.30.21 1237 + svelte: 5.46.0 1238 + vite: rolldown-vite@7.2.5(@types/node@24.10.4) 1239 + vitefu: 1.1.1(rolldown-vite@7.2.5(@types/node@24.10.4)) 1240 + transitivePeerDependencies: 1241 + - supports-color 1242 + 1243 + '@tsconfig/svelte@5.0.6': {} 1244 + 1245 + '@tybys/wasm-util@0.10.1': 1246 + dependencies: 1247 + tslib: 2.8.1 1248 + optional: true 1249 + 1250 + '@types/argparse@1.0.38': {} 1251 + 1252 + '@types/estree@1.0.8': {} 1253 + 1254 + '@types/node@24.10.4': 1255 + dependencies: 1256 + undici-types: 7.16.0 1257 + 1258 + '@volar/language-core@2.4.27': 1259 + dependencies: 1260 + '@volar/source-map': 2.4.27 1261 + 1262 + '@volar/source-map@2.4.27': {} 1263 + 1264 + '@volar/typescript@2.4.27': 1265 + dependencies: 1266 + '@volar/language-core': 2.4.27 1267 + path-browserify: 1.0.1 1268 + vscode-uri: 3.1.0 1269 + 1270 + '@vue/compiler-core@3.5.26': 1271 + dependencies: 1272 + '@babel/parser': 7.28.5 1273 + '@vue/shared': 3.5.26 1274 + entities: 7.0.0 1275 + estree-walker: 2.0.2 1276 + source-map-js: 1.2.1 1277 + 1278 + '@vue/compiler-dom@3.5.26': 1279 + dependencies: 1280 + '@vue/compiler-core': 3.5.26 1281 + '@vue/shared': 3.5.26 1282 + 1283 + '@vue/compiler-vue2@2.7.16': 1284 + dependencies: 1285 + de-indent: 1.0.2 1286 + he: 1.2.0 1287 + 1288 + '@vue/language-core@2.2.0(typescript@5.9.3)': 1289 + dependencies: 1290 + '@volar/language-core': 2.4.27 1291 + '@vue/compiler-dom': 3.5.26 1292 + '@vue/compiler-vue2': 2.7.16 1293 + '@vue/shared': 3.5.26 1294 + alien-signals: 0.4.14 1295 + minimatch: 9.0.5 1296 + muggle-string: 0.4.1 1297 + path-browserify: 1.0.1 1298 + optionalDependencies: 1299 + typescript: 5.9.3 1300 + 1301 + '@vue/shared@3.5.26': {} 1302 + 1303 + acorn@8.15.0: {} 1304 + 1305 + actor-typeahead@0.1.2: {} 1306 + 1307 + ajv-draft-04@1.0.0(ajv@8.13.0): 1308 + optionalDependencies: 1309 + ajv: 8.13.0 1310 + 1311 + ajv-formats@3.0.1(ajv@8.13.0): 1312 + optionalDependencies: 1313 + ajv: 8.13.0 1314 + 1315 + ajv@8.12.0: 1316 + dependencies: 1317 + fast-deep-equal: 3.1.3 1318 + json-schema-traverse: 1.0.0 1319 + require-from-string: 2.0.2 1320 + uri-js: 4.4.1 1321 + 1322 + ajv@8.13.0: 1323 + dependencies: 1324 + fast-deep-equal: 3.1.3 1325 + json-schema-traverse: 1.0.0 1326 + require-from-string: 2.0.2 1327 + uri-js: 4.4.1 1328 + 1329 + alien-signals@0.4.14: {} 1330 + 1331 + argparse@1.0.10: 1332 + dependencies: 1333 + sprintf-js: 1.0.3 1334 + 1335 + aria-query@5.3.2: {} 1336 + 1337 + axobject-query@4.1.0: {} 1338 + 1339 + balanced-match@1.0.2: {} 1340 + 1341 + brace-expansion@2.0.2: 1342 + dependencies: 1343 + balanced-match: 1.0.2 1344 + 1345 + chokidar@4.0.3: 1346 + dependencies: 1347 + readdirp: 4.1.2 1348 + 1349 + clsx@2.1.1: {} 1350 + 1351 + compare-versions@6.1.1: {} 1352 + 1353 + confbox@0.1.8: {} 1354 + 1355 + confbox@0.2.2: {} 1356 + 1357 + de-indent@1.0.2: {} 1358 + 1359 + debug@4.4.3: 1360 + dependencies: 1361 + ms: 2.1.3 1362 + 1363 + deepmerge@4.3.1: {} 1364 + 1365 + detect-libc@2.1.2: {} 1366 + 1367 + devalue@5.6.1: {} 1368 + 1369 + diff@8.0.2: {} 1370 + 1371 + entities@7.0.0: {} 1372 + 1373 + esm-env@1.2.2: {} 1374 + 1375 + esrap@2.2.1: 1376 + dependencies: 1377 + '@jridgewell/sourcemap-codec': 1.5.5 1378 + 1379 + estree-walker@2.0.2: {} 1380 + 1381 + exsolve@1.0.8: {} 1382 + 1383 + fast-deep-equal@3.1.3: {} 1384 + 1385 + fdir@6.5.0(picomatch@4.0.3): 1386 + optionalDependencies: 1387 + picomatch: 4.0.3 1388 + 1389 + fs-extra@11.3.3: 1390 + dependencies: 1391 + graceful-fs: 4.2.11 1392 + jsonfile: 6.2.0 1393 + universalify: 2.0.1 1394 + 1395 + fsevents@2.3.3: 1396 + optional: true 1397 + 1398 + function-bind@1.1.2: {} 1399 + 1400 + graceful-fs@4.2.11: {} 1401 + 1402 + has-flag@4.0.0: {} 1403 + 1404 + hasown@2.0.2: 1405 + dependencies: 1406 + function-bind: 1.1.2 1407 + 1408 + he@1.2.0: {} 1409 + 1410 + import-lazy@4.0.0: {} 1411 + 1412 + is-core-module@2.16.1: 1413 + dependencies: 1414 + hasown: 2.0.2 1415 + 1416 + is-reference@3.0.3: 1417 + dependencies: 1418 + '@types/estree': 1.0.8 1419 + 1420 + jju@1.4.0: {} 1421 + 1422 + json-schema-traverse@1.0.0: {} 1423 + 1424 + jsonfile@6.2.0: 1425 + dependencies: 1426 + universalify: 2.0.1 1427 + optionalDependencies: 1428 + graceful-fs: 4.2.11 1429 + 1430 + kolorist@1.8.0: {} 1431 + 1432 + lightningcss-android-arm64@1.30.2: 1433 + optional: true 1434 + 1435 + lightningcss-darwin-arm64@1.30.2: 1436 + optional: true 1437 + 1438 + lightningcss-darwin-x64@1.30.2: 1439 + optional: true 1440 + 1441 + lightningcss-freebsd-x64@1.30.2: 1442 + optional: true 1443 + 1444 + lightningcss-linux-arm-gnueabihf@1.30.2: 1445 + optional: true 1446 + 1447 + lightningcss-linux-arm64-gnu@1.30.2: 1448 + optional: true 1449 + 1450 + lightningcss-linux-arm64-musl@1.30.2: 1451 + optional: true 1452 + 1453 + lightningcss-linux-x64-gnu@1.30.2: 1454 + optional: true 1455 + 1456 + lightningcss-linux-x64-musl@1.30.2: 1457 + optional: true 1458 + 1459 + lightningcss-win32-arm64-msvc@1.30.2: 1460 + optional: true 1461 + 1462 + lightningcss-win32-x64-msvc@1.30.2: 1463 + optional: true 1464 + 1465 + lightningcss@1.30.2: 1466 + dependencies: 1467 + detect-libc: 2.1.2 1468 + optionalDependencies: 1469 + lightningcss-android-arm64: 1.30.2 1470 + lightningcss-darwin-arm64: 1.30.2 1471 + lightningcss-darwin-x64: 1.30.2 1472 + lightningcss-freebsd-x64: 1.30.2 1473 + lightningcss-linux-arm-gnueabihf: 1.30.2 1474 + lightningcss-linux-arm64-gnu: 1.30.2 1475 + lightningcss-linux-arm64-musl: 1.30.2 1476 + lightningcss-linux-x64-gnu: 1.30.2 1477 + lightningcss-linux-x64-musl: 1.30.2 1478 + lightningcss-win32-arm64-msvc: 1.30.2 1479 + lightningcss-win32-x64-msvc: 1.30.2 1480 + 1481 + local-pkg@1.1.2: 1482 + dependencies: 1483 + mlly: 1.8.0 1484 + pkg-types: 2.3.0 1485 + quansync: 0.2.11 1486 + 1487 + locate-character@3.0.0: {} 1488 + 1489 + lodash@4.17.21: {} 1490 + 1491 + lru-cache@6.0.0: 1492 + dependencies: 1493 + yallist: 4.0.0 1494 + 1495 + magic-string@0.30.21: 1496 + dependencies: 1497 + '@jridgewell/sourcemap-codec': 1.5.5 1498 + 1499 + minimatch@10.0.3: 1500 + dependencies: 1501 + '@isaacs/brace-expansion': 5.0.0 1502 + 1503 + minimatch@9.0.5: 1504 + dependencies: 1505 + brace-expansion: 2.0.2 1506 + 1507 + mlly@1.8.0: 1508 + dependencies: 1509 + acorn: 8.15.0 1510 + pathe: 2.0.3 1511 + pkg-types: 1.3.1 1512 + ufo: 1.6.1 1513 + 1514 + mri@1.2.0: {} 1515 + 1516 + ms@2.1.3: {} 1517 + 1518 + muggle-string@0.4.1: {} 1519 + 1520 + nanoid@3.3.11: {} 1521 + 1522 + nanoid@5.1.6: {} 1523 + 1524 + path-browserify@1.0.1: {} 1525 + 1526 + path-parse@1.0.7: {} 1527 + 1528 + pathe@2.0.3: {} 1529 + 1530 + picocolors@1.1.1: {} 1531 + 1532 + picomatch@4.0.3: {} 1533 + 1534 + pkg-types@1.3.1: 1535 + dependencies: 1536 + confbox: 0.1.8 1537 + mlly: 1.8.0 1538 + pathe: 2.0.3 1539 + 1540 + pkg-types@2.3.0: 1541 + dependencies: 1542 + confbox: 0.2.2 1543 + exsolve: 1.0.8 1544 + pathe: 2.0.3 1545 + 1546 + postcss@8.5.6: 1547 + dependencies: 1548 + nanoid: 3.3.11 1549 + picocolors: 1.1.1 1550 + source-map-js: 1.2.1 1551 + 1552 + prettier@3.7.4: {} 1553 + 1554 + punycode@2.3.1: {} 1555 + 1556 + quansync@0.2.11: {} 1557 + 1558 + readdirp@4.1.2: {} 1559 + 1560 + require-from-string@2.0.2: {} 1561 + 1562 + resolve@1.22.11: 1563 + dependencies: 1564 + is-core-module: 2.16.1 1565 + path-parse: 1.0.7 1566 + supports-preserve-symlinks-flag: 1.0.0 1567 + 1568 + rolldown-vite@7.2.5(@types/node@24.10.4): 1569 + dependencies: 1570 + '@oxc-project/runtime': 0.97.0 1571 + fdir: 6.5.0(picomatch@4.0.3) 1572 + lightningcss: 1.30.2 1573 + picomatch: 4.0.3 1574 + postcss: 8.5.6 1575 + rolldown: 1.0.0-beta.50 1576 + tinyglobby: 0.2.15 1577 + optionalDependencies: 1578 + '@types/node': 24.10.4 1579 + fsevents: 2.3.3 1580 + 1581 + rolldown@1.0.0-beta.50: 1582 + dependencies: 1583 + '@oxc-project/types': 0.97.0 1584 + '@rolldown/pluginutils': 1.0.0-beta.50 1585 + optionalDependencies: 1586 + '@rolldown/binding-android-arm64': 1.0.0-beta.50 1587 + '@rolldown/binding-darwin-arm64': 1.0.0-beta.50 1588 + '@rolldown/binding-darwin-x64': 1.0.0-beta.50 1589 + '@rolldown/binding-freebsd-x64': 1.0.0-beta.50 1590 + '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-beta.50 1591 + '@rolldown/binding-linux-arm64-gnu': 1.0.0-beta.50 1592 + '@rolldown/binding-linux-arm64-musl': 1.0.0-beta.50 1593 + '@rolldown/binding-linux-x64-gnu': 1.0.0-beta.50 1594 + '@rolldown/binding-linux-x64-musl': 1.0.0-beta.50 1595 + '@rolldown/binding-openharmony-arm64': 1.0.0-beta.50 1596 + '@rolldown/binding-wasm32-wasi': 1.0.0-beta.50 1597 + '@rolldown/binding-win32-arm64-msvc': 1.0.0-beta.50 1598 + '@rolldown/binding-win32-ia32-msvc': 1.0.0-beta.50 1599 + '@rolldown/binding-win32-x64-msvc': 1.0.0-beta.50 1600 + 1601 + sade@1.8.1: 1602 + dependencies: 1603 + mri: 1.2.0 1604 + 1605 + semver@7.5.4: 1606 + dependencies: 1607 + lru-cache: 6.0.0 1608 + 1609 + source-map-js@1.2.1: {} 1610 + 1611 + source-map@0.6.1: {} 1612 + 1613 + sprintf-js@1.0.3: {} 1614 + 1615 + string-argv@0.3.2: {} 1616 + 1617 + strip-json-comments@3.1.1: {} 1618 + 1619 + supports-color@8.1.1: 1620 + dependencies: 1621 + has-flag: 4.0.0 1622 + 1623 + supports-preserve-symlinks-flag@1.0.0: {} 1624 + 1625 + svelte-check@4.3.5(picomatch@4.0.3)(svelte@5.46.0)(typescript@5.9.3): 1626 + dependencies: 1627 + '@jridgewell/trace-mapping': 0.3.31 1628 + chokidar: 4.0.3 1629 + fdir: 6.5.0(picomatch@4.0.3) 1630 + picocolors: 1.1.1 1631 + sade: 1.8.1 1632 + svelte: 5.46.0 1633 + typescript: 5.9.3 1634 + transitivePeerDependencies: 1635 + - picomatch 1636 + 1637 + svelte@5.46.0: 1638 + dependencies: 1639 + '@jridgewell/remapping': 2.3.5 1640 + '@jridgewell/sourcemap-codec': 1.5.5 1641 + '@sveltejs/acorn-typescript': 1.0.8(acorn@8.15.0) 1642 + '@types/estree': 1.0.8 1643 + acorn: 8.15.0 1644 + aria-query: 5.3.2 1645 + axobject-query: 4.1.0 1646 + clsx: 2.1.1 1647 + devalue: 5.6.1 1648 + esm-env: 1.2.2 1649 + esrap: 2.2.1 1650 + is-reference: 3.0.3 1651 + locate-character: 3.0.0 1652 + magic-string: 0.30.21 1653 + zimmerframe: 1.1.4 1654 + 1655 + tinyglobby@0.2.15: 1656 + dependencies: 1657 + fdir: 6.5.0(picomatch@4.0.3) 1658 + picomatch: 4.0.3 1659 + 1660 + tslib@2.8.1: 1661 + optional: true 1662 + 1663 + typescript@5.8.2: {} 1664 + 1665 + typescript@5.9.3: {} 1666 + 1667 + ufo@1.6.1: {} 1668 + 1669 + undici-types@7.16.0: {} 1670 + 1671 + universalify@2.0.1: {} 1672 + 1673 + uri-js@4.4.1: 1674 + dependencies: 1675 + punycode: 2.3.1 1676 + 1677 + vite-plugin-dts@4.5.4(@types/node@24.10.4)(rolldown-vite@7.2.5(@types/node@24.10.4))(typescript@5.9.3): 1678 + dependencies: 1679 + '@microsoft/api-extractor': 7.55.2(@types/node@24.10.4) 1680 + '@rollup/pluginutils': 5.3.0 1681 + '@volar/typescript': 2.4.27 1682 + '@vue/language-core': 2.2.0(typescript@5.9.3) 1683 + compare-versions: 6.1.1 1684 + debug: 4.4.3 1685 + kolorist: 1.8.0 1686 + local-pkg: 1.1.2 1687 + magic-string: 0.30.21 1688 + typescript: 5.9.3 1689 + optionalDependencies: 1690 + vite: rolldown-vite@7.2.5(@types/node@24.10.4) 1691 + transitivePeerDependencies: 1692 + - '@types/node' 1693 + - rollup 1694 + - supports-color 1695 + 1696 + vitefu@1.1.1(rolldown-vite@7.2.5(@types/node@24.10.4)): 1697 + optionalDependencies: 1698 + vite: rolldown-vite@7.2.5(@types/node@24.10.4) 1699 + 1700 + vscode-uri@3.1.0: {} 1701 + 1702 + yallist@4.0.0: {} 1703 + 1704 + zimmerframe@1.1.4: {}