personal web client for Bluesky
typescript solidjs bluesky atcute

Compare changes

Choose any two refs to compare.

+2
.gitignore
··· 1 1 /.wrangler/ 2 + /.research/ 2 3 3 4 node_modules/ 4 5 dist/ ··· 11 12 yarn-*.log 12 13 13 14 *.local 15 + *.local.json 14 16 15 17 tsconfig.tsbuildinfo
+1
.prettierignore
··· 1 1 pnpm-lock.yaml 2 + worker-configuration.d.ts
+1 -1
.vscode/settings.json
··· 1 1 { 2 - "editor.defaultFormatter": "esbenp.prettier-vscode", 2 + "editor.defaultFormatter": "prettier.prettier-vscode", 3 3 "typescript.tsdk": "node_modules/typescript/lib", 4 4 "tailwindCSS.experimental.classRegex": ["tw`([^`]*)"] 5 5 }
+37 -32
package.json
··· 8 8 "fmt": "PRETTIER_EXPERIMENTAL_CLI=1 prettier --cache --write ." 9 9 }, 10 10 "dependencies": { 11 - "@atcute/atproto": "^3.1.0", 12 - "@atcute/bluemoji": "^3.1.0", 13 - "@atcute/bluesky": "^3.1.3", 11 + "@atcute/atproto": "^3.1.9", 12 + "@atcute/bluemoji": "^3.1.3", 13 + "@atcute/bluesky": "^3.2.12", 14 14 "@atcute/bluesky-richtext-parser": "^1.0.7", 15 - "@atcute/bluesky-richtext-segmenter": "^2.0.3", 16 - "@atcute/bluesky-search-parser": "^0.1.0", 17 - "@atcute/cbor": "^2.2.4", 18 - "@atcute/cid": "^2.2.3", 19 - "@atcute/client": "^4.0.3", 20 - "@atcute/identity": "^1.1.0", 21 - "@atcute/lexicons": "^1.1.0", 22 - "@atcute/oauth-browser-client": "2.0.0-next.0", 23 - "@atcute/tid": "^1.0.2", 15 + "@atcute/bluesky-richtext-segmenter": "^2.0.4", 16 + "@atcute/bluesky-search-parser": "^0.1.1", 17 + "@atcute/cbor": "^2.2.8", 18 + "@atcute/cid": "^2.2.6", 19 + "@atcute/client": "^4.1.0", 20 + "@atcute/identity": "^1.1.3", 21 + "@atcute/identity-resolver": "^1.2.0", 22 + "@atcute/lexicons": "^1.2.5", 23 + "@atcute/multibase": "^1.1.6", 24 + "@atcute/oauth-browser-client": "2.0.1", 25 + "@atcute/tid": "^1.0.3", 26 + "@atcute/uint8array": "^1.0.6", 27 + "@atcute/xrpc-server": "^0.1.3", 24 28 "@atlaskit/pragmatic-drag-and-drop": "1.6.0", 25 29 "@atlaskit/pragmatic-drag-and-drop-hitbox": "1.0.3", 26 - "@floating-ui/dom": "^1.7.1", 27 - "@floating-ui/utils": "^0.2.9", 30 + "@floating-ui/dom": "^1.7.4", 31 + "@floating-ui/utils": "^0.2.10", 28 32 "@kelinci/basa-lexicons": "^1.0.0", 29 - "@mary/array-fns": "jsr:^0.1.4", 33 + "@mary/array-fns": "jsr:^0.1.5", 30 34 "@mary/async-iterator-fns": "jsr:^0.1.1", 31 35 "@mary/batch-fetch": "jsr:^0.1.0", 32 36 "@mary/date-fns": "jsr:^0.1.3", ··· 35 39 "@mary/solid-freeze": "npm:@externdefs/solid-freeze@^0.1.1", 36 40 "@mary/solid-query": "npm:@externdefs/solid-query@^0.1.5", 37 41 "comlink": "^4.4.2", 38 - "hls.js": "^1.6.5", 42 + "hls.js": "^1.6.15", 39 43 "idb": "^8.0.3", 40 - "nanoid": "^5.1.5", 44 + "nanoid": "^5.1.6", 41 45 "solid-floating-ui": "~0.2.1", 42 - "solid-js": "^1.9.7", 43 - "webm-muxer": "^5.1.3" 46 + "solid-js": "^1.9.10", 47 + "mediabunny": "^1.25.7" 44 48 }, 45 49 "devDependencies": { 46 - "@cloudflare/vite-plugin": "^1.11.7", 50 + "@badrap/valita": "^0.4.6", 51 + "@cloudflare/vite-plugin": "^1.17.0", 47 52 "@trivago/prettier-plugin-sort-imports": "^5.2.2", 48 53 "@types/dom-close-watcher": "^1.0.0", 49 - "@types/dom-webcodecs": "^0.1.15", 50 - "@types/node": "^24.3.0", 51 - "autoprefixer": "^10.4.21", 54 + "@types/dom-webcodecs": "^0.1.18", 55 + "@types/node": "^24.10.1", 56 + "autoprefixer": "^10.4.22", 52 57 "babel-plugin-transform-typescript-const-enums": "^0.1.0", 53 - "prettier": "^3.6.0", 54 - "prettier-plugin-tailwindcss": "^0.6.13", 55 - "tailwindcss": "^3.4.17", 56 - "terser": "^5.43.1", 57 - "typescript": "~5.8.3", 58 - "vite": "^6.3.5", 59 - "vite-plugin-pwa": "0.21.0", 60 - "vite-plugin-solid": "^2.11.6", 61 - "wrangler": "^4.32.0" 58 + "prettier": "^3.7.4", 59 + "prettier-plugin-tailwindcss": "^0.7.2", 60 + "tailwindcss": "^3.4.18", 61 + "terser": "^5.44.1", 62 + "typescript": "~5.9.3", 63 + "vite": "^7.2.6", 64 + "vite-plugin-pwa": "1.1.0", 65 + "vite-plugin-solid": "^2.11.10", 66 + "wrangler": "^4.53.0" 62 67 }, 63 68 "pnpm": { 64 69 "patchedDependencies": {
+1503 -1544
pnpm-lock.yaml
··· 31 31 .: 32 32 dependencies: 33 33 '@atcute/atproto': 34 - specifier: ^3.1.0 35 - version: 3.1.0 34 + specifier: ^3.1.9 35 + version: 3.1.9 36 36 '@atcute/bluemoji': 37 - specifier: ^3.1.0 38 - version: 3.1.0 39 - '@atcute/bluesky': 40 37 specifier: ^3.1.3 41 38 version: 3.1.3 39 + '@atcute/bluesky': 40 + specifier: ^3.2.12 41 + version: 3.2.12 42 42 '@atcute/bluesky-richtext-parser': 43 43 specifier: ^1.0.7 44 44 version: 1.0.7 45 45 '@atcute/bluesky-richtext-segmenter': 46 - specifier: ^2.0.3 47 - version: 2.0.3 46 + specifier: ^2.0.4 47 + version: 2.0.4 48 48 '@atcute/bluesky-search-parser': 49 - specifier: ^0.1.0 50 - version: 0.1.0 49 + specifier: ^0.1.1 50 + version: 0.1.1 51 51 '@atcute/cbor': 52 - specifier: ^2.2.4 53 - version: 2.2.4 52 + specifier: ^2.2.8 53 + version: 2.2.8 54 54 '@atcute/cid': 55 - specifier: ^2.2.3 56 - version: 2.2.3 55 + specifier: ^2.2.6 56 + version: 2.2.6 57 57 '@atcute/client': 58 - specifier: ^4.0.3 59 - version: 4.0.3 58 + specifier: ^4.1.0 59 + version: 4.1.0 60 60 '@atcute/identity': 61 - specifier: ^1.1.0 62 - version: 1.1.0 61 + specifier: ^1.1.3 62 + version: 1.1.3 63 + '@atcute/identity-resolver': 64 + specifier: ^1.2.0 65 + version: 1.2.0(@atcute/identity@1.1.3) 63 66 '@atcute/lexicons': 64 - specifier: ^1.1.0 65 - version: 1.1.0 67 + specifier: ^1.2.5 68 + version: 1.2.5 69 + '@atcute/multibase': 70 + specifier: ^1.1.6 71 + version: 1.1.6 66 72 '@atcute/oauth-browser-client': 67 - specifier: 2.0.0-next.0 68 - version: 2.0.0-next.0 73 + specifier: 2.0.1 74 + version: 2.0.1 69 75 '@atcute/tid': 70 - specifier: ^1.0.2 71 - version: 1.0.2 76 + specifier: ^1.0.3 77 + version: 1.0.3 78 + '@atcute/uint8array': 79 + specifier: ^1.0.6 80 + version: 1.0.6 81 + '@atcute/xrpc-server': 82 + specifier: ^0.1.3 83 + version: 0.1.3 72 84 '@atlaskit/pragmatic-drag-and-drop': 73 85 specifier: 1.6.0 74 86 version: 1.6.0 ··· 76 88 specifier: 1.0.3 77 89 version: 1.0.3 78 90 '@floating-ui/dom': 79 - specifier: ^1.7.1 80 - version: 1.7.1 91 + specifier: ^1.7.4 92 + version: 1.7.4 81 93 '@floating-ui/utils': 82 - specifier: ^0.2.9 83 - version: 0.2.9(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea) 94 + specifier: ^0.2.10 95 + version: 0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea) 84 96 '@kelinci/basa-lexicons': 85 97 specifier: ^1.0.0 86 98 version: 1.0.0 87 99 '@mary/array-fns': 88 - specifier: jsr:^0.1.4 89 - version: '@jsr/mary__array-fns@0.1.4' 100 + specifier: jsr:^0.1.5 101 + version: '@jsr/mary__array-fns@0.1.5' 90 102 '@mary/async-iterator-fns': 91 103 specifier: jsr:^0.1.1 92 104 version: '@jsr/mary__async-iterator-fns@0.1.1' ··· 104 116 version: '@jsr/mary__exif-rm@0.2.2' 105 117 '@mary/solid-freeze': 106 118 specifier: npm:@externdefs/solid-freeze@^0.1.1 107 - version: '@externdefs/solid-freeze@0.1.1(solid-js@1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))' 119 + version: '@externdefs/solid-freeze@0.1.1(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))' 108 120 '@mary/solid-query': 109 121 specifier: npm:@externdefs/solid-query@^0.1.5 110 - version: '@externdefs/solid-query@0.1.5(solid-js@1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))' 122 + version: '@externdefs/solid-query@0.1.5(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))' 111 123 comlink: 112 124 specifier: ^4.4.2 113 125 version: 4.4.2 114 126 hls.js: 115 - specifier: ^1.6.5 116 - version: 1.6.5 127 + specifier: ^1.6.15 128 + version: 1.6.15 117 129 idb: 118 130 specifier: ^8.0.3 119 131 version: 8.0.3 132 + mediabunny: 133 + specifier: ^1.25.7 134 + version: 1.25.7 120 135 nanoid: 121 - specifier: ^5.1.5 122 - version: 5.1.5 136 + specifier: ^5.1.6 137 + version: 5.1.6 123 138 solid-floating-ui: 124 139 specifier: ~0.2.1 125 - version: 0.2.1(@floating-ui/dom@1.7.1)(solid-js@1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)) 140 + version: 0.2.1(@floating-ui/dom@1.7.4)(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)) 126 141 solid-js: 127 - specifier: ^1.9.7 128 - version: 1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 129 - webm-muxer: 130 - specifier: ^5.1.3 131 - version: 5.1.3 142 + specifier: ^1.9.10 143 + version: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 132 144 devDependencies: 145 + '@badrap/valita': 146 + specifier: ^0.4.6 147 + version: 0.4.6 133 148 '@cloudflare/vite-plugin': 134 - specifier: ^1.11.7 135 - version: 1.11.7(rollup@4.44.0)(vite@6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0))(workerd@1.20250816.0)(wrangler@4.32.0) 149 + specifier: ^1.17.0 150 + version: 1.17.0(vite@7.2.6(@types/node@24.10.1)(jiti@1.21.7)(terser@5.44.1))(workerd@1.20251202.0)(wrangler@4.53.0) 136 151 '@trivago/prettier-plugin-sort-imports': 137 152 specifier: ^5.2.2 138 - version: 5.2.2(prettier@3.6.0) 153 + version: 5.2.2(prettier@3.7.4) 139 154 '@types/dom-close-watcher': 140 155 specifier: ^1.0.0 141 156 version: 1.0.0 142 157 '@types/dom-webcodecs': 143 - specifier: ^0.1.15 144 - version: 0.1.15 158 + specifier: ^0.1.18 159 + version: 0.1.18 145 160 '@types/node': 146 - specifier: ^24.3.0 147 - version: 24.3.0 161 + specifier: ^24.10.1 162 + version: 24.10.1 148 163 autoprefixer: 149 - specifier: ^10.4.21 150 - version: 10.4.21(postcss@8.5.6) 164 + specifier: ^10.4.22 165 + version: 10.4.22(postcss@8.5.6) 151 166 babel-plugin-transform-typescript-const-enums: 152 167 specifier: ^0.1.0 153 - version: 0.1.0(@babel/core@7.27.4) 168 + version: 0.1.0(@babel/core@7.28.5) 154 169 prettier: 155 - specifier: ^3.6.0 156 - version: 3.6.0 170 + specifier: ^3.7.4 171 + version: 3.7.4 157 172 prettier-plugin-tailwindcss: 158 - specifier: ^0.6.13 159 - version: 0.6.13(@trivago/prettier-plugin-sort-imports@5.2.2(prettier@3.6.0))(prettier@3.6.0) 173 + specifier: ^0.7.2 174 + version: 0.7.2(@trivago/prettier-plugin-sort-imports@5.2.2(prettier@3.7.4))(prettier@3.7.4) 160 175 tailwindcss: 161 - specifier: ^3.4.17 162 - version: 3.4.17 176 + specifier: ^3.4.18 177 + version: 3.4.18 163 178 terser: 164 - specifier: ^5.43.1 165 - version: 5.43.1 179 + specifier: ^5.44.1 180 + version: 5.44.1 166 181 typescript: 167 - specifier: ~5.8.3 168 - version: 5.8.3 182 + specifier: ~5.9.3 183 + version: 5.9.3 169 184 vite: 170 - specifier: ^6.3.5 171 - version: 6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0) 185 + specifier: ^7.2.6 186 + version: 7.2.6(@types/node@24.10.1)(jiti@1.21.7)(terser@5.44.1) 172 187 vite-plugin-pwa: 173 - specifier: 0.21.0 174 - version: 0.21.0(patch_hash=003379ded749ad87080f87b428b17f04c4c88b6b64544df4d928aab76fbf6325)(@types/babel__core@7.20.5)(vite@6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0)) 188 + specifier: 1.1.0 189 + version: 1.1.0(patch_hash=003379ded749ad87080f87b428b17f04c4c88b6b64544df4d928aab76fbf6325)(@types/babel__core@7.20.5)(vite@7.2.6(@types/node@24.10.1)(jiti@1.21.7)(terser@5.44.1)) 175 190 vite-plugin-solid: 176 - specifier: ^2.11.6 177 - version: 2.11.6(solid-js@1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))(vite@6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0)) 191 + specifier: ^2.11.10 192 + version: 2.11.10(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))(vite@7.2.6(@types/node@24.10.1)(jiti@1.21.7)(terser@5.44.1)) 178 193 wrangler: 179 - specifier: ^4.32.0 180 - version: 4.32.0 194 + specifier: ^4.53.0 195 + version: 4.53.0 181 196 182 197 packages: 183 198 ··· 185 200 resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} 186 201 engines: {node: '>=10'} 187 202 188 - '@ampproject/remapping@2.3.0': 189 - resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} 190 - engines: {node: '>=6.0.0'} 191 - 192 203 '@apideck/better-ajv-errors@0.3.6': 193 204 resolution: {integrity: sha512-P+ZygBLZtkp0qqOAJJVX4oX/sFo5JR3eBWwwuqHHhK0GIgQOKWrAfiAaWX0aArHkRWHMuggFEgAZNxVPwPZYaA==} 194 205 engines: {node: '>=10'} 195 206 peerDependencies: 196 207 ajv: '>=8' 197 208 198 - '@atcute/atproto@3.1.0': 199 - resolution: {integrity: sha512-aJbDsY7FcIh8APWKAimBtshPwqoRE056tc0UV6vw4TW4e3nYaHedoJmKhlh/k8KQWxyw64MQThNGMaC89HNoTg==} 209 + '@atcute/atproto@3.1.9': 210 + resolution: {integrity: sha512-DyWwHCTdR4hY2BPNbLXgVmm7lI+fceOwWbE4LXbGvbvVtSn+ejSVFaAv01Ra3kWDha0whsOmbJL8JP0QPpf1+w==} 200 211 201 - '@atcute/bluemoji@3.1.0': 202 - resolution: {integrity: sha512-8EfcEDrXlStvu57WVcGSeDWfbEDKTjfI43rk+oohe2sdYU113ObTe8Pv1vW0DRfOYcQqR4+eF2SbpvXE6//24g==} 212 + '@atcute/bluemoji@3.1.3': 213 + resolution: {integrity: sha512-IV7Kidr32BueYvcr/Q2MPupu06oAZv0O0MahQc0X/g4ykg6d5B4gGvBgBV/iHwW6uAO9s1TO1RrsEdu1FFnowQ==} 203 214 204 215 '@atcute/bluesky-richtext-parser@1.0.7': 205 216 resolution: {integrity: sha512-nOvU699OXiGMbyswao7JJnY0C9WkwE7PVC/m5WWt0UN9fsXSOor9IZWw+v9SATp+94BTJoG38XyUomUaJnoQRA==} 206 217 207 - '@atcute/bluesky-richtext-segmenter@2.0.3': 208 - resolution: {integrity: sha512-8Jy2EHdqx0mKI0k8l4h2cnaBN1pGgSzSazO0Gp85ttIQmgynZsQX6l4OWgaQx0aNZFmqZRXJ7N0rj/b2dlO1eQ==} 218 + '@atcute/bluesky-richtext-segmenter@2.0.4': 219 + resolution: {integrity: sha512-6m5QEAv4lU3qTy5MeJXJRRG33acipYJnMW1T7W/KrMyThGhQ7jSTTh8Z48quElgivgX7MDj6o/ow1oLUsjsCKw==} 220 + 221 + '@atcute/bluesky-search-parser@0.1.1': 222 + resolution: {integrity: sha512-jX01yzA4CWXfnpAmOL5P9kjpWEhVvIq2xEyYLZdFVpYe1v6xclUem1ir+Q8+aWoAcYwqQq6pM16XxkGw0yi5nA==} 209 223 210 - '@atcute/bluesky-search-parser@0.1.0': 211 - resolution: {integrity: sha512-bTClwD9VGwaECOyWe1mf8V6t+7/77e3tiUHTE6CSrHXOJ/yM8N2xbn+dIi2ki2JLHvgvBN9wsWpFLykgfWhBaw==} 224 + '@atcute/bluesky@3.2.12': 225 + resolution: {integrity: sha512-hVhAO7b4bxu9iwl/UdqugWDvUtSrf0VDN+dTalKxpJrJ3RrZb+jL1CB1AmdWOCZgHrOxXsgAJF4mpnzqd2D3oA==} 212 226 213 - '@atcute/bluesky@3.1.3': 214 - resolution: {integrity: sha512-avb9HLUqmCfIU/ZF6WeSjxLwUbzqST2JTF6efW7n1+3kw+oKRe6hhgsZoTka+3VrBZEpqveGt5O5TYdhzW0+lQ==} 227 + '@atcute/cbor@2.2.8': 228 + resolution: {integrity: sha512-UzOAN9BuN6JCXgn0ryV8qZuRJUDrNqrbLd6EFM8jc6RYssjRyGRxNy6RZ1NU/07Hd8Tq/0pz8+nQiMu5Zai5uw==} 215 229 216 - '@atcute/cbor@2.2.4': 217 - resolution: {integrity: sha512-8Y/OTM8zs5VInOCjfx4f9Idiiz7ygM/FkfWv/HW3/ZUsXczn1xk7GzTBbm4P5crn4C5luwDGpO7FwClMOERrow==} 230 + '@atcute/cid@2.2.6': 231 + resolution: {integrity: sha512-bTAHHbJ24p+E//V4KCS4xdmd39o211jJswvqQOevj7vk+5IYcgDLx1ryZWZ1sEPOo9x875li/kj5gpKL14RDwQ==} 218 232 219 - '@atcute/cid@2.2.3': 220 - resolution: {integrity: sha512-WEzNSL1EuCVtCQDFYEBIm4dEP6PcMEwi8IYUVIWvT77eO5EjY58F63z5T4qMABxSBM0+L4kqMxypdL1Fzf6LZw==} 233 + '@atcute/client@4.1.0': 234 + resolution: {integrity: sha512-AYhSu3RSDA2VDkVGOmad320NRbUUUf5pCFWJcOzlk25YC/4kyzmMFfpzhf1jjjEcY+anNBXGGhav/kKB1evggQ==} 221 235 222 - '@atcute/client@4.0.3': 223 - resolution: {integrity: sha512-RIOZWFVLca/HiPAAUDqQPOdOreCxTbL5cb+WUf5yqQOKIu5yEAP3eksinmlLmgIrlr5qVOE7brazUUzaskFCfw==} 236 + '@atcute/crypto@2.2.6': 237 + resolution: {integrity: sha512-vkuexF+kmrKE1/Uqzub99Qi4QpnxA2jbu60E6PTgL4XypELQ6rb59MB/J1VbY2gs0kd3ET7+L3+NWpKD5nXyfA==} 224 238 225 - '@atcute/identity-resolver@1.1.3': 226 - resolution: {integrity: sha512-KZgGgg99CWaV7Df3+h3X/WMrDzTPQVfsaoIVbTNLx2B56BvCL2EmaxPSVw/7BFUJMZHlVU4rtoEB4lyvNyMswA==} 239 + '@atcute/identity-resolver@1.2.0': 240 + resolution: {integrity: sha512-5UbSJfdV3JIkF8ksXz7g4nKBWasf2wROvzM66cfvTIWydWFO6/oS1KZd+zo9Eokje5Scf5+jsY9ZfgVARLepXg==} 227 241 peerDependencies: 228 242 '@atcute/identity': ^1.0.0 229 243 230 - '@atcute/identity@1.1.0': 231 - resolution: {integrity: sha512-6vRvRqJatDB+JUQsb+UswYmtBGQnSZcqC3a2y6H5DB/v5KcIh+6nFFtc17G0+3W9rxdk7k9M4KkgkdKf/YDNoQ==} 244 + '@atcute/identity@1.1.3': 245 + resolution: {integrity: sha512-oIqPoI8TwWeQxvcLmFEZLdN2XdWcaLVtlm8pNk0E72As9HNzzD9pwKPrLr3rmTLRIoULPPFmq9iFNsTeCIU9ng==} 232 246 233 - '@atcute/lexicons@1.1.0': 234 - resolution: {integrity: sha512-LFqwnria78xLYb62Ri/+WwQpUTgZp2DuyolNGIIOV1dpiKhFFFh//nscHMA6IExFLQRqWDs3tTjy7zv0h3sf1Q==} 247 + '@atcute/lexicons@1.2.5': 248 + resolution: {integrity: sha512-9yO9WdgxW8jZ7SbzUycH710z+JmsQ9W9n5S6i6eghYju32kkluFmgBeS47r8e8p2+Dv4DemS7o/3SUGsX9FR5Q==} 235 249 236 - '@atcute/lexicons@1.1.1': 237 - resolution: {integrity: sha512-k6qy5p3j9fJJ6ekaMPfEfp3ni4TW/XNuH9ZmsuwC0fi0tOjp+Fa8ZQakHwnqOzFt/cVBfGcmYE/lKNAbeTjgUg==} 250 + '@atcute/multibase@1.1.6': 251 + resolution: {integrity: sha512-HBxuCgYLKPPxETV0Rot4VP9e24vKl8JdzGCZOVsDaOXJgbRZoRIF67Lp0H/OgnJeH/Xpva8Z5ReoTNJE5dn3kg==} 238 252 239 - '@atcute/multibase@1.1.4': 240 - resolution: {integrity: sha512-NUf5AeeSOmuZHGU+4GAaMtISJoG+ZHtW/vUVA4lK/YDt/7LODAW0Fd0NNIIUPVUoW0xJS6zSEIWvwLLuxmEHhA==} 253 + '@atcute/oauth-browser-client@2.0.1': 254 + resolution: {integrity: sha512-lG021GkeORG06zfFf4bH85egObjBEKHNgAWHvbtY/E2dX4wxo88hf370pJDx8acdnuUJLJ2VKPikJtZwo4Heeg==} 241 255 242 - '@atcute/oauth-browser-client@2.0.0-next.0': 243 - resolution: {integrity: sha512-BaVU0Mu5ACerdWdMok6kvwwAuPJunbQQk0C51zpxNLpT0P/SYnun+3xX7bcrbtDG1lXn+r+Qld88P+zonY1wPA==} 256 + '@atcute/tid@1.0.3': 257 + resolution: {integrity: sha512-wfMJx1IMdnu0CZgWl0uR4JO2s6PGT1YPhpytD4ZHzEYKKQVuqV6Eb/7vieaVo1eYNMp2FrY67FZObeR7utRl2w==} 244 258 245 - '@atcute/tid@1.0.2': 246 - resolution: {integrity: sha512-ahmjroNyeDPJhtuf3+HTJropaH04HmJ8fhntDu73Gpz/RkAF7+nkz6kcP2QTgfvMCgMPAJUdskAAP82GPDTY9w==} 259 + '@atcute/uint8array@1.0.6': 260 + resolution: {integrity: sha512-ucfRBQc7BFT8n9eCyGOzDHEMKF/nZwhS2pPao4Xtab1ML3HdFYcX2DM1tadCzas85QTGxHe5urnUAAcNKGRi9A==} 247 261 248 - '@atcute/uint8array@1.0.3': 249 - resolution: {integrity: sha512-M/K+ihiVW8Pl2PFLzaC4E3l4JaZ1IH05Q0AbPWUC4cVHnd/gZ/1kAF5ngdtGvJeDMirHZ2VAy7OmAsPwR/2nlA==} 262 + '@atcute/util-fetch@1.0.4': 263 + resolution: {integrity: sha512-sIU9Qk0dE8PLEXSfhy+gIJV+HpiiknMytCI2SqLlqd0vgZUtEKI/EQfP+23LHWvP+CLCzVDOa6cpH045OlmNBg==} 250 264 251 - '@atcute/util-fetch@1.0.1': 252 - resolution: {integrity: sha512-Clc0E/5ufyGBVfYBUwWNlHONlZCoblSr4Ho50l1LhmRPGB1Wu/AQ9Sz+rsBg7fdaW/auve8ulmwhRhnX2cGRow==} 265 + '@atcute/xrpc-server@0.1.3': 266 + resolution: {integrity: sha512-AMig6MuAL5VfXRZVsQqQXKCXnZgpjTc6UM6RggvyE1qVT8y9tZPFXdP5tt/p6Jf+h4cAw+XMu2uyrGpUmnTSyQ==} 253 267 254 268 '@atlaskit/pragmatic-drag-and-drop-hitbox@1.0.3': 255 269 resolution: {integrity: sha512-/Sbu/HqN2VGLYBhnsG7SbRNg98XKkbF6L7XDdBi+izRybfaK1FeMfodPpm/xnBHPJzwYMdkE0qtLyv6afhgMUA==} ··· 261 275 resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} 262 276 engines: {node: '>=6.9.0'} 263 277 264 - '@babel/compat-data@7.27.5': 265 - resolution: {integrity: sha512-KiRAp/VoJaWkkte84TvUd9qjdbZAdiqyvMxrGl1N6vzFogKmaLgoM3L1kgtLicp2HP5fBJS8JrZKLVIZGVJAVg==} 278 + '@babel/compat-data@7.28.5': 279 + resolution: {integrity: sha512-6uFXyCayocRbqhZOB+6XcuZbkMNimwfVGFji8CTZnCzOHVGvDqzvitu1re2AU5LROliz7eQPhB8CpAMvnx9EjA==} 266 280 engines: {node: '>=6.9.0'} 267 281 268 - '@babel/core@7.27.4': 269 - resolution: {integrity: sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g==} 282 + '@babel/core@7.28.5': 283 + resolution: {integrity: sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw==} 270 284 engines: {node: '>=6.9.0'} 271 285 272 - '@babel/generator@7.27.5': 273 - resolution: {integrity: sha512-ZGhA37l0e/g2s1Cnzdix0O3aLYm66eF8aufiVteOgnwxgnRP8GoyMj7VWsgWnQbVKXyge7hqrFh2K2TQM6t1Hw==} 286 + '@babel/generator@7.28.5': 287 + resolution: {integrity: sha512-3EwLFhZ38J4VyIP6WNtt2kUdW9dokXA9Cr4IVIFHuCpZ3H8/YFOl5JjZHisrn1fATPBmKKqXzDFvh9fUwHz6CQ==} 274 288 engines: {node: '>=6.9.0'} 275 289 276 290 '@babel/helper-annotate-as-pure@7.27.3': ··· 281 295 resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==} 282 296 engines: {node: '>=6.9.0'} 283 297 284 - '@babel/helper-create-class-features-plugin@7.27.1': 285 - resolution: {integrity: sha512-QwGAmuvM17btKU5VqXfb+Giw4JcN0hjuufz3DYnpeVDvZLAObloM77bhMXiqry3Iio+Ai4phVRDwl6WU10+r5A==} 298 + '@babel/helper-create-class-features-plugin@7.28.5': 299 + resolution: {integrity: sha512-q3WC4JfdODypvxArsJQROfupPBq9+lMwjKq7C33GhbFYJsufD0yd/ziwD+hJucLeWsnFPWZjsU2DNFqBPE7jwQ==} 286 300 engines: {node: '>=6.9.0'} 287 301 peerDependencies: 288 302 '@babel/core': ^7.0.0 289 303 290 - '@babel/helper-create-regexp-features-plugin@7.27.1': 291 - resolution: {integrity: sha512-uVDC72XVf8UbrH5qQTc18Agb8emwjTiZrQE11Nv3CuBEZmVvTwwE9CBUEvHku06gQCAyYf8Nv6ja1IN+6LMbxQ==} 304 + '@babel/helper-create-regexp-features-plugin@7.28.5': 305 + resolution: {integrity: sha512-N1EhvLtHzOvj7QQOUCCS3NrPJP8c5W6ZXCHDn7Yialuy1iu4r5EmIYkXlKNqT99Ciw+W0mDqWoR6HWMZlFP3hw==} 292 306 engines: {node: '>=6.9.0'} 293 307 peerDependencies: 294 308 '@babel/core': ^7.0.0 295 309 296 - '@babel/helper-define-polyfill-provider@0.6.4': 297 - resolution: {integrity: sha512-jljfR1rGnXXNWnmQg2K3+bvhkxB51Rl32QRaOTuwwjviGrHzIbSc8+x9CpraDtbT7mfyjXObULP4w/adunNwAw==} 310 + '@babel/helper-define-polyfill-provider@0.6.5': 311 + resolution: {integrity: sha512-uJnGFcPsWQK8fvjgGP5LZUZZsYGIoPeRjSF5PGwrelYgq7Q15/Ft9NGFp1zglwgIv//W0uG4BevRuSJRyylZPg==} 298 312 peerDependencies: 299 313 '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 300 314 301 - '@babel/helper-member-expression-to-functions@7.27.1': 302 - resolution: {integrity: sha512-E5chM8eWjTp/aNoVpcbfM7mLxu9XGLWYise2eBKGQomAk/Mb4XoxyqXTZbuTohbsl8EKqdlMhnDI2CCLfcs9wA==} 315 + '@babel/helper-globals@7.28.0': 316 + resolution: {integrity: sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==} 317 + engines: {node: '>=6.9.0'} 318 + 319 + '@babel/helper-member-expression-to-functions@7.28.5': 320 + resolution: {integrity: sha512-cwM7SBRZcPCLgl8a7cY0soT1SptSzAlMH39vwiRpOQkJlh53r5hdHwLSCZpQdVLT39sZt+CRpNwYG4Y2v77atg==} 303 321 engines: {node: '>=6.9.0'} 304 322 305 323 '@babel/helper-module-imports@7.18.6': ··· 310 328 resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==} 311 329 engines: {node: '>=6.9.0'} 312 330 313 - '@babel/helper-module-transforms@7.27.3': 314 - resolution: {integrity: sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==} 331 + '@babel/helper-module-transforms@7.28.3': 332 + resolution: {integrity: sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==} 315 333 engines: {node: '>=6.9.0'} 316 334 peerDependencies: 317 335 '@babel/core': ^7.0.0 ··· 344 362 resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} 345 363 engines: {node: '>=6.9.0'} 346 364 347 - '@babel/helper-validator-identifier@7.27.1': 348 - resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} 365 + '@babel/helper-validator-identifier@7.28.5': 366 + resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} 349 367 engines: {node: '>=6.9.0'} 350 368 351 369 '@babel/helper-validator-option@7.27.1': 352 370 resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==} 353 371 engines: {node: '>=6.9.0'} 354 372 355 - '@babel/helper-wrap-function@7.27.1': 356 - resolution: {integrity: sha512-NFJK2sHUvrjo8wAU/nQTWU890/zB2jj0qBcCbZbbf+005cAsv6tMjXz31fBign6M5ov1o0Bllu+9nbqkfsjjJQ==} 373 + '@babel/helper-wrap-function@7.28.3': 374 + resolution: {integrity: sha512-zdf983tNfLZFletc0RRXYrHrucBEg95NIFMkn6K9dbeMYnsgHaSBGcQqdsCSStG2PYwRre0Qc2NNSCXbG+xc6g==} 357 375 engines: {node: '>=6.9.0'} 358 376 359 - '@babel/helpers@7.27.6': 360 - resolution: {integrity: sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==} 377 + '@babel/helpers@7.28.4': 378 + resolution: {integrity: sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==} 361 379 engines: {node: '>=6.9.0'} 362 380 363 - '@babel/parser@7.27.5': 364 - resolution: {integrity: sha512-OsQd175SxWkGlzbny8J3K8TnnDD0N3lrIUtB92xwyRpzaenGZhxDvxN/JgU00U3CDZNj9tPuDJ5H0WS4Nt3vKg==} 381 + '@babel/parser@7.28.5': 382 + resolution: {integrity: sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==} 365 383 engines: {node: '>=6.0.0'} 366 384 hasBin: true 367 385 368 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.27.1': 369 - resolution: {integrity: sha512-QPG3C9cCVRQLxAVwmefEmwdTanECuUBMQZ/ym5kiw3XKCGA7qkuQLcjWWHcrD/GKbn/WmJwaezfuuAOcyKlRPA==} 386 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5': 387 + resolution: {integrity: sha512-87GDMS3tsmMSi/3bWOte1UblL+YUTFMV8SZPZ2eSEL17s74Cw/l63rR6NmGVKMYW2GYi85nE+/d6Hw5N0bEk2Q==} 370 388 engines: {node: '>=6.9.0'} 371 389 peerDependencies: 372 390 '@babel/core': ^7.0.0 ··· 389 407 peerDependencies: 390 408 '@babel/core': ^7.13.0 391 409 392 - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.27.1': 393 - resolution: {integrity: sha512-6BpaYGDavZqkI6yT+KSPdpZFfpnd68UKXbcjI9pJ13pvHhPrCKWOOLp+ysvMeA+DxnhuPpgIaRpxRxo5A9t5jw==} 410 + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.28.3': 411 + resolution: {integrity: sha512-b6YTX108evsvE4YgWyQ921ZAFFQm3Bn+CA3+ZXlNVnPhx+UfsVURoPjfGAPCjBgrqo30yX/C2nZGX96DxvR9Iw==} 394 412 engines: {node: '>=6.9.0'} 395 413 peerDependencies: 396 414 '@babel/core': ^7.0.0 ··· 431 449 peerDependencies: 432 450 '@babel/core': ^7.0.0-0 433 451 434 - '@babel/plugin-transform-async-generator-functions@7.27.1': 435 - resolution: {integrity: sha512-eST9RrwlpaoJBDHShc+DS2SG4ATTi2MYNb4OxYkf3n+7eb49LWpnS+HSpVfW4x927qQwgk8A2hGNVaajAEw0EA==} 452 + '@babel/plugin-transform-async-generator-functions@7.28.0': 453 + resolution: {integrity: sha512-BEOdvX4+M765icNPZeidyADIvQ1m1gmunXufXxvRESy/jNNyfovIqUyE7MVgGBjWktCoJlzvFA1To2O4ymIO3Q==} 436 454 engines: {node: '>=6.9.0'} 437 455 peerDependencies: 438 456 '@babel/core': ^7.0.0-0 ··· 449 467 peerDependencies: 450 468 '@babel/core': ^7.0.0-0 451 469 452 - '@babel/plugin-transform-block-scoping@7.27.5': 453 - resolution: {integrity: sha512-JF6uE2s67f0y2RZcm2kpAUEbD50vH62TyWVebxwHAlbSdM49VqPz8t4a1uIjp4NIOIZ4xzLfjY5emt/RCyC7TQ==} 470 + '@babel/plugin-transform-block-scoping@7.28.5': 471 + resolution: {integrity: sha512-45DmULpySVvmq9Pj3X9B+62Xe+DJGov27QravQJU1LLcapR6/10i+gYVAucGGJpHBp5mYxIMK4nDAT/QDLr47g==} 454 472 engines: {node: '>=6.9.0'} 455 473 peerDependencies: 456 474 '@babel/core': ^7.0.0-0 ··· 461 479 peerDependencies: 462 480 '@babel/core': ^7.0.0-0 463 481 464 - '@babel/plugin-transform-class-static-block@7.27.1': 465 - resolution: {integrity: sha512-s734HmYU78MVzZ++joYM+NkJusItbdRcbm+AGRgJCt3iA+yux0QpD9cBVdz3tKyrjVYWRl7j0mHSmv4lhV0aoA==} 482 + '@babel/plugin-transform-class-static-block@7.28.3': 483 + resolution: {integrity: sha512-LtPXlBbRoc4Njl/oh1CeD/3jC+atytbnf/UqLoqTDcEYGUPj022+rvfkbDYieUrSj3CaV4yHDByPE+T2HwfsJg==} 466 484 engines: {node: '>=6.9.0'} 467 485 peerDependencies: 468 486 '@babel/core': ^7.12.0 469 487 470 - '@babel/plugin-transform-classes@7.27.1': 471 - resolution: {integrity: sha512-7iLhfFAubmpeJe/Wo2TVuDrykh/zlWXLzPNdL0Jqn/Xu8R3QQ8h9ff8FQoISZOsw74/HFqFI7NX63HN7QFIHKA==} 488 + '@babel/plugin-transform-classes@7.28.4': 489 + resolution: {integrity: sha512-cFOlhIYPBv/iBoc+KS3M6et2XPtbT2HiCRfBXWtfpc9OAyostldxIf9YAYB6ypURBBbx+Qv6nyrLzASfJe+hBA==} 472 490 engines: {node: '>=6.9.0'} 473 491 peerDependencies: 474 492 '@babel/core': ^7.0.0-0 ··· 479 497 peerDependencies: 480 498 '@babel/core': ^7.0.0-0 481 499 482 - '@babel/plugin-transform-destructuring@7.27.3': 483 - resolution: {integrity: sha512-s4Jrok82JpiaIprtY2nHsYmrThKvvwgHwjgd7UMiYhZaN0asdXNLr0y+NjTfkA7SyQE5i2Fb7eawUOZmLvyqOA==} 500 + '@babel/plugin-transform-destructuring@7.28.5': 501 + resolution: {integrity: sha512-Kl9Bc6D0zTUcFUvkNuQh4eGXPKKNDOJQXVyyM4ZAQPMveniJdxi8XMJwLo+xSoW3MIq81bD33lcUe9kZpl0MCw==} 484 502 engines: {node: '>=6.9.0'} 485 503 peerDependencies: 486 504 '@babel/core': ^7.0.0-0 ··· 509 527 peerDependencies: 510 528 '@babel/core': ^7.0.0-0 511 529 512 - '@babel/plugin-transform-exponentiation-operator@7.27.1': 513 - resolution: {integrity: sha512-uspvXnhHvGKf2r4VVtBpeFnuDWsJLQ6MF6lGJLC89jBR1uoVeqM416AZtTuhTezOfgHicpJQmoD5YUakO/YmXQ==} 530 + '@babel/plugin-transform-explicit-resource-management@7.28.0': 531 + resolution: {integrity: sha512-K8nhUcn3f6iB+P3gwCv/no7OdzOZQcKchW6N389V6PD8NUWKZHzndOd9sPDVbMoBsbmjMqlB4L9fm+fEFNVlwQ==} 532 + engines: {node: '>=6.9.0'} 533 + peerDependencies: 534 + '@babel/core': ^7.0.0-0 535 + 536 + '@babel/plugin-transform-exponentiation-operator@7.28.5': 537 + resolution: {integrity: sha512-D4WIMaFtwa2NizOp+dnoFjRez/ClKiC2BqqImwKd1X28nqBtZEyCYJ2ozQrrzlxAFrcrjxo39S6khe9RNDlGzw==} 514 538 engines: {node: '>=6.9.0'} 515 539 peerDependencies: 516 540 '@babel/core': ^7.0.0-0 ··· 545 569 peerDependencies: 546 570 '@babel/core': ^7.0.0-0 547 571 548 - '@babel/plugin-transform-logical-assignment-operators@7.27.1': 549 - resolution: {integrity: sha512-SJvDs5dXxiae4FbSL1aBJlG4wvl594N6YEVVn9e3JGulwioy6z3oPjx/sQBO3Y4NwUu5HNix6KJ3wBZoewcdbw==} 572 + '@babel/plugin-transform-logical-assignment-operators@7.28.5': 573 + resolution: {integrity: sha512-axUuqnUTBuXyHGcJEVVh9pORaN6wC5bYfE7FGzPiaWa3syib9m7g+/IT/4VgCOe2Upef43PHzeAvcrVek6QuuA==} 550 574 engines: {node: '>=6.9.0'} 551 575 peerDependencies: 552 576 '@babel/core': ^7.0.0-0 ··· 569 593 peerDependencies: 570 594 '@babel/core': ^7.0.0-0 571 595 572 - '@babel/plugin-transform-modules-systemjs@7.27.1': 573 - resolution: {integrity: sha512-w5N1XzsRbc0PQStASMksmUeqECuzKuTJer7kFagK8AXgpCMkeDMO5S+aaFb7A51ZYDF7XI34qsTX+fkHiIm5yA==} 596 + '@babel/plugin-transform-modules-systemjs@7.28.5': 597 + resolution: {integrity: sha512-vn5Jma98LCOeBy/KpeQhXcV2WZgaRUtjwQmjoBuLNlOmkg0fB5pdvYVeWRYI69wWKwK2cD1QbMiUQnoujWvrew==} 574 598 engines: {node: '>=6.9.0'} 575 599 peerDependencies: 576 600 '@babel/core': ^7.0.0-0 ··· 605 629 peerDependencies: 606 630 '@babel/core': ^7.0.0-0 607 631 608 - '@babel/plugin-transform-object-rest-spread@7.27.3': 609 - resolution: {integrity: sha512-7ZZtznF9g4l2JCImCo5LNKFHB5eXnN39lLtLY5Tg+VkR0jwOt7TBciMckuiQIOIW7L5tkQOCh3bVGYeXgMx52Q==} 632 + '@babel/plugin-transform-object-rest-spread@7.28.4': 633 + resolution: {integrity: sha512-373KA2HQzKhQCYiRVIRr+3MjpCObqzDlyrM6u4I201wL8Mp2wHf7uB8GhDwis03k2ti8Zr65Zyyqs1xOxUF/Ew==} 610 634 engines: {node: '>=6.9.0'} 611 635 peerDependencies: 612 636 '@babel/core': ^7.0.0-0 ··· 623 647 peerDependencies: 624 648 '@babel/core': ^7.0.0-0 625 649 626 - '@babel/plugin-transform-optional-chaining@7.27.1': 627 - resolution: {integrity: sha512-BQmKPPIuc8EkZgNKsv0X4bPmOoayeu4F1YCwx2/CfmDSXDbp7GnzlUH+/ul5VGfRg1AoFPsrIThlEBj2xb4CAg==} 650 + '@babel/plugin-transform-optional-chaining@7.28.5': 651 + resolution: {integrity: sha512-N6fut9IZlPnjPwgiQkXNhb+cT8wQKFlJNqcZkWlcTqkcqx6/kU4ynGmLFoa4LViBSirn05YAwk+sQBbPfxtYzQ==} 628 652 engines: {node: '>=6.9.0'} 629 653 peerDependencies: 630 654 '@babel/core': ^7.0.0-0 631 655 632 - '@babel/plugin-transform-parameters@7.27.1': 633 - resolution: {integrity: sha512-018KRk76HWKeZ5l4oTj2zPpSh+NbGdt0st5S6x0pga6HgrjBOJb24mMDHorFopOOd6YHkLgOZ+zaCjZGPO4aKg==} 656 + '@babel/plugin-transform-parameters@7.27.7': 657 + resolution: {integrity: sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg==} 634 658 engines: {node: '>=6.9.0'} 635 659 peerDependencies: 636 660 '@babel/core': ^7.0.0-0 ··· 653 677 peerDependencies: 654 678 '@babel/core': ^7.0.0-0 655 679 656 - '@babel/plugin-transform-regenerator@7.27.5': 657 - resolution: {integrity: sha512-uhB8yHerfe3MWnuLAhEbeQ4afVoqv8BQsPqrTv7e/jZ9y00kJL6l9a/f4OWaKxotmjzewfEyXE1vgDJenkQ2/Q==} 680 + '@babel/plugin-transform-regenerator@7.28.4': 681 + resolution: {integrity: sha512-+ZEdQlBoRg9m2NnzvEeLgtvBMO4tkFBw5SQIUgLICgTrumLoU7lr+Oghi6km2PFj+dbUt2u1oby2w3BDO9YQnA==} 658 682 engines: {node: '>=6.9.0'} 659 683 peerDependencies: 660 684 '@babel/core': ^7.0.0-0 ··· 725 749 peerDependencies: 726 750 '@babel/core': ^7.0.0 727 751 728 - '@babel/preset-env@7.27.2': 729 - resolution: {integrity: sha512-Ma4zSuYSlGNRlCLO+EAzLnCmJK2vdstgv+n7aUP+/IKZrOfWHOJVdSJtuub8RzHTj3ahD37k5OKJWvzf16TQyQ==} 752 + '@babel/preset-env@7.28.5': 753 + resolution: {integrity: sha512-S36mOoi1Sb6Fz98fBfE+UZSpYw5mJm0NUHtIKrOuNcqeFauy1J6dIvXm2KRVKobOSaGq4t/hBXdN4HGU3wL9Wg==} 730 754 engines: {node: '>=6.9.0'} 731 755 peerDependencies: 732 756 '@babel/core': ^7.0.0-0 ··· 736 760 peerDependencies: 737 761 '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 738 762 739 - '@babel/runtime@7.27.6': 740 - resolution: {integrity: sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==} 763 + '@babel/runtime@7.28.4': 764 + resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==} 741 765 engines: {node: '>=6.9.0'} 742 766 743 767 '@babel/template@7.27.2': 744 768 resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==} 745 769 engines: {node: '>=6.9.0'} 746 770 747 - '@babel/traverse@7.27.4': 748 - resolution: {integrity: sha512-oNcu2QbHqts9BtOWJosOVJapWjBDSxGCpFvikNR5TGDYDQf3JwpIoMzIKrvfoti93cLfPJEG4tH9SPVeyCGgdA==} 771 + '@babel/traverse@7.28.5': 772 + resolution: {integrity: sha512-TCCj4t55U90khlYkVV/0TfkJkAkUg3jZFA3Neb7unZT8CPok7iiRfaX0F+WnqWqt7OxhOn0uBKXCw4lbL8W0aQ==} 749 773 engines: {node: '>=6.9.0'} 750 774 751 - '@babel/types@7.27.6': 752 - resolution: {integrity: sha512-ETyHEk2VHHvl9b9jZP5IHPavHYk57EhanlRRuae9XCpb/j5bDCbPPMOBfCWhnl/7EDJz0jEMCi/RhccCE8r1+Q==} 775 + '@babel/types@7.28.5': 776 + resolution: {integrity: sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==} 753 777 engines: {node: '>=6.9.0'} 754 778 755 - '@badrap/valita@0.4.5': 756 - resolution: {integrity: sha512-4QwGbuhh/JesHRQj79mO/l37PvJj4l/tlAu7+S1n4h47qwaNpZ0WDvIwUGLYUsdi9uQ5UPpiG9wb1Wm3XUFBUQ==} 779 + '@badrap/valita@0.4.6': 780 + resolution: {integrity: sha512-4kdqcjyxo/8RQ8ayjms47HCWZIF5981oE5nIenbfThKDxWXtEHKipAOWlflpPJzZx9y/JWYQkp18Awr7VuepFg==} 757 781 engines: {node: '>= 18'} 758 782 759 - '@cloudflare/kv-asset-handler@0.4.0': 760 - resolution: {integrity: sha512-+tv3z+SPp+gqTIcImN9o0hqE9xyfQjI1XD9pL6NuKjua9B1y7mNYv0S9cP+QEbA4ppVgGZEmKOvHX5G5Ei1CVA==} 783 + '@cloudflare/kv-asset-handler@0.4.1': 784 + resolution: {integrity: sha512-Nu8ahitGFFJztxUml9oD/DLb7Z28C8cd8F46IVQ7y5Btz575pvMY8AqZsXkX7Gds29eCKdMgIHjIvzskHgPSFg==} 761 785 engines: {node: '>=18.0.0'} 762 786 763 - '@cloudflare/unenv-preset@2.6.2': 764 - resolution: {integrity: sha512-C7/tW7Qy+wGOCmHXu7xpP1TF3uIhRoi7zVY7dmu/SOSGjPilK+lSQ2lIRILulZsT467ZJNlI0jBxMbd8LzkGRg==} 787 + '@cloudflare/unenv-preset@2.7.13': 788 + resolution: {integrity: sha512-NulO1H8R/DzsJguLC0ndMuk4Ufv0KSlN+E54ay9rn9ZCQo0kpAPwwh3LhgpZ96a3Dr6L9LqW57M4CqC34iLOvw==} 765 789 peerDependencies: 766 - unenv: 2.0.0-rc.19 767 - workerd: ^1.20250802.0 790 + unenv: 2.0.0-rc.24 791 + workerd: ^1.20251202.0 768 792 peerDependenciesMeta: 769 793 workerd: 770 794 optional: true 771 795 772 - '@cloudflare/vite-plugin@1.11.7': 773 - resolution: {integrity: sha512-8CN3B/TTeOJmfququLvBIUdE8Fh6O+6afI2u/AsUYyAiPddEcVF5w3B1OSSn2v+b/uBJX0s3SrGbJ1TXFPT7MA==} 796 + '@cloudflare/vite-plugin@1.17.0': 797 + resolution: {integrity: sha512-daPcsaPs1DN7T9KsddcyozXed8dqdOj1tglsWb/O+dg2fM4CO7wxns0JEzZtbUPo/6TEY82Z3TAfoHelgaqLJQ==} 774 798 peerDependencies: 775 799 vite: ^6.1.0 || ^7.0.0 776 - wrangler: ^4.32.0 800 + wrangler: ^4.53.0 777 801 778 - '@cloudflare/workerd-darwin-64@1.20250816.0': 779 - resolution: {integrity: sha512-yN1Rga4ufTdrJPCP4gEqfB47i1lWi3teY5IoeQbUuKnjnCtm4pZvXur526JzCmaw60Jx+AEWf5tizdwRd5hHBQ==} 802 + '@cloudflare/workerd-darwin-64@1.20251202.0': 803 + resolution: {integrity: sha512-/uvEAWEukTWb1geHhbjGUeZqcSSSyYzp0mvoPUBl+l0ont4NVGao3fgwM0q8wtKvgoKCHSG6zcG23wj9Opj3Nw==} 780 804 engines: {node: '>=16'} 781 805 cpu: [x64] 782 806 os: [darwin] 783 807 784 - '@cloudflare/workerd-darwin-arm64@1.20250816.0': 785 - resolution: {integrity: sha512-WyKPMQhbU+TTf4uDz3SA7ZObspg7WzyJMv/7J4grSddpdx2A4Y4SfPu3wsZleAOIMOAEVi0A1sYDhdltKM7Mxg==} 808 + '@cloudflare/workerd-darwin-arm64@1.20251202.0': 809 + resolution: {integrity: sha512-f52xRvcI9cWRd6400EZStRtXiRC5XKEud7K5aFIbbUv0VeINltujFQQ9nHWtsF6g1quIXWkjhh5u01gPAYNNXA==} 786 810 engines: {node: '>=16'} 787 811 cpu: [arm64] 788 812 os: [darwin] 789 813 790 - '@cloudflare/workerd-linux-64@1.20250816.0': 791 - resolution: {integrity: sha512-NWHOuFnVBaPRhLHw8kjPO9GJmc2P/CTYbnNlNm0EThyi57o/oDx0ldWLJqEHlrdEPOw7zEVGBqM/6M+V9agC6w==} 814 + '@cloudflare/workerd-linux-64@1.20251202.0': 815 + resolution: {integrity: sha512-HYXinF5RBH7oXbsFUMmwKCj+WltpYbf5mRKUBG5v3EuPhUjSIFB84U+58pDyfBJjcynHdy3EtvTWcvh/+lcgow==} 792 816 engines: {node: '>=16'} 793 817 cpu: [x64] 794 818 os: [linux] 795 819 796 - '@cloudflare/workerd-linux-arm64@1.20250816.0': 797 - resolution: {integrity: sha512-FR+/yhaWs7FhfC3GKsM3+usQVrGEweJ9qyh7p+R6HNwnobgKr/h5ATWvJ4obGJF6ZHHodgSe+gOSYR7fkJ1xAQ==} 820 + '@cloudflare/workerd-linux-arm64@1.20251202.0': 821 + resolution: {integrity: sha512-++L02Jdoxz7hEA9qDaQjbVU1RzQS+S+eqIi22DkPe2Tgiq2M3UfNpeu+75k5L9DGRIkZPYvwMBMbcmKvQqdIIg==} 798 822 engines: {node: '>=16'} 799 823 cpu: [arm64] 800 824 os: [linux] 801 825 802 - '@cloudflare/workerd-windows-64@1.20250816.0': 803 - resolution: {integrity: sha512-0lqClj2UMhFa8tCBiiX7Zhd5Bjp0V+X8oNBG6V6WsR9p9/HlIHAGgwRAM7aYkyG+8KC8xlbC89O2AXUXLpHx0g==} 826 + '@cloudflare/workerd-windows-64@1.20251202.0': 827 + resolution: {integrity: sha512-gzeU6eDydTi7ib+Q9DD/c0hpXtqPucnHk2tfGU03mljPObYxzMkkPGgB5qxpksFvub3y4K0ChjqYxGJB4F+j3g==} 804 828 engines: {node: '>=16'} 805 829 cpu: [x64] 806 830 os: [win32] ··· 809 833 resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} 810 834 engines: {node: '>=12'} 811 835 812 - '@emnapi/runtime@1.4.3': 813 - resolution: {integrity: sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==} 836 + '@emnapi/runtime@1.7.1': 837 + resolution: {integrity: sha512-PVtJr5CmLwYAU9PZDMITZoR5iAOShYREoR45EyyLrbntV50mdePTgUn4AmOw90Ifcj+x2kRjdzr1HP3RrNiHGA==} 814 838 815 - '@esbuild/aix-ppc64@0.25.4': 816 - resolution: {integrity: sha512-1VCICWypeQKhVbE9oW/sJaAmjLxhVqacdkvPLEjwlttjfwENRSClS8EjBz0KzRyFSCPDIkuXW34Je/vk7zdB7Q==} 839 + '@esbuild/aix-ppc64@0.25.12': 840 + resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==} 817 841 engines: {node: '>=18'} 818 842 cpu: [ppc64] 819 843 os: [aix] 820 844 821 - '@esbuild/aix-ppc64@0.25.5': 822 - resolution: {integrity: sha512-9o3TMmpmftaCMepOdA5k/yDw8SfInyzWWTjYTFCX3kPSDJMROQTb8jg+h9Cnwnmm1vOzvxN7gIfB5V2ewpjtGA==} 845 + '@esbuild/aix-ppc64@0.27.0': 846 + resolution: {integrity: sha512-KuZrd2hRjz01y5JK9mEBSD3Vj3mbCvemhT466rSuJYeE/hjuBrHfjjcjMdTm/sz7au+++sdbJZJmuBwQLuw68A==} 823 847 engines: {node: '>=18'} 824 848 cpu: [ppc64] 825 849 os: [aix] 826 850 827 - '@esbuild/android-arm64@0.25.4': 828 - resolution: {integrity: sha512-bBy69pgfhMGtCnwpC/x5QhfxAz/cBgQ9enbtwjf6V9lnPI/hMyT9iWpR1arm0l3kttTr4L0KSLpKmLp/ilKS9A==} 851 + '@esbuild/android-arm64@0.25.12': 852 + resolution: {integrity: sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==} 829 853 engines: {node: '>=18'} 830 854 cpu: [arm64] 831 855 os: [android] 832 856 833 - '@esbuild/android-arm64@0.25.5': 834 - resolution: {integrity: sha512-VGzGhj4lJO+TVGV1v8ntCZWJktV7SGCs3Pn1GRWI1SBFtRALoomm8k5E9Pmwg3HOAal2VDc2F9+PM/rEY6oIDg==} 857 + '@esbuild/android-arm64@0.27.0': 858 + resolution: {integrity: sha512-CC3vt4+1xZrs97/PKDkl0yN7w8edvU2vZvAFGD16n9F0Cvniy5qvzRXjfO1l94efczkkQE6g1x0i73Qf5uthOQ==} 835 859 engines: {node: '>=18'} 836 860 cpu: [arm64] 837 861 os: [android] 838 862 839 - '@esbuild/android-arm@0.25.4': 840 - resolution: {integrity: sha512-QNdQEps7DfFwE3hXiU4BZeOV68HHzYwGd0Nthhd3uCkkEKK7/R6MTgM0P7H7FAs5pU/DIWsviMmEGxEoxIZ+ZQ==} 863 + '@esbuild/android-arm@0.25.12': 864 + resolution: {integrity: sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==} 841 865 engines: {node: '>=18'} 842 866 cpu: [arm] 843 867 os: [android] 844 868 845 - '@esbuild/android-arm@0.25.5': 846 - resolution: {integrity: sha512-AdJKSPeEHgi7/ZhuIPtcQKr5RQdo6OO2IL87JkianiMYMPbCtot9fxPbrMiBADOWWm3T2si9stAiVsGbTQFkbA==} 869 + '@esbuild/android-arm@0.27.0': 870 + resolution: {integrity: sha512-j67aezrPNYWJEOHUNLPj9maeJte7uSMM6gMoxfPC9hOg8N02JuQi/T7ewumf4tNvJadFkvLZMlAq73b9uwdMyQ==} 847 871 engines: {node: '>=18'} 848 872 cpu: [arm] 849 873 os: [android] 850 874 851 - '@esbuild/android-x64@0.25.4': 852 - resolution: {integrity: sha512-TVhdVtQIFuVpIIR282btcGC2oGQoSfZfmBdTip2anCaVYcqWlZXGcdcKIUklfX2wj0JklNYgz39OBqh2cqXvcQ==} 875 + '@esbuild/android-x64@0.25.12': 876 + resolution: {integrity: sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==} 853 877 engines: {node: '>=18'} 854 878 cpu: [x64] 855 879 os: [android] 856 880 857 - '@esbuild/android-x64@0.25.5': 858 - resolution: {integrity: sha512-D2GyJT1kjvO//drbRT3Hib9XPwQeWd9vZoBJn+bu/lVsOZ13cqNdDeqIF/xQ5/VmWvMduP6AmXvylO/PIc2isw==} 881 + '@esbuild/android-x64@0.27.0': 882 + resolution: {integrity: sha512-wurMkF1nmQajBO1+0CJmcN17U4BP6GqNSROP8t0X/Jiw2ltYGLHpEksp9MpoBqkrFR3kv2/te6Sha26k3+yZ9Q==} 859 883 engines: {node: '>=18'} 860 884 cpu: [x64] 861 885 os: [android] 862 886 863 - '@esbuild/darwin-arm64@0.25.4': 864 - resolution: {integrity: sha512-Y1giCfM4nlHDWEfSckMzeWNdQS31BQGs9/rouw6Ub91tkK79aIMTH3q9xHvzH8d0wDru5Ci0kWB8b3up/nl16g==} 887 + '@esbuild/darwin-arm64@0.25.12': 888 + resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==} 865 889 engines: {node: '>=18'} 866 890 cpu: [arm64] 867 891 os: [darwin] 868 892 869 - '@esbuild/darwin-arm64@0.25.5': 870 - resolution: {integrity: sha512-GtaBgammVvdF7aPIgH2jxMDdivezgFu6iKpmT+48+F8Hhg5J/sfnDieg0aeG/jfSvkYQU2/pceFPDKlqZzwnfQ==} 893 + '@esbuild/darwin-arm64@0.27.0': 894 + resolution: {integrity: sha512-uJOQKYCcHhg07DL7i8MzjvS2LaP7W7Pn/7uA0B5S1EnqAirJtbyw4yC5jQ5qcFjHK9l6o/MX9QisBg12kNkdHg==} 871 895 engines: {node: '>=18'} 872 896 cpu: [arm64] 873 897 os: [darwin] 874 898 875 - '@esbuild/darwin-x64@0.25.4': 876 - resolution: {integrity: sha512-CJsry8ZGM5VFVeyUYB3cdKpd/H69PYez4eJh1W/t38vzutdjEjtP7hB6eLKBoOdxcAlCtEYHzQ/PJ/oU9I4u0A==} 899 + '@esbuild/darwin-x64@0.25.12': 900 + resolution: {integrity: sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==} 877 901 engines: {node: '>=18'} 878 902 cpu: [x64] 879 903 os: [darwin] 880 904 881 - '@esbuild/darwin-x64@0.25.5': 882 - resolution: {integrity: sha512-1iT4FVL0dJ76/q1wd7XDsXrSW+oLoquptvh4CLR4kITDtqi2e/xwXwdCVH8hVHU43wgJdsq7Gxuzcs6Iq/7bxQ==} 905 + '@esbuild/darwin-x64@0.27.0': 906 + resolution: {integrity: sha512-8mG6arH3yB/4ZXiEnXof5MK72dE6zM9cDvUcPtxhUZsDjESl9JipZYW60C3JGreKCEP+p8P/72r69m4AZGJd5g==} 883 907 engines: {node: '>=18'} 884 908 cpu: [x64] 885 909 os: [darwin] 886 910 887 - '@esbuild/freebsd-arm64@0.25.4': 888 - resolution: {integrity: sha512-yYq+39NlTRzU2XmoPW4l5Ifpl9fqSk0nAJYM/V/WUGPEFfek1epLHJIkTQM6bBs1swApjO5nWgvr843g6TjxuQ==} 911 + '@esbuild/freebsd-arm64@0.25.12': 912 + resolution: {integrity: sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==} 889 913 engines: {node: '>=18'} 890 914 cpu: [arm64] 891 915 os: [freebsd] 892 916 893 - '@esbuild/freebsd-arm64@0.25.5': 894 - resolution: {integrity: sha512-nk4tGP3JThz4La38Uy/gzyXtpkPW8zSAmoUhK9xKKXdBCzKODMc2adkB2+8om9BDYugz+uGV7sLmpTYzvmz6Sw==} 917 + '@esbuild/freebsd-arm64@0.27.0': 918 + resolution: {integrity: sha512-9FHtyO988CwNMMOE3YIeci+UV+x5Zy8fI2qHNpsEtSF83YPBmE8UWmfYAQg6Ux7Gsmd4FejZqnEUZCMGaNQHQw==} 895 919 engines: {node: '>=18'} 896 920 cpu: [arm64] 897 921 os: [freebsd] 898 922 899 - '@esbuild/freebsd-x64@0.25.4': 900 - resolution: {integrity: sha512-0FgvOJ6UUMflsHSPLzdfDnnBBVoCDtBTVyn/MrWloUNvq/5SFmh13l3dvgRPkDihRxb77Y17MbqbCAa2strMQQ==} 923 + '@esbuild/freebsd-x64@0.25.12': 924 + resolution: {integrity: sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==} 901 925 engines: {node: '>=18'} 902 926 cpu: [x64] 903 927 os: [freebsd] 904 928 905 - '@esbuild/freebsd-x64@0.25.5': 906 - resolution: {integrity: sha512-PrikaNjiXdR2laW6OIjlbeuCPrPaAl0IwPIaRv+SMV8CiM8i2LqVUHFC1+8eORgWyY7yhQY+2U2fA55mBzReaw==} 929 + '@esbuild/freebsd-x64@0.27.0': 930 + resolution: {integrity: sha512-zCMeMXI4HS/tXvJz8vWGexpZj2YVtRAihHLk1imZj4efx1BQzN76YFeKqlDr3bUWI26wHwLWPd3rwh6pe4EV7g==} 907 931 engines: {node: '>=18'} 908 932 cpu: [x64] 909 933 os: [freebsd] 910 934 911 - '@esbuild/linux-arm64@0.25.4': 912 - resolution: {integrity: sha512-+89UsQTfXdmjIvZS6nUnOOLoXnkUTB9hR5QAeLrQdzOSWZvNSAXAtcRDHWtqAUtAmv7ZM1WPOOeSxDzzzMogiQ==} 935 + '@esbuild/linux-arm64@0.25.12': 936 + resolution: {integrity: sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==} 913 937 engines: {node: '>=18'} 914 938 cpu: [arm64] 915 939 os: [linux] 916 940 917 - '@esbuild/linux-arm64@0.25.5': 918 - resolution: {integrity: sha512-Z9kfb1v6ZlGbWj8EJk9T6czVEjjq2ntSYLY2cw6pAZl4oKtfgQuS4HOq41M/BcoLPzrUbNd+R4BXFyH//nHxVg==} 941 + '@esbuild/linux-arm64@0.27.0': 942 + resolution: {integrity: sha512-AS18v0V+vZiLJyi/4LphvBE+OIX682Pu7ZYNsdUHyUKSoRwdnOsMf6FDekwoAFKej14WAkOef3zAORJgAtXnlQ==} 919 943 engines: {node: '>=18'} 920 944 cpu: [arm64] 921 945 os: [linux] 922 946 923 - '@esbuild/linux-arm@0.25.4': 924 - resolution: {integrity: sha512-kro4c0P85GMfFYqW4TWOpvmF8rFShbWGnrLqlzp4X1TNWjRY3JMYUfDCtOxPKOIY8B0WC8HN51hGP4I4hz4AaQ==} 947 + '@esbuild/linux-arm@0.25.12': 948 + resolution: {integrity: sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==} 925 949 engines: {node: '>=18'} 926 950 cpu: [arm] 927 951 os: [linux] 928 952 929 - '@esbuild/linux-arm@0.25.5': 930 - resolution: {integrity: sha512-cPzojwW2okgh7ZlRpcBEtsX7WBuqbLrNXqLU89GxWbNt6uIg78ET82qifUy3W6OVww6ZWobWub5oqZOVtwolfw==} 953 + '@esbuild/linux-arm@0.27.0': 954 + resolution: {integrity: sha512-t76XLQDpxgmq2cNXKTVEB7O7YMb42atj2Re2Haf45HkaUpjM2J0UuJZDuaGbPbamzZ7bawyGFUkodL+zcE+jvQ==} 931 955 engines: {node: '>=18'} 932 956 cpu: [arm] 933 957 os: [linux] 934 958 935 - '@esbuild/linux-ia32@0.25.4': 936 - resolution: {integrity: sha512-yTEjoapy8UP3rv8dB0ip3AfMpRbyhSN3+hY8mo/i4QXFeDxmiYbEKp3ZRjBKcOP862Ua4b1PDfwlvbuwY7hIGQ==} 959 + '@esbuild/linux-ia32@0.25.12': 960 + resolution: {integrity: sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==} 937 961 engines: {node: '>=18'} 938 962 cpu: [ia32] 939 963 os: [linux] 940 964 941 - '@esbuild/linux-ia32@0.25.5': 942 - resolution: {integrity: sha512-sQ7l00M8bSv36GLV95BVAdhJ2QsIbCuCjh/uYrWiMQSUuV+LpXwIqhgJDcvMTj+VsQmqAHL2yYaasENvJ7CDKA==} 965 + '@esbuild/linux-ia32@0.27.0': 966 + resolution: {integrity: sha512-Mz1jxqm/kfgKkc/KLHC5qIujMvnnarD9ra1cEcrs7qshTUSksPihGrWHVG5+osAIQ68577Zpww7SGapmzSt4Nw==} 943 967 engines: {node: '>=18'} 944 968 cpu: [ia32] 945 969 os: [linux] 946 970 947 - '@esbuild/linux-loong64@0.25.4': 948 - resolution: {integrity: sha512-NeqqYkrcGzFwi6CGRGNMOjWGGSYOpqwCjS9fvaUlX5s3zwOtn1qwg1s2iE2svBe4Q/YOG1q6875lcAoQK/F4VA==} 971 + '@esbuild/linux-loong64@0.25.12': 972 + resolution: {integrity: sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==} 949 973 engines: {node: '>=18'} 950 974 cpu: [loong64] 951 975 os: [linux] 952 976 953 - '@esbuild/linux-loong64@0.25.5': 954 - resolution: {integrity: sha512-0ur7ae16hDUC4OL5iEnDb0tZHDxYmuQyhKhsPBV8f99f6Z9KQM02g33f93rNH5A30agMS46u2HP6qTdEt6Q1kg==} 977 + '@esbuild/linux-loong64@0.27.0': 978 + resolution: {integrity: sha512-QbEREjdJeIreIAbdG2hLU1yXm1uu+LTdzoq1KCo4G4pFOLlvIspBm36QrQOar9LFduavoWX2msNFAAAY9j4BDg==} 955 979 engines: {node: '>=18'} 956 980 cpu: [loong64] 957 981 os: [linux] 958 982 959 - '@esbuild/linux-mips64el@0.25.4': 960 - resolution: {integrity: sha512-IcvTlF9dtLrfL/M8WgNI/qJYBENP3ekgsHbYUIzEzq5XJzzVEV/fXY9WFPfEEXmu3ck2qJP8LG/p3Q8f7Zc2Xg==} 983 + '@esbuild/linux-mips64el@0.25.12': 984 + resolution: {integrity: sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==} 961 985 engines: {node: '>=18'} 962 986 cpu: [mips64el] 963 987 os: [linux] 964 988 965 - '@esbuild/linux-mips64el@0.25.5': 966 - resolution: {integrity: sha512-kB/66P1OsHO5zLz0i6X0RxlQ+3cu0mkxS3TKFvkb5lin6uwZ/ttOkP3Z8lfR9mJOBk14ZwZ9182SIIWFGNmqmg==} 989 + '@esbuild/linux-mips64el@0.27.0': 990 + resolution: {integrity: sha512-sJz3zRNe4tO2wxvDpH/HYJilb6+2YJxo/ZNbVdtFiKDufzWq4JmKAiHy9iGoLjAV7r/W32VgaHGkk35cUXlNOg==} 967 991 engines: {node: '>=18'} 968 992 cpu: [mips64el] 969 993 os: [linux] 970 994 971 - '@esbuild/linux-ppc64@0.25.4': 972 - resolution: {integrity: sha512-HOy0aLTJTVtoTeGZh4HSXaO6M95qu4k5lJcH4gxv56iaycfz1S8GO/5Jh6X4Y1YiI0h7cRyLi+HixMR+88swag==} 995 + '@esbuild/linux-ppc64@0.25.12': 996 + resolution: {integrity: sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==} 973 997 engines: {node: '>=18'} 974 998 cpu: [ppc64] 975 999 os: [linux] 976 1000 977 - '@esbuild/linux-ppc64@0.25.5': 978 - resolution: {integrity: sha512-UZCmJ7r9X2fe2D6jBmkLBMQetXPXIsZjQJCjgwpVDz+YMcS6oFR27alkgGv3Oqkv07bxdvw7fyB71/olceJhkQ==} 1001 + '@esbuild/linux-ppc64@0.27.0': 1002 + resolution: {integrity: sha512-z9N10FBD0DCS2dmSABDBb5TLAyF1/ydVb+N4pi88T45efQ/w4ohr/F/QYCkxDPnkhkp6AIpIcQKQ8F0ANoA2JA==} 979 1003 engines: {node: '>=18'} 980 1004 cpu: [ppc64] 981 1005 os: [linux] 982 1006 983 - '@esbuild/linux-riscv64@0.25.4': 984 - resolution: {integrity: sha512-i8JUDAufpz9jOzo4yIShCTcXzS07vEgWzyX3NH2G7LEFVgrLEhjwL3ajFE4fZI3I4ZgiM7JH3GQ7ReObROvSUA==} 1007 + '@esbuild/linux-riscv64@0.25.12': 1008 + resolution: {integrity: sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==} 985 1009 engines: {node: '>=18'} 986 1010 cpu: [riscv64] 987 1011 os: [linux] 988 1012 989 - '@esbuild/linux-riscv64@0.25.5': 990 - resolution: {integrity: sha512-kTxwu4mLyeOlsVIFPfQo+fQJAV9mh24xL+y+Bm6ej067sYANjyEw1dNHmvoqxJUCMnkBdKpvOn0Ahql6+4VyeA==} 1013 + '@esbuild/linux-riscv64@0.27.0': 1014 + resolution: {integrity: sha512-pQdyAIZ0BWIC5GyvVFn5awDiO14TkT/19FTmFcPdDec94KJ1uZcmFs21Fo8auMXzD4Tt+diXu1LW1gHus9fhFQ==} 991 1015 engines: {node: '>=18'} 992 1016 cpu: [riscv64] 993 1017 os: [linux] 994 1018 995 - '@esbuild/linux-s390x@0.25.4': 996 - resolution: {integrity: sha512-jFnu+6UbLlzIjPQpWCNh5QtrcNfMLjgIavnwPQAfoGx4q17ocOU9MsQ2QVvFxwQoWpZT8DvTLooTvmOQXkO51g==} 1019 + '@esbuild/linux-s390x@0.25.12': 1020 + resolution: {integrity: sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==} 997 1021 engines: {node: '>=18'} 998 1022 cpu: [s390x] 999 1023 os: [linux] 1000 1024 1001 - '@esbuild/linux-s390x@0.25.5': 1002 - resolution: {integrity: sha512-K2dSKTKfmdh78uJ3NcWFiqyRrimfdinS5ErLSn3vluHNeHVnBAFWC8a4X5N+7FgVE1EjXS1QDZbpqZBjfrqMTQ==} 1025 + '@esbuild/linux-s390x@0.27.0': 1026 + resolution: {integrity: sha512-hPlRWR4eIDDEci953RI1BLZitgi5uqcsjKMxwYfmi4LcwyWo2IcRP+lThVnKjNtk90pLS8nKdroXYOqW+QQH+w==} 1003 1027 engines: {node: '>=18'} 1004 1028 cpu: [s390x] 1005 1029 os: [linux] 1006 1030 1007 - '@esbuild/linux-x64@0.25.4': 1008 - resolution: {integrity: sha512-6e0cvXwzOnVWJHq+mskP8DNSrKBr1bULBvnFLpc1KY+d+irZSgZ02TGse5FsafKS5jg2e4pbvK6TPXaF/A6+CA==} 1031 + '@esbuild/linux-x64@0.25.12': 1032 + resolution: {integrity: sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==} 1009 1033 engines: {node: '>=18'} 1010 1034 cpu: [x64] 1011 1035 os: [linux] 1012 1036 1013 - '@esbuild/linux-x64@0.25.5': 1014 - resolution: {integrity: sha512-uhj8N2obKTE6pSZ+aMUbqq+1nXxNjZIIjCjGLfsWvVpy7gKCOL6rsY1MhRh9zLtUtAI7vpgLMK6DxjO8Qm9lJw==} 1037 + '@esbuild/linux-x64@0.27.0': 1038 + resolution: {integrity: sha512-1hBWx4OUJE2cab++aVZ7pObD6s+DK4mPGpemtnAORBvb5l/g5xFGk0vc0PjSkrDs0XaXj9yyob3d14XqvnQ4gw==} 1015 1039 engines: {node: '>=18'} 1016 1040 cpu: [x64] 1017 1041 os: [linux] 1018 1042 1019 - '@esbuild/netbsd-arm64@0.25.4': 1020 - resolution: {integrity: sha512-vUnkBYxZW4hL/ie91hSqaSNjulOnYXE1VSLusnvHg2u3jewJBz3YzB9+oCw8DABeVqZGg94t9tyZFoHma8gWZQ==} 1043 + '@esbuild/netbsd-arm64@0.25.12': 1044 + resolution: {integrity: sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==} 1021 1045 engines: {node: '>=18'} 1022 1046 cpu: [arm64] 1023 1047 os: [netbsd] 1024 1048 1025 - '@esbuild/netbsd-arm64@0.25.5': 1026 - resolution: {integrity: sha512-pwHtMP9viAy1oHPvgxtOv+OkduK5ugofNTVDilIzBLpoWAM16r7b/mxBvfpuQDpRQFMfuVr5aLcn4yveGvBZvw==} 1049 + '@esbuild/netbsd-arm64@0.27.0': 1050 + resolution: {integrity: sha512-6m0sfQfxfQfy1qRuecMkJlf1cIzTOgyaeXaiVaaki8/v+WB+U4hc6ik15ZW6TAllRlg/WuQXxWj1jx6C+dfy3w==} 1027 1051 engines: {node: '>=18'} 1028 1052 cpu: [arm64] 1029 1053 os: [netbsd] 1030 1054 1031 - '@esbuild/netbsd-x64@0.25.4': 1032 - resolution: {integrity: sha512-XAg8pIQn5CzhOB8odIcAm42QsOfa98SBeKUdo4xa8OvX8LbMZqEtgeWE9P/Wxt7MlG2QqvjGths+nq48TrUiKw==} 1055 + '@esbuild/netbsd-x64@0.25.12': 1056 + resolution: {integrity: sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==} 1033 1057 engines: {node: '>=18'} 1034 1058 cpu: [x64] 1035 1059 os: [netbsd] 1036 1060 1037 - '@esbuild/netbsd-x64@0.25.5': 1038 - resolution: {integrity: sha512-WOb5fKrvVTRMfWFNCroYWWklbnXH0Q5rZppjq0vQIdlsQKuw6mdSihwSo4RV/YdQ5UCKKvBy7/0ZZYLBZKIbwQ==} 1061 + '@esbuild/netbsd-x64@0.27.0': 1062 + resolution: {integrity: sha512-xbbOdfn06FtcJ9d0ShxxvSn2iUsGd/lgPIO2V3VZIPDbEaIj1/3nBBe1AwuEZKXVXkMmpr6LUAgMkLD/4D2PPA==} 1039 1063 engines: {node: '>=18'} 1040 1064 cpu: [x64] 1041 1065 os: [netbsd] 1042 1066 1043 - '@esbuild/openbsd-arm64@0.25.4': 1044 - resolution: {integrity: sha512-Ct2WcFEANlFDtp1nVAXSNBPDxyU+j7+tId//iHXU2f/lN5AmO4zLyhDcpR5Cz1r08mVxzt3Jpyt4PmXQ1O6+7A==} 1067 + '@esbuild/openbsd-arm64@0.25.12': 1068 + resolution: {integrity: sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==} 1045 1069 engines: {node: '>=18'} 1046 1070 cpu: [arm64] 1047 1071 os: [openbsd] 1048 1072 1049 - '@esbuild/openbsd-arm64@0.25.5': 1050 - resolution: {integrity: sha512-7A208+uQKgTxHd0G0uqZO8UjK2R0DDb4fDmERtARjSHWxqMTye4Erz4zZafx7Di9Cv+lNHYuncAkiGFySoD+Mw==} 1073 + '@esbuild/openbsd-arm64@0.27.0': 1074 + resolution: {integrity: sha512-fWgqR8uNbCQ/GGv0yhzttj6sU/9Z5/Sv/VGU3F5OuXK6J6SlriONKrQ7tNlwBrJZXRYk5jUhuWvF7GYzGguBZQ==} 1051 1075 engines: {node: '>=18'} 1052 1076 cpu: [arm64] 1053 1077 os: [openbsd] 1054 1078 1055 - '@esbuild/openbsd-x64@0.25.4': 1056 - resolution: {integrity: sha512-xAGGhyOQ9Otm1Xu8NT1ifGLnA6M3sJxZ6ixylb+vIUVzvvd6GOALpwQrYrtlPouMqd/vSbgehz6HaVk4+7Afhw==} 1079 + '@esbuild/openbsd-x64@0.25.12': 1080 + resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==} 1057 1081 engines: {node: '>=18'} 1058 1082 cpu: [x64] 1059 1083 os: [openbsd] 1060 1084 1061 - '@esbuild/openbsd-x64@0.25.5': 1062 - resolution: {integrity: sha512-G4hE405ErTWraiZ8UiSoesH8DaCsMm0Cay4fsFWOOUcz8b8rC6uCvnagr+gnioEjWn0wC+o1/TAHt+It+MpIMg==} 1085 + '@esbuild/openbsd-x64@0.27.0': 1086 + resolution: {integrity: sha512-aCwlRdSNMNxkGGqQajMUza6uXzR/U0dIl1QmLjPtRbLOx3Gy3otfFu/VjATy4yQzo9yFDGTxYDo1FfAD9oRD2A==} 1063 1087 engines: {node: '>=18'} 1064 1088 cpu: [x64] 1065 1089 os: [openbsd] 1066 1090 1067 - '@esbuild/sunos-x64@0.25.4': 1068 - resolution: {integrity: sha512-Mw+tzy4pp6wZEK0+Lwr76pWLjrtjmJyUB23tHKqEDP74R3q95luY/bXqXZeYl4NYlvwOqoRKlInQialgCKy67Q==} 1091 + '@esbuild/openharmony-arm64@0.25.12': 1092 + resolution: {integrity: sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==} 1093 + engines: {node: '>=18'} 1094 + cpu: [arm64] 1095 + os: [openharmony] 1096 + 1097 + '@esbuild/openharmony-arm64@0.27.0': 1098 + resolution: {integrity: sha512-nyvsBccxNAsNYz2jVFYwEGuRRomqZ149A39SHWk4hV0jWxKM0hjBPm3AmdxcbHiFLbBSwG6SbpIcUbXjgyECfA==} 1099 + engines: {node: '>=18'} 1100 + cpu: [arm64] 1101 + os: [openharmony] 1102 + 1103 + '@esbuild/sunos-x64@0.25.12': 1104 + resolution: {integrity: sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==} 1069 1105 engines: {node: '>=18'} 1070 1106 cpu: [x64] 1071 1107 os: [sunos] 1072 1108 1073 - '@esbuild/sunos-x64@0.25.5': 1074 - resolution: {integrity: sha512-l+azKShMy7FxzY0Rj4RCt5VD/q8mG/e+mDivgspo+yL8zW7qEwctQ6YqKX34DTEleFAvCIUviCFX1SDZRSyMQA==} 1109 + '@esbuild/sunos-x64@0.27.0': 1110 + resolution: {integrity: sha512-Q1KY1iJafM+UX6CFEL+F4HRTgygmEW568YMqDA5UV97AuZSm21b7SXIrRJDwXWPzr8MGr75fUZPV67FdtMHlHA==} 1075 1111 engines: {node: '>=18'} 1076 1112 cpu: [x64] 1077 1113 os: [sunos] 1078 1114 1079 - '@esbuild/win32-arm64@0.25.4': 1080 - resolution: {integrity: sha512-AVUP428VQTSddguz9dO9ngb+E5aScyg7nOeJDrF1HPYu555gmza3bDGMPhmVXL8svDSoqPCsCPjb265yG/kLKQ==} 1115 + '@esbuild/win32-arm64@0.25.12': 1116 + resolution: {integrity: sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==} 1081 1117 engines: {node: '>=18'} 1082 1118 cpu: [arm64] 1083 1119 os: [win32] 1084 1120 1085 - '@esbuild/win32-arm64@0.25.5': 1086 - resolution: {integrity: sha512-O2S7SNZzdcFG7eFKgvwUEZ2VG9D/sn/eIiz8XRZ1Q/DO5a3s76Xv0mdBzVM5j5R639lXQmPmSo0iRpHqUUrsxw==} 1121 + '@esbuild/win32-arm64@0.27.0': 1122 + resolution: {integrity: sha512-W1eyGNi6d+8kOmZIwi/EDjrL9nxQIQ0MiGqe/AWc6+IaHloxHSGoeRgDRKHFISThLmsewZ5nHFvGFWdBYlgKPg==} 1087 1123 engines: {node: '>=18'} 1088 1124 cpu: [arm64] 1089 1125 os: [win32] 1090 1126 1091 - '@esbuild/win32-ia32@0.25.4': 1092 - resolution: {integrity: sha512-i1sW+1i+oWvQzSgfRcxxG2k4I9n3O9NRqy8U+uugaT2Dy7kLO9Y7wI72haOahxceMX8hZAzgGou1FhndRldxRg==} 1127 + '@esbuild/win32-ia32@0.25.12': 1128 + resolution: {integrity: sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==} 1093 1129 engines: {node: '>=18'} 1094 1130 cpu: [ia32] 1095 1131 os: [win32] 1096 1132 1097 - '@esbuild/win32-ia32@0.25.5': 1098 - resolution: {integrity: sha512-onOJ02pqs9h1iMJ1PQphR+VZv8qBMQ77Klcsqv9CNW2w6yLqoURLcgERAIurY6QE63bbLuqgP9ATqajFLK5AMQ==} 1133 + '@esbuild/win32-ia32@0.27.0': 1134 + resolution: {integrity: sha512-30z1aKL9h22kQhilnYkORFYt+3wp7yZsHWus+wSKAJR8JtdfI76LJ4SBdMsCopTR3z/ORqVu5L1vtnHZWVj4cQ==} 1099 1135 engines: {node: '>=18'} 1100 1136 cpu: [ia32] 1101 1137 os: [win32] 1102 1138 1103 - '@esbuild/win32-x64@0.25.4': 1104 - resolution: {integrity: sha512-nOT2vZNw6hJ+z43oP1SPea/G/6AbN6X+bGNhNuq8NtRHy4wsMhw765IKLNmnjek7GvjWBYQ8Q5VBoYTFg9y1UQ==} 1139 + '@esbuild/win32-x64@0.25.12': 1140 + resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==} 1105 1141 engines: {node: '>=18'} 1106 1142 cpu: [x64] 1107 1143 os: [win32] 1108 1144 1109 - '@esbuild/win32-x64@0.25.5': 1110 - resolution: {integrity: sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g==} 1145 + '@esbuild/win32-x64@0.27.0': 1146 + resolution: {integrity: sha512-aIitBcjQeyOhMTImhLZmtxfdOcuNRpwlPNmlFKPcHQYPhEssw75Cl1TSXJXpMkzaua9FUetx/4OQKq7eJul5Cg==} 1111 1147 engines: {node: '>=18'} 1112 1148 cpu: [x64] 1113 1149 os: [win32] ··· 1122 1158 peerDependencies: 1123 1159 solid-js: ^1.8.5 1124 1160 1125 - '@floating-ui/core@1.7.1': 1126 - resolution: {integrity: sha512-azI0DrjMMfIug/ExbBaeDVJXcY0a7EPvPjb2xAJPa4HeimBX+Z18HK8QQR3jb6356SnDDdxx+hinMLcJEDdOjw==} 1161 + '@floating-ui/core@1.7.3': 1162 + resolution: {integrity: sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w==} 1127 1163 1128 - '@floating-ui/dom@1.7.1': 1129 - resolution: {integrity: sha512-cwsmW/zyw5ltYTUeeYJ60CnQuPqmGwuGVhG9w0PRaRKkAyi38BT5CKrpIbb+jtahSwUl04cWzSx9ZOIxeS6RsQ==} 1164 + '@floating-ui/dom@1.7.4': 1165 + resolution: {integrity: sha512-OOchDgh4F2CchOX94cRVqhvy7b3AFb+/rQXyswmzmGakRfkMgoWVjfnLWkRirfLEfuD4ysVW16eXzwt3jHIzKA==} 1130 1166 1131 - '@floating-ui/utils@0.2.9': 1132 - resolution: {integrity: sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==} 1167 + '@floating-ui/utils@0.2.10': 1168 + resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==} 1133 1169 1134 1170 '@img/sharp-darwin-arm64@0.33.5': 1135 1171 resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==} ··· 1236 1272 cpu: [x64] 1237 1273 os: [win32] 1238 1274 1275 + '@isaacs/balanced-match@4.0.1': 1276 + resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==} 1277 + engines: {node: 20 || >=22} 1278 + 1279 + '@isaacs/brace-expansion@5.0.0': 1280 + resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==} 1281 + engines: {node: 20 || >=22} 1282 + 1239 1283 '@isaacs/cliui@8.0.2': 1240 1284 resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} 1241 1285 engines: {node: '>=12'} 1242 1286 1243 - '@jridgewell/gen-mapping@0.3.8': 1244 - resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} 1245 - engines: {node: '>=6.0.0'} 1287 + '@jridgewell/gen-mapping@0.3.13': 1288 + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} 1289 + 1290 + '@jridgewell/remapping@2.3.5': 1291 + resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} 1246 1292 1247 1293 '@jridgewell/resolve-uri@3.1.2': 1248 1294 resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 1249 1295 engines: {node: '>=6.0.0'} 1250 1296 1251 - '@jridgewell/set-array@1.2.1': 1252 - resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} 1253 - engines: {node: '>=6.0.0'} 1254 - 1255 - '@jridgewell/source-map@0.3.6': 1256 - resolution: {integrity: sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==} 1257 - 1258 - '@jridgewell/sourcemap-codec@1.5.0': 1259 - resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} 1297 + '@jridgewell/source-map@0.3.11': 1298 + resolution: {integrity: sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==} 1260 1299 1261 1300 '@jridgewell/sourcemap-codec@1.5.5': 1262 1301 resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} 1263 1302 1264 - '@jridgewell/trace-mapping@0.3.25': 1265 - resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} 1303 + '@jridgewell/trace-mapping@0.3.31': 1304 + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} 1266 1305 1267 1306 '@jridgewell/trace-mapping@0.3.9': 1268 1307 resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} 1269 1308 1270 - '@jsr/mary__array-fns@0.1.4': 1271 - resolution: {integrity: sha512-+HbGYR9Ll5blEmAvVAoPejyGj01YeBbVmJ59qxaMDKt5i3F90ohYLA5a78y6AULDlet1IxYB+a/cMN+A0vGnDg==, tarball: https://npm.jsr.io/~/11/@jsr/mary__array-fns/0.1.4.tgz} 1309 + '@jsr/mary__array-fns@0.1.5': 1310 + resolution: {integrity: sha512-gI4scq/Hh9GtFUJfS8cvZf5nr+cs7udvrEpMv75grws5/0LIwBycKeeJcNi4+xNl6x4CGW6Fp46puhtJiQOpMg==, tarball: https://npm.jsr.io/~/11/@jsr/mary__array-fns/0.1.5.tgz} 1272 1311 1273 1312 '@jsr/mary__async-iterator-fns@0.1.1': 1274 1313 resolution: {integrity: sha512-ef/TDpu6yGTAb4fbGEjSFPO7u49WrxJeXa9T6fvmjlpEfR84qxrjTR6MEUQ1hMySD0+O9yQKvBl/KL5x7K9+iA==, tarball: https://npm.jsr.io/~/11/@jsr/mary__async-iterator-fns/0.1.1.tgz} ··· 1288 1327 '@kelinci/basa-lexicons@1.0.0': 1289 1328 resolution: {integrity: sha512-QND0ktwpGySoHhqRUrLZ3YybyHnOkV6mGCLn75yJWl9PpKIMh/gmAyvXIo1ZuzSHu4v6xcSyi3A78QoH4MhTGw==} 1290 1329 1291 - '@mjackson/node-fetch-server@0.6.1': 1292 - resolution: {integrity: sha512-9ZJnk/DJjt805uv5PPv11haJIW+HHf3YEEyVXv+8iLQxLD/iXA68FH220XoiTPBC4gCg5q+IMadDw8qPqlA5wg==} 1330 + '@noble/secp256k1@3.0.0': 1331 + resolution: {integrity: sha512-NJBaR352KyIvj3t6sgT/+7xrNyF9Xk9QlLSIqUGVUYlsnDTAUqY8LOmwpcgEx4AMJXRITQ5XEVHD+mMaPfr3mg==} 1293 1332 1294 1333 '@nodelib/fs.scandir@2.1.5': 1295 1334 resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} ··· 1318 1357 resolution: {integrity: sha512-/lwVUaDPCeopUL6XPz2B2ZwaQeIbctP8YxNIyCxunxVKWhCAhii+w0ourNK7JedyGIcM+DaXZTeRlcbgEWaZig==} 1319 1358 engines: {node: '>=12.4.0'} 1320 1359 1321 - '@pkgjs/parseargs@0.11.0': 1322 - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} 1323 - engines: {node: '>=14'} 1324 - 1325 1360 '@poppinss/colors@4.1.5': 1326 1361 resolution: {integrity: sha512-FvdDqtcRCtz6hThExcFOgW0cWX+xwSMWcRuQe5ZEb2m7cVQOAVZOIMt+/v9RxGiD9/OY16qJBXK4CVKWAPalBw==} 1327 1362 1328 - '@poppinss/dumper@0.6.4': 1329 - resolution: {integrity: sha512-iG0TIdqv8xJ3Lt9O8DrPRxw1MRLjNpoqiSGU03P/wNLP/s0ra0udPJ1J2Tx5M0J3H/cVyEgpbn8xUKRY9j59kQ==} 1363 + '@poppinss/dumper@0.6.5': 1364 + resolution: {integrity: sha512-NBdYIb90J7LfOI32dOewKI1r7wnkiH6m920puQ3qHUeZkxNkQiFnXVWoE6YtFSv6QOiPPf7ys6i+HWWecDz7sw==} 1330 1365 1331 1366 '@poppinss/exception@1.2.2': 1332 1367 resolution: {integrity: sha512-m7bpKCD4QMlFCjA/nKTs23fuvoVFoA83brRKmObCUNmi/9tVu8Ve3w4YQAnJu4q3Tjf5fr685HYIC/IA2zHRSg==} 1368 + 1369 + '@remix-run/node-fetch-server@0.8.1': 1370 + resolution: {integrity: sha512-J1dev372wtJqmqn9U/qbpbZxbJSQrogNN2+Qv1lKlpATpe/WQ9aCZfl/xSb9d2Rgh1IyLSvNxZAXPZxruO6Xig==} 1333 1371 1334 1372 '@rollup/plugin-babel@5.3.1': 1335 1373 resolution: {integrity: sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==} ··· 1356 1394 peerDependencies: 1357 1395 rollup: ^1.20.0 || ^2.0.0 1358 1396 1359 - '@rollup/plugin-replace@6.0.2': 1360 - resolution: {integrity: sha512-7QaYCf8bqF04dOy7w/eHmJeNExxTYwvKAmlSAH/EaWWUzbT0h5sbF6bktFoX/0F/0qwng5/dWFMyf3gzaM8DsQ==} 1361 - engines: {node: '>=14.0.0'} 1362 - peerDependencies: 1363 - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 1364 - peerDependenciesMeta: 1365 - rollup: 1366 - optional: true 1367 - 1368 1397 '@rollup/plugin-terser@0.4.4': 1369 1398 resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==} 1370 1399 engines: {node: '>=14.0.0'} ··· 1380 1409 peerDependencies: 1381 1410 rollup: ^1.20.0||^2.0.0 1382 1411 1383 - '@rollup/pluginutils@5.2.0': 1384 - resolution: {integrity: sha512-qWJ2ZTbmumwiLFomfzTyt5Kng4hwPi9rwCYN4SHb6eaRU1KNO4ccxINHr/VhH4GgPlt1XfSTLX2LBTme8ne4Zw==} 1412 + '@rollup/pluginutils@5.3.0': 1413 + resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==} 1385 1414 engines: {node: '>=14.0.0'} 1386 1415 peerDependencies: 1387 1416 rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 ··· 1389 1418 rollup: 1390 1419 optional: true 1391 1420 1392 - '@rollup/rollup-android-arm-eabi@4.44.0': 1393 - resolution: {integrity: sha512-xEiEE5oDW6tK4jXCAyliuntGR+amEMO7HLtdSshVuhFnKTYoeYMyXQK7pLouAJJj5KHdwdn87bfHAR2nSdNAUA==} 1421 + '@rollup/rollup-android-arm-eabi@4.53.3': 1422 + resolution: {integrity: sha512-mRSi+4cBjrRLoaal2PnqH82Wqyb+d3HsPUN/W+WslCXsZsyHa9ZeQQX/pQsZaVIWDkPcpV6jJ+3KLbTbgnwv8w==} 1394 1423 cpu: [arm] 1395 1424 os: [android] 1396 1425 1397 - '@rollup/rollup-android-arm64@4.44.0': 1398 - resolution: {integrity: sha512-uNSk/TgvMbskcHxXYHzqwiyBlJ/lGcv8DaUfcnNwict8ba9GTTNxfn3/FAoFZYgkaXXAdrAA+SLyKplyi349Jw==} 1426 + '@rollup/rollup-android-arm64@4.53.3': 1427 + resolution: {integrity: sha512-CbDGaMpdE9sh7sCmTrTUyllhrg65t6SwhjlMJsLr+J8YjFuPmCEjbBSx4Z/e4SmDyH3aB5hGaJUP2ltV/vcs4w==} 1399 1428 cpu: [arm64] 1400 1429 os: [android] 1401 1430 1402 - '@rollup/rollup-darwin-arm64@4.44.0': 1403 - resolution: {integrity: sha512-VGF3wy0Eq1gcEIkSCr8Ke03CWT+Pm2yveKLaDvq51pPpZza3JX/ClxXOCmTYYq3us5MvEuNRTaeyFThCKRQhOA==} 1431 + '@rollup/rollup-darwin-arm64@4.53.3': 1432 + resolution: {integrity: sha512-Nr7SlQeqIBpOV6BHHGZgYBuSdanCXuw09hon14MGOLGmXAFYjx1wNvquVPmpZnl0tLjg25dEdr4IQ6GgyToCUA==} 1404 1433 cpu: [arm64] 1405 1434 os: [darwin] 1406 1435 1407 - '@rollup/rollup-darwin-x64@4.44.0': 1408 - resolution: {integrity: sha512-fBkyrDhwquRvrTxSGH/qqt3/T0w5Rg0L7ZIDypvBPc1/gzjJle6acCpZ36blwuwcKD/u6oCE/sRWlUAcxLWQbQ==} 1436 + '@rollup/rollup-darwin-x64@4.53.3': 1437 + resolution: {integrity: sha512-DZ8N4CSNfl965CmPktJ8oBnfYr3F8dTTNBQkRlffnUarJ2ohudQD17sZBa097J8xhQ26AwhHJ5mvUyQW8ddTsQ==} 1409 1438 cpu: [x64] 1410 1439 os: [darwin] 1411 1440 1412 - '@rollup/rollup-freebsd-arm64@4.44.0': 1413 - resolution: {integrity: sha512-u5AZzdQJYJXByB8giQ+r4VyfZP+walV+xHWdaFx/1VxsOn6eWJhK2Vl2eElvDJFKQBo/hcYIBg/jaKS8ZmKeNQ==} 1441 + '@rollup/rollup-freebsd-arm64@4.53.3': 1442 + resolution: {integrity: sha512-yMTrCrK92aGyi7GuDNtGn2sNW+Gdb4vErx4t3Gv/Tr+1zRb8ax4z8GWVRfr3Jw8zJWvpGHNpss3vVlbF58DZ4w==} 1414 1443 cpu: [arm64] 1415 1444 os: [freebsd] 1416 1445 1417 - '@rollup/rollup-freebsd-x64@4.44.0': 1418 - resolution: {integrity: sha512-qC0kS48c/s3EtdArkimctY7h3nHicQeEUdjJzYVJYR3ct3kWSafmn6jkNCA8InbUdge6PVx6keqjk5lVGJf99g==} 1446 + '@rollup/rollup-freebsd-x64@4.53.3': 1447 + resolution: {integrity: sha512-lMfF8X7QhdQzseM6XaX0vbno2m3hlyZFhwcndRMw8fbAGUGL3WFMBdK0hbUBIUYcEcMhVLr1SIamDeuLBnXS+Q==} 1419 1448 cpu: [x64] 1420 1449 os: [freebsd] 1421 1450 1422 - '@rollup/rollup-linux-arm-gnueabihf@4.44.0': 1423 - resolution: {integrity: sha512-x+e/Z9H0RAWckn4V2OZZl6EmV0L2diuX3QB0uM1r6BvhUIv6xBPL5mrAX2E3e8N8rEHVPwFfz/ETUbV4oW9+lQ==} 1451 + '@rollup/rollup-linux-arm-gnueabihf@4.53.3': 1452 + resolution: {integrity: sha512-k9oD15soC/Ln6d2Wv/JOFPzZXIAIFLp6B+i14KhxAfnq76ajt0EhYc5YPeX6W1xJkAdItcVT+JhKl1QZh44/qw==} 1424 1453 cpu: [arm] 1425 1454 os: [linux] 1426 1455 1427 - '@rollup/rollup-linux-arm-musleabihf@4.44.0': 1428 - resolution: {integrity: sha512-1exwiBFf4PU/8HvI8s80icyCcnAIB86MCBdst51fwFmH5dyeoWVPVgmQPcKrMtBQ0W5pAs7jBCWuRXgEpRzSCg==} 1456 + '@rollup/rollup-linux-arm-musleabihf@4.53.3': 1457 + resolution: {integrity: sha512-vTNlKq+N6CK/8UktsrFuc+/7NlEYVxgaEgRXVUVK258Z5ymho29skzW1sutgYjqNnquGwVUObAaxae8rZ6YMhg==} 1429 1458 cpu: [arm] 1430 1459 os: [linux] 1431 1460 1432 - '@rollup/rollup-linux-arm64-gnu@4.44.0': 1433 - resolution: {integrity: sha512-ZTR2mxBHb4tK4wGf9b8SYg0Y6KQPjGpR4UWwTFdnmjB4qRtoATZ5dWn3KsDwGa5Z2ZBOE7K52L36J9LueKBdOQ==} 1461 + '@rollup/rollup-linux-arm64-gnu@4.53.3': 1462 + resolution: {integrity: sha512-RGrFLWgMhSxRs/EWJMIFM1O5Mzuz3Xy3/mnxJp/5cVhZ2XoCAxJnmNsEyeMJtpK+wu0FJFWz+QF4mjCA7AUQ3w==} 1434 1463 cpu: [arm64] 1435 1464 os: [linux] 1436 1465 1437 - '@rollup/rollup-linux-arm64-musl@4.44.0': 1438 - resolution: {integrity: sha512-GFWfAhVhWGd4r6UxmnKRTBwP1qmModHtd5gkraeW2G490BpFOZkFtem8yuX2NyafIP/mGpRJgTJ2PwohQkUY/Q==} 1466 + '@rollup/rollup-linux-arm64-musl@4.53.3': 1467 + resolution: {integrity: sha512-kASyvfBEWYPEwe0Qv4nfu6pNkITLTb32p4yTgzFCocHnJLAHs+9LjUu9ONIhvfT/5lv4YS5muBHyuV84epBo/A==} 1439 1468 cpu: [arm64] 1440 1469 os: [linux] 1441 1470 1442 - '@rollup/rollup-linux-loongarch64-gnu@4.44.0': 1443 - resolution: {integrity: sha512-xw+FTGcov/ejdusVOqKgMGW3c4+AgqrfvzWEVXcNP6zq2ue+lsYUgJ+5Rtn/OTJf7e2CbgTFvzLW2j0YAtj0Gg==} 1471 + '@rollup/rollup-linux-loong64-gnu@4.53.3': 1472 + resolution: {integrity: sha512-JiuKcp2teLJwQ7vkJ95EwESWkNRFJD7TQgYmCnrPtlu50b4XvT5MOmurWNrCj3IFdyjBQ5p9vnrX4JM6I8OE7g==} 1444 1473 cpu: [loong64] 1445 1474 os: [linux] 1446 1475 1447 - '@rollup/rollup-linux-powerpc64le-gnu@4.44.0': 1448 - resolution: {integrity: sha512-bKGibTr9IdF0zr21kMvkZT4K6NV+jjRnBoVMt2uNMG0BYWm3qOVmYnXKzx7UhwrviKnmK46IKMByMgvpdQlyJQ==} 1476 + '@rollup/rollup-linux-ppc64-gnu@4.53.3': 1477 + resolution: {integrity: sha512-EoGSa8nd6d3T7zLuqdojxC20oBfNT8nexBbB/rkxgKj5T5vhpAQKKnD+h3UkoMuTyXkP5jTjK/ccNRmQrPNDuw==} 1449 1478 cpu: [ppc64] 1450 1479 os: [linux] 1451 1480 1452 - '@rollup/rollup-linux-riscv64-gnu@4.44.0': 1453 - resolution: {integrity: sha512-vV3cL48U5kDaKZtXrti12YRa7TyxgKAIDoYdqSIOMOFBXqFj2XbChHAtXquEn2+n78ciFgr4KIqEbydEGPxXgA==} 1481 + '@rollup/rollup-linux-riscv64-gnu@4.53.3': 1482 + resolution: {integrity: sha512-4s+Wped2IHXHPnAEbIB0YWBv7SDohqxobiiPA1FIWZpX+w9o2i4LezzH/NkFUl8LRci/8udci6cLq+jJQlh+0g==} 1454 1483 cpu: [riscv64] 1455 1484 os: [linux] 1456 1485 1457 - '@rollup/rollup-linux-riscv64-musl@4.44.0': 1458 - resolution: {integrity: sha512-TDKO8KlHJuvTEdfw5YYFBjhFts2TR0VpZsnLLSYmB7AaohJhM8ctDSdDnUGq77hUh4m/djRafw+9zQpkOanE2Q==} 1486 + '@rollup/rollup-linux-riscv64-musl@4.53.3': 1487 + resolution: {integrity: sha512-68k2g7+0vs2u9CxDt5ktXTngsxOQkSEV/xBbwlqYcUrAVh6P9EgMZvFsnHy4SEiUl46Xf0IObWVbMvPrr2gw8A==} 1459 1488 cpu: [riscv64] 1460 1489 os: [linux] 1461 1490 1462 - '@rollup/rollup-linux-s390x-gnu@4.44.0': 1463 - resolution: {integrity: sha512-8541GEyktXaw4lvnGp9m84KENcxInhAt6vPWJ9RodsB/iGjHoMB2Pp5MVBCiKIRxrxzJhGCxmNzdu+oDQ7kwRA==} 1491 + '@rollup/rollup-linux-s390x-gnu@4.53.3': 1492 + resolution: {integrity: sha512-VYsFMpULAz87ZW6BVYw3I6sWesGpsP9OPcyKe8ofdg9LHxSbRMd7zrVrr5xi/3kMZtpWL/wC+UIJWJYVX5uTKg==} 1464 1493 cpu: [s390x] 1465 1494 os: [linux] 1466 1495 1467 - '@rollup/rollup-linux-x64-gnu@4.44.0': 1468 - resolution: {integrity: sha512-iUVJc3c0o8l9Sa/qlDL2Z9UP92UZZW1+EmQ4xfjTc1akr0iUFZNfxrXJ/R1T90h/ILm9iXEY6+iPrmYB3pXKjw==} 1496 + '@rollup/rollup-linux-x64-gnu@4.53.3': 1497 + resolution: {integrity: sha512-3EhFi1FU6YL8HTUJZ51imGJWEX//ajQPfqWLI3BQq4TlvHy4X0MOr5q3D2Zof/ka0d5FNdPwZXm3Yyib/UEd+w==} 1469 1498 cpu: [x64] 1470 1499 os: [linux] 1471 1500 1472 - '@rollup/rollup-linux-x64-musl@4.44.0': 1473 - resolution: {integrity: sha512-PQUobbhLTQT5yz/SPg116VJBgz+XOtXt8D1ck+sfJJhuEsMj2jSej5yTdp8CvWBSceu+WW+ibVL6dm0ptG5fcA==} 1501 + '@rollup/rollup-linux-x64-musl@4.53.3': 1502 + resolution: {integrity: sha512-eoROhjcc6HbZCJr+tvVT8X4fW3/5g/WkGvvmwz/88sDtSJzO7r/blvoBDgISDiCjDRZmHpwud7h+6Q9JxFwq1Q==} 1474 1503 cpu: [x64] 1475 1504 os: [linux] 1476 1505 1477 - '@rollup/rollup-win32-arm64-msvc@4.44.0': 1478 - resolution: {integrity: sha512-M0CpcHf8TWn+4oTxJfh7LQuTuaYeXGbk0eageVjQCKzYLsajWS/lFC94qlRqOlyC2KvRT90ZrfXULYmukeIy7w==} 1506 + '@rollup/rollup-openharmony-arm64@4.53.3': 1507 + resolution: {integrity: sha512-OueLAWgrNSPGAdUdIjSWXw+u/02BRTcnfw9PN41D2vq/JSEPnJnVuBgw18VkN8wcd4fjUs+jFHVM4t9+kBSNLw==} 1508 + cpu: [arm64] 1509 + os: [openharmony] 1510 + 1511 + '@rollup/rollup-win32-arm64-msvc@4.53.3': 1512 + resolution: {integrity: sha512-GOFuKpsxR/whszbF/bzydebLiXIHSgsEUp6M0JI8dWvi+fFa1TD6YQa4aSZHtpmh2/uAlj/Dy+nmby3TJ3pkTw==} 1479 1513 cpu: [arm64] 1480 1514 os: [win32] 1481 1515 1482 - '@rollup/rollup-win32-ia32-msvc@4.44.0': 1483 - resolution: {integrity: sha512-3XJ0NQtMAXTWFW8FqZKcw3gOQwBtVWP/u8TpHP3CRPXD7Pd6s8lLdH3sHWh8vqKCyyiI8xW5ltJScQmBU9j7WA==} 1516 + '@rollup/rollup-win32-ia32-msvc@4.53.3': 1517 + resolution: {integrity: sha512-iah+THLcBJdpfZ1TstDFbKNznlzoxa8fmnFYK4V67HvmuNYkVdAywJSoteUszvBQ9/HqN2+9AZghbajMsFT+oA==} 1484 1518 cpu: [ia32] 1485 1519 os: [win32] 1486 1520 1487 - '@rollup/rollup-win32-x64-msvc@4.44.0': 1488 - resolution: {integrity: sha512-Q2Mgwt+D8hd5FIPUuPDsvPR7Bguza6yTkJxspDGkZj7tBRn2y4KSWYuIXpftFSjBra76TbKerCV7rgFPQrn+wQ==} 1521 + '@rollup/rollup-win32-x64-gnu@4.53.3': 1522 + resolution: {integrity: sha512-J9QDiOIZlZLdcot5NXEepDkstocktoVjkaKUtqzgzpt2yWjGlbYiKyp05rWwk4nypbYUNoFAztEgixoLaSETkg==} 1489 1523 cpu: [x64] 1490 1524 os: [win32] 1491 1525 1492 - '@sindresorhus/is@7.0.2': 1493 - resolution: {integrity: sha512-d9xRovfKNz1SKieM0qJdO+PQonjnnIfSNWfHYnBSJ9hkjm0ZPw6HlxscDXYstp3z+7V2GOFHc+J0CYrYTjqCJw==} 1526 + '@rollup/rollup-win32-x64-msvc@4.53.3': 1527 + resolution: {integrity: sha512-UhTd8u31dXadv0MopwGgNOBpUVROFKWVQgAg5N1ESyCz8AuBcMqm4AuTjrwgQKGDfoFuz02EuMRHQIw/frmYKQ==} 1528 + cpu: [x64] 1529 + os: [win32] 1530 + 1531 + '@sindresorhus/is@7.1.1': 1532 + resolution: {integrity: sha512-rO92VvpgMc3kfiTjGT52LEtJ8Yc5kCWhZjLQ3LwlA4pSgPpQO7bVpYXParOD8Jwf+cVQECJo3yP/4I8aZtUQTQ==} 1494 1533 engines: {node: '>=18'} 1495 1534 1496 - '@speed-highlight/core@1.2.7': 1497 - resolution: {integrity: sha512-0dxmVj4gxg3Jg879kvFS/msl4s9F3T9UXC1InxgOf7t5NvcPD97u/WTA5vL/IxWHMn7qSxBozqrnnE2wvl1m8g==} 1535 + '@speed-highlight/core@1.2.12': 1536 + resolution: {integrity: sha512-uilwrK0Ygyri5dToHYdZSjcvpS2ZwX0w5aSt3GCEN9hrjxWCoeV4Z2DTXuxjwbntaLQIEEAlCeNQss5SoHvAEA==} 1537 + 1538 + '@standard-schema/spec@1.0.0': 1539 + resolution: {integrity: sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA==} 1498 1540 1499 1541 '@surma/rollup-plugin-off-main-thread@2.2.3': 1500 1542 resolution: {integrity: sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==} ··· 1527 1569 '@types/babel__template@7.4.4': 1528 1570 resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} 1529 1571 1530 - '@types/babel__traverse@7.20.7': 1531 - resolution: {integrity: sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==} 1572 + '@types/babel__traverse@7.28.0': 1573 + resolution: {integrity: sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==} 1532 1574 1533 1575 '@types/dom-close-watcher@1.0.0': 1534 1576 resolution: {integrity: sha512-7pL0By56sVVGMSJ3HdSY+u08Id0ljStCaf1VnGFxwfpuNdA0HMz0sl2J24eSi9M6ptl9ySkVK35jF75Fn8trUg==} 1535 1577 1536 - '@types/dom-webcodecs@0.1.15': 1537 - resolution: {integrity: sha512-omOlCPvTWyPm4ZE5bZUhlSvnHM2ZWM2U+1cPiYFL/e8aV5O9MouELp+L4dMKNTON0nTeHqEg+KWDfFQMY5Wkaw==} 1578 + '@types/dom-mediacapture-transform@0.1.11': 1579 + resolution: {integrity: sha512-Y2p+nGf1bF2XMttBnsVPHUWzRRZzqUoJAKmiP10b5umnO6DDrWI0BrGDJy1pOHoOULVmGSfFNkQrAlC5dcj6nQ==} 1580 + 1581 + '@types/dom-webcodecs@0.1.13': 1582 + resolution: {integrity: sha512-O5hkiFIcjjszPIYyUSyvScyvrBoV3NOEEZx/pMlsu44TKzWNkLVBBxnxJz42in5n3QIolYOcBYFCPZZ0h8SkwQ==} 1583 + 1584 + '@types/dom-webcodecs@0.1.18': 1585 + resolution: {integrity: sha512-vAvE8C9DGWR+tkb19xyjk1TSUlJ7RUzzp4a9Anu7mwBT+fpyePWK1UxmH14tMO5zHmrnrRIMg5NutnnDztLxgg==} 1538 1586 1539 1587 '@types/estree@0.0.39': 1540 1588 resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==} ··· 1542 1590 '@types/estree@1.0.8': 1543 1591 resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} 1544 1592 1545 - '@types/node@24.3.0': 1546 - resolution: {integrity: sha512-aPTXCrfwnDLj4VvXrm+UUCQjNEvJgNA8s5F1cvwQU+3KNltTOkBm1j30uNLyqqPNe7gE3KFzImYoZEfLhp4Yow==} 1593 + '@types/node@24.10.1': 1594 + resolution: {integrity: sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==} 1547 1595 1548 1596 '@types/resolve@1.20.2': 1549 1597 resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} ··· 1551 1599 '@types/trusted-types@2.0.7': 1552 1600 resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} 1553 1601 1554 - '@types/wicg-file-system-access@2020.9.8': 1555 - resolution: {integrity: sha512-ggMz8nOygG7d/stpH40WVaNvBwuyYLnrg5Mbyf6bmsj/8+gb6Ei4ZZ9/4PNpcPNTT8th9Q8sM8wYmWGjMWLX/A==} 1556 - 1557 1602 acorn-walk@8.3.2: 1558 1603 resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==} 1559 1604 engines: {node: '>=0.4.0'} ··· 1575 1620 resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 1576 1621 engines: {node: '>=8'} 1577 1622 1578 - ansi-regex@6.1.0: 1579 - resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} 1623 + ansi-regex@6.2.2: 1624 + resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} 1580 1625 engines: {node: '>=12'} 1581 1626 1582 1627 ansi-styles@4.3.0: 1583 1628 resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 1584 1629 engines: {node: '>=8'} 1585 1630 1586 - ansi-styles@6.2.1: 1587 - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} 1631 + ansi-styles@6.2.3: 1632 + resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==} 1588 1633 engines: {node: '>=12'} 1589 1634 1590 1635 any-promise@1.3.0: ··· 1604 1649 resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} 1605 1650 engines: {node: '>= 4.0.0'} 1606 1651 1607 - autoprefixer@10.4.21: 1608 - resolution: {integrity: sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==} 1652 + autoprefixer@10.4.22: 1653 + resolution: {integrity: sha512-ARe0v/t9gO28Bznv6GgqARmVqcWOV3mfgUPn9becPHMiD3o9BwlRgaeccZnwTpZ7Zwqrm+c1sUSsMxIzQzc8Xg==} 1609 1654 engines: {node: ^10 || ^12 || >=14} 1610 1655 hasBin: true 1611 1656 peerDependencies: 1612 1657 postcss: ^8.1.0 1613 1658 1614 - babel-plugin-jsx-dom-expressions@0.39.8: 1615 - resolution: {integrity: sha512-/MVOIIjonylDXnrWmG23ZX82m9mtKATsVHB7zYlPfDR9Vdd/NBE48if+wv27bSkBtyO7EPMUlcUc4J63QwuACQ==} 1659 + babel-plugin-jsx-dom-expressions@0.40.3: 1660 + resolution: {integrity: sha512-5HOwwt0BYiv/zxl7j8Pf2bGL6rDXfV6nUhLs8ygBX+EFJXzBPHM/euj9j/6deMZ6wa52Wb2PBaAV5U/jKwIY1w==} 1616 1661 peerDependencies: 1617 1662 '@babel/core': ^7.20.12 1618 1663 1619 - babel-plugin-polyfill-corejs2@0.4.13: 1620 - resolution: {integrity: sha512-3sX/eOms8kd3q2KZ6DAhKPc0dgm525Gqq5NtWKZ7QYYZEv57OQ54KtblzJzH1lQF/eQxO8KjWGIK9IPUJNus5g==} 1664 + babel-plugin-polyfill-corejs2@0.4.14: 1665 + resolution: {integrity: sha512-Co2Y9wX854ts6U8gAAPXfn0GmAyctHuK8n0Yhfjd6t30g7yvKjspvvOo9yG+z52PZRgFErt7Ka2pYnXCjLKEpg==} 1621 1666 peerDependencies: 1622 1667 '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 1623 1668 1624 - babel-plugin-polyfill-corejs3@0.11.1: 1625 - resolution: {integrity: sha512-yGCqvBT4rwMczo28xkH/noxJ6MZ4nJfkVYdoDaC/utLtWrXxv27HVrzAeSbqR8SxDsp46n0YF47EbHoixy6rXQ==} 1669 + babel-plugin-polyfill-corejs3@0.13.0: 1670 + resolution: {integrity: sha512-U+GNwMdSFgzVmfhNm8GJUX88AadB3uo9KpJqS3FaqNIPKgySuvMb+bHPsOmmuWyIcuqZj/pzt1RUIUZns4y2+A==} 1626 1671 peerDependencies: 1627 1672 '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 1628 1673 1629 - babel-plugin-polyfill-regenerator@0.6.4: 1630 - resolution: {integrity: sha512-7gD3pRadPrbjhjLyxebmx/WrFYcuSjZ0XbdUujQMZ/fcE9oeewk2U/7PCvez84UeuK3oSjmPZ0Ch0dlupQvGzw==} 1674 + babel-plugin-polyfill-regenerator@0.6.5: 1675 + resolution: {integrity: sha512-ISqQ2frbiNU9vIJkzg7dlPpznPZ4jOiUQ1uSmB0fEHeowtN3COYRsXr/xexn64NpU13P06jc/L5TgiJXOgrbEg==} 1631 1676 peerDependencies: 1632 1677 '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 1633 1678 ··· 1636 1681 peerDependencies: 1637 1682 '@babel/core': ^7.24.4 1638 1683 1639 - babel-preset-solid@1.9.6: 1640 - resolution: {integrity: sha512-HXTK9f93QxoH8dYn1M2mJdOlWgMsR88Lg/ul6QCZGkNTktjTE5HAf93YxQumHoCudLEtZrU1cFCMFOVho6GqFg==} 1684 + babel-preset-solid@1.9.10: 1685 + resolution: {integrity: sha512-HCelrgua/Y+kqO8RyL04JBWS/cVdrtUv/h45GntgQY+cJl4eBcKkCDV3TdMjtKx1nXwRaR9QXslM/Npm1dxdZQ==} 1641 1686 peerDependencies: 1642 1687 '@babel/core': ^7.0.0 1688 + solid-js: ^1.9.10 1689 + peerDependenciesMeta: 1690 + solid-js: 1691 + optional: true 1643 1692 1644 1693 balanced-match@1.0.2: 1645 1694 resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 1646 1695 1696 + baseline-browser-mapping@2.9.3: 1697 + resolution: {integrity: sha512-8QdH6czo+G7uBsNo0GiUfouPN1lRzKdJTGnKXwe12gkFbnnOUaUKGN55dMkfy+mnxmvjwl9zcI4VncczcVXDhA==} 1698 + hasBin: true 1699 + 1647 1700 binary-extensions@2.3.0: 1648 1701 resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} 1649 1702 engines: {node: '>=8'} ··· 1654 1707 blake3-wasm@2.1.5: 1655 1708 resolution: {integrity: sha512-F1+K8EbfOZE49dtoPtmxUQrpXaBIl3ICvasLh+nJta0xkz+9kF/7uet9fLnwKqhDrmj6g+6K3Tw9yQPUg2ka5g==} 1656 1709 1657 - brace-expansion@1.1.12: 1658 - resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==} 1659 - 1660 1710 brace-expansion@2.0.2: 1661 1711 resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} 1662 1712 ··· 1664 1714 resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} 1665 1715 engines: {node: '>=8'} 1666 1716 1667 - browserslist@4.25.0: 1668 - resolution: {integrity: sha512-PJ8gYKeS5e/whHBh8xrwYK+dAvEj7JXtz6uTucnMRB8OiGTsKccFekoRrjajPBHV8oOY+2tI4uxeceSimKwMFA==} 1717 + browserslist@4.28.1: 1718 + resolution: {integrity: sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==} 1669 1719 engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 1670 1720 hasBin: true 1671 1721 ··· 1676 1726 resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} 1677 1727 engines: {node: '>= 6'} 1678 1728 1679 - caniuse-lite@1.0.30001724: 1680 - resolution: {integrity: sha512-WqJo7p0TbHDOythNTqYujmaJTvtYRZrjpP8TCvH6Vb9CYJerJNKamKzIWOM4BkQatWj9H2lYulpdAQNBe7QhNA==} 1681 - 1682 - chalk@4.1.2: 1683 - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 1684 - engines: {node: '>=10'} 1729 + caniuse-lite@1.0.30001759: 1730 + resolution: {integrity: sha512-Pzfx9fOKoKvevQf8oCXoyNRQ5QyxJj+3O0Rqx2V5oxT61KGx8+n6hV/IUyJeifUci2clnmmKVpvtiqRzgiWjSw==} 1685 1731 1686 1732 chokidar@3.6.0: 1687 1733 resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} ··· 1715 1761 resolution: {integrity: sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==} 1716 1762 engines: {node: '>=4.0.0'} 1717 1763 1718 - concat-map@0.0.1: 1719 - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 1720 - 1721 1764 convert-source-map@2.0.0: 1722 1765 resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} 1723 1766 1724 - cookie@1.0.2: 1725 - resolution: {integrity: sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==} 1767 + cookie@1.1.1: 1768 + resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==} 1726 1769 engines: {node: '>=18'} 1727 1770 1728 - core-js-compat@3.43.0: 1729 - resolution: {integrity: sha512-2GML2ZsCc5LR7hZYz4AXmjQw8zuy2T//2QntwdnpuYI7jteT6GVYJL7F6C2C57R7gSYrcqVW3lAALefdbhBLDA==} 1771 + core-js-compat@3.47.0: 1772 + resolution: {integrity: sha512-IGfuznZ/n7Kp9+nypamBhvwdwLsW6KC8IOaURw2doAK5e98AG3acVLdh0woOnEqCfUtS+Vu882JE4k/DAm3ItQ==} 1730 1773 1731 1774 cross-spawn@7.0.6: 1732 1775 resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} ··· 1741 1784 engines: {node: '>=4'} 1742 1785 hasBin: true 1743 1786 1744 - csstype@3.1.3: 1745 - resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} 1787 + csstype@3.2.3: 1788 + resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} 1746 1789 1747 - debug@4.4.1: 1748 - resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} 1790 + debug@4.4.3: 1791 + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} 1749 1792 engines: {node: '>=6.0'} 1750 1793 peerDependencies: 1751 1794 supports-color: '*' ··· 1760 1803 defu@6.1.4: 1761 1804 resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} 1762 1805 1763 - detect-libc@2.0.4: 1764 - resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==} 1806 + detect-libc@2.1.2: 1807 + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} 1765 1808 engines: {node: '>=8'} 1766 1809 1767 1810 didyoumean@1.2.2: ··· 1778 1821 engines: {node: '>=0.10.0'} 1779 1822 hasBin: true 1780 1823 1781 - electron-to-chromium@1.5.171: 1782 - resolution: {integrity: sha512-scWpzXEJEMrGJa4Y6m/tVotb0WuvNmasv3wWVzUAeCgKU0ToFOhUW6Z+xWnRQANMYGxN4ngJXIThgBJOqzVPCQ==} 1824 + electron-to-chromium@1.5.266: 1825 + resolution: {integrity: sha512-kgWEglXvkEfMH7rxP5OSZZwnaDWT7J9EoZCujhnpLbfi0bbNtRkgdX2E3gt0Uer11c61qCYktB3hwkAS325sJg==} 1783 1826 1784 1827 emoji-regex@8.0.0: 1785 1828 resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} ··· 1794 1837 error-stack-parser-es@1.0.5: 1795 1838 resolution: {integrity: sha512-5qucVt2XcuGMcEGgWI7i+yZpmpByQ8J1lHhcL7PwqCwu9FPP3VUXzT4ltHe5i2z9dePwEHcDVOAfSnHsOlCXRA==} 1796 1839 1797 - esbuild@0.25.4: 1798 - resolution: {integrity: sha512-8pgjLUcUjcgDg+2Q4NYXnPbo/vncAY4UmyaCm0jZevERqCHZIaWwdJHkf8XQtu4AxSKCdvrUbT0XUr1IdZzI8Q==} 1840 + esbuild@0.25.12: 1841 + resolution: {integrity: sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==} 1799 1842 engines: {node: '>=18'} 1800 1843 hasBin: true 1801 1844 1802 - esbuild@0.25.5: 1803 - resolution: {integrity: sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ==} 1845 + esbuild@0.27.0: 1846 + resolution: {integrity: sha512-jd0f4NHbD6cALCyGElNpGAOtWxSq46l9X/sWB0Nzd5er4Kz2YTm+Vl0qKFT9KUJvD8+fiO8AvoHhFvEatfVixA==} 1804 1847 engines: {node: '>=18'} 1805 1848 hasBin: true 1806 1849 ··· 1824 1867 exit-hook@2.2.1: 1825 1868 resolution: {integrity: sha512-eNTPlAD67BmP31LDINZ3U7HSF8l57TxOY2PmBJ1shpCvpnxBF93mWCE8YHBnXs8qiUZJc9WDcWIeC3a2HIAMfw==} 1826 1869 engines: {node: '>=6'} 1827 - 1828 - exsolve@1.0.7: 1829 - resolution: {integrity: sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw==} 1830 1870 1831 1871 fast-deep-equal@3.1.3: 1832 1872 resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} ··· 1838 1878 fast-json-stable-stringify@2.1.0: 1839 1879 resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 1840 1880 1841 - fast-uri@3.0.6: 1842 - resolution: {integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==} 1881 + fast-uri@3.1.0: 1882 + resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} 1843 1883 1844 1884 fastq@1.19.1: 1845 1885 resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} 1846 1886 1847 - fdir@6.4.6: 1848 - resolution: {integrity: sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==} 1887 + fdir@6.5.0: 1888 + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} 1889 + engines: {node: '>=12.0.0'} 1849 1890 peerDependencies: 1850 1891 picomatch: ^3 || ^4 1851 1892 peerDependenciesMeta: ··· 1863 1904 resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} 1864 1905 engines: {node: '>=14'} 1865 1906 1866 - fraction.js@4.3.7: 1867 - resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} 1907 + fraction.js@5.3.4: 1908 + resolution: {integrity: sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==} 1868 1909 1869 1910 fs-extra@9.1.0: 1870 1911 resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} 1871 1912 engines: {node: '>=10'} 1872 - 1873 - fs.realpath@1.0.0: 1874 - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 1875 1913 1876 1914 fsevents@2.3.3: 1877 1915 resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} ··· 1900 1938 glob-to-regexp@0.4.1: 1901 1939 resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} 1902 1940 1903 - glob@10.4.5: 1904 - resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} 1941 + glob@11.1.0: 1942 + resolution: {integrity: sha512-vuNwKSaKiqm7g0THUBu2x7ckSs3XJLXE+2ssL7/MfTGPLLcrJQ/4Uq1CjPTtO5cCIiRxqvN6Twy1qOwhL0Xjcw==} 1943 + engines: {node: 20 || >=22} 1905 1944 hasBin: true 1906 1945 1907 - glob@7.2.3: 1908 - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 1909 - deprecated: Glob versions prior to v9 are no longer supported 1910 - 1911 - globals@11.12.0: 1912 - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} 1913 - engines: {node: '>=4'} 1914 - 1915 1946 graceful-fs@4.2.11: 1916 1947 resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 1917 1948 1918 - has-flag@4.0.0: 1919 - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 1920 - engines: {node: '>=8'} 1921 - 1922 - hls.js@1.6.5: 1923 - resolution: {integrity: sha512-KMn5n7JBK+olC342740hDPHnGWfE8FiHtGMOdJPfUjRdARTWj9OB+8c13fnsf9sk1VtpuU2fKSgUjHvg4rNbzQ==} 1949 + hls.js@1.6.15: 1950 + resolution: {integrity: sha512-E3a5VwgXimGHwpRGV+WxRTKeSp2DW5DI5MWv34ulL3t5UNmyJWCQ1KmLEHbYzcfThfXG8amBL+fCYPneGHC4VA==} 1924 1951 1925 1952 html-entities@2.3.3: 1926 1953 resolution: {integrity: sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==} ··· 1931 1958 idb@8.0.3: 1932 1959 resolution: {integrity: sha512-LtwtVyVYO5BqRvcsKuB2iUMnHwPVByPCXFXOpuU96IZPPoPN6xjOGxZQ74pgSVVLQWtUOYgyeL4GE98BY5D3wg==} 1933 1960 1934 - inflight@1.0.6: 1935 - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 1936 - deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. 1937 - 1938 - inherits@2.0.4: 1939 - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 1940 - 1941 - is-arrayish@0.3.2: 1942 - resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} 1961 + is-arrayish@0.3.4: 1962 + resolution: {integrity: sha512-m6UrgzFVUYawGBh1dUsWR5M2Clqic9RVXC/9f8ceNlv2IcO9j9J/z8UoCLPqtsPBFNzEpfR3xftohbfqDx8EQA==} 1943 1963 1944 1964 is-binary-path@2.1.0: 1945 1965 resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} ··· 1983 2003 isexe@2.0.0: 1984 2004 resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 1985 2005 1986 - jackspeak@3.4.3: 1987 - resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} 2006 + jackspeak@4.1.1: 2007 + resolution: {integrity: sha512-zptv57P3GpL+O0I7VdMJNBZCu+BPHVQUk55Ft8/QCJjTVxrnJHuVuX/0Bl2A6/+2oyR/ZMEuFKwmzqqZ/U5nPQ==} 2008 + engines: {node: 20 || >=22} 1988 2009 1989 - jake@10.9.2: 1990 - resolution: {integrity: sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==} 2010 + jake@10.9.4: 2011 + resolution: {integrity: sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA==} 1991 2012 engines: {node: '>=10'} 1992 2013 hasBin: true 1993 2014 ··· 2001 2022 js-tokens@4.0.0: 2002 2023 resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 2003 2024 2004 - jsesc@3.0.2: 2005 - resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} 2006 - engines: {node: '>=6'} 2007 - hasBin: true 2008 - 2009 2025 jsesc@3.1.0: 2010 2026 resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} 2011 2027 engines: {node: '>=6'} ··· 2022 2038 engines: {node: '>=6'} 2023 2039 hasBin: true 2024 2040 2025 - jsonfile@6.1.0: 2026 - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} 2041 + jsonfile@6.2.0: 2042 + resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==} 2027 2043 2028 2044 jsonpointer@5.0.1: 2029 2045 resolution: {integrity: sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==} ··· 2053 2069 lodash@4.17.21: 2054 2070 resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} 2055 2071 2056 - lru-cache@10.4.3: 2057 - resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} 2072 + lru-cache@11.2.4: 2073 + resolution: {integrity: sha512-B5Y16Jr9LB9dHVkh6ZevG+vAbOsNOYCX+sXvFWFu7B3Iz5mijW3zdbMyhsh8ANd2mSWBYdJgnqi+mL7/LrOPYg==} 2074 + engines: {node: 20 || >=22} 2058 2075 2059 2076 lru-cache@5.1.1: 2060 2077 resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} ··· 2062 2079 magic-string@0.25.9: 2063 2080 resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} 2064 2081 2065 - magic-string@0.30.18: 2066 - resolution: {integrity: sha512-yi8swmWbO17qHhwIBNeeZxTceJMeBvWJaId6dyvTSOwTipqeHhMhOrz6513r1sOKnpvQ7zkhlG8tPrpilwTxHQ==} 2082 + mediabunny@1.25.7: 2083 + resolution: {integrity: sha512-DL0E1h29HTDaD9bYRXLSSHiAoLbDBksrdYS+4OHWA+aNhQeN+CAGEG7EU6wlhPZ8MOpwXIeC7uv06lo4ziohQQ==} 2067 2084 2068 2085 merge-anything@5.1.7: 2069 2086 resolution: {integrity: sha512-eRtbOb1N5iyH0tkQDAoQ4Ipsp/5qSR79Dzrz8hEPxRX10RWWR/iQXdoKmBSRCThY1Fh5EhISDtpSc93fpxUniQ==} ··· 2082 2099 engines: {node: '>=10.0.0'} 2083 2100 hasBin: true 2084 2101 2085 - miniflare@4.20250816.1: 2086 - resolution: {integrity: sha512-2X8yMy5wWw0dF1pNU4kztzZgp0jWv2KMqAOOb2FeQ/b11yck4aczmYHi7UYD3uyOgtj8WFhwG/KdRWAaATTtRA==} 2102 + miniflare@4.20251202.1: 2103 + resolution: {integrity: sha512-cRp2QNgnt9wpLMoNs4MOzzomyfe9UTS9sPRxIpUvxMl+mweCZ0FHpWWQvCnU7wWlfAP8VGZrHwqSsV5ERA6ahQ==} 2087 2104 engines: {node: '>=18.0.0'} 2088 2105 hasBin: true 2089 2106 2090 - minimatch@3.1.2: 2091 - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 2107 + minimatch@10.1.1: 2108 + resolution: {integrity: sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ==} 2109 + engines: {node: 20 || >=22} 2092 2110 2093 2111 minimatch@5.1.6: 2094 2112 resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} 2095 2113 engines: {node: '>=10'} 2096 - 2097 - minimatch@9.0.5: 2098 - resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} 2099 - engines: {node: '>=16 || 14 >=14.17'} 2100 2114 2101 2115 minipass@7.1.2: 2102 2116 resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} ··· 2113 2127 engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 2114 2128 hasBin: true 2115 2129 2116 - nanoid@5.1.5: 2117 - resolution: {integrity: sha512-Ir/+ZpE9fDsNH0hQ3C68uyThDXzYcim2EqcZ8zn8Chtt1iylPT9xXJB0kPCnqzgcEGikO9RxSrh63MsmVCU7Fw==} 2130 + nanoid@5.1.6: 2131 + resolution: {integrity: sha512-c7+7RQ+dMB5dPwwCp4ee1/iV/q2P6aK1mTZcfr1BTuVlyW9hJYiMPybJCcnBlQtuSmTIWNeazm/zqNoZSSElBg==} 2118 2132 engines: {node: ^18 || >=20} 2119 2133 hasBin: true 2120 2134 2121 - node-releases@2.0.19: 2122 - resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} 2135 + node-releases@2.0.27: 2136 + resolution: {integrity: sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==} 2123 2137 2124 2138 normalize-path@3.0.0: 2125 2139 resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} ··· 2137 2151 resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} 2138 2152 engines: {node: '>= 6'} 2139 2153 2140 - ohash@2.0.11: 2141 - resolution: {integrity: sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==} 2142 - 2143 - once@1.4.0: 2144 - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 2145 - 2146 2154 package-json-from-dist@1.0.1: 2147 2155 resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} 2148 2156 2149 2157 parse5@7.3.0: 2150 2158 resolution: {integrity: sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==} 2151 2159 2152 - path-is-absolute@1.0.1: 2153 - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 2154 - engines: {node: '>=0.10.0'} 2155 - 2156 2160 path-key@3.1.1: 2157 2161 resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 2158 2162 engines: {node: '>=8'} ··· 2160 2164 path-parse@1.0.7: 2161 2165 resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 2162 2166 2163 - path-scurry@1.11.1: 2164 - resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} 2165 - engines: {node: '>=16 || 14 >=14.18'} 2167 + path-scurry@2.0.1: 2168 + resolution: {integrity: sha512-oWyT4gICAu+kaA7QWk/jvCHWarMKNs6pXOGWKDTr7cw4IGcUbW+PeTfbaQiLGheFRpjo6O9J0PmyMfQPjH71oA==} 2169 + engines: {node: 20 || >=22} 2166 2170 2167 2171 path-to-regexp@6.3.0: 2168 2172 resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==} ··· 2177 2181 resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 2178 2182 engines: {node: '>=8.6'} 2179 2183 2180 - picomatch@4.0.2: 2181 - resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} 2184 + picomatch@4.0.3: 2185 + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} 2182 2186 engines: {node: '>=12'} 2183 2187 2184 2188 pify@2.3.0: ··· 2195 2199 peerDependencies: 2196 2200 postcss: ^8.0.0 2197 2201 2198 - postcss-js@4.0.1: 2199 - resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} 2202 + postcss-js@4.1.0: 2203 + resolution: {integrity: sha512-oIAOTqgIo7q2EOwbhb8UalYePMvYoIeRY2YKntdpFQXNosSu3vLrniGgmH9OKs/qAkfoj5oB3le/7mINW1LCfw==} 2200 2204 engines: {node: ^12 || ^14 || >= 16} 2201 2205 peerDependencies: 2202 2206 postcss: ^8.4.21 2203 2207 2204 - postcss-load-config@4.0.2: 2205 - resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} 2206 - engines: {node: '>= 14'} 2208 + postcss-load-config@6.0.1: 2209 + resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==} 2210 + engines: {node: '>= 18'} 2207 2211 peerDependencies: 2212 + jiti: '>=1.21.0' 2208 2213 postcss: '>=8.0.9' 2209 - ts-node: '>=9.0.0' 2214 + tsx: ^4.8.1 2215 + yaml: ^2.4.2 2210 2216 peerDependenciesMeta: 2217 + jiti: 2218 + optional: true 2211 2219 postcss: 2212 2220 optional: true 2213 - ts-node: 2221 + tsx: 2222 + optional: true 2223 + yaml: 2214 2224 optional: true 2215 2225 2216 2226 postcss-nested@6.2.0: ··· 2230 2240 resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} 2231 2241 engines: {node: ^10 || ^12 || >=14} 2232 2242 2233 - prettier-plugin-tailwindcss@0.6.13: 2234 - resolution: {integrity: sha512-uQ0asli1+ic8xrrSmIOaElDu0FacR4x69GynTh2oZjFY10JUt6EEumTQl5tB4fMeD6I1naKd+4rXQQ7esT2i1g==} 2235 - engines: {node: '>=14.21.3'} 2243 + prettier-plugin-tailwindcss@0.7.2: 2244 + resolution: {integrity: sha512-LkphyK3Fw+q2HdMOoiEHWf93fNtYJwfamoKPl7UwtjFQdei/iIBoX11G6j706FzN3ymX9mPVi97qIY8328vdnA==} 2245 + engines: {node: '>=20.19'} 2236 2246 peerDependencies: 2237 2247 '@ianvs/prettier-plugin-sort-imports': '*' 2248 + '@prettier/plugin-hermes': '*' 2249 + '@prettier/plugin-oxc': '*' 2238 2250 '@prettier/plugin-pug': '*' 2239 2251 '@shopify/prettier-plugin-liquid': '*' 2240 2252 '@trivago/prettier-plugin-sort-imports': '*' ··· 2242 2254 prettier: ^3.0 2243 2255 prettier-plugin-astro: '*' 2244 2256 prettier-plugin-css-order: '*' 2245 - prettier-plugin-import-sort: '*' 2246 2257 prettier-plugin-jsdoc: '*' 2247 2258 prettier-plugin-marko: '*' 2248 2259 prettier-plugin-multiline-arrays: '*' 2249 2260 prettier-plugin-organize-attributes: '*' 2250 2261 prettier-plugin-organize-imports: '*' 2251 2262 prettier-plugin-sort-imports: '*' 2252 - prettier-plugin-style-order: '*' 2253 2263 prettier-plugin-svelte: '*' 2254 2264 peerDependenciesMeta: 2255 2265 '@ianvs/prettier-plugin-sort-imports': 2256 2266 optional: true 2267 + '@prettier/plugin-hermes': 2268 + optional: true 2269 + '@prettier/plugin-oxc': 2270 + optional: true 2257 2271 '@prettier/plugin-pug': 2258 2272 optional: true 2259 2273 '@shopify/prettier-plugin-liquid': ··· 2266 2280 optional: true 2267 2281 prettier-plugin-css-order: 2268 2282 optional: true 2269 - prettier-plugin-import-sort: 2270 - optional: true 2271 2283 prettier-plugin-jsdoc: 2272 2284 optional: true 2273 2285 prettier-plugin-marko: ··· 2279 2291 prettier-plugin-organize-imports: 2280 2292 optional: true 2281 2293 prettier-plugin-sort-imports: 2282 - optional: true 2283 - prettier-plugin-style-order: 2284 2294 optional: true 2285 2295 prettier-plugin-svelte: 2286 2296 optional: true 2287 2297 2288 - prettier@3.6.0: 2289 - resolution: {integrity: sha512-ujSB9uXHJKzM/2GBuE0hBOUgC77CN3Bnpqa+g80bkv3T3A93wL/xlzDATHhnhkzifz/UE2SNOvmbTz5hSkDlHw==} 2298 + prettier@3.7.4: 2299 + resolution: {integrity: sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==} 2290 2300 engines: {node: '>=14'} 2291 2301 hasBin: true 2292 2302 ··· 2318 2328 resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} 2319 2329 engines: {node: '>=8.10.0'} 2320 2330 2321 - regenerate-unicode-properties@10.2.0: 2322 - resolution: {integrity: sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==} 2331 + regenerate-unicode-properties@10.2.2: 2332 + resolution: {integrity: sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g==} 2323 2333 engines: {node: '>=4'} 2324 2334 2325 2335 regenerate@1.4.2: 2326 2336 resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} 2327 2337 2328 - regexpu-core@6.2.0: 2329 - resolution: {integrity: sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==} 2338 + regexpu-core@6.4.0: 2339 + resolution: {integrity: sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==} 2330 2340 engines: {node: '>=4'} 2331 2341 2332 2342 regjsgen@0.8.0: 2333 2343 resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==} 2334 2344 2335 - regjsparser@0.12.0: 2336 - resolution: {integrity: sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==} 2345 + regjsparser@0.13.0: 2346 + resolution: {integrity: sha512-NZQZdC5wOE/H3UT28fVGL+ikOZcEzfMGk/c3iN9UGxzWHMa1op7274oyiUVrAG4B2EuFhus8SvkaYnhvW92p9Q==} 2337 2347 hasBin: true 2338 2348 2339 2349 require-from-string@2.0.2: 2340 2350 resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} 2341 2351 engines: {node: '>=0.10.0'} 2342 2352 2343 - resolve@1.22.10: 2344 - resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} 2353 + resolve@1.22.11: 2354 + resolution: {integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==} 2345 2355 engines: {node: '>= 0.4'} 2346 2356 hasBin: true 2347 2357 ··· 2354 2364 engines: {node: '>=10.0.0'} 2355 2365 hasBin: true 2356 2366 2357 - rollup@4.44.0: 2358 - resolution: {integrity: sha512-qHcdEzLCiktQIfwBq420pn2dP+30uzqYxv9ETm91wdt2R9AFcWfjNAmje4NWlnCIQ5RMTzVf0ZyisOKqHR6RwA==} 2367 + rollup@4.53.3: 2368 + resolution: {integrity: sha512-w8GmOxZfBmKknvdXU1sdM9NHcoQejwF/4mNgj2JuEEdRaHwwF12K7e9eXn1nLZ07ad+du76mkVsyeb2rKGllsA==} 2359 2369 engines: {node: '>=18.0.0', npm: '>=8.0.0'} 2360 2370 hasBin: true 2361 2371 ··· 2366 2376 resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} 2367 2377 hasBin: true 2368 2378 2369 - semver@7.7.2: 2370 - resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} 2379 + semver@7.7.3: 2380 + resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==} 2371 2381 engines: {node: '>=10'} 2372 2382 hasBin: true 2373 2383 2374 2384 serialize-javascript@6.0.2: 2375 2385 resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} 2376 2386 2377 - seroval-plugins@1.3.2: 2378 - resolution: {integrity: sha512-0QvCV2lM3aj/U3YozDiVwx9zpH0q8A60CTWIv4Jszj/givcudPb48B+rkU5D51NJ0pTpweGMttHjboPa9/zoIQ==} 2387 + seroval-plugins@1.3.3: 2388 + resolution: {integrity: sha512-16OL3NnUBw8JG1jBLUoZJsLnQq0n5Ua6aHalhJK4fMQkz1lqR7Osz1sA30trBtd9VUDc2NgkuRCn8+/pBwqZ+w==} 2379 2389 engines: {node: '>=10'} 2380 2390 peerDependencies: 2381 2391 seroval: ^1.0 ··· 2400 2410 resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} 2401 2411 engines: {node: '>=14'} 2402 2412 2403 - simple-swizzle@0.2.2: 2404 - resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} 2413 + simple-swizzle@0.2.4: 2414 + resolution: {integrity: sha512-nAu1WFPQSMNr2Zn9PGSZK9AGn4t/y97lEm+MXTtUDwfP0ksAIX4nO+6ruD9Jwut4C49SB1Ws+fbXsm/yScWOHw==} 2405 2415 2406 2416 smob@1.5.0: 2407 2417 resolution: {integrity: sha512-g6T+p7QO8npa+/hNx9ohv1E5pVCmWrVCUzUXJyLdMmftX6ER0oiWY/w9knEonLpnOp6b6FenKnMfR8gqwWdwig==} ··· 2413 2423 '@floating-ui/dom': ^1.0 2414 2424 solid-js: ^1.3 2415 2425 2416 - solid-js@1.9.7: 2417 - resolution: {integrity: sha512-/saTKi8iWEM233n5OSi1YHCCuh66ZIQ7aK2hsToPe4tqGm7qAejU1SwNuTPivbWAYq7SjuHVVYxxuZQNRbICiw==} 2426 + solid-js@1.9.10: 2427 + resolution: {integrity: sha512-Coz956cos/EPDlhs6+jsdTxKuJDPT7B5SVIWgABwROyxjY7Xbr8wkzD68Et+NxnV7DLJ3nJdAC2r9InuV/4Jew==} 2418 2428 2419 2429 solid-refresh@0.6.3: 2420 2430 resolution: {integrity: sha512-F3aPsX6hVw9ttm5LYlth8Q15x6MlI/J3Dn+o3EQyRTtTxidepSTwAYdozt01/YA+7ObcciagGEyXIopGZzQtbA==} ··· 2435 2445 source-map@0.8.0-beta.0: 2436 2446 resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} 2437 2447 engines: {node: '>= 8'} 2448 + deprecated: The work that was done in this beta branch won't be included in future versions 2438 2449 2439 2450 sourcemap-codec@1.4.8: 2440 2451 resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} ··· 2460 2471 resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 2461 2472 engines: {node: '>=8'} 2462 2473 2463 - strip-ansi@7.1.0: 2464 - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} 2474 + strip-ansi@7.1.2: 2475 + resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==} 2465 2476 engines: {node: '>=12'} 2466 2477 2467 2478 strip-comments@2.0.1: 2468 2479 resolution: {integrity: sha512-ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw==} 2469 2480 engines: {node: '>=10'} 2470 2481 2471 - sucrase@3.35.0: 2472 - resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} 2482 + sucrase@3.35.1: 2483 + resolution: {integrity: sha512-DhuTmvZWux4H1UOnWMB3sk0sbaCVOoQZjv8u1rDoTV0HTdGem9hkAZtl4JZy8P2z4Bg0nT+YMeOFyVr4zcG5Tw==} 2473 2484 engines: {node: '>=16 || 14 >=14.17'} 2474 2485 hasBin: true 2475 2486 2476 - supports-color@10.2.0: 2477 - resolution: {integrity: sha512-5eG9FQjEjDbAlI5+kdpdyPIBMRH4GfTVDGREVupaZHmVoppknhM29b/S9BkQz7cathp85BVgRi/As3Siln7e0Q==} 2487 + supports-color@10.2.2: 2488 + resolution: {integrity: sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==} 2478 2489 engines: {node: '>=18'} 2479 2490 2480 - supports-color@7.2.0: 2481 - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 2482 - engines: {node: '>=8'} 2483 - 2484 2491 supports-preserve-symlinks-flag@1.0.0: 2485 2492 resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 2486 2493 engines: {node: '>= 0.4'} 2487 2494 2488 - tailwindcss@3.4.17: 2489 - resolution: {integrity: sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og==} 2495 + tailwindcss@3.4.18: 2496 + resolution: {integrity: sha512-6A2rnmW5xZMdw11LYjhcI5846rt9pbLSabY5XPxo+XWdxwZaFEn47Go4NzFiHu9sNNmr/kXivP1vStfvMaK1GQ==} 2490 2497 engines: {node: '>=14.0.0'} 2491 2498 hasBin: true 2492 2499 ··· 2498 2505 resolution: {integrity: sha512-G13vtMYPT/J8A4X2SjdtBTphZlrp1gKv6hZiOjw14RCWg6GbHuQBGtjlx75xLbYV/wEc0D7G5K4rxKP/cXk8Bw==} 2499 2506 engines: {node: '>=10'} 2500 2507 2501 - terser@5.43.1: 2502 - resolution: {integrity: sha512-+6erLbBm0+LROX2sPXlUYx/ux5PyE9K/a92Wrt6oA+WDAoFTdpHE5tCYCI5PNzq2y8df4rA+QgHLJuR4jNymsg==} 2508 + terser@5.44.1: 2509 + resolution: {integrity: sha512-t/R3R/n0MSwnnazuPpPNVO60LX0SKL45pyl9YlvxIdkH0Of7D5qM2EVe+yASRIlY5pZ73nclYJfNANGWPwFDZw==} 2503 2510 engines: {node: '>=10'} 2504 2511 hasBin: true 2505 2512 ··· 2510 2517 thenify@3.3.1: 2511 2518 resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} 2512 2519 2513 - tinyglobby@0.2.14: 2514 - resolution: {integrity: sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==} 2520 + tinyglobby@0.2.15: 2521 + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} 2515 2522 engines: {node: '>=12.0.0'} 2516 2523 2517 2524 to-regex-range@5.0.1: ··· 2531 2538 resolution: {integrity: sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==} 2532 2539 engines: {node: '>=10'} 2533 2540 2534 - typescript@5.8.3: 2535 - resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} 2541 + typescript@5.9.3: 2542 + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} 2536 2543 engines: {node: '>=14.17'} 2537 2544 hasBin: true 2538 2545 2539 - ufo@1.6.1: 2540 - resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==} 2546 + undici-types@7.16.0: 2547 + resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} 2541 2548 2542 - undici-types@7.10.0: 2543 - resolution: {integrity: sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==} 2544 - 2545 - undici@7.15.0: 2546 - resolution: {integrity: sha512-7oZJCPvvMvTd0OlqWsIxTuItTpJBpU1tcbVl24FMn3xt3+VSunwUasmfPJRE57oNO1KsZ4PgA1xTdAX4hq8NyQ==} 2549 + undici@7.14.0: 2550 + resolution: {integrity: sha512-Vqs8HTzjpQXZeXdpsfChQTlafcMQaaIwnGwLam1wudSSjlJeQ3bw1j+TLPePgrCnCpUXx7Ba5Pdpf5OBih62NQ==} 2547 2551 engines: {node: '>=20.18.1'} 2548 2552 2549 - unenv@2.0.0-rc.19: 2550 - resolution: {integrity: sha512-t/OMHBNAkknVCI7bVB9OWjUUAwhVv9vsPIAGnNUxnu3FxPQN11rjh0sksLMzc3g7IlTgvHmOTl4JM7JHpcv5wA==} 2553 + unenv@2.0.0-rc.24: 2554 + resolution: {integrity: sha512-i7qRCmY42zmCwnYlh9H2SvLEypEFGye5iRmEMKjcGi7zk9UquigRjFtTLz0TYqr0ZGLZhaMHl/foy1bZR+Cwlw==} 2551 2555 2552 2556 unicode-canonical-property-names-ecmascript@2.0.1: 2553 2557 resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==} ··· 2557 2561 resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} 2558 2562 engines: {node: '>=4'} 2559 2563 2560 - unicode-match-property-value-ecmascript@2.2.0: 2561 - resolution: {integrity: sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==} 2564 + unicode-match-property-value-ecmascript@2.2.1: 2565 + resolution: {integrity: sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==} 2562 2566 engines: {node: '>=4'} 2563 2567 2564 - unicode-property-aliases-ecmascript@2.1.0: 2565 - resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} 2568 + unicode-property-aliases-ecmascript@2.2.0: 2569 + resolution: {integrity: sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==} 2566 2570 engines: {node: '>=4'} 2567 2571 2568 2572 unique-string@2.0.0: ··· 2577 2581 resolution: {integrity: sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==} 2578 2582 engines: {node: '>=4'} 2579 2583 2580 - update-browserslist-db@1.1.3: 2581 - resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==} 2584 + update-browserslist-db@1.2.2: 2585 + resolution: {integrity: sha512-E85pfNzMQ9jpKkA7+TJAi4TJN+tBCuWh5rUcS/sv6cFi+1q9LYDwDI5dpUL0u/73EElyQ8d3TEaeW4sPedBqYA==} 2582 2586 hasBin: true 2583 2587 peerDependencies: 2584 2588 browserslist: '>= 4.21.0' ··· 2586 2590 util-deprecate@1.0.2: 2587 2591 resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 2588 2592 2589 - validate-html-nesting@1.2.3: 2590 - resolution: {integrity: sha512-kdkWdCl6eCeLlRShJKbjVOU2kFKxMF8Ghu50n+crEoyx+VKm3FxAxF9z4DCy6+bbTOqNW0+jcIYRnjoIRzigRw==} 2591 - 2592 - vite-plugin-pwa@0.21.0: 2593 - resolution: {integrity: sha512-gnDE5sN2hdxA4vTl0pe6PCTPXqChk175jH8dZVVTBjFhWarZZoXaAdoTIKCIa8Zbx94sC0CnCOyERBWpxvry+g==} 2593 + vite-plugin-pwa@1.1.0: 2594 + resolution: {integrity: sha512-VsSpdubPzXhHWVINcSx6uHRMpOHVHQcHsef1QgkOlEoaIDAlssFEW88LBq1a59BuokAhsh2kUDJbaX1bZv4Bjw==} 2594 2595 engines: {node: '>=16.0.0'} 2595 2596 peerDependencies: 2596 - '@vite-pwa/assets-generator': ^0.2.6 2597 - vite: ^3.1.0 || ^4.0.0 || ^5.0.0 2597 + '@vite-pwa/assets-generator': ^1.0.0 2598 + vite: ^3.1.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 2598 2599 peerDependenciesMeta: 2599 2600 '@vite-pwa/assets-generator': 2600 2601 optional: true 2601 2602 2602 - vite-plugin-solid@2.11.6: 2603 - resolution: {integrity: sha512-Sl5CTqJTGyEeOsmdH6BOgalIZlwH3t4/y0RQuFLMGnvWMBvxb4+lq7x3BSiAw6etf0QexfNJW7HSOO/Qf7pigg==} 2603 + vite-plugin-solid@2.11.10: 2604 + resolution: {integrity: sha512-Yr1dQybmtDtDAHkii6hXuc1oVH9CPcS/Zb2jN/P36qqcrkNnVPsMTzQ06jyzFPFjj3U1IYKMVt/9ZqcwGCEbjw==} 2604 2605 peerDependencies: 2605 2606 '@testing-library/jest-dom': ^5.16.6 || ^5.17.0 || ^6.* 2606 2607 solid-js: ^1.7.2 2607 - vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 2608 + vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 2608 2609 peerDependenciesMeta: 2609 2610 '@testing-library/jest-dom': 2610 2611 optional: true 2611 2612 2612 - vite@6.3.5: 2613 - resolution: {integrity: sha512-cZn6NDFE7wdTpINgs++ZJ4N49W2vRp8LCKrn3Ob1kYNtOo21vfDoaV5GzBfLU4MovSAB8uNRm4jgzVQZ+mBzPQ==} 2614 - engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} 2613 + vite@7.2.6: 2614 + resolution: {integrity: sha512-tI2l/nFHC5rLh7+5+o7QjKjSR04ivXDF4jcgV0f/bTQ+OJiITy5S6gaynVsEM+7RqzufMnVbIon6Sr5x1SDYaQ==} 2615 + engines: {node: ^20.19.0 || >=22.12.0} 2615 2616 hasBin: true 2616 2617 peerDependencies: 2617 - '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 2618 + '@types/node': ^20.19.0 || >=22.12.0 2618 2619 jiti: '>=1.21.0' 2619 - less: '*' 2620 + less: ^4.0.0 2620 2621 lightningcss: ^1.21.0 2621 - sass: '*' 2622 - sass-embedded: '*' 2623 - stylus: '*' 2624 - sugarss: '*' 2622 + sass: ^1.70.0 2623 + sass-embedded: ^1.70.0 2624 + stylus: '>=0.54.8' 2625 + sugarss: ^5.0.0 2625 2626 terser: ^5.16.0 2626 2627 tsx: ^4.8.1 2627 2628 yaml: ^2.4.2 ··· 2649 2650 yaml: 2650 2651 optional: true 2651 2652 2652 - vitefu@1.0.7: 2653 - resolution: {integrity: sha512-eRWXLBbJjW3X5z5P5IHcSm2yYbYRPb2kQuc+oqsbAl99WB5kVsPbiiox+cymo8twTzifA6itvhr2CmjnaZZp0Q==} 2653 + vitefu@1.1.1: 2654 + resolution: {integrity: sha512-B/Fegf3i8zh0yFbpzZ21amWzHmuNlLlmJT6n7bu5e+pCHUKQIfXSYokrqOBGEMMe9UG2sostKQF9mml/vYaWJQ==} 2654 2655 peerDependencies: 2655 2656 vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0-beta.0 2656 2657 peerDependenciesMeta: ··· 2660 2661 webidl-conversions@4.0.2: 2661 2662 resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} 2662 2663 2663 - webm-muxer@5.1.3: 2664 - resolution: {integrity: sha512-zHLsTCXJ1m+sSVt2xefsmGuGz/mHcGtKzjL7Tekx2HaodpjT4xYyZnm+DrECv5D7EPt8p+XV74MUy41Ley1mdg==} 2665 - 2666 2664 whatwg-url@7.1.0: 2667 2665 resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} 2668 2666 ··· 2671 2669 engines: {node: '>= 8'} 2672 2670 hasBin: true 2673 2671 2674 - workbox-background-sync@7.3.0: 2675 - resolution: {integrity: sha512-PCSk3eK7Mxeuyatb22pcSx9dlgWNv3+M8PqPaYDokks8Y5/FX4soaOqj3yhAZr5k6Q5JWTOMYgaJBpbw11G9Eg==} 2672 + workbox-background-sync@7.4.0: 2673 + resolution: {integrity: sha512-8CB9OxKAgKZKyNMwfGZ1XESx89GryWTfI+V5yEj8sHjFH8MFelUwYXEyldEK6M6oKMmn807GoJFUEA1sC4XS9w==} 2676 2674 2677 - workbox-broadcast-update@7.3.0: 2678 - resolution: {integrity: sha512-T9/F5VEdJVhwmrIAE+E/kq5at2OY6+OXXgOWQevnubal6sO92Gjo24v6dCVwQiclAF5NS3hlmsifRrpQzZCdUA==} 2675 + workbox-broadcast-update@7.4.0: 2676 + resolution: {integrity: sha512-+eZQwoktlvo62cI0b+QBr40v5XjighxPq3Fzo9AWMiAosmpG5gxRHgTbGGhaJv/q/MFVxwFNGh/UwHZ/8K88lA==} 2679 2677 2680 - workbox-build@7.3.0: 2681 - resolution: {integrity: sha512-JGL6vZTPlxnlqZRhR/K/msqg3wKP+m0wfEUVosK7gsYzSgeIxvZLi1ViJJzVL7CEeI8r7rGFV973RiEqkP3lWQ==} 2682 - engines: {node: '>=16.0.0'} 2678 + workbox-build@7.4.0: 2679 + resolution: {integrity: sha512-Ntk1pWb0caOFIvwz/hfgrov/OJ45wPEhI5PbTywQcYjyZiVhT3UrwwUPl6TRYbTm4moaFYithYnl1lvZ8UjxcA==} 2680 + engines: {node: '>=20.0.0'} 2683 2681 2684 - workbox-cacheable-response@7.3.0: 2685 - resolution: {integrity: sha512-eAFERIg6J2LuyELhLlmeRcJFa5e16Mj8kL2yCDbhWE+HUun9skRQrGIFVUagqWj4DMaaPSMWfAolM7XZZxNmxA==} 2682 + workbox-cacheable-response@7.4.0: 2683 + resolution: {integrity: sha512-0Fb8795zg/x23ISFkAc7lbWes6vbw34DGFIMw31cwuHPgDEC/5EYm6m/ZkylLX0EnEbbOyOCLjKgFS/Z5g0HeQ==} 2686 2684 2687 - workbox-core@7.3.0: 2688 - resolution: {integrity: sha512-Z+mYrErfh4t3zi7NVTvOuACB0A/jA3bgxUN3PwtAVHvfEsZxV9Iju580VEETug3zYJRc0Dmii/aixI/Uxj8fmw==} 2685 + workbox-core@7.4.0: 2686 + resolution: {integrity: sha512-6BMfd8tYEnN4baG4emG9U0hdXM4gGuDU3ectXuVHnj71vwxTFI7WOpQJC4siTOlVtGqCUtj0ZQNsrvi6kZZTAQ==} 2689 2687 2690 - workbox-expiration@7.3.0: 2691 - resolution: {integrity: sha512-lpnSSLp2BM+K6bgFCWc5bS1LR5pAwDWbcKt1iL87/eTSJRdLdAwGQznZE+1czLgn/X05YChsrEegTNxjM067vQ==} 2688 + workbox-expiration@7.4.0: 2689 + resolution: {integrity: sha512-V50p4BxYhtA80eOvulu8xVfPBgZbkxJ1Jr8UUn0rvqjGhLDqKNtfrDfjJKnLz2U8fO2xGQJTx/SKXNTzHOjnHw==} 2692 2690 2693 - workbox-google-analytics@7.3.0: 2694 - resolution: {integrity: sha512-ii/tSfFdhjLHZ2BrYgFNTrb/yk04pw2hasgbM70jpZfLk0vdJAXgaiMAWsoE+wfJDNWoZmBYY0hMVI0v5wWDbg==} 2691 + workbox-google-analytics@7.4.0: 2692 + resolution: {integrity: sha512-MVPXQslRF6YHkzGoFw1A4GIB8GrKym/A5+jYDUSL+AeJw4ytQGrozYdiZqUW1TPQHW8isBCBtyFJergUXyNoWQ==} 2695 2693 2696 - workbox-navigation-preload@7.3.0: 2697 - resolution: {integrity: sha512-fTJzogmFaTv4bShZ6aA7Bfj4Cewaq5rp30qcxl2iYM45YD79rKIhvzNHiFj1P+u5ZZldroqhASXwwoyusnr2cg==} 2694 + workbox-navigation-preload@7.4.0: 2695 + resolution: {integrity: sha512-etzftSgdQfjMcfPgbfaZCfM2QuR1P+4o8uCA2s4rf3chtKTq/Om7g/qvEOcZkG6v7JZOSOxVYQiOu6PbAZgU6w==} 2698 2696 2699 - workbox-precaching@7.3.0: 2700 - resolution: {integrity: sha512-ckp/3t0msgXclVAYaNndAGeAoWQUv7Rwc4fdhWL69CCAb2UHo3Cef0KIUctqfQj1p8h6aGyz3w8Cy3Ihq9OmIw==} 2697 + workbox-precaching@7.4.0: 2698 + resolution: {integrity: sha512-VQs37T6jDqf1rTxUJZXRl3yjZMf5JX/vDPhmx2CPgDDKXATzEoqyRqhYnRoxl6Kr0rqaQlp32i9rtG5zTzIlNg==} 2701 2699 2702 - workbox-range-requests@7.3.0: 2703 - resolution: {integrity: sha512-EyFmM1KpDzzAouNF3+EWa15yDEenwxoeXu9bgxOEYnFfCxns7eAxA9WSSaVd8kujFFt3eIbShNqa4hLQNFvmVQ==} 2700 + workbox-range-requests@7.4.0: 2701 + resolution: {integrity: sha512-3Vq854ZNuP6Y0KZOQWLaLC9FfM7ZaE+iuQl4VhADXybwzr4z/sMmnLgTeUZLq5PaDlcJBxYXQ3U91V7dwAIfvw==} 2704 2702 2705 - workbox-recipes@7.3.0: 2706 - resolution: {integrity: sha512-BJro/MpuW35I/zjZQBcoxsctgeB+kyb2JAP5EB3EYzePg8wDGoQuUdyYQS+CheTb+GhqJeWmVs3QxLI8EBP1sg==} 2703 + workbox-recipes@7.4.0: 2704 + resolution: {integrity: sha512-kOkWvsAn4H8GvAkwfJTbwINdv4voFoiE9hbezgB1sb/0NLyTG4rE7l6LvS8lLk5QIRIto+DjXLuAuG3Vmt3cxQ==} 2707 2705 2708 - workbox-routing@7.3.0: 2709 - resolution: {integrity: sha512-ZUlysUVn5ZUzMOmQN3bqu+gK98vNfgX/gSTZ127izJg/pMMy4LryAthnYtjuqcjkN4HEAx1mdgxNiKJMZQM76A==} 2706 + workbox-routing@7.4.0: 2707 + resolution: {integrity: sha512-C/ooj5uBWYAhAqwmU8HYQJdOjjDKBp9MzTQ+otpMmd+q0eF59K+NuXUek34wbL0RFrIXe/KKT+tUWcZcBqxbHQ==} 2710 2708 2711 - workbox-strategies@7.3.0: 2712 - resolution: {integrity: sha512-tmZydug+qzDFATwX7QiEL5Hdf7FrkhjaF9db1CbB39sDmEZJg3l9ayDvPxy8Y18C3Y66Nrr9kkN1f/RlkDgllg==} 2709 + workbox-strategies@7.4.0: 2710 + resolution: {integrity: sha512-T4hVqIi5A4mHi92+5EppMX3cLaVywDp8nsyUgJhOZxcfSV/eQofcOA6/EMo5rnTNmNTpw0rUgjAI6LaVullPpg==} 2713 2711 2714 - workbox-streams@7.3.0: 2715 - resolution: {integrity: sha512-SZnXucyg8x2Y61VGtDjKPO5EgPUG5NDn/v86WYHX+9ZqvAsGOytP0Jxp1bl663YUuMoXSAtsGLL+byHzEuMRpw==} 2712 + workbox-streams@7.4.0: 2713 + resolution: {integrity: sha512-QHPBQrey7hQbnTs5GrEVoWz7RhHJXnPT+12qqWM378orDMo5VMJLCkCM1cnCk+8Eq92lccx/VgRZ7WAzZWbSLg==} 2716 2714 2717 - workbox-sw@7.3.0: 2718 - resolution: {integrity: sha512-aCUyoAZU9IZtH05mn0ACUpyHzPs0lMeJimAYkQkBsOWiqaJLgusfDCR+yllkPkFRxWpZKF8vSvgHYeG7LwhlmA==} 2715 + workbox-sw@7.4.0: 2716 + resolution: {integrity: sha512-ltU+Kr3qWR6BtbdlMnCjobZKzeV1hN+S6UvDywBrwM19TTyqA03X66dzw1tEIdJvQ4lYKkBFox6IAEhoSEZ8Xw==} 2719 2717 2720 - workbox-window@7.3.0: 2721 - resolution: {integrity: sha512-qW8PDy16OV1UBaUNGlTVcepzrlzyzNW/ZJvFQQs2j2TzGsg6IKjcpZC1RSquqQnTOafl5pCj5bGfAHlCjOOjdA==} 2718 + workbox-window@7.4.0: 2719 + resolution: {integrity: sha512-/bIYdBLAVsNR3v7gYGaV4pQW3M3kEPx5E8vDxGvxo6khTrGtSSCS7QiFKv9ogzBgZiy0OXLP9zO28U/1nF1mfw==} 2722 2720 2723 - workerd@1.20250816.0: 2724 - resolution: {integrity: sha512-5gIvHPE/3QVlQR1Sc1NdBkWmqWj/TSgIbY/f/qs9lhiLBw/Da+HbNBTVYGjvwYqEb3NQ+XQM4gAm5b2+JJaUJg==} 2721 + workerd@1.20251202.0: 2722 + resolution: {integrity: sha512-p08YfrUMHkjCECNdT36r+6DpJIZX4kixbZ4n6GMUcLR5Gh18fakSCsiQrh72iOm4M9QHv/rM7P8YvCrUPWT5sg==} 2725 2723 engines: {node: '>=16'} 2726 2724 hasBin: true 2727 2725 2728 - wrangler@4.32.0: 2729 - resolution: {integrity: sha512-q7TRSavBW3Eg3pp4rxqKJwSK+u/ieFOBdNvUsq1P1EMmyj3//tN/iXDokFak+dkW0vDYjsVG3PfOfHxU92OS6w==} 2730 - engines: {node: '>=18.0.0'} 2726 + wrangler@4.53.0: 2727 + resolution: {integrity: sha512-/wvnHlRnlHsqaeIgGbmcEJE5NFYdTUWHCKow+U5Tv2XwQXI9vXUqBwCLAGy/BwqyS5nnycRt2kppqCzgHgyb7Q==} 2728 + engines: {node: '>=20.0.0'} 2731 2729 hasBin: true 2732 2730 peerDependencies: 2733 - '@cloudflare/workers-types': ^4.20250816.0 2731 + '@cloudflare/workers-types': ^4.20251202.0 2734 2732 peerDependenciesMeta: 2735 2733 '@cloudflare/workers-types': 2736 2734 optional: true ··· 2743 2741 resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} 2744 2742 engines: {node: '>=12'} 2745 2743 2746 - wrappy@1.0.2: 2747 - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 2748 - 2749 2744 ws@8.18.0: 2750 2745 resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} 2751 2746 engines: {node: '>=10.0.0'} ··· 2761 2756 yallist@3.1.1: 2762 2757 resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} 2763 2758 2764 - yaml@2.8.0: 2765 - resolution: {integrity: sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==} 2766 - engines: {node: '>= 14.6'} 2767 - hasBin: true 2768 - 2769 2759 youch-core@0.3.3: 2770 2760 resolution: {integrity: sha512-ho7XuGjLaJ2hWHoK8yFnsUGy2Y5uDpqSTq1FkHLK4/oqKtyUU1AFbOOxY4IpC9f0fTLjwYbslUz0Po5BpD1wrA==} 2771 2761 ··· 2778 2768 snapshots: 2779 2769 2780 2770 '@alloc/quick-lru@5.2.0': {} 2781 - 2782 - '@ampproject/remapping@2.3.0': 2783 - dependencies: 2784 - '@jridgewell/gen-mapping': 0.3.8 2785 - '@jridgewell/trace-mapping': 0.3.25 2786 2771 2787 2772 '@apideck/better-ajv-errors@0.3.6(ajv@8.17.1)': 2788 2773 dependencies: ··· 2791 2776 jsonpointer: 5.0.1 2792 2777 leven: 3.1.0 2793 2778 2794 - '@atcute/atproto@3.1.0': 2779 + '@atcute/atproto@3.1.9': 2795 2780 dependencies: 2796 - '@atcute/lexicons': 1.1.0 2781 + '@atcute/lexicons': 1.2.5 2797 2782 2798 - '@atcute/bluemoji@3.1.0': 2783 + '@atcute/bluemoji@3.1.3': 2799 2784 dependencies: 2800 - '@atcute/atproto': 3.1.0 2801 - '@atcute/bluesky': 3.1.3 2802 - '@atcute/lexicons': 1.1.0 2785 + '@atcute/atproto': 3.1.9 2786 + '@atcute/bluesky': 3.2.12 2787 + '@atcute/lexicons': 1.2.5 2803 2788 2804 2789 '@atcute/bluesky-richtext-parser@1.0.7': {} 2805 2790 2806 - '@atcute/bluesky-richtext-segmenter@2.0.3': 2791 + '@atcute/bluesky-richtext-segmenter@2.0.4': 2807 2792 dependencies: 2808 - '@atcute/bluesky': 3.1.3 2809 - '@atcute/lexicons': 1.1.0 2793 + '@atcute/bluesky': 3.2.12 2794 + '@atcute/lexicons': 1.2.5 2810 2795 2811 - '@atcute/bluesky-search-parser@0.1.0': {} 2796 + '@atcute/bluesky-search-parser@0.1.1': {} 2812 2797 2813 - '@atcute/bluesky@3.1.3': 2798 + '@atcute/bluesky@3.2.12': 2814 2799 dependencies: 2815 - '@atcute/atproto': 3.1.0 2816 - '@atcute/lexicons': 1.1.0 2800 + '@atcute/atproto': 3.1.9 2801 + '@atcute/lexicons': 1.2.5 2817 2802 2818 - '@atcute/cbor@2.2.4': 2803 + '@atcute/cbor@2.2.8': 2819 2804 dependencies: 2820 - '@atcute/cid': 2.2.3 2821 - '@atcute/multibase': 1.1.4 2822 - '@atcute/uint8array': 1.0.3 2805 + '@atcute/cid': 2.2.6 2806 + '@atcute/multibase': 1.1.6 2807 + '@atcute/uint8array': 1.0.6 2823 2808 2824 - '@atcute/cid@2.2.3': 2809 + '@atcute/cid@2.2.6': 2825 2810 dependencies: 2826 - '@atcute/multibase': 1.1.4 2827 - '@atcute/uint8array': 1.0.3 2811 + '@atcute/multibase': 1.1.6 2812 + '@atcute/uint8array': 1.0.6 2828 2813 2829 - '@atcute/client@4.0.3': 2814 + '@atcute/client@4.1.0': 2830 2815 dependencies: 2831 - '@atcute/identity': 1.1.0 2832 - '@atcute/lexicons': 1.1.0 2816 + '@atcute/identity': 1.1.3 2817 + '@atcute/lexicons': 1.2.5 2833 2818 2834 - '@atcute/identity-resolver@1.1.3(@atcute/identity@1.1.0)': 2819 + '@atcute/crypto@2.2.6': 2835 2820 dependencies: 2836 - '@atcute/identity': 1.1.0 2837 - '@atcute/lexicons': 1.1.1 2838 - '@atcute/util-fetch': 1.0.1 2839 - '@badrap/valita': 0.4.5 2821 + '@atcute/multibase': 1.1.6 2822 + '@atcute/uint8array': 1.0.6 2823 + '@noble/secp256k1': 3.0.0 2840 2824 2841 - '@atcute/identity@1.1.0': 2825 + '@atcute/identity-resolver@1.2.0(@atcute/identity@1.1.3)': 2842 2826 dependencies: 2843 - '@atcute/lexicons': 1.1.1 2844 - '@badrap/valita': 0.4.5 2827 + '@atcute/identity': 1.1.3 2828 + '@atcute/lexicons': 1.2.5 2829 + '@atcute/util-fetch': 1.0.4 2830 + '@badrap/valita': 0.4.6 2845 2831 2846 - '@atcute/lexicons@1.1.0': 2832 + '@atcute/identity@1.1.3': 2847 2833 dependencies: 2848 - esm-env: 1.2.2 2834 + '@atcute/lexicons': 1.2.5 2835 + '@badrap/valita': 0.4.6 2849 2836 2850 - '@atcute/lexicons@1.1.1': 2837 + '@atcute/lexicons@1.2.5': 2851 2838 dependencies: 2839 + '@standard-schema/spec': 1.0.0 2852 2840 esm-env: 1.2.2 2853 2841 2854 - '@atcute/multibase@1.1.4': 2842 + '@atcute/multibase@1.1.6': 2855 2843 dependencies: 2856 - '@atcute/uint8array': 1.0.3 2844 + '@atcute/uint8array': 1.0.6 2857 2845 2858 - '@atcute/oauth-browser-client@2.0.0-next.0': 2846 + '@atcute/oauth-browser-client@2.0.1': 2859 2847 dependencies: 2860 - '@atcute/client': 4.0.3 2861 - '@atcute/identity': 1.1.0 2862 - '@atcute/identity-resolver': 1.1.3(@atcute/identity@1.1.0) 2863 - '@atcute/lexicons': 1.1.1 2864 - '@atcute/multibase': 1.1.4 2865 - '@atcute/uint8array': 1.0.3 2866 - nanoid: 5.1.5 2848 + '@atcute/client': 4.1.0 2849 + '@atcute/identity': 1.1.3 2850 + '@atcute/identity-resolver': 1.2.0(@atcute/identity@1.1.3) 2851 + '@atcute/lexicons': 1.2.5 2852 + '@atcute/multibase': 1.1.6 2853 + '@atcute/uint8array': 1.0.6 2854 + nanoid: 5.1.6 2855 + 2856 + '@atcute/tid@1.0.3': {} 2867 2857 2868 - '@atcute/tid@1.0.2': {} 2858 + '@atcute/uint8array@1.0.6': {} 2869 2859 2870 - '@atcute/uint8array@1.0.3': {} 2860 + '@atcute/util-fetch@1.0.4': 2861 + dependencies: 2862 + '@badrap/valita': 0.4.6 2871 2863 2872 - '@atcute/util-fetch@1.0.1': 2864 + '@atcute/xrpc-server@0.1.3': 2873 2865 dependencies: 2874 - '@badrap/valita': 0.4.5 2866 + '@atcute/cbor': 2.2.8 2867 + '@atcute/crypto': 2.2.6 2868 + '@atcute/identity': 1.1.3 2869 + '@atcute/identity-resolver': 1.2.0(@atcute/identity@1.1.3) 2870 + '@atcute/lexicons': 1.2.5 2871 + '@atcute/multibase': 1.1.6 2872 + '@atcute/uint8array': 1.0.6 2873 + '@badrap/valita': 0.4.6 2874 + nanoid: 5.1.6 2875 2875 2876 2876 '@atlaskit/pragmatic-drag-and-drop-hitbox@1.0.3': 2877 2877 dependencies: 2878 2878 '@atlaskit/pragmatic-drag-and-drop': 1.6.0 2879 - '@babel/runtime': 7.27.6 2879 + '@babel/runtime': 7.28.4 2880 2880 2881 2881 '@atlaskit/pragmatic-drag-and-drop@1.6.0': 2882 2882 dependencies: 2883 - '@babel/runtime': 7.27.6 2883 + '@babel/runtime': 7.28.4 2884 2884 bind-event-listener: 3.0.0 2885 2885 raf-schd: 4.0.3 2886 2886 2887 2887 '@babel/code-frame@7.27.1': 2888 2888 dependencies: 2889 - '@babel/helper-validator-identifier': 7.27.1 2889 + '@babel/helper-validator-identifier': 7.28.5 2890 2890 js-tokens: 4.0.0 2891 2891 picocolors: 1.1.1 2892 2892 2893 - '@babel/compat-data@7.27.5': {} 2893 + '@babel/compat-data@7.28.5': {} 2894 2894 2895 - '@babel/core@7.27.4': 2895 + '@babel/core@7.28.5': 2896 2896 dependencies: 2897 - '@ampproject/remapping': 2.3.0 2898 2897 '@babel/code-frame': 7.27.1 2899 - '@babel/generator': 7.27.5 2898 + '@babel/generator': 7.28.5 2900 2899 '@babel/helper-compilation-targets': 7.27.2 2901 - '@babel/helper-module-transforms': 7.27.3(@babel/core@7.27.4) 2902 - '@babel/helpers': 7.27.6 2903 - '@babel/parser': 7.27.5 2900 + '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5) 2901 + '@babel/helpers': 7.28.4 2902 + '@babel/parser': 7.28.5 2904 2903 '@babel/template': 7.27.2 2905 - '@babel/traverse': 7.27.4 2906 - '@babel/types': 7.27.6 2904 + '@babel/traverse': 7.28.5 2905 + '@babel/types': 7.28.5 2906 + '@jridgewell/remapping': 2.3.5 2907 2907 convert-source-map: 2.0.0 2908 - debug: 4.4.1 2908 + debug: 4.4.3 2909 2909 gensync: 1.0.0-beta.2 2910 2910 json5: 2.2.3 2911 2911 semver: 6.3.1 2912 2912 transitivePeerDependencies: 2913 2913 - supports-color 2914 2914 2915 - '@babel/generator@7.27.5': 2915 + '@babel/generator@7.28.5': 2916 2916 dependencies: 2917 - '@babel/parser': 7.27.5 2918 - '@babel/types': 7.27.6 2919 - '@jridgewell/gen-mapping': 0.3.8 2920 - '@jridgewell/trace-mapping': 0.3.25 2917 + '@babel/parser': 7.28.5 2918 + '@babel/types': 7.28.5 2919 + '@jridgewell/gen-mapping': 0.3.13 2920 + '@jridgewell/trace-mapping': 0.3.31 2921 2921 jsesc: 3.1.0 2922 2922 2923 2923 '@babel/helper-annotate-as-pure@7.27.3': 2924 2924 dependencies: 2925 - '@babel/types': 7.27.6 2925 + '@babel/types': 7.28.5 2926 2926 2927 2927 '@babel/helper-compilation-targets@7.27.2': 2928 2928 dependencies: 2929 - '@babel/compat-data': 7.27.5 2929 + '@babel/compat-data': 7.28.5 2930 2930 '@babel/helper-validator-option': 7.27.1 2931 - browserslist: 4.25.0 2931 + browserslist: 4.28.1 2932 2932 lru-cache: 5.1.1 2933 2933 semver: 6.3.1 2934 2934 2935 - '@babel/helper-create-class-features-plugin@7.27.1(@babel/core@7.27.4)': 2935 + '@babel/helper-create-class-features-plugin@7.28.5(@babel/core@7.28.5)': 2936 2936 dependencies: 2937 - '@babel/core': 7.27.4 2937 + '@babel/core': 7.28.5 2938 2938 '@babel/helper-annotate-as-pure': 7.27.3 2939 - '@babel/helper-member-expression-to-functions': 7.27.1 2939 + '@babel/helper-member-expression-to-functions': 7.28.5 2940 2940 '@babel/helper-optimise-call-expression': 7.27.1 2941 - '@babel/helper-replace-supers': 7.27.1(@babel/core@7.27.4) 2941 + '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5) 2942 2942 '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 2943 - '@babel/traverse': 7.27.4 2943 + '@babel/traverse': 7.28.5 2944 2944 semver: 6.3.1 2945 2945 transitivePeerDependencies: 2946 2946 - supports-color 2947 2947 2948 - '@babel/helper-create-regexp-features-plugin@7.27.1(@babel/core@7.27.4)': 2948 + '@babel/helper-create-regexp-features-plugin@7.28.5(@babel/core@7.28.5)': 2949 2949 dependencies: 2950 - '@babel/core': 7.27.4 2950 + '@babel/core': 7.28.5 2951 2951 '@babel/helper-annotate-as-pure': 7.27.3 2952 - regexpu-core: 6.2.0 2952 + regexpu-core: 6.4.0 2953 2953 semver: 6.3.1 2954 2954 2955 - '@babel/helper-define-polyfill-provider@0.6.4(@babel/core@7.27.4)': 2955 + '@babel/helper-define-polyfill-provider@0.6.5(@babel/core@7.28.5)': 2956 2956 dependencies: 2957 - '@babel/core': 7.27.4 2957 + '@babel/core': 7.28.5 2958 2958 '@babel/helper-compilation-targets': 7.27.2 2959 2959 '@babel/helper-plugin-utils': 7.27.1 2960 - debug: 4.4.1 2960 + debug: 4.4.3 2961 2961 lodash.debounce: 4.0.8 2962 - resolve: 1.22.10 2962 + resolve: 1.22.11 2963 2963 transitivePeerDependencies: 2964 2964 - supports-color 2965 2965 2966 - '@babel/helper-member-expression-to-functions@7.27.1': 2966 + '@babel/helper-globals@7.28.0': {} 2967 + 2968 + '@babel/helper-member-expression-to-functions@7.28.5': 2967 2969 dependencies: 2968 - '@babel/traverse': 7.27.4 2969 - '@babel/types': 7.27.6 2970 + '@babel/traverse': 7.28.5 2971 + '@babel/types': 7.28.5 2970 2972 transitivePeerDependencies: 2971 2973 - supports-color 2972 2974 2973 2975 '@babel/helper-module-imports@7.18.6': 2974 2976 dependencies: 2975 - '@babel/types': 7.27.6 2977 + '@babel/types': 7.28.5 2976 2978 2977 2979 '@babel/helper-module-imports@7.27.1': 2978 2980 dependencies: 2979 - '@babel/traverse': 7.27.4 2980 - '@babel/types': 7.27.6 2981 + '@babel/traverse': 7.28.5 2982 + '@babel/types': 7.28.5 2981 2983 transitivePeerDependencies: 2982 2984 - supports-color 2983 2985 2984 - '@babel/helper-module-transforms@7.27.3(@babel/core@7.27.4)': 2986 + '@babel/helper-module-transforms@7.28.3(@babel/core@7.28.5)': 2985 2987 dependencies: 2986 - '@babel/core': 7.27.4 2988 + '@babel/core': 7.28.5 2987 2989 '@babel/helper-module-imports': 7.27.1 2988 - '@babel/helper-validator-identifier': 7.27.1 2989 - '@babel/traverse': 7.27.4 2990 + '@babel/helper-validator-identifier': 7.28.5 2991 + '@babel/traverse': 7.28.5 2990 2992 transitivePeerDependencies: 2991 2993 - supports-color 2992 2994 2993 2995 '@babel/helper-optimise-call-expression@7.27.1': 2994 2996 dependencies: 2995 - '@babel/types': 7.27.6 2997 + '@babel/types': 7.28.5 2996 2998 2997 2999 '@babel/helper-plugin-utils@7.27.1': {} 2998 3000 2999 - '@babel/helper-remap-async-to-generator@7.27.1(@babel/core@7.27.4)': 3001 + '@babel/helper-remap-async-to-generator@7.27.1(@babel/core@7.28.5)': 3000 3002 dependencies: 3001 - '@babel/core': 7.27.4 3003 + '@babel/core': 7.28.5 3002 3004 '@babel/helper-annotate-as-pure': 7.27.3 3003 - '@babel/helper-wrap-function': 7.27.1 3004 - '@babel/traverse': 7.27.4 3005 + '@babel/helper-wrap-function': 7.28.3 3006 + '@babel/traverse': 7.28.5 3005 3007 transitivePeerDependencies: 3006 3008 - supports-color 3007 3009 3008 - '@babel/helper-replace-supers@7.27.1(@babel/core@7.27.4)': 3010 + '@babel/helper-replace-supers@7.27.1(@babel/core@7.28.5)': 3009 3011 dependencies: 3010 - '@babel/core': 7.27.4 3011 - '@babel/helper-member-expression-to-functions': 7.27.1 3012 + '@babel/core': 7.28.5 3013 + '@babel/helper-member-expression-to-functions': 7.28.5 3012 3014 '@babel/helper-optimise-call-expression': 7.27.1 3013 - '@babel/traverse': 7.27.4 3015 + '@babel/traverse': 7.28.5 3014 3016 transitivePeerDependencies: 3015 3017 - supports-color 3016 3018 3017 3019 '@babel/helper-skip-transparent-expression-wrappers@7.27.1': 3018 3020 dependencies: 3019 - '@babel/traverse': 7.27.4 3020 - '@babel/types': 7.27.6 3021 + '@babel/traverse': 7.28.5 3022 + '@babel/types': 7.28.5 3021 3023 transitivePeerDependencies: 3022 3024 - supports-color 3023 3025 3024 3026 '@babel/helper-string-parser@7.27.1': {} 3025 3027 3026 - '@babel/helper-validator-identifier@7.27.1': {} 3028 + '@babel/helper-validator-identifier@7.28.5': {} 3027 3029 3028 3030 '@babel/helper-validator-option@7.27.1': {} 3029 3031 3030 - '@babel/helper-wrap-function@7.27.1': 3032 + '@babel/helper-wrap-function@7.28.3': 3031 3033 dependencies: 3032 3034 '@babel/template': 7.27.2 3033 - '@babel/traverse': 7.27.4 3034 - '@babel/types': 7.27.6 3035 + '@babel/traverse': 7.28.5 3036 + '@babel/types': 7.28.5 3035 3037 transitivePeerDependencies: 3036 3038 - supports-color 3037 3039 3038 - '@babel/helpers@7.27.6': 3040 + '@babel/helpers@7.28.4': 3039 3041 dependencies: 3040 3042 '@babel/template': 7.27.2 3041 - '@babel/types': 7.27.6 3043 + '@babel/types': 7.28.5 3042 3044 3043 - '@babel/parser@7.27.5': 3045 + '@babel/parser@7.28.5': 3044 3046 dependencies: 3045 - '@babel/types': 7.27.6 3047 + '@babel/types': 7.28.5 3046 3048 3047 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.27.1(@babel/core@7.27.4)': 3049 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5(@babel/core@7.28.5)': 3048 3050 dependencies: 3049 - '@babel/core': 7.27.4 3051 + '@babel/core': 7.28.5 3050 3052 '@babel/helper-plugin-utils': 7.27.1 3051 - '@babel/traverse': 7.27.4 3053 + '@babel/traverse': 7.28.5 3052 3054 transitivePeerDependencies: 3053 3055 - supports-color 3054 3056 3055 - '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.27.1(@babel/core@7.27.4)': 3057 + '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.27.1(@babel/core@7.28.5)': 3056 3058 dependencies: 3057 - '@babel/core': 7.27.4 3059 + '@babel/core': 7.28.5 3058 3060 '@babel/helper-plugin-utils': 7.27.1 3059 3061 3060 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.27.1(@babel/core@7.27.4)': 3062 + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.27.1(@babel/core@7.28.5)': 3061 3063 dependencies: 3062 - '@babel/core': 7.27.4 3064 + '@babel/core': 7.28.5 3063 3065 '@babel/helper-plugin-utils': 7.27.1 3064 3066 3065 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.27.1(@babel/core@7.27.4)': 3067 + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.27.1(@babel/core@7.28.5)': 3066 3068 dependencies: 3067 - '@babel/core': 7.27.4 3069 + '@babel/core': 7.28.5 3068 3070 '@babel/helper-plugin-utils': 7.27.1 3069 3071 '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 3070 - '@babel/plugin-transform-optional-chaining': 7.27.1(@babel/core@7.27.4) 3072 + '@babel/plugin-transform-optional-chaining': 7.28.5(@babel/core@7.28.5) 3071 3073 transitivePeerDependencies: 3072 3074 - supports-color 3073 3075 3074 - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.27.1(@babel/core@7.27.4)': 3076 + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.28.3(@babel/core@7.28.5)': 3075 3077 dependencies: 3076 - '@babel/core': 7.27.4 3078 + '@babel/core': 7.28.5 3077 3079 '@babel/helper-plugin-utils': 7.27.1 3078 - '@babel/traverse': 7.27.4 3080 + '@babel/traverse': 7.28.5 3079 3081 transitivePeerDependencies: 3080 3082 - supports-color 3081 3083 3082 - '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.27.4)': 3084 + '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.28.5)': 3083 3085 dependencies: 3084 - '@babel/core': 7.27.4 3086 + '@babel/core': 7.28.5 3085 3087 3086 - '@babel/plugin-syntax-import-assertions@7.27.1(@babel/core@7.27.4)': 3088 + '@babel/plugin-syntax-import-assertions@7.27.1(@babel/core@7.28.5)': 3087 3089 dependencies: 3088 - '@babel/core': 7.27.4 3090 + '@babel/core': 7.28.5 3089 3091 '@babel/helper-plugin-utils': 7.27.1 3090 3092 3091 - '@babel/plugin-syntax-import-attributes@7.27.1(@babel/core@7.27.4)': 3093 + '@babel/plugin-syntax-import-attributes@7.27.1(@babel/core@7.28.5)': 3092 3094 dependencies: 3093 - '@babel/core': 7.27.4 3095 + '@babel/core': 7.28.5 3094 3096 '@babel/helper-plugin-utils': 7.27.1 3095 3097 3096 - '@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.27.4)': 3098 + '@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.28.5)': 3097 3099 dependencies: 3098 - '@babel/core': 7.27.4 3100 + '@babel/core': 7.28.5 3099 3101 '@babel/helper-plugin-utils': 7.27.1 3100 3102 3101 - '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.27.4)': 3103 + '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.28.5)': 3102 3104 dependencies: 3103 - '@babel/core': 7.27.4 3104 - '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.27.4) 3105 + '@babel/core': 7.28.5 3106 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) 3105 3107 '@babel/helper-plugin-utils': 7.27.1 3106 3108 3107 - '@babel/plugin-transform-arrow-functions@7.27.1(@babel/core@7.27.4)': 3109 + '@babel/plugin-transform-arrow-functions@7.27.1(@babel/core@7.28.5)': 3108 3110 dependencies: 3109 - '@babel/core': 7.27.4 3111 + '@babel/core': 7.28.5 3110 3112 '@babel/helper-plugin-utils': 7.27.1 3111 3113 3112 - '@babel/plugin-transform-async-generator-functions@7.27.1(@babel/core@7.27.4)': 3114 + '@babel/plugin-transform-async-generator-functions@7.28.0(@babel/core@7.28.5)': 3113 3115 dependencies: 3114 - '@babel/core': 7.27.4 3116 + '@babel/core': 7.28.5 3115 3117 '@babel/helper-plugin-utils': 7.27.1 3116 - '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.27.4) 3117 - '@babel/traverse': 7.27.4 3118 + '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.28.5) 3119 + '@babel/traverse': 7.28.5 3118 3120 transitivePeerDependencies: 3119 3121 - supports-color 3120 3122 3121 - '@babel/plugin-transform-async-to-generator@7.27.1(@babel/core@7.27.4)': 3123 + '@babel/plugin-transform-async-to-generator@7.27.1(@babel/core@7.28.5)': 3122 3124 dependencies: 3123 - '@babel/core': 7.27.4 3125 + '@babel/core': 7.28.5 3124 3126 '@babel/helper-module-imports': 7.27.1 3125 3127 '@babel/helper-plugin-utils': 7.27.1 3126 - '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.27.4) 3128 + '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.28.5) 3127 3129 transitivePeerDependencies: 3128 3130 - supports-color 3129 3131 3130 - '@babel/plugin-transform-block-scoped-functions@7.27.1(@babel/core@7.27.4)': 3132 + '@babel/plugin-transform-block-scoped-functions@7.27.1(@babel/core@7.28.5)': 3131 3133 dependencies: 3132 - '@babel/core': 7.27.4 3134 + '@babel/core': 7.28.5 3133 3135 '@babel/helper-plugin-utils': 7.27.1 3134 3136 3135 - '@babel/plugin-transform-block-scoping@7.27.5(@babel/core@7.27.4)': 3137 + '@babel/plugin-transform-block-scoping@7.28.5(@babel/core@7.28.5)': 3136 3138 dependencies: 3137 - '@babel/core': 7.27.4 3139 + '@babel/core': 7.28.5 3138 3140 '@babel/helper-plugin-utils': 7.27.1 3139 3141 3140 - '@babel/plugin-transform-class-properties@7.27.1(@babel/core@7.27.4)': 3142 + '@babel/plugin-transform-class-properties@7.27.1(@babel/core@7.28.5)': 3141 3143 dependencies: 3142 - '@babel/core': 7.27.4 3143 - '@babel/helper-create-class-features-plugin': 7.27.1(@babel/core@7.27.4) 3144 + '@babel/core': 7.28.5 3145 + '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5) 3144 3146 '@babel/helper-plugin-utils': 7.27.1 3145 3147 transitivePeerDependencies: 3146 3148 - supports-color 3147 3149 3148 - '@babel/plugin-transform-class-static-block@7.27.1(@babel/core@7.27.4)': 3150 + '@babel/plugin-transform-class-static-block@7.28.3(@babel/core@7.28.5)': 3149 3151 dependencies: 3150 - '@babel/core': 7.27.4 3151 - '@babel/helper-create-class-features-plugin': 7.27.1(@babel/core@7.27.4) 3152 + '@babel/core': 7.28.5 3153 + '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5) 3152 3154 '@babel/helper-plugin-utils': 7.27.1 3153 3155 transitivePeerDependencies: 3154 3156 - supports-color 3155 3157 3156 - '@babel/plugin-transform-classes@7.27.1(@babel/core@7.27.4)': 3158 + '@babel/plugin-transform-classes@7.28.4(@babel/core@7.28.5)': 3157 3159 dependencies: 3158 - '@babel/core': 7.27.4 3160 + '@babel/core': 7.28.5 3159 3161 '@babel/helper-annotate-as-pure': 7.27.3 3160 3162 '@babel/helper-compilation-targets': 7.27.2 3163 + '@babel/helper-globals': 7.28.0 3161 3164 '@babel/helper-plugin-utils': 7.27.1 3162 - '@babel/helper-replace-supers': 7.27.1(@babel/core@7.27.4) 3163 - '@babel/traverse': 7.27.4 3164 - globals: 11.12.0 3165 + '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5) 3166 + '@babel/traverse': 7.28.5 3165 3167 transitivePeerDependencies: 3166 3168 - supports-color 3167 3169 3168 - '@babel/plugin-transform-computed-properties@7.27.1(@babel/core@7.27.4)': 3170 + '@babel/plugin-transform-computed-properties@7.27.1(@babel/core@7.28.5)': 3169 3171 dependencies: 3170 - '@babel/core': 7.27.4 3172 + '@babel/core': 7.28.5 3171 3173 '@babel/helper-plugin-utils': 7.27.1 3172 3174 '@babel/template': 7.27.2 3173 3175 3174 - '@babel/plugin-transform-destructuring@7.27.3(@babel/core@7.27.4)': 3176 + '@babel/plugin-transform-destructuring@7.28.5(@babel/core@7.28.5)': 3175 3177 dependencies: 3176 - '@babel/core': 7.27.4 3178 + '@babel/core': 7.28.5 3177 3179 '@babel/helper-plugin-utils': 7.27.1 3180 + '@babel/traverse': 7.28.5 3181 + transitivePeerDependencies: 3182 + - supports-color 3178 3183 3179 - '@babel/plugin-transform-dotall-regex@7.27.1(@babel/core@7.27.4)': 3184 + '@babel/plugin-transform-dotall-regex@7.27.1(@babel/core@7.28.5)': 3180 3185 dependencies: 3181 - '@babel/core': 7.27.4 3182 - '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.27.4) 3186 + '@babel/core': 7.28.5 3187 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) 3183 3188 '@babel/helper-plugin-utils': 7.27.1 3184 3189 3185 - '@babel/plugin-transform-duplicate-keys@7.27.1(@babel/core@7.27.4)': 3190 + '@babel/plugin-transform-duplicate-keys@7.27.1(@babel/core@7.28.5)': 3186 3191 dependencies: 3187 - '@babel/core': 7.27.4 3192 + '@babel/core': 7.28.5 3188 3193 '@babel/helper-plugin-utils': 7.27.1 3189 3194 3190 - '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.27.1(@babel/core@7.27.4)': 3195 + '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.27.1(@babel/core@7.28.5)': 3191 3196 dependencies: 3192 - '@babel/core': 7.27.4 3193 - '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.27.4) 3197 + '@babel/core': 7.28.5 3198 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) 3194 3199 '@babel/helper-plugin-utils': 7.27.1 3195 3200 3196 - '@babel/plugin-transform-dynamic-import@7.27.1(@babel/core@7.27.4)': 3201 + '@babel/plugin-transform-dynamic-import@7.27.1(@babel/core@7.28.5)': 3197 3202 dependencies: 3198 - '@babel/core': 7.27.4 3203 + '@babel/core': 7.28.5 3199 3204 '@babel/helper-plugin-utils': 7.27.1 3200 3205 3201 - '@babel/plugin-transform-exponentiation-operator@7.27.1(@babel/core@7.27.4)': 3206 + '@babel/plugin-transform-explicit-resource-management@7.28.0(@babel/core@7.28.5)': 3202 3207 dependencies: 3203 - '@babel/core': 7.27.4 3208 + '@babel/core': 7.28.5 3209 + '@babel/helper-plugin-utils': 7.27.1 3210 + '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5) 3211 + transitivePeerDependencies: 3212 + - supports-color 3213 + 3214 + '@babel/plugin-transform-exponentiation-operator@7.28.5(@babel/core@7.28.5)': 3215 + dependencies: 3216 + '@babel/core': 7.28.5 3204 3217 '@babel/helper-plugin-utils': 7.27.1 3205 3218 3206 - '@babel/plugin-transform-export-namespace-from@7.27.1(@babel/core@7.27.4)': 3219 + '@babel/plugin-transform-export-namespace-from@7.27.1(@babel/core@7.28.5)': 3207 3220 dependencies: 3208 - '@babel/core': 7.27.4 3221 + '@babel/core': 7.28.5 3209 3222 '@babel/helper-plugin-utils': 7.27.1 3210 3223 3211 - '@babel/plugin-transform-for-of@7.27.1(@babel/core@7.27.4)': 3224 + '@babel/plugin-transform-for-of@7.27.1(@babel/core@7.28.5)': 3212 3225 dependencies: 3213 - '@babel/core': 7.27.4 3226 + '@babel/core': 7.28.5 3214 3227 '@babel/helper-plugin-utils': 7.27.1 3215 3228 '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 3216 3229 transitivePeerDependencies: 3217 3230 - supports-color 3218 3231 3219 - '@babel/plugin-transform-function-name@7.27.1(@babel/core@7.27.4)': 3232 + '@babel/plugin-transform-function-name@7.27.1(@babel/core@7.28.5)': 3220 3233 dependencies: 3221 - '@babel/core': 7.27.4 3234 + '@babel/core': 7.28.5 3222 3235 '@babel/helper-compilation-targets': 7.27.2 3223 3236 '@babel/helper-plugin-utils': 7.27.1 3224 - '@babel/traverse': 7.27.4 3237 + '@babel/traverse': 7.28.5 3225 3238 transitivePeerDependencies: 3226 3239 - supports-color 3227 3240 3228 - '@babel/plugin-transform-json-strings@7.27.1(@babel/core@7.27.4)': 3241 + '@babel/plugin-transform-json-strings@7.27.1(@babel/core@7.28.5)': 3229 3242 dependencies: 3230 - '@babel/core': 7.27.4 3243 + '@babel/core': 7.28.5 3231 3244 '@babel/helper-plugin-utils': 7.27.1 3232 3245 3233 - '@babel/plugin-transform-literals@7.27.1(@babel/core@7.27.4)': 3246 + '@babel/plugin-transform-literals@7.27.1(@babel/core@7.28.5)': 3234 3247 dependencies: 3235 - '@babel/core': 7.27.4 3248 + '@babel/core': 7.28.5 3236 3249 '@babel/helper-plugin-utils': 7.27.1 3237 3250 3238 - '@babel/plugin-transform-logical-assignment-operators@7.27.1(@babel/core@7.27.4)': 3251 + '@babel/plugin-transform-logical-assignment-operators@7.28.5(@babel/core@7.28.5)': 3239 3252 dependencies: 3240 - '@babel/core': 7.27.4 3253 + '@babel/core': 7.28.5 3241 3254 '@babel/helper-plugin-utils': 7.27.1 3242 3255 3243 - '@babel/plugin-transform-member-expression-literals@7.27.1(@babel/core@7.27.4)': 3256 + '@babel/plugin-transform-member-expression-literals@7.27.1(@babel/core@7.28.5)': 3244 3257 dependencies: 3245 - '@babel/core': 7.27.4 3258 + '@babel/core': 7.28.5 3246 3259 '@babel/helper-plugin-utils': 7.27.1 3247 3260 3248 - '@babel/plugin-transform-modules-amd@7.27.1(@babel/core@7.27.4)': 3261 + '@babel/plugin-transform-modules-amd@7.27.1(@babel/core@7.28.5)': 3249 3262 dependencies: 3250 - '@babel/core': 7.27.4 3251 - '@babel/helper-module-transforms': 7.27.3(@babel/core@7.27.4) 3263 + '@babel/core': 7.28.5 3264 + '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5) 3252 3265 '@babel/helper-plugin-utils': 7.27.1 3253 3266 transitivePeerDependencies: 3254 3267 - supports-color 3255 3268 3256 - '@babel/plugin-transform-modules-commonjs@7.27.1(@babel/core@7.27.4)': 3269 + '@babel/plugin-transform-modules-commonjs@7.27.1(@babel/core@7.28.5)': 3257 3270 dependencies: 3258 - '@babel/core': 7.27.4 3259 - '@babel/helper-module-transforms': 7.27.3(@babel/core@7.27.4) 3271 + '@babel/core': 7.28.5 3272 + '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5) 3260 3273 '@babel/helper-plugin-utils': 7.27.1 3261 3274 transitivePeerDependencies: 3262 3275 - supports-color 3263 3276 3264 - '@babel/plugin-transform-modules-systemjs@7.27.1(@babel/core@7.27.4)': 3277 + '@babel/plugin-transform-modules-systemjs@7.28.5(@babel/core@7.28.5)': 3265 3278 dependencies: 3266 - '@babel/core': 7.27.4 3267 - '@babel/helper-module-transforms': 7.27.3(@babel/core@7.27.4) 3279 + '@babel/core': 7.28.5 3280 + '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5) 3268 3281 '@babel/helper-plugin-utils': 7.27.1 3269 - '@babel/helper-validator-identifier': 7.27.1 3270 - '@babel/traverse': 7.27.4 3282 + '@babel/helper-validator-identifier': 7.28.5 3283 + '@babel/traverse': 7.28.5 3271 3284 transitivePeerDependencies: 3272 3285 - supports-color 3273 3286 3274 - '@babel/plugin-transform-modules-umd@7.27.1(@babel/core@7.27.4)': 3287 + '@babel/plugin-transform-modules-umd@7.27.1(@babel/core@7.28.5)': 3275 3288 dependencies: 3276 - '@babel/core': 7.27.4 3277 - '@babel/helper-module-transforms': 7.27.3(@babel/core@7.27.4) 3289 + '@babel/core': 7.28.5 3290 + '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5) 3278 3291 '@babel/helper-plugin-utils': 7.27.1 3279 3292 transitivePeerDependencies: 3280 3293 - supports-color 3281 3294 3282 - '@babel/plugin-transform-named-capturing-groups-regex@7.27.1(@babel/core@7.27.4)': 3295 + '@babel/plugin-transform-named-capturing-groups-regex@7.27.1(@babel/core@7.28.5)': 3283 3296 dependencies: 3284 - '@babel/core': 7.27.4 3285 - '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.27.4) 3297 + '@babel/core': 7.28.5 3298 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) 3286 3299 '@babel/helper-plugin-utils': 7.27.1 3287 3300 3288 - '@babel/plugin-transform-new-target@7.27.1(@babel/core@7.27.4)': 3301 + '@babel/plugin-transform-new-target@7.27.1(@babel/core@7.28.5)': 3289 3302 dependencies: 3290 - '@babel/core': 7.27.4 3303 + '@babel/core': 7.28.5 3291 3304 '@babel/helper-plugin-utils': 7.27.1 3292 3305 3293 - '@babel/plugin-transform-nullish-coalescing-operator@7.27.1(@babel/core@7.27.4)': 3306 + '@babel/plugin-transform-nullish-coalescing-operator@7.27.1(@babel/core@7.28.5)': 3294 3307 dependencies: 3295 - '@babel/core': 7.27.4 3308 + '@babel/core': 7.28.5 3296 3309 '@babel/helper-plugin-utils': 7.27.1 3297 3310 3298 - '@babel/plugin-transform-numeric-separator@7.27.1(@babel/core@7.27.4)': 3311 + '@babel/plugin-transform-numeric-separator@7.27.1(@babel/core@7.28.5)': 3299 3312 dependencies: 3300 - '@babel/core': 7.27.4 3313 + '@babel/core': 7.28.5 3301 3314 '@babel/helper-plugin-utils': 7.27.1 3302 3315 3303 - '@babel/plugin-transform-object-rest-spread@7.27.3(@babel/core@7.27.4)': 3316 + '@babel/plugin-transform-object-rest-spread@7.28.4(@babel/core@7.28.5)': 3304 3317 dependencies: 3305 - '@babel/core': 7.27.4 3318 + '@babel/core': 7.28.5 3306 3319 '@babel/helper-compilation-targets': 7.27.2 3307 3320 '@babel/helper-plugin-utils': 7.27.1 3308 - '@babel/plugin-transform-destructuring': 7.27.3(@babel/core@7.27.4) 3309 - '@babel/plugin-transform-parameters': 7.27.1(@babel/core@7.27.4) 3321 + '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5) 3322 + '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.28.5) 3323 + '@babel/traverse': 7.28.5 3324 + transitivePeerDependencies: 3325 + - supports-color 3310 3326 3311 - '@babel/plugin-transform-object-super@7.27.1(@babel/core@7.27.4)': 3327 + '@babel/plugin-transform-object-super@7.27.1(@babel/core@7.28.5)': 3312 3328 dependencies: 3313 - '@babel/core': 7.27.4 3329 + '@babel/core': 7.28.5 3314 3330 '@babel/helper-plugin-utils': 7.27.1 3315 - '@babel/helper-replace-supers': 7.27.1(@babel/core@7.27.4) 3331 + '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5) 3316 3332 transitivePeerDependencies: 3317 3333 - supports-color 3318 3334 3319 - '@babel/plugin-transform-optional-catch-binding@7.27.1(@babel/core@7.27.4)': 3335 + '@babel/plugin-transform-optional-catch-binding@7.27.1(@babel/core@7.28.5)': 3320 3336 dependencies: 3321 - '@babel/core': 7.27.4 3337 + '@babel/core': 7.28.5 3322 3338 '@babel/helper-plugin-utils': 7.27.1 3323 3339 3324 - '@babel/plugin-transform-optional-chaining@7.27.1(@babel/core@7.27.4)': 3340 + '@babel/plugin-transform-optional-chaining@7.28.5(@babel/core@7.28.5)': 3325 3341 dependencies: 3326 - '@babel/core': 7.27.4 3342 + '@babel/core': 7.28.5 3327 3343 '@babel/helper-plugin-utils': 7.27.1 3328 3344 '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 3329 3345 transitivePeerDependencies: 3330 3346 - supports-color 3331 3347 3332 - '@babel/plugin-transform-parameters@7.27.1(@babel/core@7.27.4)': 3348 + '@babel/plugin-transform-parameters@7.27.7(@babel/core@7.28.5)': 3333 3349 dependencies: 3334 - '@babel/core': 7.27.4 3350 + '@babel/core': 7.28.5 3335 3351 '@babel/helper-plugin-utils': 7.27.1 3336 3352 3337 - '@babel/plugin-transform-private-methods@7.27.1(@babel/core@7.27.4)': 3353 + '@babel/plugin-transform-private-methods@7.27.1(@babel/core@7.28.5)': 3338 3354 dependencies: 3339 - '@babel/core': 7.27.4 3340 - '@babel/helper-create-class-features-plugin': 7.27.1(@babel/core@7.27.4) 3355 + '@babel/core': 7.28.5 3356 + '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5) 3341 3357 '@babel/helper-plugin-utils': 7.27.1 3342 3358 transitivePeerDependencies: 3343 3359 - supports-color 3344 3360 3345 - '@babel/plugin-transform-private-property-in-object@7.27.1(@babel/core@7.27.4)': 3361 + '@babel/plugin-transform-private-property-in-object@7.27.1(@babel/core@7.28.5)': 3346 3362 dependencies: 3347 - '@babel/core': 7.27.4 3363 + '@babel/core': 7.28.5 3348 3364 '@babel/helper-annotate-as-pure': 7.27.3 3349 - '@babel/helper-create-class-features-plugin': 7.27.1(@babel/core@7.27.4) 3365 + '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5) 3350 3366 '@babel/helper-plugin-utils': 7.27.1 3351 3367 transitivePeerDependencies: 3352 3368 - supports-color 3353 3369 3354 - '@babel/plugin-transform-property-literals@7.27.1(@babel/core@7.27.4)': 3370 + '@babel/plugin-transform-property-literals@7.27.1(@babel/core@7.28.5)': 3355 3371 dependencies: 3356 - '@babel/core': 7.27.4 3372 + '@babel/core': 7.28.5 3357 3373 '@babel/helper-plugin-utils': 7.27.1 3358 3374 3359 - '@babel/plugin-transform-regenerator@7.27.5(@babel/core@7.27.4)': 3375 + '@babel/plugin-transform-regenerator@7.28.4(@babel/core@7.28.5)': 3360 3376 dependencies: 3361 - '@babel/core': 7.27.4 3377 + '@babel/core': 7.28.5 3362 3378 '@babel/helper-plugin-utils': 7.27.1 3363 3379 3364 - '@babel/plugin-transform-regexp-modifiers@7.27.1(@babel/core@7.27.4)': 3380 + '@babel/plugin-transform-regexp-modifiers@7.27.1(@babel/core@7.28.5)': 3365 3381 dependencies: 3366 - '@babel/core': 7.27.4 3367 - '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.27.4) 3382 + '@babel/core': 7.28.5 3383 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) 3368 3384 '@babel/helper-plugin-utils': 7.27.1 3369 3385 3370 - '@babel/plugin-transform-reserved-words@7.27.1(@babel/core@7.27.4)': 3386 + '@babel/plugin-transform-reserved-words@7.27.1(@babel/core@7.28.5)': 3371 3387 dependencies: 3372 - '@babel/core': 7.27.4 3388 + '@babel/core': 7.28.5 3373 3389 '@babel/helper-plugin-utils': 7.27.1 3374 3390 3375 - '@babel/plugin-transform-shorthand-properties@7.27.1(@babel/core@7.27.4)': 3391 + '@babel/plugin-transform-shorthand-properties@7.27.1(@babel/core@7.28.5)': 3376 3392 dependencies: 3377 - '@babel/core': 7.27.4 3393 + '@babel/core': 7.28.5 3378 3394 '@babel/helper-plugin-utils': 7.27.1 3379 3395 3380 - '@babel/plugin-transform-spread@7.27.1(@babel/core@7.27.4)': 3396 + '@babel/plugin-transform-spread@7.27.1(@babel/core@7.28.5)': 3381 3397 dependencies: 3382 - '@babel/core': 7.27.4 3398 + '@babel/core': 7.28.5 3383 3399 '@babel/helper-plugin-utils': 7.27.1 3384 3400 '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 3385 3401 transitivePeerDependencies: 3386 3402 - supports-color 3387 3403 3388 - '@babel/plugin-transform-sticky-regex@7.27.1(@babel/core@7.27.4)': 3404 + '@babel/plugin-transform-sticky-regex@7.27.1(@babel/core@7.28.5)': 3389 3405 dependencies: 3390 - '@babel/core': 7.27.4 3406 + '@babel/core': 7.28.5 3391 3407 '@babel/helper-plugin-utils': 7.27.1 3392 3408 3393 - '@babel/plugin-transform-template-literals@7.27.1(@babel/core@7.27.4)': 3409 + '@babel/plugin-transform-template-literals@7.27.1(@babel/core@7.28.5)': 3394 3410 dependencies: 3395 - '@babel/core': 7.27.4 3411 + '@babel/core': 7.28.5 3396 3412 '@babel/helper-plugin-utils': 7.27.1 3397 3413 3398 - '@babel/plugin-transform-typeof-symbol@7.27.1(@babel/core@7.27.4)': 3414 + '@babel/plugin-transform-typeof-symbol@7.27.1(@babel/core@7.28.5)': 3399 3415 dependencies: 3400 - '@babel/core': 7.27.4 3416 + '@babel/core': 7.28.5 3401 3417 '@babel/helper-plugin-utils': 7.27.1 3402 3418 3403 - '@babel/plugin-transform-unicode-escapes@7.27.1(@babel/core@7.27.4)': 3419 + '@babel/plugin-transform-unicode-escapes@7.27.1(@babel/core@7.28.5)': 3404 3420 dependencies: 3405 - '@babel/core': 7.27.4 3421 + '@babel/core': 7.28.5 3406 3422 '@babel/helper-plugin-utils': 7.27.1 3407 3423 3408 - '@babel/plugin-transform-unicode-property-regex@7.27.1(@babel/core@7.27.4)': 3424 + '@babel/plugin-transform-unicode-property-regex@7.27.1(@babel/core@7.28.5)': 3409 3425 dependencies: 3410 - '@babel/core': 7.27.4 3411 - '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.27.4) 3426 + '@babel/core': 7.28.5 3427 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) 3412 3428 '@babel/helper-plugin-utils': 7.27.1 3413 3429 3414 - '@babel/plugin-transform-unicode-regex@7.27.1(@babel/core@7.27.4)': 3430 + '@babel/plugin-transform-unicode-regex@7.27.1(@babel/core@7.28.5)': 3415 3431 dependencies: 3416 - '@babel/core': 7.27.4 3417 - '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.27.4) 3432 + '@babel/core': 7.28.5 3433 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) 3418 3434 '@babel/helper-plugin-utils': 7.27.1 3419 3435 3420 - '@babel/plugin-transform-unicode-sets-regex@7.27.1(@babel/core@7.27.4)': 3436 + '@babel/plugin-transform-unicode-sets-regex@7.27.1(@babel/core@7.28.5)': 3421 3437 dependencies: 3422 - '@babel/core': 7.27.4 3423 - '@babel/helper-create-regexp-features-plugin': 7.27.1(@babel/core@7.27.4) 3438 + '@babel/core': 7.28.5 3439 + '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5) 3424 3440 '@babel/helper-plugin-utils': 7.27.1 3425 3441 3426 - '@babel/preset-env@7.27.2(@babel/core@7.27.4)': 3442 + '@babel/preset-env@7.28.5(@babel/core@7.28.5)': 3427 3443 dependencies: 3428 - '@babel/compat-data': 7.27.5 3429 - '@babel/core': 7.27.4 3444 + '@babel/compat-data': 7.28.5 3445 + '@babel/core': 7.28.5 3430 3446 '@babel/helper-compilation-targets': 7.27.2 3431 3447 '@babel/helper-plugin-utils': 7.27.1 3432 3448 '@babel/helper-validator-option': 7.27.1 3433 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.27.1(@babel/core@7.27.4) 3434 - '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.27.1(@babel/core@7.27.4) 3435 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.27.1(@babel/core@7.27.4) 3436 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.27.1(@babel/core@7.27.4) 3437 - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.27.1(@babel/core@7.27.4) 3438 - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.27.4) 3439 - '@babel/plugin-syntax-import-assertions': 7.27.1(@babel/core@7.27.4) 3440 - '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.27.4) 3441 - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.27.4) 3442 - '@babel/plugin-transform-arrow-functions': 7.27.1(@babel/core@7.27.4) 3443 - '@babel/plugin-transform-async-generator-functions': 7.27.1(@babel/core@7.27.4) 3444 - '@babel/plugin-transform-async-to-generator': 7.27.1(@babel/core@7.27.4) 3445 - '@babel/plugin-transform-block-scoped-functions': 7.27.1(@babel/core@7.27.4) 3446 - '@babel/plugin-transform-block-scoping': 7.27.5(@babel/core@7.27.4) 3447 - '@babel/plugin-transform-class-properties': 7.27.1(@babel/core@7.27.4) 3448 - '@babel/plugin-transform-class-static-block': 7.27.1(@babel/core@7.27.4) 3449 - '@babel/plugin-transform-classes': 7.27.1(@babel/core@7.27.4) 3450 - '@babel/plugin-transform-computed-properties': 7.27.1(@babel/core@7.27.4) 3451 - '@babel/plugin-transform-destructuring': 7.27.3(@babel/core@7.27.4) 3452 - '@babel/plugin-transform-dotall-regex': 7.27.1(@babel/core@7.27.4) 3453 - '@babel/plugin-transform-duplicate-keys': 7.27.1(@babel/core@7.27.4) 3454 - '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.27.1(@babel/core@7.27.4) 3455 - '@babel/plugin-transform-dynamic-import': 7.27.1(@babel/core@7.27.4) 3456 - '@babel/plugin-transform-exponentiation-operator': 7.27.1(@babel/core@7.27.4) 3457 - '@babel/plugin-transform-export-namespace-from': 7.27.1(@babel/core@7.27.4) 3458 - '@babel/plugin-transform-for-of': 7.27.1(@babel/core@7.27.4) 3459 - '@babel/plugin-transform-function-name': 7.27.1(@babel/core@7.27.4) 3460 - '@babel/plugin-transform-json-strings': 7.27.1(@babel/core@7.27.4) 3461 - '@babel/plugin-transform-literals': 7.27.1(@babel/core@7.27.4) 3462 - '@babel/plugin-transform-logical-assignment-operators': 7.27.1(@babel/core@7.27.4) 3463 - '@babel/plugin-transform-member-expression-literals': 7.27.1(@babel/core@7.27.4) 3464 - '@babel/plugin-transform-modules-amd': 7.27.1(@babel/core@7.27.4) 3465 - '@babel/plugin-transform-modules-commonjs': 7.27.1(@babel/core@7.27.4) 3466 - '@babel/plugin-transform-modules-systemjs': 7.27.1(@babel/core@7.27.4) 3467 - '@babel/plugin-transform-modules-umd': 7.27.1(@babel/core@7.27.4) 3468 - '@babel/plugin-transform-named-capturing-groups-regex': 7.27.1(@babel/core@7.27.4) 3469 - '@babel/plugin-transform-new-target': 7.27.1(@babel/core@7.27.4) 3470 - '@babel/plugin-transform-nullish-coalescing-operator': 7.27.1(@babel/core@7.27.4) 3471 - '@babel/plugin-transform-numeric-separator': 7.27.1(@babel/core@7.27.4) 3472 - '@babel/plugin-transform-object-rest-spread': 7.27.3(@babel/core@7.27.4) 3473 - '@babel/plugin-transform-object-super': 7.27.1(@babel/core@7.27.4) 3474 - '@babel/plugin-transform-optional-catch-binding': 7.27.1(@babel/core@7.27.4) 3475 - '@babel/plugin-transform-optional-chaining': 7.27.1(@babel/core@7.27.4) 3476 - '@babel/plugin-transform-parameters': 7.27.1(@babel/core@7.27.4) 3477 - '@babel/plugin-transform-private-methods': 7.27.1(@babel/core@7.27.4) 3478 - '@babel/plugin-transform-private-property-in-object': 7.27.1(@babel/core@7.27.4) 3479 - '@babel/plugin-transform-property-literals': 7.27.1(@babel/core@7.27.4) 3480 - '@babel/plugin-transform-regenerator': 7.27.5(@babel/core@7.27.4) 3481 - '@babel/plugin-transform-regexp-modifiers': 7.27.1(@babel/core@7.27.4) 3482 - '@babel/plugin-transform-reserved-words': 7.27.1(@babel/core@7.27.4) 3483 - '@babel/plugin-transform-shorthand-properties': 7.27.1(@babel/core@7.27.4) 3484 - '@babel/plugin-transform-spread': 7.27.1(@babel/core@7.27.4) 3485 - '@babel/plugin-transform-sticky-regex': 7.27.1(@babel/core@7.27.4) 3486 - '@babel/plugin-transform-template-literals': 7.27.1(@babel/core@7.27.4) 3487 - '@babel/plugin-transform-typeof-symbol': 7.27.1(@babel/core@7.27.4) 3488 - '@babel/plugin-transform-unicode-escapes': 7.27.1(@babel/core@7.27.4) 3489 - '@babel/plugin-transform-unicode-property-regex': 7.27.1(@babel/core@7.27.4) 3490 - '@babel/plugin-transform-unicode-regex': 7.27.1(@babel/core@7.27.4) 3491 - '@babel/plugin-transform-unicode-sets-regex': 7.27.1(@babel/core@7.27.4) 3492 - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.27.4) 3493 - babel-plugin-polyfill-corejs2: 0.4.13(@babel/core@7.27.4) 3494 - babel-plugin-polyfill-corejs3: 0.11.1(@babel/core@7.27.4) 3495 - babel-plugin-polyfill-regenerator: 0.6.4(@babel/core@7.27.4) 3496 - core-js-compat: 3.43.0 3449 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.28.5(@babel/core@7.28.5) 3450 + '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.27.1(@babel/core@7.28.5) 3451 + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.27.1(@babel/core@7.28.5) 3452 + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.27.1(@babel/core@7.28.5) 3453 + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.28.3(@babel/core@7.28.5) 3454 + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.28.5) 3455 + '@babel/plugin-syntax-import-assertions': 7.27.1(@babel/core@7.28.5) 3456 + '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.28.5) 3457 + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.28.5) 3458 + '@babel/plugin-transform-arrow-functions': 7.27.1(@babel/core@7.28.5) 3459 + '@babel/plugin-transform-async-generator-functions': 7.28.0(@babel/core@7.28.5) 3460 + '@babel/plugin-transform-async-to-generator': 7.27.1(@babel/core@7.28.5) 3461 + '@babel/plugin-transform-block-scoped-functions': 7.27.1(@babel/core@7.28.5) 3462 + '@babel/plugin-transform-block-scoping': 7.28.5(@babel/core@7.28.5) 3463 + '@babel/plugin-transform-class-properties': 7.27.1(@babel/core@7.28.5) 3464 + '@babel/plugin-transform-class-static-block': 7.28.3(@babel/core@7.28.5) 3465 + '@babel/plugin-transform-classes': 7.28.4(@babel/core@7.28.5) 3466 + '@babel/plugin-transform-computed-properties': 7.27.1(@babel/core@7.28.5) 3467 + '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5) 3468 + '@babel/plugin-transform-dotall-regex': 7.27.1(@babel/core@7.28.5) 3469 + '@babel/plugin-transform-duplicate-keys': 7.27.1(@babel/core@7.28.5) 3470 + '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.27.1(@babel/core@7.28.5) 3471 + '@babel/plugin-transform-dynamic-import': 7.27.1(@babel/core@7.28.5) 3472 + '@babel/plugin-transform-explicit-resource-management': 7.28.0(@babel/core@7.28.5) 3473 + '@babel/plugin-transform-exponentiation-operator': 7.28.5(@babel/core@7.28.5) 3474 + '@babel/plugin-transform-export-namespace-from': 7.27.1(@babel/core@7.28.5) 3475 + '@babel/plugin-transform-for-of': 7.27.1(@babel/core@7.28.5) 3476 + '@babel/plugin-transform-function-name': 7.27.1(@babel/core@7.28.5) 3477 + '@babel/plugin-transform-json-strings': 7.27.1(@babel/core@7.28.5) 3478 + '@babel/plugin-transform-literals': 7.27.1(@babel/core@7.28.5) 3479 + '@babel/plugin-transform-logical-assignment-operators': 7.28.5(@babel/core@7.28.5) 3480 + '@babel/plugin-transform-member-expression-literals': 7.27.1(@babel/core@7.28.5) 3481 + '@babel/plugin-transform-modules-amd': 7.27.1(@babel/core@7.28.5) 3482 + '@babel/plugin-transform-modules-commonjs': 7.27.1(@babel/core@7.28.5) 3483 + '@babel/plugin-transform-modules-systemjs': 7.28.5(@babel/core@7.28.5) 3484 + '@babel/plugin-transform-modules-umd': 7.27.1(@babel/core@7.28.5) 3485 + '@babel/plugin-transform-named-capturing-groups-regex': 7.27.1(@babel/core@7.28.5) 3486 + '@babel/plugin-transform-new-target': 7.27.1(@babel/core@7.28.5) 3487 + '@babel/plugin-transform-nullish-coalescing-operator': 7.27.1(@babel/core@7.28.5) 3488 + '@babel/plugin-transform-numeric-separator': 7.27.1(@babel/core@7.28.5) 3489 + '@babel/plugin-transform-object-rest-spread': 7.28.4(@babel/core@7.28.5) 3490 + '@babel/plugin-transform-object-super': 7.27.1(@babel/core@7.28.5) 3491 + '@babel/plugin-transform-optional-catch-binding': 7.27.1(@babel/core@7.28.5) 3492 + '@babel/plugin-transform-optional-chaining': 7.28.5(@babel/core@7.28.5) 3493 + '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.28.5) 3494 + '@babel/plugin-transform-private-methods': 7.27.1(@babel/core@7.28.5) 3495 + '@babel/plugin-transform-private-property-in-object': 7.27.1(@babel/core@7.28.5) 3496 + '@babel/plugin-transform-property-literals': 7.27.1(@babel/core@7.28.5) 3497 + '@babel/plugin-transform-regenerator': 7.28.4(@babel/core@7.28.5) 3498 + '@babel/plugin-transform-regexp-modifiers': 7.27.1(@babel/core@7.28.5) 3499 + '@babel/plugin-transform-reserved-words': 7.27.1(@babel/core@7.28.5) 3500 + '@babel/plugin-transform-shorthand-properties': 7.27.1(@babel/core@7.28.5) 3501 + '@babel/plugin-transform-spread': 7.27.1(@babel/core@7.28.5) 3502 + '@babel/plugin-transform-sticky-regex': 7.27.1(@babel/core@7.28.5) 3503 + '@babel/plugin-transform-template-literals': 7.27.1(@babel/core@7.28.5) 3504 + '@babel/plugin-transform-typeof-symbol': 7.27.1(@babel/core@7.28.5) 3505 + '@babel/plugin-transform-unicode-escapes': 7.27.1(@babel/core@7.28.5) 3506 + '@babel/plugin-transform-unicode-property-regex': 7.27.1(@babel/core@7.28.5) 3507 + '@babel/plugin-transform-unicode-regex': 7.27.1(@babel/core@7.28.5) 3508 + '@babel/plugin-transform-unicode-sets-regex': 7.27.1(@babel/core@7.28.5) 3509 + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.28.5) 3510 + babel-plugin-polyfill-corejs2: 0.4.14(@babel/core@7.28.5) 3511 + babel-plugin-polyfill-corejs3: 0.13.0(@babel/core@7.28.5) 3512 + babel-plugin-polyfill-regenerator: 0.6.5(@babel/core@7.28.5) 3513 + core-js-compat: 3.47.0 3497 3514 semver: 6.3.1 3498 3515 transitivePeerDependencies: 3499 3516 - supports-color 3500 3517 3501 - '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.27.4)': 3518 + '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.28.5)': 3502 3519 dependencies: 3503 - '@babel/core': 7.27.4 3520 + '@babel/core': 7.28.5 3504 3521 '@babel/helper-plugin-utils': 7.27.1 3505 - '@babel/types': 7.27.6 3522 + '@babel/types': 7.28.5 3506 3523 esutils: 2.0.3 3507 3524 3508 - '@babel/runtime@7.27.6': {} 3525 + '@babel/runtime@7.28.4': {} 3509 3526 3510 3527 '@babel/template@7.27.2': 3511 3528 dependencies: 3512 3529 '@babel/code-frame': 7.27.1 3513 - '@babel/parser': 7.27.5 3514 - '@babel/types': 7.27.6 3530 + '@babel/parser': 7.28.5 3531 + '@babel/types': 7.28.5 3515 3532 3516 - '@babel/traverse@7.27.4': 3533 + '@babel/traverse@7.28.5': 3517 3534 dependencies: 3518 3535 '@babel/code-frame': 7.27.1 3519 - '@babel/generator': 7.27.5 3520 - '@babel/parser': 7.27.5 3536 + '@babel/generator': 7.28.5 3537 + '@babel/helper-globals': 7.28.0 3538 + '@babel/parser': 7.28.5 3521 3539 '@babel/template': 7.27.2 3522 - '@babel/types': 7.27.6 3523 - debug: 4.4.1 3524 - globals: 11.12.0 3540 + '@babel/types': 7.28.5 3541 + debug: 4.4.3 3525 3542 transitivePeerDependencies: 3526 3543 - supports-color 3527 3544 3528 - '@babel/types@7.27.6': 3545 + '@babel/types@7.28.5': 3529 3546 dependencies: 3530 3547 '@babel/helper-string-parser': 7.27.1 3531 - '@babel/helper-validator-identifier': 7.27.1 3548 + '@babel/helper-validator-identifier': 7.28.5 3532 3549 3533 - '@badrap/valita@0.4.5': {} 3550 + '@badrap/valita@0.4.6': {} 3534 3551 3535 - '@cloudflare/kv-asset-handler@0.4.0': 3552 + '@cloudflare/kv-asset-handler@0.4.1': 3536 3553 dependencies: 3537 3554 mime: 3.0.0 3538 3555 3539 - '@cloudflare/unenv-preset@2.6.2(unenv@2.0.0-rc.19)(workerd@1.20250816.0)': 3556 + '@cloudflare/unenv-preset@2.7.13(unenv@2.0.0-rc.24)(workerd@1.20251202.0)': 3540 3557 dependencies: 3541 - unenv: 2.0.0-rc.19 3558 + unenv: 2.0.0-rc.24 3542 3559 optionalDependencies: 3543 - workerd: 1.20250816.0 3560 + workerd: 1.20251202.0 3544 3561 3545 - '@cloudflare/vite-plugin@1.11.7(rollup@4.44.0)(vite@6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0))(workerd@1.20250816.0)(wrangler@4.32.0)': 3562 + '@cloudflare/vite-plugin@1.17.0(vite@7.2.6(@types/node@24.10.1)(jiti@1.21.7)(terser@5.44.1))(workerd@1.20251202.0)(wrangler@4.53.0)': 3546 3563 dependencies: 3547 - '@cloudflare/unenv-preset': 2.6.2(unenv@2.0.0-rc.19)(workerd@1.20250816.0) 3548 - '@mjackson/node-fetch-server': 0.6.1 3549 - '@rollup/plugin-replace': 6.0.2(rollup@4.44.0) 3564 + '@cloudflare/unenv-preset': 2.7.13(unenv@2.0.0-rc.24)(workerd@1.20251202.0) 3565 + '@remix-run/node-fetch-server': 0.8.1 3566 + defu: 6.1.4 3550 3567 get-port: 7.1.0 3551 - miniflare: 4.20250816.1 3568 + miniflare: 4.20251202.1 3552 3569 picocolors: 1.1.1 3553 - tinyglobby: 0.2.14 3554 - unenv: 2.0.0-rc.19 3555 - vite: 6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0) 3556 - wrangler: 4.32.0 3570 + tinyglobby: 0.2.15 3571 + unenv: 2.0.0-rc.24 3572 + vite: 7.2.6(@types/node@24.10.1)(jiti@1.21.7)(terser@5.44.1) 3573 + wrangler: 4.53.0 3557 3574 ws: 8.18.0 3558 3575 transitivePeerDependencies: 3559 3576 - bufferutil 3560 - - rollup 3561 3577 - utf-8-validate 3562 3578 - workerd 3563 3579 3564 - '@cloudflare/workerd-darwin-64@1.20250816.0': 3580 + '@cloudflare/workerd-darwin-64@1.20251202.0': 3565 3581 optional: true 3566 3582 3567 - '@cloudflare/workerd-darwin-arm64@1.20250816.0': 3583 + '@cloudflare/workerd-darwin-arm64@1.20251202.0': 3568 3584 optional: true 3569 3585 3570 - '@cloudflare/workerd-linux-64@1.20250816.0': 3586 + '@cloudflare/workerd-linux-64@1.20251202.0': 3571 3587 optional: true 3572 3588 3573 - '@cloudflare/workerd-linux-arm64@1.20250816.0': 3589 + '@cloudflare/workerd-linux-arm64@1.20251202.0': 3574 3590 optional: true 3575 3591 3576 - '@cloudflare/workerd-windows-64@1.20250816.0': 3592 + '@cloudflare/workerd-windows-64@1.20251202.0': 3577 3593 optional: true 3578 3594 3579 3595 '@cspotcode/source-map-support@0.8.1': 3580 3596 dependencies: 3581 3597 '@jridgewell/trace-mapping': 0.3.9 3582 3598 3583 - '@emnapi/runtime@1.4.3': 3599 + '@emnapi/runtime@1.7.1': 3584 3600 dependencies: 3585 3601 tslib: 2.8.1 3586 3602 optional: true 3587 3603 3588 - '@esbuild/aix-ppc64@0.25.4': 3604 + '@esbuild/aix-ppc64@0.25.12': 3589 3605 optional: true 3590 3606 3591 - '@esbuild/aix-ppc64@0.25.5': 3607 + '@esbuild/aix-ppc64@0.27.0': 3592 3608 optional: true 3593 3609 3594 - '@esbuild/android-arm64@0.25.4': 3610 + '@esbuild/android-arm64@0.25.12': 3595 3611 optional: true 3596 3612 3597 - '@esbuild/android-arm64@0.25.5': 3613 + '@esbuild/android-arm64@0.27.0': 3598 3614 optional: true 3599 3615 3600 - '@esbuild/android-arm@0.25.4': 3616 + '@esbuild/android-arm@0.25.12': 3601 3617 optional: true 3602 3618 3603 - '@esbuild/android-arm@0.25.5': 3619 + '@esbuild/android-arm@0.27.0': 3604 3620 optional: true 3605 3621 3606 - '@esbuild/android-x64@0.25.4': 3622 + '@esbuild/android-x64@0.25.12': 3607 3623 optional: true 3608 3624 3609 - '@esbuild/android-x64@0.25.5': 3625 + '@esbuild/android-x64@0.27.0': 3610 3626 optional: true 3611 3627 3612 - '@esbuild/darwin-arm64@0.25.4': 3628 + '@esbuild/darwin-arm64@0.25.12': 3629 + optional: true 3630 + 3631 + '@esbuild/darwin-arm64@0.27.0': 3632 + optional: true 3633 + 3634 + '@esbuild/darwin-x64@0.25.12': 3613 3635 optional: true 3614 3636 3615 - '@esbuild/darwin-arm64@0.25.5': 3637 + '@esbuild/darwin-x64@0.27.0': 3616 3638 optional: true 3617 3639 3618 - '@esbuild/darwin-x64@0.25.4': 3640 + '@esbuild/freebsd-arm64@0.25.12': 3619 3641 optional: true 3620 3642 3621 - '@esbuild/darwin-x64@0.25.5': 3643 + '@esbuild/freebsd-arm64@0.27.0': 3622 3644 optional: true 3623 3645 3624 - '@esbuild/freebsd-arm64@0.25.4': 3646 + '@esbuild/freebsd-x64@0.25.12': 3625 3647 optional: true 3626 3648 3627 - '@esbuild/freebsd-arm64@0.25.5': 3649 + '@esbuild/freebsd-x64@0.27.0': 3628 3650 optional: true 3629 3651 3630 - '@esbuild/freebsd-x64@0.25.4': 3652 + '@esbuild/linux-arm64@0.25.12': 3631 3653 optional: true 3632 3654 3633 - '@esbuild/freebsd-x64@0.25.5': 3655 + '@esbuild/linux-arm64@0.27.0': 3634 3656 optional: true 3635 3657 3636 - '@esbuild/linux-arm64@0.25.4': 3658 + '@esbuild/linux-arm@0.25.12': 3637 3659 optional: true 3638 3660 3639 - '@esbuild/linux-arm64@0.25.5': 3661 + '@esbuild/linux-arm@0.27.0': 3640 3662 optional: true 3641 3663 3642 - '@esbuild/linux-arm@0.25.4': 3664 + '@esbuild/linux-ia32@0.25.12': 3643 3665 optional: true 3644 3666 3645 - '@esbuild/linux-arm@0.25.5': 3667 + '@esbuild/linux-ia32@0.27.0': 3646 3668 optional: true 3647 3669 3648 - '@esbuild/linux-ia32@0.25.4': 3670 + '@esbuild/linux-loong64@0.25.12': 3649 3671 optional: true 3650 3672 3651 - '@esbuild/linux-ia32@0.25.5': 3673 + '@esbuild/linux-loong64@0.27.0': 3652 3674 optional: true 3653 3675 3654 - '@esbuild/linux-loong64@0.25.4': 3676 + '@esbuild/linux-mips64el@0.25.12': 3655 3677 optional: true 3656 3678 3657 - '@esbuild/linux-loong64@0.25.5': 3679 + '@esbuild/linux-mips64el@0.27.0': 3658 3680 optional: true 3659 3681 3660 - '@esbuild/linux-mips64el@0.25.4': 3682 + '@esbuild/linux-ppc64@0.25.12': 3661 3683 optional: true 3662 3684 3663 - '@esbuild/linux-mips64el@0.25.5': 3685 + '@esbuild/linux-ppc64@0.27.0': 3664 3686 optional: true 3665 3687 3666 - '@esbuild/linux-ppc64@0.25.4': 3688 + '@esbuild/linux-riscv64@0.25.12': 3667 3689 optional: true 3668 3690 3669 - '@esbuild/linux-ppc64@0.25.5': 3691 + '@esbuild/linux-riscv64@0.27.0': 3670 3692 optional: true 3671 3693 3672 - '@esbuild/linux-riscv64@0.25.4': 3694 + '@esbuild/linux-s390x@0.25.12': 3673 3695 optional: true 3674 3696 3675 - '@esbuild/linux-riscv64@0.25.5': 3697 + '@esbuild/linux-s390x@0.27.0': 3676 3698 optional: true 3677 3699 3678 - '@esbuild/linux-s390x@0.25.4': 3700 + '@esbuild/linux-x64@0.25.12': 3679 3701 optional: true 3680 3702 3681 - '@esbuild/linux-s390x@0.25.5': 3703 + '@esbuild/linux-x64@0.27.0': 3682 3704 optional: true 3683 3705 3684 - '@esbuild/linux-x64@0.25.4': 3706 + '@esbuild/netbsd-arm64@0.25.12': 3685 3707 optional: true 3686 3708 3687 - '@esbuild/linux-x64@0.25.5': 3709 + '@esbuild/netbsd-arm64@0.27.0': 3688 3710 optional: true 3689 3711 3690 - '@esbuild/netbsd-arm64@0.25.4': 3712 + '@esbuild/netbsd-x64@0.25.12': 3691 3713 optional: true 3692 3714 3693 - '@esbuild/netbsd-arm64@0.25.5': 3715 + '@esbuild/netbsd-x64@0.27.0': 3694 3716 optional: true 3695 3717 3696 - '@esbuild/netbsd-x64@0.25.4': 3718 + '@esbuild/openbsd-arm64@0.25.12': 3697 3719 optional: true 3698 3720 3699 - '@esbuild/netbsd-x64@0.25.5': 3721 + '@esbuild/openbsd-arm64@0.27.0': 3700 3722 optional: true 3701 3723 3702 - '@esbuild/openbsd-arm64@0.25.4': 3724 + '@esbuild/openbsd-x64@0.25.12': 3703 3725 optional: true 3704 3726 3705 - '@esbuild/openbsd-arm64@0.25.5': 3727 + '@esbuild/openbsd-x64@0.27.0': 3706 3728 optional: true 3707 3729 3708 - '@esbuild/openbsd-x64@0.25.4': 3730 + '@esbuild/openharmony-arm64@0.25.12': 3709 3731 optional: true 3710 3732 3711 - '@esbuild/openbsd-x64@0.25.5': 3733 + '@esbuild/openharmony-arm64@0.27.0': 3712 3734 optional: true 3713 3735 3714 - '@esbuild/sunos-x64@0.25.4': 3736 + '@esbuild/sunos-x64@0.25.12': 3715 3737 optional: true 3716 3738 3717 - '@esbuild/sunos-x64@0.25.5': 3739 + '@esbuild/sunos-x64@0.27.0': 3718 3740 optional: true 3719 3741 3720 - '@esbuild/win32-arm64@0.25.4': 3742 + '@esbuild/win32-arm64@0.25.12': 3721 3743 optional: true 3722 3744 3723 - '@esbuild/win32-arm64@0.25.5': 3745 + '@esbuild/win32-arm64@0.27.0': 3724 3746 optional: true 3725 3747 3726 - '@esbuild/win32-ia32@0.25.4': 3748 + '@esbuild/win32-ia32@0.25.12': 3727 3749 optional: true 3728 3750 3729 - '@esbuild/win32-ia32@0.25.5': 3751 + '@esbuild/win32-ia32@0.27.0': 3730 3752 optional: true 3731 3753 3732 - '@esbuild/win32-x64@0.25.4': 3754 + '@esbuild/win32-x64@0.25.12': 3733 3755 optional: true 3734 3756 3735 - '@esbuild/win32-x64@0.25.5': 3757 + '@esbuild/win32-x64@0.27.0': 3736 3758 optional: true 3737 3759 3738 - '@externdefs/solid-freeze@0.1.1(solid-js@1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))': 3760 + '@externdefs/solid-freeze@0.1.1(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))': 3739 3761 dependencies: 3740 - solid-js: 1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 3762 + solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 3741 3763 3742 - '@externdefs/solid-query@0.1.5(solid-js@1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))': 3764 + '@externdefs/solid-query@0.1.5(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))': 3743 3765 dependencies: 3744 3766 '@tanstack/query-core': 5.17.19(patch_hash=0b06407b66b7af88765fb6e01e112677a8c09ce518cb4f547cee8a0044471acd) 3745 - solid-js: 1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 3767 + solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 3746 3768 3747 - '@floating-ui/core@1.7.1': 3769 + '@floating-ui/core@1.7.3': 3748 3770 dependencies: 3749 - '@floating-ui/utils': 0.2.9(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea) 3771 + '@floating-ui/utils': 0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea) 3750 3772 3751 - '@floating-ui/dom@1.7.1': 3773 + '@floating-ui/dom@1.7.4': 3752 3774 dependencies: 3753 - '@floating-ui/core': 1.7.1 3754 - '@floating-ui/utils': 0.2.9(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea) 3775 + '@floating-ui/core': 1.7.3 3776 + '@floating-ui/utils': 0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea) 3755 3777 3756 - '@floating-ui/utils@0.2.9(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea)': {} 3778 + '@floating-ui/utils@0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea)': {} 3757 3779 3758 3780 '@img/sharp-darwin-arm64@0.33.5': 3759 3781 optionalDependencies: ··· 3821 3843 3822 3844 '@img/sharp-wasm32@0.33.5': 3823 3845 dependencies: 3824 - '@emnapi/runtime': 1.4.3 3846 + '@emnapi/runtime': 1.7.1 3825 3847 optional: true 3826 3848 3827 3849 '@img/sharp-win32-ia32@0.33.5': ··· 3829 3851 3830 3852 '@img/sharp-win32-x64@0.33.5': 3831 3853 optional: true 3854 + 3855 + '@isaacs/balanced-match@4.0.1': {} 3856 + 3857 + '@isaacs/brace-expansion@5.0.0': 3858 + dependencies: 3859 + '@isaacs/balanced-match': 4.0.1 3832 3860 3833 3861 '@isaacs/cliui@8.0.2': 3834 3862 dependencies: 3835 3863 string-width: 5.1.2 3836 3864 string-width-cjs: string-width@4.2.3 3837 - strip-ansi: 7.1.0 3865 + strip-ansi: 7.1.2 3838 3866 strip-ansi-cjs: strip-ansi@6.0.1 3839 3867 wrap-ansi: 8.1.0 3840 3868 wrap-ansi-cjs: wrap-ansi@7.0.0 3841 3869 3842 - '@jridgewell/gen-mapping@0.3.8': 3870 + '@jridgewell/gen-mapping@0.3.13': 3843 3871 dependencies: 3844 - '@jridgewell/set-array': 1.2.1 3845 - '@jridgewell/sourcemap-codec': 1.5.0 3846 - '@jridgewell/trace-mapping': 0.3.25 3872 + '@jridgewell/sourcemap-codec': 1.5.5 3873 + '@jridgewell/trace-mapping': 0.3.31 3847 3874 3848 - '@jridgewell/resolve-uri@3.1.2': {} 3875 + '@jridgewell/remapping@2.3.5': 3876 + dependencies: 3877 + '@jridgewell/gen-mapping': 0.3.13 3878 + '@jridgewell/trace-mapping': 0.3.31 3849 3879 3850 - '@jridgewell/set-array@1.2.1': {} 3880 + '@jridgewell/resolve-uri@3.1.2': {} 3851 3881 3852 - '@jridgewell/source-map@0.3.6': 3882 + '@jridgewell/source-map@0.3.11': 3853 3883 dependencies: 3854 - '@jridgewell/gen-mapping': 0.3.8 3855 - '@jridgewell/trace-mapping': 0.3.25 3856 - 3857 - '@jridgewell/sourcemap-codec@1.5.0': {} 3884 + '@jridgewell/gen-mapping': 0.3.13 3885 + '@jridgewell/trace-mapping': 0.3.31 3858 3886 3859 3887 '@jridgewell/sourcemap-codec@1.5.5': {} 3860 3888 3861 - '@jridgewell/trace-mapping@0.3.25': 3889 + '@jridgewell/trace-mapping@0.3.31': 3862 3890 dependencies: 3863 3891 '@jridgewell/resolve-uri': 3.1.2 3864 - '@jridgewell/sourcemap-codec': 1.5.0 3892 + '@jridgewell/sourcemap-codec': 1.5.5 3865 3893 3866 3894 '@jridgewell/trace-mapping@0.3.9': 3867 3895 dependencies: 3868 3896 '@jridgewell/resolve-uri': 3.1.2 3869 - '@jridgewell/sourcemap-codec': 1.5.0 3897 + '@jridgewell/sourcemap-codec': 1.5.5 3870 3898 3871 - '@jsr/mary__array-fns@0.1.4': {} 3899 + '@jsr/mary__array-fns@0.1.5': {} 3872 3900 3873 3901 '@jsr/mary__async-iterator-fns@0.1.1': {} 3874 3902 ··· 3882 3910 3883 3911 '@kelinci/basa-lexicons@1.0.0': 3884 3912 dependencies: 3885 - '@atcute/lexicons': 1.1.0 3913 + '@atcute/lexicons': 1.2.5 3886 3914 3887 - '@mjackson/node-fetch-server@0.6.1': {} 3915 + '@noble/secp256k1@3.0.0': {} 3888 3916 3889 3917 '@nodelib/fs.scandir@2.1.5': 3890 3918 dependencies: ··· 3908 3936 dependencies: 3909 3937 '@nolyfill/shared': 1.0.44 3910 3938 3911 - '@pkgjs/parseargs@0.11.0': 3912 - optional: true 3913 - 3914 3939 '@poppinss/colors@4.1.5': 3915 3940 dependencies: 3916 3941 kleur: 4.1.5 3917 3942 3918 - '@poppinss/dumper@0.6.4': 3943 + '@poppinss/dumper@0.6.5': 3919 3944 dependencies: 3920 3945 '@poppinss/colors': 4.1.5 3921 - '@sindresorhus/is': 7.0.2 3922 - supports-color: 10.2.0 3946 + '@sindresorhus/is': 7.1.1 3947 + supports-color: 10.2.2 3923 3948 3924 3949 '@poppinss/exception@1.2.2': {} 3925 3950 3926 - '@rollup/plugin-babel@5.3.1(@babel/core@7.27.4)(@types/babel__core@7.20.5)(rollup@2.79.2)': 3951 + '@remix-run/node-fetch-server@0.8.1': {} 3952 + 3953 + '@rollup/plugin-babel@5.3.1(@babel/core@7.28.5)(@types/babel__core@7.20.5)(rollup@2.79.2)': 3927 3954 dependencies: 3928 - '@babel/core': 7.27.4 3955 + '@babel/core': 7.28.5 3929 3956 '@babel/helper-module-imports': 7.27.1 3930 3957 '@rollup/pluginutils': 3.1.0(rollup@2.79.2) 3931 3958 rollup: 2.79.2 ··· 3936 3963 3937 3964 '@rollup/plugin-node-resolve@15.3.1(rollup@2.79.2)': 3938 3965 dependencies: 3939 - '@rollup/pluginutils': 5.2.0(rollup@2.79.2) 3966 + '@rollup/pluginutils': 5.3.0(rollup@2.79.2) 3940 3967 '@types/resolve': 1.20.2 3941 3968 deepmerge: 4.3.1 3942 3969 is-module: 1.0.0 3943 - resolve: 1.22.10 3970 + resolve: 1.22.11 3944 3971 optionalDependencies: 3945 3972 rollup: 2.79.2 3946 3973 ··· 3950 3977 magic-string: 0.25.9 3951 3978 rollup: 2.79.2 3952 3979 3953 - '@rollup/plugin-replace@6.0.2(rollup@4.44.0)': 3954 - dependencies: 3955 - '@rollup/pluginutils': 5.2.0(rollup@4.44.0) 3956 - magic-string: 0.30.18 3957 - optionalDependencies: 3958 - rollup: 4.44.0 3959 - 3960 3980 '@rollup/plugin-terser@0.4.4(rollup@2.79.2)': 3961 3981 dependencies: 3962 3982 serialize-javascript: 6.0.2 3963 3983 smob: 1.5.0 3964 - terser: 5.43.1 3984 + terser: 5.44.1 3965 3985 optionalDependencies: 3966 3986 rollup: 2.79.2 3967 3987 ··· 3972 3992 picomatch: 2.3.1 3973 3993 rollup: 2.79.2 3974 3994 3975 - '@rollup/pluginutils@5.2.0(rollup@2.79.2)': 3995 + '@rollup/pluginutils@5.3.0(rollup@2.79.2)': 3976 3996 dependencies: 3977 3997 '@types/estree': 1.0.8 3978 3998 estree-walker: 2.0.2 3979 - picomatch: 4.0.2 3999 + picomatch: 4.0.3 3980 4000 optionalDependencies: 3981 4001 rollup: 2.79.2 3982 4002 3983 - '@rollup/pluginutils@5.2.0(rollup@4.44.0)': 3984 - dependencies: 3985 - '@types/estree': 1.0.8 3986 - estree-walker: 2.0.2 3987 - picomatch: 4.0.2 3988 - optionalDependencies: 3989 - rollup: 4.44.0 4003 + '@rollup/rollup-android-arm-eabi@4.53.3': 4004 + optional: true 4005 + 4006 + '@rollup/rollup-android-arm64@4.53.3': 4007 + optional: true 3990 4008 3991 - '@rollup/rollup-android-arm-eabi@4.44.0': 4009 + '@rollup/rollup-darwin-arm64@4.53.3': 3992 4010 optional: true 3993 4011 3994 - '@rollup/rollup-android-arm64@4.44.0': 4012 + '@rollup/rollup-darwin-x64@4.53.3': 3995 4013 optional: true 3996 4014 3997 - '@rollup/rollup-darwin-arm64@4.44.0': 4015 + '@rollup/rollup-freebsd-arm64@4.53.3': 3998 4016 optional: true 3999 4017 4000 - '@rollup/rollup-darwin-x64@4.44.0': 4018 + '@rollup/rollup-freebsd-x64@4.53.3': 4001 4019 optional: true 4002 4020 4003 - '@rollup/rollup-freebsd-arm64@4.44.0': 4021 + '@rollup/rollup-linux-arm-gnueabihf@4.53.3': 4004 4022 optional: true 4005 4023 4006 - '@rollup/rollup-freebsd-x64@4.44.0': 4024 + '@rollup/rollup-linux-arm-musleabihf@4.53.3': 4007 4025 optional: true 4008 4026 4009 - '@rollup/rollup-linux-arm-gnueabihf@4.44.0': 4027 + '@rollup/rollup-linux-arm64-gnu@4.53.3': 4010 4028 optional: true 4011 4029 4012 - '@rollup/rollup-linux-arm-musleabihf@4.44.0': 4030 + '@rollup/rollup-linux-arm64-musl@4.53.3': 4013 4031 optional: true 4014 4032 4015 - '@rollup/rollup-linux-arm64-gnu@4.44.0': 4033 + '@rollup/rollup-linux-loong64-gnu@4.53.3': 4016 4034 optional: true 4017 4035 4018 - '@rollup/rollup-linux-arm64-musl@4.44.0': 4036 + '@rollup/rollup-linux-ppc64-gnu@4.53.3': 4019 4037 optional: true 4020 4038 4021 - '@rollup/rollup-linux-loongarch64-gnu@4.44.0': 4039 + '@rollup/rollup-linux-riscv64-gnu@4.53.3': 4022 4040 optional: true 4023 4041 4024 - '@rollup/rollup-linux-powerpc64le-gnu@4.44.0': 4042 + '@rollup/rollup-linux-riscv64-musl@4.53.3': 4025 4043 optional: true 4026 4044 4027 - '@rollup/rollup-linux-riscv64-gnu@4.44.0': 4045 + '@rollup/rollup-linux-s390x-gnu@4.53.3': 4028 4046 optional: true 4029 4047 4030 - '@rollup/rollup-linux-riscv64-musl@4.44.0': 4048 + '@rollup/rollup-linux-x64-gnu@4.53.3': 4031 4049 optional: true 4032 4050 4033 - '@rollup/rollup-linux-s390x-gnu@4.44.0': 4051 + '@rollup/rollup-linux-x64-musl@4.53.3': 4034 4052 optional: true 4035 4053 4036 - '@rollup/rollup-linux-x64-gnu@4.44.0': 4054 + '@rollup/rollup-openharmony-arm64@4.53.3': 4037 4055 optional: true 4038 4056 4039 - '@rollup/rollup-linux-x64-musl@4.44.0': 4057 + '@rollup/rollup-win32-arm64-msvc@4.53.3': 4040 4058 optional: true 4041 4059 4042 - '@rollup/rollup-win32-arm64-msvc@4.44.0': 4060 + '@rollup/rollup-win32-ia32-msvc@4.53.3': 4043 4061 optional: true 4044 4062 4045 - '@rollup/rollup-win32-ia32-msvc@4.44.0': 4063 + '@rollup/rollup-win32-x64-gnu@4.53.3': 4046 4064 optional: true 4047 4065 4048 - '@rollup/rollup-win32-x64-msvc@4.44.0': 4066 + '@rollup/rollup-win32-x64-msvc@4.53.3': 4049 4067 optional: true 4050 4068 4051 - '@sindresorhus/is@7.0.2': {} 4069 + '@sindresorhus/is@7.1.1': {} 4052 4070 4053 - '@speed-highlight/core@1.2.7': {} 4071 + '@speed-highlight/core@1.2.12': {} 4072 + 4073 + '@standard-schema/spec@1.0.0': {} 4054 4074 4055 4075 '@surma/rollup-plugin-off-main-thread@2.2.3': 4056 4076 dependencies: ··· 4061 4081 4062 4082 '@tanstack/query-core@5.17.19(patch_hash=0b06407b66b7af88765fb6e01e112677a8c09ce518cb4f547cee8a0044471acd)': {} 4063 4083 4064 - '@trivago/prettier-plugin-sort-imports@5.2.2(prettier@3.6.0)': 4084 + '@trivago/prettier-plugin-sort-imports@5.2.2(prettier@3.7.4)': 4065 4085 dependencies: 4066 - '@babel/generator': 7.27.5 4067 - '@babel/parser': 7.27.5 4068 - '@babel/traverse': 7.27.4 4069 - '@babel/types': 7.27.6 4086 + '@babel/generator': 7.28.5 4087 + '@babel/parser': 7.28.5 4088 + '@babel/traverse': 7.28.5 4089 + '@babel/types': 7.28.5 4070 4090 javascript-natural-sort: 0.7.1 4071 4091 lodash: 4.17.21 4072 - prettier: 3.6.0 4092 + prettier: 3.7.4 4073 4093 transitivePeerDependencies: 4074 4094 - supports-color 4075 4095 4076 4096 '@types/babel__core@7.20.5': 4077 4097 dependencies: 4078 - '@babel/parser': 7.27.5 4079 - '@babel/types': 7.27.6 4098 + '@babel/parser': 7.28.5 4099 + '@babel/types': 7.28.5 4080 4100 '@types/babel__generator': 7.27.0 4081 4101 '@types/babel__template': 7.4.4 4082 - '@types/babel__traverse': 7.20.7 4102 + '@types/babel__traverse': 7.28.0 4083 4103 4084 4104 '@types/babel__generator@7.27.0': 4085 4105 dependencies: 4086 - '@babel/types': 7.27.6 4106 + '@babel/types': 7.28.5 4087 4107 4088 4108 '@types/babel__template@7.4.4': 4089 4109 dependencies: 4090 - '@babel/parser': 7.27.5 4091 - '@babel/types': 7.27.6 4110 + '@babel/parser': 7.28.5 4111 + '@babel/types': 7.28.5 4092 4112 4093 - '@types/babel__traverse@7.20.7': 4113 + '@types/babel__traverse@7.28.0': 4094 4114 dependencies: 4095 - '@babel/types': 7.27.6 4115 + '@babel/types': 7.28.5 4096 4116 4097 4117 '@types/dom-close-watcher@1.0.0': {} 4098 4118 4099 - '@types/dom-webcodecs@0.1.15': {} 4119 + '@types/dom-mediacapture-transform@0.1.11': 4120 + dependencies: 4121 + '@types/dom-webcodecs': 0.1.18 4122 + 4123 + '@types/dom-webcodecs@0.1.13': {} 4124 + 4125 + '@types/dom-webcodecs@0.1.18': {} 4100 4126 4101 4127 '@types/estree@0.0.39': {} 4102 4128 4103 4129 '@types/estree@1.0.8': {} 4104 4130 4105 - '@types/node@24.3.0': 4131 + '@types/node@24.10.1': 4106 4132 dependencies: 4107 - undici-types: 7.10.0 4133 + undici-types: 7.16.0 4108 4134 4109 4135 '@types/resolve@1.20.2': {} 4110 4136 4111 4137 '@types/trusted-types@2.0.7': {} 4112 - 4113 - '@types/wicg-file-system-access@2020.9.8': {} 4114 4138 4115 4139 acorn-walk@8.3.2: {} 4116 4140 ··· 4121 4145 ajv@8.17.1: 4122 4146 dependencies: 4123 4147 fast-deep-equal: 3.1.3 4124 - fast-uri: 3.0.6 4148 + fast-uri: 3.1.0 4125 4149 json-schema-traverse: 1.0.0 4126 4150 require-from-string: 2.0.2 4127 4151 4128 4152 ansi-regex@5.0.1: {} 4129 4153 4130 - ansi-regex@6.1.0: {} 4154 + ansi-regex@6.2.2: {} 4131 4155 4132 4156 ansi-styles@4.3.0: 4133 4157 dependencies: 4134 4158 color-convert: 2.0.1 4135 4159 4136 - ansi-styles@6.2.1: {} 4160 + ansi-styles@6.2.3: {} 4137 4161 4138 4162 any-promise@1.3.0: {} 4139 4163 ··· 4148 4172 4149 4173 at-least-node@1.0.0: {} 4150 4174 4151 - autoprefixer@10.4.21(postcss@8.5.6): 4175 + autoprefixer@10.4.22(postcss@8.5.6): 4152 4176 dependencies: 4153 - browserslist: 4.25.0 4154 - caniuse-lite: 1.0.30001724 4155 - fraction.js: 4.3.7 4177 + browserslist: 4.28.1 4178 + caniuse-lite: 1.0.30001759 4179 + fraction.js: 5.3.4 4156 4180 normalize-range: 0.1.2 4157 4181 picocolors: 1.1.1 4158 4182 postcss: 8.5.6 4159 4183 postcss-value-parser: 4.2.0 4160 4184 4161 - babel-plugin-jsx-dom-expressions@0.39.8(@babel/core@7.27.4): 4185 + babel-plugin-jsx-dom-expressions@0.40.3(@babel/core@7.28.5): 4162 4186 dependencies: 4163 - '@babel/core': 7.27.4 4187 + '@babel/core': 7.28.5 4164 4188 '@babel/helper-module-imports': 7.18.6 4165 - '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.27.4) 4166 - '@babel/types': 7.27.6 4189 + '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.5) 4190 + '@babel/types': 7.28.5 4167 4191 html-entities: 2.3.3 4168 4192 parse5: 7.3.0 4169 - validate-html-nesting: 1.2.3 4170 4193 4171 - babel-plugin-polyfill-corejs2@0.4.13(@babel/core@7.27.4): 4194 + babel-plugin-polyfill-corejs2@0.4.14(@babel/core@7.28.5): 4172 4195 dependencies: 4173 - '@babel/compat-data': 7.27.5 4174 - '@babel/core': 7.27.4 4175 - '@babel/helper-define-polyfill-provider': 0.6.4(@babel/core@7.27.4) 4196 + '@babel/compat-data': 7.28.5 4197 + '@babel/core': 7.28.5 4198 + '@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.5) 4176 4199 semver: 6.3.1 4177 4200 transitivePeerDependencies: 4178 4201 - supports-color 4179 4202 4180 - babel-plugin-polyfill-corejs3@0.11.1(@babel/core@7.27.4): 4203 + babel-plugin-polyfill-corejs3@0.13.0(@babel/core@7.28.5): 4181 4204 dependencies: 4182 - '@babel/core': 7.27.4 4183 - '@babel/helper-define-polyfill-provider': 0.6.4(@babel/core@7.27.4) 4184 - core-js-compat: 3.43.0 4205 + '@babel/core': 7.28.5 4206 + '@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.5) 4207 + core-js-compat: 3.47.0 4185 4208 transitivePeerDependencies: 4186 4209 - supports-color 4187 4210 4188 - babel-plugin-polyfill-regenerator@0.6.4(@babel/core@7.27.4): 4211 + babel-plugin-polyfill-regenerator@0.6.5(@babel/core@7.28.5): 4189 4212 dependencies: 4190 - '@babel/core': 7.27.4 4191 - '@babel/helper-define-polyfill-provider': 0.6.4(@babel/core@7.27.4) 4213 + '@babel/core': 7.28.5 4214 + '@babel/helper-define-polyfill-provider': 0.6.5(@babel/core@7.28.5) 4192 4215 transitivePeerDependencies: 4193 4216 - supports-color 4194 4217 4195 - babel-plugin-transform-typescript-const-enums@0.1.0(@babel/core@7.27.4): 4218 + babel-plugin-transform-typescript-const-enums@0.1.0(@babel/core@7.28.5): 4196 4219 dependencies: 4197 - '@babel/core': 7.27.4 4220 + '@babel/core': 7.28.5 4198 4221 '@babel/helper-plugin-utils': 7.27.1 4199 - '@babel/types': 7.27.6 4222 + '@babel/types': 7.28.5 4200 4223 4201 - babel-preset-solid@1.9.6(@babel/core@7.27.4): 4224 + babel-preset-solid@1.9.10(@babel/core@7.28.5)(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)): 4202 4225 dependencies: 4203 - '@babel/core': 7.27.4 4204 - babel-plugin-jsx-dom-expressions: 0.39.8(@babel/core@7.27.4) 4226 + '@babel/core': 7.28.5 4227 + babel-plugin-jsx-dom-expressions: 0.40.3(@babel/core@7.28.5) 4228 + optionalDependencies: 4229 + solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 4205 4230 4206 4231 balanced-match@1.0.2: {} 4207 4232 4233 + baseline-browser-mapping@2.9.3: {} 4234 + 4208 4235 binary-extensions@2.3.0: {} 4209 4236 4210 4237 bind-event-listener@3.0.0: {} 4211 4238 4212 4239 blake3-wasm@2.1.5: {} 4213 - 4214 - brace-expansion@1.1.12: 4215 - dependencies: 4216 - balanced-match: 1.0.2 4217 - concat-map: 0.0.1 4218 4240 4219 4241 brace-expansion@2.0.2: 4220 4242 dependencies: ··· 4224 4246 dependencies: 4225 4247 fill-range: 7.1.1 4226 4248 4227 - browserslist@4.25.0: 4249 + browserslist@4.28.1: 4228 4250 dependencies: 4229 - caniuse-lite: 1.0.30001724 4230 - electron-to-chromium: 1.5.171 4231 - node-releases: 2.0.19 4232 - update-browserslist-db: 1.1.3(browserslist@4.25.0) 4251 + baseline-browser-mapping: 2.9.3 4252 + caniuse-lite: 1.0.30001759 4253 + electron-to-chromium: 1.5.266 4254 + node-releases: 2.0.27 4255 + update-browserslist-db: 1.2.2(browserslist@4.28.1) 4233 4256 4234 4257 buffer-from@1.1.2: {} 4235 4258 4236 4259 camelcase-css@2.0.1: {} 4237 4260 4238 - caniuse-lite@1.0.30001724: {} 4239 - 4240 - chalk@4.1.2: 4241 - dependencies: 4242 - ansi-styles: 4.3.0 4243 - supports-color: 7.2.0 4261 + caniuse-lite@1.0.30001759: {} 4244 4262 4245 4263 chokidar@3.6.0: 4246 4264 dependencies: ··· 4263 4281 color-string@1.9.1: 4264 4282 dependencies: 4265 4283 color-name: 1.1.4 4266 - simple-swizzle: 0.2.2 4284 + simple-swizzle: 0.2.4 4267 4285 4268 4286 color@4.2.3: 4269 4287 dependencies: ··· 4278 4296 4279 4297 common-tags@1.8.2: {} 4280 4298 4281 - concat-map@0.0.1: {} 4282 - 4283 4299 convert-source-map@2.0.0: {} 4284 4300 4285 - cookie@1.0.2: {} 4301 + cookie@1.1.1: {} 4286 4302 4287 - core-js-compat@3.43.0: 4303 + core-js-compat@3.47.0: 4288 4304 dependencies: 4289 - browserslist: 4.25.0 4305 + browserslist: 4.28.1 4290 4306 4291 4307 cross-spawn@7.0.6: 4292 4308 dependencies: ··· 4298 4314 4299 4315 cssesc@3.0.0: {} 4300 4316 4301 - csstype@3.1.3: {} 4317 + csstype@3.2.3: {} 4302 4318 4303 - debug@4.4.1: 4319 + debug@4.4.3: 4304 4320 dependencies: 4305 4321 ms: 2.1.3 4306 4322 ··· 4308 4324 4309 4325 defu@6.1.4: {} 4310 4326 4311 - detect-libc@2.0.4: {} 4327 + detect-libc@2.1.2: {} 4312 4328 4313 4329 didyoumean@1.2.2: {} 4314 4330 ··· 4318 4334 4319 4335 ejs@3.1.10: 4320 4336 dependencies: 4321 - jake: 10.9.2 4337 + jake: 10.9.4 4322 4338 4323 - electron-to-chromium@1.5.171: {} 4339 + electron-to-chromium@1.5.266: {} 4324 4340 4325 4341 emoji-regex@8.0.0: {} 4326 4342 ··· 4330 4346 4331 4347 error-stack-parser-es@1.0.5: {} 4332 4348 4333 - esbuild@0.25.4: 4349 + esbuild@0.25.12: 4334 4350 optionalDependencies: 4335 - '@esbuild/aix-ppc64': 0.25.4 4336 - '@esbuild/android-arm': 0.25.4 4337 - '@esbuild/android-arm64': 0.25.4 4338 - '@esbuild/android-x64': 0.25.4 4339 - '@esbuild/darwin-arm64': 0.25.4 4340 - '@esbuild/darwin-x64': 0.25.4 4341 - '@esbuild/freebsd-arm64': 0.25.4 4342 - '@esbuild/freebsd-x64': 0.25.4 4343 - '@esbuild/linux-arm': 0.25.4 4344 - '@esbuild/linux-arm64': 0.25.4 4345 - '@esbuild/linux-ia32': 0.25.4 4346 - '@esbuild/linux-loong64': 0.25.4 4347 - '@esbuild/linux-mips64el': 0.25.4 4348 - '@esbuild/linux-ppc64': 0.25.4 4349 - '@esbuild/linux-riscv64': 0.25.4 4350 - '@esbuild/linux-s390x': 0.25.4 4351 - '@esbuild/linux-x64': 0.25.4 4352 - '@esbuild/netbsd-arm64': 0.25.4 4353 - '@esbuild/netbsd-x64': 0.25.4 4354 - '@esbuild/openbsd-arm64': 0.25.4 4355 - '@esbuild/openbsd-x64': 0.25.4 4356 - '@esbuild/sunos-x64': 0.25.4 4357 - '@esbuild/win32-arm64': 0.25.4 4358 - '@esbuild/win32-ia32': 0.25.4 4359 - '@esbuild/win32-x64': 0.25.4 4351 + '@esbuild/aix-ppc64': 0.25.12 4352 + '@esbuild/android-arm': 0.25.12 4353 + '@esbuild/android-arm64': 0.25.12 4354 + '@esbuild/android-x64': 0.25.12 4355 + '@esbuild/darwin-arm64': 0.25.12 4356 + '@esbuild/darwin-x64': 0.25.12 4357 + '@esbuild/freebsd-arm64': 0.25.12 4358 + '@esbuild/freebsd-x64': 0.25.12 4359 + '@esbuild/linux-arm': 0.25.12 4360 + '@esbuild/linux-arm64': 0.25.12 4361 + '@esbuild/linux-ia32': 0.25.12 4362 + '@esbuild/linux-loong64': 0.25.12 4363 + '@esbuild/linux-mips64el': 0.25.12 4364 + '@esbuild/linux-ppc64': 0.25.12 4365 + '@esbuild/linux-riscv64': 0.25.12 4366 + '@esbuild/linux-s390x': 0.25.12 4367 + '@esbuild/linux-x64': 0.25.12 4368 + '@esbuild/netbsd-arm64': 0.25.12 4369 + '@esbuild/netbsd-x64': 0.25.12 4370 + '@esbuild/openbsd-arm64': 0.25.12 4371 + '@esbuild/openbsd-x64': 0.25.12 4372 + '@esbuild/openharmony-arm64': 0.25.12 4373 + '@esbuild/sunos-x64': 0.25.12 4374 + '@esbuild/win32-arm64': 0.25.12 4375 + '@esbuild/win32-ia32': 0.25.12 4376 + '@esbuild/win32-x64': 0.25.12 4360 4377 4361 - esbuild@0.25.5: 4378 + esbuild@0.27.0: 4362 4379 optionalDependencies: 4363 - '@esbuild/aix-ppc64': 0.25.5 4364 - '@esbuild/android-arm': 0.25.5 4365 - '@esbuild/android-arm64': 0.25.5 4366 - '@esbuild/android-x64': 0.25.5 4367 - '@esbuild/darwin-arm64': 0.25.5 4368 - '@esbuild/darwin-x64': 0.25.5 4369 - '@esbuild/freebsd-arm64': 0.25.5 4370 - '@esbuild/freebsd-x64': 0.25.5 4371 - '@esbuild/linux-arm': 0.25.5 4372 - '@esbuild/linux-arm64': 0.25.5 4373 - '@esbuild/linux-ia32': 0.25.5 4374 - '@esbuild/linux-loong64': 0.25.5 4375 - '@esbuild/linux-mips64el': 0.25.5 4376 - '@esbuild/linux-ppc64': 0.25.5 4377 - '@esbuild/linux-riscv64': 0.25.5 4378 - '@esbuild/linux-s390x': 0.25.5 4379 - '@esbuild/linux-x64': 0.25.5 4380 - '@esbuild/netbsd-arm64': 0.25.5 4381 - '@esbuild/netbsd-x64': 0.25.5 4382 - '@esbuild/openbsd-arm64': 0.25.5 4383 - '@esbuild/openbsd-x64': 0.25.5 4384 - '@esbuild/sunos-x64': 0.25.5 4385 - '@esbuild/win32-arm64': 0.25.5 4386 - '@esbuild/win32-ia32': 0.25.5 4387 - '@esbuild/win32-x64': 0.25.5 4380 + '@esbuild/aix-ppc64': 0.27.0 4381 + '@esbuild/android-arm': 0.27.0 4382 + '@esbuild/android-arm64': 0.27.0 4383 + '@esbuild/android-x64': 0.27.0 4384 + '@esbuild/darwin-arm64': 0.27.0 4385 + '@esbuild/darwin-x64': 0.27.0 4386 + '@esbuild/freebsd-arm64': 0.27.0 4387 + '@esbuild/freebsd-x64': 0.27.0 4388 + '@esbuild/linux-arm': 0.27.0 4389 + '@esbuild/linux-arm64': 0.27.0 4390 + '@esbuild/linux-ia32': 0.27.0 4391 + '@esbuild/linux-loong64': 0.27.0 4392 + '@esbuild/linux-mips64el': 0.27.0 4393 + '@esbuild/linux-ppc64': 0.27.0 4394 + '@esbuild/linux-riscv64': 0.27.0 4395 + '@esbuild/linux-s390x': 0.27.0 4396 + '@esbuild/linux-x64': 0.27.0 4397 + '@esbuild/netbsd-arm64': 0.27.0 4398 + '@esbuild/netbsd-x64': 0.27.0 4399 + '@esbuild/openbsd-arm64': 0.27.0 4400 + '@esbuild/openbsd-x64': 0.27.0 4401 + '@esbuild/openharmony-arm64': 0.27.0 4402 + '@esbuild/sunos-x64': 0.27.0 4403 + '@esbuild/win32-arm64': 0.27.0 4404 + '@esbuild/win32-ia32': 0.27.0 4405 + '@esbuild/win32-x64': 0.27.0 4388 4406 4389 4407 escalade@3.2.0: {} 4390 4408 ··· 4397 4415 esutils@2.0.3: {} 4398 4416 4399 4417 exit-hook@2.2.1: {} 4400 - 4401 - exsolve@1.0.7: {} 4402 4418 4403 4419 fast-deep-equal@3.1.3: {} 4404 4420 ··· 4412 4428 4413 4429 fast-json-stable-stringify@2.1.0: {} 4414 4430 4415 - fast-uri@3.0.6: {} 4431 + fast-uri@3.1.0: {} 4416 4432 4417 4433 fastq@1.19.1: 4418 4434 dependencies: 4419 4435 reusify: 1.1.0 4420 4436 4421 - fdir@6.4.6(picomatch@4.0.2): 4437 + fdir@6.5.0(picomatch@4.0.3): 4422 4438 optionalDependencies: 4423 - picomatch: 4.0.2 4439 + picomatch: 4.0.3 4424 4440 4425 4441 filelist@1.0.4: 4426 4442 dependencies: ··· 4435 4451 cross-spawn: 7.0.6 4436 4452 signal-exit: 4.1.0 4437 4453 4438 - fraction.js@4.3.7: {} 4454 + fraction.js@5.3.4: {} 4439 4455 4440 4456 fs-extra@9.1.0: 4441 4457 dependencies: 4442 4458 at-least-node: 1.0.0 4443 4459 graceful-fs: 4.2.11 4444 - jsonfile: 6.1.0 4460 + jsonfile: 6.2.0 4445 4461 universalify: 2.0.1 4446 - 4447 - fs.realpath@1.0.0: {} 4448 4462 4449 4463 fsevents@2.3.3: 4450 4464 optional: true ··· 4465 4479 4466 4480 glob-to-regexp@0.4.1: {} 4467 4481 4468 - glob@10.4.5: 4482 + glob@11.1.0: 4469 4483 dependencies: 4470 4484 foreground-child: 3.3.1 4471 - jackspeak: 3.4.3 4472 - minimatch: 9.0.5 4485 + jackspeak: 4.1.1 4486 + minimatch: 10.1.1 4473 4487 minipass: 7.1.2 4474 4488 package-json-from-dist: 1.0.1 4475 - path-scurry: 1.11.1 4476 - 4477 - glob@7.2.3: 4478 - dependencies: 4479 - fs.realpath: 1.0.0 4480 - inflight: 1.0.6 4481 - inherits: 2.0.4 4482 - minimatch: 3.1.2 4483 - once: 1.4.0 4484 - path-is-absolute: 1.0.1 4485 - 4486 - globals@11.12.0: {} 4489 + path-scurry: 2.0.1 4487 4490 4488 4491 graceful-fs@4.2.11: {} 4489 4492 4490 - has-flag@4.0.0: {} 4491 - 4492 - hls.js@1.6.5: {} 4493 + hls.js@1.6.15: {} 4493 4494 4494 4495 html-entities@2.3.3: {} 4495 4496 ··· 4497 4498 4498 4499 idb@8.0.3: {} 4499 4500 4500 - inflight@1.0.6: 4501 - dependencies: 4502 - once: 1.4.0 4503 - wrappy: 1.0.2 4504 - 4505 - inherits@2.0.4: {} 4506 - 4507 - is-arrayish@0.3.2: {} 4501 + is-arrayish@0.3.4: {} 4508 4502 4509 4503 is-binary-path@2.1.0: 4510 4504 dependencies: ··· 4532 4526 4533 4527 isexe@2.0.0: {} 4534 4528 4535 - jackspeak@3.4.3: 4529 + jackspeak@4.1.1: 4536 4530 dependencies: 4537 4531 '@isaacs/cliui': 8.0.2 4538 - optionalDependencies: 4539 - '@pkgjs/parseargs': 0.11.0 4540 4532 4541 - jake@10.9.2: 4533 + jake@10.9.4: 4542 4534 dependencies: 4543 4535 async: 3.2.6 4544 - chalk: 4.1.2 4545 4536 filelist: 1.0.4 4546 - minimatch: 3.1.2 4537 + picocolors: 1.1.1 4547 4538 4548 4539 javascript-natural-sort@0.7.1: {} 4549 4540 ··· 4551 4542 4552 4543 js-tokens@4.0.0: {} 4553 4544 4554 - jsesc@3.0.2: {} 4555 - 4556 4545 jsesc@3.1.0: {} 4557 4546 4558 4547 json-schema-traverse@1.0.0: {} ··· 4561 4550 4562 4551 json5@2.2.3: {} 4563 4552 4564 - jsonfile@6.1.0: 4553 + jsonfile@6.2.0: 4565 4554 dependencies: 4566 4555 universalify: 2.0.1 4567 4556 optionalDependencies: ··· 4583 4572 4584 4573 lodash@4.17.21: {} 4585 4574 4586 - lru-cache@10.4.3: {} 4575 + lru-cache@11.2.4: {} 4587 4576 4588 4577 lru-cache@5.1.1: 4589 4578 dependencies: ··· 4593 4582 dependencies: 4594 4583 sourcemap-codec: 1.4.8 4595 4584 4596 - magic-string@0.30.18: 4585 + mediabunny@1.25.7: 4597 4586 dependencies: 4598 - '@jridgewell/sourcemap-codec': 1.5.5 4587 + '@types/dom-mediacapture-transform': 0.1.11 4588 + '@types/dom-webcodecs': 0.1.13 4599 4589 4600 4590 merge-anything@5.1.7: 4601 4591 dependencies: ··· 4610 4600 4611 4601 mime@3.0.0: {} 4612 4602 4613 - miniflare@4.20250816.1: 4603 + miniflare@4.20251202.1: 4614 4604 dependencies: 4615 4605 '@cspotcode/source-map-support': 0.8.1 4616 4606 acorn: 8.14.0 ··· 4619 4609 glob-to-regexp: 0.4.1 4620 4610 sharp: 0.33.5 4621 4611 stoppable: 1.1.0 4622 - undici: 7.15.0 4623 - workerd: 1.20250816.0 4612 + undici: 7.14.0 4613 + workerd: 1.20251202.0 4624 4614 ws: 8.18.0 4625 4615 youch: 4.1.0-beta.10 4626 4616 zod: 3.22.3 ··· 4628 4618 - bufferutil 4629 4619 - utf-8-validate 4630 4620 4631 - minimatch@3.1.2: 4621 + minimatch@10.1.1: 4632 4622 dependencies: 4633 - brace-expansion: 1.1.12 4623 + '@isaacs/brace-expansion': 5.0.0 4634 4624 4635 4625 minimatch@5.1.6: 4636 4626 dependencies: 4637 4627 brace-expansion: 2.0.2 4638 4628 4639 - minimatch@9.0.5: 4640 - dependencies: 4641 - brace-expansion: 2.0.2 4642 - 4643 4629 minipass@7.1.2: {} 4644 4630 4645 4631 ms@2.1.3: {} ··· 4652 4638 4653 4639 nanoid@3.3.11: {} 4654 4640 4655 - nanoid@5.1.5: {} 4641 + nanoid@5.1.6: {} 4656 4642 4657 - node-releases@2.0.19: {} 4643 + node-releases@2.0.27: {} 4658 4644 4659 4645 normalize-path@3.0.0: {} 4660 4646 ··· 4664 4650 4665 4651 object-hash@3.0.0: {} 4666 4652 4667 - ohash@2.0.11: {} 4668 - 4669 - once@1.4.0: 4670 - dependencies: 4671 - wrappy: 1.0.2 4672 - 4673 4653 package-json-from-dist@1.0.1: {} 4674 4654 4675 4655 parse5@7.3.0: 4676 4656 dependencies: 4677 4657 entities: 6.0.1 4678 4658 4679 - path-is-absolute@1.0.1: {} 4680 - 4681 4659 path-key@3.1.1: {} 4682 4660 4683 4661 path-parse@1.0.7: {} 4684 4662 4685 - path-scurry@1.11.1: 4663 + path-scurry@2.0.1: 4686 4664 dependencies: 4687 - lru-cache: 10.4.3 4665 + lru-cache: 11.2.4 4688 4666 minipass: 7.1.2 4689 4667 4690 4668 path-to-regexp@6.3.0: {} ··· 4695 4673 4696 4674 picomatch@2.3.1: {} 4697 4675 4698 - picomatch@4.0.2: {} 4676 + picomatch@4.0.3: {} 4699 4677 4700 4678 pify@2.3.0: {} 4701 4679 ··· 4706 4684 postcss: 8.5.6 4707 4685 postcss-value-parser: 4.2.0 4708 4686 read-cache: 1.0.0 4709 - resolve: 1.22.10 4687 + resolve: 1.22.11 4710 4688 4711 - postcss-js@4.0.1(postcss@8.5.6): 4689 + postcss-js@4.1.0(postcss@8.5.6): 4712 4690 dependencies: 4713 4691 camelcase-css: 2.0.1 4714 4692 postcss: 8.5.6 4715 4693 4716 - postcss-load-config@4.0.2(postcss@8.5.6): 4694 + postcss-load-config@6.0.1(jiti@1.21.7)(postcss@8.5.6): 4717 4695 dependencies: 4718 4696 lilconfig: 3.1.3 4719 - yaml: 2.8.0 4720 4697 optionalDependencies: 4698 + jiti: 1.21.7 4721 4699 postcss: 8.5.6 4722 4700 4723 4701 postcss-nested@6.2.0(postcss@8.5.6): ··· 4738 4716 picocolors: 1.1.1 4739 4717 source-map-js: 1.2.1 4740 4718 4741 - prettier-plugin-tailwindcss@0.6.13(@trivago/prettier-plugin-sort-imports@5.2.2(prettier@3.6.0))(prettier@3.6.0): 4719 + prettier-plugin-tailwindcss@0.7.2(@trivago/prettier-plugin-sort-imports@5.2.2(prettier@3.7.4))(prettier@3.7.4): 4742 4720 dependencies: 4743 - prettier: 3.6.0 4721 + prettier: 3.7.4 4744 4722 optionalDependencies: 4745 - '@trivago/prettier-plugin-sort-imports': 5.2.2(prettier@3.6.0) 4723 + '@trivago/prettier-plugin-sort-imports': 5.2.2(prettier@3.7.4) 4746 4724 4747 - prettier@3.6.0: {} 4725 + prettier@3.7.4: {} 4748 4726 4749 4727 pretty-bytes@5.6.0: {} 4750 4728 ··· 4768 4746 dependencies: 4769 4747 picomatch: 2.3.1 4770 4748 4771 - regenerate-unicode-properties@10.2.0: 4749 + regenerate-unicode-properties@10.2.2: 4772 4750 dependencies: 4773 4751 regenerate: 1.4.2 4774 4752 4775 4753 regenerate@1.4.2: {} 4776 4754 4777 - regexpu-core@6.2.0: 4755 + regexpu-core@6.4.0: 4778 4756 dependencies: 4779 4757 regenerate: 1.4.2 4780 - regenerate-unicode-properties: 10.2.0 4758 + regenerate-unicode-properties: 10.2.2 4781 4759 regjsgen: 0.8.0 4782 - regjsparser: 0.12.0 4760 + regjsparser: 0.13.0 4783 4761 unicode-match-property-ecmascript: 2.0.0 4784 - unicode-match-property-value-ecmascript: 2.2.0 4762 + unicode-match-property-value-ecmascript: 2.2.1 4785 4763 4786 4764 regjsgen@0.8.0: {} 4787 4765 4788 - regjsparser@0.12.0: 4766 + regjsparser@0.13.0: 4789 4767 dependencies: 4790 - jsesc: 3.0.2 4768 + jsesc: 3.1.0 4791 4769 4792 4770 require-from-string@2.0.2: {} 4793 4771 4794 - resolve@1.22.10: 4772 + resolve@1.22.11: 4795 4773 dependencies: 4796 4774 is-core-module: '@nolyfill/is-core-module@1.0.39' 4797 4775 path-parse: 1.0.7 ··· 4803 4781 optionalDependencies: 4804 4782 fsevents: 2.3.3 4805 4783 4806 - rollup@4.44.0: 4784 + rollup@4.53.3: 4807 4785 dependencies: 4808 4786 '@types/estree': 1.0.8 4809 4787 optionalDependencies: 4810 - '@rollup/rollup-android-arm-eabi': 4.44.0 4811 - '@rollup/rollup-android-arm64': 4.44.0 4812 - '@rollup/rollup-darwin-arm64': 4.44.0 4813 - '@rollup/rollup-darwin-x64': 4.44.0 4814 - '@rollup/rollup-freebsd-arm64': 4.44.0 4815 - '@rollup/rollup-freebsd-x64': 4.44.0 4816 - '@rollup/rollup-linux-arm-gnueabihf': 4.44.0 4817 - '@rollup/rollup-linux-arm-musleabihf': 4.44.0 4818 - '@rollup/rollup-linux-arm64-gnu': 4.44.0 4819 - '@rollup/rollup-linux-arm64-musl': 4.44.0 4820 - '@rollup/rollup-linux-loongarch64-gnu': 4.44.0 4821 - '@rollup/rollup-linux-powerpc64le-gnu': 4.44.0 4822 - '@rollup/rollup-linux-riscv64-gnu': 4.44.0 4823 - '@rollup/rollup-linux-riscv64-musl': 4.44.0 4824 - '@rollup/rollup-linux-s390x-gnu': 4.44.0 4825 - '@rollup/rollup-linux-x64-gnu': 4.44.0 4826 - '@rollup/rollup-linux-x64-musl': 4.44.0 4827 - '@rollup/rollup-win32-arm64-msvc': 4.44.0 4828 - '@rollup/rollup-win32-ia32-msvc': 4.44.0 4829 - '@rollup/rollup-win32-x64-msvc': 4.44.0 4788 + '@rollup/rollup-android-arm-eabi': 4.53.3 4789 + '@rollup/rollup-android-arm64': 4.53.3 4790 + '@rollup/rollup-darwin-arm64': 4.53.3 4791 + '@rollup/rollup-darwin-x64': 4.53.3 4792 + '@rollup/rollup-freebsd-arm64': 4.53.3 4793 + '@rollup/rollup-freebsd-x64': 4.53.3 4794 + '@rollup/rollup-linux-arm-gnueabihf': 4.53.3 4795 + '@rollup/rollup-linux-arm-musleabihf': 4.53.3 4796 + '@rollup/rollup-linux-arm64-gnu': 4.53.3 4797 + '@rollup/rollup-linux-arm64-musl': 4.53.3 4798 + '@rollup/rollup-linux-loong64-gnu': 4.53.3 4799 + '@rollup/rollup-linux-ppc64-gnu': 4.53.3 4800 + '@rollup/rollup-linux-riscv64-gnu': 4.53.3 4801 + '@rollup/rollup-linux-riscv64-musl': 4.53.3 4802 + '@rollup/rollup-linux-s390x-gnu': 4.53.3 4803 + '@rollup/rollup-linux-x64-gnu': 4.53.3 4804 + '@rollup/rollup-linux-x64-musl': 4.53.3 4805 + '@rollup/rollup-openharmony-arm64': 4.53.3 4806 + '@rollup/rollup-win32-arm64-msvc': 4.53.3 4807 + '@rollup/rollup-win32-ia32-msvc': 4.53.3 4808 + '@rollup/rollup-win32-x64-gnu': 4.53.3 4809 + '@rollup/rollup-win32-x64-msvc': 4.53.3 4830 4810 fsevents: 2.3.3 4831 4811 4832 4812 run-parallel@1.2.0: ··· 4835 4815 4836 4816 semver@6.3.1: {} 4837 4817 4838 - semver@7.7.2: {} 4818 + semver@7.7.3: {} 4839 4819 4840 4820 serialize-javascript@6.0.2: 4841 4821 dependencies: 4842 4822 randombytes: 2.1.0 4843 4823 4844 - seroval-plugins@1.3.2(seroval@1.3.2): 4824 + seroval-plugins@1.3.3(seroval@1.3.2): 4845 4825 dependencies: 4846 4826 seroval: 1.3.2 4847 4827 ··· 4850 4830 sharp@0.33.5: 4851 4831 dependencies: 4852 4832 color: 4.2.3 4853 - detect-libc: 2.0.4 4854 - semver: 7.7.2 4833 + detect-libc: 2.1.2 4834 + semver: 7.7.3 4855 4835 optionalDependencies: 4856 4836 '@img/sharp-darwin-arm64': 0.33.5 4857 4837 '@img/sharp-darwin-x64': 0.33.5 ··· 4881 4861 4882 4862 signal-exit@4.1.0: {} 4883 4863 4884 - simple-swizzle@0.2.2: 4864 + simple-swizzle@0.2.4: 4885 4865 dependencies: 4886 - is-arrayish: 0.3.2 4866 + is-arrayish: 0.3.4 4887 4867 4888 4868 smob@1.5.0: {} 4889 4869 4890 - solid-floating-ui@0.2.1(@floating-ui/dom@1.7.1)(solid-js@1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)): 4870 + solid-floating-ui@0.2.1(@floating-ui/dom@1.7.4)(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)): 4891 4871 dependencies: 4892 - '@floating-ui/dom': 1.7.1 4893 - solid-js: 1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 4872 + '@floating-ui/dom': 1.7.4 4873 + solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 4894 4874 4895 - solid-js@1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7): 4875 + solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7): 4896 4876 dependencies: 4897 - csstype: 3.1.3 4877 + csstype: 3.2.3 4898 4878 seroval: 1.3.2 4899 - seroval-plugins: 1.3.2(seroval@1.3.2) 4879 + seroval-plugins: 1.3.3(seroval@1.3.2) 4900 4880 4901 - solid-refresh@0.6.3(solid-js@1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)): 4881 + solid-refresh@0.6.3(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)): 4902 4882 dependencies: 4903 - '@babel/generator': 7.27.5 4883 + '@babel/generator': 7.28.5 4904 4884 '@babel/helper-module-imports': 7.27.1 4905 - '@babel/types': 7.27.6 4906 - solid-js: 1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 4885 + '@babel/types': 7.28.5 4886 + solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 4907 4887 transitivePeerDependencies: 4908 4888 - supports-color 4909 4889 ··· 4934 4914 dependencies: 4935 4915 eastasianwidth: 0.2.0 4936 4916 emoji-regex: 9.2.2 4937 - strip-ansi: 7.1.0 4917 + strip-ansi: 7.1.2 4938 4918 4939 4919 stringify-object@3.3.0: 4940 4920 dependencies: ··· 4946 4926 dependencies: 4947 4927 ansi-regex: 5.0.1 4948 4928 4949 - strip-ansi@7.1.0: 4929 + strip-ansi@7.1.2: 4950 4930 dependencies: 4951 - ansi-regex: 6.1.0 4931 + ansi-regex: 6.2.2 4952 4932 4953 4933 strip-comments@2.0.1: {} 4954 4934 4955 - sucrase@3.35.0: 4935 + sucrase@3.35.1: 4956 4936 dependencies: 4957 - '@jridgewell/gen-mapping': 0.3.8 4937 + '@jridgewell/gen-mapping': 0.3.13 4958 4938 commander: 4.1.1 4959 - glob: 10.4.5 4960 4939 lines-and-columns: 1.2.4 4961 4940 mz: 2.7.0 4962 4941 pirates: 4.0.7 4942 + tinyglobby: 0.2.15 4963 4943 ts-interface-checker: 0.1.13 4964 4944 4965 - supports-color@10.2.0: {} 4966 - 4967 - supports-color@7.2.0: 4968 - dependencies: 4969 - has-flag: 4.0.0 4945 + supports-color@10.2.2: {} 4970 4946 4971 4947 supports-preserve-symlinks-flag@1.0.0: {} 4972 4948 4973 - tailwindcss@3.4.17: 4949 + tailwindcss@3.4.18: 4974 4950 dependencies: 4975 4951 '@alloc/quick-lru': 5.2.0 4976 4952 arg: 5.0.2 ··· 4988 4964 picocolors: 1.1.1 4989 4965 postcss: 8.5.6 4990 4966 postcss-import: 15.1.0(postcss@8.5.6) 4991 - postcss-js: 4.0.1(postcss@8.5.6) 4992 - postcss-load-config: 4.0.2(postcss@8.5.6) 4967 + postcss-js: 4.1.0(postcss@8.5.6) 4968 + postcss-load-config: 6.0.1(jiti@1.21.7)(postcss@8.5.6) 4993 4969 postcss-nested: 6.2.0(postcss@8.5.6) 4994 4970 postcss-selector-parser: 6.1.2 4995 - resolve: 1.22.10 4996 - sucrase: 3.35.0 4971 + resolve: 1.22.11 4972 + sucrase: 3.35.1 4997 4973 transitivePeerDependencies: 4998 - - ts-node 4974 + - tsx 4975 + - yaml 4999 4976 5000 4977 temp-dir@2.0.0: {} 5001 4978 ··· 5006 4983 type-fest: 0.16.0 5007 4984 unique-string: 2.0.0 5008 4985 5009 - terser@5.43.1: 4986 + terser@5.44.1: 5010 4987 dependencies: 5011 - '@jridgewell/source-map': 0.3.6 4988 + '@jridgewell/source-map': 0.3.11 5012 4989 acorn: 8.15.0 5013 4990 commander: 2.20.3 5014 4991 source-map-support: 0.5.21 ··· 5021 4998 dependencies: 5022 4999 any-promise: 1.3.0 5023 5000 5024 - tinyglobby@0.2.14: 5001 + tinyglobby@0.2.15: 5025 5002 dependencies: 5026 - fdir: 6.4.6(picomatch@4.0.2) 5027 - picomatch: 4.0.2 5003 + fdir: 6.5.0(picomatch@4.0.3) 5004 + picomatch: 4.0.3 5028 5005 5029 5006 to-regex-range@5.0.1: 5030 5007 dependencies: ··· 5041 5018 5042 5019 type-fest@0.16.0: {} 5043 5020 5044 - typescript@5.8.3: {} 5045 - 5046 - ufo@1.6.1: {} 5021 + typescript@5.9.3: {} 5047 5022 5048 - undici-types@7.10.0: {} 5023 + undici-types@7.16.0: {} 5049 5024 5050 - undici@7.15.0: {} 5025 + undici@7.14.0: {} 5051 5026 5052 - unenv@2.0.0-rc.19: 5027 + unenv@2.0.0-rc.24: 5053 5028 dependencies: 5054 - defu: 6.1.4 5055 - exsolve: 1.0.7 5056 - ohash: 2.0.11 5057 5029 pathe: 2.0.3 5058 - ufo: 1.6.1 5059 5030 5060 5031 unicode-canonical-property-names-ecmascript@2.0.1: {} 5061 5032 5062 5033 unicode-match-property-ecmascript@2.0.0: 5063 5034 dependencies: 5064 5035 unicode-canonical-property-names-ecmascript: 2.0.1 5065 - unicode-property-aliases-ecmascript: 2.1.0 5036 + unicode-property-aliases-ecmascript: 2.2.0 5066 5037 5067 - unicode-match-property-value-ecmascript@2.2.0: {} 5038 + unicode-match-property-value-ecmascript@2.2.1: {} 5068 5039 5069 - unicode-property-aliases-ecmascript@2.1.0: {} 5040 + unicode-property-aliases-ecmascript@2.2.0: {} 5070 5041 5071 5042 unique-string@2.0.0: 5072 5043 dependencies: ··· 5076 5047 5077 5048 upath@1.2.0: {} 5078 5049 5079 - update-browserslist-db@1.1.3(browserslist@4.25.0): 5050 + update-browserslist-db@1.2.2(browserslist@4.28.1): 5080 5051 dependencies: 5081 - browserslist: 4.25.0 5052 + browserslist: 4.28.1 5082 5053 escalade: 3.2.0 5083 5054 picocolors: 1.1.1 5084 5055 5085 5056 util-deprecate@1.0.2: {} 5086 5057 5087 - validate-html-nesting@1.2.3: {} 5088 - 5089 - vite-plugin-pwa@0.21.0(patch_hash=003379ded749ad87080f87b428b17f04c4c88b6b64544df4d928aab76fbf6325)(@types/babel__core@7.20.5)(vite@6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0)): 5058 + vite-plugin-pwa@1.1.0(patch_hash=003379ded749ad87080f87b428b17f04c4c88b6b64544df4d928aab76fbf6325)(@types/babel__core@7.20.5)(vite@7.2.6(@types/node@24.10.1)(jiti@1.21.7)(terser@5.44.1)): 5090 5059 dependencies: 5091 - debug: 4.4.1 5060 + debug: 4.4.3 5092 5061 pretty-bytes: 6.1.1 5093 - tinyglobby: 0.2.14 5094 - vite: 6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0) 5095 - workbox-build: 7.3.0(@types/babel__core@7.20.5) 5096 - workbox-window: 7.3.0 5062 + tinyglobby: 0.2.15 5063 + vite: 7.2.6(@types/node@24.10.1)(jiti@1.21.7)(terser@5.44.1) 5064 + workbox-build: 7.4.0(@types/babel__core@7.20.5) 5065 + workbox-window: 7.4.0 5097 5066 transitivePeerDependencies: 5098 5067 - '@types/babel__core' 5099 5068 - supports-color 5100 5069 5101 - vite-plugin-solid@2.11.6(solid-js@1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))(vite@6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0)): 5070 + vite-plugin-solid@2.11.10(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7))(vite@7.2.6(@types/node@24.10.1)(jiti@1.21.7)(terser@5.44.1)): 5102 5071 dependencies: 5103 - '@babel/core': 7.27.4 5072 + '@babel/core': 7.28.5 5104 5073 '@types/babel__core': 7.20.5 5105 - babel-preset-solid: 1.9.6(@babel/core@7.27.4) 5074 + babel-preset-solid: 1.9.10(@babel/core@7.28.5)(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)) 5106 5075 merge-anything: 5.1.7 5107 - solid-js: 1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 5108 - solid-refresh: 0.6.3(solid-js@1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)) 5109 - vite: 6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0) 5110 - vitefu: 1.0.7(vite@6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0)) 5076 + solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 5077 + solid-refresh: 0.6.3(solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)) 5078 + vite: 7.2.6(@types/node@24.10.1)(jiti@1.21.7)(terser@5.44.1) 5079 + vitefu: 1.1.1(vite@7.2.6(@types/node@24.10.1)(jiti@1.21.7)(terser@5.44.1)) 5111 5080 transitivePeerDependencies: 5112 5081 - supports-color 5113 5082 5114 - vite@6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0): 5083 + vite@7.2.6(@types/node@24.10.1)(jiti@1.21.7)(terser@5.44.1): 5115 5084 dependencies: 5116 - esbuild: 0.25.5 5117 - fdir: 6.4.6(picomatch@4.0.2) 5118 - picomatch: 4.0.2 5085 + esbuild: 0.25.12 5086 + fdir: 6.5.0(picomatch@4.0.3) 5087 + picomatch: 4.0.3 5119 5088 postcss: 8.5.6 5120 - rollup: 4.44.0 5121 - tinyglobby: 0.2.14 5089 + rollup: 4.53.3 5090 + tinyglobby: 0.2.15 5122 5091 optionalDependencies: 5123 - '@types/node': 24.3.0 5092 + '@types/node': 24.10.1 5124 5093 fsevents: 2.3.3 5125 5094 jiti: 1.21.7 5126 - terser: 5.43.1 5127 - yaml: 2.8.0 5095 + terser: 5.44.1 5128 5096 5129 - vitefu@1.0.7(vite@6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0)): 5097 + vitefu@1.1.1(vite@7.2.6(@types/node@24.10.1)(jiti@1.21.7)(terser@5.44.1)): 5130 5098 optionalDependencies: 5131 - vite: 6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0) 5099 + vite: 7.2.6(@types/node@24.10.1)(jiti@1.21.7)(terser@5.44.1) 5132 5100 5133 5101 webidl-conversions@4.0.2: {} 5134 - 5135 - webm-muxer@5.1.3: 5136 - dependencies: 5137 - '@types/dom-webcodecs': 0.1.15 5138 - '@types/wicg-file-system-access': 2020.9.8 5139 5102 5140 5103 whatwg-url@7.1.0: 5141 5104 dependencies: ··· 5147 5110 dependencies: 5148 5111 isexe: 2.0.0 5149 5112 5150 - workbox-background-sync@7.3.0: 5113 + workbox-background-sync@7.4.0: 5151 5114 dependencies: 5152 5115 idb: 7.1.1 5153 - workbox-core: 7.3.0 5116 + workbox-core: 7.4.0 5154 5117 5155 - workbox-broadcast-update@7.3.0: 5118 + workbox-broadcast-update@7.4.0: 5156 5119 dependencies: 5157 - workbox-core: 7.3.0 5120 + workbox-core: 7.4.0 5158 5121 5159 - workbox-build@7.3.0(@types/babel__core@7.20.5): 5122 + workbox-build@7.4.0(@types/babel__core@7.20.5): 5160 5123 dependencies: 5161 5124 '@apideck/better-ajv-errors': 0.3.6(ajv@8.17.1) 5162 - '@babel/core': 7.27.4 5163 - '@babel/preset-env': 7.27.2(@babel/core@7.27.4) 5164 - '@babel/runtime': 7.27.6 5165 - '@rollup/plugin-babel': 5.3.1(@babel/core@7.27.4)(@types/babel__core@7.20.5)(rollup@2.79.2) 5125 + '@babel/core': 7.28.5 5126 + '@babel/preset-env': 7.28.5(@babel/core@7.28.5) 5127 + '@babel/runtime': 7.28.4 5128 + '@rollup/plugin-babel': 5.3.1(@babel/core@7.28.5)(@types/babel__core@7.20.5)(rollup@2.79.2) 5166 5129 '@rollup/plugin-node-resolve': 15.3.1(rollup@2.79.2) 5167 5130 '@rollup/plugin-replace': 2.4.2(rollup@2.79.2) 5168 5131 '@rollup/plugin-terser': 0.4.4(rollup@2.79.2) ··· 5171 5134 common-tags: 1.8.2 5172 5135 fast-json-stable-stringify: 2.1.0 5173 5136 fs-extra: 9.1.0 5174 - glob: 7.2.3 5137 + glob: 11.1.0 5175 5138 lodash: 4.17.21 5176 5139 pretty-bytes: 5.6.0 5177 5140 rollup: 2.79.2 ··· 5180 5143 strip-comments: 2.0.1 5181 5144 tempy: 0.6.0 5182 5145 upath: 1.2.0 5183 - workbox-background-sync: 7.3.0 5184 - workbox-broadcast-update: 7.3.0 5185 - workbox-cacheable-response: 7.3.0 5186 - workbox-core: 7.3.0 5187 - workbox-expiration: 7.3.0 5188 - workbox-google-analytics: 7.3.0 5189 - workbox-navigation-preload: 7.3.0 5190 - workbox-precaching: 7.3.0(patch_hash=ffcec6cb23aa5ae1a2fe2de772c169a4f653a5ae7dc6b03415109f70d86ed35b) 5191 - workbox-range-requests: 7.3.0 5192 - workbox-recipes: 7.3.0 5193 - workbox-routing: 7.3.0 5194 - workbox-strategies: 7.3.0 5195 - workbox-streams: 7.3.0 5196 - workbox-sw: 7.3.0 5197 - workbox-window: 7.3.0 5146 + workbox-background-sync: 7.4.0 5147 + workbox-broadcast-update: 7.4.0 5148 + workbox-cacheable-response: 7.4.0 5149 + workbox-core: 7.4.0 5150 + workbox-expiration: 7.4.0 5151 + workbox-google-analytics: 7.4.0 5152 + workbox-navigation-preload: 7.4.0 5153 + workbox-precaching: 7.4.0(patch_hash=ffcec6cb23aa5ae1a2fe2de772c169a4f653a5ae7dc6b03415109f70d86ed35b) 5154 + workbox-range-requests: 7.4.0 5155 + workbox-recipes: 7.4.0 5156 + workbox-routing: 7.4.0 5157 + workbox-strategies: 7.4.0 5158 + workbox-streams: 7.4.0 5159 + workbox-sw: 7.4.0 5160 + workbox-window: 7.4.0 5198 5161 transitivePeerDependencies: 5199 5162 - '@types/babel__core' 5200 5163 - supports-color 5201 5164 5202 - workbox-cacheable-response@7.3.0: 5165 + workbox-cacheable-response@7.4.0: 5203 5166 dependencies: 5204 - workbox-core: 7.3.0 5167 + workbox-core: 7.4.0 5205 5168 5206 - workbox-core@7.3.0: {} 5169 + workbox-core@7.4.0: {} 5207 5170 5208 - workbox-expiration@7.3.0: 5171 + workbox-expiration@7.4.0: 5209 5172 dependencies: 5210 5173 idb: 7.1.1 5211 - workbox-core: 7.3.0 5174 + workbox-core: 7.4.0 5212 5175 5213 - workbox-google-analytics@7.3.0: 5176 + workbox-google-analytics@7.4.0: 5214 5177 dependencies: 5215 - workbox-background-sync: 7.3.0 5216 - workbox-core: 7.3.0 5217 - workbox-routing: 7.3.0 5218 - workbox-strategies: 7.3.0 5178 + workbox-background-sync: 7.4.0 5179 + workbox-core: 7.4.0 5180 + workbox-routing: 7.4.0 5181 + workbox-strategies: 7.4.0 5219 5182 5220 - workbox-navigation-preload@7.3.0: 5183 + workbox-navigation-preload@7.4.0: 5221 5184 dependencies: 5222 - workbox-core: 7.3.0 5185 + workbox-core: 7.4.0 5223 5186 5224 - workbox-precaching@7.3.0(patch_hash=ffcec6cb23aa5ae1a2fe2de772c169a4f653a5ae7dc6b03415109f70d86ed35b): 5187 + workbox-precaching@7.4.0(patch_hash=ffcec6cb23aa5ae1a2fe2de772c169a4f653a5ae7dc6b03415109f70d86ed35b): 5225 5188 dependencies: 5226 - workbox-core: 7.3.0 5227 - workbox-routing: 7.3.0 5228 - workbox-strategies: 7.3.0 5189 + workbox-core: 7.4.0 5190 + workbox-routing: 7.4.0 5191 + workbox-strategies: 7.4.0 5229 5192 5230 - workbox-range-requests@7.3.0: 5193 + workbox-range-requests@7.4.0: 5231 5194 dependencies: 5232 - workbox-core: 7.3.0 5195 + workbox-core: 7.4.0 5233 5196 5234 - workbox-recipes@7.3.0: 5197 + workbox-recipes@7.4.0: 5235 5198 dependencies: 5236 - workbox-cacheable-response: 7.3.0 5237 - workbox-core: 7.3.0 5238 - workbox-expiration: 7.3.0 5239 - workbox-precaching: 7.3.0(patch_hash=ffcec6cb23aa5ae1a2fe2de772c169a4f653a5ae7dc6b03415109f70d86ed35b) 5240 - workbox-routing: 7.3.0 5241 - workbox-strategies: 7.3.0 5199 + workbox-cacheable-response: 7.4.0 5200 + workbox-core: 7.4.0 5201 + workbox-expiration: 7.4.0 5202 + workbox-precaching: 7.4.0(patch_hash=ffcec6cb23aa5ae1a2fe2de772c169a4f653a5ae7dc6b03415109f70d86ed35b) 5203 + workbox-routing: 7.4.0 5204 + workbox-strategies: 7.4.0 5242 5205 5243 - workbox-routing@7.3.0: 5206 + workbox-routing@7.4.0: 5244 5207 dependencies: 5245 - workbox-core: 7.3.0 5208 + workbox-core: 7.4.0 5246 5209 5247 - workbox-strategies@7.3.0: 5210 + workbox-strategies@7.4.0: 5248 5211 dependencies: 5249 - workbox-core: 7.3.0 5212 + workbox-core: 7.4.0 5250 5213 5251 - workbox-streams@7.3.0: 5214 + workbox-streams@7.4.0: 5252 5215 dependencies: 5253 - workbox-core: 7.3.0 5254 - workbox-routing: 7.3.0 5216 + workbox-core: 7.4.0 5217 + workbox-routing: 7.4.0 5255 5218 5256 - workbox-sw@7.3.0: {} 5219 + workbox-sw@7.4.0: {} 5257 5220 5258 - workbox-window@7.3.0: 5221 + workbox-window@7.4.0: 5259 5222 dependencies: 5260 5223 '@types/trusted-types': 2.0.7 5261 - workbox-core: 7.3.0 5224 + workbox-core: 7.4.0 5262 5225 5263 - workerd@1.20250816.0: 5226 + workerd@1.20251202.0: 5264 5227 optionalDependencies: 5265 - '@cloudflare/workerd-darwin-64': 1.20250816.0 5266 - '@cloudflare/workerd-darwin-arm64': 1.20250816.0 5267 - '@cloudflare/workerd-linux-64': 1.20250816.0 5268 - '@cloudflare/workerd-linux-arm64': 1.20250816.0 5269 - '@cloudflare/workerd-windows-64': 1.20250816.0 5228 + '@cloudflare/workerd-darwin-64': 1.20251202.0 5229 + '@cloudflare/workerd-darwin-arm64': 1.20251202.0 5230 + '@cloudflare/workerd-linux-64': 1.20251202.0 5231 + '@cloudflare/workerd-linux-arm64': 1.20251202.0 5232 + '@cloudflare/workerd-windows-64': 1.20251202.0 5270 5233 5271 - wrangler@4.32.0: 5234 + wrangler@4.53.0: 5272 5235 dependencies: 5273 - '@cloudflare/kv-asset-handler': 0.4.0 5274 - '@cloudflare/unenv-preset': 2.6.2(unenv@2.0.0-rc.19)(workerd@1.20250816.0) 5236 + '@cloudflare/kv-asset-handler': 0.4.1 5237 + '@cloudflare/unenv-preset': 2.7.13(unenv@2.0.0-rc.24)(workerd@1.20251202.0) 5275 5238 blake3-wasm: 2.1.5 5276 - esbuild: 0.25.4 5277 - miniflare: 4.20250816.1 5239 + esbuild: 0.27.0 5240 + miniflare: 4.20251202.1 5278 5241 path-to-regexp: 6.3.0 5279 - unenv: 2.0.0-rc.19 5280 - workerd: 1.20250816.0 5242 + unenv: 2.0.0-rc.24 5243 + workerd: 1.20251202.0 5281 5244 optionalDependencies: 5282 5245 fsevents: 2.3.3 5283 5246 transitivePeerDependencies: ··· 5292 5255 5293 5256 wrap-ansi@8.1.0: 5294 5257 dependencies: 5295 - ansi-styles: 6.2.1 5258 + ansi-styles: 6.2.3 5296 5259 string-width: 5.1.2 5297 - strip-ansi: 7.1.0 5298 - 5299 - wrappy@1.0.2: {} 5260 + strip-ansi: 7.1.2 5300 5261 5301 5262 ws@8.18.0: {} 5302 5263 5303 5264 yallist@3.1.1: {} 5304 - 5305 - yaml@2.8.0: {} 5306 5265 5307 5266 youch-core@0.3.3: 5308 5267 dependencies: ··· 5312 5271 youch@4.1.0-beta.10: 5313 5272 dependencies: 5314 5273 '@poppinss/colors': 4.1.5 5315 - '@poppinss/dumper': 0.6.4 5316 - '@speed-highlight/core': 1.2.7 5317 - cookie: 1.0.2 5274 + '@poppinss/dumper': 0.6.5 5275 + '@speed-highlight/core': 1.2.12 5276 + cookie: 1.1.1 5318 5277 youch-core: 0.3.3 5319 5278 5320 5279 zod@3.22.3: {}
-12
public/oauth-client-metadata.json
··· 1 - { 2 - "client_id": "https://aglais.pages.dev/oauth-client-metadata.json", 3 - "client_uri": "https://aglais.pages.dev", 4 - "client_name": "Aglais", 5 - "application_type": "web", 6 - "scope": "atproto transition:generic transition:chat.bsky", 7 - "grant_types": ["authorization_code", "refresh_token"], 8 - "redirect_uris": ["https://aglais.pages.dev/oauth/callback"], 9 - "response_types": ["code"], 10 - "token_endpoint_auth_method": "none", 11 - "dpop_bound_access_tokens": true 12 - }
+67
scripts/generate-oauth-keys.js
··· 1 + import * as fs from 'node:fs/promises'; 2 + 3 + import * as v from '@badrap/valita'; 4 + 5 + import * as TID from '@atcute/tid'; 6 + 7 + const jwksSchema = v.object({ 8 + keys: v.array( 9 + v.object({ 10 + privateKey: v.unknown(), 11 + publicKey: v.unknown(), 12 + }), 13 + ), 14 + }); 15 + 16 + /** @type {v.Infer<typeof jwksSchema> | undefined} */ 17 + let jwks; 18 + try { 19 + const raw = await fs.readFile('./oauth-credentials.local.json', 'utf-8'); 20 + const json = JSON.parse(raw); 21 + 22 + jwks = jwksSchema.parse(json, { mode: 'passthrough' }); 23 + } catch (err) { 24 + if (err.code !== 'ENOENT') { 25 + throw err; 26 + } 27 + 28 + jwks = { 29 + keys: [], 30 + }; 31 + } 32 + 33 + const { publicKey, privateKey } = await crypto.subtle.generateKey( 34 + { 35 + name: 'ECDSA', 36 + namedCurve: 'P-256', 37 + }, 38 + true, 39 + ['sign', 'verify'], 40 + ); 41 + 42 + const kid = `aglais-${TID.now()}`; 43 + const privateJWK = await crypto.subtle.exportKey('jwk', privateKey); 44 + const publicJWK = await crypto.subtle.exportKey('jwk', publicKey); 45 + 46 + jwks = { 47 + keys: [ 48 + { 49 + privateKey: { 50 + ...privateJWK, 51 + kid: kid, 52 + }, 53 + publicKey: { 54 + kty: publicJWK.kty, 55 + crv: publicJWK.crv, 56 + x: publicJWK.x, 57 + y: publicJWK.y, 58 + use: 'sig', 59 + alg: 'ES256', 60 + kid: kid, 61 + }, 62 + }, 63 + ...jwks.keys, 64 + ], 65 + }; 66 + 67 + await fs.writeFile('./oauth-credentials.local.json', JSON.stringify(jwks, null, '\t') + '\n');
+204 -4
server/index.ts
··· 1 + import { type DidDocument, getAtprotoHandle, getPdsEndpoint } from '@atcute/identity'; 2 + import { 3 + AmbiguousHandleError, 4 + CompositeDidDocumentResolver, 5 + CompositeHandleResolver, 6 + DidNotFoundError, 7 + DocumentNotFoundError, 8 + DohJsonHandleResolver, 9 + ImproperDidError, 10 + InvalidResolvedHandleError, 11 + PlcDidDocumentResolver, 12 + UnsupportedDidMethodError, 13 + WebDidDocumentResolver, 14 + WellKnownHandleResolver, 15 + } from '@atcute/identity-resolver'; 16 + import { type Did, type Handle, type ResourceUri, isDid } from '@atcute/lexicons/syntax'; 17 + import { AuthRequiredError, InvalidRequestError, XRPCRouter, json } from '@atcute/xrpc-server'; 18 + 19 + import * as jwks from '../oauth-credentials.local.json' with { type: 'json' }; 20 + 21 + import { InvalidDPoPError, createClientAssertion, verifyDPoP } from './jwt'; 22 + import { requestAssertionSchema, resolveIdentitySchema } from './lexicons'; 23 + 24 + const privateKeyId = jwks.keys[0].privateKey.kid; 25 + const privateKey = await crypto.subtle.importKey( 26 + 'jwk', 27 + jwks.keys[0].privateKey, 28 + { name: 'ECDSA', namedCurve: 'P-256' }, 29 + false, 30 + ['sign'], 31 + ); 32 + 33 + const handleResolver = new CompositeHandleResolver({ 34 + methods: { 35 + dns: new DohJsonHandleResolver({ dohUrl: 'https://mozilla.cloudflare-dns.com/dns-query' }), 36 + http: new WellKnownHandleResolver(), 37 + }, 38 + }); 39 + 40 + const didDocumentResolver = new CompositeDidDocumentResolver<string>({ 41 + methods: { 42 + plc: new PlcDidDocumentResolver(), 43 + web: new WebDidDocumentResolver(), 44 + }, 45 + }); 46 + 47 + const cache = caches.default; 48 + const contexts = new WeakMap<Request, ExecutionContext>(); 49 + 50 + const router = new XRPCRouter({ 51 + middlewares: [ 52 + async (request, next) => { 53 + if (request.method !== 'GET') { 54 + return await next(request); 55 + } 56 + 57 + let response = await cache.match(request); 58 + if (response === undefined) { 59 + response = await next(request); 60 + 61 + if (response.status === 200 && response.headers.has('cache-control')) { 62 + const ctx = contexts.get(request); 63 + if (ctx) { 64 + ctx.waitUntil(cache.put(request, response.clone())); 65 + } else { 66 + await cache.put(request, response.clone()); 67 + } 68 + } 69 + } 70 + 71 + return response; 72 + }, 73 + ], 74 + }); 75 + 76 + router.addProcedure(requestAssertionSchema, { 77 + async handler({ input: { jkt, aud }, request }) { 78 + if (request.headers.get('sec-fetch-site') !== 'same-origin') { 79 + throw new AuthRequiredError({ description: 'invalid origin' }); 80 + } 81 + 82 + const dpop = request.headers.get('dpop'); 83 + try { 84 + await verifyDPoP(dpop, jkt); 85 + } catch (err) { 86 + if (err instanceof InvalidDPoPError) { 87 + throw new AuthRequiredError({ description: err.message }); 88 + } 89 + 90 + throw err; 91 + } 92 + 93 + const url = new URL(request.url); 94 + const assertion = await createClientAssertion({ 95 + privateKey: privateKey, 96 + 97 + client_id: `https://${url.host}/oauth-client-metadata.json`, 98 + kid: privateKeyId, 99 + aud: aud, 100 + }); 101 + 102 + return json({ 103 + assertion: assertion, 104 + }); 105 + }, 106 + }); 107 + 108 + router.addQuery(resolveIdentitySchema, { 109 + async handler({ params: { identifier } }) { 110 + const identifierIsDid = isDid(identifier); 111 + 112 + let did: Did; 113 + if (identifierIsDid) { 114 + did = identifier; 115 + } else { 116 + try { 117 + did = await handleResolver.resolve(identifier); 118 + } catch (err) { 119 + if (err instanceof DidNotFoundError) { 120 + throw new InvalidRequestError({ description: `no did found under that handle` }); 121 + } 122 + 123 + if (err instanceof InvalidResolvedHandleError) { 124 + throw new InvalidRequestError({ description: `did found but is invalid atproto did` }); 125 + } 126 + 127 + if (err instanceof AmbiguousHandleError) { 128 + throw new InvalidRequestError({ description: `multiple did found under that handle` }); 129 + } 130 + 131 + throw err; 132 + } 133 + } 134 + 135 + let doc: DidDocument; 136 + try { 137 + doc = await didDocumentResolver.resolve(did); 138 + } catch (err) { 139 + if (err instanceof DocumentNotFoundError) { 140 + throw new InvalidRequestError({ description: `no document found under that did` }); 141 + } 142 + 143 + if (err instanceof UnsupportedDidMethodError) { 144 + throw new InvalidRequestError({ description: `unsupported did method` }); 145 + } 146 + 147 + if (err instanceof ImproperDidError) { 148 + throw new InvalidRequestError({ description: `invalid did` }); 149 + } 150 + 151 + throw err; 152 + } 153 + 154 + const pds = getPdsEndpoint(doc); 155 + if (!pds) { 156 + throw new InvalidRequestError({ description: `missing pds endpoint` }); 157 + } 158 + 159 + let handle: Handle = 'handle.invalid'; 160 + if (identifierIsDid) { 161 + const writtenHandle = getAtprotoHandle(doc); 162 + if (writtenHandle) { 163 + try { 164 + const resolved = await handleResolver.resolve(writtenHandle); 165 + 166 + if (resolved === did) { 167 + handle = writtenHandle; 168 + } 169 + } catch {} 170 + } 171 + } else if (getAtprotoHandle(doc) === identifier) { 172 + handle = identifier; 173 + } 174 + 175 + return json({ 176 + did: did, 177 + handle: handle, 178 + pds: new URL(pds).href as ResourceUri, 179 + }); 180 + }, 181 + }); 182 + 1 183 export default { 2 - fetch(request) { 184 + fetch(request, _env, ctx) { 3 185 const url = new URL(request.url); 4 186 5 - if (url.pathname.startsWith('/api/')) { 187 + if (url.pathname === '/oauth-client-metadata.json') { 6 188 return Response.json({ 7 - name: 'Cloudflare', 189 + client_id: `https://${url.host}/oauth-client-metadata.json`, 190 + client_uri: `https://${url.host}`, 191 + client_name: import.meta.env.VITE_APP_NAME, 192 + application_type: 'web', 193 + scope: 'atproto transition:generic transition:chat.bsky', 194 + grant_types: ['authorization_code', 'refresh_token'], 195 + redirect_uris: [`https://${url.host}/oauth/callback`], 196 + response_types: ['code'], 197 + token_endpoint_auth_method: 'private_key_jwt', 198 + token_endpoint_auth_signing_alg: 'ES256', 199 + jwks_uri: `https://${url.host}/oauth-jwks.json`, 200 + dpop_bound_access_tokens: true, 8 201 }); 9 202 } 10 203 11 - return new Response(null, { status: 404 }); 204 + if (url.pathname === '/oauth-jwks.json') { 205 + return Response.json({ 206 + keys: jwks.keys.map((key) => key.publicKey), 207 + }); 208 + } 209 + 210 + contexts.set(request, ctx); 211 + return router.fetch(request); 12 212 }, 13 213 } satisfies ExportedHandler<Env>;
+206
server/jwt.ts
··· 1 + import * as v from '@badrap/valita'; 2 + 3 + import { fromBase64Url, toBase64Url } from '@atcute/multibase'; 4 + import { decodeUtf8From, encodeUtf8 } from '@atcute/uint8array'; 5 + 6 + export class MalformedJwtError extends Error { 7 + name = 'MalformedJwtError'; 8 + 9 + constructor(options?: ErrorOptions) { 10 + super(`malformed JWT`, options); 11 + } 12 + } 13 + 14 + export interface DecodedJwt<THeader, TPayload> { 15 + header: THeader; 16 + payload: TPayload; 17 + message: Uint8Array<ArrayBuffer>; 18 + signature: Uint8Array<ArrayBuffer>; 19 + } 20 + 21 + const decodeJwt = <THeader, TPayload>( 22 + input: string, 23 + schemas: { header: v.Type<THeader>; payload: v.Type<TPayload> }, 24 + ): DecodedJwt<THeader, TPayload> => { 25 + const parts = input.split('.'); 26 + if (parts.length !== 3) { 27 + throw new MalformedJwtError(); 28 + } 29 + 30 + const [headerString, payloadString, signatureString] = parts; 31 + 32 + const header = decodeJwtPortion(schemas.header, headerString); 33 + const payload = decodeJwtPortion(schemas.payload, payloadString); 34 + const signature = decodeJwtSignature(signatureString); 35 + 36 + return { 37 + header: header, 38 + payload: payload, 39 + message: encodeUtf8(`${headerString}.${payloadString}`), 40 + signature: signature, 41 + }; 42 + }; 43 + 44 + const decodeJwtPortion = <T>(schema: v.Type<T>, input: string): T => { 45 + try { 46 + const raw = decodeUtf8From(fromBase64Url(input)); 47 + const json = JSON.parse(raw); 48 + 49 + return schema.parse(json, { mode: 'passthrough' }); 50 + } catch (err) { 51 + throw new MalformedJwtError({ cause: err }); 52 + } 53 + }; 54 + 55 + const decodeJwtSignature = (input: string): Uint8Array<ArrayBuffer> => { 56 + try { 57 + return fromBase64Url(input); 58 + } catch (err) { 59 + throw new MalformedJwtError({ cause: err }); 60 + } 61 + }; 62 + 63 + const encodeJwtPortion = (data: unknown): string => { 64 + return toBase64Url(encodeUtf8(JSON.stringify(data))); 65 + }; 66 + 67 + const encodeJwtSignature = (data: Uint8Array): string => { 68 + return toBase64Url(data); 69 + }; 70 + 71 + // #region DPoP 72 + export class InvalidDPoPError extends Error { 73 + name = 'InvalidDPoPError'; 74 + } 75 + 76 + const dpopHeaderSchema = v.object({ 77 + typ: v.literal('dpop+jwt'), 78 + alg: v.literal('ES256'), 79 + jwk: v.object({ 80 + kty: v.literal('EC'), 81 + crv: v.literal('P-256'), 82 + x: v.string(), 83 + y: v.string(), 84 + }), 85 + }); 86 + 87 + const dpopPayloadSchema = v.object({ 88 + htm: v.string(), 89 + htu: v.string(), 90 + iat: v.number(), 91 + jti: v.string(), 92 + }); 93 + 94 + const calculateJwkThumbprint = async (jwk: JsonWebKey): Promise<string> => { 95 + // For EC keys, thumbprint is SHA-256 of canonical JSON 96 + // Members must be in lexicographic order 97 + const canonical = JSON.stringify({ 98 + crv: jwk.crv, 99 + kty: jwk.kty, 100 + x: jwk.x, 101 + y: jwk.y, 102 + }); 103 + 104 + const hash = await crypto.subtle.digest('SHA-256', encodeUtf8(canonical)); 105 + return toBase64Url(new Uint8Array(hash)); 106 + }; 107 + 108 + export const verifyDPoP = async (dpop: string | null, jkt: string): Promise<void> => { 109 + if (!dpop) { 110 + throw new InvalidDPoPError(`missing DPoP header`); 111 + } 112 + 113 + // Decode the DPoP JWT 114 + let decoded; 115 + try { 116 + decoded = decodeJwt(dpop, { 117 + header: dpopHeaderSchema, 118 + payload: dpopPayloadSchema, 119 + }); 120 + } catch (err) { 121 + throw new InvalidDPoPError(`malformed JWT`, { cause: err }); 122 + } 123 + 124 + const { header, message, signature } = decoded; 125 + 126 + // Verify JWK thumbprint matches jkt 127 + const thumbprint = await calculateJwkThumbprint(header.jwk); 128 + if (thumbprint !== jkt) { 129 + throw new InvalidDPoPError(`JWK thumbprint mismatch`); 130 + } 131 + 132 + // Import the public key for signature verification 133 + let publicKey: CryptoKey; 134 + try { 135 + publicKey = await crypto.subtle.importKey( 136 + 'jwk', 137 + header.jwk, 138 + { name: 'ECDSA', namedCurve: 'P-256' }, 139 + false, 140 + ['verify'], 141 + ); 142 + } catch (err) { 143 + throw new InvalidDPoPError(`failed to import JWK`, { cause: err }); 144 + } 145 + 146 + // Verify the signature 147 + const isValid = await crypto.subtle.verify( 148 + { name: 'ECDSA', hash: 'SHA-256' }, 149 + publicKey, 150 + signature, 151 + message, 152 + ); 153 + 154 + if (!isValid) { 155 + throw new InvalidDPoPError(`invalid DPoP signature`); 156 + } 157 + }; 158 + 159 + // #endregion 160 + 161 + // #region Client assertions 162 + 163 + export const createClientAssertion = async (options: { 164 + kid: string; 165 + client_id: string; 166 + aud: string; 167 + privateKey: CryptoKey; 168 + }): Promise<string> => { 169 + const { kid, client_id, aud, privateKey } = options; 170 + 171 + const now = Math.floor(Date.now() / 1000); 172 + 173 + const header = { 174 + alg: 'ES256', 175 + typ: 'JWT', 176 + kid: kid, 177 + }; 178 + 179 + const payload = { 180 + iss: client_id, 181 + sub: client_id, 182 + aud: aud, 183 + jti: crypto.randomUUID(), 184 + iat: now, 185 + exp: now + 60, 186 + }; 187 + 188 + const message = `${encodeJwtPortion(header)}.${encodeJwtPortion(payload)}`; 189 + 190 + const signature = encodeJwtSignature( 191 + new Uint8Array( 192 + await crypto.subtle.sign( 193 + { 194 + name: 'ECDSA', 195 + hash: 'SHA-256', 196 + }, 197 + privateKey, 198 + encodeUtf8(message), 199 + ), 200 + ), 201 + ); 202 + 203 + return `${message}.${signature}`; 204 + }; 205 + 206 + // #endregion
+43
server/lexicons.ts
··· 1 + import type {} from '@atcute/lexicons/ambient'; 2 + import * as v from '@atcute/lexicons/validations'; 3 + 4 + export const requestAssertionSchema = v.procedure('x.aglais.requestAssertion', { 5 + params: null, 6 + input: { 7 + type: 'lex', 8 + schema: v.object({ 9 + jkt: v.string(), 10 + aud: v.string(), 11 + }), 12 + }, 13 + output: { 14 + type: 'lex', 15 + schema: v.object({ 16 + assertion: v.string(), 17 + }), 18 + }, 19 + }); 20 + 21 + export const resolveIdentitySchema = v.query('x.aglais.resolveIdentity', { 22 + params: v.object({ 23 + identifier: v.actorIdentifierString(), 24 + }), 25 + output: { 26 + type: 'lex', 27 + schema: v.object({ 28 + did: v.didString(), 29 + handle: v.handleString(), 30 + pds: v.genericUriString(), 31 + }), 32 + }, 33 + }); 34 + 35 + declare module '@atcute/lexicons/ambient' { 36 + interface XRPCProcedures { 37 + 'x.aglais.requestAssertion': typeof requestAssertionSchema; 38 + } 39 + 40 + interface XRPCQueries { 41 + 'x.aglais.resolveIdentity': typeof resolveIdentitySchema; 42 + } 43 + }
+9
server/vite-env.d.ts
··· 1 + /// <reference types="vite/client" /> 2 + 3 + interface ImportMetaEnv { 4 + readonly VITE_APP_NAME: string; 5 + } 6 + 7 + interface ImportMeta { 8 + readonly env: ImportMetaEnv; 9 + }
+2 -1
src/components/composer/lib/api.ts
··· 460 460 } 461 461 462 462 if (!json.jobId) { 463 - throw new PublishError(`Failed to upload video` + (json.error ? `: ${json.error}` : '')); 463 + reject(new PublishError(`Failed to upload video` + (json.error ? `: ${json.error}` : ''))); 464 + return; 464 465 } 465 466 466 467 resolve(json.jobId);
+34 -24
src/components/composer/workers/gif-conversion.ts
··· 1 1 import { expose } from 'comlink'; 2 - import { ArrayBufferTarget, Muxer } from 'webm-muxer'; 2 + import { BufferTarget, Output, VideoSample, VideoSampleSource, WebMOutputFormat } from 'mediabunny'; 3 3 4 4 export type GifWorkerApi = typeof api; 5 5 const api = { ··· 9 9 10 10 const frameCount = decoder.tracks.selectedTrack!.frameCount; 11 11 12 - let muxer: Muxer<ArrayBufferTarget>; 13 - let encoder: VideoEncoder | undefined; 14 - 15 12 if (frameCount === 0) { 16 13 throw new Error(`GIF has no frames`); 17 14 } 18 15 19 - for (let idx = 0, configured = false; idx < frameCount; idx++) { 20 - const { image } = await decoder.decode({ frameIndex: idx }); 16 + if (frameCount === 1) { 17 + const { image } = await decoder.decode({ frameIndex: 0 }); 18 + const canvas = new OffscreenCanvas(image.displayWidth, image.displayHeight); 19 + const ctx = canvas.getContext('2d')!; 20 + ctx.drawImage(image, 0, 0); 21 + return await canvas.convertToBlob({ type: 'image/png' }); 22 + } 21 23 22 - if (!configured) { 23 - const width = image.displayWidth; 24 - const height = image.displayHeight; 24 + let output: Output<WebMOutputFormat, BufferTarget>; 25 + let videoSource: VideoSampleSource; 25 26 26 - configured = true; 27 + { 28 + const { image } = await decoder.decode({ frameIndex: 0 }); 29 + const { displayWidth, displayHeight } = image; 27 30 28 - muxer = new Muxer({ 29 - target: new ArrayBufferTarget(), 30 - video: { codec: 'V_VP9', width, height }, 31 - }); 31 + // Scale bitrate based on resolution (~5 Mbps at 1080p, sqrt curve for smaller sizes) 32 + const pixels = displayWidth * displayHeight; 33 + const bitrate = Math.max( 34 + 500_000, 35 + Math.min(8_000_000, Math.round(Math.sqrt(pixels / (1920 * 1080)) * 5_000_000)), 36 + ); 32 37 33 - encoder = new VideoEncoder({ 34 - output: (chunk) => muxer.addVideoChunk(chunk), 35 - error: (err) => console.error(err), 36 - }); 38 + output = new Output({ 39 + format: new WebMOutputFormat(), 40 + target: new BufferTarget(), 41 + }); 42 + 43 + videoSource = new VideoSampleSource({ codec: 'vp9', bitrate }); 44 + output.addVideoTrack(videoSource); 37 45 38 - encoder.configure({ codec: 'vp09.00.10.08', width, height }); 39 - } 46 + await output.start(); 47 + await videoSource.add(new VideoSample(image)); 48 + } 40 49 41 - encoder!.encode(image); 50 + for (let idx = 1; idx < frameCount; idx++) { 51 + const { image } = await decoder.decode({ frameIndex: idx }); 52 + await videoSource.add(new VideoSample(image)); 42 53 } 43 54 44 - await encoder!.flush(); 45 - muxer!.finalize(); 55 + await output.finalize(); 46 56 47 - const buffer = muxer!.target.buffer; 57 + const buffer = output.target.buffer!; 48 58 return new Blob([buffer], { type: 'video/webm' }); 49 59 }, 50 60 };
+29 -14
src/components/embeds/players/video-player.tsx
··· 8 8 9 9 import { replaceVideoCdnUrl } from '~/lib/bsky/video'; 10 10 import { useSession } from '~/lib/states/session'; 11 + import { throttleTrailing } from '~/lib/utils/misc'; 11 12 12 13 const isMobile = /Android|iPhone|iPad|iPod/.test(navigator.userAgent); 13 14 ··· 21 22 22 23 const [playing, setPlaying] = createSignal(false); 23 24 25 + // const bwEstimate = currentAccount?.preferences.ui.videoBwEstimate; 26 + const bwEstimate = undefined; 24 27 const hls = new Hls({ 25 28 capLevelToPlayerSize: true, 26 - startLevel: 1, 29 + 30 + // the '-1' value makes a test request to estimate bandwidth and quality level 31 + // before showing the first fragment 32 + startLevel: bwEstimate === undefined ? -1 : Hls.DefaultConfig.startLevel, 33 + 27 34 xhrSetup(xhr, urlString) { 28 35 // We want to replace the URL here so it points directly to the CDN, 29 36 // and not the middleware service. ··· 46 53 }, 47 54 }); 48 55 56 + if (bwEstimate !== undefined) { 57 + hls.bandwidthEstimate = bwEstimate; 58 + } 59 + 49 60 onCleanup(() => hls.destroy()); 50 61 51 62 hls.loadSource(embed.playlist); ··· 61 72 node.volume = currentAccount.preferences.ui.mediaVolume; 62 73 } 63 74 75 + hls.on( 76 + Hls.Events.FRAG_LOADED, 77 + throttleTrailing(() => { 78 + if (currentAccount && !Number.isNaN(hls.bandwidthEstimate)) { 79 + currentAccount.preferences.ui.videoBwEstimate = 80 + Math.round(hls.bandwidthEstimate / 1_000_000) * 1_000_000; 81 + } 82 + }, 5_000), 83 + ); 84 + 85 + hls.on(Hls.Events.LEVEL_LOADED, (_event, data) => { 86 + const hasAudio = data.levelInfo.audioCodec !== undefined; 87 + const duration = data.details.totalduration; 88 + 89 + node.loop = !hasAudio || duration <= 6; 90 + }); 91 + 64 92 createEffect(() => { 65 93 if (!playing()) { 66 94 return; ··· 97 125 if (!isMobile && currentAccount) { 98 126 currentAccount.preferences.ui.mediaVolume = ev.currentTarget.volume; 99 127 } 100 - }} 101 - onLoadedMetadata={(ev) => { 102 - const video = ev.currentTarget; 103 - 104 - const hasAudio = 105 - // @ts-expect-error: Mozilla-specific 106 - video.mozHasAudio || 107 - // @ts-expect-error: WebKit/Blink-specific 108 - !!video.webkitAudioDecodedByteCount || 109 - // @ts-expect-error: WebKit-specific 110 - !!(video.audioTracks && video.audioTracks.length); 111 - 112 - video.loop = !hasAudio || video.duration <= 6; 113 128 }} 114 129 class="h-full w-full" 115 130 />
+2 -2
src/components/main/sign-in-dialog.tsx
··· 53 53 54 54 const authUrl = await createAuthorizationUrl({ 55 55 target: target, 56 - scope: import.meta.env.VITE_OAUTH_SCOPE, 56 + scope: 'atproto transition:generic transition:chat.bsky', 57 57 }); 58 58 59 59 setPending(`Redirecting to authorization page`); 60 60 61 61 // Wait for a moment to let the browser persist the local storage 62 - await new Promise((resolve) => setTimeout(resolve, 200)); 62 + await new Promise((resolve) => setTimeout(resolve, 1_000)); 63 63 64 64 window.location.assign(authUrl); 65 65
+5 -1
src/components/rich-text.tsx
··· 4 4 import type { AppBskyRichtextFacet } from '@atcute/bluesky'; 5 5 import { segmentize } from '@atcute/bluesky-richtext-segmenter'; 6 6 7 - import { isLinkValid } from '~/api/utils/strings'; 7 + import { isLinkValid, safeUrlParse } from '~/api/utils/strings'; 8 8 9 9 import { getCdnUrl } from '~/lib/bluemoji/render'; 10 10 import { redirectBskyUrl } from '~/lib/redirector'; ··· 46 46 47 47 if (type === 'app.bsky.richtext.facet#link') { 48 48 const uri = feature.uri; 49 + if (safeUrlParse(uri) === null) { 50 + break; 51 + } 52 + 49 53 const redirect = redirectBskyUrl(uri); 50 54 51 55 if (redirect == null) {
+2 -2
src/lib/bsky/image.ts
··· 16 16 { 17 17 const exifRemoved = removeExif(new Uint8Array(await blob.arrayBuffer())); 18 18 if (exifRemoved !== null) { 19 - blob = new Blob([exifRemoved], { type: blob.type }); 19 + blob = new Blob([exifRemoved as Uint8Array<ArrayBuffer>], { type: blob.type }); 20 20 } 21 21 } 22 22 ··· 80 80 const exifRemoved = removeExif(new Uint8Array(await blob.arrayBuffer())); 81 81 82 82 if (exifRemoved !== null) { 83 - blob = new Blob([exifRemoved], { type: blob.type }); 83 + blob = new Blob([exifRemoved as Uint8Array<ArrayBuffer>], { type: blob.type }); 84 84 } 85 85 } 86 86
+4
src/lib/intl/time.ts
··· 22 22 const delta = now - time; 23 23 24 24 if (delta < 0 || delta > WEEK) { 25 + if (delta < 0 && delta > -NOW) { 26 + return `now`; 27 + } 28 + 25 29 if (now > endOfYear) { 26 30 const date = new Date(); 27 31
+5 -2
src/lib/navigation/router.tsx
··· 305 305 }; 306 306 307 307 export const useIsFocused = (): Accessor<boolean> => { 308 - const { isActive } = useViewContext(); 308 + const context = useViewContext(); 309 + if (context === undefined) { 310 + return () => true; 311 + } 309 312 310 - return isActive; 313 + return context.isActive; 311 314 }; 312 315 313 316 export const createFocusEffect = (cb: () => void) => {
+2
src/lib/preferences/account.ts
··· 14 14 } 15 15 16 16 export interface UIPreferences { 17 + /** Media bandwidth estimate */ 18 + videoBwEstimate: number | undefined; 17 19 /** Media player volume */ 18 20 mediaVolume: number; 19 21 }
+1
src/lib/states/session.tsx
··· 288 288 }, 289 289 ], 290 290 ui: { 291 + videoBwEstimate: undefined, 291 292 mediaVolume: 0.25, 292 293 }, 293 294 composer: {
+69
src/lib/utils/misc.ts
··· 88 88 89 89 return result as Omit<T, K>; 90 90 }; 91 + 92 + export const throttleLeading = <T extends (...args: any[]) => void>( 93 + fn: T, 94 + wait: number, 95 + ): ((...args: Parameters<T>) => void) => { 96 + let lastCallTime: number | undefined; 97 + 98 + return (...args: Parameters<T>) => { 99 + const now = performance.now(); 100 + 101 + if (lastCallTime === undefined || now - lastCallTime >= wait) { 102 + lastCallTime = now; 103 + fn(...args); 104 + } 105 + }; 106 + }; 107 + 108 + export const throttleTrailing = <T extends (...args: any[]) => void>( 109 + fn: T, 110 + wait: number, 111 + ): ((...args: Parameters<T>) => void) => { 112 + let timeoutId: ReturnType<typeof setTimeout> | undefined; 113 + let lastArgs: Parameters<T> | undefined; 114 + 115 + return (...args: Parameters<T>) => { 116 + lastArgs = args; 117 + 118 + if (timeoutId === undefined) { 119 + timeoutId = setTimeout(() => { 120 + timeoutId = undefined; 121 + fn(...lastArgs!); 122 + }, wait); 123 + } 124 + }; 125 + }; 126 + 127 + export const throttle = <T extends (...args: any[]) => void>( 128 + fn: T, 129 + wait: number, 130 + ): ((...args: Parameters<T>) => void) => { 131 + let timeoutId: ReturnType<typeof setTimeout> | undefined; 132 + let lastArgs: Parameters<T> | undefined; 133 + let lastCallTime: number | undefined; 134 + 135 + return (...args: Parameters<T>) => { 136 + const now = performance.now(); 137 + const elapsed = lastCallTime !== undefined ? now - lastCallTime : wait; 138 + 139 + if (elapsed >= wait) { 140 + if (timeoutId !== undefined) { 141 + clearTimeout(timeoutId); 142 + timeoutId = undefined; 143 + } 144 + 145 + lastCallTime = now; 146 + fn(...args); 147 + } else { 148 + lastArgs = args; 149 + 150 + if (timeoutId === undefined) { 151 + timeoutId = setTimeout(() => { 152 + timeoutId = undefined; 153 + lastCallTime = performance.now(); 154 + fn(...lastArgs!); 155 + }, wait - elapsed); 156 + } 157 + } 158 + }; 159 + };
+42 -23
src/main.tsx
··· 3 3 import { render } from 'solid-js/web'; 4 4 5 5 import { Client, ok, simpleFetchHandler } from '@atcute/client'; 6 - import type { DidDocument } from '@atcute/identity'; 7 6 import type { Did } from '@atcute/lexicons'; 8 - import { configureOAuth } from '@atcute/oauth-browser-client'; 7 + import { type ClientAssertionFetcher, configureOAuth } from '@atcute/oauth-browser-client'; 9 8 10 9 import * as navigation from '~/globals/navigation'; 11 10 import * as preferences from '~/globals/preferences'; ··· 19 18 20 19 import CircularProgress from '~/components/circular-progress'; 21 20 import ModalRenderer from '~/components/main/modal-renderer'; 21 + 22 + import type {} from '../server/lexicons'; 22 23 23 24 import routes from './routes'; 24 25 import './service-worker'; ··· 35 36 36 37 // Configure OAuth 37 38 { 38 - const resolver = new Client({ 39 - handler: simpleFetchHandler({ service: 'https://identitas.kelinci.deno.net' }), 39 + // Development mode uses public client with http://localhost client ID 40 + // Production mode uses confidential client with server-side JWT assertions 41 + const isPublicClient = !!import.meta.env.VITE_OAUTH_CLIENT_ID; 42 + 43 + const host = new Client({ 44 + handler: simpleFetchHandler({ service: location.origin }), 40 45 }); 41 46 47 + const fetchClientAssertion: ClientAssertionFetcher = async ({ aud, jkt, createDpopProof }) => { 48 + const dpop = await createDpopProof(`${location.origin}/xrpc/x.aglais.requestAssertion`); 49 + 50 + const data = await ok( 51 + host.post('x.aglais.requestAssertion', { 52 + input: { 53 + aud: aud, 54 + jkt: jkt, 55 + }, 56 + headers: { 57 + dpop: dpop, 58 + }, 59 + }), 60 + ); 61 + 62 + return { 63 + client_assertion_type: 'urn:ietf:params:oauth:client-assertion-type:jwt-bearer', 64 + client_assertion: data.assertion, 65 + }; 66 + }; 67 + 42 68 configureOAuth({ 43 69 metadata: { 44 - client_id: import.meta.env.VITE_OAUTH_CLIENT_ID, 45 - redirect_uri: import.meta.env.VITE_OAUTH_REDIRECT_URL, 70 + client_id: isPublicClient 71 + ? import.meta.env.VITE_OAUTH_CLIENT_ID 72 + : `${location.origin}/oauth-client-metadata.json`, 73 + redirect_uri: isPublicClient 74 + ? import.meta.env.VITE_OAUTH_REDIRECT_URL 75 + : `${location.origin}/oauth/callback`, 46 76 }, 47 77 48 - didDocumentResolver: { 49 - async resolve(did) { 78 + identityResolver: { 79 + async resolve(actor) { 50 80 const data = await ok( 51 - resolver.get('com.atproto.identity.resolveDid', { 81 + host.get('x.aglais.resolveIdentity', { 52 82 params: { 53 - did: did, 83 + identifier: actor, 54 84 }, 55 85 }), 56 86 ); 57 87 58 - return data.didDoc as unknown as DidDocument; 88 + return data; 59 89 }, 60 90 }, 61 - handleResolver: { 62 - async resolve(handle) { 63 - const data = await ok( 64 - resolver.get('com.atproto.identity.resolveHandle', { 65 - params: { 66 - handle: handle, 67 - }, 68 - }), 69 - ); 70 91 71 - return data.did as Did<'plc' | 'web'>; 72 - }, 73 - }, 92 + fetchClientAssertion: isPublicClient ? undefined : fetchClientAssertion, 74 93 }); 75 94 } 76 95
+1 -1
src/views/bluemoji-emotes.tsx
··· 27 27 const handleBlob = async (blob: Blob) => { 28 28 const exifRemoved = removeExif(new Uint8Array(await blob.arrayBuffer())); 29 29 if (exifRemoved !== null) { 30 - blob = new Blob([exifRemoved], { type: blob.type }); 30 + blob = new Blob([exifRemoved as Uint8Array<ArrayBuffer>], { type: blob.type }); 31 31 } 32 32 33 33 if (blob.size > MAX_ORIGINAL_SIZE) {
+1 -1
src/views/oauth-callback.tsx
··· 23 23 // Do this on global history instance so it doesn't affect this page rendering. 24 24 history.replaceState(null, '', '/'); 25 25 26 - const session = await finalizeAuthorization(params); 26 + const { session } = await finalizeAuthorization(params); 27 27 const did = session.info.sub; 28 28 29 29 const agent = new OAuthUserAgent(session);
-3
src/vite-env.d.ts
··· 6 6 7 7 interface ImportMetaEnv { 8 8 readonly VITE_APP_NAME: string; 9 - 10 - readonly VITE_DEV_SERVER_PORT?: string; 11 - readonly VITE_CLIENT_URI: string; 12 9 readonly VITE_OAUTH_CLIENT_ID: string; 13 10 readonly VITE_OAUTH_REDIRECT_URL: string; 14 11 readonly VITE_OAUTH_SCOPE: string;
+10 -13
vite.config.ts
··· 5 5 import { VitePWA } from 'vite-plugin-pwa'; 6 6 import solid from 'vite-plugin-solid'; 7 7 8 - import metadata from './public/oauth-client-metadata.json'; 9 - 10 8 const SERVER_HOST = '127.0.0.1'; 11 9 const SERVER_PORT = 52222; 10 + 11 + const OAUTH_SCOPE = 'atproto transition:generic transition:chat.bsky'; 12 12 13 13 export default defineConfig({ 14 14 build: { ··· 119 119 }, 120 120 }, 121 121 122 - // Injects OAuth-related variables 122 + // Injects OAuth-related variables for development mode 123 123 { 124 124 name: 'aglais-oauth-inject', 125 125 config(_conf, { command }) { 126 126 if (command === 'build') { 127 - process.env.VITE_OAUTH_CLIENT_ID = metadata.client_id; 128 - process.env.VITE_OAUTH_REDIRECT_URL = metadata.redirect_uris[0]; 127 + // Production uses confidential client 128 + process.env.VITE_OAUTH_CLIENT_ID = ''; 129 + process.env.VITE_OAUTH_REDIRECT_URL = ''; 129 130 } else { 130 - const redirectUri = (() => { 131 - const url = new URL(metadata.redirect_uris[0]); 132 - return `http://${SERVER_HOST}:${SERVER_PORT}${url.pathname}`; 133 - })(); 131 + // Development uses public client with http://localhost format 132 + const redirectUri = `http://${SERVER_HOST}:${SERVER_PORT}/oauth/callback`; 134 133 135 134 const clientId = 136 135 `http://localhost` + 137 136 `?redirect_uri=${encodeURIComponent(redirectUri)}` + 138 - `&scope=${encodeURIComponent(metadata.scope)}`; 137 + `&scope=${encodeURIComponent(OAUTH_SCOPE)}`; 139 138 140 - process.env.VITE_DEV_SERVER_PORT = '' + SERVER_PORT; 141 139 process.env.VITE_OAUTH_CLIENT_ID = clientId; 142 140 process.env.VITE_OAUTH_REDIRECT_URL = redirectUri; 143 141 } 144 142 145 - process.env.VITE_CLIENT_URI = metadata.client_uri; 146 - process.env.VITE_OAUTH_SCOPE = metadata.scope; 143 + process.env.VITE_OAUTH_SCOPE = OAUTH_SCOPE; 147 144 }, 148 145 }, 149 146 ],
+3987 -471
worker-configuration.d.ts
··· 1 1 /* eslint-disable */ 2 - // Generated by Wrangler by running `wrangler types` (hash: 869ac3b4ce0f52ba3b2e0bc70c49089e) 3 - // Runtime types generated with workerd@1.20250617.0 2025-08-25 2 + // Generated by Wrangler by running `wrangler types` (hash: eeaa8440f56ab30c6a4f65cb191015f2) 3 + // Runtime types generated with workerd@1.20251202.0 2025-08-16 4 4 declare namespace Cloudflare { 5 + interface GlobalProps { 6 + mainModule: typeof import("./server/index"); 7 + } 5 8 interface Env { 9 + VITE_APP_NAME: string; 6 10 } 7 11 } 8 12 interface Env extends Cloudflare.Env {} ··· 26 30 // noinspection JSUnusedGlobalSymbols 27 31 declare var onmessage: never; 28 32 /** 29 - * An abnormal event (called an exception) which occurs as a result of calling a method or accessing a property of a web API. 33 + * The **`DOMException`** interface represents an abnormal event (called an **exception**) that occurs as a result of calling a method or accessing a property of a web API. 30 34 * 31 35 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException) 32 36 */ 33 37 declare class DOMException extends Error { 34 38 constructor(message?: string, name?: string); 35 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/message) */ 39 + /** 40 + * The **`message`** read-only property of the a message or description associated with the given error name. 41 + * 42 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/message) 43 + */ 36 44 readonly message: string; 37 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/name) */ 45 + /** 46 + * The **`name`** read-only property of the one of the strings associated with an error name. 47 + * 48 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/name) 49 + */ 38 50 readonly name: string; 39 51 /** 52 + * The **`code`** read-only property of the DOMException interface returns one of the legacy error code constants, or `0` if none match. 40 53 * @deprecated 41 54 * 42 55 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/code) ··· 80 93 declare abstract class WorkerGlobalScope extends EventTarget<WorkerGlobalScopeEventMap> { 81 94 EventTarget: typeof EventTarget; 82 95 } 83 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console) */ 96 + /* The **`console`** object provides access to the debugging console (e.g., the Web console in Firefox). * 97 + * The **`console`** object provides access to the debugging console (e.g., the Web console in Firefox). 98 + * 99 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console) 100 + */ 84 101 interface Console { 85 102 "assert"(condition?: boolean, ...data: any[]): void; 86 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/clear_static) */ 103 + /** 104 + * The **`console.clear()`** static method clears the console if possible. 105 + * 106 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/clear_static) 107 + */ 87 108 clear(): void; 88 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/count_static) */ 109 + /** 110 + * The **`console.count()`** static method logs the number of times that this particular call to `count()` has been called. 111 + * 112 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/count_static) 113 + */ 89 114 count(label?: string): void; 90 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/countReset_static) */ 115 + /** 116 + * The **`console.countReset()`** static method resets counter used with console/count_static. 117 + * 118 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/countReset_static) 119 + */ 91 120 countReset(label?: string): void; 92 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/debug_static) */ 121 + /** 122 + * The **`console.debug()`** static method outputs a message to the console at the 'debug' log level. 123 + * 124 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/debug_static) 125 + */ 93 126 debug(...data: any[]): void; 94 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/dir_static) */ 127 + /** 128 + * The **`console.dir()`** static method displays a list of the properties of the specified JavaScript object. 129 + * 130 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/dir_static) 131 + */ 95 132 dir(item?: any, options?: any): void; 96 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/dirxml_static) */ 133 + /** 134 + * The **`console.dirxml()`** static method displays an interactive tree of the descendant elements of the specified XML/HTML element. 135 + * 136 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/dirxml_static) 137 + */ 97 138 dirxml(...data: any[]): void; 98 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/error_static) */ 139 + /** 140 + * The **`console.error()`** static method outputs a message to the console at the 'error' log level. 141 + * 142 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/error_static) 143 + */ 99 144 error(...data: any[]): void; 100 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/group_static) */ 145 + /** 146 + * The **`console.group()`** static method creates a new inline group in the Web console log, causing any subsequent console messages to be indented by an additional level, until console/groupEnd_static is called. 147 + * 148 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/group_static) 149 + */ 101 150 group(...data: any[]): void; 102 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/groupCollapsed_static) */ 151 + /** 152 + * The **`console.groupCollapsed()`** static method creates a new inline group in the console. 153 + * 154 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/groupCollapsed_static) 155 + */ 103 156 groupCollapsed(...data: any[]): void; 104 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/groupEnd_static) */ 157 + /** 158 + * The **`console.groupEnd()`** static method exits the current inline group in the console. 159 + * 160 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/groupEnd_static) 161 + */ 105 162 groupEnd(): void; 106 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/info_static) */ 163 + /** 164 + * The **`console.info()`** static method outputs a message to the console at the 'info' log level. 165 + * 166 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/info_static) 167 + */ 107 168 info(...data: any[]): void; 108 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/log_static) */ 169 + /** 170 + * The **`console.log()`** static method outputs a message to the console. 171 + * 172 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/log_static) 173 + */ 109 174 log(...data: any[]): void; 110 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/table_static) */ 175 + /** 176 + * The **`console.table()`** static method displays tabular data as a table. 177 + * 178 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/table_static) 179 + */ 111 180 table(tabularData?: any, properties?: string[]): void; 112 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/time_static) */ 181 + /** 182 + * The **`console.time()`** static method starts a timer you can use to track how long an operation takes. 183 + * 184 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/time_static) 185 + */ 113 186 time(label?: string): void; 114 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/timeEnd_static) */ 187 + /** 188 + * The **`console.timeEnd()`** static method stops a timer that was previously started by calling console/time_static. 189 + * 190 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/timeEnd_static) 191 + */ 115 192 timeEnd(label?: string): void; 116 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/timeLog_static) */ 193 + /** 194 + * The **`console.timeLog()`** static method logs the current value of a timer that was previously started by calling console/time_static. 195 + * 196 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/timeLog_static) 197 + */ 117 198 timeLog(label?: string, ...data: any[]): void; 118 199 timeStamp(label?: string): void; 119 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/trace_static) */ 200 + /** 201 + * The **`console.trace()`** static method outputs a stack trace to the console. 202 + * 203 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/trace_static) 204 + */ 120 205 trace(...data: any[]): void; 121 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/warn_static) */ 206 + /** 207 + * The **`console.warn()`** static method outputs a warning message to the console at the 'warning' log level. 208 + * 209 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/warn_static) 210 + */ 122 211 warn(...data: any[]): void; 123 212 } 124 213 declare const console: Console; ··· 192 281 function validate(bytes: BufferSource): boolean; 193 282 } 194 283 /** 195 - * This ServiceWorker API interface represents the global execution context of a service worker. 284 + * The **`ServiceWorkerGlobalScope`** interface of the Service Worker API represents the global execution context of a service worker. 196 285 * Available only in secure contexts. 197 286 * 198 287 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope) ··· 238 327 ByteLengthQueuingStrategy: typeof ByteLengthQueuingStrategy; 239 328 CountQueuingStrategy: typeof CountQueuingStrategy; 240 329 ErrorEvent: typeof ErrorEvent; 330 + MessageChannel: typeof MessageChannel; 331 + MessagePort: typeof MessagePort; 241 332 EventSource: typeof EventSource; 242 333 ReadableStreamBYOBRequest: typeof ReadableStreamBYOBRequest; 243 334 ReadableStreamDefaultController: typeof ReadableStreamDefaultController; ··· 279 370 declare function addEventListener<Type extends keyof WorkerGlobalScopeEventMap>(type: Type, handler: EventListenerOrEventListenerObject<WorkerGlobalScopeEventMap[Type]>, options?: EventTargetAddEventListenerOptions | boolean): void; 280 371 declare function removeEventListener<Type extends keyof WorkerGlobalScopeEventMap>(type: Type, handler: EventListenerOrEventListenerObject<WorkerGlobalScopeEventMap[Type]>, options?: EventTargetEventListenerOptions | boolean): void; 281 372 /** 282 - * Dispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise. 373 + * The **`dispatchEvent()`** method of the EventTarget sends an Event to the object, (synchronously) invoking the affected event listeners in the appropriate order. 283 374 * 284 375 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/dispatchEvent) 285 376 */ ··· 337 428 declare const navigator: Navigator; 338 429 interface TestController { 339 430 } 340 - interface ExecutionContext { 431 + interface ExecutionContext<Props = unknown> { 341 432 waitUntil(promise: Promise<any>): void; 342 433 passThroughOnException(): void; 343 - props: any; 434 + readonly props: Props; 344 435 } 345 436 type ExportedHandlerFetchHandler<Env = unknown, CfHostMetadata = unknown> = (request: Request<CfHostMetadata, IncomingRequestCfProperties<CfHostMetadata>>, env: Env, ctx: ExecutionContext) => Response | Promise<Response>; 346 437 type ExportedHandlerTailHandler<Env = unknown> = (events: TraceItem[], env: Env, ctx: ExecutionContext) => void | Promise<void>; 347 438 type ExportedHandlerTraceHandler<Env = unknown> = (traces: TraceItem[], env: Env, ctx: ExecutionContext) => void | Promise<void>; 348 - type ExportedHandlerTailStreamHandler<Env = unknown> = (event: TailStream.TailEvent, env: Env, ctx: ExecutionContext) => TailStream.TailEventHandlerType | Promise<TailStream.TailEventHandlerType>; 439 + type ExportedHandlerTailStreamHandler<Env = unknown> = (event: TailStream.TailEvent<TailStream.Onset>, env: Env, ctx: ExecutionContext) => TailStream.TailEventHandlerType | Promise<TailStream.TailEventHandlerType>; 349 440 type ExportedHandlerScheduledHandler<Env = unknown> = (controller: ScheduledController, env: Env, ctx: ExecutionContext) => void | Promise<void>; 350 441 type ExportedHandlerQueueHandler<Env = unknown, Message = unknown> = (batch: MessageBatch<Message>, env: Env, ctx: ExecutionContext) => void | Promise<void>; 351 442 type ExportedHandlerTestHandler<Env = unknown> = (controller: TestController, env: Env, ctx: ExecutionContext) => void | Promise<void>; ··· 362 453 interface StructuredSerializeOptions { 363 454 transfer?: any[]; 364 455 } 365 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent) */ 366 - declare abstract class PromiseRejectionEvent extends Event { 367 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent/promise) */ 368 - readonly promise: Promise<any>; 369 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent/reason) */ 370 - readonly reason: any; 371 - } 372 456 declare abstract class Navigator { 373 - sendBeacon(url: string, body?: (ReadableStream | string | (ArrayBuffer | ArrayBufferView) | Blob | FormData | URLSearchParams | URLSearchParams)): boolean; 457 + sendBeacon(url: string, body?: BodyInit): boolean; 374 458 readonly userAgent: string; 375 459 readonly hardwareConcurrency: number; 376 460 readonly language: string; 377 461 readonly languages: string[]; 378 462 } 379 - /** 380 - * The Workers runtime supports a subset of the Performance API, used to measure timing and performance, 381 - * as well as timing of subrequests and other operations. 382 - * 383 - * [Cloudflare Docs Reference](https://developers.cloudflare.com/workers/runtime-apis/performance/) 384 - */ 385 - interface Performance { 386 - /* [Cloudflare Docs Reference](https://developers.cloudflare.com/workers/runtime-apis/performance/#performancetimeorigin) */ 387 - readonly timeOrigin: number; 388 - /* [Cloudflare Docs Reference](https://developers.cloudflare.com/workers/runtime-apis/performance/#performancenow) */ 389 - now(): number; 390 - } 391 463 interface AlarmInvocationInfo { 392 464 readonly isRetry: boolean; 393 465 readonly retryCount: number; ··· 411 483 equals(other: DurableObjectId): boolean; 412 484 readonly name?: string; 413 485 } 414 - interface DurableObjectNamespace<T extends Rpc.DurableObjectBranded | undefined = undefined> { 486 + declare abstract class DurableObjectNamespace<T extends Rpc.DurableObjectBranded | undefined = undefined> { 415 487 newUniqueId(options?: DurableObjectNamespaceNewUniqueIdOptions): DurableObjectId; 416 488 idFromName(name: string): DurableObjectId; 417 489 idFromString(id: string): DurableObjectId; 418 490 get(id: DurableObjectId, options?: DurableObjectNamespaceGetDurableObjectOptions): DurableObjectStub<T>; 491 + getByName(name: string, options?: DurableObjectNamespaceGetDurableObjectOptions): DurableObjectStub<T>; 419 492 jurisdiction(jurisdiction: DurableObjectJurisdiction): DurableObjectNamespace<T>; 420 493 } 421 494 type DurableObjectJurisdiction = "eu" | "fedramp" | "fedramp-high"; ··· 426 499 interface DurableObjectNamespaceGetDurableObjectOptions { 427 500 locationHint?: DurableObjectLocationHint; 428 501 } 429 - interface DurableObjectState { 502 + interface DurableObjectClass<_T extends Rpc.DurableObjectBranded | undefined = undefined> { 503 + } 504 + interface DurableObjectState<Props = unknown> { 430 505 waitUntil(promise: Promise<any>): void; 506 + readonly props: Props; 431 507 readonly id: DurableObjectId; 432 508 readonly storage: DurableObjectStorage; 433 509 container?: Container; ··· 470 546 deleteAlarm(options?: DurableObjectSetAlarmOptions): Promise<void>; 471 547 sync(): Promise<void>; 472 548 sql: SqlStorage; 549 + kv: SyncKvStorage; 473 550 transactionSync<T>(closure: () => T): T; 474 551 getCurrentBookmark(): Promise<string>; 475 552 getBookmarkForTime(timestamp: number | Date): Promise<string>; ··· 515 592 blobs?: ((ArrayBuffer | string) | null)[]; 516 593 } 517 594 /** 518 - * An event which takes place in the DOM. 595 + * The **`Event`** interface represents an event which takes place on an `EventTarget`. 519 596 * 520 597 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event) 521 598 */ 522 599 declare class Event { 523 600 constructor(type: string, init?: EventInit); 524 601 /** 525 - * Returns the type of event, e.g. "click", "hashchange", or "submit". 602 + * The **`type`** read-only property of the Event interface returns a string containing the event's type. 526 603 * 527 604 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/type) 528 605 */ 529 606 get type(): string; 530 607 /** 531 - * Returns the event's phase, which is one of NONE, CAPTURING_PHASE, AT_TARGET, and BUBBLING_PHASE. 608 + * The **`eventPhase`** read-only property of the being evaluated. 532 609 * 533 610 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/eventPhase) 534 611 */ 535 612 get eventPhase(): number; 536 613 /** 537 - * Returns true or false depending on how event was initialized. True if event invokes listeners past a ShadowRoot node that is the root of its target, and false otherwise. 614 + * The read-only **`composed`** property of the or not the event will propagate across the shadow DOM boundary into the standard DOM. 538 615 * 539 616 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/composed) 540 617 */ 541 618 get composed(): boolean; 542 619 /** 543 - * Returns true or false depending on how event was initialized. True if event goes through its target's ancestors in reverse tree order, and false otherwise. 620 + * The **`bubbles`** read-only property of the Event interface indicates whether the event bubbles up through the DOM tree or not. 544 621 * 545 622 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/bubbles) 546 623 */ 547 624 get bubbles(): boolean; 548 625 /** 549 - * Returns true or false depending on how event was initialized. Its return value does not always carry meaning, but true can indicate that part of the operation during which event was dispatched, can be canceled by invoking the preventDefault() method. 626 + * The **`cancelable`** read-only property of the Event interface indicates whether the event can be canceled, and therefore prevented as if the event never happened. 550 627 * 551 628 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/cancelable) 552 629 */ 553 630 get cancelable(): boolean; 554 631 /** 555 - * Returns true if preventDefault() was invoked successfully to indicate cancelation, and false otherwise. 632 + * The **`defaultPrevented`** read-only property of the Event interface returns a boolean value indicating whether or not the call to Event.preventDefault() canceled the event. 556 633 * 557 634 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/defaultPrevented) 558 635 */ 559 636 get defaultPrevented(): boolean; 560 637 /** 638 + * The Event property **`returnValue`** indicates whether the default action for this event has been prevented or not. 561 639 * @deprecated 562 640 * 563 641 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/returnValue) 564 642 */ 565 643 get returnValue(): boolean; 566 644 /** 567 - * Returns the object whose event listener's callback is currently being invoked. 645 + * The **`currentTarget`** read-only property of the Event interface identifies the element to which the event handler has been attached. 568 646 * 569 647 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/currentTarget) 570 648 */ 571 649 get currentTarget(): EventTarget | undefined; 572 650 /** 573 - * Returns the object to which event is dispatched (its target). 651 + * The read-only **`target`** property of the dispatched. 574 652 * 575 653 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/target) 576 654 */ 577 655 get target(): EventTarget | undefined; 578 656 /** 657 + * The deprecated **`Event.srcElement`** is an alias for the Event.target property. 579 658 * @deprecated 580 659 * 581 660 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/srcElement) 582 661 */ 583 662 get srcElement(): EventTarget | undefined; 584 663 /** 585 - * Returns the event's timestamp as the number of milliseconds measured relative to the time origin. 664 + * The **`timeStamp`** read-only property of the Event interface returns the time (in milliseconds) at which the event was created. 586 665 * 587 666 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/timeStamp) 588 667 */ 589 668 get timeStamp(): number; 590 669 /** 591 - * Returns true if event was dispatched by the user agent, and false otherwise. 670 + * The **`isTrusted`** read-only property of the when the event was generated by the user agent (including via user actions and programmatic methods such as HTMLElement.focus()), and `false` when the event was dispatched via The only exception is the `click` event, which initializes the `isTrusted` property to `false` in user agents. 592 671 * 593 672 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/isTrusted) 594 673 */ 595 674 get isTrusted(): boolean; 596 675 /** 676 + * The **`cancelBubble`** property of the Event interface is deprecated. 597 677 * @deprecated 598 678 * 599 679 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/cancelBubble) 600 680 */ 601 681 get cancelBubble(): boolean; 602 682 /** 683 + * The **`cancelBubble`** property of the Event interface is deprecated. 603 684 * @deprecated 604 685 * 605 686 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/cancelBubble) 606 687 */ 607 688 set cancelBubble(value: boolean); 608 689 /** 609 - * Invoking this method prevents event from reaching any registered event listeners after the current one finishes running and, when dispatched in a tree, also prevents event from reaching any other objects. 690 + * The **`stopImmediatePropagation()`** method of the If several listeners are attached to the same element for the same event type, they are called in the order in which they were added. 610 691 * 611 692 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/stopImmediatePropagation) 612 693 */ 613 694 stopImmediatePropagation(): void; 614 695 /** 615 - * If invoked when the cancelable attribute value is true, and while executing a listener for the event with passive set to false, signals to the operation that caused event to be dispatched that it needs to be canceled. 696 + * The **`preventDefault()`** method of the Event interface tells the user agent that if the event does not get explicitly handled, its default action should not be taken as it normally would be. 616 697 * 617 698 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/preventDefault) 618 699 */ 619 700 preventDefault(): void; 620 701 /** 621 - * When dispatched in a tree, invoking this method prevents event from reaching any objects other than the current object. 702 + * The **`stopPropagation()`** method of the Event interface prevents further propagation of the current event in the capturing and bubbling phases. 622 703 * 623 704 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/stopPropagation) 624 705 */ 625 706 stopPropagation(): void; 626 707 /** 627 - * Returns the invocation target objects of event's path (objects on which listeners will be invoked), except for any nodes in shadow trees of which the shadow root's mode is "closed" that are not reachable from event's currentTarget. 708 + * The **`composedPath()`** method of the Event interface returns the event's path which is an array of the objects on which listeners will be invoked. 628 709 * 629 710 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/composedPath) 630 711 */ ··· 645 726 } 646 727 type EventListenerOrEventListenerObject<EventType extends Event = Event> = EventListener<EventType> | EventListenerObject<EventType>; 647 728 /** 648 - * EventTarget is a DOM interface implemented by objects that can receive events and may have listeners for them. 729 + * The **`EventTarget`** interface is implemented by objects that can receive events and may have listeners for them. 649 730 * 650 731 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget) 651 732 */ 652 733 declare class EventTarget<EventMap extends Record<string, Event> = Record<string, Event>> { 653 734 constructor(); 654 735 /** 655 - * Appends an event listener for events whose type attribute value is type. The callback argument sets the callback that will be invoked when the event is dispatched. 656 - * 657 - * The options argument sets listener-specific options. For compatibility this can be a boolean, in which case the method behaves exactly as if the value was specified as options's capture. 658 - * 659 - * When set to true, options's capture prevents callback from being invoked when the event's eventPhase attribute value is BUBBLING_PHASE. When false (or not present), callback will not be invoked when event's eventPhase attribute value is CAPTURING_PHASE. Either way, callback will be invoked if event's eventPhase attribute value is AT_TARGET. 660 - * 661 - * When set to true, options's passive indicates that the callback will not cancel the event by invoking preventDefault(). This is used to enable performance optimizations described in ยง 2.8 Observing event listeners. 662 - * 663 - * When set to true, options's once indicates that the callback will only be invoked once after which the event listener will be removed. 664 - * 665 - * If an AbortSignal is passed for options's signal, then the event listener will be removed when signal is aborted. 666 - * 667 - * The event listener is appended to target's event listener list and is not appended if it has the same type, callback, and capture. 736 + * The **`addEventListener()`** method of the EventTarget interface sets up a function that will be called whenever the specified event is delivered to the target. 668 737 * 669 738 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/addEventListener) 670 739 */ 671 740 addEventListener<Type extends keyof EventMap>(type: Type, handler: EventListenerOrEventListenerObject<EventMap[Type]>, options?: EventTargetAddEventListenerOptions | boolean): void; 672 741 /** 673 - * Removes the event listener in target's event listener list with the same type, callback, and options. 742 + * The **`removeEventListener()`** method of the EventTarget interface removes an event listener previously registered with EventTarget.addEventListener() from the target. 674 743 * 675 744 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/removeEventListener) 676 745 */ 677 746 removeEventListener<Type extends keyof EventMap>(type: Type, handler: EventListenerOrEventListenerObject<EventMap[Type]>, options?: EventTargetEventListenerOptions | boolean): void; 678 747 /** 679 - * Dispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise. 748 + * The **`dispatchEvent()`** method of the EventTarget sends an Event to the object, (synchronously) invoking the affected event listeners in the appropriate order. 680 749 * 681 750 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/dispatchEvent) 682 751 */ ··· 695 764 handleEvent: (event: Event) => any | undefined; 696 765 } 697 766 /** 698 - * A controller object that allows you to abort one or more DOM requests as and when desired. 767 + * The **`AbortController`** interface represents a controller object that allows you to abort one or more Web requests as and when desired. 699 768 * 700 769 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortController) 701 770 */ 702 771 declare class AbortController { 703 772 constructor(); 704 773 /** 705 - * Returns the AbortSignal object associated with this object. 774 + * The **`signal`** read-only property of the AbortController interface returns an AbortSignal object instance, which can be used to communicate with/abort an asynchronous operation as desired. 706 775 * 707 776 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortController/signal) 708 777 */ 709 778 get signal(): AbortSignal; 710 779 /** 711 - * Invoking this method will set this object's AbortSignal's aborted flag and signal to any observers that the associated activity is to be aborted. 780 + * The **`abort()`** method of the AbortController interface aborts an asynchronous operation before it has completed. 712 781 * 713 782 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortController/abort) 714 783 */ 715 784 abort(reason?: any): void; 716 785 } 717 786 /** 718 - * A signal object that allows you to communicate with a DOM request (such as a Fetch) and abort it if required via an AbortController object. 787 + * The **`AbortSignal`** interface represents a signal object that allows you to communicate with an asynchronous operation (such as a fetch request) and abort it if required via an AbortController object. 719 788 * 720 789 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal) 721 790 */ 722 791 declare abstract class AbortSignal extends EventTarget { 723 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/abort_static) */ 792 + /** 793 + * The **`AbortSignal.abort()`** static method returns an AbortSignal that is already set as aborted (and which does not trigger an AbortSignal/abort_event event). 794 + * 795 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/abort_static) 796 + */ 724 797 static abort(reason?: any): AbortSignal; 725 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/timeout_static) */ 798 + /** 799 + * The **`AbortSignal.timeout()`** static method returns an AbortSignal that will automatically abort after a specified time. 800 + * 801 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/timeout_static) 802 + */ 726 803 static timeout(delay: number): AbortSignal; 727 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/any_static) */ 804 + /** 805 + * The **`AbortSignal.any()`** static method takes an iterable of abort signals and returns an AbortSignal. 806 + * 807 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/any_static) 808 + */ 728 809 static any(signals: AbortSignal[]): AbortSignal; 729 810 /** 730 - * Returns true if this AbortSignal's AbortController has signaled to abort, and false otherwise. 811 + * The **`aborted`** read-only property returns a value that indicates whether the asynchronous operations the signal is communicating with are aborted (`true`) or not (`false`). 731 812 * 732 813 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/aborted) 733 814 */ 734 815 get aborted(): boolean; 735 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/reason) */ 816 + /** 817 + * The **`reason`** read-only property returns a JavaScript value that indicates the abort reason. 818 + * 819 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/reason) 820 + */ 736 821 get reason(): any; 737 822 /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/abort_event) */ 738 823 get onabort(): any | null; 739 824 /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/abort_event) */ 740 825 set onabort(value: any | null); 741 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/throwIfAborted) */ 826 + /** 827 + * The **`throwIfAborted()`** method throws the signal's abort AbortSignal.reason if the signal has been aborted; otherwise it does nothing. 828 + * 829 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/throwIfAborted) 830 + */ 742 831 throwIfAborted(): void; 743 832 } 744 833 interface Scheduler { ··· 748 837 signal?: AbortSignal; 749 838 } 750 839 /** 751 - * Extends the lifetime of the install and activate events dispatched on the global scope as part of the service worker lifecycle. This ensures that any functional events (like FetchEvent) are not dispatched until it upgrades database schemas and deletes the outdated cache entries. 840 + * The **`ExtendableEvent`** interface extends the lifetime of the `install` and `activate` events dispatched on the global scope as part of the service worker lifecycle. 752 841 * 753 842 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableEvent) 754 843 */ 755 844 declare abstract class ExtendableEvent extends Event { 756 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableEvent/waitUntil) */ 845 + /** 846 + * The **`ExtendableEvent.waitUntil()`** method tells the event dispatcher that work is ongoing. 847 + * 848 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableEvent/waitUntil) 849 + */ 757 850 waitUntil(promise: Promise<any>): void; 758 851 } 759 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent) */ 852 + /** 853 + * The **`CustomEvent`** interface represents events initialized by an application for any purpose. 854 + * 855 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent) 856 + */ 760 857 declare class CustomEvent<T = any> extends Event { 761 858 constructor(type: string, init?: CustomEventCustomEventInit); 762 859 /** 763 - * Returns any custom data event was created with. Typically used for synthetic events. 860 + * The read-only **`detail`** property of the CustomEvent interface returns any data passed when initializing the event. 764 861 * 765 862 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent/detail) 766 863 */ ··· 773 870 detail?: any; 774 871 } 775 872 /** 776 - * A file-like object of immutable, raw data. Blobs represent data that isn't necessarily in a JavaScript-native format. The File interface is based on Blob, inheriting blob functionality and expanding it to support files on the user's system. 873 + * The **`Blob`** interface represents a blob, which is a file-like object of immutable, raw data; they can be read as text or binary data, or converted into a ReadableStream so its methods can be used for processing the data. 777 874 * 778 875 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob) 779 876 */ 780 877 declare class Blob { 781 878 constructor(type?: ((ArrayBuffer | ArrayBufferView) | string | Blob)[], options?: BlobOptions); 782 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/size) */ 879 + /** 880 + * The **`size`** read-only property of the Blob interface returns the size of the Blob or File in bytes. 881 + * 882 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/size) 883 + */ 783 884 get size(): number; 784 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/type) */ 885 + /** 886 + * The **`type`** read-only property of the Blob interface returns the MIME type of the file. 887 + * 888 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/type) 889 + */ 785 890 get type(): string; 786 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/slice) */ 891 + /** 892 + * The **`slice()`** method of the Blob interface creates and returns a new `Blob` object which contains data from a subset of the blob on which it's called. 893 + * 894 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/slice) 895 + */ 787 896 slice(start?: number, end?: number, type?: string): Blob; 788 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/arrayBuffer) */ 897 + /** 898 + * The **`arrayBuffer()`** method of the Blob interface returns a Promise that resolves with the contents of the blob as binary data contained in an ArrayBuffer. 899 + * 900 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/arrayBuffer) 901 + */ 789 902 arrayBuffer(): Promise<ArrayBuffer>; 790 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/bytes) */ 903 + /** 904 + * The **`bytes()`** method of the Blob interface returns a Promise that resolves with a Uint8Array containing the contents of the blob as an array of bytes. 905 + * 906 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/bytes) 907 + */ 791 908 bytes(): Promise<Uint8Array>; 792 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/text) */ 909 + /** 910 + * The **`text()`** method of the string containing the contents of the blob, interpreted as UTF-8. 911 + * 912 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/text) 913 + */ 793 914 text(): Promise<string>; 794 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/stream) */ 915 + /** 916 + * The **`stream()`** method of the Blob interface returns a ReadableStream which upon reading returns the data contained within the `Blob`. 917 + * 918 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/stream) 919 + */ 795 920 stream(): ReadableStream; 796 921 } 797 922 interface BlobOptions { 798 923 type?: string; 799 924 } 800 925 /** 801 - * Provides information about files and allows JavaScript in a web page to access their content. 926 + * The **`File`** interface provides information about files and allows JavaScript in a web page to access their content. 802 927 * 803 928 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/File) 804 929 */ 805 930 declare class File extends Blob { 806 931 constructor(bits: ((ArrayBuffer | ArrayBufferView) | string | Blob)[] | undefined, name: string, options?: FileOptions); 807 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/name) */ 932 + /** 933 + * The **`name`** read-only property of the File interface returns the name of the file represented by a File object. 934 + * 935 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/name) 936 + */ 808 937 get name(): string; 809 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/lastModified) */ 938 + /** 939 + * The **`lastModified`** read-only property of the File interface provides the last modified date of the file as the number of milliseconds since the Unix epoch (January 1, 1970 at midnight). 940 + * 941 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/lastModified) 942 + */ 810 943 get lastModified(): number; 811 944 } 812 945 interface FileOptions { ··· 819 952 * [Cloudflare Docs Reference](https://developers.cloudflare.com/workers/runtime-apis/cache/) 820 953 */ 821 954 declare abstract class CacheStorage { 822 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/open) */ 955 + /** 956 + * The **`open()`** method of the the Cache object matching the `cacheName`. 957 + * 958 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/open) 959 + */ 823 960 open(cacheName: string): Promise<Cache>; 824 961 readonly default: Cache; 825 962 } ··· 849 986 */ 850 987 declare abstract class Crypto { 851 988 /** 989 + * The **`Crypto.subtle`** read-only property returns a cryptographic operations. 852 990 * Available only in secure contexts. 853 991 * 854 992 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto/subtle) 855 993 */ 856 994 get subtle(): SubtleCrypto; 857 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto/getRandomValues) */ 995 + /** 996 + * The **`Crypto.getRandomValues()`** method lets you get cryptographically strong random values. 997 + * 998 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto/getRandomValues) 999 + */ 858 1000 getRandomValues<T extends Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array | BigInt64Array | BigUint64Array>(buffer: T): T; 859 1001 /** 1002 + * The **`randomUUID()`** method of the Crypto interface is used to generate a v4 UUID using a cryptographically secure random number generator. 860 1003 * Available only in secure contexts. 861 1004 * 862 1005 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto/randomUUID) ··· 865 1008 DigestStream: typeof DigestStream; 866 1009 } 867 1010 /** 868 - * This Web Crypto API interface provides a number of low-level cryptographic functions. It is accessed via the Crypto.subtle properties available in a window context (via Window.crypto). 1011 + * The **`SubtleCrypto`** interface of the Web Crypto API provides a number of low-level cryptographic functions. 869 1012 * Available only in secure contexts. 870 1013 * 871 1014 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto) 872 1015 */ 873 1016 declare abstract class SubtleCrypto { 874 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/encrypt) */ 1017 + /** 1018 + * The **`encrypt()`** method of the SubtleCrypto interface encrypts data. 1019 + * 1020 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/encrypt) 1021 + */ 875 1022 encrypt(algorithm: string | SubtleCryptoEncryptAlgorithm, key: CryptoKey, plainText: ArrayBuffer | ArrayBufferView): Promise<ArrayBuffer>; 876 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/decrypt) */ 1023 + /** 1024 + * The **`decrypt()`** method of the SubtleCrypto interface decrypts some encrypted data. 1025 + * 1026 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/decrypt) 1027 + */ 877 1028 decrypt(algorithm: string | SubtleCryptoEncryptAlgorithm, key: CryptoKey, cipherText: ArrayBuffer | ArrayBufferView): Promise<ArrayBuffer>; 878 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/sign) */ 1029 + /** 1030 + * The **`sign()`** method of the SubtleCrypto interface generates a digital signature. 1031 + * 1032 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/sign) 1033 + */ 879 1034 sign(algorithm: string | SubtleCryptoSignAlgorithm, key: CryptoKey, data: ArrayBuffer | ArrayBufferView): Promise<ArrayBuffer>; 880 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/verify) */ 1035 + /** 1036 + * The **`verify()`** method of the SubtleCrypto interface verifies a digital signature. 1037 + * 1038 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/verify) 1039 + */ 881 1040 verify(algorithm: string | SubtleCryptoSignAlgorithm, key: CryptoKey, signature: ArrayBuffer | ArrayBufferView, data: ArrayBuffer | ArrayBufferView): Promise<boolean>; 882 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/digest) */ 1041 + /** 1042 + * The **`digest()`** method of the SubtleCrypto interface generates a _digest_ of the given data, using the specified hash function. 1043 + * 1044 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/digest) 1045 + */ 883 1046 digest(algorithm: string | SubtleCryptoHashAlgorithm, data: ArrayBuffer | ArrayBufferView): Promise<ArrayBuffer>; 884 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/generateKey) */ 1047 + /** 1048 + * The **`generateKey()`** method of the SubtleCrypto interface is used to generate a new key (for symmetric algorithms) or key pair (for public-key algorithms). 1049 + * 1050 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/generateKey) 1051 + */ 885 1052 generateKey(algorithm: string | SubtleCryptoGenerateKeyAlgorithm, extractable: boolean, keyUsages: string[]): Promise<CryptoKey | CryptoKeyPair>; 886 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveKey) */ 1053 + /** 1054 + * The **`deriveKey()`** method of the SubtleCrypto interface can be used to derive a secret key from a master key. 1055 + * 1056 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveKey) 1057 + */ 887 1058 deriveKey(algorithm: string | SubtleCryptoDeriveKeyAlgorithm, baseKey: CryptoKey, derivedKeyAlgorithm: string | SubtleCryptoImportKeyAlgorithm, extractable: boolean, keyUsages: string[]): Promise<CryptoKey>; 888 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveBits) */ 1059 + /** 1060 + * The **`deriveBits()`** method of the key. 1061 + * 1062 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveBits) 1063 + */ 889 1064 deriveBits(algorithm: string | SubtleCryptoDeriveKeyAlgorithm, baseKey: CryptoKey, length?: number | null): Promise<ArrayBuffer>; 890 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/importKey) */ 1065 + /** 1066 + * The **`importKey()`** method of the SubtleCrypto interface imports a key: that is, it takes as input a key in an external, portable format and gives you a CryptoKey object that you can use in the Web Crypto API. 1067 + * 1068 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/importKey) 1069 + */ 891 1070 importKey(format: string, keyData: (ArrayBuffer | ArrayBufferView) | JsonWebKey, algorithm: string | SubtleCryptoImportKeyAlgorithm, extractable: boolean, keyUsages: string[]): Promise<CryptoKey>; 892 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/exportKey) */ 1071 + /** 1072 + * The **`exportKey()`** method of the SubtleCrypto interface exports a key: that is, it takes as input a CryptoKey object and gives you the key in an external, portable format. 1073 + * 1074 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/exportKey) 1075 + */ 893 1076 exportKey(format: string, key: CryptoKey): Promise<ArrayBuffer | JsonWebKey>; 894 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/wrapKey) */ 1077 + /** 1078 + * The **`wrapKey()`** method of the SubtleCrypto interface 'wraps' a key. 1079 + * 1080 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/wrapKey) 1081 + */ 895 1082 wrapKey(format: string, key: CryptoKey, wrappingKey: CryptoKey, wrapAlgorithm: string | SubtleCryptoEncryptAlgorithm): Promise<ArrayBuffer>; 896 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/unwrapKey) */ 1083 + /** 1084 + * The **`unwrapKey()`** method of the SubtleCrypto interface 'unwraps' a key. 1085 + * 1086 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/unwrapKey) 1087 + */ 897 1088 unwrapKey(format: string, wrappedKey: ArrayBuffer | ArrayBufferView, unwrappingKey: CryptoKey, unwrapAlgorithm: string | SubtleCryptoEncryptAlgorithm, unwrappedKeyAlgorithm: string | SubtleCryptoImportKeyAlgorithm, extractable: boolean, keyUsages: string[]): Promise<CryptoKey>; 898 1089 timingSafeEqual(a: ArrayBuffer | ArrayBufferView, b: ArrayBuffer | ArrayBufferView): boolean; 899 1090 } 900 1091 /** 901 - * The CryptoKey dictionary of the Web Crypto API represents a cryptographic key. 1092 + * The **`CryptoKey`** interface of the Web Crypto API represents a cryptographic key obtained from one of the SubtleCrypto methods SubtleCrypto.generateKey, SubtleCrypto.deriveKey, SubtleCrypto.importKey, or SubtleCrypto.unwrapKey. 902 1093 * Available only in secure contexts. 903 1094 * 904 1095 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey) 905 1096 */ 906 1097 declare abstract class CryptoKey { 907 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/type) */ 1098 + /** 1099 + * The read-only **`type`** property of the CryptoKey interface indicates which kind of key is represented by the object. 1100 + * 1101 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/type) 1102 + */ 908 1103 readonly type: string; 909 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/extractable) */ 1104 + /** 1105 + * The read-only **`extractable`** property of the CryptoKey interface indicates whether or not the key may be extracted using `SubtleCrypto.exportKey()` or `SubtleCrypto.wrapKey()`. 1106 + * 1107 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/extractable) 1108 + */ 910 1109 readonly extractable: boolean; 911 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/algorithm) */ 1110 + /** 1111 + * The read-only **`algorithm`** property of the CryptoKey interface returns an object describing the algorithm for which this key can be used, and any associated extra parameters. 1112 + * 1113 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/algorithm) 1114 + */ 912 1115 readonly algorithm: CryptoKeyKeyAlgorithm | CryptoKeyAesKeyAlgorithm | CryptoKeyHmacKeyAlgorithm | CryptoKeyRsaKeyAlgorithm | CryptoKeyEllipticKeyAlgorithm | CryptoKeyArbitraryKeyAlgorithm; 913 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/usages) */ 1116 + /** 1117 + * The read-only **`usages`** property of the CryptoKey interface indicates what can be done with the key. 1118 + * 1119 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/usages) 1120 + */ 914 1121 readonly usages: string[]; 915 1122 } 916 1123 interface CryptoKeyPair { ··· 1017 1224 get bytesWritten(): number | bigint; 1018 1225 } 1019 1226 /** 1020 - * A decoder for a specific method, that is a specific character encoding, like utf-8, iso-8859-2, koi8, cp1261, gbk, etc.ย A decoder takes a stream of bytes as input and emits a stream of code points. For a more scalable, non-native library, see StringView โ€“ a C-like representation of strings based on typed arrays. 1227 + * The **`TextDecoder`** interface represents a decoder for a specific text encoding, such as `UTF-8`, `ISO-8859-2`, `KOI8-R`, `GBK`, etc. 1021 1228 * 1022 1229 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder) 1023 1230 */ 1024 1231 declare class TextDecoder { 1025 1232 constructor(label?: string, options?: TextDecoderConstructorOptions); 1026 1233 /** 1027 - * Returns the result of running encoding's decoder. The method can be invoked zero or more times with options's stream set to true, and then once without options's stream (or set to false), to process a fragmented input. If the invocation without options's stream (or set to false) has no input, it's clearest to omit both arguments. 1028 - * 1029 - * ``` 1030 - * var string = "", decoder = new TextDecoder(encoding), buffer; 1031 - * while(buffer = next_chunk()) { 1032 - * string += decoder.decode(buffer, {stream:true}); 1033 - * } 1034 - * string += decoder.decode(); // end-of-queue 1035 - * ``` 1036 - * 1037 - * If the error mode is "fatal" and encoding's decoder returns error, throws a TypeError. 1234 + * The **`TextDecoder.decode()`** method returns a string containing text decoded from the buffer passed as a parameter. 1038 1235 * 1039 1236 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder/decode) 1040 1237 */ ··· 1044 1241 get ignoreBOM(): boolean; 1045 1242 } 1046 1243 /** 1047 - * TextEncoder takes a stream of code points as input and emits a stream of bytes. For a more scalable, non-native library, see StringView โ€“ a C-like representation of strings based on typed arrays. 1244 + * The **`TextEncoder`** interface takes a stream of code points as input and emits a stream of UTF-8 bytes. 1048 1245 * 1049 1246 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder) 1050 1247 */ 1051 1248 declare class TextEncoder { 1052 1249 constructor(); 1053 1250 /** 1054 - * Returns the result of running UTF-8's encoder. 1251 + * The **`TextEncoder.encode()`** method takes a string as input, and returns a Global_Objects/Uint8Array containing the text given in parameters encoded with the specific method for that TextEncoder object. 1055 1252 * 1056 1253 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder/encode) 1057 1254 */ 1058 1255 encode(input?: string): Uint8Array; 1059 1256 /** 1060 - * Runs the UTF-8 encoder on source, stores the result of that operation into destination, and returns the progress made as an object wherein read is the number of converted code units of source and written is the number of bytes modified in destination. 1257 + * The **`TextEncoder.encodeInto()`** method takes a string to encode and a destination Uint8Array to put resulting UTF-8 encoded text into, and returns a dictionary object indicating the progress of the encoding. 1061 1258 * 1062 1259 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder/encodeInto) 1063 1260 */ 1064 - encodeInto(input: string, buffer: ArrayBuffer | ArrayBufferView): TextEncoderEncodeIntoResult; 1261 + encodeInto(input: string, buffer: Uint8Array): TextEncoderEncodeIntoResult; 1065 1262 get encoding(): string; 1066 1263 } 1067 1264 interface TextDecoderConstructorOptions { ··· 1076 1273 written: number; 1077 1274 } 1078 1275 /** 1079 - * Events providing information related to errors in scripts or in files. 1276 + * The **`ErrorEvent`** interface represents events providing information related to errors in scripts or in files. 1080 1277 * 1081 1278 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent) 1082 1279 */ 1083 1280 declare class ErrorEvent extends Event { 1084 1281 constructor(type: string, init?: ErrorEventErrorEventInit); 1085 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/filename) */ 1282 + /** 1283 + * The **`filename`** read-only property of the ErrorEvent interface returns a string containing the name of the script file in which the error occurred. 1284 + * 1285 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/filename) 1286 + */ 1086 1287 get filename(): string; 1087 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/message) */ 1288 + /** 1289 + * The **`message`** read-only property of the ErrorEvent interface returns a string containing a human-readable error message describing the problem. 1290 + * 1291 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/message) 1292 + */ 1088 1293 get message(): string; 1089 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/lineno) */ 1294 + /** 1295 + * The **`lineno`** read-only property of the ErrorEvent interface returns an integer containing the line number of the script file on which the error occurred. 1296 + * 1297 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/lineno) 1298 + */ 1090 1299 get lineno(): number; 1091 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/colno) */ 1300 + /** 1301 + * The **`colno`** read-only property of the ErrorEvent interface returns an integer containing the column number of the script file on which the error occurred. 1302 + * 1303 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/colno) 1304 + */ 1092 1305 get colno(): number; 1093 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/error) */ 1306 + /** 1307 + * The **`error`** read-only property of the ErrorEvent interface returns a JavaScript value, such as an Error or DOMException, representing the error associated with this event. 1308 + * 1309 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/error) 1310 + */ 1094 1311 get error(): any; 1095 1312 } 1096 1313 interface ErrorEventErrorEventInit { ··· 1101 1318 error?: any; 1102 1319 } 1103 1320 /** 1104 - * Provides a way to easily construct a set of key/value pairs representing form fields and their values, which can then be easily sent using the XMLHttpRequest.send() method. It uses the same format a form would use if the encoding type were set to "multipart/form-data". 1321 + * The **`MessageEvent`** interface represents a message received by a target object. 1322 + * 1323 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent) 1324 + */ 1325 + declare class MessageEvent extends Event { 1326 + constructor(type: string, initializer: MessageEventInit); 1327 + /** 1328 + * The **`data`** read-only property of the The data sent by the message emitter; this can be any data type, depending on what originated this event. 1329 + * 1330 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/data) 1331 + */ 1332 + readonly data: any; 1333 + /** 1334 + * The **`origin`** read-only property of the origin of the message emitter. 1335 + * 1336 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/origin) 1337 + */ 1338 + readonly origin: string | null; 1339 + /** 1340 + * The **`lastEventId`** read-only property of the unique ID for the event. 1341 + * 1342 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/lastEventId) 1343 + */ 1344 + readonly lastEventId: string; 1345 + /** 1346 + * The **`source`** read-only property of the a WindowProxy, MessagePort, or a `MessageEventSource` (which can be a WindowProxy, message emitter. 1347 + * 1348 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/source) 1349 + */ 1350 + readonly source: MessagePort | null; 1351 + /** 1352 + * The **`ports`** read-only property of the containing all MessagePort objects sent with the message, in order. 1353 + * 1354 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/ports) 1355 + */ 1356 + readonly ports: MessagePort[]; 1357 + } 1358 + interface MessageEventInit { 1359 + data: ArrayBuffer | string; 1360 + } 1361 + /** 1362 + * The **`PromiseRejectionEvent`** interface represents events which are sent to the global script context when JavaScript Promises are rejected. 1363 + * 1364 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent) 1365 + */ 1366 + declare abstract class PromiseRejectionEvent extends Event { 1367 + /** 1368 + * The PromiseRejectionEvent interface's **`promise`** read-only property indicates the JavaScript rejected. 1369 + * 1370 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent/promise) 1371 + */ 1372 + readonly promise: Promise<any>; 1373 + /** 1374 + * The PromiseRejectionEvent **`reason`** read-only property is any JavaScript value or Object which provides the reason passed into Promise.reject(). 1375 + * 1376 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent/reason) 1377 + */ 1378 + readonly reason: any; 1379 + } 1380 + /** 1381 + * The **`FormData`** interface provides a way to construct a set of key/value pairs representing form fields and their values, which can be sent using the Window/fetch, XMLHttpRequest.send() or navigator.sendBeacon() methods. 1105 1382 * 1106 1383 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData) 1107 1384 */ 1108 1385 declare class FormData { 1109 1386 constructor(); 1110 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/append) */ 1387 + /** 1388 + * The **`append()`** method of the FormData interface appends a new value onto an existing key inside a `FormData` object, or adds the key if it does not already exist. 1389 + * 1390 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/append) 1391 + */ 1111 1392 append(name: string, value: string): void; 1112 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/append) */ 1393 + /** 1394 + * The **`append()`** method of the FormData interface appends a new value onto an existing key inside a `FormData` object, or adds the key if it does not already exist. 1395 + * 1396 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/append) 1397 + */ 1113 1398 append(name: string, value: Blob, filename?: string): void; 1114 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/delete) */ 1399 + /** 1400 + * The **`delete()`** method of the FormData interface deletes a key and its value(s) from a `FormData` object. 1401 + * 1402 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/delete) 1403 + */ 1115 1404 delete(name: string): void; 1116 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/get) */ 1405 + /** 1406 + * The **`get()`** method of the FormData interface returns the first value associated with a given key from within a `FormData` object. 1407 + * 1408 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/get) 1409 + */ 1117 1410 get(name: string): (File | string) | null; 1118 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/getAll) */ 1411 + /** 1412 + * The **`getAll()`** method of the FormData interface returns all the values associated with a given key from within a `FormData` object. 1413 + * 1414 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/getAll) 1415 + */ 1119 1416 getAll(name: string): (File | string)[]; 1120 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/has) */ 1417 + /** 1418 + * The **`has()`** method of the FormData interface returns whether a `FormData` object contains a certain key. 1419 + * 1420 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/has) 1421 + */ 1121 1422 has(name: string): boolean; 1122 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/set) */ 1423 + /** 1424 + * The **`set()`** method of the FormData interface sets a new value for an existing key inside a `FormData` object, or adds the key/value if it does not already exist. 1425 + * 1426 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/set) 1427 + */ 1123 1428 set(name: string, value: string): void; 1124 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/set) */ 1429 + /** 1430 + * The **`set()`** method of the FormData interface sets a new value for an existing key inside a `FormData` object, or adds the key/value if it does not already exist. 1431 + * 1432 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/set) 1433 + */ 1125 1434 set(name: string, value: Blob, filename?: string): void; 1126 1435 /* Returns an array of key, value pairs for every entry in the list. */ 1127 1436 entries(): IterableIterator<[ ··· 1209 1518 append(content: string, options?: ContentOptions): DocumentEnd; 1210 1519 } 1211 1520 /** 1212 - * This is the event type for fetchย events dispatched on theย service worker global scope. It contains information about the fetch, including theย request and how the receiver will treat the response. It provides the event.respondWith() method, which allows us to provide a response to this fetch. 1521 + * This is the event type for `fetch` events dispatched on the ServiceWorkerGlobalScope. 1213 1522 * 1214 1523 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent) 1215 1524 */ 1216 1525 declare abstract class FetchEvent extends ExtendableEvent { 1217 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/request) */ 1526 + /** 1527 + * The **`request`** read-only property of the the event handler. 1528 + * 1529 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/request) 1530 + */ 1218 1531 readonly request: Request; 1219 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/respondWith) */ 1532 + /** 1533 + * The **`respondWith()`** method of allows you to provide a promise for a Response yourself. 1534 + * 1535 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/respondWith) 1536 + */ 1220 1537 respondWith(promise: Response | Promise<Response>): void; 1221 1538 passThroughOnException(): void; 1222 1539 } 1223 1540 type HeadersInit = Headers | Iterable<Iterable<string>> | Record<string, string>; 1224 1541 /** 1225 - * This Fetch API interface allows you to perform various actions on HTTP request and response headers. These actions include retrieving, setting, adding to, and removing. A Headers object has an associated header list, which is initially empty and consistsย of zero or more name and value pairs. ย You can add to this using methods like append() (see Examples.)ย In all methods of this interface, header names are matched by case-insensitive byte sequence. 1542 + * The **`Headers`** interface of the Fetch API allows you to perform various actions on HTTP request and response headers. 1226 1543 * 1227 1544 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers) 1228 1545 */ 1229 1546 declare class Headers { 1230 1547 constructor(init?: HeadersInit); 1231 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/get) */ 1548 + /** 1549 + * The **`get()`** method of the Headers interface returns a byte string of all the values of a header within a `Headers` object with a given name. 1550 + * 1551 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/get) 1552 + */ 1232 1553 get(name: string): string | null; 1233 1554 getAll(name: string): string[]; 1234 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/getSetCookie) */ 1555 + /** 1556 + * The **`getSetCookie()`** method of the Headers interface returns an array containing the values of all Set-Cookie headers associated with a response. 1557 + * 1558 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/getSetCookie) 1559 + */ 1235 1560 getSetCookie(): string[]; 1236 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/has) */ 1561 + /** 1562 + * The **`has()`** method of the Headers interface returns a boolean stating whether a `Headers` object contains a certain header. 1563 + * 1564 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/has) 1565 + */ 1237 1566 has(name: string): boolean; 1238 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/set) */ 1567 + /** 1568 + * The **`set()`** method of the Headers interface sets a new value for an existing header inside a `Headers` object, or adds the header if it does not already exist. 1569 + * 1570 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/set) 1571 + */ 1239 1572 set(name: string, value: string): void; 1240 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/append) */ 1573 + /** 1574 + * The **`append()`** method of the Headers interface appends a new value onto an existing header inside a `Headers` object, or adds the header if it does not already exist. 1575 + * 1576 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/append) 1577 + */ 1241 1578 append(name: string, value: string): void; 1242 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/delete) */ 1579 + /** 1580 + * The **`delete()`** method of the Headers interface deletes a header from the current `Headers` object. 1581 + * 1582 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/delete) 1583 + */ 1243 1584 delete(name: string): void; 1244 1585 forEach<This = unknown>(callback: (this: This, value: string, key: string, parent: Headers) => void, thisArg?: This): void; 1245 1586 /* Returns an iterator allowing to go through all key/value pairs contained in this object. */ ··· 1276 1617 blob(): Promise<Blob>; 1277 1618 } 1278 1619 /** 1279 - * This Fetch API interface represents the response to a request. 1620 + * The **`Response`** interface of the Fetch API represents the response to a request. 1280 1621 * 1281 1622 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response) 1282 1623 */ ··· 1288 1629 json(any: any, maybeInit?: (ResponseInit | Response)): Response; 1289 1630 }; 1290 1631 /** 1291 - * This Fetch API interface represents the response to a request. 1632 + * The **`Response`** interface of the Fetch API represents the response to a request. 1292 1633 * 1293 1634 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response) 1294 1635 */ 1295 1636 interface Response extends Body { 1296 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/clone) */ 1637 + /** 1638 + * The **`clone()`** method of the Response interface creates a clone of a response object, identical in every way, but stored in a different variable. 1639 + * 1640 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/clone) 1641 + */ 1297 1642 clone(): Response; 1298 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/status) */ 1643 + /** 1644 + * The **`status`** read-only property of the Response interface contains the HTTP status codes of the response. 1645 + * 1646 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/status) 1647 + */ 1299 1648 status: number; 1300 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/statusText) */ 1649 + /** 1650 + * The **`statusText`** read-only property of the Response interface contains the status message corresponding to the HTTP status code in Response.status. 1651 + * 1652 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/statusText) 1653 + */ 1301 1654 statusText: string; 1302 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/headers) */ 1655 + /** 1656 + * The **`headers`** read-only property of the with the response. 1657 + * 1658 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/headers) 1659 + */ 1303 1660 headers: Headers; 1304 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/ok) */ 1661 + /** 1662 + * The **`ok`** read-only property of the Response interface contains a Boolean stating whether the response was successful (status in the range 200-299) or not. 1663 + * 1664 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/ok) 1665 + */ 1305 1666 ok: boolean; 1306 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/redirected) */ 1667 + /** 1668 + * The **`redirected`** read-only property of the Response interface indicates whether or not the response is the result of a request you made which was redirected. 1669 + * 1670 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/redirected) 1671 + */ 1307 1672 redirected: boolean; 1308 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/url) */ 1673 + /** 1674 + * The **`url`** read-only property of the Response interface contains the URL of the response. 1675 + * 1676 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/url) 1677 + */ 1309 1678 url: string; 1310 1679 webSocket: WebSocket | null; 1311 1680 cf: any | undefined; 1312 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/type) */ 1681 + /** 1682 + * The **`type`** read-only property of the Response interface contains the type of the response. 1683 + * 1684 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/type) 1685 + */ 1313 1686 type: "default" | "error"; 1314 1687 } 1315 1688 interface ResponseInit { ··· 1322 1695 } 1323 1696 type RequestInfo<CfHostMetadata = unknown, Cf = CfProperties<CfHostMetadata>> = Request<CfHostMetadata, Cf> | string; 1324 1697 /** 1325 - * This Fetch API interface represents a resource request. 1698 + * The **`Request`** interface of the Fetch API represents a resource request. 1326 1699 * 1327 1700 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request) 1328 1701 */ ··· 1331 1704 new <CfHostMetadata = unknown, Cf = CfProperties<CfHostMetadata>>(input: RequestInfo<CfProperties> | URL, init?: RequestInit<Cf>): Request<CfHostMetadata, Cf>; 1332 1705 }; 1333 1706 /** 1334 - * This Fetch API interface represents a resource request. 1707 + * The **`Request`** interface of the Fetch API represents a resource request. 1335 1708 * 1336 1709 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request) 1337 1710 */ 1338 1711 interface Request<CfHostMetadata = unknown, Cf = CfProperties<CfHostMetadata>> extends Body { 1339 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/clone) */ 1712 + /** 1713 + * The **`clone()`** method of the Request interface creates a copy of the current `Request` object. 1714 + * 1715 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/clone) 1716 + */ 1340 1717 clone(): Request<CfHostMetadata, Cf>; 1341 1718 /** 1342 - * Returns request's HTTP method, which is "GET" by default. 1719 + * The **`method`** read-only property of the `POST`, etc.) A String indicating the method of the request. 1343 1720 * 1344 1721 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/method) 1345 1722 */ 1346 1723 method: string; 1347 1724 /** 1348 - * Returns the URL of request as a string. 1725 + * The **`url`** read-only property of the Request interface contains the URL of the request. 1349 1726 * 1350 1727 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/url) 1351 1728 */ 1352 1729 url: string; 1353 1730 /** 1354 - * Returns a Headers object consisting of the headers associated with request. Note that headers added in the network layer by the user agent will not be accounted for in this object, e.g., the "Host" header. 1731 + * The **`headers`** read-only property of the with the request. 1355 1732 * 1356 1733 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/headers) 1357 1734 */ 1358 1735 headers: Headers; 1359 1736 /** 1360 - * Returns the redirect mode associated with request, which is a string indicating how redirects for the request will be handled during fetching. A request will follow redirects by default. 1737 + * The **`redirect`** read-only property of the Request interface contains the mode for how redirects are handled. 1361 1738 * 1362 1739 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/redirect) 1363 1740 */ 1364 1741 redirect: string; 1365 1742 fetcher: Fetcher | null; 1366 1743 /** 1367 - * Returns the signal associated with request, which is an AbortSignal object indicating whether or not request has been aborted, and its abort event handler. 1744 + * The read-only **`signal`** property of the Request interface returns the AbortSignal associated with the request. 1368 1745 * 1369 1746 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/signal) 1370 1747 */ 1371 1748 signal: AbortSignal; 1372 1749 cf: Cf | undefined; 1373 1750 /** 1374 - * Returns request's subresource integrity metadata, which is a cryptographic hash of the resource being fetched. Its value consists of multiple hashes separated by whitespace. [SRI] 1751 + * The **`integrity`** read-only property of the Request interface contains the subresource integrity value of the request. 1375 1752 * 1376 1753 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/integrity) 1377 1754 */ 1378 1755 integrity: string; 1379 1756 /** 1380 - * Returns a boolean indicating whether or not request can outlive the global in which it was created. 1757 + * The **`keepalive`** read-only property of the Request interface contains the request's `keepalive` setting (`true` or `false`), which indicates whether the browser will keep the associated request alive if the page that initiated it is unloaded before the request is complete. 1381 1758 * 1382 1759 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/keepalive) 1383 1760 */ 1384 1761 keepalive: boolean; 1385 1762 /** 1386 - * Returns the cache mode associated with request, which is a string indicating how the request will interact with the browser's cache when fetching. 1763 + * The **`cache`** read-only property of the Request interface contains the cache mode of the request. 1387 1764 * 1388 1765 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/cache) 1389 1766 */ 1390 - cache?: "no-store"; 1767 + cache?: "no-store" | "no-cache"; 1391 1768 } 1392 1769 interface RequestInit<Cf = CfProperties> { 1393 1770 /* A string to set request's method. */ ··· 1401 1778 fetcher?: (Fetcher | null); 1402 1779 cf?: Cf; 1403 1780 /* A string indicating how the request will interact with the browser's cache to set request's cache. */ 1404 - cache?: "no-store"; 1781 + cache?: "no-store" | "no-cache"; 1405 1782 /* A cryptographic hash of the resource to be fetched by request. Sets request's integrity. */ 1406 1783 integrity?: string; 1407 1784 /* An AbortSignal to set request's signal. */ 1408 1785 signal?: (AbortSignal | null); 1409 1786 encodeResponseBody?: "automatic" | "manual"; 1410 1787 } 1411 - type Service<T extends Rpc.WorkerEntrypointBranded | undefined = undefined> = Fetcher<T>; 1788 + type Service<T extends (new (...args: any[]) => Rpc.WorkerEntrypointBranded) | Rpc.WorkerEntrypointBranded | ExportedHandler<any, any, any> | undefined = undefined> = T extends new (...args: any[]) => Rpc.WorkerEntrypointBranded ? Fetcher<InstanceType<T>> : T extends Rpc.WorkerEntrypointBranded ? Fetcher<T> : T extends Exclude<Rpc.EntrypointBranded, Rpc.WorkerEntrypointBranded> ? never : Fetcher<undefined>; 1412 1789 type Fetcher<T extends Rpc.EntrypointBranded | undefined = undefined, Reserved extends string = never> = (T extends Rpc.EntrypointBranded ? Rpc.Provider<T, Reserved | "fetch" | "connect"> : unknown) & { 1413 1790 fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>; 1414 1791 connect(address: SocketAddress | string, options?: SocketOptions): Socket; ··· 1734 2111 value?: undefined; 1735 2112 }; 1736 2113 /** 1737 - * This Streams API interface represents a readable stream of byte data. The Fetch API offers a concrete instance of a ReadableStream through the body property of a Response object. 2114 + * The `ReadableStream` interface of the Streams API represents a readable stream of byte data. 1738 2115 * 1739 2116 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream) 1740 2117 */ 1741 2118 interface ReadableStream<R = any> { 1742 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/locked) */ 2119 + /** 2120 + * The **`locked`** read-only property of the ReadableStream interface returns whether or not the readable stream is locked to a reader. 2121 + * 2122 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/locked) 2123 + */ 1743 2124 get locked(): boolean; 1744 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/cancel) */ 2125 + /** 2126 + * The **`cancel()`** method of the ReadableStream interface returns a Promise that resolves when the stream is canceled. 2127 + * 2128 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/cancel) 2129 + */ 1745 2130 cancel(reason?: any): Promise<void>; 1746 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/getReader) */ 2131 + /** 2132 + * The **`getReader()`** method of the ReadableStream interface creates a reader and locks the stream to it. 2133 + * 2134 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/getReader) 2135 + */ 1747 2136 getReader(): ReadableStreamDefaultReader<R>; 1748 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/getReader) */ 2137 + /** 2138 + * The **`getReader()`** method of the ReadableStream interface creates a reader and locks the stream to it. 2139 + * 2140 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/getReader) 2141 + */ 1749 2142 getReader(options: ReadableStreamGetReaderOptions): ReadableStreamBYOBReader; 1750 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/pipeThrough) */ 2143 + /** 2144 + * The **`pipeThrough()`** method of the ReadableStream interface provides a chainable way of piping the current stream through a transform stream or any other writable/readable pair. 2145 + * 2146 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/pipeThrough) 2147 + */ 1751 2148 pipeThrough<T>(transform: ReadableWritablePair<T, R>, options?: StreamPipeOptions): ReadableStream<T>; 1752 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/pipeTo) */ 2149 + /** 2150 + * The **`pipeTo()`** method of the ReadableStream interface pipes the current `ReadableStream` to a given WritableStream and returns a Promise that fulfills when the piping process completes successfully, or rejects if any errors were encountered. 2151 + * 2152 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/pipeTo) 2153 + */ 1753 2154 pipeTo(destination: WritableStream<R>, options?: StreamPipeOptions): Promise<void>; 1754 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/tee) */ 2155 + /** 2156 + * The **`tee()`** method of the two-element array containing the two resulting branches as new ReadableStream instances. 2157 + * 2158 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/tee) 2159 + */ 1755 2160 tee(): [ 1756 2161 ReadableStream<R>, 1757 2162 ReadableStream<R> ··· 1760 2165 [Symbol.asyncIterator](options?: ReadableStreamValuesOptions): AsyncIterableIterator<R>; 1761 2166 } 1762 2167 /** 1763 - * This Streams API interface represents a readable stream of byte data. The Fetch API offers a concrete instance of a ReadableStream through the body property of a Response object. 2168 + * The `ReadableStream` interface of the Streams API represents a readable stream of byte data. 1764 2169 * 1765 2170 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream) 1766 2171 */ ··· 1769 2174 new (underlyingSource: UnderlyingByteSource, strategy?: QueuingStrategy<Uint8Array>): ReadableStream<Uint8Array>; 1770 2175 new <R = any>(underlyingSource?: UnderlyingSource<R>, strategy?: QueuingStrategy<R>): ReadableStream<R>; 1771 2176 }; 1772 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader) */ 2177 + /** 2178 + * The **`ReadableStreamDefaultReader`** interface of the Streams API represents a default reader that can be used to read stream data supplied from a network (such as a fetch request). 2179 + * 2180 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader) 2181 + */ 1773 2182 declare class ReadableStreamDefaultReader<R = any> { 1774 2183 constructor(stream: ReadableStream); 1775 2184 get closed(): Promise<void>; 1776 2185 cancel(reason?: any): Promise<void>; 1777 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader/read) */ 2186 + /** 2187 + * The **`read()`** method of the ReadableStreamDefaultReader interface returns a Promise providing access to the next chunk in the stream's internal queue. 2188 + * 2189 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader/read) 2190 + */ 1778 2191 read(): Promise<ReadableStreamReadResult<R>>; 1779 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader/releaseLock) */ 2192 + /** 2193 + * The **`releaseLock()`** method of the ReadableStreamDefaultReader interface releases the reader's lock on the stream. 2194 + * 2195 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader/releaseLock) 2196 + */ 1780 2197 releaseLock(): void; 1781 2198 } 1782 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader) */ 2199 + /** 2200 + * The `ReadableStreamBYOBReader` interface of the Streams API defines a reader for a ReadableStream that supports zero-copy reading from an underlying byte source. 2201 + * 2202 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader) 2203 + */ 1783 2204 declare class ReadableStreamBYOBReader { 1784 2205 constructor(stream: ReadableStream); 1785 2206 get closed(): Promise<void>; 1786 2207 cancel(reason?: any): Promise<void>; 1787 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/read) */ 2208 + /** 2209 + * The **`read()`** method of the ReadableStreamBYOBReader interface is used to read data into a view on a user-supplied buffer from an associated readable byte stream. 2210 + * 2211 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/read) 2212 + */ 1788 2213 read<T extends ArrayBufferView>(view: T): Promise<ReadableStreamReadResult<T>>; 1789 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/releaseLock) */ 2214 + /** 2215 + * The **`releaseLock()`** method of the ReadableStreamBYOBReader interface releases the reader's lock on the stream. 2216 + * 2217 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/releaseLock) 2218 + */ 1790 2219 releaseLock(): void; 1791 2220 readAtLeast<T extends ArrayBufferView>(minElements: number, view: T): Promise<ReadableStreamReadResult<T>>; 1792 2221 } ··· 1801 2230 */ 1802 2231 mode: "byob"; 1803 2232 } 1804 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest) */ 2233 + /** 2234 + * The **`ReadableStreamBYOBRequest`** interface of the Streams API represents a 'pull request' for data from an underlying source that will made as a zero-copy transfer to a consumer (bypassing the stream's internal queues). 2235 + * 2236 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest) 2237 + */ 1805 2238 declare abstract class ReadableStreamBYOBRequest { 1806 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/view) */ 2239 + /** 2240 + * The **`view`** getter property of the ReadableStreamBYOBRequest interface returns the current view. 2241 + * 2242 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/view) 2243 + */ 1807 2244 get view(): Uint8Array | null; 1808 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/respond) */ 2245 + /** 2246 + * The **`respond()`** method of the ReadableStreamBYOBRequest interface is used to signal to the associated readable byte stream that the specified number of bytes were written into the ReadableStreamBYOBRequest.view. 2247 + * 2248 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/respond) 2249 + */ 1809 2250 respond(bytesWritten: number): void; 1810 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/respondWithNewView) */ 2251 + /** 2252 + * The **`respondWithNewView()`** method of the ReadableStreamBYOBRequest interface specifies a new view that the consumer of the associated readable byte stream should write to instead of ReadableStreamBYOBRequest.view. 2253 + * 2254 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/respondWithNewView) 2255 + */ 1811 2256 respondWithNewView(view: ArrayBuffer | ArrayBufferView): void; 1812 2257 get atLeast(): number | null; 1813 2258 } 1814 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController) */ 2259 + /** 2260 + * The **`ReadableStreamDefaultController`** interface of the Streams API represents a controller allowing control of a ReadableStream's state and internal queue. 2261 + * 2262 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController) 2263 + */ 1815 2264 declare abstract class ReadableStreamDefaultController<R = any> { 1816 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/desiredSize) */ 2265 + /** 2266 + * The **`desiredSize`** read-only property of the required to fill the stream's internal queue. 2267 + * 2268 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/desiredSize) 2269 + */ 1817 2270 get desiredSize(): number | null; 1818 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/close) */ 2271 + /** 2272 + * The **`close()`** method of the ReadableStreamDefaultController interface closes the associated stream. 2273 + * 2274 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/close) 2275 + */ 1819 2276 close(): void; 1820 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/enqueue) */ 2277 + /** 2278 + * The **`enqueue()`** method of the ```js-nolint enqueue(chunk) ``` - `chunk` - : The chunk to enqueue. 2279 + * 2280 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/enqueue) 2281 + */ 1821 2282 enqueue(chunk?: R): void; 1822 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/error) */ 2283 + /** 2284 + * The **`error()`** method of the with the associated stream to error. 2285 + * 2286 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/error) 2287 + */ 1823 2288 error(reason: any): void; 1824 2289 } 1825 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController) */ 2290 + /** 2291 + * The **`ReadableByteStreamController`** interface of the Streams API represents a controller for a readable byte stream. 2292 + * 2293 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController) 2294 + */ 1826 2295 declare abstract class ReadableByteStreamController { 1827 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/byobRequest) */ 2296 + /** 2297 + * The **`byobRequest`** read-only property of the ReadableByteStreamController interface returns the current BYOB request, or `null` if there are no pending requests. 2298 + * 2299 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/byobRequest) 2300 + */ 1828 2301 get byobRequest(): ReadableStreamBYOBRequest | null; 1829 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/desiredSize) */ 2302 + /** 2303 + * The **`desiredSize`** read-only property of the ReadableByteStreamController interface returns the number of bytes required to fill the stream's internal queue to its 'desired size'. 2304 + * 2305 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/desiredSize) 2306 + */ 1830 2307 get desiredSize(): number | null; 1831 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/close) */ 2308 + /** 2309 + * The **`close()`** method of the ReadableByteStreamController interface closes the associated stream. 2310 + * 2311 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/close) 2312 + */ 1832 2313 close(): void; 1833 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/enqueue) */ 2314 + /** 2315 + * The **`enqueue()`** method of the ReadableByteStreamController interface enqueues a given chunk on the associated readable byte stream (the chunk is copied into the stream's internal queues). 2316 + * 2317 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/enqueue) 2318 + */ 1834 2319 enqueue(chunk: ArrayBuffer | ArrayBufferView): void; 1835 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/error) */ 2320 + /** 2321 + * The **`error()`** method of the ReadableByteStreamController interface causes any future interactions with the associated stream to error with the specified reason. 2322 + * 2323 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/error) 2324 + */ 1836 2325 error(reason: any): void; 1837 2326 } 1838 2327 /** 1839 - * This Streams API interface represents a controller allowing control of aย WritableStream's state. When constructing a WritableStream, the underlying sink is given a corresponding WritableStreamDefaultController instance to manipulate. 2328 + * The **`WritableStreamDefaultController`** interface of the Streams API represents a controller allowing control of a WritableStream's state. 1840 2329 * 1841 2330 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController) 1842 2331 */ 1843 2332 declare abstract class WritableStreamDefaultController { 1844 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController/signal) */ 2333 + /** 2334 + * The read-only **`signal`** property of the WritableStreamDefaultController interface returns the AbortSignal associated with the controller. 2335 + * 2336 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController/signal) 2337 + */ 1845 2338 get signal(): AbortSignal; 1846 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController/error) */ 2339 + /** 2340 + * The **`error()`** method of the with the associated stream to error. 2341 + * 2342 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController/error) 2343 + */ 1847 2344 error(reason?: any): void; 1848 2345 } 1849 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController) */ 2346 + /** 2347 + * The **`TransformStreamDefaultController`** interface of the Streams API provides methods to manipulate the associated ReadableStream and WritableStream. 2348 + * 2349 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController) 2350 + */ 1850 2351 declare abstract class TransformStreamDefaultController<O = any> { 1851 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/desiredSize) */ 2352 + /** 2353 + * The **`desiredSize`** read-only property of the TransformStreamDefaultController interface returns the desired size to fill the queue of the associated ReadableStream. 2354 + * 2355 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/desiredSize) 2356 + */ 1852 2357 get desiredSize(): number | null; 1853 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/enqueue) */ 2358 + /** 2359 + * The **`enqueue()`** method of the TransformStreamDefaultController interface enqueues the given chunk in the readable side of the stream. 2360 + * 2361 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/enqueue) 2362 + */ 1854 2363 enqueue(chunk?: O): void; 1855 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/error) */ 2364 + /** 2365 + * The **`error()`** method of the TransformStreamDefaultController interface errors both sides of the stream. 2366 + * 2367 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/error) 2368 + */ 1856 2369 error(reason: any): void; 1857 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/terminate) */ 2370 + /** 2371 + * The **`terminate()`** method of the TransformStreamDefaultController interface closes the readable side and errors the writable side of the stream. 2372 + * 2373 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/terminate) 2374 + */ 1858 2375 terminate(): void; 1859 2376 } 1860 2377 interface ReadableWritablePair<R = any, W = any> { ··· 1867 2384 readable: ReadableStream<R>; 1868 2385 } 1869 2386 /** 1870 - * This Streams API interface providesย a standard abstraction for writing streaming data to a destination, known as a sink. This object comes with built-in backpressure and queuing. 2387 + * The **`WritableStream`** interface of the Streams API provides a standard abstraction for writing streaming data to a destination, known as a sink. 1871 2388 * 1872 2389 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream) 1873 2390 */ 1874 2391 declare class WritableStream<W = any> { 1875 2392 constructor(underlyingSink?: UnderlyingSink, queuingStrategy?: QueuingStrategy); 1876 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/locked) */ 2393 + /** 2394 + * The **`locked`** read-only property of the WritableStream interface returns a boolean indicating whether the `WritableStream` is locked to a writer. 2395 + * 2396 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/locked) 2397 + */ 1877 2398 get locked(): boolean; 1878 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/abort) */ 2399 + /** 2400 + * The **`abort()`** method of the WritableStream interface aborts the stream, signaling that the producer can no longer successfully write to the stream and it is to be immediately moved to an error state, with any queued writes discarded. 2401 + * 2402 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/abort) 2403 + */ 1879 2404 abort(reason?: any): Promise<void>; 1880 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/close) */ 2405 + /** 2406 + * The **`close()`** method of the WritableStream interface closes the associated stream. 2407 + * 2408 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/close) 2409 + */ 1881 2410 close(): Promise<void>; 1882 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/getWriter) */ 2411 + /** 2412 + * The **`getWriter()`** method of the WritableStream interface returns a new instance of WritableStreamDefaultWriter and locks the stream to that instance. 2413 + * 2414 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/getWriter) 2415 + */ 1883 2416 getWriter(): WritableStreamDefaultWriter<W>; 1884 2417 } 1885 2418 /** 1886 - * This Streams API interface is the object returned by WritableStream.getWriter() and once created locks the < writer to the WritableStream ensuring that no other streams can write to the underlying sink. 2419 + * The **`WritableStreamDefaultWriter`** interface of the Streams API is the object returned by WritableStream.getWriter() and once created locks the writer to the `WritableStream` ensuring that no other streams can write to the underlying sink. 1887 2420 * 1888 2421 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter) 1889 2422 */ 1890 2423 declare class WritableStreamDefaultWriter<W = any> { 1891 2424 constructor(stream: WritableStream); 1892 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/closed) */ 2425 + /** 2426 + * The **`closed`** read-only property of the the stream errors or the writer's lock is released. 2427 + * 2428 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/closed) 2429 + */ 1893 2430 get closed(): Promise<void>; 1894 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/ready) */ 2431 + /** 2432 + * The **`ready`** read-only property of the that resolves when the desired size of the stream's internal queue transitions from non-positive to positive, signaling that it is no longer applying backpressure. 2433 + * 2434 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/ready) 2435 + */ 1895 2436 get ready(): Promise<void>; 1896 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/desiredSize) */ 2437 + /** 2438 + * The **`desiredSize`** read-only property of the to fill the stream's internal queue. 2439 + * 2440 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/desiredSize) 2441 + */ 1897 2442 get desiredSize(): number | null; 1898 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/abort) */ 2443 + /** 2444 + * The **`abort()`** method of the the producer can no longer successfully write to the stream and it is to be immediately moved to an error state, with any queued writes discarded. 2445 + * 2446 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/abort) 2447 + */ 1899 2448 abort(reason?: any): Promise<void>; 1900 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/close) */ 2449 + /** 2450 + * The **`close()`** method of the stream. 2451 + * 2452 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/close) 2453 + */ 1901 2454 close(): Promise<void>; 1902 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/write) */ 2455 + /** 2456 + * The **`write()`** method of the operation. 2457 + * 2458 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/write) 2459 + */ 1903 2460 write(chunk?: W): Promise<void>; 1904 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/releaseLock) */ 2461 + /** 2462 + * The **`releaseLock()`** method of the corresponding stream. 2463 + * 2464 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/releaseLock) 2465 + */ 1905 2466 releaseLock(): void; 1906 2467 } 1907 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream) */ 2468 + /** 2469 + * The **`TransformStream`** interface of the Streams API represents a concrete implementation of the pipe chain _transform stream_ concept. 2470 + * 2471 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream) 2472 + */ 1908 2473 declare class TransformStream<I = any, O = any> { 1909 2474 constructor(transformer?: Transformer<I, O>, writableStrategy?: QueuingStrategy<I>, readableStrategy?: QueuingStrategy<O>); 1910 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream/readable) */ 2475 + /** 2476 + * The **`readable`** read-only property of the TransformStream interface returns the ReadableStream instance controlled by this `TransformStream`. 2477 + * 2478 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream/readable) 2479 + */ 1911 2480 get readable(): ReadableStream<O>; 1912 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream/writable) */ 2481 + /** 2482 + * The **`writable`** read-only property of the TransformStream interface returns the WritableStream instance controlled by this `TransformStream`. 2483 + * 2484 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream/writable) 2485 + */ 1913 2486 get writable(): WritableStream<I>; 1914 2487 } 1915 2488 declare class FixedLengthStream extends IdentityTransformStream { ··· 1924 2497 interface ReadableStreamValuesOptions { 1925 2498 preventCancel?: boolean; 1926 2499 } 1927 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompressionStream) */ 2500 + /** 2501 + * The **`CompressionStream`** interface of the Compression Streams API is an API for compressing a stream of data. 2502 + * 2503 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompressionStream) 2504 + */ 1928 2505 declare class CompressionStream extends TransformStream<ArrayBuffer | ArrayBufferView, Uint8Array> { 1929 2506 constructor(format: "gzip" | "deflate" | "deflate-raw"); 1930 2507 } 1931 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/DecompressionStream) */ 2508 + /** 2509 + * The **`DecompressionStream`** interface of the Compression Streams API is an API for decompressing a stream of data. 2510 + * 2511 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DecompressionStream) 2512 + */ 1932 2513 declare class DecompressionStream extends TransformStream<ArrayBuffer | ArrayBufferView, Uint8Array> { 1933 2514 constructor(format: "gzip" | "deflate" | "deflate-raw"); 1934 2515 } 1935 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoderStream) */ 2516 + /** 2517 + * The **`TextEncoderStream`** interface of the Encoding API converts a stream of strings into bytes in the UTF-8 encoding. 2518 + * 2519 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoderStream) 2520 + */ 1936 2521 declare class TextEncoderStream extends TransformStream<string, Uint8Array> { 1937 2522 constructor(); 1938 2523 get encoding(): string; 1939 2524 } 1940 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoderStream) */ 2525 + /** 2526 + * The **`TextDecoderStream`** interface of the Encoding API converts a stream of text in a binary encoding, such as UTF-8 etc., to a stream of strings. 2527 + * 2528 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoderStream) 2529 + */ 1941 2530 declare class TextDecoderStream extends TransformStream<ArrayBuffer | ArrayBufferView, string> { 1942 2531 constructor(label?: string, options?: TextDecoderStreamTextDecoderStreamInit); 1943 2532 get encoding(): string; ··· 1949 2538 ignoreBOM?: boolean; 1950 2539 } 1951 2540 /** 1952 - * This Streams API interface providesย a built-in byte length queuing strategy that can be used when constructing streams. 2541 + * The **`ByteLengthQueuingStrategy`** interface of the Streams API provides a built-in byte length queuing strategy that can be used when constructing streams. 1953 2542 * 1954 2543 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ByteLengthQueuingStrategy) 1955 2544 */ 1956 2545 declare class ByteLengthQueuingStrategy implements QueuingStrategy<ArrayBufferView> { 1957 2546 constructor(init: QueuingStrategyInit); 1958 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ByteLengthQueuingStrategy/highWaterMark) */ 2547 + /** 2548 + * The read-only **`ByteLengthQueuingStrategy.highWaterMark`** property returns the total number of bytes that can be contained in the internal queue before backpressure is applied. 2549 + * 2550 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ByteLengthQueuingStrategy/highWaterMark) 2551 + */ 1959 2552 get highWaterMark(): number; 1960 2553 /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/ByteLengthQueuingStrategy/size) */ 1961 2554 get size(): (chunk?: any) => number; 1962 2555 } 1963 2556 /** 1964 - * This Streams API interface providesย a built-in byte length queuing strategy that can be used when constructing streams. 2557 + * The **`CountQueuingStrategy`** interface of the Streams API provides a built-in chunk counting queuing strategy that can be used when constructing streams. 1965 2558 * 1966 2559 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CountQueuingStrategy) 1967 2560 */ 1968 2561 declare class CountQueuingStrategy implements QueuingStrategy { 1969 2562 constructor(init: QueuingStrategyInit); 1970 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/CountQueuingStrategy/highWaterMark) */ 2563 + /** 2564 + * The read-only **`CountQueuingStrategy.highWaterMark`** property returns the total number of chunks that can be contained in the internal queue before backpressure is applied. 2565 + * 2566 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CountQueuingStrategy/highWaterMark) 2567 + */ 1971 2568 get highWaterMark(): number; 1972 2569 /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/CountQueuingStrategy/size) */ 1973 2570 get size(): (chunk?: any) => number; ··· 2000 2597 readonly scriptVersion?: ScriptVersion; 2001 2598 readonly dispatchNamespace?: string; 2002 2599 readonly scriptTags?: string[]; 2600 + readonly durableObjectId?: string; 2003 2601 readonly outcome: string; 2004 2602 readonly executionModel: string; 2005 2603 readonly truncated: boolean; ··· 2085 2683 fromTrace(item: TraceItem): TraceMetrics; 2086 2684 } 2087 2685 /** 2088 - * The URLย interface represents an object providing static methods used for creating object URLs. 2686 + * The **`URL`** interface is used to parse, construct, normalize, and encode URL. 2089 2687 * 2090 2688 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL) 2091 2689 */ 2092 2690 declare class URL { 2093 2691 constructor(url: string | URL, base?: string | URL); 2094 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/origin) */ 2692 + /** 2693 + * The **`origin`** read-only property of the URL interface returns a string containing the Unicode serialization of the origin of the represented URL. 2694 + * 2695 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/origin) 2696 + */ 2095 2697 get origin(): string; 2096 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/href) */ 2698 + /** 2699 + * The **`href`** property of the URL interface is a string containing the whole URL. 2700 + * 2701 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/href) 2702 + */ 2097 2703 get href(): string; 2098 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/href) */ 2704 + /** 2705 + * The **`href`** property of the URL interface is a string containing the whole URL. 2706 + * 2707 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/href) 2708 + */ 2099 2709 set href(value: string); 2100 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/protocol) */ 2710 + /** 2711 + * The **`protocol`** property of the URL interface is a string containing the protocol or scheme of the URL, including the final `':'`. 2712 + * 2713 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/protocol) 2714 + */ 2101 2715 get protocol(): string; 2102 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/protocol) */ 2716 + /** 2717 + * The **`protocol`** property of the URL interface is a string containing the protocol or scheme of the URL, including the final `':'`. 2718 + * 2719 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/protocol) 2720 + */ 2103 2721 set protocol(value: string); 2104 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/username) */ 2722 + /** 2723 + * The **`username`** property of the URL interface is a string containing the username component of the URL. 2724 + * 2725 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/username) 2726 + */ 2105 2727 get username(): string; 2106 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/username) */ 2728 + /** 2729 + * The **`username`** property of the URL interface is a string containing the username component of the URL. 2730 + * 2731 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/username) 2732 + */ 2107 2733 set username(value: string); 2108 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/password) */ 2734 + /** 2735 + * The **`password`** property of the URL interface is a string containing the password component of the URL. 2736 + * 2737 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/password) 2738 + */ 2109 2739 get password(): string; 2110 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/password) */ 2740 + /** 2741 + * The **`password`** property of the URL interface is a string containing the password component of the URL. 2742 + * 2743 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/password) 2744 + */ 2111 2745 set password(value: string); 2112 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/host) */ 2746 + /** 2747 + * The **`host`** property of the URL interface is a string containing the host, which is the URL.hostname, and then, if the port of the URL is nonempty, a `':'`, followed by the URL.port of the URL. 2748 + * 2749 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/host) 2750 + */ 2113 2751 get host(): string; 2114 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/host) */ 2752 + /** 2753 + * The **`host`** property of the URL interface is a string containing the host, which is the URL.hostname, and then, if the port of the URL is nonempty, a `':'`, followed by the URL.port of the URL. 2754 + * 2755 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/host) 2756 + */ 2115 2757 set host(value: string); 2116 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/hostname) */ 2758 + /** 2759 + * The **`hostname`** property of the URL interface is a string containing either the domain name or IP address of the URL. 2760 + * 2761 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/hostname) 2762 + */ 2117 2763 get hostname(): string; 2118 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/hostname) */ 2764 + /** 2765 + * The **`hostname`** property of the URL interface is a string containing either the domain name or IP address of the URL. 2766 + * 2767 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/hostname) 2768 + */ 2119 2769 set hostname(value: string); 2120 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/port) */ 2770 + /** 2771 + * The **`port`** property of the URL interface is a string containing the port number of the URL. 2772 + * 2773 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/port) 2774 + */ 2121 2775 get port(): string; 2122 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/port) */ 2776 + /** 2777 + * The **`port`** property of the URL interface is a string containing the port number of the URL. 2778 + * 2779 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/port) 2780 + */ 2123 2781 set port(value: string); 2124 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/pathname) */ 2782 + /** 2783 + * The **`pathname`** property of the URL interface represents a location in a hierarchical structure. 2784 + * 2785 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/pathname) 2786 + */ 2125 2787 get pathname(): string; 2126 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/pathname) */ 2788 + /** 2789 + * The **`pathname`** property of the URL interface represents a location in a hierarchical structure. 2790 + * 2791 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/pathname) 2792 + */ 2127 2793 set pathname(value: string); 2128 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/search) */ 2794 + /** 2795 + * The **`search`** property of the URL interface is a search string, also called a _query string_, that is a string containing a `'?'` followed by the parameters of the URL. 2796 + * 2797 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/search) 2798 + */ 2129 2799 get search(): string; 2130 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/search) */ 2800 + /** 2801 + * The **`search`** property of the URL interface is a search string, also called a _query string_, that is a string containing a `'?'` followed by the parameters of the URL. 2802 + * 2803 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/search) 2804 + */ 2131 2805 set search(value: string); 2132 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/hash) */ 2806 + /** 2807 + * The **`hash`** property of the URL interface is a string containing a `'#'` followed by the fragment identifier of the URL. 2808 + * 2809 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/hash) 2810 + */ 2133 2811 get hash(): string; 2134 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/hash) */ 2812 + /** 2813 + * The **`hash`** property of the URL interface is a string containing a `'#'` followed by the fragment identifier of the URL. 2814 + * 2815 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/hash) 2816 + */ 2135 2817 set hash(value: string); 2136 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/searchParams) */ 2818 + /** 2819 + * The **`searchParams`** read-only property of the access to the [MISSING: httpmethod('GET')] decoded query arguments contained in the URL. 2820 + * 2821 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/searchParams) 2822 + */ 2137 2823 get searchParams(): URLSearchParams; 2138 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/toJSON) */ 2824 + /** 2825 + * The **`toJSON()`** method of the URL interface returns a string containing a serialized version of the URL, although in practice it seems to have the same effect as ```js-nolint toJSON() ``` None. 2826 + * 2827 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/toJSON) 2828 + */ 2139 2829 toJSON(): string; 2140 2830 /*function toString() { [native code] }*/ 2141 2831 toString(): string; 2142 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/canParse_static) */ 2832 + /** 2833 + * The **`URL.canParse()`** static method of the URL interface returns a boolean indicating whether or not an absolute URL, or a relative URL combined with a base URL, are parsable and valid. 2834 + * 2835 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/canParse_static) 2836 + */ 2143 2837 static canParse(url: string, base?: string): boolean; 2144 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/parse_static) */ 2838 + /** 2839 + * The **`URL.parse()`** static method of the URL interface returns a newly created URL object representing the URL defined by the parameters. 2840 + * 2841 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/parse_static) 2842 + */ 2145 2843 static parse(url: string, base?: string): URL | null; 2146 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/createObjectURL_static) */ 2844 + /** 2845 + * The **`createObjectURL()`** static method of the URL interface creates a string containing a URL representing the object given in the parameter. 2846 + * 2847 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/createObjectURL_static) 2848 + */ 2147 2849 static createObjectURL(object: File | Blob): string; 2148 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/revokeObjectURL_static) */ 2850 + /** 2851 + * The **`revokeObjectURL()`** static method of the URL interface releases an existing object URL which was previously created by calling Call this method when you've finished using an object URL to let the browser know not to keep the reference to the file any longer. 2852 + * 2853 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/revokeObjectURL_static) 2854 + */ 2149 2855 static revokeObjectURL(object_url: string): void; 2150 2856 } 2151 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams) */ 2857 + /** 2858 + * The **`URLSearchParams`** interface defines utility methods to work with the query string of a URL. 2859 + * 2860 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams) 2861 + */ 2152 2862 declare class URLSearchParams { 2153 2863 constructor(init?: (Iterable<Iterable<string>> | Record<string, string> | string)); 2154 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/size) */ 2864 + /** 2865 + * The **`size`** read-only property of the URLSearchParams interface indicates the total number of search parameter entries. 2866 + * 2867 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/size) 2868 + */ 2155 2869 get size(): number; 2156 2870 /** 2157 - * Appends a specified key/value pair as a new search parameter. 2871 + * The **`append()`** method of the URLSearchParams interface appends a specified key/value pair as a new search parameter. 2158 2872 * 2159 2873 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/append) 2160 2874 */ 2161 2875 append(name: string, value: string): void; 2162 2876 /** 2163 - * Deletes the given search parameter, and its associated value, from the list of all search parameters. 2877 + * The **`delete()`** method of the URLSearchParams interface deletes specified parameters and their associated value(s) from the list of all search parameters. 2164 2878 * 2165 2879 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/delete) 2166 2880 */ 2167 2881 delete(name: string, value?: string): void; 2168 2882 /** 2169 - * Returns the first value associated to the given search parameter. 2883 + * The **`get()`** method of the URLSearchParams interface returns the first value associated to the given search parameter. 2170 2884 * 2171 2885 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/get) 2172 2886 */ 2173 2887 get(name: string): string | null; 2174 2888 /** 2175 - * Returns all the values association with a given search parameter. 2889 + * The **`getAll()`** method of the URLSearchParams interface returns all the values associated with a given search parameter as an array. 2176 2890 * 2177 2891 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/getAll) 2178 2892 */ 2179 2893 getAll(name: string): string[]; 2180 2894 /** 2181 - * Returns a Boolean indicating if such a search parameter exists. 2895 + * The **`has()`** method of the URLSearchParams interface returns a boolean value that indicates whether the specified parameter is in the search parameters. 2182 2896 * 2183 2897 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/has) 2184 2898 */ 2185 2899 has(name: string, value?: string): boolean; 2186 2900 /** 2187 - * Sets the value associated to a given search parameter to the given value. If there were several values, delete the others. 2901 + * The **`set()`** method of the URLSearchParams interface sets the value associated with a given search parameter to the given value. 2188 2902 * 2189 2903 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/set) 2190 2904 */ 2191 2905 set(name: string, value: string): void; 2192 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/sort) */ 2906 + /** 2907 + * The **`URLSearchParams.sort()`** method sorts all key/value pairs contained in this object in place and returns `undefined`. 2908 + * 2909 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/sort) 2910 + */ 2193 2911 sort(): void; 2194 2912 /* Returns an array of key, value pairs for every entry in the search params. */ 2195 2913 entries(): IterableIterator<[ ··· 2201 2919 /* Returns a list of values in the search params. */ 2202 2920 values(): IterableIterator<string>; 2203 2921 forEach<This = unknown>(callback: (this: This, value: string, key: string, parent: URLSearchParams) => void, thisArg?: This): void; 2204 - /*function toString() { [native code] } Returns a string containing a query string suitable for use in a URL. Does not include the question mark. */ 2922 + /*function toString() { [native code] }*/ 2205 2923 toString(): string; 2206 2924 [Symbol.iterator](): IterableIterator<[ 2207 2925 key: string, ··· 2252 2970 ignoreCase?: boolean; 2253 2971 } 2254 2972 /** 2255 - * A CloseEvent is sent to clients using WebSockets when the connection is closed. This is delivered to the listener indicated by the WebSocket object's onclose attribute. 2973 + * A `CloseEvent` is sent to clients using WebSockets when the connection is closed. 2256 2974 * 2257 2975 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent) 2258 2976 */ 2259 2977 declare class CloseEvent extends Event { 2260 2978 constructor(type: string, initializer?: CloseEventInit); 2261 2979 /** 2262 - * Returns the WebSocket connection close code provided by the server. 2980 + * The **`code`** read-only property of the CloseEvent interface returns a WebSocket connection close code indicating the reason the connection was closed. 2263 2981 * 2264 2982 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent/code) 2265 2983 */ 2266 2984 readonly code: number; 2267 2985 /** 2268 - * Returns the WebSocket connection close reason provided by the server. 2986 + * The **`reason`** read-only property of the CloseEvent interface returns the WebSocket connection close reason the server gave for closing the connection; that is, a concise human-readable prose explanation for the closure. 2269 2987 * 2270 2988 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent/reason) 2271 2989 */ 2272 2990 readonly reason: string; 2273 2991 /** 2274 - * Returns true if the connection closed cleanly; false otherwise. 2992 + * The **`wasClean`** read-only property of the CloseEvent interface returns `true` if the connection closed cleanly. 2275 2993 * 2276 2994 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent/wasClean) 2277 2995 */ ··· 2282 3000 reason?: string; 2283 3001 wasClean?: boolean; 2284 3002 } 2285 - /** 2286 - * A message received by a target object. 2287 - * 2288 - * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent) 2289 - */ 2290 - declare class MessageEvent extends Event { 2291 - constructor(type: string, initializer: MessageEventInit); 2292 - /** 2293 - * Returns the data of the message. 2294 - * 2295 - * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/data) 2296 - */ 2297 - readonly data: ArrayBuffer | string; 2298 - } 2299 - interface MessageEventInit { 2300 - data: ArrayBuffer | string; 2301 - } 2302 3003 type WebSocketEventMap = { 2303 3004 close: CloseEvent; 2304 3005 message: MessageEvent; ··· 2306 3007 error: ErrorEvent; 2307 3008 }; 2308 3009 /** 2309 - * Provides the API for creating and managing a WebSocket connection to a server, as well as for sending and receiving data on the connection. 3010 + * The `WebSocket` object provides the API for creating and managing a WebSocket connection to a server, as well as for sending and receiving data on the connection. 2310 3011 * 2311 3012 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket) 2312 3013 */ ··· 2323 3024 readonly CLOSED: number; 2324 3025 }; 2325 3026 /** 2326 - * Provides the API for creating and managing a WebSocket connection to a server, as well as for sending and receiving data on the connection. 3027 + * The `WebSocket` object provides the API for creating and managing a WebSocket connection to a server, as well as for sending and receiving data on the connection. 2327 3028 * 2328 3029 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket) 2329 3030 */ 2330 3031 interface WebSocket extends EventTarget<WebSocketEventMap> { 2331 3032 accept(): void; 2332 3033 /** 2333 - * Transmits data using the WebSocket connection. data can be a string, a Blob, an ArrayBuffer, or an ArrayBufferView. 3034 + * The **`WebSocket.send()`** method enqueues the specified data to be transmitted to the server over the WebSocket connection, increasing the value of `bufferedAmount` by the number of bytes needed to contain the data. 2334 3035 * 2335 3036 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/send) 2336 3037 */ 2337 3038 send(message: (ArrayBuffer | ArrayBufferView) | string): void; 2338 3039 /** 2339 - * Closes the WebSocket connection, optionally using code as the the WebSocket connection close code and reason as the the WebSocket connection close reason. 3040 + * The **`WebSocket.close()`** method closes the already `CLOSED`, this method does nothing. 2340 3041 * 2341 3042 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/close) 2342 3043 */ ··· 2344 3045 serializeAttachment(attachment: any): void; 2345 3046 deserializeAttachment(): any | null; 2346 3047 /** 2347 - * Returns the state of the WebSocket object's connection. It can have the values described below. 3048 + * The **`WebSocket.readyState`** read-only property returns the current state of the WebSocket connection. 2348 3049 * 2349 3050 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState) 2350 3051 */ 2351 3052 readyState: number; 2352 3053 /** 2353 - * Returns the URL that was used to establish the WebSocket connection. 3054 + * The **`WebSocket.url`** read-only property returns the absolute URL of the WebSocket as resolved by the constructor. 2354 3055 * 2355 3056 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/url) 2356 3057 */ 2357 3058 url: string | null; 2358 3059 /** 2359 - * Returns the subprotocol selected by the server, if any. It can be used in conjunction with the array form of the constructor's second argument to perform subprotocol negotiation. 3060 + * The **`WebSocket.protocol`** read-only property returns the name of the sub-protocol the server selected; this will be one of the strings specified in the `protocols` parameter when creating the WebSocket object, or the empty string if no connection is established. 2360 3061 * 2361 3062 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/protocol) 2362 3063 */ 2363 3064 protocol: string | null; 2364 3065 /** 2365 - * Returns the extensions selected by the server, if any. 3066 + * The **`WebSocket.extensions`** read-only property returns the extensions selected by the server. 2366 3067 * 2367 3068 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/extensions) 2368 3069 */ ··· 2425 3126 remoteAddress?: string; 2426 3127 localAddress?: string; 2427 3128 } 2428 - /* [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource) */ 3129 + /** 3130 + * The **`EventSource`** interface is web content's interface to server-sent events. 3131 + * 3132 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource) 3133 + */ 2429 3134 declare class EventSource extends EventTarget { 2430 3135 constructor(url: string, init?: EventSourceEventSourceInit); 2431 3136 /** 2432 - * Aborts any instances of the fetch algorithm started for this EventSource object, and sets the readyState attribute to CLOSED. 3137 + * The **`close()`** method of the EventSource interface closes the connection, if one is made, and sets the ```js-nolint close() ``` None. 2433 3138 * 2434 3139 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/close) 2435 3140 */ 2436 3141 close(): void; 2437 3142 /** 2438 - * Returns the URL providing the event stream. 3143 + * The **`url`** read-only property of the URL of the source. 2439 3144 * 2440 3145 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/url) 2441 3146 */ 2442 3147 get url(): string; 2443 3148 /** 2444 - * Returns true if the credentials mode for connection requests to the URL providing the event stream is set to "include", and false otherwise. 3149 + * The **`withCredentials`** read-only property of the the `EventSource` object was instantiated with CORS credentials set. 2445 3150 * 2446 3151 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/withCredentials) 2447 3152 */ 2448 3153 get withCredentials(): boolean; 2449 3154 /** 2450 - * Returns the state of this EventSource object's connection. It can have the values described below. 3155 + * The **`readyState`** read-only property of the connection. 2451 3156 * 2452 3157 * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/readyState) 2453 3158 */ ··· 2480 3185 destroy(error?: any): Promise<void>; 2481 3186 signal(signo: number): void; 2482 3187 getTcpPort(port: number): Fetcher; 3188 + setInactivityTimeout(durationMs: number | bigint): Promise<void>; 2483 3189 } 2484 3190 interface ContainerStartupOptions { 2485 3191 entrypoint?: string[]; 2486 3192 enableInternet: boolean; 2487 3193 env?: Record<string, string>; 3194 + hardTimeout?: (number | bigint); 3195 + } 3196 + /** 3197 + * The **`MessagePort`** interface of the Channel Messaging API represents one of the two ports of a MessageChannel, allowing messages to be sent from one port and listening out for them arriving at the other. 3198 + * 3199 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort) 3200 + */ 3201 + declare abstract class MessagePort extends EventTarget { 3202 + /** 3203 + * The **`postMessage()`** method of the transfers ownership of objects to other browsing contexts. 3204 + * 3205 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/postMessage) 3206 + */ 3207 + postMessage(data?: any, options?: (any[] | MessagePortPostMessageOptions)): void; 3208 + /** 3209 + * The **`close()`** method of the MessagePort interface disconnects the port, so it is no longer active. 3210 + * 3211 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/close) 3212 + */ 3213 + close(): void; 3214 + /** 3215 + * The **`start()`** method of the MessagePort interface starts the sending of messages queued on the port. 3216 + * 3217 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/start) 3218 + */ 3219 + start(): void; 3220 + get onmessage(): any | null; 3221 + set onmessage(value: any | null); 3222 + } 3223 + /** 3224 + * The **`MessageChannel`** interface of the Channel Messaging API allows us to create a new message channel and send data through it via its two MessagePort properties. 3225 + * 3226 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageChannel) 3227 + */ 3228 + declare class MessageChannel { 3229 + constructor(); 3230 + /** 3231 + * The **`port1`** read-only property of the the port attached to the context that originated the channel. 3232 + * 3233 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageChannel/port1) 3234 + */ 3235 + readonly port1: MessagePort; 3236 + /** 3237 + * The **`port2`** read-only property of the the port attached to the context at the other end of the channel, which the message is initially sent to. 3238 + * 3239 + * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageChannel/port2) 3240 + */ 3241 + readonly port2: MessagePort; 3242 + } 3243 + interface MessagePortPostMessageOptions { 3244 + transfer?: any[]; 3245 + } 3246 + type LoopbackForExport<T extends (new (...args: any[]) => Rpc.EntrypointBranded) | ExportedHandler<any, any, any> | undefined = undefined> = T extends new (...args: any[]) => Rpc.WorkerEntrypointBranded ? LoopbackServiceStub<InstanceType<T>> : T extends new (...args: any[]) => Rpc.DurableObjectBranded ? LoopbackDurableObjectClass<InstanceType<T>> : T extends ExportedHandler<any, any, any> ? LoopbackServiceStub<undefined> : undefined; 3247 + type LoopbackServiceStub<T extends Rpc.WorkerEntrypointBranded | undefined = undefined> = Fetcher<T> & (T extends CloudflareWorkersModule.WorkerEntrypoint<any, infer Props> ? (opts: { 3248 + props?: Props; 3249 + }) => Fetcher<T> : (opts: { 3250 + props?: any; 3251 + }) => Fetcher<T>); 3252 + type LoopbackDurableObjectClass<T extends Rpc.DurableObjectBranded | undefined = undefined> = DurableObjectClass<T> & (T extends CloudflareWorkersModule.DurableObject<any, infer Props> ? (opts: { 3253 + props?: Props; 3254 + }) => DurableObjectClass<T> : (opts: { 3255 + props?: any; 3256 + }) => DurableObjectClass<T>); 3257 + interface SyncKvStorage { 3258 + get<T = unknown>(key: string): T | undefined; 3259 + list<T = unknown>(options?: SyncKvListOptions): Iterable<[ 3260 + string, 3261 + T 3262 + ]>; 3263 + put<T>(key: string, value: T): void; 3264 + delete(key: string): boolean; 3265 + } 3266 + interface SyncKvListOptions { 3267 + start?: string; 3268 + startAfter?: string; 3269 + end?: string; 3270 + prefix?: string; 3271 + reverse?: boolean; 3272 + limit?: number; 3273 + } 3274 + interface WorkerStub { 3275 + getEntrypoint<T extends Rpc.WorkerEntrypointBranded | undefined>(name?: string, options?: WorkerStubEntrypointOptions): Fetcher<T>; 3276 + } 3277 + interface WorkerStubEntrypointOptions { 3278 + props?: any; 3279 + } 3280 + interface WorkerLoader { 3281 + get(name: string, getCode: () => WorkerLoaderWorkerCode | Promise<WorkerLoaderWorkerCode>): WorkerStub; 3282 + } 3283 + interface WorkerLoaderModule { 3284 + js?: string; 3285 + cjs?: string; 3286 + text?: string; 3287 + data?: ArrayBuffer; 3288 + json?: any; 3289 + py?: string; 3290 + wasm?: ArrayBuffer; 3291 + } 3292 + interface WorkerLoaderWorkerCode { 3293 + compatibilityDate: string; 3294 + compatibilityFlags?: string[]; 3295 + allowExperimental?: boolean; 3296 + mainModule: string; 3297 + modules: Record<string, WorkerLoaderModule | string>; 3298 + env?: any; 3299 + globalOutbound?: (Fetcher | null); 3300 + tails?: Fetcher[]; 3301 + streamingTails?: Fetcher[]; 3302 + } 3303 + /** 3304 + * The Workers runtime supports a subset of the Performance API, used to measure timing and performance, 3305 + * as well as timing of subrequests and other operations. 3306 + * 3307 + * [Cloudflare Docs Reference](https://developers.cloudflare.com/workers/runtime-apis/performance/) 3308 + */ 3309 + declare abstract class Performance { 3310 + /* [Cloudflare Docs Reference](https://developers.cloudflare.com/workers/runtime-apis/performance/#performancetimeorigin) */ 3311 + get timeOrigin(): number; 3312 + /* [Cloudflare Docs Reference](https://developers.cloudflare.com/workers/runtime-apis/performance/#performancenow) */ 3313 + now(): number; 2488 3314 } 2489 3315 type AiImageClassificationInput = { 2490 3316 image: number[]; ··· 2537 3363 description: string; 2538 3364 }; 2539 3365 declare abstract class BaseAiImageTextToText { 3366 + inputs: AiImageTextToTextInput; 3367 + postProcessedOutputs: AiImageTextToTextOutput; 3368 + } 3369 + type AiMultimodalEmbeddingsInput = { 3370 + image: string; 3371 + text: string[]; 3372 + }; 3373 + type AiIMultimodalEmbeddingsOutput = { 3374 + data: number[][]; 3375 + shape: number[]; 3376 + }; 3377 + declare abstract class BaseAiMultimodalEmbeddings { 2540 3378 inputs: AiImageTextToTextInput; 2541 3379 postProcessedOutputs: AiImageTextToTextOutput; 2542 3380 } ··· 2670 3508 tools?: AiTextGenerationToolInput[] | AiTextGenerationToolLegacyInput[] | (object & NonNullable<unknown>); 2671 3509 functions?: AiTextGenerationFunctionsInput[]; 2672 3510 }; 3511 + type AiTextGenerationToolLegacyOutput = { 3512 + name: string; 3513 + arguments: unknown; 3514 + }; 3515 + type AiTextGenerationToolOutput = { 3516 + id: string; 3517 + type: "function"; 3518 + function: { 3519 + name: string; 3520 + arguments: string; 3521 + }; 3522 + }; 3523 + type UsageTags = { 3524 + prompt_tokens: number; 3525 + completion_tokens: number; 3526 + total_tokens: number; 3527 + }; 2673 3528 type AiTextGenerationOutput = { 2674 3529 response?: string; 2675 - tool_calls?: { 2676 - name: string; 2677 - arguments: unknown; 2678 - }[]; 3530 + tool_calls?: AiTextGenerationToolLegacyOutput[] & AiTextGenerationToolOutput[]; 3531 + usage?: UsageTags; 2679 3532 }; 2680 3533 declare abstract class BaseAiTextGeneration { 2681 3534 inputs: AiTextGenerationInput; ··· 2722 3575 inputs: AiTranslationInput; 2723 3576 postProcessedOutputs: AiTranslationOutput; 2724 3577 } 3578 + /** 3579 + * Workers AI support for OpenAI's Responses API 3580 + * Reference: https://github.com/openai/openai-node/blob/master/src/resources/responses/responses.ts 3581 + * 3582 + * It's a stripped down version from its source. 3583 + * It currently supports basic function calling, json mode and accepts images as input. 3584 + * 3585 + * It does not include types for WebSearch, CodeInterpreter, FileInputs, MCP, CustomTools. 3586 + * We plan to add those incrementally as model + platform capabilities evolve. 3587 + */ 3588 + type ResponsesInput = { 3589 + background?: boolean | null; 3590 + conversation?: string | ResponseConversationParam | null; 3591 + include?: Array<ResponseIncludable> | null; 3592 + input?: string | ResponseInput; 3593 + instructions?: string | null; 3594 + max_output_tokens?: number | null; 3595 + parallel_tool_calls?: boolean | null; 3596 + previous_response_id?: string | null; 3597 + prompt_cache_key?: string; 3598 + reasoning?: Reasoning | null; 3599 + safety_identifier?: string; 3600 + service_tier?: "auto" | "default" | "flex" | "scale" | "priority" | null; 3601 + stream?: boolean | null; 3602 + stream_options?: StreamOptions | null; 3603 + temperature?: number | null; 3604 + text?: ResponseTextConfig; 3605 + tool_choice?: ToolChoiceOptions | ToolChoiceFunction; 3606 + tools?: Array<Tool>; 3607 + top_p?: number | null; 3608 + truncation?: "auto" | "disabled" | null; 3609 + }; 3610 + type ResponsesOutput = { 3611 + id?: string; 3612 + created_at?: number; 3613 + output_text?: string; 3614 + error?: ResponseError | null; 3615 + incomplete_details?: ResponseIncompleteDetails | null; 3616 + instructions?: string | Array<ResponseInputItem> | null; 3617 + object?: "response"; 3618 + output?: Array<ResponseOutputItem>; 3619 + parallel_tool_calls?: boolean; 3620 + temperature?: number | null; 3621 + tool_choice?: ToolChoiceOptions | ToolChoiceFunction; 3622 + tools?: Array<Tool>; 3623 + top_p?: number | null; 3624 + max_output_tokens?: number | null; 3625 + previous_response_id?: string | null; 3626 + prompt?: ResponsePrompt | null; 3627 + reasoning?: Reasoning | null; 3628 + safety_identifier?: string; 3629 + service_tier?: "auto" | "default" | "flex" | "scale" | "priority" | null; 3630 + status?: ResponseStatus; 3631 + text?: ResponseTextConfig; 3632 + truncation?: "auto" | "disabled" | null; 3633 + usage?: ResponseUsage; 3634 + }; 3635 + type EasyInputMessage = { 3636 + content: string | ResponseInputMessageContentList; 3637 + role: "user" | "assistant" | "system" | "developer"; 3638 + type?: "message"; 3639 + }; 3640 + type ResponsesFunctionTool = { 3641 + name: string; 3642 + parameters: { 3643 + [key: string]: unknown; 3644 + } | null; 3645 + strict: boolean | null; 3646 + type: "function"; 3647 + description?: string | null; 3648 + }; 3649 + type ResponseIncompleteDetails = { 3650 + reason?: "max_output_tokens" | "content_filter"; 3651 + }; 3652 + type ResponsePrompt = { 3653 + id: string; 3654 + variables?: { 3655 + [key: string]: string | ResponseInputText | ResponseInputImage; 3656 + } | null; 3657 + version?: string | null; 3658 + }; 3659 + type Reasoning = { 3660 + effort?: ReasoningEffort | null; 3661 + generate_summary?: "auto" | "concise" | "detailed" | null; 3662 + summary?: "auto" | "concise" | "detailed" | null; 3663 + }; 3664 + type ResponseContent = ResponseInputText | ResponseInputImage | ResponseOutputText | ResponseOutputRefusal | ResponseContentReasoningText; 3665 + type ResponseContentReasoningText = { 3666 + text: string; 3667 + type: "reasoning_text"; 3668 + }; 3669 + type ResponseConversationParam = { 3670 + id: string; 3671 + }; 3672 + type ResponseCreatedEvent = { 3673 + response: Response; 3674 + sequence_number: number; 3675 + type: "response.created"; 3676 + }; 3677 + type ResponseCustomToolCallOutput = { 3678 + call_id: string; 3679 + output: string | Array<ResponseInputText | ResponseInputImage>; 3680 + type: "custom_tool_call_output"; 3681 + id?: string; 3682 + }; 3683 + type ResponseError = { 3684 + code: "server_error" | "rate_limit_exceeded" | "invalid_prompt" | "vector_store_timeout" | "invalid_image" | "invalid_image_format" | "invalid_base64_image" | "invalid_image_url" | "image_too_large" | "image_too_small" | "image_parse_error" | "image_content_policy_violation" | "invalid_image_mode" | "image_file_too_large" | "unsupported_image_media_type" | "empty_image_file" | "failed_to_download_image" | "image_file_not_found"; 3685 + message: string; 3686 + }; 3687 + type ResponseErrorEvent = { 3688 + code: string | null; 3689 + message: string; 3690 + param: string | null; 3691 + sequence_number: number; 3692 + type: "error"; 3693 + }; 3694 + type ResponseFailedEvent = { 3695 + response: Response; 3696 + sequence_number: number; 3697 + type: "response.failed"; 3698 + }; 3699 + type ResponseFormatText = { 3700 + type: "text"; 3701 + }; 3702 + type ResponseFormatJSONObject = { 3703 + type: "json_object"; 3704 + }; 3705 + type ResponseFormatTextConfig = ResponseFormatText | ResponseFormatTextJSONSchemaConfig | ResponseFormatJSONObject; 3706 + type ResponseFormatTextJSONSchemaConfig = { 3707 + name: string; 3708 + schema: { 3709 + [key: string]: unknown; 3710 + }; 3711 + type: "json_schema"; 3712 + description?: string; 3713 + strict?: boolean | null; 3714 + }; 3715 + type ResponseFunctionCallArgumentsDeltaEvent = { 3716 + delta: string; 3717 + item_id: string; 3718 + output_index: number; 3719 + sequence_number: number; 3720 + type: "response.function_call_arguments.delta"; 3721 + }; 3722 + type ResponseFunctionCallArgumentsDoneEvent = { 3723 + arguments: string; 3724 + item_id: string; 3725 + name: string; 3726 + output_index: number; 3727 + sequence_number: number; 3728 + type: "response.function_call_arguments.done"; 3729 + }; 3730 + type ResponseFunctionCallOutputItem = ResponseInputTextContent | ResponseInputImageContent; 3731 + type ResponseFunctionCallOutputItemList = Array<ResponseFunctionCallOutputItem>; 3732 + type ResponseFunctionToolCall = { 3733 + arguments: string; 3734 + call_id: string; 3735 + name: string; 3736 + type: "function_call"; 3737 + id?: string; 3738 + status?: "in_progress" | "completed" | "incomplete"; 3739 + }; 3740 + interface ResponseFunctionToolCallItem extends ResponseFunctionToolCall { 3741 + id: string; 3742 + } 3743 + type ResponseFunctionToolCallOutputItem = { 3744 + id: string; 3745 + call_id: string; 3746 + output: string | Array<ResponseInputText | ResponseInputImage>; 3747 + type: "function_call_output"; 3748 + status?: "in_progress" | "completed" | "incomplete"; 3749 + }; 3750 + type ResponseIncludable = "message.input_image.image_url" | "message.output_text.logprobs"; 3751 + type ResponseIncompleteEvent = { 3752 + response: Response; 3753 + sequence_number: number; 3754 + type: "response.incomplete"; 3755 + }; 3756 + type ResponseInput = Array<ResponseInputItem>; 3757 + type ResponseInputContent = ResponseInputText | ResponseInputImage; 3758 + type ResponseInputImage = { 3759 + detail: "low" | "high" | "auto"; 3760 + type: "input_image"; 3761 + /** 3762 + * Base64 encoded image 3763 + */ 3764 + image_url?: string | null; 3765 + }; 3766 + type ResponseInputImageContent = { 3767 + type: "input_image"; 3768 + detail?: "low" | "high" | "auto" | null; 3769 + /** 3770 + * Base64 encoded image 3771 + */ 3772 + image_url?: string | null; 3773 + }; 3774 + type ResponseInputItem = EasyInputMessage | ResponseInputItemMessage | ResponseOutputMessage | ResponseFunctionToolCall | ResponseInputItemFunctionCallOutput | ResponseReasoningItem; 3775 + type ResponseInputItemFunctionCallOutput = { 3776 + call_id: string; 3777 + output: string | ResponseFunctionCallOutputItemList; 3778 + type: "function_call_output"; 3779 + id?: string | null; 3780 + status?: "in_progress" | "completed" | "incomplete" | null; 3781 + }; 3782 + type ResponseInputItemMessage = { 3783 + content: ResponseInputMessageContentList; 3784 + role: "user" | "system" | "developer"; 3785 + status?: "in_progress" | "completed" | "incomplete"; 3786 + type?: "message"; 3787 + }; 3788 + type ResponseInputMessageContentList = Array<ResponseInputContent>; 3789 + type ResponseInputMessageItem = { 3790 + id: string; 3791 + content: ResponseInputMessageContentList; 3792 + role: "user" | "system" | "developer"; 3793 + status?: "in_progress" | "completed" | "incomplete"; 3794 + type?: "message"; 3795 + }; 3796 + type ResponseInputText = { 3797 + text: string; 3798 + type: "input_text"; 3799 + }; 3800 + type ResponseInputTextContent = { 3801 + text: string; 3802 + type: "input_text"; 3803 + }; 3804 + type ResponseItem = ResponseInputMessageItem | ResponseOutputMessage | ResponseFunctionToolCallItem | ResponseFunctionToolCallOutputItem; 3805 + type ResponseOutputItem = ResponseOutputMessage | ResponseFunctionToolCall | ResponseReasoningItem; 3806 + type ResponseOutputItemAddedEvent = { 3807 + item: ResponseOutputItem; 3808 + output_index: number; 3809 + sequence_number: number; 3810 + type: "response.output_item.added"; 3811 + }; 3812 + type ResponseOutputItemDoneEvent = { 3813 + item: ResponseOutputItem; 3814 + output_index: number; 3815 + sequence_number: number; 3816 + type: "response.output_item.done"; 3817 + }; 3818 + type ResponseOutputMessage = { 3819 + id: string; 3820 + content: Array<ResponseOutputText | ResponseOutputRefusal>; 3821 + role: "assistant"; 3822 + status: "in_progress" | "completed" | "incomplete"; 3823 + type: "message"; 3824 + }; 3825 + type ResponseOutputRefusal = { 3826 + refusal: string; 3827 + type: "refusal"; 3828 + }; 3829 + type ResponseOutputText = { 3830 + text: string; 3831 + type: "output_text"; 3832 + logprobs?: Array<Logprob>; 3833 + }; 3834 + type ResponseReasoningItem = { 3835 + id: string; 3836 + summary: Array<ResponseReasoningSummaryItem>; 3837 + type: "reasoning"; 3838 + content?: Array<ResponseReasoningContentItem>; 3839 + encrypted_content?: string | null; 3840 + status?: "in_progress" | "completed" | "incomplete"; 3841 + }; 3842 + type ResponseReasoningSummaryItem = { 3843 + text: string; 3844 + type: "summary_text"; 3845 + }; 3846 + type ResponseReasoningContentItem = { 3847 + text: string; 3848 + type: "reasoning_text"; 3849 + }; 3850 + type ResponseReasoningTextDeltaEvent = { 3851 + content_index: number; 3852 + delta: string; 3853 + item_id: string; 3854 + output_index: number; 3855 + sequence_number: number; 3856 + type: "response.reasoning_text.delta"; 3857 + }; 3858 + type ResponseReasoningTextDoneEvent = { 3859 + content_index: number; 3860 + item_id: string; 3861 + output_index: number; 3862 + sequence_number: number; 3863 + text: string; 3864 + type: "response.reasoning_text.done"; 3865 + }; 3866 + type ResponseRefusalDeltaEvent = { 3867 + content_index: number; 3868 + delta: string; 3869 + item_id: string; 3870 + output_index: number; 3871 + sequence_number: number; 3872 + type: "response.refusal.delta"; 3873 + }; 3874 + type ResponseRefusalDoneEvent = { 3875 + content_index: number; 3876 + item_id: string; 3877 + output_index: number; 3878 + refusal: string; 3879 + sequence_number: number; 3880 + type: "response.refusal.done"; 3881 + }; 3882 + type ResponseStatus = "completed" | "failed" | "in_progress" | "cancelled" | "queued" | "incomplete"; 3883 + type ResponseStreamEvent = ResponseCompletedEvent | ResponseCreatedEvent | ResponseErrorEvent | ResponseFunctionCallArgumentsDeltaEvent | ResponseFunctionCallArgumentsDoneEvent | ResponseFailedEvent | ResponseIncompleteEvent | ResponseOutputItemAddedEvent | ResponseOutputItemDoneEvent | ResponseReasoningTextDeltaEvent | ResponseReasoningTextDoneEvent | ResponseRefusalDeltaEvent | ResponseRefusalDoneEvent | ResponseTextDeltaEvent | ResponseTextDoneEvent; 3884 + type ResponseCompletedEvent = { 3885 + response: Response; 3886 + sequence_number: number; 3887 + type: "response.completed"; 3888 + }; 3889 + type ResponseTextConfig = { 3890 + format?: ResponseFormatTextConfig; 3891 + verbosity?: "low" | "medium" | "high" | null; 3892 + }; 3893 + type ResponseTextDeltaEvent = { 3894 + content_index: number; 3895 + delta: string; 3896 + item_id: string; 3897 + logprobs: Array<Logprob>; 3898 + output_index: number; 3899 + sequence_number: number; 3900 + type: "response.output_text.delta"; 3901 + }; 3902 + type ResponseTextDoneEvent = { 3903 + content_index: number; 3904 + item_id: string; 3905 + logprobs: Array<Logprob>; 3906 + output_index: number; 3907 + sequence_number: number; 3908 + text: string; 3909 + type: "response.output_text.done"; 3910 + }; 3911 + type Logprob = { 3912 + token: string; 3913 + logprob: number; 3914 + top_logprobs?: Array<TopLogprob>; 3915 + }; 3916 + type TopLogprob = { 3917 + token?: string; 3918 + logprob?: number; 3919 + }; 3920 + type ResponseUsage = { 3921 + input_tokens: number; 3922 + output_tokens: number; 3923 + total_tokens: number; 3924 + }; 3925 + type Tool = ResponsesFunctionTool; 3926 + type ToolChoiceFunction = { 3927 + name: string; 3928 + type: "function"; 3929 + }; 3930 + type ToolChoiceOptions = "none"; 3931 + type ReasoningEffort = "minimal" | "low" | "medium" | "high" | null; 3932 + type StreamOptions = { 3933 + include_obfuscation?: boolean; 3934 + }; 2725 3935 type Ai_Cf_Baai_Bge_Base_En_V1_5_Input = { 2726 3936 text: string | string[]; 2727 3937 /** ··· 2750 3960 * The pooling method used in the embedding process. 2751 3961 */ 2752 3962 pooling?: "mean" | "cls"; 2753 - } | AsyncResponse; 2754 - interface AsyncResponse { 3963 + } | Ai_Cf_Baai_Bge_Base_En_V1_5_AsyncResponse; 3964 + interface Ai_Cf_Baai_Bge_Base_En_V1_5_AsyncResponse { 2755 3965 /** 2756 3966 * The async request id that can be used to obtain the results. 2757 3967 */ ··· 2827 4037 * The translated text in the target language 2828 4038 */ 2829 4039 translated_text?: string; 2830 - } | AsyncResponse; 4040 + } | Ai_Cf_Meta_M2M100_1_2B_AsyncResponse; 4041 + interface Ai_Cf_Meta_M2M100_1_2B_AsyncResponse { 4042 + /** 4043 + * The async request id that can be used to obtain the results. 4044 + */ 4045 + request_id?: string; 4046 + } 2831 4047 declare abstract class Base_Ai_Cf_Meta_M2M100_1_2B { 2832 4048 inputs: Ai_Cf_Meta_M2M100_1_2B_Input; 2833 4049 postProcessedOutputs: Ai_Cf_Meta_M2M100_1_2B_Output; ··· 2860 4076 * The pooling method used in the embedding process. 2861 4077 */ 2862 4078 pooling?: "mean" | "cls"; 2863 - } | AsyncResponse; 4079 + } | Ai_Cf_Baai_Bge_Small_En_V1_5_AsyncResponse; 4080 + interface Ai_Cf_Baai_Bge_Small_En_V1_5_AsyncResponse { 4081 + /** 4082 + * The async request id that can be used to obtain the results. 4083 + */ 4084 + request_id?: string; 4085 + } 2864 4086 declare abstract class Base_Ai_Cf_Baai_Bge_Small_En_V1_5 { 2865 4087 inputs: Ai_Cf_Baai_Bge_Small_En_V1_5_Input; 2866 4088 postProcessedOutputs: Ai_Cf_Baai_Bge_Small_En_V1_5_Output; ··· 2893 4115 * The pooling method used in the embedding process. 2894 4116 */ 2895 4117 pooling?: "mean" | "cls"; 2896 - } | AsyncResponse; 4118 + } | Ai_Cf_Baai_Bge_Large_En_V1_5_AsyncResponse; 4119 + interface Ai_Cf_Baai_Bge_Large_En_V1_5_AsyncResponse { 4120 + /** 4121 + * The async request id that can be used to obtain the results. 4122 + */ 4123 + request_id?: string; 4124 + } 2897 4125 declare abstract class Base_Ai_Cf_Baai_Bge_Large_En_V1_5 { 2898 4126 inputs: Ai_Cf_Baai_Bge_Large_En_V1_5_Input; 2899 4127 postProcessedOutputs: Ai_Cf_Baai_Bge_Large_En_V1_5_Output; ··· 3079 4307 inputs: Ai_Cf_Openai_Whisper_Large_V3_Turbo_Input; 3080 4308 postProcessedOutputs: Ai_Cf_Openai_Whisper_Large_V3_Turbo_Output; 3081 4309 } 3082 - type Ai_Cf_Baai_Bge_M3_Input = BGEM3InputQueryAndContexts | BGEM3InputEmbedding | { 4310 + type Ai_Cf_Baai_Bge_M3_Input = Ai_Cf_Baai_Bge_M3_Input_QueryAnd_Contexts | Ai_Cf_Baai_Bge_M3_Input_Embedding | { 3083 4311 /** 3084 4312 * Batch of the embeddings requests to run using async-queue 3085 4313 */ 3086 - requests: (BGEM3InputQueryAndContexts1 | BGEM3InputEmbedding1)[]; 4314 + requests: (Ai_Cf_Baai_Bge_M3_Input_QueryAnd_Contexts_1 | Ai_Cf_Baai_Bge_M3_Input_Embedding_1)[]; 3087 4315 }; 3088 - interface BGEM3InputQueryAndContexts { 4316 + interface Ai_Cf_Baai_Bge_M3_Input_QueryAnd_Contexts { 3089 4317 /** 3090 4318 * A query you wish to perform against the provided contexts. If no query is provided the model with respond with embeddings for contexts 3091 4319 */ ··· 3104 4332 */ 3105 4333 truncate_inputs?: boolean; 3106 4334 } 3107 - interface BGEM3InputEmbedding { 4335 + interface Ai_Cf_Baai_Bge_M3_Input_Embedding { 3108 4336 text: string | string[]; 3109 4337 /** 3110 4338 * When provided with too long context should the model error out or truncate the context to fit? 3111 4339 */ 3112 4340 truncate_inputs?: boolean; 3113 4341 } 3114 - interface BGEM3InputQueryAndContexts1 { 4342 + interface Ai_Cf_Baai_Bge_M3_Input_QueryAnd_Contexts_1 { 3115 4343 /** 3116 4344 * A query you wish to perform against the provided contexts. If no query is provided the model with respond with embeddings for contexts 3117 4345 */ ··· 3130 4358 */ 3131 4359 truncate_inputs?: boolean; 3132 4360 } 3133 - interface BGEM3InputEmbedding1 { 4361 + interface Ai_Cf_Baai_Bge_M3_Input_Embedding_1 { 3134 4362 text: string | string[]; 3135 4363 /** 3136 4364 * When provided with too long context should the model error out or truncate the context to fit? 3137 4365 */ 3138 4366 truncate_inputs?: boolean; 3139 4367 } 3140 - type Ai_Cf_Baai_Bge_M3_Output = BGEM3OuputQuery | BGEM3OutputEmbeddingForContexts | BGEM3OuputEmbedding | AsyncResponse; 3141 - interface BGEM3OuputQuery { 4368 + type Ai_Cf_Baai_Bge_M3_Output = Ai_Cf_Baai_Bge_M3_Ouput_Query | Ai_Cf_Baai_Bge_M3_Output_EmbeddingFor_Contexts | Ai_Cf_Baai_Bge_M3_Ouput_Embedding | Ai_Cf_Baai_Bge_M3_AsyncResponse; 4369 + interface Ai_Cf_Baai_Bge_M3_Ouput_Query { 3142 4370 response?: { 3143 4371 /** 3144 4372 * Index of the context in the request ··· 3150 4378 score?: number; 3151 4379 }[]; 3152 4380 } 3153 - interface BGEM3OutputEmbeddingForContexts { 4381 + interface Ai_Cf_Baai_Bge_M3_Output_EmbeddingFor_Contexts { 3154 4382 response?: number[][]; 3155 4383 shape?: number[]; 3156 4384 /** ··· 3158 4386 */ 3159 4387 pooling?: "mean" | "cls"; 3160 4388 } 3161 - interface BGEM3OuputEmbedding { 4389 + interface Ai_Cf_Baai_Bge_M3_Ouput_Embedding { 3162 4390 shape?: number[]; 3163 4391 /** 3164 4392 * Embeddings of the requested text values ··· 3168 4396 * The pooling method used in the embedding process. 3169 4397 */ 3170 4398 pooling?: "mean" | "cls"; 4399 + } 4400 + interface Ai_Cf_Baai_Bge_M3_AsyncResponse { 4401 + /** 4402 + * The async request id that can be used to obtain the results. 4403 + */ 4404 + request_id?: string; 3171 4405 } 3172 4406 declare abstract class Base_Ai_Cf_Baai_Bge_M3 { 3173 4407 inputs: Ai_Cf_Baai_Bge_M3_Input; ··· 3193 4427 inputs: Ai_Cf_Black_Forest_Labs_Flux_1_Schnell_Input; 3194 4428 postProcessedOutputs: Ai_Cf_Black_Forest_Labs_Flux_1_Schnell_Output; 3195 4429 } 3196 - type Ai_Cf_Meta_Llama_3_2_11B_Vision_Instruct_Input = Prompt | Messages; 3197 - interface Prompt { 4430 + type Ai_Cf_Meta_Llama_3_2_11B_Vision_Instruct_Input = Ai_Cf_Meta_Llama_3_2_11B_Vision_Instruct_Prompt | Ai_Cf_Meta_Llama_3_2_11B_Vision_Instruct_Messages; 4431 + interface Ai_Cf_Meta_Llama_3_2_11B_Vision_Instruct_Prompt { 3198 4432 /** 3199 4433 * The input text prompt for the model to generate a response. 3200 4434 */ ··· 3245 4479 */ 3246 4480 lora?: string; 3247 4481 } 3248 - interface Messages { 4482 + interface Ai_Cf_Meta_Llama_3_2_11B_Vision_Instruct_Messages { 3249 4483 /** 3250 4484 * An array of message objects representing the conversation history. 3251 4485 */ ··· 3436 4670 inputs: Ai_Cf_Meta_Llama_3_2_11B_Vision_Instruct_Input; 3437 4671 postProcessedOutputs: Ai_Cf_Meta_Llama_3_2_11B_Vision_Instruct_Output; 3438 4672 } 3439 - type Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Input = Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Prompt | Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Messages | AsyncBatch; 3440 - interface Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Prompt { 4673 + type Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Input = Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Prompt | Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Messages | Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Async_Batch; 4674 + interface Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Prompt { 3441 4675 /** 3442 4676 * The input text prompt for the model to generate a response. 3443 4677 */ ··· 3446 4680 * Name of the LoRA (Low-Rank Adaptation) model to fine-tune the base model. 3447 4681 */ 3448 4682 lora?: string; 3449 - response_format?: JSONMode; 4683 + response_format?: Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_JSON_Mode; 3450 4684 /** 3451 4685 * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 3452 4686 */ ··· 3488 4722 */ 3489 4723 presence_penalty?: number; 3490 4724 } 3491 - interface JSONMode { 4725 + interface Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_JSON_Mode { 3492 4726 type?: "json_object" | "json_schema"; 3493 4727 json_schema?: unknown; 3494 4728 } 3495 - interface Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Messages { 4729 + interface Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Messages { 3496 4730 /** 3497 4731 * An array of message objects representing the conversation history. 3498 4732 */ ··· 3597 4831 }; 3598 4832 }; 3599 4833 })[]; 3600 - response_format?: JSONMode; 4834 + response_format?: Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_JSON_Mode_1; 3601 4835 /** 3602 4836 * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 3603 4837 */ ··· 3639 4873 */ 3640 4874 presence_penalty?: number; 3641 4875 } 3642 - interface AsyncBatch { 4876 + interface Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_JSON_Mode_1 { 4877 + type?: "json_object" | "json_schema"; 4878 + json_schema?: unknown; 4879 + } 4880 + interface Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Async_Batch { 3643 4881 requests?: { 3644 4882 /** 3645 4883 * User-supplied reference. This field will be present in the response as well it can be used to reference the request and response. It's NOT validated to be unique. ··· 3681 4919 * Increases the likelihood of the model introducing new topics. 3682 4920 */ 3683 4921 presence_penalty?: number; 3684 - response_format?: JSONMode; 4922 + response_format?: Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_JSON_Mode_2; 3685 4923 }[]; 3686 4924 } 4925 + interface Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_JSON_Mode_2 { 4926 + type?: "json_object" | "json_schema"; 4927 + json_schema?: unknown; 4928 + } 3687 4929 type Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Output = { 3688 4930 /** 3689 4931 * The generated text response from the model ··· 3719 4961 */ 3720 4962 name?: string; 3721 4963 }[]; 3722 - } | AsyncResponse; 4964 + } | string | Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_AsyncResponse; 4965 + interface Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_AsyncResponse { 4966 + /** 4967 + * The async request id that can be used to obtain the results. 4968 + */ 4969 + request_id?: string; 4970 + } 3723 4971 declare abstract class Base_Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast { 3724 4972 inputs: Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Input; 3725 4973 postProcessedOutputs: Ai_Cf_Meta_Llama_3_3_70B_Instruct_Fp8_Fast_Output; ··· 3793 5041 /** 3794 5042 * A query you wish to perform against the provided contexts. 3795 5043 */ 3796 - query: string; 3797 5044 /** 3798 5045 * Number of returned results starting with the best score. 3799 5046 */ ··· 3824 5071 inputs: Ai_Cf_Baai_Bge_Reranker_Base_Input; 3825 5072 postProcessedOutputs: Ai_Cf_Baai_Bge_Reranker_Base_Output; 3826 5073 } 3827 - type Ai_Cf_Qwen_Qwen2_5_Coder_32B_Instruct_Input = Qwen2_5_Coder_32B_Instruct_Prompt | Qwen2_5_Coder_32B_Instruct_Messages; 3828 - interface Qwen2_5_Coder_32B_Instruct_Prompt { 5074 + type Ai_Cf_Qwen_Qwen2_5_Coder_32B_Instruct_Input = Ai_Cf_Qwen_Qwen2_5_Coder_32B_Instruct_Prompt | Ai_Cf_Qwen_Qwen2_5_Coder_32B_Instruct_Messages; 5075 + interface Ai_Cf_Qwen_Qwen2_5_Coder_32B_Instruct_Prompt { 3829 5076 /** 3830 5077 * The input text prompt for the model to generate a response. 3831 5078 */ ··· 3834 5081 * Name of the LoRA (Low-Rank Adaptation) model to fine-tune the base model. 3835 5082 */ 3836 5083 lora?: string; 3837 - response_format?: JSONMode; 5084 + response_format?: Ai_Cf_Qwen_Qwen2_5_Coder_32B_Instruct_JSON_Mode; 3838 5085 /** 3839 5086 * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 3840 5087 */ ··· 3876 5123 */ 3877 5124 presence_penalty?: number; 3878 5125 } 3879 - interface Qwen2_5_Coder_32B_Instruct_Messages { 5126 + interface Ai_Cf_Qwen_Qwen2_5_Coder_32B_Instruct_JSON_Mode { 5127 + type?: "json_object" | "json_schema"; 5128 + json_schema?: unknown; 5129 + } 5130 + interface Ai_Cf_Qwen_Qwen2_5_Coder_32B_Instruct_Messages { 3880 5131 /** 3881 5132 * An array of message objects representing the conversation history. 3882 5133 */ ··· 3981 5232 }; 3982 5233 }; 3983 5234 })[]; 3984 - response_format?: JSONMode; 5235 + response_format?: Ai_Cf_Qwen_Qwen2_5_Coder_32B_Instruct_JSON_Mode_1; 3985 5236 /** 3986 5237 * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 3987 5238 */ ··· 4023 5274 */ 4024 5275 presence_penalty?: number; 4025 5276 } 5277 + interface Ai_Cf_Qwen_Qwen2_5_Coder_32B_Instruct_JSON_Mode_1 { 5278 + type?: "json_object" | "json_schema"; 5279 + json_schema?: unknown; 5280 + } 4026 5281 type Ai_Cf_Qwen_Qwen2_5_Coder_32B_Instruct_Output = { 4027 5282 /** 4028 5283 * The generated text response from the model ··· 4063 5318 inputs: Ai_Cf_Qwen_Qwen2_5_Coder_32B_Instruct_Input; 4064 5319 postProcessedOutputs: Ai_Cf_Qwen_Qwen2_5_Coder_32B_Instruct_Output; 4065 5320 } 4066 - type Ai_Cf_Qwen_Qwq_32B_Input = Qwen_Qwq_32B_Prompt | Qwen_Qwq_32B_Messages; 4067 - interface Qwen_Qwq_32B_Prompt { 5321 + type Ai_Cf_Qwen_Qwq_32B_Input = Ai_Cf_Qwen_Qwq_32B_Prompt | Ai_Cf_Qwen_Qwq_32B_Messages; 5322 + interface Ai_Cf_Qwen_Qwq_32B_Prompt { 4068 5323 /** 4069 5324 * The input text prompt for the model to generate a response. 4070 5325 */ ··· 4114 5369 */ 4115 5370 presence_penalty?: number; 4116 5371 } 4117 - interface Qwen_Qwq_32B_Messages { 5372 + interface Ai_Cf_Qwen_Qwq_32B_Messages { 4118 5373 /** 4119 5374 * An array of message objects representing the conversation history. 4120 5375 */ ··· 4329 5584 inputs: Ai_Cf_Qwen_Qwq_32B_Input; 4330 5585 postProcessedOutputs: Ai_Cf_Qwen_Qwq_32B_Output; 4331 5586 } 4332 - type Ai_Cf_Mistralai_Mistral_Small_3_1_24B_Instruct_Input = Mistral_Small_3_1_24B_Instruct_Prompt | Mistral_Small_3_1_24B_Instruct_Messages; 4333 - interface Mistral_Small_3_1_24B_Instruct_Prompt { 5587 + type Ai_Cf_Mistralai_Mistral_Small_3_1_24B_Instruct_Input = Ai_Cf_Mistralai_Mistral_Small_3_1_24B_Instruct_Prompt | Ai_Cf_Mistralai_Mistral_Small_3_1_24B_Instruct_Messages; 5588 + interface Ai_Cf_Mistralai_Mistral_Small_3_1_24B_Instruct_Prompt { 4334 5589 /** 4335 5590 * The input text prompt for the model to generate a response. 4336 5591 */ ··· 4380 5635 */ 4381 5636 presence_penalty?: number; 4382 5637 } 4383 - interface Mistral_Small_3_1_24B_Instruct_Messages { 5638 + interface Ai_Cf_Mistralai_Mistral_Small_3_1_24B_Instruct_Messages { 4384 5639 /** 4385 5640 * An array of message objects representing the conversation history. 4386 5641 */ ··· 4595 5850 inputs: Ai_Cf_Mistralai_Mistral_Small_3_1_24B_Instruct_Input; 4596 5851 postProcessedOutputs: Ai_Cf_Mistralai_Mistral_Small_3_1_24B_Instruct_Output; 4597 5852 } 4598 - type Ai_Cf_Google_Gemma_3_12B_It_Input = Google_Gemma_3_12B_It_Prompt | Google_Gemma_3_12B_It_Messages; 4599 - interface Google_Gemma_3_12B_It_Prompt { 5853 + type Ai_Cf_Google_Gemma_3_12B_It_Input = Ai_Cf_Google_Gemma_3_12B_It_Prompt | Ai_Cf_Google_Gemma_3_12B_It_Messages; 5854 + interface Ai_Cf_Google_Gemma_3_12B_It_Prompt { 4600 5855 /** 4601 5856 * The input text prompt for the model to generate a response. 4602 5857 */ ··· 4646 5901 */ 4647 5902 presence_penalty?: number; 4648 5903 } 4649 - interface Google_Gemma_3_12B_It_Messages { 5904 + interface Ai_Cf_Google_Gemma_3_12B_It_Messages { 4650 5905 /** 4651 5906 * An array of message objects representing the conversation history. 4652 5907 */ ··· 4667 5922 */ 4668 5923 url?: string; 4669 5924 }; 4670 - }[] | { 4671 - /** 4672 - * Type of the content provided 4673 - */ 4674 - type?: string; 4675 - text?: string; 4676 - image_url?: { 4677 - /** 4678 - * image uri with data (e.g. data:image/jpeg;base64,/9j/...). HTTP URL will not be accepted 4679 - */ 4680 - url?: string; 4681 - }; 4682 - }; 5925 + }[]; 4683 5926 }[]; 4684 5927 functions?: { 4685 5928 name: string; ··· 4857 6100 inputs: Ai_Cf_Google_Gemma_3_12B_It_Input; 4858 6101 postProcessedOutputs: Ai_Cf_Google_Gemma_3_12B_It_Output; 4859 6102 } 4860 - type Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_Input = Ai_Cf_Meta_Llama_4_Prompt | Ai_Cf_Meta_Llama_4_Messages; 4861 - interface Ai_Cf_Meta_Llama_4_Prompt { 6103 + type Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_Input = Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_Prompt | Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_Messages | Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_Async_Batch; 6104 + interface Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_Prompt { 4862 6105 /** 4863 6106 * The input text prompt for the model to generate a response. 4864 6107 */ ··· 4867 6110 * JSON schema that should be fulfilled for the response. 4868 6111 */ 4869 6112 guided_json?: object; 4870 - response_format?: JSONMode; 6113 + response_format?: Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_JSON_Mode; 4871 6114 /** 4872 6115 * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 4873 6116 */ ··· 4909 6152 */ 4910 6153 presence_penalty?: number; 4911 6154 } 4912 - interface Ai_Cf_Meta_Llama_4_Messages { 6155 + interface Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_JSON_Mode { 6156 + type?: "json_object" | "json_schema"; 6157 + json_schema?: unknown; 6158 + } 6159 + interface Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_Messages { 4913 6160 /** 4914 6161 * An array of message objects representing the conversation history. 4915 6162 */ ··· 5039 6286 }; 5040 6287 }; 5041 6288 })[]; 5042 - response_format?: JSONMode; 6289 + response_format?: Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_JSON_Mode; 6290 + /** 6291 + * JSON schema that should be fufilled for the response. 6292 + */ 6293 + guided_json?: object; 6294 + /** 6295 + * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 6296 + */ 6297 + raw?: boolean; 6298 + /** 6299 + * If true, the response will be streamed back incrementally using SSE, Server Sent Events. 6300 + */ 6301 + stream?: boolean; 6302 + /** 6303 + * The maximum number of tokens to generate in the response. 6304 + */ 6305 + max_tokens?: number; 6306 + /** 6307 + * Controls the randomness of the output; higher values produce more random results. 6308 + */ 6309 + temperature?: number; 6310 + /** 6311 + * Adjusts the creativity of the AI's responses by controlling how many possible words it considers. Lower values make outputs more predictable; higher values allow for more varied and creative responses. 6312 + */ 6313 + top_p?: number; 6314 + /** 6315 + * Limits the AI to choose from the top 'k' most probable words. Lower values make responses more focused; higher values introduce more variety and potential surprises. 6316 + */ 6317 + top_k?: number; 6318 + /** 6319 + * Random seed for reproducibility of the generation. 6320 + */ 6321 + seed?: number; 6322 + /** 6323 + * Penalty for repeated tokens; higher values discourage repetition. 6324 + */ 6325 + repetition_penalty?: number; 6326 + /** 6327 + * Decreases the likelihood of the model repeating the same lines verbatim. 6328 + */ 6329 + frequency_penalty?: number; 6330 + /** 6331 + * Increases the likelihood of the model introducing new topics. 6332 + */ 6333 + presence_penalty?: number; 6334 + } 6335 + interface Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_Async_Batch { 6336 + requests: (Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_Prompt_Inner | Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_Messages_Inner)[]; 6337 + } 6338 + interface Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_Prompt_Inner { 6339 + /** 6340 + * The input text prompt for the model to generate a response. 6341 + */ 6342 + prompt: string; 6343 + /** 6344 + * JSON schema that should be fulfilled for the response. 6345 + */ 6346 + guided_json?: object; 6347 + response_format?: Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_JSON_Mode; 6348 + /** 6349 + * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 6350 + */ 6351 + raw?: boolean; 6352 + /** 6353 + * If true, the response will be streamed back incrementally using SSE, Server Sent Events. 6354 + */ 6355 + stream?: boolean; 6356 + /** 6357 + * The maximum number of tokens to generate in the response. 6358 + */ 6359 + max_tokens?: number; 6360 + /** 6361 + * Controls the randomness of the output; higher values produce more random results. 6362 + */ 6363 + temperature?: number; 6364 + /** 6365 + * Adjusts the creativity of the AI's responses by controlling how many possible words it considers. Lower values make outputs more predictable; higher values allow for more varied and creative responses. 6366 + */ 6367 + top_p?: number; 6368 + /** 6369 + * Limits the AI to choose from the top 'k' most probable words. Lower values make responses more focused; higher values introduce more variety and potential surprises. 6370 + */ 6371 + top_k?: number; 6372 + /** 6373 + * Random seed for reproducibility of the generation. 6374 + */ 6375 + seed?: number; 6376 + /** 6377 + * Penalty for repeated tokens; higher values discourage repetition. 6378 + */ 6379 + repetition_penalty?: number; 6380 + /** 6381 + * Decreases the likelihood of the model repeating the same lines verbatim. 6382 + */ 6383 + frequency_penalty?: number; 6384 + /** 6385 + * Increases the likelihood of the model introducing new topics. 6386 + */ 6387 + presence_penalty?: number; 6388 + } 6389 + interface Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_Messages_Inner { 6390 + /** 6391 + * An array of message objects representing the conversation history. 6392 + */ 6393 + messages: { 6394 + /** 6395 + * The role of the message sender (e.g., 'user', 'assistant', 'system', 'tool'). 6396 + */ 6397 + role?: string; 6398 + /** 6399 + * The tool call id. If you don't know what to put here you can fall back to 000000001 6400 + */ 6401 + tool_call_id?: string; 6402 + content?: string | { 6403 + /** 6404 + * Type of the content provided 6405 + */ 6406 + type?: string; 6407 + text?: string; 6408 + image_url?: { 6409 + /** 6410 + * image uri with data (e.g. data:image/jpeg;base64,/9j/...). HTTP URL will not be accepted 6411 + */ 6412 + url?: string; 6413 + }; 6414 + }[] | { 6415 + /** 6416 + * Type of the content provided 6417 + */ 6418 + type?: string; 6419 + text?: string; 6420 + image_url?: { 6421 + /** 6422 + * image uri with data (e.g. data:image/jpeg;base64,/9j/...). HTTP URL will not be accepted 6423 + */ 6424 + url?: string; 6425 + }; 6426 + }; 6427 + }[]; 6428 + functions?: { 6429 + name: string; 6430 + code: string; 6431 + }[]; 6432 + /** 6433 + * A list of tools available for the assistant to use. 6434 + */ 6435 + tools?: ({ 6436 + /** 6437 + * The name of the tool. More descriptive the better. 6438 + */ 6439 + name: string; 6440 + /** 6441 + * A brief description of what the tool does. 6442 + */ 6443 + description: string; 6444 + /** 6445 + * Schema defining the parameters accepted by the tool. 6446 + */ 6447 + parameters: { 6448 + /** 6449 + * The type of the parameters object (usually 'object'). 6450 + */ 6451 + type: string; 6452 + /** 6453 + * List of required parameter names. 6454 + */ 6455 + required?: string[]; 6456 + /** 6457 + * Definitions of each parameter. 6458 + */ 6459 + properties: { 6460 + [k: string]: { 6461 + /** 6462 + * The data type of the parameter. 6463 + */ 6464 + type: string; 6465 + /** 6466 + * A description of the expected parameter. 6467 + */ 6468 + description: string; 6469 + }; 6470 + }; 6471 + }; 6472 + } | { 6473 + /** 6474 + * Specifies the type of tool (e.g., 'function'). 6475 + */ 6476 + type: string; 6477 + /** 6478 + * Details of the function tool. 6479 + */ 6480 + function: { 6481 + /** 6482 + * The name of the function. 6483 + */ 6484 + name: string; 6485 + /** 6486 + * A brief description of what the function does. 6487 + */ 6488 + description: string; 6489 + /** 6490 + * Schema defining the parameters accepted by the function. 6491 + */ 6492 + parameters: { 6493 + /** 6494 + * The type of the parameters object (usually 'object'). 6495 + */ 6496 + type: string; 6497 + /** 6498 + * List of required parameter names. 6499 + */ 6500 + required?: string[]; 6501 + /** 6502 + * Definitions of each parameter. 6503 + */ 6504 + properties: { 6505 + [k: string]: { 6506 + /** 6507 + * The data type of the parameter. 6508 + */ 6509 + type: string; 6510 + /** 6511 + * A description of the expected parameter. 6512 + */ 6513 + description: string; 6514 + }; 6515 + }; 6516 + }; 6517 + }; 6518 + })[]; 6519 + response_format?: Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_JSON_Mode; 5043 6520 /** 5044 6521 * JSON schema that should be fufilled for the response. 5045 6522 */ ··· 5138 6615 inputs: Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_Input; 5139 6616 postProcessedOutputs: Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct_Output; 5140 6617 } 6618 + type Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Input = Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Prompt | Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Messages | Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Async_Batch; 6619 + interface Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Prompt { 6620 + /** 6621 + * The input text prompt for the model to generate a response. 6622 + */ 6623 + prompt: string; 6624 + /** 6625 + * Name of the LoRA (Low-Rank Adaptation) model to fine-tune the base model. 6626 + */ 6627 + lora?: string; 6628 + response_format?: Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_JSON_Mode; 6629 + /** 6630 + * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 6631 + */ 6632 + raw?: boolean; 6633 + /** 6634 + * If true, the response will be streamed back incrementally using SSE, Server Sent Events. 6635 + */ 6636 + stream?: boolean; 6637 + /** 6638 + * The maximum number of tokens to generate in the response. 6639 + */ 6640 + max_tokens?: number; 6641 + /** 6642 + * Controls the randomness of the output; higher values produce more random results. 6643 + */ 6644 + temperature?: number; 6645 + /** 6646 + * Adjusts the creativity of the AI's responses by controlling how many possible words it considers. Lower values make outputs more predictable; higher values allow for more varied and creative responses. 6647 + */ 6648 + top_p?: number; 6649 + /** 6650 + * Limits the AI to choose from the top 'k' most probable words. Lower values make responses more focused; higher values introduce more variety and potential surprises. 6651 + */ 6652 + top_k?: number; 6653 + /** 6654 + * Random seed for reproducibility of the generation. 6655 + */ 6656 + seed?: number; 6657 + /** 6658 + * Penalty for repeated tokens; higher values discourage repetition. 6659 + */ 6660 + repetition_penalty?: number; 6661 + /** 6662 + * Decreases the likelihood of the model repeating the same lines verbatim. 6663 + */ 6664 + frequency_penalty?: number; 6665 + /** 6666 + * Increases the likelihood of the model introducing new topics. 6667 + */ 6668 + presence_penalty?: number; 6669 + } 6670 + interface Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_JSON_Mode { 6671 + type?: "json_object" | "json_schema"; 6672 + json_schema?: unknown; 6673 + } 6674 + interface Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Messages { 6675 + /** 6676 + * An array of message objects representing the conversation history. 6677 + */ 6678 + messages: { 6679 + /** 6680 + * The role of the message sender (e.g., 'user', 'assistant', 'system', 'tool'). 6681 + */ 6682 + role: string; 6683 + /** 6684 + * The content of the message as a string. 6685 + */ 6686 + content: string; 6687 + }[]; 6688 + functions?: { 6689 + name: string; 6690 + code: string; 6691 + }[]; 6692 + /** 6693 + * A list of tools available for the assistant to use. 6694 + */ 6695 + tools?: ({ 6696 + /** 6697 + * The name of the tool. More descriptive the better. 6698 + */ 6699 + name: string; 6700 + /** 6701 + * A brief description of what the tool does. 6702 + */ 6703 + description: string; 6704 + /** 6705 + * Schema defining the parameters accepted by the tool. 6706 + */ 6707 + parameters: { 6708 + /** 6709 + * The type of the parameters object (usually 'object'). 6710 + */ 6711 + type: string; 6712 + /** 6713 + * List of required parameter names. 6714 + */ 6715 + required?: string[]; 6716 + /** 6717 + * Definitions of each parameter. 6718 + */ 6719 + properties: { 6720 + [k: string]: { 6721 + /** 6722 + * The data type of the parameter. 6723 + */ 6724 + type: string; 6725 + /** 6726 + * A description of the expected parameter. 6727 + */ 6728 + description: string; 6729 + }; 6730 + }; 6731 + }; 6732 + } | { 6733 + /** 6734 + * Specifies the type of tool (e.g., 'function'). 6735 + */ 6736 + type: string; 6737 + /** 6738 + * Details of the function tool. 6739 + */ 6740 + function: { 6741 + /** 6742 + * The name of the function. 6743 + */ 6744 + name: string; 6745 + /** 6746 + * A brief description of what the function does. 6747 + */ 6748 + description: string; 6749 + /** 6750 + * Schema defining the parameters accepted by the function. 6751 + */ 6752 + parameters: { 6753 + /** 6754 + * The type of the parameters object (usually 'object'). 6755 + */ 6756 + type: string; 6757 + /** 6758 + * List of required parameter names. 6759 + */ 6760 + required?: string[]; 6761 + /** 6762 + * Definitions of each parameter. 6763 + */ 6764 + properties: { 6765 + [k: string]: { 6766 + /** 6767 + * The data type of the parameter. 6768 + */ 6769 + type: string; 6770 + /** 6771 + * A description of the expected parameter. 6772 + */ 6773 + description: string; 6774 + }; 6775 + }; 6776 + }; 6777 + }; 6778 + })[]; 6779 + response_format?: Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_JSON_Mode_1; 6780 + /** 6781 + * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 6782 + */ 6783 + raw?: boolean; 6784 + /** 6785 + * If true, the response will be streamed back incrementally using SSE, Server Sent Events. 6786 + */ 6787 + stream?: boolean; 6788 + /** 6789 + * The maximum number of tokens to generate in the response. 6790 + */ 6791 + max_tokens?: number; 6792 + /** 6793 + * Controls the randomness of the output; higher values produce more random results. 6794 + */ 6795 + temperature?: number; 6796 + /** 6797 + * Adjusts the creativity of the AI's responses by controlling how many possible words it considers. Lower values make outputs more predictable; higher values allow for more varied and creative responses. 6798 + */ 6799 + top_p?: number; 6800 + /** 6801 + * Limits the AI to choose from the top 'k' most probable words. Lower values make responses more focused; higher values introduce more variety and potential surprises. 6802 + */ 6803 + top_k?: number; 6804 + /** 6805 + * Random seed for reproducibility of the generation. 6806 + */ 6807 + seed?: number; 6808 + /** 6809 + * Penalty for repeated tokens; higher values discourage repetition. 6810 + */ 6811 + repetition_penalty?: number; 6812 + /** 6813 + * Decreases the likelihood of the model repeating the same lines verbatim. 6814 + */ 6815 + frequency_penalty?: number; 6816 + /** 6817 + * Increases the likelihood of the model introducing new topics. 6818 + */ 6819 + presence_penalty?: number; 6820 + } 6821 + interface Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_JSON_Mode_1 { 6822 + type?: "json_object" | "json_schema"; 6823 + json_schema?: unknown; 6824 + } 6825 + interface Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Async_Batch { 6826 + requests: (Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Prompt_1 | Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Messages_1)[]; 6827 + } 6828 + interface Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Prompt_1 { 6829 + /** 6830 + * The input text prompt for the model to generate a response. 6831 + */ 6832 + prompt: string; 6833 + /** 6834 + * Name of the LoRA (Low-Rank Adaptation) model to fine-tune the base model. 6835 + */ 6836 + lora?: string; 6837 + response_format?: Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_JSON_Mode_2; 6838 + /** 6839 + * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 6840 + */ 6841 + raw?: boolean; 6842 + /** 6843 + * If true, the response will be streamed back incrementally using SSE, Server Sent Events. 6844 + */ 6845 + stream?: boolean; 6846 + /** 6847 + * The maximum number of tokens to generate in the response. 6848 + */ 6849 + max_tokens?: number; 6850 + /** 6851 + * Controls the randomness of the output; higher values produce more random results. 6852 + */ 6853 + temperature?: number; 6854 + /** 6855 + * Adjusts the creativity of the AI's responses by controlling how many possible words it considers. Lower values make outputs more predictable; higher values allow for more varied and creative responses. 6856 + */ 6857 + top_p?: number; 6858 + /** 6859 + * Limits the AI to choose from the top 'k' most probable words. Lower values make responses more focused; higher values introduce more variety and potential surprises. 6860 + */ 6861 + top_k?: number; 6862 + /** 6863 + * Random seed for reproducibility of the generation. 6864 + */ 6865 + seed?: number; 6866 + /** 6867 + * Penalty for repeated tokens; higher values discourage repetition. 6868 + */ 6869 + repetition_penalty?: number; 6870 + /** 6871 + * Decreases the likelihood of the model repeating the same lines verbatim. 6872 + */ 6873 + frequency_penalty?: number; 6874 + /** 6875 + * Increases the likelihood of the model introducing new topics. 6876 + */ 6877 + presence_penalty?: number; 6878 + } 6879 + interface Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_JSON_Mode_2 { 6880 + type?: "json_object" | "json_schema"; 6881 + json_schema?: unknown; 6882 + } 6883 + interface Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Messages_1 { 6884 + /** 6885 + * An array of message objects representing the conversation history. 6886 + */ 6887 + messages: { 6888 + /** 6889 + * The role of the message sender (e.g., 'user', 'assistant', 'system', 'tool'). 6890 + */ 6891 + role: string; 6892 + /** 6893 + * The content of the message as a string. 6894 + */ 6895 + content: string; 6896 + }[]; 6897 + functions?: { 6898 + name: string; 6899 + code: string; 6900 + }[]; 6901 + /** 6902 + * A list of tools available for the assistant to use. 6903 + */ 6904 + tools?: ({ 6905 + /** 6906 + * The name of the tool. More descriptive the better. 6907 + */ 6908 + name: string; 6909 + /** 6910 + * A brief description of what the tool does. 6911 + */ 6912 + description: string; 6913 + /** 6914 + * Schema defining the parameters accepted by the tool. 6915 + */ 6916 + parameters: { 6917 + /** 6918 + * The type of the parameters object (usually 'object'). 6919 + */ 6920 + type: string; 6921 + /** 6922 + * List of required parameter names. 6923 + */ 6924 + required?: string[]; 6925 + /** 6926 + * Definitions of each parameter. 6927 + */ 6928 + properties: { 6929 + [k: string]: { 6930 + /** 6931 + * The data type of the parameter. 6932 + */ 6933 + type: string; 6934 + /** 6935 + * A description of the expected parameter. 6936 + */ 6937 + description: string; 6938 + }; 6939 + }; 6940 + }; 6941 + } | { 6942 + /** 6943 + * Specifies the type of tool (e.g., 'function'). 6944 + */ 6945 + type: string; 6946 + /** 6947 + * Details of the function tool. 6948 + */ 6949 + function: { 6950 + /** 6951 + * The name of the function. 6952 + */ 6953 + name: string; 6954 + /** 6955 + * A brief description of what the function does. 6956 + */ 6957 + description: string; 6958 + /** 6959 + * Schema defining the parameters accepted by the function. 6960 + */ 6961 + parameters: { 6962 + /** 6963 + * The type of the parameters object (usually 'object'). 6964 + */ 6965 + type: string; 6966 + /** 6967 + * List of required parameter names. 6968 + */ 6969 + required?: string[]; 6970 + /** 6971 + * Definitions of each parameter. 6972 + */ 6973 + properties: { 6974 + [k: string]: { 6975 + /** 6976 + * The data type of the parameter. 6977 + */ 6978 + type: string; 6979 + /** 6980 + * A description of the expected parameter. 6981 + */ 6982 + description: string; 6983 + }; 6984 + }; 6985 + }; 6986 + }; 6987 + })[]; 6988 + response_format?: Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_JSON_Mode_3; 6989 + /** 6990 + * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 6991 + */ 6992 + raw?: boolean; 6993 + /** 6994 + * If true, the response will be streamed back incrementally using SSE, Server Sent Events. 6995 + */ 6996 + stream?: boolean; 6997 + /** 6998 + * The maximum number of tokens to generate in the response. 6999 + */ 7000 + max_tokens?: number; 7001 + /** 7002 + * Controls the randomness of the output; higher values produce more random results. 7003 + */ 7004 + temperature?: number; 7005 + /** 7006 + * Adjusts the creativity of the AI's responses by controlling how many possible words it considers. Lower values make outputs more predictable; higher values allow for more varied and creative responses. 7007 + */ 7008 + top_p?: number; 7009 + /** 7010 + * Limits the AI to choose from the top 'k' most probable words. Lower values make responses more focused; higher values introduce more variety and potential surprises. 7011 + */ 7012 + top_k?: number; 7013 + /** 7014 + * Random seed for reproducibility of the generation. 7015 + */ 7016 + seed?: number; 7017 + /** 7018 + * Penalty for repeated tokens; higher values discourage repetition. 7019 + */ 7020 + repetition_penalty?: number; 7021 + /** 7022 + * Decreases the likelihood of the model repeating the same lines verbatim. 7023 + */ 7024 + frequency_penalty?: number; 7025 + /** 7026 + * Increases the likelihood of the model introducing new topics. 7027 + */ 7028 + presence_penalty?: number; 7029 + } 7030 + interface Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_JSON_Mode_3 { 7031 + type?: "json_object" | "json_schema"; 7032 + json_schema?: unknown; 7033 + } 7034 + type Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Output = Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Chat_Completion_Response | Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Text_Completion_Response | string | Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_AsyncResponse; 7035 + interface Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Chat_Completion_Response { 7036 + /** 7037 + * Unique identifier for the completion 7038 + */ 7039 + id?: string; 7040 + /** 7041 + * Object type identifier 7042 + */ 7043 + object?: "chat.completion"; 7044 + /** 7045 + * Unix timestamp of when the completion was created 7046 + */ 7047 + created?: number; 7048 + /** 7049 + * Model used for the completion 7050 + */ 7051 + model?: string; 7052 + /** 7053 + * List of completion choices 7054 + */ 7055 + choices?: { 7056 + /** 7057 + * Index of the choice in the list 7058 + */ 7059 + index?: number; 7060 + /** 7061 + * The message generated by the model 7062 + */ 7063 + message?: { 7064 + /** 7065 + * Role of the message author 7066 + */ 7067 + role: string; 7068 + /** 7069 + * The content of the message 7070 + */ 7071 + content: string; 7072 + /** 7073 + * Internal reasoning content (if available) 7074 + */ 7075 + reasoning_content?: string; 7076 + /** 7077 + * Tool calls made by the assistant 7078 + */ 7079 + tool_calls?: { 7080 + /** 7081 + * Unique identifier for the tool call 7082 + */ 7083 + id: string; 7084 + /** 7085 + * Type of tool call 7086 + */ 7087 + type: "function"; 7088 + function: { 7089 + /** 7090 + * Name of the function to call 7091 + */ 7092 + name: string; 7093 + /** 7094 + * JSON string of arguments for the function 7095 + */ 7096 + arguments: string; 7097 + }; 7098 + }[]; 7099 + }; 7100 + /** 7101 + * Reason why the model stopped generating 7102 + */ 7103 + finish_reason?: string; 7104 + /** 7105 + * Stop reason (may be null) 7106 + */ 7107 + stop_reason?: string | null; 7108 + /** 7109 + * Log probabilities (if requested) 7110 + */ 7111 + logprobs?: {} | null; 7112 + }[]; 7113 + /** 7114 + * Usage statistics for the inference request 7115 + */ 7116 + usage?: { 7117 + /** 7118 + * Total number of tokens in input 7119 + */ 7120 + prompt_tokens?: number; 7121 + /** 7122 + * Total number of tokens in output 7123 + */ 7124 + completion_tokens?: number; 7125 + /** 7126 + * Total number of input and output tokens 7127 + */ 7128 + total_tokens?: number; 7129 + }; 7130 + /** 7131 + * Log probabilities for the prompt (if requested) 7132 + */ 7133 + prompt_logprobs?: {} | null; 7134 + } 7135 + interface Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Text_Completion_Response { 7136 + /** 7137 + * Unique identifier for the completion 7138 + */ 7139 + id?: string; 7140 + /** 7141 + * Object type identifier 7142 + */ 7143 + object?: "text_completion"; 7144 + /** 7145 + * Unix timestamp of when the completion was created 7146 + */ 7147 + created?: number; 7148 + /** 7149 + * Model used for the completion 7150 + */ 7151 + model?: string; 7152 + /** 7153 + * List of completion choices 7154 + */ 7155 + choices?: { 7156 + /** 7157 + * Index of the choice in the list 7158 + */ 7159 + index: number; 7160 + /** 7161 + * The generated text completion 7162 + */ 7163 + text: string; 7164 + /** 7165 + * Reason why the model stopped generating 7166 + */ 7167 + finish_reason: string; 7168 + /** 7169 + * Stop reason (may be null) 7170 + */ 7171 + stop_reason?: string | null; 7172 + /** 7173 + * Log probabilities (if requested) 7174 + */ 7175 + logprobs?: {} | null; 7176 + /** 7177 + * Log probabilities for the prompt (if requested) 7178 + */ 7179 + prompt_logprobs?: {} | null; 7180 + }[]; 7181 + /** 7182 + * Usage statistics for the inference request 7183 + */ 7184 + usage?: { 7185 + /** 7186 + * Total number of tokens in input 7187 + */ 7188 + prompt_tokens?: number; 7189 + /** 7190 + * Total number of tokens in output 7191 + */ 7192 + completion_tokens?: number; 7193 + /** 7194 + * Total number of input and output tokens 7195 + */ 7196 + total_tokens?: number; 7197 + }; 7198 + } 7199 + interface Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_AsyncResponse { 7200 + /** 7201 + * The async request id that can be used to obtain the results. 7202 + */ 7203 + request_id?: string; 7204 + } 7205 + declare abstract class Base_Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8 { 7206 + inputs: Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Input; 7207 + postProcessedOutputs: Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8_Output; 7208 + } 7209 + interface Ai_Cf_Deepgram_Nova_3_Input { 7210 + audio: { 7211 + body: object; 7212 + contentType: string; 7213 + }; 7214 + /** 7215 + * Sets how the model will interpret strings submitted to the custom_topic param. When strict, the model will only return topics submitted using the custom_topic param. When extended, the model will return its own detected topics in addition to those submitted using the custom_topic param. 7216 + */ 7217 + custom_topic_mode?: "extended" | "strict"; 7218 + /** 7219 + * Custom topics you want the model to detect within your input audio or text if present Submit up to 100 7220 + */ 7221 + custom_topic?: string; 7222 + /** 7223 + * Sets how the model will interpret intents submitted to the custom_intent param. When strict, the model will only return intents submitted using the custom_intent param. When extended, the model will return its own detected intents in addition those submitted using the custom_intents param 7224 + */ 7225 + custom_intent_mode?: "extended" | "strict"; 7226 + /** 7227 + * Custom intents you want the model to detect within your input audio if present 7228 + */ 7229 + custom_intent?: string; 7230 + /** 7231 + * Identifies and extracts key entities from content in submitted audio 7232 + */ 7233 + detect_entities?: boolean; 7234 + /** 7235 + * Identifies the dominant language spoken in submitted audio 7236 + */ 7237 + detect_language?: boolean; 7238 + /** 7239 + * Recognize speaker changes. Each word in the transcript will be assigned a speaker number starting at 0 7240 + */ 7241 + diarize?: boolean; 7242 + /** 7243 + * Identify and extract key entities from content in submitted audio 7244 + */ 7245 + dictation?: boolean; 7246 + /** 7247 + * Specify the expected encoding of your submitted audio 7248 + */ 7249 + encoding?: "linear16" | "flac" | "mulaw" | "amr-nb" | "amr-wb" | "opus" | "speex" | "g729"; 7250 + /** 7251 + * Arbitrary key-value pairs that are attached to the API response for usage in downstream processing 7252 + */ 7253 + extra?: string; 7254 + /** 7255 + * Filler Words can help transcribe interruptions in your audio, like 'uh' and 'um' 7256 + */ 7257 + filler_words?: boolean; 7258 + /** 7259 + * Key term prompting can boost or suppress specialized terminology and brands. 7260 + */ 7261 + keyterm?: string; 7262 + /** 7263 + * Keywords can boost or suppress specialized terminology and brands. 7264 + */ 7265 + keywords?: string; 7266 + /** 7267 + * The BCP-47 language tag that hints at the primary spoken language. Depending on the Model and API endpoint you choose only certain languages are available. 7268 + */ 7269 + language?: string; 7270 + /** 7271 + * Spoken measurements will be converted to their corresponding abbreviations. 7272 + */ 7273 + measurements?: boolean; 7274 + /** 7275 + * Opts out requests from the Deepgram Model Improvement Program. Refer to our Docs for pricing impacts before setting this to true. https://dpgr.am/deepgram-mip. 7276 + */ 7277 + mip_opt_out?: boolean; 7278 + /** 7279 + * Mode of operation for the model representing broad area of topic that will be talked about in the supplied audio 7280 + */ 7281 + mode?: "general" | "medical" | "finance"; 7282 + /** 7283 + * Transcribe each audio channel independently. 7284 + */ 7285 + multichannel?: boolean; 7286 + /** 7287 + * Numerals converts numbers from written format to numerical format. 7288 + */ 7289 + numerals?: boolean; 7290 + /** 7291 + * Splits audio into paragraphs to improve transcript readability. 7292 + */ 7293 + paragraphs?: boolean; 7294 + /** 7295 + * Profanity Filter looks for recognized profanity and converts it to the nearest recognized non-profane word or removes it from the transcript completely. 7296 + */ 7297 + profanity_filter?: boolean; 7298 + /** 7299 + * Add punctuation and capitalization to the transcript. 7300 + */ 7301 + punctuate?: boolean; 7302 + /** 7303 + * Redaction removes sensitive information from your transcripts. 7304 + */ 7305 + redact?: string; 7306 + /** 7307 + * Search for terms or phrases in submitted audio and replaces them. 7308 + */ 7309 + replace?: string; 7310 + /** 7311 + * Search for terms or phrases in submitted audio. 7312 + */ 7313 + search?: string; 7314 + /** 7315 + * Recognizes the sentiment throughout a transcript or text. 7316 + */ 7317 + sentiment?: boolean; 7318 + /** 7319 + * Apply formatting to transcript output. When set to true, additional formatting will be applied to transcripts to improve readability. 7320 + */ 7321 + smart_format?: boolean; 7322 + /** 7323 + * Detect topics throughout a transcript or text. 7324 + */ 7325 + topics?: boolean; 7326 + /** 7327 + * Segments speech into meaningful semantic units. 7328 + */ 7329 + utterances?: boolean; 7330 + /** 7331 + * Seconds to wait before detecting a pause between words in submitted audio. 7332 + */ 7333 + utt_split?: number; 7334 + /** 7335 + * The number of channels in the submitted audio 7336 + */ 7337 + channels?: number; 7338 + /** 7339 + * Specifies whether the streaming endpoint should provide ongoing transcription updates as more audio is received. When set to true, the endpoint sends continuous updates, meaning transcription results may evolve over time. Note: Supported only for webosockets. 7340 + */ 7341 + interim_results?: boolean; 7342 + /** 7343 + * Indicates how long model will wait to detect whether a speaker has finished speaking or pauses for a significant period of time. When set to a value, the streaming endpoint immediately finalizes the transcription for the processed time range and returns the transcript with a speech_final parameter set to true. Can also be set to false to disable endpointing 7344 + */ 7345 + endpointing?: string; 7346 + /** 7347 + * Indicates that speech has started. You'll begin receiving Speech Started messages upon speech starting. Note: Supported only for webosockets. 7348 + */ 7349 + vad_events?: boolean; 7350 + /** 7351 + * Indicates how long model will wait to send an UtteranceEnd message after a word has been transcribed. Use with interim_results. Note: Supported only for webosockets. 7352 + */ 7353 + utterance_end_ms?: boolean; 7354 + } 7355 + interface Ai_Cf_Deepgram_Nova_3_Output { 7356 + results?: { 7357 + channels?: { 7358 + alternatives?: { 7359 + confidence?: number; 7360 + transcript?: string; 7361 + words?: { 7362 + confidence?: number; 7363 + end?: number; 7364 + start?: number; 7365 + word?: string; 7366 + }[]; 7367 + }[]; 7368 + }[]; 7369 + summary?: { 7370 + result?: string; 7371 + short?: string; 7372 + }; 7373 + sentiments?: { 7374 + segments?: { 7375 + text?: string; 7376 + start_word?: number; 7377 + end_word?: number; 7378 + sentiment?: string; 7379 + sentiment_score?: number; 7380 + }[]; 7381 + average?: { 7382 + sentiment?: string; 7383 + sentiment_score?: number; 7384 + }; 7385 + }; 7386 + }; 7387 + } 7388 + declare abstract class Base_Ai_Cf_Deepgram_Nova_3 { 7389 + inputs: Ai_Cf_Deepgram_Nova_3_Input; 7390 + postProcessedOutputs: Ai_Cf_Deepgram_Nova_3_Output; 7391 + } 7392 + interface Ai_Cf_Qwen_Qwen3_Embedding_0_6B_Input { 7393 + queries?: string | string[]; 7394 + /** 7395 + * Optional instruction for the task 7396 + */ 7397 + instruction?: string; 7398 + documents?: string | string[]; 7399 + text?: string | string[]; 7400 + } 7401 + interface Ai_Cf_Qwen_Qwen3_Embedding_0_6B_Output { 7402 + data?: number[][]; 7403 + shape?: number[]; 7404 + } 7405 + declare abstract class Base_Ai_Cf_Qwen_Qwen3_Embedding_0_6B { 7406 + inputs: Ai_Cf_Qwen_Qwen3_Embedding_0_6B_Input; 7407 + postProcessedOutputs: Ai_Cf_Qwen_Qwen3_Embedding_0_6B_Output; 7408 + } 7409 + type Ai_Cf_Pipecat_Ai_Smart_Turn_V2_Input = { 7410 + /** 7411 + * readable stream with audio data and content-type specified for that data 7412 + */ 7413 + audio: { 7414 + body: object; 7415 + contentType: string; 7416 + }; 7417 + /** 7418 + * type of data PCM data that's sent to the inference server as raw array 7419 + */ 7420 + dtype?: "uint8" | "float32" | "float64"; 7421 + } | { 7422 + /** 7423 + * base64 encoded audio data 7424 + */ 7425 + audio: string; 7426 + /** 7427 + * type of data PCM data that's sent to the inference server as raw array 7428 + */ 7429 + dtype?: "uint8" | "float32" | "float64"; 7430 + }; 7431 + interface Ai_Cf_Pipecat_Ai_Smart_Turn_V2_Output { 7432 + /** 7433 + * if true, end-of-turn was detected 7434 + */ 7435 + is_complete?: boolean; 7436 + /** 7437 + * probability of the end-of-turn detection 7438 + */ 7439 + probability?: number; 7440 + } 7441 + declare abstract class Base_Ai_Cf_Pipecat_Ai_Smart_Turn_V2 { 7442 + inputs: Ai_Cf_Pipecat_Ai_Smart_Turn_V2_Input; 7443 + postProcessedOutputs: Ai_Cf_Pipecat_Ai_Smart_Turn_V2_Output; 7444 + } 7445 + declare abstract class Base_Ai_Cf_Openai_Gpt_Oss_120B { 7446 + inputs: ResponsesInput; 7447 + postProcessedOutputs: ResponsesOutput; 7448 + } 7449 + declare abstract class Base_Ai_Cf_Openai_Gpt_Oss_20B { 7450 + inputs: ResponsesInput; 7451 + postProcessedOutputs: ResponsesOutput; 7452 + } 7453 + interface Ai_Cf_Leonardo_Phoenix_1_0_Input { 7454 + /** 7455 + * A text description of the image you want to generate. 7456 + */ 7457 + prompt: string; 7458 + /** 7459 + * Controls how closely the generated image should adhere to the prompt; higher values make the image more aligned with the prompt 7460 + */ 7461 + guidance?: number; 7462 + /** 7463 + * Random seed for reproducibility of the image generation 7464 + */ 7465 + seed?: number; 7466 + /** 7467 + * The height of the generated image in pixels 7468 + */ 7469 + height?: number; 7470 + /** 7471 + * The width of the generated image in pixels 7472 + */ 7473 + width?: number; 7474 + /** 7475 + * The number of diffusion steps; higher values can improve quality but take longer 7476 + */ 7477 + num_steps?: number; 7478 + /** 7479 + * Specify what to exclude from the generated images 7480 + */ 7481 + negative_prompt?: string; 7482 + } 7483 + /** 7484 + * The generated image in JPEG format 7485 + */ 7486 + type Ai_Cf_Leonardo_Phoenix_1_0_Output = string; 7487 + declare abstract class Base_Ai_Cf_Leonardo_Phoenix_1_0 { 7488 + inputs: Ai_Cf_Leonardo_Phoenix_1_0_Input; 7489 + postProcessedOutputs: Ai_Cf_Leonardo_Phoenix_1_0_Output; 7490 + } 7491 + interface Ai_Cf_Leonardo_Lucid_Origin_Input { 7492 + /** 7493 + * A text description of the image you want to generate. 7494 + */ 7495 + prompt: string; 7496 + /** 7497 + * Controls how closely the generated image should adhere to the prompt; higher values make the image more aligned with the prompt 7498 + */ 7499 + guidance?: number; 7500 + /** 7501 + * Random seed for reproducibility of the image generation 7502 + */ 7503 + seed?: number; 7504 + /** 7505 + * The height of the generated image in pixels 7506 + */ 7507 + height?: number; 7508 + /** 7509 + * The width of the generated image in pixels 7510 + */ 7511 + width?: number; 7512 + /** 7513 + * The number of diffusion steps; higher values can improve quality but take longer 7514 + */ 7515 + num_steps?: number; 7516 + /** 7517 + * The number of diffusion steps; higher values can improve quality but take longer 7518 + */ 7519 + steps?: number; 7520 + } 7521 + interface Ai_Cf_Leonardo_Lucid_Origin_Output { 7522 + /** 7523 + * The generated image in Base64 format. 7524 + */ 7525 + image?: string; 7526 + } 7527 + declare abstract class Base_Ai_Cf_Leonardo_Lucid_Origin { 7528 + inputs: Ai_Cf_Leonardo_Lucid_Origin_Input; 7529 + postProcessedOutputs: Ai_Cf_Leonardo_Lucid_Origin_Output; 7530 + } 7531 + interface Ai_Cf_Deepgram_Aura_1_Input { 7532 + /** 7533 + * Speaker used to produce the audio. 7534 + */ 7535 + speaker?: "angus" | "asteria" | "arcas" | "orion" | "orpheus" | "athena" | "luna" | "zeus" | "perseus" | "helios" | "hera" | "stella"; 7536 + /** 7537 + * Encoding of the output audio. 7538 + */ 7539 + encoding?: "linear16" | "flac" | "mulaw" | "alaw" | "mp3" | "opus" | "aac"; 7540 + /** 7541 + * Container specifies the file format wrapper for the output audio. The available options depend on the encoding type.. 7542 + */ 7543 + container?: "none" | "wav" | "ogg"; 7544 + /** 7545 + * The text content to be converted to speech 7546 + */ 7547 + text: string; 7548 + /** 7549 + * Sample Rate specifies the sample rate for the output audio. Based on the encoding, different sample rates are supported. For some encodings, the sample rate is not configurable 7550 + */ 7551 + sample_rate?: number; 7552 + /** 7553 + * The bitrate of the audio in bits per second. Choose from predefined ranges or specific values based on the encoding type. 7554 + */ 7555 + bit_rate?: number; 7556 + } 7557 + /** 7558 + * The generated audio in MP3 format 7559 + */ 7560 + type Ai_Cf_Deepgram_Aura_1_Output = string; 7561 + declare abstract class Base_Ai_Cf_Deepgram_Aura_1 { 7562 + inputs: Ai_Cf_Deepgram_Aura_1_Input; 7563 + postProcessedOutputs: Ai_Cf_Deepgram_Aura_1_Output; 7564 + } 7565 + interface Ai_Cf_Ai4Bharat_Indictrans2_En_Indic_1B_Input { 7566 + /** 7567 + * Input text to translate. Can be a single string or a list of strings. 7568 + */ 7569 + text: string | string[]; 7570 + /** 7571 + * Target langauge to translate to 7572 + */ 7573 + target_language: "asm_Beng" | "awa_Deva" | "ben_Beng" | "bho_Deva" | "brx_Deva" | "doi_Deva" | "eng_Latn" | "gom_Deva" | "gon_Deva" | "guj_Gujr" | "hin_Deva" | "hne_Deva" | "kan_Knda" | "kas_Arab" | "kas_Deva" | "kha_Latn" | "lus_Latn" | "mag_Deva" | "mai_Deva" | "mal_Mlym" | "mar_Deva" | "mni_Beng" | "mni_Mtei" | "npi_Deva" | "ory_Orya" | "pan_Guru" | "san_Deva" | "sat_Olck" | "snd_Arab" | "snd_Deva" | "tam_Taml" | "tel_Telu" | "urd_Arab" | "unr_Deva"; 7574 + } 7575 + interface Ai_Cf_Ai4Bharat_Indictrans2_En_Indic_1B_Output { 7576 + /** 7577 + * Translated texts 7578 + */ 7579 + translations: string[]; 7580 + } 7581 + declare abstract class Base_Ai_Cf_Ai4Bharat_Indictrans2_En_Indic_1B { 7582 + inputs: Ai_Cf_Ai4Bharat_Indictrans2_En_Indic_1B_Input; 7583 + postProcessedOutputs: Ai_Cf_Ai4Bharat_Indictrans2_En_Indic_1B_Output; 7584 + } 7585 + type Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Input = Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Prompt | Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Messages | Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Async_Batch; 7586 + interface Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Prompt { 7587 + /** 7588 + * The input text prompt for the model to generate a response. 7589 + */ 7590 + prompt: string; 7591 + /** 7592 + * Name of the LoRA (Low-Rank Adaptation) model to fine-tune the base model. 7593 + */ 7594 + lora?: string; 7595 + response_format?: Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_JSON_Mode; 7596 + /** 7597 + * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 7598 + */ 7599 + raw?: boolean; 7600 + /** 7601 + * If true, the response will be streamed back incrementally using SSE, Server Sent Events. 7602 + */ 7603 + stream?: boolean; 7604 + /** 7605 + * The maximum number of tokens to generate in the response. 7606 + */ 7607 + max_tokens?: number; 7608 + /** 7609 + * Controls the randomness of the output; higher values produce more random results. 7610 + */ 7611 + temperature?: number; 7612 + /** 7613 + * Adjusts the creativity of the AI's responses by controlling how many possible words it considers. Lower values make outputs more predictable; higher values allow for more varied and creative responses. 7614 + */ 7615 + top_p?: number; 7616 + /** 7617 + * Limits the AI to choose from the top 'k' most probable words. Lower values make responses more focused; higher values introduce more variety and potential surprises. 7618 + */ 7619 + top_k?: number; 7620 + /** 7621 + * Random seed for reproducibility of the generation. 7622 + */ 7623 + seed?: number; 7624 + /** 7625 + * Penalty for repeated tokens; higher values discourage repetition. 7626 + */ 7627 + repetition_penalty?: number; 7628 + /** 7629 + * Decreases the likelihood of the model repeating the same lines verbatim. 7630 + */ 7631 + frequency_penalty?: number; 7632 + /** 7633 + * Increases the likelihood of the model introducing new topics. 7634 + */ 7635 + presence_penalty?: number; 7636 + } 7637 + interface Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_JSON_Mode { 7638 + type?: "json_object" | "json_schema"; 7639 + json_schema?: unknown; 7640 + } 7641 + interface Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Messages { 7642 + /** 7643 + * An array of message objects representing the conversation history. 7644 + */ 7645 + messages: { 7646 + /** 7647 + * The role of the message sender (e.g., 'user', 'assistant', 'system', 'tool'). 7648 + */ 7649 + role: string; 7650 + /** 7651 + * The content of the message as a string. 7652 + */ 7653 + content: string; 7654 + }[]; 7655 + functions?: { 7656 + name: string; 7657 + code: string; 7658 + }[]; 7659 + /** 7660 + * A list of tools available for the assistant to use. 7661 + */ 7662 + tools?: ({ 7663 + /** 7664 + * The name of the tool. More descriptive the better. 7665 + */ 7666 + name: string; 7667 + /** 7668 + * A brief description of what the tool does. 7669 + */ 7670 + description: string; 7671 + /** 7672 + * Schema defining the parameters accepted by the tool. 7673 + */ 7674 + parameters: { 7675 + /** 7676 + * The type of the parameters object (usually 'object'). 7677 + */ 7678 + type: string; 7679 + /** 7680 + * List of required parameter names. 7681 + */ 7682 + required?: string[]; 7683 + /** 7684 + * Definitions of each parameter. 7685 + */ 7686 + properties: { 7687 + [k: string]: { 7688 + /** 7689 + * The data type of the parameter. 7690 + */ 7691 + type: string; 7692 + /** 7693 + * A description of the expected parameter. 7694 + */ 7695 + description: string; 7696 + }; 7697 + }; 7698 + }; 7699 + } | { 7700 + /** 7701 + * Specifies the type of tool (e.g., 'function'). 7702 + */ 7703 + type: string; 7704 + /** 7705 + * Details of the function tool. 7706 + */ 7707 + function: { 7708 + /** 7709 + * The name of the function. 7710 + */ 7711 + name: string; 7712 + /** 7713 + * A brief description of what the function does. 7714 + */ 7715 + description: string; 7716 + /** 7717 + * Schema defining the parameters accepted by the function. 7718 + */ 7719 + parameters: { 7720 + /** 7721 + * The type of the parameters object (usually 'object'). 7722 + */ 7723 + type: string; 7724 + /** 7725 + * List of required parameter names. 7726 + */ 7727 + required?: string[]; 7728 + /** 7729 + * Definitions of each parameter. 7730 + */ 7731 + properties: { 7732 + [k: string]: { 7733 + /** 7734 + * The data type of the parameter. 7735 + */ 7736 + type: string; 7737 + /** 7738 + * A description of the expected parameter. 7739 + */ 7740 + description: string; 7741 + }; 7742 + }; 7743 + }; 7744 + }; 7745 + })[]; 7746 + response_format?: Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_JSON_Mode_1; 7747 + /** 7748 + * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 7749 + */ 7750 + raw?: boolean; 7751 + /** 7752 + * If true, the response will be streamed back incrementally using SSE, Server Sent Events. 7753 + */ 7754 + stream?: boolean; 7755 + /** 7756 + * The maximum number of tokens to generate in the response. 7757 + */ 7758 + max_tokens?: number; 7759 + /** 7760 + * Controls the randomness of the output; higher values produce more random results. 7761 + */ 7762 + temperature?: number; 7763 + /** 7764 + * Adjusts the creativity of the AI's responses by controlling how many possible words it considers. Lower values make outputs more predictable; higher values allow for more varied and creative responses. 7765 + */ 7766 + top_p?: number; 7767 + /** 7768 + * Limits the AI to choose from the top 'k' most probable words. Lower values make responses more focused; higher values introduce more variety and potential surprises. 7769 + */ 7770 + top_k?: number; 7771 + /** 7772 + * Random seed for reproducibility of the generation. 7773 + */ 7774 + seed?: number; 7775 + /** 7776 + * Penalty for repeated tokens; higher values discourage repetition. 7777 + */ 7778 + repetition_penalty?: number; 7779 + /** 7780 + * Decreases the likelihood of the model repeating the same lines verbatim. 7781 + */ 7782 + frequency_penalty?: number; 7783 + /** 7784 + * Increases the likelihood of the model introducing new topics. 7785 + */ 7786 + presence_penalty?: number; 7787 + } 7788 + interface Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_JSON_Mode_1 { 7789 + type?: "json_object" | "json_schema"; 7790 + json_schema?: unknown; 7791 + } 7792 + interface Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Async_Batch { 7793 + requests: (Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Prompt_1 | Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Messages_1)[]; 7794 + } 7795 + interface Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Prompt_1 { 7796 + /** 7797 + * The input text prompt for the model to generate a response. 7798 + */ 7799 + prompt: string; 7800 + /** 7801 + * Name of the LoRA (Low-Rank Adaptation) model to fine-tune the base model. 7802 + */ 7803 + lora?: string; 7804 + response_format?: Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_JSON_Mode_2; 7805 + /** 7806 + * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 7807 + */ 7808 + raw?: boolean; 7809 + /** 7810 + * If true, the response will be streamed back incrementally using SSE, Server Sent Events. 7811 + */ 7812 + stream?: boolean; 7813 + /** 7814 + * The maximum number of tokens to generate in the response. 7815 + */ 7816 + max_tokens?: number; 7817 + /** 7818 + * Controls the randomness of the output; higher values produce more random results. 7819 + */ 7820 + temperature?: number; 7821 + /** 7822 + * Adjusts the creativity of the AI's responses by controlling how many possible words it considers. Lower values make outputs more predictable; higher values allow for more varied and creative responses. 7823 + */ 7824 + top_p?: number; 7825 + /** 7826 + * Limits the AI to choose from the top 'k' most probable words. Lower values make responses more focused; higher values introduce more variety and potential surprises. 7827 + */ 7828 + top_k?: number; 7829 + /** 7830 + * Random seed for reproducibility of the generation. 7831 + */ 7832 + seed?: number; 7833 + /** 7834 + * Penalty for repeated tokens; higher values discourage repetition. 7835 + */ 7836 + repetition_penalty?: number; 7837 + /** 7838 + * Decreases the likelihood of the model repeating the same lines verbatim. 7839 + */ 7840 + frequency_penalty?: number; 7841 + /** 7842 + * Increases the likelihood of the model introducing new topics. 7843 + */ 7844 + presence_penalty?: number; 7845 + } 7846 + interface Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_JSON_Mode_2 { 7847 + type?: "json_object" | "json_schema"; 7848 + json_schema?: unknown; 7849 + } 7850 + interface Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Messages_1 { 7851 + /** 7852 + * An array of message objects representing the conversation history. 7853 + */ 7854 + messages: { 7855 + /** 7856 + * The role of the message sender (e.g., 'user', 'assistant', 'system', 'tool'). 7857 + */ 7858 + role: string; 7859 + /** 7860 + * The content of the message as a string. 7861 + */ 7862 + content: string; 7863 + }[]; 7864 + functions?: { 7865 + name: string; 7866 + code: string; 7867 + }[]; 7868 + /** 7869 + * A list of tools available for the assistant to use. 7870 + */ 7871 + tools?: ({ 7872 + /** 7873 + * The name of the tool. More descriptive the better. 7874 + */ 7875 + name: string; 7876 + /** 7877 + * A brief description of what the tool does. 7878 + */ 7879 + description: string; 7880 + /** 7881 + * Schema defining the parameters accepted by the tool. 7882 + */ 7883 + parameters: { 7884 + /** 7885 + * The type of the parameters object (usually 'object'). 7886 + */ 7887 + type: string; 7888 + /** 7889 + * List of required parameter names. 7890 + */ 7891 + required?: string[]; 7892 + /** 7893 + * Definitions of each parameter. 7894 + */ 7895 + properties: { 7896 + [k: string]: { 7897 + /** 7898 + * The data type of the parameter. 7899 + */ 7900 + type: string; 7901 + /** 7902 + * A description of the expected parameter. 7903 + */ 7904 + description: string; 7905 + }; 7906 + }; 7907 + }; 7908 + } | { 7909 + /** 7910 + * Specifies the type of tool (e.g., 'function'). 7911 + */ 7912 + type: string; 7913 + /** 7914 + * Details of the function tool. 7915 + */ 7916 + function: { 7917 + /** 7918 + * The name of the function. 7919 + */ 7920 + name: string; 7921 + /** 7922 + * A brief description of what the function does. 7923 + */ 7924 + description: string; 7925 + /** 7926 + * Schema defining the parameters accepted by the function. 7927 + */ 7928 + parameters: { 7929 + /** 7930 + * The type of the parameters object (usually 'object'). 7931 + */ 7932 + type: string; 7933 + /** 7934 + * List of required parameter names. 7935 + */ 7936 + required?: string[]; 7937 + /** 7938 + * Definitions of each parameter. 7939 + */ 7940 + properties: { 7941 + [k: string]: { 7942 + /** 7943 + * The data type of the parameter. 7944 + */ 7945 + type: string; 7946 + /** 7947 + * A description of the expected parameter. 7948 + */ 7949 + description: string; 7950 + }; 7951 + }; 7952 + }; 7953 + }; 7954 + })[]; 7955 + response_format?: Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_JSON_Mode_3; 7956 + /** 7957 + * If true, a chat template is not applied and you must adhere to the specific model's expected formatting. 7958 + */ 7959 + raw?: boolean; 7960 + /** 7961 + * If true, the response will be streamed back incrementally using SSE, Server Sent Events. 7962 + */ 7963 + stream?: boolean; 7964 + /** 7965 + * The maximum number of tokens to generate in the response. 7966 + */ 7967 + max_tokens?: number; 7968 + /** 7969 + * Controls the randomness of the output; higher values produce more random results. 7970 + */ 7971 + temperature?: number; 7972 + /** 7973 + * Adjusts the creativity of the AI's responses by controlling how many possible words it considers. Lower values make outputs more predictable; higher values allow for more varied and creative responses. 7974 + */ 7975 + top_p?: number; 7976 + /** 7977 + * Limits the AI to choose from the top 'k' most probable words. Lower values make responses more focused; higher values introduce more variety and potential surprises. 7978 + */ 7979 + top_k?: number; 7980 + /** 7981 + * Random seed for reproducibility of the generation. 7982 + */ 7983 + seed?: number; 7984 + /** 7985 + * Penalty for repeated tokens; higher values discourage repetition. 7986 + */ 7987 + repetition_penalty?: number; 7988 + /** 7989 + * Decreases the likelihood of the model repeating the same lines verbatim. 7990 + */ 7991 + frequency_penalty?: number; 7992 + /** 7993 + * Increases the likelihood of the model introducing new topics. 7994 + */ 7995 + presence_penalty?: number; 7996 + } 7997 + interface Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_JSON_Mode_3 { 7998 + type?: "json_object" | "json_schema"; 7999 + json_schema?: unknown; 8000 + } 8001 + type Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Output = Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Chat_Completion_Response | Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Text_Completion_Response | string | Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_AsyncResponse; 8002 + interface Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Chat_Completion_Response { 8003 + /** 8004 + * Unique identifier for the completion 8005 + */ 8006 + id?: string; 8007 + /** 8008 + * Object type identifier 8009 + */ 8010 + object?: "chat.completion"; 8011 + /** 8012 + * Unix timestamp of when the completion was created 8013 + */ 8014 + created?: number; 8015 + /** 8016 + * Model used for the completion 8017 + */ 8018 + model?: string; 8019 + /** 8020 + * List of completion choices 8021 + */ 8022 + choices?: { 8023 + /** 8024 + * Index of the choice in the list 8025 + */ 8026 + index?: number; 8027 + /** 8028 + * The message generated by the model 8029 + */ 8030 + message?: { 8031 + /** 8032 + * Role of the message author 8033 + */ 8034 + role: string; 8035 + /** 8036 + * The content of the message 8037 + */ 8038 + content: string; 8039 + /** 8040 + * Internal reasoning content (if available) 8041 + */ 8042 + reasoning_content?: string; 8043 + /** 8044 + * Tool calls made by the assistant 8045 + */ 8046 + tool_calls?: { 8047 + /** 8048 + * Unique identifier for the tool call 8049 + */ 8050 + id: string; 8051 + /** 8052 + * Type of tool call 8053 + */ 8054 + type: "function"; 8055 + function: { 8056 + /** 8057 + * Name of the function to call 8058 + */ 8059 + name: string; 8060 + /** 8061 + * JSON string of arguments for the function 8062 + */ 8063 + arguments: string; 8064 + }; 8065 + }[]; 8066 + }; 8067 + /** 8068 + * Reason why the model stopped generating 8069 + */ 8070 + finish_reason?: string; 8071 + /** 8072 + * Stop reason (may be null) 8073 + */ 8074 + stop_reason?: string | null; 8075 + /** 8076 + * Log probabilities (if requested) 8077 + */ 8078 + logprobs?: {} | null; 8079 + }[]; 8080 + /** 8081 + * Usage statistics for the inference request 8082 + */ 8083 + usage?: { 8084 + /** 8085 + * Total number of tokens in input 8086 + */ 8087 + prompt_tokens?: number; 8088 + /** 8089 + * Total number of tokens in output 8090 + */ 8091 + completion_tokens?: number; 8092 + /** 8093 + * Total number of input and output tokens 8094 + */ 8095 + total_tokens?: number; 8096 + }; 8097 + /** 8098 + * Log probabilities for the prompt (if requested) 8099 + */ 8100 + prompt_logprobs?: {} | null; 8101 + } 8102 + interface Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Text_Completion_Response { 8103 + /** 8104 + * Unique identifier for the completion 8105 + */ 8106 + id?: string; 8107 + /** 8108 + * Object type identifier 8109 + */ 8110 + object?: "text_completion"; 8111 + /** 8112 + * Unix timestamp of when the completion was created 8113 + */ 8114 + created?: number; 8115 + /** 8116 + * Model used for the completion 8117 + */ 8118 + model?: string; 8119 + /** 8120 + * List of completion choices 8121 + */ 8122 + choices?: { 8123 + /** 8124 + * Index of the choice in the list 8125 + */ 8126 + index: number; 8127 + /** 8128 + * The generated text completion 8129 + */ 8130 + text: string; 8131 + /** 8132 + * Reason why the model stopped generating 8133 + */ 8134 + finish_reason: string; 8135 + /** 8136 + * Stop reason (may be null) 8137 + */ 8138 + stop_reason?: string | null; 8139 + /** 8140 + * Log probabilities (if requested) 8141 + */ 8142 + logprobs?: {} | null; 8143 + /** 8144 + * Log probabilities for the prompt (if requested) 8145 + */ 8146 + prompt_logprobs?: {} | null; 8147 + }[]; 8148 + /** 8149 + * Usage statistics for the inference request 8150 + */ 8151 + usage?: { 8152 + /** 8153 + * Total number of tokens in input 8154 + */ 8155 + prompt_tokens?: number; 8156 + /** 8157 + * Total number of tokens in output 8158 + */ 8159 + completion_tokens?: number; 8160 + /** 8161 + * Total number of input and output tokens 8162 + */ 8163 + total_tokens?: number; 8164 + }; 8165 + } 8166 + interface Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_AsyncResponse { 8167 + /** 8168 + * The async request id that can be used to obtain the results. 8169 + */ 8170 + request_id?: string; 8171 + } 8172 + declare abstract class Base_Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It { 8173 + inputs: Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Input; 8174 + postProcessedOutputs: Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It_Output; 8175 + } 8176 + interface Ai_Cf_Pfnet_Plamo_Embedding_1B_Input { 8177 + /** 8178 + * Input text to embed. Can be a single string or a list of strings. 8179 + */ 8180 + text: string | string[]; 8181 + } 8182 + interface Ai_Cf_Pfnet_Plamo_Embedding_1B_Output { 8183 + /** 8184 + * Embedding vectors, where each vector is a list of floats. 8185 + */ 8186 + data: number[][]; 8187 + /** 8188 + * Shape of the embedding data as [number_of_embeddings, embedding_dimension]. 8189 + * 8190 + * @minItems 2 8191 + * @maxItems 2 8192 + */ 8193 + shape: [ 8194 + number, 8195 + number 8196 + ]; 8197 + } 8198 + declare abstract class Base_Ai_Cf_Pfnet_Plamo_Embedding_1B { 8199 + inputs: Ai_Cf_Pfnet_Plamo_Embedding_1B_Input; 8200 + postProcessedOutputs: Ai_Cf_Pfnet_Plamo_Embedding_1B_Output; 8201 + } 8202 + interface Ai_Cf_Deepgram_Flux_Input { 8203 + /** 8204 + * Encoding of the audio stream. Currently only supports raw signed little-endian 16-bit PCM. 8205 + */ 8206 + encoding: "linear16"; 8207 + /** 8208 + * Sample rate of the audio stream in Hz. 8209 + */ 8210 + sample_rate: string; 8211 + /** 8212 + * End-of-turn confidence required to fire an eager end-of-turn event. When set, enables EagerEndOfTurn and TurnResumed events. Valid Values 0.3 - 0.9. 8213 + */ 8214 + eager_eot_threshold?: string; 8215 + /** 8216 + * End-of-turn confidence required to finish a turn. Valid Values 0.5 - 0.9. 8217 + */ 8218 + eot_threshold?: string; 8219 + /** 8220 + * A turn will be finished when this much time has passed after speech, regardless of EOT confidence. 8221 + */ 8222 + eot_timeout_ms?: string; 8223 + /** 8224 + * Keyterm prompting can improve recognition of specialized terminology. Pass multiple keyterm query parameters to boost multiple keyterms. 8225 + */ 8226 + keyterm?: string; 8227 + /** 8228 + * Opts out requests from the Deepgram Model Improvement Program. Refer to Deepgram Docs for pricing impacts before setting this to true. https://dpgr.am/deepgram-mip 8229 + */ 8230 + mip_opt_out?: "true" | "false"; 8231 + /** 8232 + * Label your requests for the purpose of identification during usage reporting 8233 + */ 8234 + tag?: string; 8235 + } 8236 + /** 8237 + * Output will be returned as websocket messages. 8238 + */ 8239 + interface Ai_Cf_Deepgram_Flux_Output { 8240 + /** 8241 + * The unique identifier of the request (uuid) 8242 + */ 8243 + request_id?: string; 8244 + /** 8245 + * Starts at 0 and increments for each message the server sends to the client. 8246 + */ 8247 + sequence_id?: number; 8248 + /** 8249 + * The type of event being reported. 8250 + */ 8251 + event?: "Update" | "StartOfTurn" | "EagerEndOfTurn" | "TurnResumed" | "EndOfTurn"; 8252 + /** 8253 + * The index of the current turn 8254 + */ 8255 + turn_index?: number; 8256 + /** 8257 + * Start time in seconds of the audio range that was transcribed 8258 + */ 8259 + audio_window_start?: number; 8260 + /** 8261 + * End time in seconds of the audio range that was transcribed 8262 + */ 8263 + audio_window_end?: number; 8264 + /** 8265 + * Text that was said over the course of the current turn 8266 + */ 8267 + transcript?: string; 8268 + /** 8269 + * The words in the transcript 8270 + */ 8271 + words?: { 8272 + /** 8273 + * The individual punctuated, properly-cased word from the transcript 8274 + */ 8275 + word: string; 8276 + /** 8277 + * Confidence that this word was transcribed correctly 8278 + */ 8279 + confidence: number; 8280 + }[]; 8281 + /** 8282 + * Confidence that no more speech is coming in this turn 8283 + */ 8284 + end_of_turn_confidence?: number; 8285 + } 8286 + declare abstract class Base_Ai_Cf_Deepgram_Flux { 8287 + inputs: Ai_Cf_Deepgram_Flux_Input; 8288 + postProcessedOutputs: Ai_Cf_Deepgram_Flux_Output; 8289 + } 8290 + interface Ai_Cf_Deepgram_Aura_2_En_Input { 8291 + /** 8292 + * Speaker used to produce the audio. 8293 + */ 8294 + speaker?: "amalthea" | "andromeda" | "apollo" | "arcas" | "aries" | "asteria" | "athena" | "atlas" | "aurora" | "callista" | "cora" | "cordelia" | "delia" | "draco" | "electra" | "harmonia" | "helena" | "hera" | "hermes" | "hyperion" | "iris" | "janus" | "juno" | "jupiter" | "luna" | "mars" | "minerva" | "neptune" | "odysseus" | "ophelia" | "orion" | "orpheus" | "pandora" | "phoebe" | "pluto" | "saturn" | "thalia" | "theia" | "vesta" | "zeus"; 8295 + /** 8296 + * Encoding of the output audio. 8297 + */ 8298 + encoding?: "linear16" | "flac" | "mulaw" | "alaw" | "mp3" | "opus" | "aac"; 8299 + /** 8300 + * Container specifies the file format wrapper for the output audio. The available options depend on the encoding type.. 8301 + */ 8302 + container?: "none" | "wav" | "ogg"; 8303 + /** 8304 + * The text content to be converted to speech 8305 + */ 8306 + text: string; 8307 + /** 8308 + * Sample Rate specifies the sample rate for the output audio. Based on the encoding, different sample rates are supported. For some encodings, the sample rate is not configurable 8309 + */ 8310 + sample_rate?: number; 8311 + /** 8312 + * The bitrate of the audio in bits per second. Choose from predefined ranges or specific values based on the encoding type. 8313 + */ 8314 + bit_rate?: number; 8315 + } 8316 + /** 8317 + * The generated audio in MP3 format 8318 + */ 8319 + type Ai_Cf_Deepgram_Aura_2_En_Output = string; 8320 + declare abstract class Base_Ai_Cf_Deepgram_Aura_2_En { 8321 + inputs: Ai_Cf_Deepgram_Aura_2_En_Input; 8322 + postProcessedOutputs: Ai_Cf_Deepgram_Aura_2_En_Output; 8323 + } 8324 + interface Ai_Cf_Deepgram_Aura_2_Es_Input { 8325 + /** 8326 + * Speaker used to produce the audio. 8327 + */ 8328 + speaker?: "sirio" | "nestor" | "carina" | "celeste" | "alvaro" | "diana" | "aquila" | "selena" | "estrella" | "javier"; 8329 + /** 8330 + * Encoding of the output audio. 8331 + */ 8332 + encoding?: "linear16" | "flac" | "mulaw" | "alaw" | "mp3" | "opus" | "aac"; 8333 + /** 8334 + * Container specifies the file format wrapper for the output audio. The available options depend on the encoding type.. 8335 + */ 8336 + container?: "none" | "wav" | "ogg"; 8337 + /** 8338 + * The text content to be converted to speech 8339 + */ 8340 + text: string; 8341 + /** 8342 + * Sample Rate specifies the sample rate for the output audio. Based on the encoding, different sample rates are supported. For some encodings, the sample rate is not configurable 8343 + */ 8344 + sample_rate?: number; 8345 + /** 8346 + * The bitrate of the audio in bits per second. Choose from predefined ranges or specific values based on the encoding type. 8347 + */ 8348 + bit_rate?: number; 8349 + } 8350 + /** 8351 + * The generated audio in MP3 format 8352 + */ 8353 + type Ai_Cf_Deepgram_Aura_2_Es_Output = string; 8354 + declare abstract class Base_Ai_Cf_Deepgram_Aura_2_Es { 8355 + inputs: Ai_Cf_Deepgram_Aura_2_Es_Input; 8356 + postProcessedOutputs: Ai_Cf_Deepgram_Aura_2_Es_Output; 8357 + } 5141 8358 interface AiModels { 5142 8359 "@cf/huggingface/distilbert-sst-2-int8": BaseAiTextClassification; 5143 8360 "@cf/stabilityai/stable-diffusion-xl-base-1.0": BaseAiTextToImage; ··· 5146 8363 "@cf/lykon/dreamshaper-8-lcm": BaseAiTextToImage; 5147 8364 "@cf/bytedance/stable-diffusion-xl-lightning": BaseAiTextToImage; 5148 8365 "@cf/myshell-ai/melotts": BaseAiTextToSpeech; 8366 + "@cf/google/embeddinggemma-300m": BaseAiTextEmbeddings; 5149 8367 "@cf/microsoft/resnet-50": BaseAiImageClassification; 5150 - "@cf/facebook/detr-resnet-50": BaseAiObjectDetection; 5151 8368 "@cf/meta/llama-2-7b-chat-int8": BaseAiTextGeneration; 5152 8369 "@cf/mistral/mistral-7b-instruct-v0.1": BaseAiTextGeneration; 5153 8370 "@cf/meta/llama-2-7b-chat-fp16": BaseAiTextGeneration; ··· 5181 8398 "@cf/meta/llama-3-8b-instruct": BaseAiTextGeneration; 5182 8399 "@cf/fblgit/una-cybertron-7b-v2-bf16": BaseAiTextGeneration; 5183 8400 "@cf/meta/llama-3-8b-instruct-awq": BaseAiTextGeneration; 5184 - "@hf/meta-llama/meta-llama-3-8b-instruct": BaseAiTextGeneration; 5185 - "@cf/meta/llama-3.1-8b-instruct": BaseAiTextGeneration; 5186 8401 "@cf/meta/llama-3.1-8b-instruct-fp8": BaseAiTextGeneration; 5187 8402 "@cf/meta/llama-3.1-8b-instruct-awq": BaseAiTextGeneration; 5188 8403 "@cf/meta/llama-3.2-3b-instruct": BaseAiTextGeneration; 5189 8404 "@cf/meta/llama-3.2-1b-instruct": BaseAiTextGeneration; 5190 8405 "@cf/deepseek-ai/deepseek-r1-distill-qwen-32b": BaseAiTextGeneration; 8406 + "@cf/ibm-granite/granite-4.0-h-micro": BaseAiTextGeneration; 5191 8407 "@cf/facebook/bart-large-cnn": BaseAiSummarization; 5192 8408 "@cf/llava-hf/llava-1.5-7b-hf": BaseAiImageToText; 5193 8409 "@cf/baai/bge-base-en-v1.5": Base_Ai_Cf_Baai_Bge_Base_En_V1_5; ··· 5209 8425 "@cf/mistralai/mistral-small-3.1-24b-instruct": Base_Ai_Cf_Mistralai_Mistral_Small_3_1_24B_Instruct; 5210 8426 "@cf/google/gemma-3-12b-it": Base_Ai_Cf_Google_Gemma_3_12B_It; 5211 8427 "@cf/meta/llama-4-scout-17b-16e-instruct": Base_Ai_Cf_Meta_Llama_4_Scout_17B_16E_Instruct; 8428 + "@cf/qwen/qwen3-30b-a3b-fp8": Base_Ai_Cf_Qwen_Qwen3_30B_A3B_Fp8; 8429 + "@cf/deepgram/nova-3": Base_Ai_Cf_Deepgram_Nova_3; 8430 + "@cf/qwen/qwen3-embedding-0.6b": Base_Ai_Cf_Qwen_Qwen3_Embedding_0_6B; 8431 + "@cf/pipecat-ai/smart-turn-v2": Base_Ai_Cf_Pipecat_Ai_Smart_Turn_V2; 8432 + "@cf/openai/gpt-oss-120b": Base_Ai_Cf_Openai_Gpt_Oss_120B; 8433 + "@cf/openai/gpt-oss-20b": Base_Ai_Cf_Openai_Gpt_Oss_20B; 8434 + "@cf/leonardo/phoenix-1.0": Base_Ai_Cf_Leonardo_Phoenix_1_0; 8435 + "@cf/leonardo/lucid-origin": Base_Ai_Cf_Leonardo_Lucid_Origin; 8436 + "@cf/deepgram/aura-1": Base_Ai_Cf_Deepgram_Aura_1; 8437 + "@cf/ai4bharat/indictrans2-en-indic-1B": Base_Ai_Cf_Ai4Bharat_Indictrans2_En_Indic_1B; 8438 + "@cf/aisingapore/gemma-sea-lion-v4-27b-it": Base_Ai_Cf_Aisingapore_Gemma_Sea_Lion_V4_27B_It; 8439 + "@cf/pfnet/plamo-embedding-1b": Base_Ai_Cf_Pfnet_Plamo_Embedding_1B; 8440 + "@cf/deepgram/flux": Base_Ai_Cf_Deepgram_Flux; 8441 + "@cf/deepgram/aura-2-en": Base_Ai_Cf_Deepgram_Aura_2_En; 8442 + "@cf/deepgram/aura-2-es": Base_Ai_Cf_Deepgram_Aura_2_Es; 5212 8443 } 5213 8444 type AiOptions = { 5214 8445 /** ··· 5216 8447 * https://developers.cloudflare.com/workers-ai/features/batch-api 5217 8448 */ 5218 8449 queueRequest?: boolean; 8450 + /** 8451 + * Establish websocket connections, only works for supported models 8452 + */ 8453 + websocket?: boolean; 8454 + /** 8455 + * Tag your requests to group and view them in Cloudflare dashboard. 8456 + * 8457 + * Rules: 8458 + * Tags must only contain letters, numbers, and the symbols: : - . / @ 8459 + * Each tag can have maximum 50 characters. 8460 + * Maximum 5 tags are allowed each request. 8461 + * Duplicate tags will removed. 8462 + */ 8463 + tags: string[]; 5219 8464 gateway?: GatewayOptions; 5220 8465 returnRawResponse?: boolean; 5221 8466 prefix?: string; 5222 8467 extraHeaders?: object; 5223 - }; 5224 - type ConversionResponse = { 5225 - name: string; 5226 - mimeType: string; 5227 - format: "markdown"; 5228 - tokens: number; 5229 - data: string; 5230 8468 }; 5231 8469 type AiModelsSearchParams = { 5232 8470 author?: string; ··· 5264 8502 autorag(autoragId: string): AutoRAG; 5265 8503 run<Name extends keyof AiModelList, Options extends AiOptions, InputOptions extends AiModelList[Name]["inputs"]>(model: Name, inputs: InputOptions, options?: Options): Promise<Options extends { 5266 8504 returnRawResponse: true; 8505 + } | { 8506 + websocket: true; 5267 8507 } ? Response : InputOptions extends { 5268 8508 stream: true; 5269 8509 } ? ReadableStream : AiModelList[Name]["postProcessedOutputs"]>; 5270 8510 models(params?: AiModelsSearchParams): Promise<AiModelsSearchObject[]>; 5271 - toMarkdown(files: { 5272 - name: string; 5273 - blob: Blob; 5274 - }[], options?: { 5275 - gateway?: GatewayOptions; 5276 - extraHeaders?: object; 5277 - }): Promise<ConversionResponse[]>; 5278 - toMarkdown(files: { 5279 - name: string; 5280 - blob: Blob; 5281 - }, options?: { 5282 - gateway?: GatewayOptions; 5283 - extraHeaders?: object; 5284 - }): Promise<ConversionResponse>; 8511 + toMarkdown(): ToMarkdownService; 8512 + toMarkdown(files: MarkdownDocument[], options?: ConversionRequestOptions): Promise<ConversionResponse[]>; 8513 + toMarkdown(files: MarkdownDocument, options?: ConversionRequestOptions): Promise<ConversionResponse>; 5285 8514 } 5286 8515 type GatewayRetries = { 5287 8516 maxAttempts?: 1 | 2 | 3 | 4 | 5; ··· 5299 8528 requestTimeoutMs?: number; 5300 8529 retries?: GatewayRetries; 5301 8530 }; 8531 + type UniversalGatewayOptions = Exclude<GatewayOptions, 'id'> & { 8532 + /** 8533 + ** @deprecated 8534 + */ 8535 + id?: string; 8536 + }; 5302 8537 type AiGatewayPatchLog = { 5303 8538 score?: number | null; 5304 8539 feedback?: -1 | 1 | null; ··· 5367 8602 patchLog(logId: string, data: AiGatewayPatchLog): Promise<void>; 5368 8603 getLog(logId: string): Promise<AiGatewayLog>; 5369 8604 run(data: AIGatewayUniversalRequest | AIGatewayUniversalRequest[], options?: { 5370 - gateway?: GatewayOptions; 8605 + gateway?: UniversalGatewayOptions; 5371 8606 extraHeaders?: object; 5372 8607 }): Promise<Response>; 5373 8608 getUrl(provider?: AIGatewayProviders | string): Promise<string>; // eslint-disable-line ··· 5397 8632 ranker?: string; 5398 8633 score_threshold?: number; 5399 8634 }; 8635 + reranking?: { 8636 + enabled?: boolean; 8637 + model?: string; 8638 + }; 5400 8639 rewrite_query?: boolean; 5401 8640 }; 5402 8641 type AutoRagAiSearchRequest = AutoRagSearchRequest & { 5403 8642 stream?: boolean; 8643 + system_prompt?: string; 5404 8644 }; 5405 8645 type AutoRagAiSearchRequestStreaming = Omit<AutoRagAiSearchRequest, 'stream'> & { 5406 8646 stream: true; ··· 5476 8716 * breaks aspect ratio 5477 8717 */ 5478 8718 fit?: "scale-down" | "contain" | "cover" | "crop" | "pad" | "squeeze"; 8719 + /** 8720 + * Image segmentation using artificial intelligence models. Sets pixels not 8721 + * within selected segment area to transparent e.g "foreground" sets every 8722 + * background pixel as transparent. 8723 + */ 8724 + segment?: "foreground"; 5479 8725 /** 5480 8726 * When cropping with fit: "cover", this defines the side or point that should 5481 8727 * be left uncropped. The value is either a string ··· 5488 8734 * preserve as much as possible around a point at 20% of the height of the 5489 8735 * source image. 5490 8736 */ 5491 - gravity?: 'left' | 'right' | 'top' | 'bottom' | 'center' | 'auto' | 'entropy' | BasicImageTransformationsGravityCoordinates; 8737 + gravity?: 'face' | 'left' | 'right' | 'top' | 'bottom' | 'center' | 'auto' | 'entropy' | BasicImageTransformationsGravityCoordinates; 5492 8738 /** 5493 8739 * Background color to add underneath the image. Applies only to images with 5494 8740 * transparency (such as PNG). Accepts any CSS color (#RRGGBB, rgba(โ€ฆ), ··· 5775 9021 * 5776 9022 * @example 395747 5777 9023 */ 5778 - asn: number; 9024 + asn?: number; 5779 9025 /** 5780 9026 * The organization which owns the ASN of the incoming request. 5781 9027 * 5782 9028 * @example "Google Cloud" 5783 9029 */ 5784 - asOrganization: string; 9030 + asOrganization?: string; 5785 9031 /** 5786 9032 * The original value of the `Accept-Encoding` header if Cloudflare modified it. 5787 9033 * ··· 5905 9151 * This field is only present if you have Cloudflare for SaaS enabled on your account 5906 9152 * and you have followed the [required steps to enable it]((https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/domain-support/custom-metadata/)). 5907 9153 */ 5908 - hostMetadata: HostMetadata; 9154 + hostMetadata?: HostMetadata; 5909 9155 } 5910 9156 interface IncomingRequestCfPropertiesCloudflareAccessOrApiShield { 5911 9157 /** ··· 6192 9438 */ 6193 9439 sql_duration_ms: number; 6194 9440 }; 9441 + /** 9442 + * Number of total attempts to execute the query, due to automatic retries. 9443 + * Note: All other fields in the response like `timings` only apply to the last attempt. 9444 + */ 9445 + total_attempts?: number; 6195 9446 } 6196 9447 interface D1Response { 6197 9448 success: true; ··· 6209 9460 // Indicates that the first query should go to the primary, and the rest queries 6210 9461 // using the same D1DatabaseSession will go to any replica that is consistent with 6211 9462 // the bookmark maintained by the session (returned by the first query). 6212 - "first-primary" 9463 + 'first-primary' 6213 9464 // Indicates that the first query can go anywhere (primary or replica), and the rest queries 6214 9465 // using the same D1DatabaseSession will go to any replica that is consistent with 6215 9466 // the bookmark maintained by the session (returned by the first query). 6216 - | "first-unconstrained"; 9467 + | 'first-unconstrained'; 6217 9468 type D1SessionBookmark = string; 6218 9469 declare abstract class D1Database { 6219 9470 prepare(query: string): D1PreparedStatement; ··· 6331 9582 }; 6332 9583 export { _EmailMessage as EmailMessage }; 6333 9584 } 9585 + /** 9586 + * Hello World binding to serve as an explanatory example. DO NOT USE 9587 + */ 9588 + interface HelloWorldBinding { 9589 + /** 9590 + * Retrieve the current stored value 9591 + */ 9592 + get(): Promise<{ 9593 + value: string; 9594 + ms?: number; 9595 + }>; 9596 + /** 9597 + * Set a new stored value 9598 + */ 9599 + set(value: string): Promise<void>; 9600 + } 6334 9601 interface Hyperdrive { 6335 9602 /** 6336 9603 * Connect directly to Hyperdrive as if it's your database, returning a TCP socket. ··· 6408 9675 fit?: 'scale-down' | 'contain' | 'pad' | 'squeeze' | 'cover' | 'crop'; 6409 9676 flip?: 'h' | 'v' | 'hv'; 6410 9677 gamma?: number; 6411 - gravity?: 'left' | 'right' | 'top' | 'bottom' | 'center' | 'auto' | 'entropy' | { 9678 + segment?: 'foreground'; 9679 + gravity?: 'face' | 'left' | 'right' | 'top' | 'bottom' | 'center' | 'auto' | 'entropy' | { 6412 9680 x?: number; 6413 9681 y?: number; 6414 9682 mode: 'remainder' | 'box-center'; ··· 6416 9684 rotate?: 0 | 90 | 180 | 270; 6417 9685 saturation?: number; 6418 9686 sharpen?: number; 6419 - trim?: "border" | { 9687 + trim?: 'border' | { 6420 9688 top?: number; 6421 9689 bottom?: number; 6422 9690 left?: number; ··· 6438 9706 bottom?: number; 6439 9707 right?: number; 6440 9708 }; 9709 + type ImageInputOptions = { 9710 + encoding?: 'base64'; 9711 + }; 6441 9712 type ImageOutputOptions = { 6442 9713 format: 'image/jpeg' | 'image/png' | 'image/gif' | 'image/webp' | 'image/avif' | 'rgb' | 'rgba'; 6443 9714 quality?: number; 6444 9715 background?: string; 9716 + anim?: boolean; 6445 9717 }; 6446 9718 interface ImagesBinding { 6447 9719 /** ··· 6449 9721 * @throws {@link ImagesError} with code 9412 if input is not an image 6450 9722 * @param stream The image bytes 6451 9723 */ 6452 - info(stream: ReadableStream<Uint8Array>): Promise<ImageInfoResponse>; 9724 + info(stream: ReadableStream<Uint8Array>, options?: ImageInputOptions): Promise<ImageInfoResponse>; 6453 9725 /** 6454 9726 * Begin applying a series of transformations to an image 6455 9727 * @param stream The image bytes 6456 9728 * @returns A transform handle 6457 9729 */ 6458 - input(stream: ReadableStream<Uint8Array>): ImageTransformer; 9730 + input(stream: ReadableStream<Uint8Array>, options?: ImageInputOptions): ImageTransformer; 6459 9731 } 6460 9732 interface ImageTransformer { 6461 9733 /** ··· 6478 9750 */ 6479 9751 output(options: ImageOutputOptions): Promise<ImageTransformationResult>; 6480 9752 } 9753 + type ImageTransformationOutputOptions = { 9754 + encoding?: 'base64'; 9755 + }; 6481 9756 interface ImageTransformationResult { 6482 9757 /** 6483 9758 * The image as a response, ready to store in cache or return to users ··· 6490 9765 /** 6491 9766 * The bytes of the response 6492 9767 */ 6493 - image(): ReadableStream<Uint8Array>; 9768 + image(options?: ImageTransformationOutputOptions): ReadableStream<Uint8Array>; 6494 9769 } 6495 9770 interface ImagesError extends Error { 6496 9771 readonly code: number; 6497 9772 readonly message: string; 6498 9773 readonly stack?: string; 6499 9774 } 9775 + /** 9776 + * Media binding for transforming media streams. 9777 + * Provides the entry point for media transformation operations. 9778 + */ 9779 + interface MediaBinding { 9780 + /** 9781 + * Creates a media transformer from an input stream. 9782 + * @param media - The input media bytes 9783 + * @returns A MediaTransformer instance for applying transformations 9784 + */ 9785 + input(media: ReadableStream<Uint8Array>): MediaTransformer; 9786 + } 9787 + /** 9788 + * Media transformer for applying transformation operations to media content. 9789 + * Handles sizing, fitting, and other input transformation parameters. 9790 + */ 9791 + interface MediaTransformer { 9792 + /** 9793 + * Applies transformation options to the media content. 9794 + * @param transform - Configuration for how the media should be transformed 9795 + * @returns A generator for producing the transformed media output 9796 + */ 9797 + transform(transform: MediaTransformationInputOptions): MediaTransformationGenerator; 9798 + } 9799 + /** 9800 + * Generator for producing media transformation results. 9801 + * Configures the output format and parameters for the transformed media. 9802 + */ 9803 + interface MediaTransformationGenerator { 9804 + /** 9805 + * Generates the final media output with specified options. 9806 + * @param output - Configuration for the output format and parameters 9807 + * @returns The final transformation result containing the transformed media 9808 + */ 9809 + output(output: MediaTransformationOutputOptions): MediaTransformationResult; 9810 + } 9811 + /** 9812 + * Result of a media transformation operation. 9813 + * Provides multiple ways to access the transformed media content. 9814 + */ 9815 + interface MediaTransformationResult { 9816 + /** 9817 + * Returns the transformed media as a readable stream of bytes. 9818 + * @returns A stream containing the transformed media data 9819 + */ 9820 + media(): ReadableStream<Uint8Array>; 9821 + /** 9822 + * Returns the transformed media as an HTTP response object. 9823 + * @returns The transformed media as a Response, ready to store in cache or return to users 9824 + */ 9825 + response(): Response; 9826 + /** 9827 + * Returns the MIME type of the transformed media. 9828 + * @returns The content type string (e.g., 'image/jpeg', 'video/mp4') 9829 + */ 9830 + contentType(): string; 9831 + } 9832 + /** 9833 + * Configuration options for transforming media input. 9834 + * Controls how the media should be resized and fitted. 9835 + */ 9836 + type MediaTransformationInputOptions = { 9837 + /** How the media should be resized to fit the specified dimensions */ 9838 + fit?: 'contain' | 'cover' | 'scale-down'; 9839 + /** Target width in pixels */ 9840 + width?: number; 9841 + /** Target height in pixels */ 9842 + height?: number; 9843 + }; 9844 + /** 9845 + * Configuration options for Media Transformations output. 9846 + * Controls the format, timing, and type of the generated output. 9847 + */ 9848 + type MediaTransformationOutputOptions = { 9849 + /** 9850 + * Output mode determining the type of media to generate 9851 + */ 9852 + mode?: 'video' | 'spritesheet' | 'frame' | 'audio'; 9853 + /** Whether to include audio in the output */ 9854 + audio?: boolean; 9855 + /** 9856 + * Starting timestamp for frame extraction or start time for clips. (e.g. '2s'). 9857 + */ 9858 + time?: string; 9859 + /** 9860 + * Duration for video clips, audio extraction, and spritesheet generation (e.g. '5s'). 9861 + */ 9862 + duration?: string; 9863 + /** 9864 + * Number of frames in the spritesheet. 9865 + */ 9866 + imageCount?: number; 9867 + /** 9868 + * Output format for the generated media. 9869 + */ 9870 + format?: 'jpg' | 'png' | 'm4a'; 9871 + }; 9872 + /** 9873 + * Error object for media transformation operations. 9874 + * Extends the standard Error interface with additional media-specific information. 9875 + */ 9876 + interface MediaError extends Error { 9877 + readonly code: number; 9878 + readonly message: string; 9879 + readonly stack?: string; 9880 + } 9881 + declare module 'cloudflare:node' { 9882 + interface NodeStyleServer { 9883 + listen(...args: unknown[]): this; 9884 + address(): { 9885 + port?: number | null | undefined; 9886 + }; 9887 + } 9888 + export function httpServerHandler(port: number): ExportedHandler; 9889 + export function httpServerHandler(options: { 9890 + port: number; 9891 + }): ExportedHandler; 9892 + export function httpServerHandler(server: NodeStyleServer): ExportedHandler; 9893 + } 6500 9894 type Params<P extends string = any> = Record<P, string | string[]>; 6501 9895 type EventContext<Env, P extends string, Data> = { 6502 9896 request: Request<unknown, IncomingRequestCfProperties<unknown>>; ··· 6707 10101 // Base type for all other types providing RPC-like interfaces. 6708 10102 // Rewrites all methods/properties to be `MethodOrProperty`s, while preserving callable types. 6709 10103 // `Reserved` names (e.g. stub method names like `dup()`) and symbols can't be accessed over RPC. 6710 - export type Provider<T extends object, Reserved extends string = never> = MaybeCallableProvider<T> & { 6711 - [K in Exclude<keyof T, Reserved | symbol | keyof StubBase<never>>]: MethodOrProperty<T[K]>; 6712 - }; 10104 + export type Provider<T extends object, Reserved extends string = never> = MaybeCallableProvider<T> & Pick<{ 10105 + [K in keyof T]: MethodOrProperty<T[K]>; 10106 + }, Exclude<keyof T, Reserved | symbol | keyof StubBase<never>>>; 6713 10107 } 6714 10108 declare namespace Cloudflare { 10109 + // Type of `env`. 10110 + // 10111 + // The specific project can extend `Env` by redeclaring it in project-specific files. Typescript 10112 + // will merge all declarations. 10113 + // 10114 + // You can use `wrangler types` to generate the `Env` type automatically. 6715 10115 interface Env { 6716 10116 } 10117 + // Project-specific parameters used to inform types. 10118 + // 10119 + // This interface is, again, intended to be declared in project-specific files, and then that 10120 + // declaration will be merged with this one. 10121 + // 10122 + // A project should have a declaration like this: 10123 + // 10124 + // interface GlobalProps { 10125 + // // Declares the main module's exports. Used to populate Cloudflare.Exports aka the type 10126 + // // of `ctx.exports`. 10127 + // mainModule: typeof import("my-main-module"); 10128 + // 10129 + // // Declares which of the main module's exports are configured with durable storage, and 10130 + // // thus should behave as Durable Object namsepace bindings. 10131 + // durableNamespaces: "MyDurableObject" | "AnotherDurableObject"; 10132 + // } 10133 + // 10134 + // You can use `wrangler types` to generate `GlobalProps` automatically. 10135 + interface GlobalProps { 10136 + } 10137 + // Evaluates to the type of a property in GlobalProps, defaulting to `Default` if it is not 10138 + // present. 10139 + type GlobalProp<K extends string, Default> = K extends keyof GlobalProps ? GlobalProps[K] : Default; 10140 + // The type of the program's main module exports, if known. Requires `GlobalProps` to declare the 10141 + // `mainModule` property. 10142 + type MainModule = GlobalProp<"mainModule", {}>; 10143 + // The type of ctx.exports, which contains loopback bindings for all top-level exports. 10144 + type Exports = { 10145 + [K in keyof MainModule]: LoopbackForExport<MainModule[K]> 10146 + // If the export is listed in `durableNamespaces`, then it is also a 10147 + // DurableObjectNamespace. 10148 + & (K extends GlobalProp<"durableNamespaces", never> ? MainModule[K] extends new (...args: any[]) => infer DoInstance ? DoInstance extends Rpc.DurableObjectBranded ? DurableObjectNamespace<DoInstance> : DurableObjectNamespace<undefined> : DurableObjectNamespace<undefined> : {}); 10149 + }; 6717 10150 } 6718 - declare module 'cloudflare:workers' { 10151 + declare namespace CloudflareWorkersModule { 6719 10152 export type RpcStub<T extends Rpc.Stubable> = Rpc.Stub<T>; 6720 10153 export const RpcStub: { 6721 10154 new <T extends Rpc.Stubable>(value: T): Rpc.Stub<T>; ··· 6724 10157 [Rpc.__RPC_TARGET_BRAND]: never; 6725 10158 } 6726 10159 // `protected` fields don't appear in `keyof`s, so can't be accessed over RPC 6727 - export abstract class WorkerEntrypoint<Env = unknown> implements Rpc.WorkerEntrypointBranded { 10160 + export abstract class WorkerEntrypoint<Env = Cloudflare.Env, Props = {}> implements Rpc.WorkerEntrypointBranded { 6728 10161 [Rpc.__WORKER_ENTRYPOINT_BRAND]: never; 6729 - protected ctx: ExecutionContext; 10162 + protected ctx: ExecutionContext<Props>; 6730 10163 protected env: Env; 6731 10164 constructor(ctx: ExecutionContext, env: Env); 10165 + email?(message: ForwardableEmailMessage): void | Promise<void>; 6732 10166 fetch?(request: Request): Response | Promise<Response>; 6733 - tail?(events: TraceItem[]): void | Promise<void>; 6734 - trace?(traces: TraceItem[]): void | Promise<void>; 6735 - scheduled?(controller: ScheduledController): void | Promise<void>; 6736 10167 queue?(batch: MessageBatch<unknown>): void | Promise<void>; 10168 + scheduled?(controller: ScheduledController): void | Promise<void>; 10169 + tail?(events: TraceItem[]): void | Promise<void>; 10170 + tailStream?(event: TailStream.TailEvent<TailStream.Onset>): TailStream.TailEventHandlerType | Promise<TailStream.TailEventHandlerType>; 6737 10171 test?(controller: TestController): void | Promise<void>; 10172 + trace?(traces: TraceItem[]): void | Promise<void>; 6738 10173 } 6739 - export abstract class DurableObject<Env = unknown> implements Rpc.DurableObjectBranded { 10174 + export abstract class DurableObject<Env = Cloudflare.Env, Props = {}> implements Rpc.DurableObjectBranded { 6740 10175 [Rpc.__DURABLE_OBJECT_BRAND]: never; 6741 - protected ctx: DurableObjectState; 10176 + protected ctx: DurableObjectState<Props>; 6742 10177 protected env: Env; 6743 10178 constructor(ctx: DurableObjectState, env: Env); 6744 - fetch?(request: Request): Response | Promise<Response>; 6745 10179 alarm?(alarmInfo?: AlarmInvocationInfo): void | Promise<void>; 10180 + fetch?(request: Request): Response | Promise<Response>; 6746 10181 webSocketMessage?(ws: WebSocket, message: string | ArrayBuffer): void | Promise<void>; 6747 10182 webSocketClose?(ws: WebSocket, code: number, reason: string, wasClean: boolean): void | Promise<void>; 6748 10183 webSocketError?(ws: WebSocket, error: unknown): void | Promise<void>; ··· 6788 10223 constructor(ctx: ExecutionContext, env: Env); 6789 10224 run(event: Readonly<WorkflowEvent<T>>, step: WorkflowStep): Promise<unknown>; 6790 10225 } 10226 + export function waitUntil(promise: Promise<unknown>): void; 10227 + export function withEnv(newEnv: unknown, fn: () => unknown): unknown; 10228 + export function withExports(newExports: unknown, fn: () => unknown): unknown; 10229 + export function withEnvAndExports(newEnv: unknown, newExports: unknown, fn: () => unknown): unknown; 6791 10230 export const env: Cloudflare.Env; 10231 + export const exports: Cloudflare.Exports; 10232 + } 10233 + declare module 'cloudflare:workers' { 10234 + export = CloudflareWorkersModule; 6792 10235 } 6793 10236 interface SecretsStoreSecret { 6794 10237 /** ··· 6801 10244 function _connect(address: string | SocketAddress, options?: SocketOptions): Socket; 6802 10245 export { _connect as connect }; 6803 10246 } 10247 + type MarkdownDocument = { 10248 + name: string; 10249 + blob: Blob; 10250 + }; 10251 + type ConversionResponse = { 10252 + name: string; 10253 + mimeType: string; 10254 + format: 'markdown'; 10255 + tokens: number; 10256 + data: string; 10257 + } | { 10258 + name: string; 10259 + mimeType: string; 10260 + format: 'error'; 10261 + error: string; 10262 + }; 10263 + type ImageConversionOptions = { 10264 + descriptionLanguage?: 'en' | 'es' | 'fr' | 'it' | 'pt' | 'de'; 10265 + }; 10266 + type EmbeddedImageConversionOptions = ImageConversionOptions & { 10267 + convert?: boolean; 10268 + maxConvertedImages?: number; 10269 + }; 10270 + type ConversionOptions = { 10271 + html?: { 10272 + images?: EmbeddedImageConversionOptions & { 10273 + convertOGImage?: boolean; 10274 + }; 10275 + }; 10276 + docx?: { 10277 + images?: EmbeddedImageConversionOptions; 10278 + }; 10279 + image?: ImageConversionOptions; 10280 + pdf?: { 10281 + images?: EmbeddedImageConversionOptions; 10282 + metadata?: boolean; 10283 + }; 10284 + }; 10285 + type ConversionRequestOptions = { 10286 + gateway?: GatewayOptions; 10287 + extraHeaders?: object; 10288 + conversionOptions?: ConversionOptions; 10289 + }; 10290 + type SupportedFileFormat = { 10291 + mimeType: string; 10292 + extension: string; 10293 + }; 10294 + declare abstract class ToMarkdownService { 10295 + transform(files: MarkdownDocument[], options?: ConversionRequestOptions): Promise<ConversionResponse[]>; 10296 + transform(files: MarkdownDocument, options?: ConversionRequestOptions): Promise<ConversionResponse>; 10297 + supported(): Promise<SupportedFileFormat[]>; 10298 + } 6804 10299 declare namespace TailStream { 6805 10300 interface Header { 6806 10301 readonly name: string; ··· 6810 10305 readonly type: "fetch"; 6811 10306 readonly method: string; 6812 10307 readonly url: string; 6813 - readonly cfJson: string; 10308 + readonly cfJson?: object; 6814 10309 readonly headers: Header[]; 6815 10310 } 6816 10311 interface JsRpcEventInfo { 6817 10312 readonly type: "jsrpc"; 6818 - readonly methodName: string; 6819 10313 } 6820 10314 interface ScheduledEventInfo { 6821 10315 readonly type: "scheduled"; ··· 6856 10350 readonly type: "hibernatableWebSocket"; 6857 10351 readonly info: HibernatableWebSocketEventInfoClose | HibernatableWebSocketEventInfoError | HibernatableWebSocketEventInfoMessage; 6858 10352 } 6859 - interface Resume { 6860 - readonly type: "resume"; 6861 - readonly attachment?: any; 6862 - } 6863 10353 interface CustomEventInfo { 6864 10354 readonly type: "custom"; 6865 10355 } ··· 6873 10363 readonly tag?: string; 6874 10364 readonly message?: string; 6875 10365 } 6876 - interface Trigger { 6877 - readonly traceId: string; 6878 - readonly invocationId: string; 6879 - readonly spanId: string; 6880 - } 6881 10366 interface Onset { 6882 10367 readonly type: "onset"; 10368 + readonly attributes: Attribute[]; 10369 + // id for the span being opened by this Onset event. 10370 + readonly spanId: string; 6883 10371 readonly dispatchNamespace?: string; 6884 10372 readonly entrypoint?: string; 6885 10373 readonly executionModel: string; 6886 10374 readonly scriptName?: string; 6887 10375 readonly scriptTags?: string[]; 6888 10376 readonly scriptVersion?: ScriptVersion; 6889 - readonly trigger?: Trigger; 6890 - readonly info: FetchEventInfo | JsRpcEventInfo | ScheduledEventInfo | AlarmEventInfo | QueueEventInfo | EmailEventInfo | TraceEventInfo | HibernatableWebSocketEventInfo | Resume | CustomEventInfo; 10377 + readonly info: FetchEventInfo | JsRpcEventInfo | ScheduledEventInfo | AlarmEventInfo | QueueEventInfo | EmailEventInfo | TraceEventInfo | HibernatableWebSocketEventInfo | CustomEventInfo; 6891 10378 } 6892 10379 interface Outcome { 6893 10380 readonly type: "outcome"; ··· 6895 10382 readonly cpuTime: number; 6896 10383 readonly wallTime: number; 6897 10384 } 6898 - interface Hibernate { 6899 - readonly type: "hibernate"; 6900 - } 6901 10385 interface SpanOpen { 6902 10386 readonly type: "spanOpen"; 6903 10387 readonly name: string; 10388 + // id for the span being opened by this SpanOpen event. 10389 + readonly spanId: string; 6904 10390 readonly info?: FetchEventInfo | JsRpcEventInfo | Attributes; 6905 10391 } 6906 10392 interface SpanClose { ··· 6921 10407 interface Log { 6922 10408 readonly type: "log"; 6923 10409 readonly level: "debug" | "error" | "info" | "log" | "warn"; 6924 - readonly message: string; 10410 + readonly message: object; 6925 10411 } 10412 + // This marks the worker handler return information. 10413 + // This is separate from Outcome because the worker invocation can live for a long time after 10414 + // returning. For example - Websockets that return an http upgrade response but then continue 10415 + // streaming information or SSE http connections. 6926 10416 interface Return { 6927 10417 readonly type: "return"; 6928 10418 readonly info?: FetchResponseInfo; 6929 10419 } 6930 - interface Link { 6931 - readonly type: "link"; 6932 - readonly label?: string; 6933 - readonly traceId: string; 6934 - readonly invocationId: string; 6935 - readonly spanId: string; 6936 - } 6937 10420 interface Attribute { 6938 10421 readonly name: string; 6939 10422 readonly value: string | string[] | boolean | boolean[] | number | number[] | bigint | bigint[]; ··· 6942 10425 readonly type: "attributes"; 6943 10426 readonly info: Attribute[]; 6944 10427 } 6945 - interface TailEvent { 10428 + type EventType = Onset | Outcome | SpanOpen | SpanClose | DiagnosticChannelEvent | Exception | Log | Return | Attributes; 10429 + // Context in which this trace event lives. 10430 + interface SpanContext { 10431 + // Single id for the entire top-level invocation 10432 + // This should be a new traceId for the first worker stage invoked in the eyeball request and then 10433 + // same-account service-bindings should reuse the same traceId but cross-account service-bindings 10434 + // should use a new traceId. 6946 10435 readonly traceId: string; 10436 + // spanId in which this event is handled 10437 + // for Onset and SpanOpen events this would be the parent span id 10438 + // for Outcome and SpanClose these this would be the span id of the opening Onset and SpanOpen events 10439 + // For Hibernate and Mark this would be the span under which they were emitted. 10440 + // spanId is not set ONLY if: 10441 + // 1. This is an Onset event 10442 + // 2. We are not inherting any SpanContext. (e.g. this is a cross-account service binding or a new top-level invocation) 10443 + readonly spanId?: string; 10444 + } 10445 + interface TailEvent<Event extends EventType> { 10446 + // invocation id of the currently invoked worker stage. 10447 + // invocation id will always be unique to every Onset event and will be the same until the Outcome event. 6947 10448 readonly invocationId: string; 6948 - readonly spanId: string; 10449 + // Inherited spanContext for this event. 10450 + readonly spanContext: SpanContext; 6949 10451 readonly timestamp: Date; 6950 10452 readonly sequence: number; 6951 - readonly event: Onset | Outcome | Hibernate | SpanOpen | SpanClose | DiagnosticChannelEvent | Exception | Log | Return | Link | Attributes; 10453 + readonly event: Event; 6952 10454 } 6953 - type TailEventHandler = (event: TailEvent) => void | Promise<void>; 6954 - type TailEventHandlerName = "outcome" | "hibernate" | "spanOpen" | "spanClose" | "diagnosticChannel" | "exception" | "log" | "return" | "link" | "attributes"; 6955 - type TailEventHandlerObject = Record<TailEventHandlerName, TailEventHandler>; 10455 + type TailEventHandler<Event extends EventType = EventType> = (event: TailEvent<Event>) => void | Promise<void>; 10456 + type TailEventHandlerObject = { 10457 + outcome?: TailEventHandler<Outcome>; 10458 + spanOpen?: TailEventHandler<SpanOpen>; 10459 + spanClose?: TailEventHandler<SpanClose>; 10460 + diagnosticChannel?: TailEventHandler<DiagnosticChannelEvent>; 10461 + exception?: TailEventHandler<Exception>; 10462 + log?: TailEventHandler<Log>; 10463 + return?: TailEventHandler<Return>; 10464 + attributes?: TailEventHandler<Attributes>; 10465 + }; 6956 10466 type TailEventHandlerType = TailEventHandler | TailEventHandlerObject; 6957 10467 } 6958 10468 // Copyright (c) 2022-2023 Cloudflare, Inc. ··· 6976 10486 * 6977 10487 * This list is expected to grow as support for more operations are released. 6978 10488 */ 6979 - type VectorizeVectorMetadataFilterOp = "$eq" | "$ne"; 10489 + type VectorizeVectorMetadataFilterOp = '$eq' | '$ne' | '$lt' | '$lte' | '$gt' | '$gte'; 10490 + type VectorizeVectorMetadataFilterCollectionOp = '$in' | '$nin'; 6980 10491 /** 6981 10492 * Filter criteria for vector metadata used to limit the retrieved query result set. 6982 10493 */ 6983 10494 type VectorizeVectorMetadataFilter = { 6984 10495 [field: string]: Exclude<VectorizeVectorMetadataValue, string[]> | null | { 6985 10496 [Op in VectorizeVectorMetadataFilterOp]?: Exclude<VectorizeVectorMetadataValue, string[]> | null; 10497 + } | { 10498 + [Op in VectorizeVectorMetadataFilterCollectionOp]?: Exclude<VectorizeVectorMetadataValue, string[]>[]; 6986 10499 }; 6987 10500 }; 6988 10501 /** ··· 7292 10805 | 'complete' | 'waiting' // instance is hibernating and waiting for sleep or event to finish 7293 10806 | 'waitingForPause' // instance is finishing the current work to pause 7294 10807 | 'unknown'; 7295 - error?: string; 7296 - output?: object; 10808 + error?: { 10809 + name: string; 10810 + message: string; 10811 + }; 10812 + output?: unknown; 7297 10813 }; 7298 10814 interface WorkflowError { 7299 10815 code?: number;
+1 -2
wrangler.jsonc
··· 4 4 "compatibility_date": "2025-08-16", 5 5 "main": "server/index.ts", 6 6 "assets": { 7 - "directory": "dist", 8 7 "not_found_handling": "single-page-application", 9 - "run_worker_first": ["/api/*"], 8 + "run_worker_first": ["/xrpc/*", "/oauth-client-metadata.json", "/oauth-jwks.json"], 10 9 }, 11 10 }