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 -34
package.json
··· 8 8 "fmt": "PRETTIER_EXPERIMENTAL_CLI=1 prettier --cache --write ." 9 9 }, 10 10 "dependencies": { 11 - "@atcute/atproto": "^3.1.2", 12 - "@atcute/bluemoji": "^3.1.0", 13 - "@atcute/bluesky": "^3.2.1", 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.5", 18 - "@atcute/cid": "^2.2.3", 19 - "@atcute/client": "^4.0.3", 20 - "@atcute/identity": "^1.1.0", 21 - "@atcute/identity-resolver": "^1.1.3", 22 - "@atcute/lexicons": "^1.1.1", 23 - "@atcute/oauth-browser-client": "2.0.0-next.0", 24 - "@atcute/tid": "^1.0.2", 25 - "@atcute/xrpc-server": "^0.1.1", 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", 26 28 "@atlaskit/pragmatic-drag-and-drop": "1.6.0", 27 29 "@atlaskit/pragmatic-drag-and-drop-hitbox": "1.0.3", 28 - "@floating-ui/dom": "^1.7.1", 29 - "@floating-ui/utils": "^0.2.9", 30 + "@floating-ui/dom": "^1.7.4", 31 + "@floating-ui/utils": "^0.2.10", 30 32 "@kelinci/basa-lexicons": "^1.0.0", 31 - "@mary/array-fns": "jsr:^0.1.4", 33 + "@mary/array-fns": "jsr:^0.1.5", 32 34 "@mary/async-iterator-fns": "jsr:^0.1.1", 33 35 "@mary/batch-fetch": "jsr:^0.1.0", 34 36 "@mary/date-fns": "jsr:^0.1.3", ··· 37 39 "@mary/solid-freeze": "npm:@externdefs/solid-freeze@^0.1.1", 38 40 "@mary/solid-query": "npm:@externdefs/solid-query@^0.1.5", 39 41 "comlink": "^4.4.2", 40 - "hls.js": "^1.6.5", 42 + "hls.js": "^1.6.15", 41 43 "idb": "^8.0.3", 42 - "nanoid": "^5.1.5", 44 + "nanoid": "^5.1.6", 43 45 "solid-floating-ui": "~0.2.1", 44 - "solid-js": "^1.9.7", 45 - "webm-muxer": "^5.1.3" 46 + "solid-js": "^1.9.10", 47 + "mediabunny": "^1.25.7" 46 48 }, 47 49 "devDependencies": { 48 - "@cloudflare/vite-plugin": "^1.11.7", 50 + "@badrap/valita": "^0.4.6", 51 + "@cloudflare/vite-plugin": "^1.17.0", 49 52 "@trivago/prettier-plugin-sort-imports": "^5.2.2", 50 53 "@types/dom-close-watcher": "^1.0.0", 51 - "@types/dom-webcodecs": "^0.1.15", 52 - "@types/node": "^24.3.0", 53 - "autoprefixer": "^10.4.21", 54 + "@types/dom-webcodecs": "^0.1.18", 55 + "@types/node": "^24.10.1", 56 + "autoprefixer": "^10.4.22", 54 57 "babel-plugin-transform-typescript-const-enums": "^0.1.0", 55 - "prettier": "^3.6.0", 56 - "prettier-plugin-tailwindcss": "^0.6.13", 57 - "tailwindcss": "^3.4.17", 58 - "terser": "^5.43.1", 59 - "typescript": "~5.8.3", 60 - "vite": "^6.3.5", 61 - "vite-plugin-pwa": "0.21.0", 62 - "vite-plugin-solid": "^2.11.6", 63 - "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" 64 67 }, 65 68 "pnpm": { 66 69 "patchedDependencies": {
+1499 -1567
pnpm-lock.yaml
··· 31 31 .: 32 32 dependencies: 33 33 '@atcute/atproto': 34 - specifier: ^3.1.2 35 - version: 3.1.2 34 + specifier: ^3.1.9 35 + version: 3.1.9 36 36 '@atcute/bluemoji': 37 - specifier: ^3.1.0 38 - version: 3.1.0 37 + specifier: ^3.1.3 38 + version: 3.1.3 39 39 '@atcute/bluesky': 40 - specifier: ^3.2.1 41 - version: 3.2.1 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.5 53 - version: 2.2.5 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 63 - '@atcute/identity-resolver': 64 61 specifier: ^1.1.3 65 - version: 1.1.3(@atcute/identity@1.1.0) 62 + version: 1.1.3 63 + '@atcute/identity-resolver': 64 + specifier: ^1.2.0 65 + version: 1.2.0(@atcute/identity@1.1.3) 66 66 '@atcute/lexicons': 67 - specifier: ^1.1.1 68 - version: 1.1.1 67 + specifier: ^1.2.5 68 + version: 1.2.5 69 + '@atcute/multibase': 70 + specifier: ^1.1.6 71 + version: 1.1.6 69 72 '@atcute/oauth-browser-client': 70 - specifier: 2.0.0-next.0 71 - version: 2.0.0-next.0 73 + specifier: 2.0.1 74 + version: 2.0.1 72 75 '@atcute/tid': 73 - specifier: ^1.0.2 74 - 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 75 81 '@atcute/xrpc-server': 76 - specifier: ^0.1.1 77 - version: 0.1.1 82 + specifier: ^0.1.3 83 + version: 0.1.3 78 84 '@atlaskit/pragmatic-drag-and-drop': 79 85 specifier: 1.6.0 80 86 version: 1.6.0 ··· 82 88 specifier: 1.0.3 83 89 version: 1.0.3 84 90 '@floating-ui/dom': 85 - specifier: ^1.7.1 86 - version: 1.7.1 91 + specifier: ^1.7.4 92 + version: 1.7.4 87 93 '@floating-ui/utils': 88 - specifier: ^0.2.9 89 - version: 0.2.9(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea) 94 + specifier: ^0.2.10 95 + version: 0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea) 90 96 '@kelinci/basa-lexicons': 91 97 specifier: ^1.0.0 92 98 version: 1.0.0 93 99 '@mary/array-fns': 94 - specifier: jsr:^0.1.4 95 - version: '@jsr/mary__array-fns@0.1.4' 100 + specifier: jsr:^0.1.5 101 + version: '@jsr/mary__array-fns@0.1.5' 96 102 '@mary/async-iterator-fns': 97 103 specifier: jsr:^0.1.1 98 104 version: '@jsr/mary__async-iterator-fns@0.1.1' ··· 110 116 version: '@jsr/mary__exif-rm@0.2.2' 111 117 '@mary/solid-freeze': 112 118 specifier: npm:@externdefs/solid-freeze@^0.1.1 113 - 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))' 114 120 '@mary/solid-query': 115 121 specifier: npm:@externdefs/solid-query@^0.1.5 116 - 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))' 117 123 comlink: 118 124 specifier: ^4.4.2 119 125 version: 4.4.2 120 126 hls.js: 121 - specifier: ^1.6.5 122 - version: 1.6.5 127 + specifier: ^1.6.15 128 + version: 1.6.15 123 129 idb: 124 130 specifier: ^8.0.3 125 131 version: 8.0.3 132 + mediabunny: 133 + specifier: ^1.25.7 134 + version: 1.25.7 126 135 nanoid: 127 - specifier: ^5.1.5 128 - version: 5.1.5 136 + specifier: ^5.1.6 137 + version: 5.1.6 129 138 solid-floating-ui: 130 139 specifier: ~0.2.1 131 - 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)) 132 141 solid-js: 133 - specifier: ^1.9.7 134 - version: 1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 135 - webm-muxer: 136 - specifier: ^5.1.3 137 - version: 5.1.3 142 + specifier: ^1.9.10 143 + version: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 138 144 devDependencies: 145 + '@badrap/valita': 146 + specifier: ^0.4.6 147 + version: 0.4.6 139 148 '@cloudflare/vite-plugin': 140 - specifier: ^1.11.7 141 - 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) 142 151 '@trivago/prettier-plugin-sort-imports': 143 152 specifier: ^5.2.2 144 - version: 5.2.2(prettier@3.6.0) 153 + version: 5.2.2(prettier@3.7.4) 145 154 '@types/dom-close-watcher': 146 155 specifier: ^1.0.0 147 156 version: 1.0.0 148 157 '@types/dom-webcodecs': 149 - specifier: ^0.1.15 150 - version: 0.1.15 158 + specifier: ^0.1.18 159 + version: 0.1.18 151 160 '@types/node': 152 - specifier: ^24.3.0 153 - version: 24.3.0 161 + specifier: ^24.10.1 162 + version: 24.10.1 154 163 autoprefixer: 155 - specifier: ^10.4.21 156 - version: 10.4.21(postcss@8.5.6) 164 + specifier: ^10.4.22 165 + version: 10.4.22(postcss@8.5.6) 157 166 babel-plugin-transform-typescript-const-enums: 158 167 specifier: ^0.1.0 159 - version: 0.1.0(@babel/core@7.27.4) 168 + version: 0.1.0(@babel/core@7.28.5) 160 169 prettier: 161 - specifier: ^3.6.0 162 - version: 3.6.0 170 + specifier: ^3.7.4 171 + version: 3.7.4 163 172 prettier-plugin-tailwindcss: 164 - specifier: ^0.6.13 165 - 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) 166 175 tailwindcss: 167 - specifier: ^3.4.17 168 - version: 3.4.17 176 + specifier: ^3.4.18 177 + version: 3.4.18 169 178 terser: 170 - specifier: ^5.43.1 171 - version: 5.43.1 179 + specifier: ^5.44.1 180 + version: 5.44.1 172 181 typescript: 173 - specifier: ~5.8.3 174 - version: 5.8.3 182 + specifier: ~5.9.3 183 + version: 5.9.3 175 184 vite: 176 - specifier: ^6.3.5 177 - 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) 178 187 vite-plugin-pwa: 179 - specifier: 0.21.0 180 - 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)) 181 190 vite-plugin-solid: 182 - specifier: ^2.11.6 183 - 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)) 184 193 wrangler: 185 - specifier: ^4.32.0 186 - version: 4.32.0 194 + specifier: ^4.53.0 195 + version: 4.53.0 187 196 188 197 packages: 189 198 ··· 191 200 resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} 192 201 engines: {node: '>=10'} 193 202 194 - '@ampproject/remapping@2.3.0': 195 - resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} 196 - engines: {node: '>=6.0.0'} 197 - 198 203 '@apideck/better-ajv-errors@0.3.6': 199 204 resolution: {integrity: sha512-P+ZygBLZtkp0qqOAJJVX4oX/sFo5JR3eBWwwuqHHhK0GIgQOKWrAfiAaWX0aArHkRWHMuggFEgAZNxVPwPZYaA==} 200 205 engines: {node: '>=10'} 201 206 peerDependencies: 202 207 ajv: '>=8' 203 208 204 - '@atcute/atproto@3.1.2': 205 - resolution: {integrity: sha512-m6OWoGTeL8Wlw7cm8Nrf+NU24rlx5A0DzxEQQPPu1wqYNHw6S33nOU90W+U09vVN0aZGZUrLFfWWhAaSWTp1ZQ==} 209 + '@atcute/atproto@3.1.9': 210 + resolution: {integrity: sha512-DyWwHCTdR4hY2BPNbLXgVmm7lI+fceOwWbE4LXbGvbvVtSn+ejSVFaAv01Ra3kWDha0whsOmbJL8JP0QPpf1+w==} 206 211 207 - '@atcute/bluemoji@3.1.0': 208 - resolution: {integrity: sha512-8EfcEDrXlStvu57WVcGSeDWfbEDKTjfI43rk+oohe2sdYU113ObTe8Pv1vW0DRfOYcQqR4+eF2SbpvXE6//24g==} 212 + '@atcute/bluemoji@3.1.3': 213 + resolution: {integrity: sha512-IV7Kidr32BueYvcr/Q2MPupu06oAZv0O0MahQc0X/g4ykg6d5B4gGvBgBV/iHwW6uAO9s1TO1RrsEdu1FFnowQ==} 209 214 210 215 '@atcute/bluesky-richtext-parser@1.0.7': 211 216 resolution: {integrity: sha512-nOvU699OXiGMbyswao7JJnY0C9WkwE7PVC/m5WWt0UN9fsXSOor9IZWw+v9SATp+94BTJoG38XyUomUaJnoQRA==} 212 217 213 - '@atcute/bluesky-richtext-segmenter@2.0.3': 214 - resolution: {integrity: sha512-8Jy2EHdqx0mKI0k8l4h2cnaBN1pGgSzSazO0Gp85ttIQmgynZsQX6l4OWgaQx0aNZFmqZRXJ7N0rj/b2dlO1eQ==} 218 + '@atcute/bluesky-richtext-segmenter@2.0.4': 219 + resolution: {integrity: sha512-6m5QEAv4lU3qTy5MeJXJRRG33acipYJnMW1T7W/KrMyThGhQ7jSTTh8Z48quElgivgX7MDj6o/ow1oLUsjsCKw==} 215 220 216 - '@atcute/bluesky-search-parser@0.1.0': 217 - resolution: {integrity: sha512-bTClwD9VGwaECOyWe1mf8V6t+7/77e3tiUHTE6CSrHXOJ/yM8N2xbn+dIi2ki2JLHvgvBN9wsWpFLykgfWhBaw==} 221 + '@atcute/bluesky-search-parser@0.1.1': 222 + resolution: {integrity: sha512-jX01yzA4CWXfnpAmOL5P9kjpWEhVvIq2xEyYLZdFVpYe1v6xclUem1ir+Q8+aWoAcYwqQq6pM16XxkGw0yi5nA==} 218 223 219 - '@atcute/bluesky@3.2.1': 220 - resolution: {integrity: sha512-WehZuGNEC9NNB2y7Jg/i4ANzbMEQzs2EwrLYKWDuvJT3YnPHEol3vkc4DK47TODs3TiacQJp4MWhsQyfktsZ6g==} 224 + '@atcute/bluesky@3.2.12': 225 + resolution: {integrity: sha512-hVhAO7b4bxu9iwl/UdqugWDvUtSrf0VDN+dTalKxpJrJ3RrZb+jL1CB1AmdWOCZgHrOxXsgAJF4mpnzqd2D3oA==} 221 226 222 - '@atcute/cbor@2.2.5': 223 - resolution: {integrity: sha512-sBT8+6qau0mC3kwgmjl+nzqGn02xsE9b+kSgXm4/BRd9w8fwdRQYwcC9ApDlfaojrljJfcEkimppl/IcPOF3CA==} 227 + '@atcute/cbor@2.2.8': 228 + resolution: {integrity: sha512-UzOAN9BuN6JCXgn0ryV8qZuRJUDrNqrbLd6EFM8jc6RYssjRyGRxNy6RZ1NU/07Hd8Tq/0pz8+nQiMu5Zai5uw==} 224 229 225 - '@atcute/cid@2.2.3': 226 - resolution: {integrity: sha512-WEzNSL1EuCVtCQDFYEBIm4dEP6PcMEwi8IYUVIWvT77eO5EjY58F63z5T4qMABxSBM0+L4kqMxypdL1Fzf6LZw==} 230 + '@atcute/cid@2.2.6': 231 + resolution: {integrity: sha512-bTAHHbJ24p+E//V4KCS4xdmd39o211jJswvqQOevj7vk+5IYcgDLx1ryZWZ1sEPOo9x875li/kj5gpKL14RDwQ==} 227 232 228 - '@atcute/client@4.0.3': 229 - resolution: {integrity: sha512-RIOZWFVLca/HiPAAUDqQPOdOreCxTbL5cb+WUf5yqQOKIu5yEAP3eksinmlLmgIrlr5qVOE7brazUUzaskFCfw==} 233 + '@atcute/client@4.1.0': 234 + resolution: {integrity: sha512-AYhSu3RSDA2VDkVGOmad320NRbUUUf5pCFWJcOzlk25YC/4kyzmMFfpzhf1jjjEcY+anNBXGGhav/kKB1evggQ==} 230 235 231 - '@atcute/crypto@2.2.3': 232 - resolution: {integrity: sha512-jJI/8WDK6rKvpoUKi0C9Q7pjRRrHGGAagRxnFvpBM5ycZT9eABz7p309LmRKBCWLasmCs/qee8WK4dqOA2e7Dw==} 236 + '@atcute/crypto@2.2.6': 237 + resolution: {integrity: sha512-vkuexF+kmrKE1/Uqzub99Qi4QpnxA2jbu60E6PTgL4XypELQ6rb59MB/J1VbY2gs0kd3ET7+L3+NWpKD5nXyfA==} 233 238 234 - '@atcute/identity-resolver@1.1.3': 235 - resolution: {integrity: sha512-KZgGgg99CWaV7Df3+h3X/WMrDzTPQVfsaoIVbTNLx2B56BvCL2EmaxPSVw/7BFUJMZHlVU4rtoEB4lyvNyMswA==} 239 + '@atcute/identity-resolver@1.2.0': 240 + resolution: {integrity: sha512-5UbSJfdV3JIkF8ksXz7g4nKBWasf2wROvzM66cfvTIWydWFO6/oS1KZd+zo9Eokje5Scf5+jsY9ZfgVARLepXg==} 236 241 peerDependencies: 237 242 '@atcute/identity': ^1.0.0 238 243 239 - '@atcute/identity@1.1.0': 240 - resolution: {integrity: sha512-6vRvRqJatDB+JUQsb+UswYmtBGQnSZcqC3a2y6H5DB/v5KcIh+6nFFtc17G0+3W9rxdk7k9M4KkgkdKf/YDNoQ==} 244 + '@atcute/identity@1.1.3': 245 + resolution: {integrity: sha512-oIqPoI8TwWeQxvcLmFEZLdN2XdWcaLVtlm8pNk0E72As9HNzzD9pwKPrLr3rmTLRIoULPPFmq9iFNsTeCIU9ng==} 241 246 242 - '@atcute/lexicons@1.1.1': 243 - resolution: {integrity: sha512-k6qy5p3j9fJJ6ekaMPfEfp3ni4TW/XNuH9ZmsuwC0fi0tOjp+Fa8ZQakHwnqOzFt/cVBfGcmYE/lKNAbeTjgUg==} 247 + '@atcute/lexicons@1.2.5': 248 + resolution: {integrity: sha512-9yO9WdgxW8jZ7SbzUycH710z+JmsQ9W9n5S6i6eghYju32kkluFmgBeS47r8e8p2+Dv4DemS7o/3SUGsX9FR5Q==} 244 249 245 - '@atcute/multibase@1.1.4': 246 - resolution: {integrity: sha512-NUf5AeeSOmuZHGU+4GAaMtISJoG+ZHtW/vUVA4lK/YDt/7LODAW0Fd0NNIIUPVUoW0xJS6zSEIWvwLLuxmEHhA==} 250 + '@atcute/multibase@1.1.6': 251 + resolution: {integrity: sha512-HBxuCgYLKPPxETV0Rot4VP9e24vKl8JdzGCZOVsDaOXJgbRZoRIF67Lp0H/OgnJeH/Xpva8Z5ReoTNJE5dn3kg==} 247 252 248 - '@atcute/oauth-browser-client@2.0.0-next.0': 249 - resolution: {integrity: sha512-BaVU0Mu5ACerdWdMok6kvwwAuPJunbQQk0C51zpxNLpT0P/SYnun+3xX7bcrbtDG1lXn+r+Qld88P+zonY1wPA==} 253 + '@atcute/oauth-browser-client@2.0.1': 254 + resolution: {integrity: sha512-lG021GkeORG06zfFf4bH85egObjBEKHNgAWHvbtY/E2dX4wxo88hf370pJDx8acdnuUJLJ2VKPikJtZwo4Heeg==} 250 255 251 - '@atcute/tid@1.0.2': 252 - resolution: {integrity: sha512-ahmjroNyeDPJhtuf3+HTJropaH04HmJ8fhntDu73Gpz/RkAF7+nkz6kcP2QTgfvMCgMPAJUdskAAP82GPDTY9w==} 256 + '@atcute/tid@1.0.3': 257 + resolution: {integrity: sha512-wfMJx1IMdnu0CZgWl0uR4JO2s6PGT1YPhpytD4ZHzEYKKQVuqV6Eb/7vieaVo1eYNMp2FrY67FZObeR7utRl2w==} 253 258 254 - '@atcute/uint8array@1.0.3': 255 - resolution: {integrity: sha512-M/K+ihiVW8Pl2PFLzaC4E3l4JaZ1IH05Q0AbPWUC4cVHnd/gZ/1kAF5ngdtGvJeDMirHZ2VAy7OmAsPwR/2nlA==} 259 + '@atcute/uint8array@1.0.6': 260 + resolution: {integrity: sha512-ucfRBQc7BFT8n9eCyGOzDHEMKF/nZwhS2pPao4Xtab1ML3HdFYcX2DM1tadCzas85QTGxHe5urnUAAcNKGRi9A==} 256 261 257 - '@atcute/util-fetch@1.0.1': 258 - resolution: {integrity: sha512-Clc0E/5ufyGBVfYBUwWNlHONlZCoblSr4Ho50l1LhmRPGB1Wu/AQ9Sz+rsBg7fdaW/auve8ulmwhRhnX2cGRow==} 262 + '@atcute/util-fetch@1.0.4': 263 + resolution: {integrity: sha512-sIU9Qk0dE8PLEXSfhy+gIJV+HpiiknMytCI2SqLlqd0vgZUtEKI/EQfP+23LHWvP+CLCzVDOa6cpH045OlmNBg==} 259 264 260 - '@atcute/xrpc-server@0.1.1': 261 - resolution: {integrity: sha512-pkr1yGtcCoApqELLjTIU7DO6SnVly5bAPbVswLHEM2xQfk6X4F/dKFDdPEsXwbRrSSr6leKgPwQPVcUpPQnQ4A==} 265 + '@atcute/xrpc-server@0.1.3': 266 + resolution: {integrity: sha512-AMig6MuAL5VfXRZVsQqQXKCXnZgpjTc6UM6RggvyE1qVT8y9tZPFXdP5tt/p6Jf+h4cAw+XMu2uyrGpUmnTSyQ==} 262 267 263 268 '@atlaskit/pragmatic-drag-and-drop-hitbox@1.0.3': 264 269 resolution: {integrity: sha512-/Sbu/HqN2VGLYBhnsG7SbRNg98XKkbF6L7XDdBi+izRybfaK1FeMfodPpm/xnBHPJzwYMdkE0qtLyv6afhgMUA==} ··· 270 275 resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} 271 276 engines: {node: '>=6.9.0'} 272 277 273 - '@babel/compat-data@7.27.5': 274 - resolution: {integrity: sha512-KiRAp/VoJaWkkte84TvUd9qjdbZAdiqyvMxrGl1N6vzFogKmaLgoM3L1kgtLicp2HP5fBJS8JrZKLVIZGVJAVg==} 278 + '@babel/compat-data@7.28.5': 279 + resolution: {integrity: sha512-6uFXyCayocRbqhZOB+6XcuZbkMNimwfVGFji8CTZnCzOHVGvDqzvitu1re2AU5LROliz7eQPhB8CpAMvnx9EjA==} 275 280 engines: {node: '>=6.9.0'} 276 281 277 - '@babel/core@7.27.4': 278 - resolution: {integrity: sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g==} 282 + '@babel/core@7.28.5': 283 + resolution: {integrity: sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw==} 279 284 engines: {node: '>=6.9.0'} 280 285 281 - '@babel/generator@7.27.5': 282 - resolution: {integrity: sha512-ZGhA37l0e/g2s1Cnzdix0O3aLYm66eF8aufiVteOgnwxgnRP8GoyMj7VWsgWnQbVKXyge7hqrFh2K2TQM6t1Hw==} 286 + '@babel/generator@7.28.5': 287 + resolution: {integrity: sha512-3EwLFhZ38J4VyIP6WNtt2kUdW9dokXA9Cr4IVIFHuCpZ3H8/YFOl5JjZHisrn1fATPBmKKqXzDFvh9fUwHz6CQ==} 283 288 engines: {node: '>=6.9.0'} 284 289 285 290 '@babel/helper-annotate-as-pure@7.27.3': ··· 290 295 resolution: {integrity: sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==} 291 296 engines: {node: '>=6.9.0'} 292 297 293 - '@babel/helper-create-class-features-plugin@7.27.1': 294 - 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==} 295 300 engines: {node: '>=6.9.0'} 296 301 peerDependencies: 297 302 '@babel/core': ^7.0.0 298 303 299 - '@babel/helper-create-regexp-features-plugin@7.27.1': 300 - resolution: {integrity: sha512-uVDC72XVf8UbrH5qQTc18Agb8emwjTiZrQE11Nv3CuBEZmVvTwwE9CBUEvHku06gQCAyYf8Nv6ja1IN+6LMbxQ==} 304 + '@babel/helper-create-regexp-features-plugin@7.28.5': 305 + resolution: {integrity: sha512-N1EhvLtHzOvj7QQOUCCS3NrPJP8c5W6ZXCHDn7Yialuy1iu4r5EmIYkXlKNqT99Ciw+W0mDqWoR6HWMZlFP3hw==} 301 306 engines: {node: '>=6.9.0'} 302 307 peerDependencies: 303 308 '@babel/core': ^7.0.0 304 309 305 - '@babel/helper-define-polyfill-provider@0.6.4': 306 - resolution: {integrity: sha512-jljfR1rGnXXNWnmQg2K3+bvhkxB51Rl32QRaOTuwwjviGrHzIbSc8+x9CpraDtbT7mfyjXObULP4w/adunNwAw==} 310 + '@babel/helper-define-polyfill-provider@0.6.5': 311 + resolution: {integrity: sha512-uJnGFcPsWQK8fvjgGP5LZUZZsYGIoPeRjSF5PGwrelYgq7Q15/Ft9NGFp1zglwgIv//W0uG4BevRuSJRyylZPg==} 307 312 peerDependencies: 308 313 '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 309 314 310 - '@babel/helper-member-expression-to-functions@7.27.1': 311 - 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==} 312 321 engines: {node: '>=6.9.0'} 313 322 314 323 '@babel/helper-module-imports@7.18.6': ··· 319 328 resolution: {integrity: sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==} 320 329 engines: {node: '>=6.9.0'} 321 330 322 - '@babel/helper-module-transforms@7.27.3': 323 - resolution: {integrity: sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==} 331 + '@babel/helper-module-transforms@7.28.3': 332 + resolution: {integrity: sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw==} 324 333 engines: {node: '>=6.9.0'} 325 334 peerDependencies: 326 335 '@babel/core': ^7.0.0 ··· 353 362 resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} 354 363 engines: {node: '>=6.9.0'} 355 364 356 - '@babel/helper-validator-identifier@7.27.1': 357 - resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} 365 + '@babel/helper-validator-identifier@7.28.5': 366 + resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} 358 367 engines: {node: '>=6.9.0'} 359 368 360 369 '@babel/helper-validator-option@7.27.1': 361 370 resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==} 362 371 engines: {node: '>=6.9.0'} 363 372 364 - '@babel/helper-wrap-function@7.27.1': 365 - resolution: {integrity: sha512-NFJK2sHUvrjo8wAU/nQTWU890/zB2jj0qBcCbZbbf+005cAsv6tMjXz31fBign6M5ov1o0Bllu+9nbqkfsjjJQ==} 373 + '@babel/helper-wrap-function@7.28.3': 374 + resolution: {integrity: sha512-zdf983tNfLZFletc0RRXYrHrucBEg95NIFMkn6K9dbeMYnsgHaSBGcQqdsCSStG2PYwRre0Qc2NNSCXbG+xc6g==} 366 375 engines: {node: '>=6.9.0'} 367 376 368 - '@babel/helpers@7.27.6': 369 - resolution: {integrity: sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==} 377 + '@babel/helpers@7.28.4': 378 + resolution: {integrity: sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==} 370 379 engines: {node: '>=6.9.0'} 371 380 372 - '@babel/parser@7.27.5': 373 - resolution: {integrity: sha512-OsQd175SxWkGlzbny8J3K8TnnDD0N3lrIUtB92xwyRpzaenGZhxDvxN/JgU00U3CDZNj9tPuDJ5H0WS4Nt3vKg==} 381 + '@babel/parser@7.28.5': 382 + resolution: {integrity: sha512-KKBU1VGYR7ORr3At5HAtUQ+TV3SzRCXmA/8OdDZiLDBIZxVyzXuztPjfLd3BV1PRAQGCMWWSHYhL0F8d5uHBDQ==} 374 383 engines: {node: '>=6.0.0'} 375 384 hasBin: true 376 385 377 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.27.1': 378 - 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==} 379 388 engines: {node: '>=6.9.0'} 380 389 peerDependencies: 381 390 '@babel/core': ^7.0.0 ··· 398 407 peerDependencies: 399 408 '@babel/core': ^7.13.0 400 409 401 - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.27.1': 402 - 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==} 403 412 engines: {node: '>=6.9.0'} 404 413 peerDependencies: 405 414 '@babel/core': ^7.0.0 ··· 440 449 peerDependencies: 441 450 '@babel/core': ^7.0.0-0 442 451 443 - '@babel/plugin-transform-async-generator-functions@7.27.1': 444 - resolution: {integrity: sha512-eST9RrwlpaoJBDHShc+DS2SG4ATTi2MYNb4OxYkf3n+7eb49LWpnS+HSpVfW4x927qQwgk8A2hGNVaajAEw0EA==} 452 + '@babel/plugin-transform-async-generator-functions@7.28.0': 453 + resolution: {integrity: sha512-BEOdvX4+M765icNPZeidyADIvQ1m1gmunXufXxvRESy/jNNyfovIqUyE7MVgGBjWktCoJlzvFA1To2O4ymIO3Q==} 445 454 engines: {node: '>=6.9.0'} 446 455 peerDependencies: 447 456 '@babel/core': ^7.0.0-0 ··· 458 467 peerDependencies: 459 468 '@babel/core': ^7.0.0-0 460 469 461 - '@babel/plugin-transform-block-scoping@7.27.5': 462 - resolution: {integrity: sha512-JF6uE2s67f0y2RZcm2kpAUEbD50vH62TyWVebxwHAlbSdM49VqPz8t4a1uIjp4NIOIZ4xzLfjY5emt/RCyC7TQ==} 470 + '@babel/plugin-transform-block-scoping@7.28.5': 471 + resolution: {integrity: sha512-45DmULpySVvmq9Pj3X9B+62Xe+DJGov27QravQJU1LLcapR6/10i+gYVAucGGJpHBp5mYxIMK4nDAT/QDLr47g==} 463 472 engines: {node: '>=6.9.0'} 464 473 peerDependencies: 465 474 '@babel/core': ^7.0.0-0 ··· 470 479 peerDependencies: 471 480 '@babel/core': ^7.0.0-0 472 481 473 - '@babel/plugin-transform-class-static-block@7.27.1': 474 - 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==} 475 484 engines: {node: '>=6.9.0'} 476 485 peerDependencies: 477 486 '@babel/core': ^7.12.0 478 487 479 - '@babel/plugin-transform-classes@7.27.1': 480 - 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==} 481 490 engines: {node: '>=6.9.0'} 482 491 peerDependencies: 483 492 '@babel/core': ^7.0.0-0 ··· 488 497 peerDependencies: 489 498 '@babel/core': ^7.0.0-0 490 499 491 - '@babel/plugin-transform-destructuring@7.27.3': 492 - resolution: {integrity: sha512-s4Jrok82JpiaIprtY2nHsYmrThKvvwgHwjgd7UMiYhZaN0asdXNLr0y+NjTfkA7SyQE5i2Fb7eawUOZmLvyqOA==} 500 + '@babel/plugin-transform-destructuring@7.28.5': 501 + resolution: {integrity: sha512-Kl9Bc6D0zTUcFUvkNuQh4eGXPKKNDOJQXVyyM4ZAQPMveniJdxi8XMJwLo+xSoW3MIq81bD33lcUe9kZpl0MCw==} 493 502 engines: {node: '>=6.9.0'} 494 503 peerDependencies: 495 504 '@babel/core': ^7.0.0-0 ··· 518 527 peerDependencies: 519 528 '@babel/core': ^7.0.0-0 520 529 521 - '@babel/plugin-transform-exponentiation-operator@7.27.1': 522 - 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==} 523 538 engines: {node: '>=6.9.0'} 524 539 peerDependencies: 525 540 '@babel/core': ^7.0.0-0 ··· 554 569 peerDependencies: 555 570 '@babel/core': ^7.0.0-0 556 571 557 - '@babel/plugin-transform-logical-assignment-operators@7.27.1': 558 - resolution: {integrity: sha512-SJvDs5dXxiae4FbSL1aBJlG4wvl594N6YEVVn9e3JGulwioy6z3oPjx/sQBO3Y4NwUu5HNix6KJ3wBZoewcdbw==} 572 + '@babel/plugin-transform-logical-assignment-operators@7.28.5': 573 + resolution: {integrity: sha512-axUuqnUTBuXyHGcJEVVh9pORaN6wC5bYfE7FGzPiaWa3syib9m7g+/IT/4VgCOe2Upef43PHzeAvcrVek6QuuA==} 559 574 engines: {node: '>=6.9.0'} 560 575 peerDependencies: 561 576 '@babel/core': ^7.0.0-0 ··· 578 593 peerDependencies: 579 594 '@babel/core': ^7.0.0-0 580 595 581 - '@babel/plugin-transform-modules-systemjs@7.27.1': 582 - resolution: {integrity: sha512-w5N1XzsRbc0PQStASMksmUeqECuzKuTJer7kFagK8AXgpCMkeDMO5S+aaFb7A51ZYDF7XI34qsTX+fkHiIm5yA==} 596 + '@babel/plugin-transform-modules-systemjs@7.28.5': 597 + resolution: {integrity: sha512-vn5Jma98LCOeBy/KpeQhXcV2WZgaRUtjwQmjoBuLNlOmkg0fB5pdvYVeWRYI69wWKwK2cD1QbMiUQnoujWvrew==} 583 598 engines: {node: '>=6.9.0'} 584 599 peerDependencies: 585 600 '@babel/core': ^7.0.0-0 ··· 614 629 peerDependencies: 615 630 '@babel/core': ^7.0.0-0 616 631 617 - '@babel/plugin-transform-object-rest-spread@7.27.3': 618 - resolution: {integrity: sha512-7ZZtznF9g4l2JCImCo5LNKFHB5eXnN39lLtLY5Tg+VkR0jwOt7TBciMckuiQIOIW7L5tkQOCh3bVGYeXgMx52Q==} 632 + '@babel/plugin-transform-object-rest-spread@7.28.4': 633 + resolution: {integrity: sha512-373KA2HQzKhQCYiRVIRr+3MjpCObqzDlyrM6u4I201wL8Mp2wHf7uB8GhDwis03k2ti8Zr65Zyyqs1xOxUF/Ew==} 619 634 engines: {node: '>=6.9.0'} 620 635 peerDependencies: 621 636 '@babel/core': ^7.0.0-0 ··· 632 647 peerDependencies: 633 648 '@babel/core': ^7.0.0-0 634 649 635 - '@babel/plugin-transform-optional-chaining@7.27.1': 636 - resolution: {integrity: sha512-BQmKPPIuc8EkZgNKsv0X4bPmOoayeu4F1YCwx2/CfmDSXDbp7GnzlUH+/ul5VGfRg1AoFPsrIThlEBj2xb4CAg==} 650 + '@babel/plugin-transform-optional-chaining@7.28.5': 651 + resolution: {integrity: sha512-N6fut9IZlPnjPwgiQkXNhb+cT8wQKFlJNqcZkWlcTqkcqx6/kU4ynGmLFoa4LViBSirn05YAwk+sQBbPfxtYzQ==} 637 652 engines: {node: '>=6.9.0'} 638 653 peerDependencies: 639 654 '@babel/core': ^7.0.0-0 640 655 641 - '@babel/plugin-transform-parameters@7.27.1': 642 - resolution: {integrity: sha512-018KRk76HWKeZ5l4oTj2zPpSh+NbGdt0st5S6x0pga6HgrjBOJb24mMDHorFopOOd6YHkLgOZ+zaCjZGPO4aKg==} 656 + '@babel/plugin-transform-parameters@7.27.7': 657 + resolution: {integrity: sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg==} 643 658 engines: {node: '>=6.9.0'} 644 659 peerDependencies: 645 660 '@babel/core': ^7.0.0-0 ··· 662 677 peerDependencies: 663 678 '@babel/core': ^7.0.0-0 664 679 665 - '@babel/plugin-transform-regenerator@7.27.5': 666 - resolution: {integrity: sha512-uhB8yHerfe3MWnuLAhEbeQ4afVoqv8BQsPqrTv7e/jZ9y00kJL6l9a/f4OWaKxotmjzewfEyXE1vgDJenkQ2/Q==} 680 + '@babel/plugin-transform-regenerator@7.28.4': 681 + resolution: {integrity: sha512-+ZEdQlBoRg9m2NnzvEeLgtvBMO4tkFBw5SQIUgLICgTrumLoU7lr+Oghi6km2PFj+dbUt2u1oby2w3BDO9YQnA==} 667 682 engines: {node: '>=6.9.0'} 668 683 peerDependencies: 669 684 '@babel/core': ^7.0.0-0 ··· 734 749 peerDependencies: 735 750 '@babel/core': ^7.0.0 736 751 737 - '@babel/preset-env@7.27.2': 738 - resolution: {integrity: sha512-Ma4zSuYSlGNRlCLO+EAzLnCmJK2vdstgv+n7aUP+/IKZrOfWHOJVdSJtuub8RzHTj3ahD37k5OKJWvzf16TQyQ==} 752 + '@babel/preset-env@7.28.5': 753 + resolution: {integrity: sha512-S36mOoi1Sb6Fz98fBfE+UZSpYw5mJm0NUHtIKrOuNcqeFauy1J6dIvXm2KRVKobOSaGq4t/hBXdN4HGU3wL9Wg==} 739 754 engines: {node: '>=6.9.0'} 740 755 peerDependencies: 741 756 '@babel/core': ^7.0.0-0 ··· 745 760 peerDependencies: 746 761 '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 747 762 748 - '@babel/runtime@7.27.6': 749 - resolution: {integrity: sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==} 763 + '@babel/runtime@7.28.4': 764 + resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==} 750 765 engines: {node: '>=6.9.0'} 751 766 752 767 '@babel/template@7.27.2': 753 768 resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==} 754 769 engines: {node: '>=6.9.0'} 755 770 756 - '@babel/traverse@7.27.4': 757 - resolution: {integrity: sha512-oNcu2QbHqts9BtOWJosOVJapWjBDSxGCpFvikNR5TGDYDQf3JwpIoMzIKrvfoti93cLfPJEG4tH9SPVeyCGgdA==} 771 + '@babel/traverse@7.28.5': 772 + resolution: {integrity: sha512-TCCj4t55U90khlYkVV/0TfkJkAkUg3jZFA3Neb7unZT8CPok7iiRfaX0F+WnqWqt7OxhOn0uBKXCw4lbL8W0aQ==} 758 773 engines: {node: '>=6.9.0'} 759 774 760 - '@babel/types@7.27.6': 761 - resolution: {integrity: sha512-ETyHEk2VHHvl9b9jZP5IHPavHYk57EhanlRRuae9XCpb/j5bDCbPPMOBfCWhnl/7EDJz0jEMCi/RhccCE8r1+Q==} 775 + '@babel/types@7.28.5': 776 + resolution: {integrity: sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA==} 762 777 engines: {node: '>=6.9.0'} 763 778 764 - '@badrap/valita@0.4.5': 765 - resolution: {integrity: sha512-4QwGbuhh/JesHRQj79mO/l37PvJj4l/tlAu7+S1n4h47qwaNpZ0WDvIwUGLYUsdi9uQ5UPpiG9wb1Wm3XUFBUQ==} 779 + '@badrap/valita@0.4.6': 780 + resolution: {integrity: sha512-4kdqcjyxo/8RQ8ayjms47HCWZIF5981oE5nIenbfThKDxWXtEHKipAOWlflpPJzZx9y/JWYQkp18Awr7VuepFg==} 766 781 engines: {node: '>= 18'} 767 782 768 - '@cloudflare/kv-asset-handler@0.4.0': 769 - resolution: {integrity: sha512-+tv3z+SPp+gqTIcImN9o0hqE9xyfQjI1XD9pL6NuKjua9B1y7mNYv0S9cP+QEbA4ppVgGZEmKOvHX5G5Ei1CVA==} 783 + '@cloudflare/kv-asset-handler@0.4.1': 784 + resolution: {integrity: sha512-Nu8ahitGFFJztxUml9oD/DLb7Z28C8cd8F46IVQ7y5Btz575pvMY8AqZsXkX7Gds29eCKdMgIHjIvzskHgPSFg==} 770 785 engines: {node: '>=18.0.0'} 771 786 772 - '@cloudflare/unenv-preset@2.6.2': 773 - resolution: {integrity: sha512-C7/tW7Qy+wGOCmHXu7xpP1TF3uIhRoi7zVY7dmu/SOSGjPilK+lSQ2lIRILulZsT467ZJNlI0jBxMbd8LzkGRg==} 787 + '@cloudflare/unenv-preset@2.7.13': 788 + resolution: {integrity: sha512-NulO1H8R/DzsJguLC0ndMuk4Ufv0KSlN+E54ay9rn9ZCQo0kpAPwwh3LhgpZ96a3Dr6L9LqW57M4CqC34iLOvw==} 774 789 peerDependencies: 775 - unenv: 2.0.0-rc.19 776 - workerd: ^1.20250802.0 790 + unenv: 2.0.0-rc.24 791 + workerd: ^1.20251202.0 777 792 peerDependenciesMeta: 778 793 workerd: 779 794 optional: true 780 795 781 - '@cloudflare/vite-plugin@1.11.7': 782 - resolution: {integrity: sha512-8CN3B/TTeOJmfququLvBIUdE8Fh6O+6afI2u/AsUYyAiPddEcVF5w3B1OSSn2v+b/uBJX0s3SrGbJ1TXFPT7MA==} 796 + '@cloudflare/vite-plugin@1.17.0': 797 + resolution: {integrity: sha512-daPcsaPs1DN7T9KsddcyozXed8dqdOj1tglsWb/O+dg2fM4CO7wxns0JEzZtbUPo/6TEY82Z3TAfoHelgaqLJQ==} 783 798 peerDependencies: 784 799 vite: ^6.1.0 || ^7.0.0 785 - wrangler: ^4.32.0 800 + wrangler: ^4.53.0 786 801 787 - '@cloudflare/workerd-darwin-64@1.20250816.0': 788 - resolution: {integrity: sha512-yN1Rga4ufTdrJPCP4gEqfB47i1lWi3teY5IoeQbUuKnjnCtm4pZvXur526JzCmaw60Jx+AEWf5tizdwRd5hHBQ==} 802 + '@cloudflare/workerd-darwin-64@1.20251202.0': 803 + resolution: {integrity: sha512-/uvEAWEukTWb1geHhbjGUeZqcSSSyYzp0mvoPUBl+l0ont4NVGao3fgwM0q8wtKvgoKCHSG6zcG23wj9Opj3Nw==} 789 804 engines: {node: '>=16'} 790 805 cpu: [x64] 791 806 os: [darwin] 792 807 793 - '@cloudflare/workerd-darwin-arm64@1.20250816.0': 794 - resolution: {integrity: sha512-WyKPMQhbU+TTf4uDz3SA7ZObspg7WzyJMv/7J4grSddpdx2A4Y4SfPu3wsZleAOIMOAEVi0A1sYDhdltKM7Mxg==} 808 + '@cloudflare/workerd-darwin-arm64@1.20251202.0': 809 + resolution: {integrity: sha512-f52xRvcI9cWRd6400EZStRtXiRC5XKEud7K5aFIbbUv0VeINltujFQQ9nHWtsF6g1quIXWkjhh5u01gPAYNNXA==} 795 810 engines: {node: '>=16'} 796 811 cpu: [arm64] 797 812 os: [darwin] 798 813 799 - '@cloudflare/workerd-linux-64@1.20250816.0': 800 - resolution: {integrity: sha512-NWHOuFnVBaPRhLHw8kjPO9GJmc2P/CTYbnNlNm0EThyi57o/oDx0ldWLJqEHlrdEPOw7zEVGBqM/6M+V9agC6w==} 814 + '@cloudflare/workerd-linux-64@1.20251202.0': 815 + resolution: {integrity: sha512-HYXinF5RBH7oXbsFUMmwKCj+WltpYbf5mRKUBG5v3EuPhUjSIFB84U+58pDyfBJjcynHdy3EtvTWcvh/+lcgow==} 801 816 engines: {node: '>=16'} 802 817 cpu: [x64] 803 818 os: [linux] 804 819 805 - '@cloudflare/workerd-linux-arm64@1.20250816.0': 806 - 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==} 807 822 engines: {node: '>=16'} 808 823 cpu: [arm64] 809 824 os: [linux] 810 825 811 - '@cloudflare/workerd-windows-64@1.20250816.0': 812 - resolution: {integrity: sha512-0lqClj2UMhFa8tCBiiX7Zhd5Bjp0V+X8oNBG6V6WsR9p9/HlIHAGgwRAM7aYkyG+8KC8xlbC89O2AXUXLpHx0g==} 826 + '@cloudflare/workerd-windows-64@1.20251202.0': 827 + resolution: {integrity: sha512-gzeU6eDydTi7ib+Q9DD/c0hpXtqPucnHk2tfGU03mljPObYxzMkkPGgB5qxpksFvub3y4K0ChjqYxGJB4F+j3g==} 813 828 engines: {node: '>=16'} 814 829 cpu: [x64] 815 830 os: [win32] ··· 818 833 resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} 819 834 engines: {node: '>=12'} 820 835 821 - '@emnapi/runtime@1.4.3': 822 - resolution: {integrity: sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==} 836 + '@emnapi/runtime@1.7.1': 837 + resolution: {integrity: sha512-PVtJr5CmLwYAU9PZDMITZoR5iAOShYREoR45EyyLrbntV50mdePTgUn4AmOw90Ifcj+x2kRjdzr1HP3RrNiHGA==} 823 838 824 - '@esbuild/aix-ppc64@0.25.4': 825 - resolution: {integrity: sha512-1VCICWypeQKhVbE9oW/sJaAmjLxhVqacdkvPLEjwlttjfwENRSClS8EjBz0KzRyFSCPDIkuXW34Je/vk7zdB7Q==} 839 + '@esbuild/aix-ppc64@0.25.12': 840 + resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==} 826 841 engines: {node: '>=18'} 827 842 cpu: [ppc64] 828 843 os: [aix] 829 844 830 - '@esbuild/aix-ppc64@0.25.5': 831 - resolution: {integrity: sha512-9o3TMmpmftaCMepOdA5k/yDw8SfInyzWWTjYTFCX3kPSDJMROQTb8jg+h9Cnwnmm1vOzvxN7gIfB5V2ewpjtGA==} 845 + '@esbuild/aix-ppc64@0.27.0': 846 + resolution: {integrity: sha512-KuZrd2hRjz01y5JK9mEBSD3Vj3mbCvemhT466rSuJYeE/hjuBrHfjjcjMdTm/sz7au+++sdbJZJmuBwQLuw68A==} 832 847 engines: {node: '>=18'} 833 848 cpu: [ppc64] 834 849 os: [aix] 835 850 836 - '@esbuild/android-arm64@0.25.4': 837 - 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==} 838 853 engines: {node: '>=18'} 839 854 cpu: [arm64] 840 855 os: [android] 841 856 842 - '@esbuild/android-arm64@0.25.5': 843 - resolution: {integrity: sha512-VGzGhj4lJO+TVGV1v8ntCZWJktV7SGCs3Pn1GRWI1SBFtRALoomm8k5E9Pmwg3HOAal2VDc2F9+PM/rEY6oIDg==} 857 + '@esbuild/android-arm64@0.27.0': 858 + resolution: {integrity: sha512-CC3vt4+1xZrs97/PKDkl0yN7w8edvU2vZvAFGD16n9F0Cvniy5qvzRXjfO1l94efczkkQE6g1x0i73Qf5uthOQ==} 844 859 engines: {node: '>=18'} 845 860 cpu: [arm64] 846 861 os: [android] 847 862 848 - '@esbuild/android-arm@0.25.4': 849 - resolution: {integrity: sha512-QNdQEps7DfFwE3hXiU4BZeOV68HHzYwGd0Nthhd3uCkkEKK7/R6MTgM0P7H7FAs5pU/DIWsviMmEGxEoxIZ+ZQ==} 863 + '@esbuild/android-arm@0.25.12': 864 + resolution: {integrity: sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==} 850 865 engines: {node: '>=18'} 851 866 cpu: [arm] 852 867 os: [android] 853 868 854 - '@esbuild/android-arm@0.25.5': 855 - resolution: {integrity: sha512-AdJKSPeEHgi7/ZhuIPtcQKr5RQdo6OO2IL87JkianiMYMPbCtot9fxPbrMiBADOWWm3T2si9stAiVsGbTQFkbA==} 869 + '@esbuild/android-arm@0.27.0': 870 + resolution: {integrity: sha512-j67aezrPNYWJEOHUNLPj9maeJte7uSMM6gMoxfPC9hOg8N02JuQi/T7ewumf4tNvJadFkvLZMlAq73b9uwdMyQ==} 856 871 engines: {node: '>=18'} 857 872 cpu: [arm] 858 873 os: [android] 859 874 860 - '@esbuild/android-x64@0.25.4': 861 - resolution: {integrity: sha512-TVhdVtQIFuVpIIR282btcGC2oGQoSfZfmBdTip2anCaVYcqWlZXGcdcKIUklfX2wj0JklNYgz39OBqh2cqXvcQ==} 875 + '@esbuild/android-x64@0.25.12': 876 + resolution: {integrity: sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==} 862 877 engines: {node: '>=18'} 863 878 cpu: [x64] 864 879 os: [android] 865 880 866 - '@esbuild/android-x64@0.25.5': 867 - 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==} 868 883 engines: {node: '>=18'} 869 884 cpu: [x64] 870 885 os: [android] 871 886 872 - '@esbuild/darwin-arm64@0.25.4': 873 - resolution: {integrity: sha512-Y1giCfM4nlHDWEfSckMzeWNdQS31BQGs9/rouw6Ub91tkK79aIMTH3q9xHvzH8d0wDru5Ci0kWB8b3up/nl16g==} 887 + '@esbuild/darwin-arm64@0.25.12': 888 + resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==} 874 889 engines: {node: '>=18'} 875 890 cpu: [arm64] 876 891 os: [darwin] 877 892 878 - '@esbuild/darwin-arm64@0.25.5': 879 - resolution: {integrity: sha512-GtaBgammVvdF7aPIgH2jxMDdivezgFu6iKpmT+48+F8Hhg5J/sfnDieg0aeG/jfSvkYQU2/pceFPDKlqZzwnfQ==} 893 + '@esbuild/darwin-arm64@0.27.0': 894 + resolution: {integrity: sha512-uJOQKYCcHhg07DL7i8MzjvS2LaP7W7Pn/7uA0B5S1EnqAirJtbyw4yC5jQ5qcFjHK9l6o/MX9QisBg12kNkdHg==} 880 895 engines: {node: '>=18'} 881 896 cpu: [arm64] 882 897 os: [darwin] 883 898 884 - '@esbuild/darwin-x64@0.25.4': 885 - resolution: {integrity: sha512-CJsry8ZGM5VFVeyUYB3cdKpd/H69PYez4eJh1W/t38vzutdjEjtP7hB6eLKBoOdxcAlCtEYHzQ/PJ/oU9I4u0A==} 899 + '@esbuild/darwin-x64@0.25.12': 900 + resolution: {integrity: sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==} 886 901 engines: {node: '>=18'} 887 902 cpu: [x64] 888 903 os: [darwin] 889 904 890 - '@esbuild/darwin-x64@0.25.5': 891 - resolution: {integrity: sha512-1iT4FVL0dJ76/q1wd7XDsXrSW+oLoquptvh4CLR4kITDtqi2e/xwXwdCVH8hVHU43wgJdsq7Gxuzcs6Iq/7bxQ==} 905 + '@esbuild/darwin-x64@0.27.0': 906 + resolution: {integrity: sha512-8mG6arH3yB/4ZXiEnXof5MK72dE6zM9cDvUcPtxhUZsDjESl9JipZYW60C3JGreKCEP+p8P/72r69m4AZGJd5g==} 892 907 engines: {node: '>=18'} 893 908 cpu: [x64] 894 909 os: [darwin] 895 910 896 - '@esbuild/freebsd-arm64@0.25.4': 897 - resolution: {integrity: sha512-yYq+39NlTRzU2XmoPW4l5Ifpl9fqSk0nAJYM/V/WUGPEFfek1epLHJIkTQM6bBs1swApjO5nWgvr843g6TjxuQ==} 911 + '@esbuild/freebsd-arm64@0.25.12': 912 + resolution: {integrity: sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==} 898 913 engines: {node: '>=18'} 899 914 cpu: [arm64] 900 915 os: [freebsd] 901 916 902 - '@esbuild/freebsd-arm64@0.25.5': 903 - resolution: {integrity: sha512-nk4tGP3JThz4La38Uy/gzyXtpkPW8zSAmoUhK9xKKXdBCzKODMc2adkB2+8om9BDYugz+uGV7sLmpTYzvmz6Sw==} 917 + '@esbuild/freebsd-arm64@0.27.0': 918 + resolution: {integrity: sha512-9FHtyO988CwNMMOE3YIeci+UV+x5Zy8fI2qHNpsEtSF83YPBmE8UWmfYAQg6Ux7Gsmd4FejZqnEUZCMGaNQHQw==} 904 919 engines: {node: '>=18'} 905 920 cpu: [arm64] 906 921 os: [freebsd] 907 922 908 - '@esbuild/freebsd-x64@0.25.4': 909 - resolution: {integrity: sha512-0FgvOJ6UUMflsHSPLzdfDnnBBVoCDtBTVyn/MrWloUNvq/5SFmh13l3dvgRPkDihRxb77Y17MbqbCAa2strMQQ==} 923 + '@esbuild/freebsd-x64@0.25.12': 924 + resolution: {integrity: sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==} 910 925 engines: {node: '>=18'} 911 926 cpu: [x64] 912 927 os: [freebsd] 913 928 914 - '@esbuild/freebsd-x64@0.25.5': 915 - resolution: {integrity: sha512-PrikaNjiXdR2laW6OIjlbeuCPrPaAl0IwPIaRv+SMV8CiM8i2LqVUHFC1+8eORgWyY7yhQY+2U2fA55mBzReaw==} 929 + '@esbuild/freebsd-x64@0.27.0': 930 + resolution: {integrity: sha512-zCMeMXI4HS/tXvJz8vWGexpZj2YVtRAihHLk1imZj4efx1BQzN76YFeKqlDr3bUWI26wHwLWPd3rwh6pe4EV7g==} 916 931 engines: {node: '>=18'} 917 932 cpu: [x64] 918 933 os: [freebsd] 919 934 920 - '@esbuild/linux-arm64@0.25.4': 921 - resolution: {integrity: sha512-+89UsQTfXdmjIvZS6nUnOOLoXnkUTB9hR5QAeLrQdzOSWZvNSAXAtcRDHWtqAUtAmv7ZM1WPOOeSxDzzzMogiQ==} 935 + '@esbuild/linux-arm64@0.25.12': 936 + resolution: {integrity: sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==} 922 937 engines: {node: '>=18'} 923 938 cpu: [arm64] 924 939 os: [linux] 925 940 926 - '@esbuild/linux-arm64@0.25.5': 927 - resolution: {integrity: sha512-Z9kfb1v6ZlGbWj8EJk9T6czVEjjq2ntSYLY2cw6pAZl4oKtfgQuS4HOq41M/BcoLPzrUbNd+R4BXFyH//nHxVg==} 941 + '@esbuild/linux-arm64@0.27.0': 942 + resolution: {integrity: sha512-AS18v0V+vZiLJyi/4LphvBE+OIX682Pu7ZYNsdUHyUKSoRwdnOsMf6FDekwoAFKej14WAkOef3zAORJgAtXnlQ==} 928 943 engines: {node: '>=18'} 929 944 cpu: [arm64] 930 945 os: [linux] 931 946 932 - '@esbuild/linux-arm@0.25.4': 933 - resolution: {integrity: sha512-kro4c0P85GMfFYqW4TWOpvmF8rFShbWGnrLqlzp4X1TNWjRY3JMYUfDCtOxPKOIY8B0WC8HN51hGP4I4hz4AaQ==} 947 + '@esbuild/linux-arm@0.25.12': 948 + resolution: {integrity: sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==} 934 949 engines: {node: '>=18'} 935 950 cpu: [arm] 936 951 os: [linux] 937 952 938 - '@esbuild/linux-arm@0.25.5': 939 - resolution: {integrity: sha512-cPzojwW2okgh7ZlRpcBEtsX7WBuqbLrNXqLU89GxWbNt6uIg78ET82qifUy3W6OVww6ZWobWub5oqZOVtwolfw==} 953 + '@esbuild/linux-arm@0.27.0': 954 + resolution: {integrity: sha512-t76XLQDpxgmq2cNXKTVEB7O7YMb42atj2Re2Haf45HkaUpjM2J0UuJZDuaGbPbamzZ7bawyGFUkodL+zcE+jvQ==} 940 955 engines: {node: '>=18'} 941 956 cpu: [arm] 942 957 os: [linux] 943 958 944 - '@esbuild/linux-ia32@0.25.4': 945 - resolution: {integrity: sha512-yTEjoapy8UP3rv8dB0ip3AfMpRbyhSN3+hY8mo/i4QXFeDxmiYbEKp3ZRjBKcOP862Ua4b1PDfwlvbuwY7hIGQ==} 959 + '@esbuild/linux-ia32@0.25.12': 960 + resolution: {integrity: sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==} 946 961 engines: {node: '>=18'} 947 962 cpu: [ia32] 948 963 os: [linux] 949 964 950 - '@esbuild/linux-ia32@0.25.5': 951 - resolution: {integrity: sha512-sQ7l00M8bSv36GLV95BVAdhJ2QsIbCuCjh/uYrWiMQSUuV+LpXwIqhgJDcvMTj+VsQmqAHL2yYaasENvJ7CDKA==} 965 + '@esbuild/linux-ia32@0.27.0': 966 + resolution: {integrity: sha512-Mz1jxqm/kfgKkc/KLHC5qIujMvnnarD9ra1cEcrs7qshTUSksPihGrWHVG5+osAIQ68577Zpww7SGapmzSt4Nw==} 952 967 engines: {node: '>=18'} 953 968 cpu: [ia32] 954 969 os: [linux] 955 970 956 - '@esbuild/linux-loong64@0.25.4': 957 - resolution: {integrity: sha512-NeqqYkrcGzFwi6CGRGNMOjWGGSYOpqwCjS9fvaUlX5s3zwOtn1qwg1s2iE2svBe4Q/YOG1q6875lcAoQK/F4VA==} 971 + '@esbuild/linux-loong64@0.25.12': 972 + resolution: {integrity: sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==} 958 973 engines: {node: '>=18'} 959 974 cpu: [loong64] 960 975 os: [linux] 961 976 962 - '@esbuild/linux-loong64@0.25.5': 963 - resolution: {integrity: sha512-0ur7ae16hDUC4OL5iEnDb0tZHDxYmuQyhKhsPBV8f99f6Z9KQM02g33f93rNH5A30agMS46u2HP6qTdEt6Q1kg==} 977 + '@esbuild/linux-loong64@0.27.0': 978 + resolution: {integrity: sha512-QbEREjdJeIreIAbdG2hLU1yXm1uu+LTdzoq1KCo4G4pFOLlvIspBm36QrQOar9LFduavoWX2msNFAAAY9j4BDg==} 964 979 engines: {node: '>=18'} 965 980 cpu: [loong64] 966 981 os: [linux] 967 982 968 - '@esbuild/linux-mips64el@0.25.4': 969 - resolution: {integrity: sha512-IcvTlF9dtLrfL/M8WgNI/qJYBENP3ekgsHbYUIzEzq5XJzzVEV/fXY9WFPfEEXmu3ck2qJP8LG/p3Q8f7Zc2Xg==} 983 + '@esbuild/linux-mips64el@0.25.12': 984 + resolution: {integrity: sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==} 970 985 engines: {node: '>=18'} 971 986 cpu: [mips64el] 972 987 os: [linux] 973 988 974 - '@esbuild/linux-mips64el@0.25.5': 975 - resolution: {integrity: sha512-kB/66P1OsHO5zLz0i6X0RxlQ+3cu0mkxS3TKFvkb5lin6uwZ/ttOkP3Z8lfR9mJOBk14ZwZ9182SIIWFGNmqmg==} 989 + '@esbuild/linux-mips64el@0.27.0': 990 + resolution: {integrity: sha512-sJz3zRNe4tO2wxvDpH/HYJilb6+2YJxo/ZNbVdtFiKDufzWq4JmKAiHy9iGoLjAV7r/W32VgaHGkk35cUXlNOg==} 976 991 engines: {node: '>=18'} 977 992 cpu: [mips64el] 978 993 os: [linux] 979 994 980 - '@esbuild/linux-ppc64@0.25.4': 981 - resolution: {integrity: sha512-HOy0aLTJTVtoTeGZh4HSXaO6M95qu4k5lJcH4gxv56iaycfz1S8GO/5Jh6X4Y1YiI0h7cRyLi+HixMR+88swag==} 995 + '@esbuild/linux-ppc64@0.25.12': 996 + resolution: {integrity: sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==} 982 997 engines: {node: '>=18'} 983 998 cpu: [ppc64] 984 999 os: [linux] 985 1000 986 - '@esbuild/linux-ppc64@0.25.5': 987 - resolution: {integrity: sha512-UZCmJ7r9X2fe2D6jBmkLBMQetXPXIsZjQJCjgwpVDz+YMcS6oFR27alkgGv3Oqkv07bxdvw7fyB71/olceJhkQ==} 1001 + '@esbuild/linux-ppc64@0.27.0': 1002 + resolution: {integrity: sha512-z9N10FBD0DCS2dmSABDBb5TLAyF1/ydVb+N4pi88T45efQ/w4ohr/F/QYCkxDPnkhkp6AIpIcQKQ8F0ANoA2JA==} 988 1003 engines: {node: '>=18'} 989 1004 cpu: [ppc64] 990 1005 os: [linux] 991 1006 992 - '@esbuild/linux-riscv64@0.25.4': 993 - resolution: {integrity: sha512-i8JUDAufpz9jOzo4yIShCTcXzS07vEgWzyX3NH2G7LEFVgrLEhjwL3ajFE4fZI3I4ZgiM7JH3GQ7ReObROvSUA==} 1007 + '@esbuild/linux-riscv64@0.25.12': 1008 + resolution: {integrity: sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==} 994 1009 engines: {node: '>=18'} 995 1010 cpu: [riscv64] 996 1011 os: [linux] 997 1012 998 - '@esbuild/linux-riscv64@0.25.5': 999 - resolution: {integrity: sha512-kTxwu4mLyeOlsVIFPfQo+fQJAV9mh24xL+y+Bm6ej067sYANjyEw1dNHmvoqxJUCMnkBdKpvOn0Ahql6+4VyeA==} 1013 + '@esbuild/linux-riscv64@0.27.0': 1014 + resolution: {integrity: sha512-pQdyAIZ0BWIC5GyvVFn5awDiO14TkT/19FTmFcPdDec94KJ1uZcmFs21Fo8auMXzD4Tt+diXu1LW1gHus9fhFQ==} 1000 1015 engines: {node: '>=18'} 1001 1016 cpu: [riscv64] 1002 1017 os: [linux] 1003 1018 1004 - '@esbuild/linux-s390x@0.25.4': 1005 - resolution: {integrity: sha512-jFnu+6UbLlzIjPQpWCNh5QtrcNfMLjgIavnwPQAfoGx4q17ocOU9MsQ2QVvFxwQoWpZT8DvTLooTvmOQXkO51g==} 1019 + '@esbuild/linux-s390x@0.25.12': 1020 + resolution: {integrity: sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==} 1006 1021 engines: {node: '>=18'} 1007 1022 cpu: [s390x] 1008 1023 os: [linux] 1009 1024 1010 - '@esbuild/linux-s390x@0.25.5': 1011 - resolution: {integrity: sha512-K2dSKTKfmdh78uJ3NcWFiqyRrimfdinS5ErLSn3vluHNeHVnBAFWC8a4X5N+7FgVE1EjXS1QDZbpqZBjfrqMTQ==} 1025 + '@esbuild/linux-s390x@0.27.0': 1026 + resolution: {integrity: sha512-hPlRWR4eIDDEci953RI1BLZitgi5uqcsjKMxwYfmi4LcwyWo2IcRP+lThVnKjNtk90pLS8nKdroXYOqW+QQH+w==} 1012 1027 engines: {node: '>=18'} 1013 1028 cpu: [s390x] 1014 1029 os: [linux] 1015 1030 1016 - '@esbuild/linux-x64@0.25.4': 1017 - resolution: {integrity: sha512-6e0cvXwzOnVWJHq+mskP8DNSrKBr1bULBvnFLpc1KY+d+irZSgZ02TGse5FsafKS5jg2e4pbvK6TPXaF/A6+CA==} 1031 + '@esbuild/linux-x64@0.25.12': 1032 + resolution: {integrity: sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==} 1018 1033 engines: {node: '>=18'} 1019 1034 cpu: [x64] 1020 1035 os: [linux] 1021 1036 1022 - '@esbuild/linux-x64@0.25.5': 1023 - resolution: {integrity: sha512-uhj8N2obKTE6pSZ+aMUbqq+1nXxNjZIIjCjGLfsWvVpy7gKCOL6rsY1MhRh9zLtUtAI7vpgLMK6DxjO8Qm9lJw==} 1037 + '@esbuild/linux-x64@0.27.0': 1038 + resolution: {integrity: sha512-1hBWx4OUJE2cab++aVZ7pObD6s+DK4mPGpemtnAORBvb5l/g5xFGk0vc0PjSkrDs0XaXj9yyob3d14XqvnQ4gw==} 1024 1039 engines: {node: '>=18'} 1025 1040 cpu: [x64] 1026 1041 os: [linux] 1027 1042 1028 - '@esbuild/netbsd-arm64@0.25.4': 1029 - resolution: {integrity: sha512-vUnkBYxZW4hL/ie91hSqaSNjulOnYXE1VSLusnvHg2u3jewJBz3YzB9+oCw8DABeVqZGg94t9tyZFoHma8gWZQ==} 1043 + '@esbuild/netbsd-arm64@0.25.12': 1044 + resolution: {integrity: sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==} 1030 1045 engines: {node: '>=18'} 1031 1046 cpu: [arm64] 1032 1047 os: [netbsd] 1033 1048 1034 - '@esbuild/netbsd-arm64@0.25.5': 1035 - resolution: {integrity: sha512-pwHtMP9viAy1oHPvgxtOv+OkduK5ugofNTVDilIzBLpoWAM16r7b/mxBvfpuQDpRQFMfuVr5aLcn4yveGvBZvw==} 1049 + '@esbuild/netbsd-arm64@0.27.0': 1050 + resolution: {integrity: sha512-6m0sfQfxfQfy1qRuecMkJlf1cIzTOgyaeXaiVaaki8/v+WB+U4hc6ik15ZW6TAllRlg/WuQXxWj1jx6C+dfy3w==} 1036 1051 engines: {node: '>=18'} 1037 1052 cpu: [arm64] 1038 1053 os: [netbsd] 1039 1054 1040 - '@esbuild/netbsd-x64@0.25.4': 1041 - resolution: {integrity: sha512-XAg8pIQn5CzhOB8odIcAm42QsOfa98SBeKUdo4xa8OvX8LbMZqEtgeWE9P/Wxt7MlG2QqvjGths+nq48TrUiKw==} 1055 + '@esbuild/netbsd-x64@0.25.12': 1056 + resolution: {integrity: sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==} 1042 1057 engines: {node: '>=18'} 1043 1058 cpu: [x64] 1044 1059 os: [netbsd] 1045 1060 1046 - '@esbuild/netbsd-x64@0.25.5': 1047 - resolution: {integrity: sha512-WOb5fKrvVTRMfWFNCroYWWklbnXH0Q5rZppjq0vQIdlsQKuw6mdSihwSo4RV/YdQ5UCKKvBy7/0ZZYLBZKIbwQ==} 1061 + '@esbuild/netbsd-x64@0.27.0': 1062 + resolution: {integrity: sha512-xbbOdfn06FtcJ9d0ShxxvSn2iUsGd/lgPIO2V3VZIPDbEaIj1/3nBBe1AwuEZKXVXkMmpr6LUAgMkLD/4D2PPA==} 1048 1063 engines: {node: '>=18'} 1049 1064 cpu: [x64] 1050 1065 os: [netbsd] 1051 1066 1052 - '@esbuild/openbsd-arm64@0.25.4': 1053 - resolution: {integrity: sha512-Ct2WcFEANlFDtp1nVAXSNBPDxyU+j7+tId//iHXU2f/lN5AmO4zLyhDcpR5Cz1r08mVxzt3Jpyt4PmXQ1O6+7A==} 1067 + '@esbuild/openbsd-arm64@0.25.12': 1068 + resolution: {integrity: sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==} 1054 1069 engines: {node: '>=18'} 1055 1070 cpu: [arm64] 1056 1071 os: [openbsd] 1057 1072 1058 - '@esbuild/openbsd-arm64@0.25.5': 1059 - resolution: {integrity: sha512-7A208+uQKgTxHd0G0uqZO8UjK2R0DDb4fDmERtARjSHWxqMTye4Erz4zZafx7Di9Cv+lNHYuncAkiGFySoD+Mw==} 1073 + '@esbuild/openbsd-arm64@0.27.0': 1074 + resolution: {integrity: sha512-fWgqR8uNbCQ/GGv0yhzttj6sU/9Z5/Sv/VGU3F5OuXK6J6SlriONKrQ7tNlwBrJZXRYk5jUhuWvF7GYzGguBZQ==} 1060 1075 engines: {node: '>=18'} 1061 1076 cpu: [arm64] 1062 1077 os: [openbsd] 1063 1078 1064 - '@esbuild/openbsd-x64@0.25.4': 1065 - resolution: {integrity: sha512-xAGGhyOQ9Otm1Xu8NT1ifGLnA6M3sJxZ6ixylb+vIUVzvvd6GOALpwQrYrtlPouMqd/vSbgehz6HaVk4+7Afhw==} 1079 + '@esbuild/openbsd-x64@0.25.12': 1080 + resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==} 1066 1081 engines: {node: '>=18'} 1067 1082 cpu: [x64] 1068 1083 os: [openbsd] 1069 1084 1070 - '@esbuild/openbsd-x64@0.25.5': 1071 - resolution: {integrity: sha512-G4hE405ErTWraiZ8UiSoesH8DaCsMm0Cay4fsFWOOUcz8b8rC6uCvnagr+gnioEjWn0wC+o1/TAHt+It+MpIMg==} 1085 + '@esbuild/openbsd-x64@0.27.0': 1086 + resolution: {integrity: sha512-aCwlRdSNMNxkGGqQajMUza6uXzR/U0dIl1QmLjPtRbLOx3Gy3otfFu/VjATy4yQzo9yFDGTxYDo1FfAD9oRD2A==} 1072 1087 engines: {node: '>=18'} 1073 1088 cpu: [x64] 1074 1089 os: [openbsd] 1075 1090 1076 - '@esbuild/sunos-x64@0.25.4': 1077 - 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==} 1078 1105 engines: {node: '>=18'} 1079 1106 cpu: [x64] 1080 1107 os: [sunos] 1081 1108 1082 - '@esbuild/sunos-x64@0.25.5': 1083 - resolution: {integrity: sha512-l+azKShMy7FxzY0Rj4RCt5VD/q8mG/e+mDivgspo+yL8zW7qEwctQ6YqKX34DTEleFAvCIUviCFX1SDZRSyMQA==} 1109 + '@esbuild/sunos-x64@0.27.0': 1110 + resolution: {integrity: sha512-Q1KY1iJafM+UX6CFEL+F4HRTgygmEW568YMqDA5UV97AuZSm21b7SXIrRJDwXWPzr8MGr75fUZPV67FdtMHlHA==} 1084 1111 engines: {node: '>=18'} 1085 1112 cpu: [x64] 1086 1113 os: [sunos] 1087 1114 1088 - '@esbuild/win32-arm64@0.25.4': 1089 - resolution: {integrity: sha512-AVUP428VQTSddguz9dO9ngb+E5aScyg7nOeJDrF1HPYu555gmza3bDGMPhmVXL8svDSoqPCsCPjb265yG/kLKQ==} 1115 + '@esbuild/win32-arm64@0.25.12': 1116 + resolution: {integrity: sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==} 1090 1117 engines: {node: '>=18'} 1091 1118 cpu: [arm64] 1092 1119 os: [win32] 1093 1120 1094 - '@esbuild/win32-arm64@0.25.5': 1095 - resolution: {integrity: sha512-O2S7SNZzdcFG7eFKgvwUEZ2VG9D/sn/eIiz8XRZ1Q/DO5a3s76Xv0mdBzVM5j5R639lXQmPmSo0iRpHqUUrsxw==} 1121 + '@esbuild/win32-arm64@0.27.0': 1122 + resolution: {integrity: sha512-W1eyGNi6d+8kOmZIwi/EDjrL9nxQIQ0MiGqe/AWc6+IaHloxHSGoeRgDRKHFISThLmsewZ5nHFvGFWdBYlgKPg==} 1096 1123 engines: {node: '>=18'} 1097 1124 cpu: [arm64] 1098 1125 os: [win32] 1099 1126 1100 - '@esbuild/win32-ia32@0.25.4': 1101 - resolution: {integrity: sha512-i1sW+1i+oWvQzSgfRcxxG2k4I9n3O9NRqy8U+uugaT2Dy7kLO9Y7wI72haOahxceMX8hZAzgGou1FhndRldxRg==} 1127 + '@esbuild/win32-ia32@0.25.12': 1128 + resolution: {integrity: sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==} 1102 1129 engines: {node: '>=18'} 1103 1130 cpu: [ia32] 1104 1131 os: [win32] 1105 1132 1106 - '@esbuild/win32-ia32@0.25.5': 1107 - resolution: {integrity: sha512-onOJ02pqs9h1iMJ1PQphR+VZv8qBMQ77Klcsqv9CNW2w6yLqoURLcgERAIurY6QE63bbLuqgP9ATqajFLK5AMQ==} 1133 + '@esbuild/win32-ia32@0.27.0': 1134 + resolution: {integrity: sha512-30z1aKL9h22kQhilnYkORFYt+3wp7yZsHWus+wSKAJR8JtdfI76LJ4SBdMsCopTR3z/ORqVu5L1vtnHZWVj4cQ==} 1108 1135 engines: {node: '>=18'} 1109 1136 cpu: [ia32] 1110 1137 os: [win32] 1111 1138 1112 - '@esbuild/win32-x64@0.25.4': 1113 - resolution: {integrity: sha512-nOT2vZNw6hJ+z43oP1SPea/G/6AbN6X+bGNhNuq8NtRHy4wsMhw765IKLNmnjek7GvjWBYQ8Q5VBoYTFg9y1UQ==} 1139 + '@esbuild/win32-x64@0.25.12': 1140 + resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==} 1114 1141 engines: {node: '>=18'} 1115 1142 cpu: [x64] 1116 1143 os: [win32] 1117 1144 1118 - '@esbuild/win32-x64@0.25.5': 1119 - resolution: {integrity: sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g==} 1145 + '@esbuild/win32-x64@0.27.0': 1146 + resolution: {integrity: sha512-aIitBcjQeyOhMTImhLZmtxfdOcuNRpwlPNmlFKPcHQYPhEssw75Cl1TSXJXpMkzaua9FUetx/4OQKq7eJul5Cg==} 1120 1147 engines: {node: '>=18'} 1121 1148 cpu: [x64] 1122 1149 os: [win32] ··· 1131 1158 peerDependencies: 1132 1159 solid-js: ^1.8.5 1133 1160 1134 - '@floating-ui/core@1.7.1': 1135 - resolution: {integrity: sha512-azI0DrjMMfIug/ExbBaeDVJXcY0a7EPvPjb2xAJPa4HeimBX+Z18HK8QQR3jb6356SnDDdxx+hinMLcJEDdOjw==} 1161 + '@floating-ui/core@1.7.3': 1162 + resolution: {integrity: sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w==} 1136 1163 1137 - '@floating-ui/dom@1.7.1': 1138 - resolution: {integrity: sha512-cwsmW/zyw5ltYTUeeYJ60CnQuPqmGwuGVhG9w0PRaRKkAyi38BT5CKrpIbb+jtahSwUl04cWzSx9ZOIxeS6RsQ==} 1164 + '@floating-ui/dom@1.7.4': 1165 + resolution: {integrity: sha512-OOchDgh4F2CchOX94cRVqhvy7b3AFb+/rQXyswmzmGakRfkMgoWVjfnLWkRirfLEfuD4ysVW16eXzwt3jHIzKA==} 1139 1166 1140 - '@floating-ui/utils@0.2.9': 1141 - resolution: {integrity: sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==} 1167 + '@floating-ui/utils@0.2.10': 1168 + resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==} 1142 1169 1143 1170 '@img/sharp-darwin-arm64@0.33.5': 1144 1171 resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==} ··· 1245 1272 cpu: [x64] 1246 1273 os: [win32] 1247 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 + 1248 1283 '@isaacs/cliui@8.0.2': 1249 1284 resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} 1250 1285 engines: {node: '>=12'} 1251 1286 1252 - '@jridgewell/gen-mapping@0.3.8': 1253 - resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} 1254 - 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==} 1255 1292 1256 1293 '@jridgewell/resolve-uri@3.1.2': 1257 1294 resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 1258 1295 engines: {node: '>=6.0.0'} 1259 1296 1260 - '@jridgewell/set-array@1.2.1': 1261 - resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} 1262 - engines: {node: '>=6.0.0'} 1263 - 1264 - '@jridgewell/source-map@0.3.6': 1265 - resolution: {integrity: sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==} 1266 - 1267 - '@jridgewell/sourcemap-codec@1.5.0': 1268 - resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} 1297 + '@jridgewell/source-map@0.3.11': 1298 + resolution: {integrity: sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==} 1269 1299 1270 1300 '@jridgewell/sourcemap-codec@1.5.5': 1271 1301 resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} 1272 1302 1273 - '@jridgewell/trace-mapping@0.3.25': 1274 - resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} 1303 + '@jridgewell/trace-mapping@0.3.31': 1304 + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} 1275 1305 1276 1306 '@jridgewell/trace-mapping@0.3.9': 1277 1307 resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} 1278 1308 1279 - '@jsr/mary__array-fns@0.1.4': 1280 - 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} 1281 1311 1282 1312 '@jsr/mary__async-iterator-fns@0.1.1': 1283 1313 resolution: {integrity: sha512-ef/TDpu6yGTAb4fbGEjSFPO7u49WrxJeXa9T6fvmjlpEfR84qxrjTR6MEUQ1hMySD0+O9yQKvBl/KL5x7K9+iA==, tarball: https://npm.jsr.io/~/11/@jsr/mary__async-iterator-fns/0.1.1.tgz} ··· 1297 1327 '@kelinci/basa-lexicons@1.0.0': 1298 1328 resolution: {integrity: sha512-QND0ktwpGySoHhqRUrLZ3YybyHnOkV6mGCLn75yJWl9PpKIMh/gmAyvXIo1ZuzSHu4v6xcSyi3A78QoH4MhTGw==} 1299 1329 1300 - '@mjackson/node-fetch-server@0.6.1': 1301 - resolution: {integrity: sha512-9ZJnk/DJjt805uv5PPv11haJIW+HHf3YEEyVXv+8iLQxLD/iXA68FH220XoiTPBC4gCg5q+IMadDw8qPqlA5wg==} 1302 - 1303 - '@noble/secp256k1@2.3.0': 1304 - resolution: {integrity: sha512-0TQed2gcBbIrh7Ccyw+y/uZQvbJwm7Ao4scBUxqpBCcsOlZG0O4KGfjtNAy/li4W8n1xt3dxrwJ0beZ2h2G6Kw==} 1330 + '@noble/secp256k1@3.0.0': 1331 + resolution: {integrity: sha512-NJBaR352KyIvj3t6sgT/+7xrNyF9Xk9QlLSIqUGVUYlsnDTAUqY8LOmwpcgEx4AMJXRITQ5XEVHD+mMaPfr3mg==} 1305 1332 1306 1333 '@nodelib/fs.scandir@2.1.5': 1307 1334 resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} ··· 1330 1357 resolution: {integrity: sha512-/lwVUaDPCeopUL6XPz2B2ZwaQeIbctP8YxNIyCxunxVKWhCAhii+w0ourNK7JedyGIcM+DaXZTeRlcbgEWaZig==} 1331 1358 engines: {node: '>=12.4.0'} 1332 1359 1333 - '@pkgjs/parseargs@0.11.0': 1334 - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} 1335 - engines: {node: '>=14'} 1336 - 1337 1360 '@poppinss/colors@4.1.5': 1338 1361 resolution: {integrity: sha512-FvdDqtcRCtz6hThExcFOgW0cWX+xwSMWcRuQe5ZEb2m7cVQOAVZOIMt+/v9RxGiD9/OY16qJBXK4CVKWAPalBw==} 1339 1362 1340 - '@poppinss/dumper@0.6.4': 1341 - resolution: {integrity: sha512-iG0TIdqv8xJ3Lt9O8DrPRxw1MRLjNpoqiSGU03P/wNLP/s0ra0udPJ1J2Tx5M0J3H/cVyEgpbn8xUKRY9j59kQ==} 1363 + '@poppinss/dumper@0.6.5': 1364 + resolution: {integrity: sha512-NBdYIb90J7LfOI32dOewKI1r7wnkiH6m920puQ3qHUeZkxNkQiFnXVWoE6YtFSv6QOiPPf7ys6i+HWWecDz7sw==} 1342 1365 1343 1366 '@poppinss/exception@1.2.2': 1344 1367 resolution: {integrity: sha512-m7bpKCD4QMlFCjA/nKTs23fuvoVFoA83brRKmObCUNmi/9tVu8Ve3w4YQAnJu4q3Tjf5fr685HYIC/IA2zHRSg==} 1345 1368 1369 + '@remix-run/node-fetch-server@0.8.1': 1370 + resolution: {integrity: sha512-J1dev372wtJqmqn9U/qbpbZxbJSQrogNN2+Qv1lKlpATpe/WQ9aCZfl/xSb9d2Rgh1IyLSvNxZAXPZxruO6Xig==} 1371 + 1346 1372 '@rollup/plugin-babel@5.3.1': 1347 1373 resolution: {integrity: sha512-WFfdLWU/xVWKeRQnKmIAQULUI7Il0gZnBIH/ZFO069wYIfPu+8zrfp/KMW0atmELoRDq8FbiP3VCss9MhCut7Q==} 1348 1374 engines: {node: '>= 10.0.0'} ··· 1368 1394 peerDependencies: 1369 1395 rollup: ^1.20.0 || ^2.0.0 1370 1396 1371 - '@rollup/plugin-replace@6.0.2': 1372 - resolution: {integrity: sha512-7QaYCf8bqF04dOy7w/eHmJeNExxTYwvKAmlSAH/EaWWUzbT0h5sbF6bktFoX/0F/0qwng5/dWFMyf3gzaM8DsQ==} 1373 - engines: {node: '>=14.0.0'} 1374 - peerDependencies: 1375 - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 1376 - peerDependenciesMeta: 1377 - rollup: 1378 - optional: true 1379 - 1380 1397 '@rollup/plugin-terser@0.4.4': 1381 1398 resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==} 1382 1399 engines: {node: '>=14.0.0'} ··· 1392 1409 peerDependencies: 1393 1410 rollup: ^1.20.0||^2.0.0 1394 1411 1395 - '@rollup/pluginutils@5.2.0': 1396 - resolution: {integrity: sha512-qWJ2ZTbmumwiLFomfzTyt5Kng4hwPi9rwCYN4SHb6eaRU1KNO4ccxINHr/VhH4GgPlt1XfSTLX2LBTme8ne4Zw==} 1412 + '@rollup/pluginutils@5.3.0': 1413 + resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==} 1397 1414 engines: {node: '>=14.0.0'} 1398 1415 peerDependencies: 1399 1416 rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 ··· 1401 1418 rollup: 1402 1419 optional: true 1403 1420 1404 - '@rollup/rollup-android-arm-eabi@4.44.0': 1405 - 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==} 1406 1423 cpu: [arm] 1407 1424 os: [android] 1408 1425 1409 - '@rollup/rollup-android-arm64@4.44.0': 1410 - resolution: {integrity: sha512-uNSk/TgvMbskcHxXYHzqwiyBlJ/lGcv8DaUfcnNwict8ba9GTTNxfn3/FAoFZYgkaXXAdrAA+SLyKplyi349Jw==} 1426 + '@rollup/rollup-android-arm64@4.53.3': 1427 + resolution: {integrity: sha512-CbDGaMpdE9sh7sCmTrTUyllhrg65t6SwhjlMJsLr+J8YjFuPmCEjbBSx4Z/e4SmDyH3aB5hGaJUP2ltV/vcs4w==} 1411 1428 cpu: [arm64] 1412 1429 os: [android] 1413 1430 1414 - '@rollup/rollup-darwin-arm64@4.44.0': 1415 - resolution: {integrity: sha512-VGF3wy0Eq1gcEIkSCr8Ke03CWT+Pm2yveKLaDvq51pPpZza3JX/ClxXOCmTYYq3us5MvEuNRTaeyFThCKRQhOA==} 1431 + '@rollup/rollup-darwin-arm64@4.53.3': 1432 + resolution: {integrity: sha512-Nr7SlQeqIBpOV6BHHGZgYBuSdanCXuw09hon14MGOLGmXAFYjx1wNvquVPmpZnl0tLjg25dEdr4IQ6GgyToCUA==} 1416 1433 cpu: [arm64] 1417 1434 os: [darwin] 1418 1435 1419 - '@rollup/rollup-darwin-x64@4.44.0': 1420 - resolution: {integrity: sha512-fBkyrDhwquRvrTxSGH/qqt3/T0w5Rg0L7ZIDypvBPc1/gzjJle6acCpZ36blwuwcKD/u6oCE/sRWlUAcxLWQbQ==} 1436 + '@rollup/rollup-darwin-x64@4.53.3': 1437 + resolution: {integrity: sha512-DZ8N4CSNfl965CmPktJ8oBnfYr3F8dTTNBQkRlffnUarJ2ohudQD17sZBa097J8xhQ26AwhHJ5mvUyQW8ddTsQ==} 1421 1438 cpu: [x64] 1422 1439 os: [darwin] 1423 1440 1424 - '@rollup/rollup-freebsd-arm64@4.44.0': 1425 - 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==} 1426 1443 cpu: [arm64] 1427 1444 os: [freebsd] 1428 1445 1429 - '@rollup/rollup-freebsd-x64@4.44.0': 1430 - resolution: {integrity: sha512-qC0kS48c/s3EtdArkimctY7h3nHicQeEUdjJzYVJYR3ct3kWSafmn6jkNCA8InbUdge6PVx6keqjk5lVGJf99g==} 1446 + '@rollup/rollup-freebsd-x64@4.53.3': 1447 + resolution: {integrity: sha512-lMfF8X7QhdQzseM6XaX0vbno2m3hlyZFhwcndRMw8fbAGUGL3WFMBdK0hbUBIUYcEcMhVLr1SIamDeuLBnXS+Q==} 1431 1448 cpu: [x64] 1432 1449 os: [freebsd] 1433 1450 1434 - '@rollup/rollup-linux-arm-gnueabihf@4.44.0': 1435 - 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==} 1436 1453 cpu: [arm] 1437 1454 os: [linux] 1438 1455 1439 - '@rollup/rollup-linux-arm-musleabihf@4.44.0': 1440 - resolution: {integrity: sha512-1exwiBFf4PU/8HvI8s80icyCcnAIB86MCBdst51fwFmH5dyeoWVPVgmQPcKrMtBQ0W5pAs7jBCWuRXgEpRzSCg==} 1456 + '@rollup/rollup-linux-arm-musleabihf@4.53.3': 1457 + resolution: {integrity: sha512-vTNlKq+N6CK/8UktsrFuc+/7NlEYVxgaEgRXVUVK258Z5ymho29skzW1sutgYjqNnquGwVUObAaxae8rZ6YMhg==} 1441 1458 cpu: [arm] 1442 1459 os: [linux] 1443 1460 1444 - '@rollup/rollup-linux-arm64-gnu@4.44.0': 1445 - resolution: {integrity: sha512-ZTR2mxBHb4tK4wGf9b8SYg0Y6KQPjGpR4UWwTFdnmjB4qRtoATZ5dWn3KsDwGa5Z2ZBOE7K52L36J9LueKBdOQ==} 1461 + '@rollup/rollup-linux-arm64-gnu@4.53.3': 1462 + resolution: {integrity: sha512-RGrFLWgMhSxRs/EWJMIFM1O5Mzuz3Xy3/mnxJp/5cVhZ2XoCAxJnmNsEyeMJtpK+wu0FJFWz+QF4mjCA7AUQ3w==} 1446 1463 cpu: [arm64] 1447 1464 os: [linux] 1448 1465 1449 - '@rollup/rollup-linux-arm64-musl@4.44.0': 1450 - resolution: {integrity: sha512-GFWfAhVhWGd4r6UxmnKRTBwP1qmModHtd5gkraeW2G490BpFOZkFtem8yuX2NyafIP/mGpRJgTJ2PwohQkUY/Q==} 1466 + '@rollup/rollup-linux-arm64-musl@4.53.3': 1467 + resolution: {integrity: sha512-kASyvfBEWYPEwe0Qv4nfu6pNkITLTb32p4yTgzFCocHnJLAHs+9LjUu9ONIhvfT/5lv4YS5muBHyuV84epBo/A==} 1451 1468 cpu: [arm64] 1452 1469 os: [linux] 1453 1470 1454 - '@rollup/rollup-linux-loongarch64-gnu@4.44.0': 1455 - resolution: {integrity: sha512-xw+FTGcov/ejdusVOqKgMGW3c4+AgqrfvzWEVXcNP6zq2ue+lsYUgJ+5Rtn/OTJf7e2CbgTFvzLW2j0YAtj0Gg==} 1471 + '@rollup/rollup-linux-loong64-gnu@4.53.3': 1472 + resolution: {integrity: sha512-JiuKcp2teLJwQ7vkJ95EwESWkNRFJD7TQgYmCnrPtlu50b4XvT5MOmurWNrCj3IFdyjBQ5p9vnrX4JM6I8OE7g==} 1456 1473 cpu: [loong64] 1457 1474 os: [linux] 1458 1475 1459 - '@rollup/rollup-linux-powerpc64le-gnu@4.44.0': 1460 - resolution: {integrity: sha512-bKGibTr9IdF0zr21kMvkZT4K6NV+jjRnBoVMt2uNMG0BYWm3qOVmYnXKzx7UhwrviKnmK46IKMByMgvpdQlyJQ==} 1476 + '@rollup/rollup-linux-ppc64-gnu@4.53.3': 1477 + resolution: {integrity: sha512-EoGSa8nd6d3T7zLuqdojxC20oBfNT8nexBbB/rkxgKj5T5vhpAQKKnD+h3UkoMuTyXkP5jTjK/ccNRmQrPNDuw==} 1461 1478 cpu: [ppc64] 1462 1479 os: [linux] 1463 1480 1464 - '@rollup/rollup-linux-riscv64-gnu@4.44.0': 1465 - 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==} 1466 1483 cpu: [riscv64] 1467 1484 os: [linux] 1468 1485 1469 - '@rollup/rollup-linux-riscv64-musl@4.44.0': 1470 - resolution: {integrity: sha512-TDKO8KlHJuvTEdfw5YYFBjhFts2TR0VpZsnLLSYmB7AaohJhM8ctDSdDnUGq77hUh4m/djRafw+9zQpkOanE2Q==} 1486 + '@rollup/rollup-linux-riscv64-musl@4.53.3': 1487 + resolution: {integrity: sha512-68k2g7+0vs2u9CxDt5ktXTngsxOQkSEV/xBbwlqYcUrAVh6P9EgMZvFsnHy4SEiUl46Xf0IObWVbMvPrr2gw8A==} 1471 1488 cpu: [riscv64] 1472 1489 os: [linux] 1473 1490 1474 - '@rollup/rollup-linux-s390x-gnu@4.44.0': 1475 - resolution: {integrity: sha512-8541GEyktXaw4lvnGp9m84KENcxInhAt6vPWJ9RodsB/iGjHoMB2Pp5MVBCiKIRxrxzJhGCxmNzdu+oDQ7kwRA==} 1491 + '@rollup/rollup-linux-s390x-gnu@4.53.3': 1492 + resolution: {integrity: sha512-VYsFMpULAz87ZW6BVYw3I6sWesGpsP9OPcyKe8ofdg9LHxSbRMd7zrVrr5xi/3kMZtpWL/wC+UIJWJYVX5uTKg==} 1476 1493 cpu: [s390x] 1477 1494 os: [linux] 1478 1495 1479 - '@rollup/rollup-linux-x64-gnu@4.44.0': 1480 - 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==} 1481 1498 cpu: [x64] 1482 1499 os: [linux] 1483 1500 1484 - '@rollup/rollup-linux-x64-musl@4.44.0': 1485 - 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==} 1486 1503 cpu: [x64] 1487 1504 os: [linux] 1488 1505 1489 - '@rollup/rollup-win32-arm64-msvc@4.44.0': 1490 - 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==} 1491 1513 cpu: [arm64] 1492 1514 os: [win32] 1493 1515 1494 - '@rollup/rollup-win32-ia32-msvc@4.44.0': 1495 - resolution: {integrity: sha512-3XJ0NQtMAXTWFW8FqZKcw3gOQwBtVWP/u8TpHP3CRPXD7Pd6s8lLdH3sHWh8vqKCyyiI8xW5ltJScQmBU9j7WA==} 1516 + '@rollup/rollup-win32-ia32-msvc@4.53.3': 1517 + resolution: {integrity: sha512-iah+THLcBJdpfZ1TstDFbKNznlzoxa8fmnFYK4V67HvmuNYkVdAywJSoteUszvBQ9/HqN2+9AZghbajMsFT+oA==} 1496 1518 cpu: [ia32] 1497 1519 os: [win32] 1498 1520 1499 - '@rollup/rollup-win32-x64-msvc@4.44.0': 1500 - resolution: {integrity: sha512-Q2Mgwt+D8hd5FIPUuPDsvPR7Bguza6yTkJxspDGkZj7tBRn2y4KSWYuIXpftFSjBra76TbKerCV7rgFPQrn+wQ==} 1521 + '@rollup/rollup-win32-x64-gnu@4.53.3': 1522 + resolution: {integrity: sha512-J9QDiOIZlZLdcot5NXEepDkstocktoVjkaKUtqzgzpt2yWjGlbYiKyp05rWwk4nypbYUNoFAztEgixoLaSETkg==} 1501 1523 cpu: [x64] 1502 1524 os: [win32] 1503 1525 1504 - '@sindresorhus/is@7.0.2': 1505 - 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==} 1506 1533 engines: {node: '>=18'} 1507 1534 1508 - '@speed-highlight/core@1.2.7': 1509 - 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==} 1510 1540 1511 1541 '@surma/rollup-plugin-off-main-thread@2.2.3': 1512 1542 resolution: {integrity: sha512-lR8q/9W7hZpMWweNiAKU7NQerBnzQQLvi8qnTDU/fxItPhtZVMbPV3lbCwjhIlNBe9Bbr5V+KHshvWmVSG9cxQ==} ··· 1539 1569 '@types/babel__template@7.4.4': 1540 1570 resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} 1541 1571 1542 - '@types/babel__traverse@7.20.7': 1543 - resolution: {integrity: sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==} 1572 + '@types/babel__traverse@7.28.0': 1573 + resolution: {integrity: sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==} 1544 1574 1545 1575 '@types/dom-close-watcher@1.0.0': 1546 1576 resolution: {integrity: sha512-7pL0By56sVVGMSJ3HdSY+u08Id0ljStCaf1VnGFxwfpuNdA0HMz0sl2J24eSi9M6ptl9ySkVK35jF75Fn8trUg==} 1547 1577 1548 - '@types/dom-webcodecs@0.1.15': 1549 - 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==} 1550 1586 1551 1587 '@types/estree@0.0.39': 1552 1588 resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==} ··· 1554 1590 '@types/estree@1.0.8': 1555 1591 resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} 1556 1592 1557 - '@types/node@24.3.0': 1558 - resolution: {integrity: sha512-aPTXCrfwnDLj4VvXrm+UUCQjNEvJgNA8s5F1cvwQU+3KNltTOkBm1j30uNLyqqPNe7gE3KFzImYoZEfLhp4Yow==} 1593 + '@types/node@24.10.1': 1594 + resolution: {integrity: sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==} 1559 1595 1560 1596 '@types/resolve@1.20.2': 1561 1597 resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} 1562 1598 1563 1599 '@types/trusted-types@2.0.7': 1564 1600 resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} 1565 - 1566 - '@types/wicg-file-system-access@2020.9.8': 1567 - resolution: {integrity: sha512-ggMz8nOygG7d/stpH40WVaNvBwuyYLnrg5Mbyf6bmsj/8+gb6Ei4ZZ9/4PNpcPNTT8th9Q8sM8wYmWGjMWLX/A==} 1568 1601 1569 1602 acorn-walk@8.3.2: 1570 1603 resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==} ··· 1587 1620 resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 1588 1621 engines: {node: '>=8'} 1589 1622 1590 - ansi-regex@6.1.0: 1591 - resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} 1623 + ansi-regex@6.2.2: 1624 + resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} 1592 1625 engines: {node: '>=12'} 1593 1626 1594 1627 ansi-styles@4.3.0: 1595 1628 resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 1596 1629 engines: {node: '>=8'} 1597 1630 1598 - ansi-styles@6.2.1: 1599 - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} 1631 + ansi-styles@6.2.3: 1632 + resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==} 1600 1633 engines: {node: '>=12'} 1601 1634 1602 1635 any-promise@1.3.0: ··· 1616 1649 resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} 1617 1650 engines: {node: '>= 4.0.0'} 1618 1651 1619 - autoprefixer@10.4.21: 1620 - resolution: {integrity: sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==} 1652 + autoprefixer@10.4.22: 1653 + resolution: {integrity: sha512-ARe0v/t9gO28Bznv6GgqARmVqcWOV3mfgUPn9becPHMiD3o9BwlRgaeccZnwTpZ7Zwqrm+c1sUSsMxIzQzc8Xg==} 1621 1654 engines: {node: ^10 || ^12 || >=14} 1622 1655 hasBin: true 1623 1656 peerDependencies: 1624 1657 postcss: ^8.1.0 1625 1658 1626 - babel-plugin-jsx-dom-expressions@0.39.8: 1627 - 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==} 1628 1661 peerDependencies: 1629 1662 '@babel/core': ^7.20.12 1630 1663 1631 - babel-plugin-polyfill-corejs2@0.4.13: 1632 - resolution: {integrity: sha512-3sX/eOms8kd3q2KZ6DAhKPc0dgm525Gqq5NtWKZ7QYYZEv57OQ54KtblzJzH1lQF/eQxO8KjWGIK9IPUJNus5g==} 1664 + babel-plugin-polyfill-corejs2@0.4.14: 1665 + resolution: {integrity: sha512-Co2Y9wX854ts6U8gAAPXfn0GmAyctHuK8n0Yhfjd6t30g7yvKjspvvOo9yG+z52PZRgFErt7Ka2pYnXCjLKEpg==} 1633 1666 peerDependencies: 1634 1667 '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 1635 1668 1636 - babel-plugin-polyfill-corejs3@0.11.1: 1637 - resolution: {integrity: sha512-yGCqvBT4rwMczo28xkH/noxJ6MZ4nJfkVYdoDaC/utLtWrXxv27HVrzAeSbqR8SxDsp46n0YF47EbHoixy6rXQ==} 1669 + babel-plugin-polyfill-corejs3@0.13.0: 1670 + resolution: {integrity: sha512-U+GNwMdSFgzVmfhNm8GJUX88AadB3uo9KpJqS3FaqNIPKgySuvMb+bHPsOmmuWyIcuqZj/pzt1RUIUZns4y2+A==} 1638 1671 peerDependencies: 1639 1672 '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 1640 1673 1641 - babel-plugin-polyfill-regenerator@0.6.4: 1642 - resolution: {integrity: sha512-7gD3pRadPrbjhjLyxebmx/WrFYcuSjZ0XbdUujQMZ/fcE9oeewk2U/7PCvez84UeuK3oSjmPZ0Ch0dlupQvGzw==} 1674 + babel-plugin-polyfill-regenerator@0.6.5: 1675 + resolution: {integrity: sha512-ISqQ2frbiNU9vIJkzg7dlPpznPZ4jOiUQ1uSmB0fEHeowtN3COYRsXr/xexn64NpU13P06jc/L5TgiJXOgrbEg==} 1643 1676 peerDependencies: 1644 1677 '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 1645 1678 ··· 1648 1681 peerDependencies: 1649 1682 '@babel/core': ^7.24.4 1650 1683 1651 - babel-preset-solid@1.9.6: 1652 - resolution: {integrity: sha512-HXTK9f93QxoH8dYn1M2mJdOlWgMsR88Lg/ul6QCZGkNTktjTE5HAf93YxQumHoCudLEtZrU1cFCMFOVho6GqFg==} 1684 + babel-preset-solid@1.9.10: 1685 + resolution: {integrity: sha512-HCelrgua/Y+kqO8RyL04JBWS/cVdrtUv/h45GntgQY+cJl4eBcKkCDV3TdMjtKx1nXwRaR9QXslM/Npm1dxdZQ==} 1653 1686 peerDependencies: 1654 1687 '@babel/core': ^7.0.0 1688 + solid-js: ^1.9.10 1689 + peerDependenciesMeta: 1690 + solid-js: 1691 + optional: true 1655 1692 1656 1693 balanced-match@1.0.2: 1657 1694 resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 1658 1695 1696 + baseline-browser-mapping@2.9.3: 1697 + resolution: {integrity: sha512-8QdH6czo+G7uBsNo0GiUfouPN1lRzKdJTGnKXwe12gkFbnnOUaUKGN55dMkfy+mnxmvjwl9zcI4VncczcVXDhA==} 1698 + hasBin: true 1699 + 1659 1700 binary-extensions@2.3.0: 1660 1701 resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} 1661 1702 engines: {node: '>=8'} ··· 1666 1707 blake3-wasm@2.1.5: 1667 1708 resolution: {integrity: sha512-F1+K8EbfOZE49dtoPtmxUQrpXaBIl3ICvasLh+nJta0xkz+9kF/7uet9fLnwKqhDrmj6g+6K3Tw9yQPUg2ka5g==} 1668 1709 1669 - brace-expansion@1.1.12: 1670 - resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==} 1671 - 1672 1710 brace-expansion@2.0.2: 1673 1711 resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} 1674 1712 ··· 1676 1714 resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} 1677 1715 engines: {node: '>=8'} 1678 1716 1679 - browserslist@4.25.0: 1680 - resolution: {integrity: sha512-PJ8gYKeS5e/whHBh8xrwYK+dAvEj7JXtz6uTucnMRB8OiGTsKccFekoRrjajPBHV8oOY+2tI4uxeceSimKwMFA==} 1717 + browserslist@4.28.1: 1718 + resolution: {integrity: sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==} 1681 1719 engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 1682 1720 hasBin: true 1683 1721 ··· 1688 1726 resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} 1689 1727 engines: {node: '>= 6'} 1690 1728 1691 - caniuse-lite@1.0.30001724: 1692 - resolution: {integrity: sha512-WqJo7p0TbHDOythNTqYujmaJTvtYRZrjpP8TCvH6Vb9CYJerJNKamKzIWOM4BkQatWj9H2lYulpdAQNBe7QhNA==} 1693 - 1694 - chalk@4.1.2: 1695 - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 1696 - engines: {node: '>=10'} 1729 + caniuse-lite@1.0.30001759: 1730 + resolution: {integrity: sha512-Pzfx9fOKoKvevQf8oCXoyNRQ5QyxJj+3O0Rqx2V5oxT61KGx8+n6hV/IUyJeifUci2clnmmKVpvtiqRzgiWjSw==} 1697 1731 1698 1732 chokidar@3.6.0: 1699 1733 resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} ··· 1727 1761 resolution: {integrity: sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==} 1728 1762 engines: {node: '>=4.0.0'} 1729 1763 1730 - concat-map@0.0.1: 1731 - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 1732 - 1733 1764 convert-source-map@2.0.0: 1734 1765 resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} 1735 1766 1736 - cookie@1.0.2: 1737 - resolution: {integrity: sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==} 1767 + cookie@1.1.1: 1768 + resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==} 1738 1769 engines: {node: '>=18'} 1739 1770 1740 - core-js-compat@3.43.0: 1741 - resolution: {integrity: sha512-2GML2ZsCc5LR7hZYz4AXmjQw8zuy2T//2QntwdnpuYI7jteT6GVYJL7F6C2C57R7gSYrcqVW3lAALefdbhBLDA==} 1771 + core-js-compat@3.47.0: 1772 + resolution: {integrity: sha512-IGfuznZ/n7Kp9+nypamBhvwdwLsW6KC8IOaURw2doAK5e98AG3acVLdh0woOnEqCfUtS+Vu882JE4k/DAm3ItQ==} 1742 1773 1743 1774 cross-spawn@7.0.6: 1744 1775 resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} ··· 1753 1784 engines: {node: '>=4'} 1754 1785 hasBin: true 1755 1786 1756 - csstype@3.1.3: 1757 - resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} 1787 + csstype@3.2.3: 1788 + resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} 1758 1789 1759 - debug@4.4.1: 1760 - resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} 1790 + debug@4.4.3: 1791 + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} 1761 1792 engines: {node: '>=6.0'} 1762 1793 peerDependencies: 1763 1794 supports-color: '*' ··· 1772 1803 defu@6.1.4: 1773 1804 resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} 1774 1805 1775 - detect-libc@2.0.4: 1776 - resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==} 1806 + detect-libc@2.1.2: 1807 + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} 1777 1808 engines: {node: '>=8'} 1778 1809 1779 1810 didyoumean@1.2.2: ··· 1790 1821 engines: {node: '>=0.10.0'} 1791 1822 hasBin: true 1792 1823 1793 - electron-to-chromium@1.5.171: 1794 - resolution: {integrity: sha512-scWpzXEJEMrGJa4Y6m/tVotb0WuvNmasv3wWVzUAeCgKU0ToFOhUW6Z+xWnRQANMYGxN4ngJXIThgBJOqzVPCQ==} 1824 + electron-to-chromium@1.5.266: 1825 + resolution: {integrity: sha512-kgWEglXvkEfMH7rxP5OSZZwnaDWT7J9EoZCujhnpLbfi0bbNtRkgdX2E3gt0Uer11c61qCYktB3hwkAS325sJg==} 1795 1826 1796 1827 emoji-regex@8.0.0: 1797 1828 resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} ··· 1806 1837 error-stack-parser-es@1.0.5: 1807 1838 resolution: {integrity: sha512-5qucVt2XcuGMcEGgWI7i+yZpmpByQ8J1lHhcL7PwqCwu9FPP3VUXzT4ltHe5i2z9dePwEHcDVOAfSnHsOlCXRA==} 1808 1839 1809 - esbuild@0.25.4: 1810 - resolution: {integrity: sha512-8pgjLUcUjcgDg+2Q4NYXnPbo/vncAY4UmyaCm0jZevERqCHZIaWwdJHkf8XQtu4AxSKCdvrUbT0XUr1IdZzI8Q==} 1840 + esbuild@0.25.12: 1841 + resolution: {integrity: sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==} 1811 1842 engines: {node: '>=18'} 1812 1843 hasBin: true 1813 1844 1814 - esbuild@0.25.5: 1815 - resolution: {integrity: sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ==} 1845 + esbuild@0.27.0: 1846 + resolution: {integrity: sha512-jd0f4NHbD6cALCyGElNpGAOtWxSq46l9X/sWB0Nzd5er4Kz2YTm+Vl0qKFT9KUJvD8+fiO8AvoHhFvEatfVixA==} 1816 1847 engines: {node: '>=18'} 1817 1848 hasBin: true 1818 1849 ··· 1837 1868 resolution: {integrity: sha512-eNTPlAD67BmP31LDINZ3U7HSF8l57TxOY2PmBJ1shpCvpnxBF93mWCE8YHBnXs8qiUZJc9WDcWIeC3a2HIAMfw==} 1838 1869 engines: {node: '>=6'} 1839 1870 1840 - exsolve@1.0.7: 1841 - resolution: {integrity: sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw==} 1842 - 1843 1871 fast-deep-equal@3.1.3: 1844 1872 resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 1845 1873 ··· 1850 1878 fast-json-stable-stringify@2.1.0: 1851 1879 resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 1852 1880 1853 - fast-uri@3.0.6: 1854 - resolution: {integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==} 1881 + fast-uri@3.1.0: 1882 + resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} 1855 1883 1856 1884 fastq@1.19.1: 1857 1885 resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} 1858 1886 1859 - fdir@6.4.6: 1860 - 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'} 1861 1890 peerDependencies: 1862 1891 picomatch: ^3 || ^4 1863 1892 peerDependenciesMeta: ··· 1875 1904 resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} 1876 1905 engines: {node: '>=14'} 1877 1906 1878 - fraction.js@4.3.7: 1879 - resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} 1907 + fraction.js@5.3.4: 1908 + resolution: {integrity: sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==} 1880 1909 1881 1910 fs-extra@9.1.0: 1882 1911 resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} 1883 1912 engines: {node: '>=10'} 1884 - 1885 - fs.realpath@1.0.0: 1886 - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 1887 1913 1888 1914 fsevents@2.3.3: 1889 1915 resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} ··· 1912 1938 glob-to-regexp@0.4.1: 1913 1939 resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} 1914 1940 1915 - glob@10.4.5: 1916 - 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} 1917 1944 hasBin: true 1918 1945 1919 - glob@7.2.3: 1920 - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 1921 - deprecated: Glob versions prior to v9 are no longer supported 1922 - 1923 - globals@11.12.0: 1924 - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} 1925 - engines: {node: '>=4'} 1926 - 1927 1946 graceful-fs@4.2.11: 1928 1947 resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 1929 1948 1930 - has-flag@4.0.0: 1931 - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 1932 - engines: {node: '>=8'} 1933 - 1934 - hls.js@1.6.5: 1935 - resolution: {integrity: sha512-KMn5n7JBK+olC342740hDPHnGWfE8FiHtGMOdJPfUjRdARTWj9OB+8c13fnsf9sk1VtpuU2fKSgUjHvg4rNbzQ==} 1949 + hls.js@1.6.15: 1950 + resolution: {integrity: sha512-E3a5VwgXimGHwpRGV+WxRTKeSp2DW5DI5MWv34ulL3t5UNmyJWCQ1KmLEHbYzcfThfXG8amBL+fCYPneGHC4VA==} 1936 1951 1937 1952 html-entities@2.3.3: 1938 1953 resolution: {integrity: sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==} ··· 1943 1958 idb@8.0.3: 1944 1959 resolution: {integrity: sha512-LtwtVyVYO5BqRvcsKuB2iUMnHwPVByPCXFXOpuU96IZPPoPN6xjOGxZQ74pgSVVLQWtUOYgyeL4GE98BY5D3wg==} 1945 1960 1946 - inflight@1.0.6: 1947 - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 1948 - 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. 1949 - 1950 - inherits@2.0.4: 1951 - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 1952 - 1953 - is-arrayish@0.3.2: 1954 - resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} 1961 + is-arrayish@0.3.4: 1962 + resolution: {integrity: sha512-m6UrgzFVUYawGBh1dUsWR5M2Clqic9RVXC/9f8ceNlv2IcO9j9J/z8UoCLPqtsPBFNzEpfR3xftohbfqDx8EQA==} 1955 1963 1956 1964 is-binary-path@2.1.0: 1957 1965 resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} ··· 1995 2003 isexe@2.0.0: 1996 2004 resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 1997 2005 1998 - jackspeak@3.4.3: 1999 - 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} 2000 2009 2001 - jake@10.9.2: 2002 - resolution: {integrity: sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==} 2010 + jake@10.9.4: 2011 + resolution: {integrity: sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA==} 2003 2012 engines: {node: '>=10'} 2004 2013 hasBin: true 2005 2014 ··· 2013 2022 js-tokens@4.0.0: 2014 2023 resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 2015 2024 2016 - jsesc@3.0.2: 2017 - resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} 2018 - engines: {node: '>=6'} 2019 - hasBin: true 2020 - 2021 2025 jsesc@3.1.0: 2022 2026 resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} 2023 2027 engines: {node: '>=6'} ··· 2034 2038 engines: {node: '>=6'} 2035 2039 hasBin: true 2036 2040 2037 - jsonfile@6.1.0: 2038 - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} 2041 + jsonfile@6.2.0: 2042 + resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==} 2039 2043 2040 2044 jsonpointer@5.0.1: 2041 2045 resolution: {integrity: sha512-p/nXbhSEcu3pZRdkW1OfJhpsVtW1gd4Wa1fnQc9YLiTfAjn0312eMKimbdIQzuZl9aa9xUGaRlP9T/CJE/ditQ==} ··· 2065 2069 lodash@4.17.21: 2066 2070 resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} 2067 2071 2068 - lru-cache@10.4.3: 2069 - 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} 2070 2075 2071 2076 lru-cache@5.1.1: 2072 2077 resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} ··· 2074 2079 magic-string@0.25.9: 2075 2080 resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==} 2076 2081 2077 - magic-string@0.30.18: 2078 - resolution: {integrity: sha512-yi8swmWbO17qHhwIBNeeZxTceJMeBvWJaId6dyvTSOwTipqeHhMhOrz6513r1sOKnpvQ7zkhlG8tPrpilwTxHQ==} 2082 + mediabunny@1.25.7: 2083 + resolution: {integrity: sha512-DL0E1h29HTDaD9bYRXLSSHiAoLbDBksrdYS+4OHWA+aNhQeN+CAGEG7EU6wlhPZ8MOpwXIeC7uv06lo4ziohQQ==} 2079 2084 2080 2085 merge-anything@5.1.7: 2081 2086 resolution: {integrity: sha512-eRtbOb1N5iyH0tkQDAoQ4Ipsp/5qSR79Dzrz8hEPxRX10RWWR/iQXdoKmBSRCThY1Fh5EhISDtpSc93fpxUniQ==} ··· 2094 2099 engines: {node: '>=10.0.0'} 2095 2100 hasBin: true 2096 2101 2097 - miniflare@4.20250816.1: 2098 - resolution: {integrity: sha512-2X8yMy5wWw0dF1pNU4kztzZgp0jWv2KMqAOOb2FeQ/b11yck4aczmYHi7UYD3uyOgtj8WFhwG/KdRWAaATTtRA==} 2102 + miniflare@4.20251202.1: 2103 + resolution: {integrity: sha512-cRp2QNgnt9wpLMoNs4MOzzomyfe9UTS9sPRxIpUvxMl+mweCZ0FHpWWQvCnU7wWlfAP8VGZrHwqSsV5ERA6ahQ==} 2099 2104 engines: {node: '>=18.0.0'} 2100 2105 hasBin: true 2101 2106 2102 - minimatch@3.1.2: 2103 - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 2107 + minimatch@10.1.1: 2108 + resolution: {integrity: sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ==} 2109 + engines: {node: 20 || >=22} 2104 2110 2105 2111 minimatch@5.1.6: 2106 2112 resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} 2107 2113 engines: {node: '>=10'} 2108 - 2109 - minimatch@9.0.5: 2110 - resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} 2111 - engines: {node: '>=16 || 14 >=14.17'} 2112 2114 2113 2115 minipass@7.1.2: 2114 2116 resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} ··· 2125 2127 engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 2126 2128 hasBin: true 2127 2129 2128 - nanoid@5.1.5: 2129 - resolution: {integrity: sha512-Ir/+ZpE9fDsNH0hQ3C68uyThDXzYcim2EqcZ8zn8Chtt1iylPT9xXJB0kPCnqzgcEGikO9RxSrh63MsmVCU7Fw==} 2130 + nanoid@5.1.6: 2131 + resolution: {integrity: sha512-c7+7RQ+dMB5dPwwCp4ee1/iV/q2P6aK1mTZcfr1BTuVlyW9hJYiMPybJCcnBlQtuSmTIWNeazm/zqNoZSSElBg==} 2130 2132 engines: {node: ^18 || >=20} 2131 2133 hasBin: true 2132 2134 2133 - node-releases@2.0.19: 2134 - resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} 2135 + node-releases@2.0.27: 2136 + resolution: {integrity: sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==} 2135 2137 2136 2138 normalize-path@3.0.0: 2137 2139 resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} ··· 2149 2151 resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} 2150 2152 engines: {node: '>= 6'} 2151 2153 2152 - ohash@2.0.11: 2153 - resolution: {integrity: sha512-RdR9FQrFwNBNXAr4GixM8YaRZRJ5PUWbKYbE5eOsrwAjJW0q2REGcf79oYPsLyskQCZG1PLN+S/K1V00joZAoQ==} 2154 - 2155 - once@1.4.0: 2156 - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 2157 - 2158 2154 package-json-from-dist@1.0.1: 2159 2155 resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} 2160 2156 2161 2157 parse5@7.3.0: 2162 2158 resolution: {integrity: sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==} 2163 2159 2164 - path-is-absolute@1.0.1: 2165 - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 2166 - engines: {node: '>=0.10.0'} 2167 - 2168 2160 path-key@3.1.1: 2169 2161 resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 2170 2162 engines: {node: '>=8'} ··· 2172 2164 path-parse@1.0.7: 2173 2165 resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 2174 2166 2175 - path-scurry@1.11.1: 2176 - resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} 2177 - 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} 2178 2170 2179 2171 path-to-regexp@6.3.0: 2180 2172 resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==} ··· 2189 2181 resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 2190 2182 engines: {node: '>=8.6'} 2191 2183 2192 - picomatch@4.0.2: 2193 - resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} 2184 + picomatch@4.0.3: 2185 + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} 2194 2186 engines: {node: '>=12'} 2195 2187 2196 2188 pify@2.3.0: ··· 2207 2199 peerDependencies: 2208 2200 postcss: ^8.0.0 2209 2201 2210 - postcss-js@4.0.1: 2211 - resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} 2202 + postcss-js@4.1.0: 2203 + resolution: {integrity: sha512-oIAOTqgIo7q2EOwbhb8UalYePMvYoIeRY2YKntdpFQXNosSu3vLrniGgmH9OKs/qAkfoj5oB3le/7mINW1LCfw==} 2212 2204 engines: {node: ^12 || ^14 || >= 16} 2213 2205 peerDependencies: 2214 2206 postcss: ^8.4.21 2215 2207 2216 - postcss-load-config@4.0.2: 2217 - resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} 2218 - 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'} 2219 2211 peerDependencies: 2212 + jiti: '>=1.21.0' 2220 2213 postcss: '>=8.0.9' 2221 - ts-node: '>=9.0.0' 2214 + tsx: ^4.8.1 2215 + yaml: ^2.4.2 2222 2216 peerDependenciesMeta: 2217 + jiti: 2218 + optional: true 2223 2219 postcss: 2224 2220 optional: true 2225 - ts-node: 2221 + tsx: 2222 + optional: true 2223 + yaml: 2226 2224 optional: true 2227 2225 2228 2226 postcss-nested@6.2.0: ··· 2242 2240 resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} 2243 2241 engines: {node: ^10 || ^12 || >=14} 2244 2242 2245 - prettier-plugin-tailwindcss@0.6.13: 2246 - resolution: {integrity: sha512-uQ0asli1+ic8xrrSmIOaElDu0FacR4x69GynTh2oZjFY10JUt6EEumTQl5tB4fMeD6I1naKd+4rXQQ7esT2i1g==} 2247 - engines: {node: '>=14.21.3'} 2243 + prettier-plugin-tailwindcss@0.7.2: 2244 + resolution: {integrity: sha512-LkphyK3Fw+q2HdMOoiEHWf93fNtYJwfamoKPl7UwtjFQdei/iIBoX11G6j706FzN3ymX9mPVi97qIY8328vdnA==} 2245 + engines: {node: '>=20.19'} 2248 2246 peerDependencies: 2249 2247 '@ianvs/prettier-plugin-sort-imports': '*' 2248 + '@prettier/plugin-hermes': '*' 2249 + '@prettier/plugin-oxc': '*' 2250 2250 '@prettier/plugin-pug': '*' 2251 2251 '@shopify/prettier-plugin-liquid': '*' 2252 2252 '@trivago/prettier-plugin-sort-imports': '*' ··· 2254 2254 prettier: ^3.0 2255 2255 prettier-plugin-astro: '*' 2256 2256 prettier-plugin-css-order: '*' 2257 - prettier-plugin-import-sort: '*' 2258 2257 prettier-plugin-jsdoc: '*' 2259 2258 prettier-plugin-marko: '*' 2260 2259 prettier-plugin-multiline-arrays: '*' 2261 2260 prettier-plugin-organize-attributes: '*' 2262 2261 prettier-plugin-organize-imports: '*' 2263 2262 prettier-plugin-sort-imports: '*' 2264 - prettier-plugin-style-order: '*' 2265 2263 prettier-plugin-svelte: '*' 2266 2264 peerDependenciesMeta: 2267 2265 '@ianvs/prettier-plugin-sort-imports': 2268 2266 optional: true 2267 + '@prettier/plugin-hermes': 2268 + optional: true 2269 + '@prettier/plugin-oxc': 2270 + optional: true 2269 2271 '@prettier/plugin-pug': 2270 2272 optional: true 2271 2273 '@shopify/prettier-plugin-liquid': ··· 2278 2280 optional: true 2279 2281 prettier-plugin-css-order: 2280 2282 optional: true 2281 - prettier-plugin-import-sort: 2282 - optional: true 2283 2283 prettier-plugin-jsdoc: 2284 2284 optional: true 2285 2285 prettier-plugin-marko: ··· 2292 2292 optional: true 2293 2293 prettier-plugin-sort-imports: 2294 2294 optional: true 2295 - prettier-plugin-style-order: 2296 - optional: true 2297 2295 prettier-plugin-svelte: 2298 2296 optional: true 2299 2297 2300 - prettier@3.6.0: 2301 - resolution: {integrity: sha512-ujSB9uXHJKzM/2GBuE0hBOUgC77CN3Bnpqa+g80bkv3T3A93wL/xlzDATHhnhkzifz/UE2SNOvmbTz5hSkDlHw==} 2298 + prettier@3.7.4: 2299 + resolution: {integrity: sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==} 2302 2300 engines: {node: '>=14'} 2303 2301 hasBin: true 2304 2302 ··· 2330 2328 resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} 2331 2329 engines: {node: '>=8.10.0'} 2332 2330 2333 - regenerate-unicode-properties@10.2.0: 2334 - resolution: {integrity: sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==} 2331 + regenerate-unicode-properties@10.2.2: 2332 + resolution: {integrity: sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g==} 2335 2333 engines: {node: '>=4'} 2336 2334 2337 2335 regenerate@1.4.2: 2338 2336 resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} 2339 2337 2340 - regexpu-core@6.2.0: 2341 - resolution: {integrity: sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==} 2338 + regexpu-core@6.4.0: 2339 + resolution: {integrity: sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==} 2342 2340 engines: {node: '>=4'} 2343 2341 2344 2342 regjsgen@0.8.0: 2345 2343 resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==} 2346 2344 2347 - regjsparser@0.12.0: 2348 - resolution: {integrity: sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==} 2345 + regjsparser@0.13.0: 2346 + resolution: {integrity: sha512-NZQZdC5wOE/H3UT28fVGL+ikOZcEzfMGk/c3iN9UGxzWHMa1op7274oyiUVrAG4B2EuFhus8SvkaYnhvW92p9Q==} 2349 2347 hasBin: true 2350 2348 2351 2349 require-from-string@2.0.2: 2352 2350 resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} 2353 2351 engines: {node: '>=0.10.0'} 2354 2352 2355 - resolve@1.22.10: 2356 - resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} 2353 + resolve@1.22.11: 2354 + resolution: {integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==} 2357 2355 engines: {node: '>= 0.4'} 2358 2356 hasBin: true 2359 2357 ··· 2366 2364 engines: {node: '>=10.0.0'} 2367 2365 hasBin: true 2368 2366 2369 - rollup@4.44.0: 2370 - resolution: {integrity: sha512-qHcdEzLCiktQIfwBq420pn2dP+30uzqYxv9ETm91wdt2R9AFcWfjNAmje4NWlnCIQ5RMTzVf0ZyisOKqHR6RwA==} 2367 + rollup@4.53.3: 2368 + resolution: {integrity: sha512-w8GmOxZfBmKknvdXU1sdM9NHcoQejwF/4mNgj2JuEEdRaHwwF12K7e9eXn1nLZ07ad+du76mkVsyeb2rKGllsA==} 2371 2369 engines: {node: '>=18.0.0', npm: '>=8.0.0'} 2372 2370 hasBin: true 2373 2371 ··· 2378 2376 resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} 2379 2377 hasBin: true 2380 2378 2381 - semver@7.7.2: 2382 - resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} 2379 + semver@7.7.3: 2380 + resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==} 2383 2381 engines: {node: '>=10'} 2384 2382 hasBin: true 2385 2383 2386 2384 serialize-javascript@6.0.2: 2387 2385 resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} 2388 2386 2389 - seroval-plugins@1.3.2: 2390 - resolution: {integrity: sha512-0QvCV2lM3aj/U3YozDiVwx9zpH0q8A60CTWIv4Jszj/givcudPb48B+rkU5D51NJ0pTpweGMttHjboPa9/zoIQ==} 2387 + seroval-plugins@1.3.3: 2388 + resolution: {integrity: sha512-16OL3NnUBw8JG1jBLUoZJsLnQq0n5Ua6aHalhJK4fMQkz1lqR7Osz1sA30trBtd9VUDc2NgkuRCn8+/pBwqZ+w==} 2391 2389 engines: {node: '>=10'} 2392 2390 peerDependencies: 2393 2391 seroval: ^1.0 ··· 2412 2410 resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} 2413 2411 engines: {node: '>=14'} 2414 2412 2415 - simple-swizzle@0.2.2: 2416 - 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==} 2417 2415 2418 2416 smob@1.5.0: 2419 2417 resolution: {integrity: sha512-g6T+p7QO8npa+/hNx9ohv1E5pVCmWrVCUzUXJyLdMmftX6ER0oiWY/w9knEonLpnOp6b6FenKnMfR8gqwWdwig==} ··· 2425 2423 '@floating-ui/dom': ^1.0 2426 2424 solid-js: ^1.3 2427 2425 2428 - solid-js@1.9.7: 2429 - resolution: {integrity: sha512-/saTKi8iWEM233n5OSi1YHCCuh66ZIQ7aK2hsToPe4tqGm7qAejU1SwNuTPivbWAYq7SjuHVVYxxuZQNRbICiw==} 2426 + solid-js@1.9.10: 2427 + resolution: {integrity: sha512-Coz956cos/EPDlhs6+jsdTxKuJDPT7B5SVIWgABwROyxjY7Xbr8wkzD68Et+NxnV7DLJ3nJdAC2r9InuV/4Jew==} 2430 2428 2431 2429 solid-refresh@0.6.3: 2432 2430 resolution: {integrity: sha512-F3aPsX6hVw9ttm5LYlth8Q15x6MlI/J3Dn+o3EQyRTtTxidepSTwAYdozt01/YA+7ObcciagGEyXIopGZzQtbA==} ··· 2447 2445 source-map@0.8.0-beta.0: 2448 2446 resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} 2449 2447 engines: {node: '>= 8'} 2448 + deprecated: The work that was done in this beta branch won't be included in future versions 2450 2449 2451 2450 sourcemap-codec@1.4.8: 2452 2451 resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} ··· 2472 2471 resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 2473 2472 engines: {node: '>=8'} 2474 2473 2475 - strip-ansi@7.1.0: 2476 - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} 2474 + strip-ansi@7.1.2: 2475 + resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==} 2477 2476 engines: {node: '>=12'} 2478 2477 2479 2478 strip-comments@2.0.1: 2480 2479 resolution: {integrity: sha512-ZprKx+bBLXv067WTCALv8SSz5l2+XhpYCsVtSqlMnkAXMWDq+/ekVbl1ghqP9rUHTzv6sm/DwCOiYutU/yp1fw==} 2481 2480 engines: {node: '>=10'} 2482 2481 2483 - sucrase@3.35.0: 2484 - resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} 2482 + sucrase@3.35.1: 2483 + resolution: {integrity: sha512-DhuTmvZWux4H1UOnWMB3sk0sbaCVOoQZjv8u1rDoTV0HTdGem9hkAZtl4JZy8P2z4Bg0nT+YMeOFyVr4zcG5Tw==} 2485 2484 engines: {node: '>=16 || 14 >=14.17'} 2486 2485 hasBin: true 2487 2486 2488 - supports-color@10.2.0: 2489 - resolution: {integrity: sha512-5eG9FQjEjDbAlI5+kdpdyPIBMRH4GfTVDGREVupaZHmVoppknhM29b/S9BkQz7cathp85BVgRi/As3Siln7e0Q==} 2487 + supports-color@10.2.2: 2488 + resolution: {integrity: sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==} 2490 2489 engines: {node: '>=18'} 2491 2490 2492 - supports-color@7.2.0: 2493 - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 2494 - engines: {node: '>=8'} 2495 - 2496 2491 supports-preserve-symlinks-flag@1.0.0: 2497 2492 resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 2498 2493 engines: {node: '>= 0.4'} 2499 2494 2500 - tailwindcss@3.4.17: 2501 - resolution: {integrity: sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og==} 2495 + tailwindcss@3.4.18: 2496 + resolution: {integrity: sha512-6A2rnmW5xZMdw11LYjhcI5846rt9pbLSabY5XPxo+XWdxwZaFEn47Go4NzFiHu9sNNmr/kXivP1vStfvMaK1GQ==} 2502 2497 engines: {node: '>=14.0.0'} 2503 2498 hasBin: true 2504 2499 ··· 2510 2505 resolution: {integrity: sha512-G13vtMYPT/J8A4X2SjdtBTphZlrp1gKv6hZiOjw14RCWg6GbHuQBGtjlx75xLbYV/wEc0D7G5K4rxKP/cXk8Bw==} 2511 2506 engines: {node: '>=10'} 2512 2507 2513 - terser@5.43.1: 2514 - resolution: {integrity: sha512-+6erLbBm0+LROX2sPXlUYx/ux5PyE9K/a92Wrt6oA+WDAoFTdpHE5tCYCI5PNzq2y8df4rA+QgHLJuR4jNymsg==} 2508 + terser@5.44.1: 2509 + resolution: {integrity: sha512-t/R3R/n0MSwnnazuPpPNVO60LX0SKL45pyl9YlvxIdkH0Of7D5qM2EVe+yASRIlY5pZ73nclYJfNANGWPwFDZw==} 2515 2510 engines: {node: '>=10'} 2516 2511 hasBin: true 2517 2512 ··· 2522 2517 thenify@3.3.1: 2523 2518 resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} 2524 2519 2525 - tinyglobby@0.2.14: 2526 - resolution: {integrity: sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==} 2520 + tinyglobby@0.2.15: 2521 + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} 2527 2522 engines: {node: '>=12.0.0'} 2528 2523 2529 2524 to-regex-range@5.0.1: ··· 2543 2538 resolution: {integrity: sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==} 2544 2539 engines: {node: '>=10'} 2545 2540 2546 - typescript@5.8.3: 2547 - resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} 2541 + typescript@5.9.3: 2542 + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} 2548 2543 engines: {node: '>=14.17'} 2549 2544 hasBin: true 2550 2545 2551 - ufo@1.6.1: 2552 - resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==} 2546 + undici-types@7.16.0: 2547 + resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} 2553 2548 2554 - undici-types@7.10.0: 2555 - resolution: {integrity: sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==} 2556 - 2557 - undici@7.15.0: 2558 - resolution: {integrity: sha512-7oZJCPvvMvTd0OlqWsIxTuItTpJBpU1tcbVl24FMn3xt3+VSunwUasmfPJRE57oNO1KsZ4PgA1xTdAX4hq8NyQ==} 2549 + undici@7.14.0: 2550 + resolution: {integrity: sha512-Vqs8HTzjpQXZeXdpsfChQTlafcMQaaIwnGwLam1wudSSjlJeQ3bw1j+TLPePgrCnCpUXx7Ba5Pdpf5OBih62NQ==} 2559 2551 engines: {node: '>=20.18.1'} 2560 2552 2561 - unenv@2.0.0-rc.19: 2562 - resolution: {integrity: sha512-t/OMHBNAkknVCI7bVB9OWjUUAwhVv9vsPIAGnNUxnu3FxPQN11rjh0sksLMzc3g7IlTgvHmOTl4JM7JHpcv5wA==} 2553 + unenv@2.0.0-rc.24: 2554 + resolution: {integrity: sha512-i7qRCmY42zmCwnYlh9H2SvLEypEFGye5iRmEMKjcGi7zk9UquigRjFtTLz0TYqr0ZGLZhaMHl/foy1bZR+Cwlw==} 2563 2555 2564 2556 unicode-canonical-property-names-ecmascript@2.0.1: 2565 2557 resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==} ··· 2569 2561 resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} 2570 2562 engines: {node: '>=4'} 2571 2563 2572 - unicode-match-property-value-ecmascript@2.2.0: 2573 - resolution: {integrity: sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==} 2564 + unicode-match-property-value-ecmascript@2.2.1: 2565 + resolution: {integrity: sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==} 2574 2566 engines: {node: '>=4'} 2575 2567 2576 - unicode-property-aliases-ecmascript@2.1.0: 2577 - resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} 2568 + unicode-property-aliases-ecmascript@2.2.0: 2569 + resolution: {integrity: sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==} 2578 2570 engines: {node: '>=4'} 2579 2571 2580 2572 unique-string@2.0.0: ··· 2589 2581 resolution: {integrity: sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==} 2590 2582 engines: {node: '>=4'} 2591 2583 2592 - update-browserslist-db@1.1.3: 2593 - resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==} 2584 + update-browserslist-db@1.2.2: 2585 + resolution: {integrity: sha512-E85pfNzMQ9jpKkA7+TJAi4TJN+tBCuWh5rUcS/sv6cFi+1q9LYDwDI5dpUL0u/73EElyQ8d3TEaeW4sPedBqYA==} 2594 2586 hasBin: true 2595 2587 peerDependencies: 2596 2588 browserslist: '>= 4.21.0' ··· 2598 2590 util-deprecate@1.0.2: 2599 2591 resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 2600 2592 2601 - validate-html-nesting@1.2.3: 2602 - resolution: {integrity: sha512-kdkWdCl6eCeLlRShJKbjVOU2kFKxMF8Ghu50n+crEoyx+VKm3FxAxF9z4DCy6+bbTOqNW0+jcIYRnjoIRzigRw==} 2603 - 2604 - vite-plugin-pwa@0.21.0: 2605 - resolution: {integrity: sha512-gnDE5sN2hdxA4vTl0pe6PCTPXqChk175jH8dZVVTBjFhWarZZoXaAdoTIKCIa8Zbx94sC0CnCOyERBWpxvry+g==} 2593 + vite-plugin-pwa@1.1.0: 2594 + resolution: {integrity: sha512-VsSpdubPzXhHWVINcSx6uHRMpOHVHQcHsef1QgkOlEoaIDAlssFEW88LBq1a59BuokAhsh2kUDJbaX1bZv4Bjw==} 2606 2595 engines: {node: '>=16.0.0'} 2607 2596 peerDependencies: 2608 - '@vite-pwa/assets-generator': ^0.2.6 2609 - 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 2610 2599 peerDependenciesMeta: 2611 2600 '@vite-pwa/assets-generator': 2612 2601 optional: true 2613 2602 2614 - vite-plugin-solid@2.11.6: 2615 - resolution: {integrity: sha512-Sl5CTqJTGyEeOsmdH6BOgalIZlwH3t4/y0RQuFLMGnvWMBvxb4+lq7x3BSiAw6etf0QexfNJW7HSOO/Qf7pigg==} 2603 + vite-plugin-solid@2.11.10: 2604 + resolution: {integrity: sha512-Yr1dQybmtDtDAHkii6hXuc1oVH9CPcS/Zb2jN/P36qqcrkNnVPsMTzQ06jyzFPFjj3U1IYKMVt/9ZqcwGCEbjw==} 2616 2605 peerDependencies: 2617 2606 '@testing-library/jest-dom': ^5.16.6 || ^5.17.0 || ^6.* 2618 2607 solid-js: ^1.7.2 2619 - 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 2620 2609 peerDependenciesMeta: 2621 2610 '@testing-library/jest-dom': 2622 2611 optional: true 2623 2612 2624 - vite@6.3.5: 2625 - resolution: {integrity: sha512-cZn6NDFE7wdTpINgs++ZJ4N49W2vRp8LCKrn3Ob1kYNtOo21vfDoaV5GzBfLU4MovSAB8uNRm4jgzVQZ+mBzPQ==} 2626 - 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} 2627 2616 hasBin: true 2628 2617 peerDependencies: 2629 - '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 2618 + '@types/node': ^20.19.0 || >=22.12.0 2630 2619 jiti: '>=1.21.0' 2631 - less: '*' 2620 + less: ^4.0.0 2632 2621 lightningcss: ^1.21.0 2633 - sass: '*' 2634 - sass-embedded: '*' 2635 - stylus: '*' 2636 - sugarss: '*' 2622 + sass: ^1.70.0 2623 + sass-embedded: ^1.70.0 2624 + stylus: '>=0.54.8' 2625 + sugarss: ^5.0.0 2637 2626 terser: ^5.16.0 2638 2627 tsx: ^4.8.1 2639 2628 yaml: ^2.4.2 ··· 2661 2650 yaml: 2662 2651 optional: true 2663 2652 2664 - vitefu@1.0.7: 2665 - resolution: {integrity: sha512-eRWXLBbJjW3X5z5P5IHcSm2yYbYRPb2kQuc+oqsbAl99WB5kVsPbiiox+cymo8twTzifA6itvhr2CmjnaZZp0Q==} 2653 + vitefu@1.1.1: 2654 + resolution: {integrity: sha512-B/Fegf3i8zh0yFbpzZ21amWzHmuNlLlmJT6n7bu5e+pCHUKQIfXSYokrqOBGEMMe9UG2sostKQF9mml/vYaWJQ==} 2666 2655 peerDependencies: 2667 2656 vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0-beta.0 2668 2657 peerDependenciesMeta: ··· 2671 2660 2672 2661 webidl-conversions@4.0.2: 2673 2662 resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} 2674 - 2675 - webm-muxer@5.1.3: 2676 - resolution: {integrity: sha512-zHLsTCXJ1m+sSVt2xefsmGuGz/mHcGtKzjL7Tekx2HaodpjT4xYyZnm+DrECv5D7EPt8p+XV74MUy41Ley1mdg==} 2677 2663 2678 2664 whatwg-url@7.1.0: 2679 2665 resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} ··· 2683 2669 engines: {node: '>= 8'} 2684 2670 hasBin: true 2685 2671 2686 - workbox-background-sync@7.3.0: 2687 - resolution: {integrity: sha512-PCSk3eK7Mxeuyatb22pcSx9dlgWNv3+M8PqPaYDokks8Y5/FX4soaOqj3yhAZr5k6Q5JWTOMYgaJBpbw11G9Eg==} 2672 + workbox-background-sync@7.4.0: 2673 + resolution: {integrity: sha512-8CB9OxKAgKZKyNMwfGZ1XESx89GryWTfI+V5yEj8sHjFH8MFelUwYXEyldEK6M6oKMmn807GoJFUEA1sC4XS9w==} 2688 2674 2689 - workbox-broadcast-update@7.3.0: 2690 - 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==} 2691 2677 2692 - workbox-build@7.3.0: 2693 - resolution: {integrity: sha512-JGL6vZTPlxnlqZRhR/K/msqg3wKP+m0wfEUVosK7gsYzSgeIxvZLi1ViJJzVL7CEeI8r7rGFV973RiEqkP3lWQ==} 2694 - engines: {node: '>=16.0.0'} 2678 + workbox-build@7.4.0: 2679 + resolution: {integrity: sha512-Ntk1pWb0caOFIvwz/hfgrov/OJ45wPEhI5PbTywQcYjyZiVhT3UrwwUPl6TRYbTm4moaFYithYnl1lvZ8UjxcA==} 2680 + engines: {node: '>=20.0.0'} 2695 2681 2696 - workbox-cacheable-response@7.3.0: 2697 - resolution: {integrity: sha512-eAFERIg6J2LuyELhLlmeRcJFa5e16Mj8kL2yCDbhWE+HUun9skRQrGIFVUagqWj4DMaaPSMWfAolM7XZZxNmxA==} 2682 + workbox-cacheable-response@7.4.0: 2683 + resolution: {integrity: sha512-0Fb8795zg/x23ISFkAc7lbWes6vbw34DGFIMw31cwuHPgDEC/5EYm6m/ZkylLX0EnEbbOyOCLjKgFS/Z5g0HeQ==} 2698 2684 2699 - workbox-core@7.3.0: 2700 - resolution: {integrity: sha512-Z+mYrErfh4t3zi7NVTvOuACB0A/jA3bgxUN3PwtAVHvfEsZxV9Iju580VEETug3zYJRc0Dmii/aixI/Uxj8fmw==} 2685 + workbox-core@7.4.0: 2686 + resolution: {integrity: sha512-6BMfd8tYEnN4baG4emG9U0hdXM4gGuDU3ectXuVHnj71vwxTFI7WOpQJC4siTOlVtGqCUtj0ZQNsrvi6kZZTAQ==} 2701 2687 2702 - workbox-expiration@7.3.0: 2703 - resolution: {integrity: sha512-lpnSSLp2BM+K6bgFCWc5bS1LR5pAwDWbcKt1iL87/eTSJRdLdAwGQznZE+1czLgn/X05YChsrEegTNxjM067vQ==} 2688 + workbox-expiration@7.4.0: 2689 + resolution: {integrity: sha512-V50p4BxYhtA80eOvulu8xVfPBgZbkxJ1Jr8UUn0rvqjGhLDqKNtfrDfjJKnLz2U8fO2xGQJTx/SKXNTzHOjnHw==} 2704 2690 2705 - workbox-google-analytics@7.3.0: 2706 - resolution: {integrity: sha512-ii/tSfFdhjLHZ2BrYgFNTrb/yk04pw2hasgbM70jpZfLk0vdJAXgaiMAWsoE+wfJDNWoZmBYY0hMVI0v5wWDbg==} 2691 + workbox-google-analytics@7.4.0: 2692 + resolution: {integrity: sha512-MVPXQslRF6YHkzGoFw1A4GIB8GrKym/A5+jYDUSL+AeJw4ytQGrozYdiZqUW1TPQHW8isBCBtyFJergUXyNoWQ==} 2707 2693 2708 - workbox-navigation-preload@7.3.0: 2709 - resolution: {integrity: sha512-fTJzogmFaTv4bShZ6aA7Bfj4Cewaq5rp30qcxl2iYM45YD79rKIhvzNHiFj1P+u5ZZldroqhASXwwoyusnr2cg==} 2694 + workbox-navigation-preload@7.4.0: 2695 + resolution: {integrity: sha512-etzftSgdQfjMcfPgbfaZCfM2QuR1P+4o8uCA2s4rf3chtKTq/Om7g/qvEOcZkG6v7JZOSOxVYQiOu6PbAZgU6w==} 2710 2696 2711 - workbox-precaching@7.3.0: 2712 - resolution: {integrity: sha512-ckp/3t0msgXclVAYaNndAGeAoWQUv7Rwc4fdhWL69CCAb2UHo3Cef0KIUctqfQj1p8h6aGyz3w8Cy3Ihq9OmIw==} 2697 + workbox-precaching@7.4.0: 2698 + resolution: {integrity: sha512-VQs37T6jDqf1rTxUJZXRl3yjZMf5JX/vDPhmx2CPgDDKXATzEoqyRqhYnRoxl6Kr0rqaQlp32i9rtG5zTzIlNg==} 2713 2699 2714 - workbox-range-requests@7.3.0: 2715 - resolution: {integrity: sha512-EyFmM1KpDzzAouNF3+EWa15yDEenwxoeXu9bgxOEYnFfCxns7eAxA9WSSaVd8kujFFt3eIbShNqa4hLQNFvmVQ==} 2700 + workbox-range-requests@7.4.0: 2701 + resolution: {integrity: sha512-3Vq854ZNuP6Y0KZOQWLaLC9FfM7ZaE+iuQl4VhADXybwzr4z/sMmnLgTeUZLq5PaDlcJBxYXQ3U91V7dwAIfvw==} 2716 2702 2717 - workbox-recipes@7.3.0: 2718 - resolution: {integrity: sha512-BJro/MpuW35I/zjZQBcoxsctgeB+kyb2JAP5EB3EYzePg8wDGoQuUdyYQS+CheTb+GhqJeWmVs3QxLI8EBP1sg==} 2703 + workbox-recipes@7.4.0: 2704 + resolution: {integrity: sha512-kOkWvsAn4H8GvAkwfJTbwINdv4voFoiE9hbezgB1sb/0NLyTG4rE7l6LvS8lLk5QIRIto+DjXLuAuG3Vmt3cxQ==} 2719 2705 2720 - workbox-routing@7.3.0: 2721 - resolution: {integrity: sha512-ZUlysUVn5ZUzMOmQN3bqu+gK98vNfgX/gSTZ127izJg/pMMy4LryAthnYtjuqcjkN4HEAx1mdgxNiKJMZQM76A==} 2706 + workbox-routing@7.4.0: 2707 + resolution: {integrity: sha512-C/ooj5uBWYAhAqwmU8HYQJdOjjDKBp9MzTQ+otpMmd+q0eF59K+NuXUek34wbL0RFrIXe/KKT+tUWcZcBqxbHQ==} 2722 2708 2723 - workbox-strategies@7.3.0: 2724 - resolution: {integrity: sha512-tmZydug+qzDFATwX7QiEL5Hdf7FrkhjaF9db1CbB39sDmEZJg3l9ayDvPxy8Y18C3Y66Nrr9kkN1f/RlkDgllg==} 2709 + workbox-strategies@7.4.0: 2710 + resolution: {integrity: sha512-T4hVqIi5A4mHi92+5EppMX3cLaVywDp8nsyUgJhOZxcfSV/eQofcOA6/EMo5rnTNmNTpw0rUgjAI6LaVullPpg==} 2725 2711 2726 - workbox-streams@7.3.0: 2727 - resolution: {integrity: sha512-SZnXucyg8x2Y61VGtDjKPO5EgPUG5NDn/v86WYHX+9ZqvAsGOytP0Jxp1bl663YUuMoXSAtsGLL+byHzEuMRpw==} 2712 + workbox-streams@7.4.0: 2713 + resolution: {integrity: sha512-QHPBQrey7hQbnTs5GrEVoWz7RhHJXnPT+12qqWM378orDMo5VMJLCkCM1cnCk+8Eq92lccx/VgRZ7WAzZWbSLg==} 2728 2714 2729 - workbox-sw@7.3.0: 2730 - resolution: {integrity: sha512-aCUyoAZU9IZtH05mn0ACUpyHzPs0lMeJimAYkQkBsOWiqaJLgusfDCR+yllkPkFRxWpZKF8vSvgHYeG7LwhlmA==} 2715 + workbox-sw@7.4.0: 2716 + resolution: {integrity: sha512-ltU+Kr3qWR6BtbdlMnCjobZKzeV1hN+S6UvDywBrwM19TTyqA03X66dzw1tEIdJvQ4lYKkBFox6IAEhoSEZ8Xw==} 2731 2717 2732 - workbox-window@7.3.0: 2733 - resolution: {integrity: sha512-qW8PDy16OV1UBaUNGlTVcepzrlzyzNW/ZJvFQQs2j2TzGsg6IKjcpZC1RSquqQnTOafl5pCj5bGfAHlCjOOjdA==} 2718 + workbox-window@7.4.0: 2719 + resolution: {integrity: sha512-/bIYdBLAVsNR3v7gYGaV4pQW3M3kEPx5E8vDxGvxo6khTrGtSSCS7QiFKv9ogzBgZiy0OXLP9zO28U/1nF1mfw==} 2734 2720 2735 - workerd@1.20250816.0: 2736 - resolution: {integrity: sha512-5gIvHPE/3QVlQR1Sc1NdBkWmqWj/TSgIbY/f/qs9lhiLBw/Da+HbNBTVYGjvwYqEb3NQ+XQM4gAm5b2+JJaUJg==} 2721 + workerd@1.20251202.0: 2722 + resolution: {integrity: sha512-p08YfrUMHkjCECNdT36r+6DpJIZX4kixbZ4n6GMUcLR5Gh18fakSCsiQrh72iOm4M9QHv/rM7P8YvCrUPWT5sg==} 2737 2723 engines: {node: '>=16'} 2738 2724 hasBin: true 2739 2725 2740 - wrangler@4.32.0: 2741 - resolution: {integrity: sha512-q7TRSavBW3Eg3pp4rxqKJwSK+u/ieFOBdNvUsq1P1EMmyj3//tN/iXDokFak+dkW0vDYjsVG3PfOfHxU92OS6w==} 2742 - engines: {node: '>=18.0.0'} 2726 + wrangler@4.53.0: 2727 + resolution: {integrity: sha512-/wvnHlRnlHsqaeIgGbmcEJE5NFYdTUWHCKow+U5Tv2XwQXI9vXUqBwCLAGy/BwqyS5nnycRt2kppqCzgHgyb7Q==} 2728 + engines: {node: '>=20.0.0'} 2743 2729 hasBin: true 2744 2730 peerDependencies: 2745 - '@cloudflare/workers-types': ^4.20250816.0 2731 + '@cloudflare/workers-types': ^4.20251202.0 2746 2732 peerDependenciesMeta: 2747 2733 '@cloudflare/workers-types': 2748 2734 optional: true ··· 2755 2741 resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} 2756 2742 engines: {node: '>=12'} 2757 2743 2758 - wrappy@1.0.2: 2759 - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 2760 - 2761 2744 ws@8.18.0: 2762 2745 resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} 2763 2746 engines: {node: '>=10.0.0'} ··· 2773 2756 yallist@3.1.1: 2774 2757 resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} 2775 2758 2776 - yaml@2.8.0: 2777 - resolution: {integrity: sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==} 2778 - engines: {node: '>= 14.6'} 2779 - hasBin: true 2780 - 2781 2759 youch-core@0.3.3: 2782 2760 resolution: {integrity: sha512-ho7XuGjLaJ2hWHoK8yFnsUGy2Y5uDpqSTq1FkHLK4/oqKtyUU1AFbOOxY4IpC9f0fTLjwYbslUz0Po5BpD1wrA==} 2783 2761 ··· 2791 2769 2792 2770 '@alloc/quick-lru@5.2.0': {} 2793 2771 2794 - '@ampproject/remapping@2.3.0': 2795 - dependencies: 2796 - '@jridgewell/gen-mapping': 0.3.8 2797 - '@jridgewell/trace-mapping': 0.3.25 2798 - 2799 2772 '@apideck/better-ajv-errors@0.3.6(ajv@8.17.1)': 2800 2773 dependencies: 2801 2774 ajv: 8.17.1 ··· 2803 2776 jsonpointer: 5.0.1 2804 2777 leven: 3.1.0 2805 2778 2806 - '@atcute/atproto@3.1.2': 2779 + '@atcute/atproto@3.1.9': 2807 2780 dependencies: 2808 - '@atcute/lexicons': 1.1.1 2781 + '@atcute/lexicons': 1.2.5 2809 2782 2810 - '@atcute/bluemoji@3.1.0': 2783 + '@atcute/bluemoji@3.1.3': 2811 2784 dependencies: 2812 - '@atcute/atproto': 3.1.2 2813 - '@atcute/bluesky': 3.2.1 2814 - '@atcute/lexicons': 1.1.1 2785 + '@atcute/atproto': 3.1.9 2786 + '@atcute/bluesky': 3.2.12 2787 + '@atcute/lexicons': 1.2.5 2815 2788 2816 2789 '@atcute/bluesky-richtext-parser@1.0.7': {} 2817 2790 2818 - '@atcute/bluesky-richtext-segmenter@2.0.3': 2791 + '@atcute/bluesky-richtext-segmenter@2.0.4': 2819 2792 dependencies: 2820 - '@atcute/bluesky': 3.2.1 2821 - '@atcute/lexicons': 1.1.1 2793 + '@atcute/bluesky': 3.2.12 2794 + '@atcute/lexicons': 1.2.5 2822 2795 2823 - '@atcute/bluesky-search-parser@0.1.0': {} 2796 + '@atcute/bluesky-search-parser@0.1.1': {} 2824 2797 2825 - '@atcute/bluesky@3.2.1': 2798 + '@atcute/bluesky@3.2.12': 2826 2799 dependencies: 2827 - '@atcute/atproto': 3.1.2 2828 - '@atcute/lexicons': 1.1.1 2800 + '@atcute/atproto': 3.1.9 2801 + '@atcute/lexicons': 1.2.5 2829 2802 2830 - '@atcute/cbor@2.2.5': 2803 + '@atcute/cbor@2.2.8': 2831 2804 dependencies: 2832 - '@atcute/cid': 2.2.3 2833 - '@atcute/multibase': 1.1.4 2834 - '@atcute/uint8array': 1.0.3 2805 + '@atcute/cid': 2.2.6 2806 + '@atcute/multibase': 1.1.6 2807 + '@atcute/uint8array': 1.0.6 2835 2808 2836 - '@atcute/cid@2.2.3': 2809 + '@atcute/cid@2.2.6': 2837 2810 dependencies: 2838 - '@atcute/multibase': 1.1.4 2839 - '@atcute/uint8array': 1.0.3 2811 + '@atcute/multibase': 1.1.6 2812 + '@atcute/uint8array': 1.0.6 2840 2813 2841 - '@atcute/client@4.0.3': 2814 + '@atcute/client@4.1.0': 2842 2815 dependencies: 2843 - '@atcute/identity': 1.1.0 2844 - '@atcute/lexicons': 1.1.1 2816 + '@atcute/identity': 1.1.3 2817 + '@atcute/lexicons': 1.2.5 2845 2818 2846 - '@atcute/crypto@2.2.3': 2819 + '@atcute/crypto@2.2.6': 2847 2820 dependencies: 2848 - '@atcute/multibase': 1.1.4 2849 - '@atcute/uint8array': 1.0.3 2850 - '@noble/secp256k1': 2.3.0 2821 + '@atcute/multibase': 1.1.6 2822 + '@atcute/uint8array': 1.0.6 2823 + '@noble/secp256k1': 3.0.0 2851 2824 2852 - '@atcute/identity-resolver@1.1.3(@atcute/identity@1.1.0)': 2825 + '@atcute/identity-resolver@1.2.0(@atcute/identity@1.1.3)': 2853 2826 dependencies: 2854 - '@atcute/identity': 1.1.0 2855 - '@atcute/lexicons': 1.1.1 2856 - '@atcute/util-fetch': 1.0.1 2857 - '@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 2858 2831 2859 - '@atcute/identity@1.1.0': 2832 + '@atcute/identity@1.1.3': 2860 2833 dependencies: 2861 - '@atcute/lexicons': 1.1.1 2862 - '@badrap/valita': 0.4.5 2834 + '@atcute/lexicons': 1.2.5 2835 + '@badrap/valita': 0.4.6 2863 2836 2864 - '@atcute/lexicons@1.1.1': 2837 + '@atcute/lexicons@1.2.5': 2865 2838 dependencies: 2839 + '@standard-schema/spec': 1.0.0 2866 2840 esm-env: 1.2.2 2867 2841 2868 - '@atcute/multibase@1.1.4': 2842 + '@atcute/multibase@1.1.6': 2869 2843 dependencies: 2870 - '@atcute/uint8array': 1.0.3 2844 + '@atcute/uint8array': 1.0.6 2871 2845 2872 - '@atcute/oauth-browser-client@2.0.0-next.0': 2846 + '@atcute/oauth-browser-client@2.0.1': 2873 2847 dependencies: 2874 - '@atcute/client': 4.0.3 2875 - '@atcute/identity': 1.1.0 2876 - '@atcute/identity-resolver': 1.1.3(@atcute/identity@1.1.0) 2877 - '@atcute/lexicons': 1.1.1 2878 - '@atcute/multibase': 1.1.4 2879 - '@atcute/uint8array': 1.0.3 2880 - 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 2881 2855 2882 - '@atcute/tid@1.0.2': {} 2856 + '@atcute/tid@1.0.3': {} 2883 2857 2884 - '@atcute/uint8array@1.0.3': {} 2858 + '@atcute/uint8array@1.0.6': {} 2885 2859 2886 - '@atcute/util-fetch@1.0.1': 2860 + '@atcute/util-fetch@1.0.4': 2887 2861 dependencies: 2888 - '@badrap/valita': 0.4.5 2862 + '@badrap/valita': 0.4.6 2889 2863 2890 - '@atcute/xrpc-server@0.1.1': 2864 + '@atcute/xrpc-server@0.1.3': 2891 2865 dependencies: 2892 - '@atcute/crypto': 2.2.3 2893 - '@atcute/identity': 1.1.0 2894 - '@atcute/identity-resolver': 1.1.3(@atcute/identity@1.1.0) 2895 - '@atcute/lexicons': 1.1.1 2896 - '@atcute/multibase': 1.1.4 2897 - '@atcute/uint8array': 1.0.3 2898 - '@badrap/valita': 0.4.5 2899 - nanoid: 5.1.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 2900 2875 2901 2876 '@atlaskit/pragmatic-drag-and-drop-hitbox@1.0.3': 2902 2877 dependencies: 2903 2878 '@atlaskit/pragmatic-drag-and-drop': 1.6.0 2904 - '@babel/runtime': 7.27.6 2879 + '@babel/runtime': 7.28.4 2905 2880 2906 2881 '@atlaskit/pragmatic-drag-and-drop@1.6.0': 2907 2882 dependencies: 2908 - '@babel/runtime': 7.27.6 2883 + '@babel/runtime': 7.28.4 2909 2884 bind-event-listener: 3.0.0 2910 2885 raf-schd: 4.0.3 2911 2886 2912 2887 '@babel/code-frame@7.27.1': 2913 2888 dependencies: 2914 - '@babel/helper-validator-identifier': 7.27.1 2889 + '@babel/helper-validator-identifier': 7.28.5 2915 2890 js-tokens: 4.0.0 2916 2891 picocolors: 1.1.1 2917 2892 2918 - '@babel/compat-data@7.27.5': {} 2893 + '@babel/compat-data@7.28.5': {} 2919 2894 2920 - '@babel/core@7.27.4': 2895 + '@babel/core@7.28.5': 2921 2896 dependencies: 2922 - '@ampproject/remapping': 2.3.0 2923 2897 '@babel/code-frame': 7.27.1 2924 - '@babel/generator': 7.27.5 2898 + '@babel/generator': 7.28.5 2925 2899 '@babel/helper-compilation-targets': 7.27.2 2926 - '@babel/helper-module-transforms': 7.27.3(@babel/core@7.27.4) 2927 - '@babel/helpers': 7.27.6 2928 - '@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 2929 2903 '@babel/template': 7.27.2 2930 - '@babel/traverse': 7.27.4 2931 - '@babel/types': 7.27.6 2904 + '@babel/traverse': 7.28.5 2905 + '@babel/types': 7.28.5 2906 + '@jridgewell/remapping': 2.3.5 2932 2907 convert-source-map: 2.0.0 2933 - debug: 4.4.1 2908 + debug: 4.4.3 2934 2909 gensync: 1.0.0-beta.2 2935 2910 json5: 2.2.3 2936 2911 semver: 6.3.1 2937 2912 transitivePeerDependencies: 2938 2913 - supports-color 2939 2914 2940 - '@babel/generator@7.27.5': 2915 + '@babel/generator@7.28.5': 2941 2916 dependencies: 2942 - '@babel/parser': 7.27.5 2943 - '@babel/types': 7.27.6 2944 - '@jridgewell/gen-mapping': 0.3.8 2945 - '@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 2946 2921 jsesc: 3.1.0 2947 2922 2948 2923 '@babel/helper-annotate-as-pure@7.27.3': 2949 2924 dependencies: 2950 - '@babel/types': 7.27.6 2925 + '@babel/types': 7.28.5 2951 2926 2952 2927 '@babel/helper-compilation-targets@7.27.2': 2953 2928 dependencies: 2954 - '@babel/compat-data': 7.27.5 2929 + '@babel/compat-data': 7.28.5 2955 2930 '@babel/helper-validator-option': 7.27.1 2956 - browserslist: 4.25.0 2931 + browserslist: 4.28.1 2957 2932 lru-cache: 5.1.1 2958 2933 semver: 6.3.1 2959 2934 2960 - '@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)': 2961 2936 dependencies: 2962 - '@babel/core': 7.27.4 2937 + '@babel/core': 7.28.5 2963 2938 '@babel/helper-annotate-as-pure': 7.27.3 2964 - '@babel/helper-member-expression-to-functions': 7.27.1 2939 + '@babel/helper-member-expression-to-functions': 7.28.5 2965 2940 '@babel/helper-optimise-call-expression': 7.27.1 2966 - '@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) 2967 2942 '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 2968 - '@babel/traverse': 7.27.4 2943 + '@babel/traverse': 7.28.5 2969 2944 semver: 6.3.1 2970 2945 transitivePeerDependencies: 2971 2946 - supports-color 2972 2947 2973 - '@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)': 2974 2949 dependencies: 2975 - '@babel/core': 7.27.4 2950 + '@babel/core': 7.28.5 2976 2951 '@babel/helper-annotate-as-pure': 7.27.3 2977 - regexpu-core: 6.2.0 2952 + regexpu-core: 6.4.0 2978 2953 semver: 6.3.1 2979 2954 2980 - '@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)': 2981 2956 dependencies: 2982 - '@babel/core': 7.27.4 2957 + '@babel/core': 7.28.5 2983 2958 '@babel/helper-compilation-targets': 7.27.2 2984 2959 '@babel/helper-plugin-utils': 7.27.1 2985 - debug: 4.4.1 2960 + debug: 4.4.3 2986 2961 lodash.debounce: 4.0.8 2987 - resolve: 1.22.10 2962 + resolve: 1.22.11 2988 2963 transitivePeerDependencies: 2989 2964 - supports-color 2990 2965 2991 - '@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': 2992 2969 dependencies: 2993 - '@babel/traverse': 7.27.4 2994 - '@babel/types': 7.27.6 2970 + '@babel/traverse': 7.28.5 2971 + '@babel/types': 7.28.5 2995 2972 transitivePeerDependencies: 2996 2973 - supports-color 2997 2974 2998 2975 '@babel/helper-module-imports@7.18.6': 2999 2976 dependencies: 3000 - '@babel/types': 7.27.6 2977 + '@babel/types': 7.28.5 3001 2978 3002 2979 '@babel/helper-module-imports@7.27.1': 3003 2980 dependencies: 3004 - '@babel/traverse': 7.27.4 3005 - '@babel/types': 7.27.6 2981 + '@babel/traverse': 7.28.5 2982 + '@babel/types': 7.28.5 3006 2983 transitivePeerDependencies: 3007 2984 - supports-color 3008 2985 3009 - '@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)': 3010 2987 dependencies: 3011 - '@babel/core': 7.27.4 2988 + '@babel/core': 7.28.5 3012 2989 '@babel/helper-module-imports': 7.27.1 3013 - '@babel/helper-validator-identifier': 7.27.1 3014 - '@babel/traverse': 7.27.4 2990 + '@babel/helper-validator-identifier': 7.28.5 2991 + '@babel/traverse': 7.28.5 3015 2992 transitivePeerDependencies: 3016 2993 - supports-color 3017 2994 3018 2995 '@babel/helper-optimise-call-expression@7.27.1': 3019 2996 dependencies: 3020 - '@babel/types': 7.27.6 2997 + '@babel/types': 7.28.5 3021 2998 3022 2999 '@babel/helper-plugin-utils@7.27.1': {} 3023 3000 3024 - '@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)': 3025 3002 dependencies: 3026 - '@babel/core': 7.27.4 3003 + '@babel/core': 7.28.5 3027 3004 '@babel/helper-annotate-as-pure': 7.27.3 3028 - '@babel/helper-wrap-function': 7.27.1 3029 - '@babel/traverse': 7.27.4 3005 + '@babel/helper-wrap-function': 7.28.3 3006 + '@babel/traverse': 7.28.5 3030 3007 transitivePeerDependencies: 3031 3008 - supports-color 3032 3009 3033 - '@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)': 3034 3011 dependencies: 3035 - '@babel/core': 7.27.4 3036 - '@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 3037 3014 '@babel/helper-optimise-call-expression': 7.27.1 3038 - '@babel/traverse': 7.27.4 3015 + '@babel/traverse': 7.28.5 3039 3016 transitivePeerDependencies: 3040 3017 - supports-color 3041 3018 3042 3019 '@babel/helper-skip-transparent-expression-wrappers@7.27.1': 3043 3020 dependencies: 3044 - '@babel/traverse': 7.27.4 3045 - '@babel/types': 7.27.6 3021 + '@babel/traverse': 7.28.5 3022 + '@babel/types': 7.28.5 3046 3023 transitivePeerDependencies: 3047 3024 - supports-color 3048 3025 3049 3026 '@babel/helper-string-parser@7.27.1': {} 3050 3027 3051 - '@babel/helper-validator-identifier@7.27.1': {} 3028 + '@babel/helper-validator-identifier@7.28.5': {} 3052 3029 3053 3030 '@babel/helper-validator-option@7.27.1': {} 3054 3031 3055 - '@babel/helper-wrap-function@7.27.1': 3032 + '@babel/helper-wrap-function@7.28.3': 3056 3033 dependencies: 3057 3034 '@babel/template': 7.27.2 3058 - '@babel/traverse': 7.27.4 3059 - '@babel/types': 7.27.6 3035 + '@babel/traverse': 7.28.5 3036 + '@babel/types': 7.28.5 3060 3037 transitivePeerDependencies: 3061 3038 - supports-color 3062 3039 3063 - '@babel/helpers@7.27.6': 3040 + '@babel/helpers@7.28.4': 3064 3041 dependencies: 3065 3042 '@babel/template': 7.27.2 3066 - '@babel/types': 7.27.6 3043 + '@babel/types': 7.28.5 3067 3044 3068 - '@babel/parser@7.27.5': 3045 + '@babel/parser@7.28.5': 3069 3046 dependencies: 3070 - '@babel/types': 7.27.6 3047 + '@babel/types': 7.28.5 3071 3048 3072 - '@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)': 3073 3050 dependencies: 3074 - '@babel/core': 7.27.4 3051 + '@babel/core': 7.28.5 3075 3052 '@babel/helper-plugin-utils': 7.27.1 3076 - '@babel/traverse': 7.27.4 3053 + '@babel/traverse': 7.28.5 3077 3054 transitivePeerDependencies: 3078 3055 - supports-color 3079 3056 3080 - '@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)': 3081 3058 dependencies: 3082 - '@babel/core': 7.27.4 3059 + '@babel/core': 7.28.5 3083 3060 '@babel/helper-plugin-utils': 7.27.1 3084 3061 3085 - '@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)': 3086 3063 dependencies: 3087 - '@babel/core': 7.27.4 3064 + '@babel/core': 7.28.5 3088 3065 '@babel/helper-plugin-utils': 7.27.1 3089 3066 3090 - '@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)': 3091 3068 dependencies: 3092 - '@babel/core': 7.27.4 3069 + '@babel/core': 7.28.5 3093 3070 '@babel/helper-plugin-utils': 7.27.1 3094 3071 '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 3095 - '@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) 3096 3073 transitivePeerDependencies: 3097 3074 - supports-color 3098 3075 3099 - '@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)': 3100 3077 dependencies: 3101 - '@babel/core': 7.27.4 3078 + '@babel/core': 7.28.5 3102 3079 '@babel/helper-plugin-utils': 7.27.1 3103 - '@babel/traverse': 7.27.4 3080 + '@babel/traverse': 7.28.5 3104 3081 transitivePeerDependencies: 3105 3082 - supports-color 3106 3083 3107 - '@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)': 3108 3085 dependencies: 3109 - '@babel/core': 7.27.4 3086 + '@babel/core': 7.28.5 3110 3087 3111 - '@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)': 3112 3089 dependencies: 3113 - '@babel/core': 7.27.4 3090 + '@babel/core': 7.28.5 3114 3091 '@babel/helper-plugin-utils': 7.27.1 3115 3092 3116 - '@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)': 3117 3094 dependencies: 3118 - '@babel/core': 7.27.4 3095 + '@babel/core': 7.28.5 3119 3096 '@babel/helper-plugin-utils': 7.27.1 3120 3097 3121 - '@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)': 3122 3099 dependencies: 3123 - '@babel/core': 7.27.4 3100 + '@babel/core': 7.28.5 3124 3101 '@babel/helper-plugin-utils': 7.27.1 3125 3102 3126 - '@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)': 3127 3104 dependencies: 3128 - '@babel/core': 7.27.4 3129 - '@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) 3130 3107 '@babel/helper-plugin-utils': 7.27.1 3131 3108 3132 - '@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)': 3133 3110 dependencies: 3134 - '@babel/core': 7.27.4 3111 + '@babel/core': 7.28.5 3135 3112 '@babel/helper-plugin-utils': 7.27.1 3136 3113 3137 - '@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)': 3138 3115 dependencies: 3139 - '@babel/core': 7.27.4 3116 + '@babel/core': 7.28.5 3140 3117 '@babel/helper-plugin-utils': 7.27.1 3141 - '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.27.4) 3142 - '@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 3143 3120 transitivePeerDependencies: 3144 3121 - supports-color 3145 3122 3146 - '@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)': 3147 3124 dependencies: 3148 - '@babel/core': 7.27.4 3125 + '@babel/core': 7.28.5 3149 3126 '@babel/helper-module-imports': 7.27.1 3150 3127 '@babel/helper-plugin-utils': 7.27.1 3151 - '@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) 3152 3129 transitivePeerDependencies: 3153 3130 - supports-color 3154 3131 3155 - '@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)': 3156 3133 dependencies: 3157 - '@babel/core': 7.27.4 3134 + '@babel/core': 7.28.5 3158 3135 '@babel/helper-plugin-utils': 7.27.1 3159 3136 3160 - '@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)': 3161 3138 dependencies: 3162 - '@babel/core': 7.27.4 3139 + '@babel/core': 7.28.5 3163 3140 '@babel/helper-plugin-utils': 7.27.1 3164 3141 3165 - '@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)': 3166 3143 dependencies: 3167 - '@babel/core': 7.27.4 3168 - '@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) 3169 3146 '@babel/helper-plugin-utils': 7.27.1 3170 3147 transitivePeerDependencies: 3171 3148 - supports-color 3172 3149 3173 - '@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)': 3174 3151 dependencies: 3175 - '@babel/core': 7.27.4 3176 - '@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) 3177 3154 '@babel/helper-plugin-utils': 7.27.1 3178 3155 transitivePeerDependencies: 3179 3156 - supports-color 3180 3157 3181 - '@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)': 3182 3159 dependencies: 3183 - '@babel/core': 7.27.4 3160 + '@babel/core': 7.28.5 3184 3161 '@babel/helper-annotate-as-pure': 7.27.3 3185 3162 '@babel/helper-compilation-targets': 7.27.2 3163 + '@babel/helper-globals': 7.28.0 3186 3164 '@babel/helper-plugin-utils': 7.27.1 3187 - '@babel/helper-replace-supers': 7.27.1(@babel/core@7.27.4) 3188 - '@babel/traverse': 7.27.4 3189 - globals: 11.12.0 3165 + '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5) 3166 + '@babel/traverse': 7.28.5 3190 3167 transitivePeerDependencies: 3191 3168 - supports-color 3192 3169 3193 - '@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)': 3194 3171 dependencies: 3195 - '@babel/core': 7.27.4 3172 + '@babel/core': 7.28.5 3196 3173 '@babel/helper-plugin-utils': 7.27.1 3197 3174 '@babel/template': 7.27.2 3198 3175 3199 - '@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)': 3200 3177 dependencies: 3201 - '@babel/core': 7.27.4 3178 + '@babel/core': 7.28.5 3202 3179 '@babel/helper-plugin-utils': 7.27.1 3180 + '@babel/traverse': 7.28.5 3181 + transitivePeerDependencies: 3182 + - supports-color 3203 3183 3204 - '@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)': 3205 3185 dependencies: 3206 - '@babel/core': 7.27.4 3207 - '@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) 3208 3188 '@babel/helper-plugin-utils': 7.27.1 3209 3189 3210 - '@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)': 3211 3191 dependencies: 3212 - '@babel/core': 7.27.4 3192 + '@babel/core': 7.28.5 3213 3193 '@babel/helper-plugin-utils': 7.27.1 3214 3194 3215 - '@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)': 3216 3196 dependencies: 3217 - '@babel/core': 7.27.4 3218 - '@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) 3219 3199 '@babel/helper-plugin-utils': 7.27.1 3220 3200 3221 - '@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)': 3222 3202 dependencies: 3223 - '@babel/core': 7.27.4 3203 + '@babel/core': 7.28.5 3224 3204 '@babel/helper-plugin-utils': 7.27.1 3225 3205 3226 - '@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)': 3227 3207 dependencies: 3228 - '@babel/core': 7.27.4 3208 + '@babel/core': 7.28.5 3229 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 3230 3213 3231 - '@babel/plugin-transform-export-namespace-from@7.27.1(@babel/core@7.27.4)': 3214 + '@babel/plugin-transform-exponentiation-operator@7.28.5(@babel/core@7.28.5)': 3232 3215 dependencies: 3233 - '@babel/core': 7.27.4 3216 + '@babel/core': 7.28.5 3234 3217 '@babel/helper-plugin-utils': 7.27.1 3235 3218 3236 - '@babel/plugin-transform-for-of@7.27.1(@babel/core@7.27.4)': 3219 + '@babel/plugin-transform-export-namespace-from@7.27.1(@babel/core@7.28.5)': 3237 3220 dependencies: 3238 - '@babel/core': 7.27.4 3221 + '@babel/core': 7.28.5 3222 + '@babel/helper-plugin-utils': 7.27.1 3223 + 3224 + '@babel/plugin-transform-for-of@7.27.1(@babel/core@7.28.5)': 3225 + dependencies: 3226 + '@babel/core': 7.28.5 3239 3227 '@babel/helper-plugin-utils': 7.27.1 3240 3228 '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 3241 3229 transitivePeerDependencies: 3242 3230 - supports-color 3243 3231 3244 - '@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)': 3245 3233 dependencies: 3246 - '@babel/core': 7.27.4 3234 + '@babel/core': 7.28.5 3247 3235 '@babel/helper-compilation-targets': 7.27.2 3248 3236 '@babel/helper-plugin-utils': 7.27.1 3249 - '@babel/traverse': 7.27.4 3237 + '@babel/traverse': 7.28.5 3250 3238 transitivePeerDependencies: 3251 3239 - supports-color 3252 3240 3253 - '@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)': 3254 3242 dependencies: 3255 - '@babel/core': 7.27.4 3243 + '@babel/core': 7.28.5 3256 3244 '@babel/helper-plugin-utils': 7.27.1 3257 3245 3258 - '@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)': 3259 3247 dependencies: 3260 - '@babel/core': 7.27.4 3248 + '@babel/core': 7.28.5 3261 3249 '@babel/helper-plugin-utils': 7.27.1 3262 3250 3263 - '@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)': 3264 3252 dependencies: 3265 - '@babel/core': 7.27.4 3253 + '@babel/core': 7.28.5 3266 3254 '@babel/helper-plugin-utils': 7.27.1 3267 3255 3268 - '@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)': 3269 3257 dependencies: 3270 - '@babel/core': 7.27.4 3258 + '@babel/core': 7.28.5 3271 3259 '@babel/helper-plugin-utils': 7.27.1 3272 3260 3273 - '@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)': 3274 3262 dependencies: 3275 - '@babel/core': 7.27.4 3276 - '@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) 3277 3265 '@babel/helper-plugin-utils': 7.27.1 3278 3266 transitivePeerDependencies: 3279 3267 - supports-color 3280 3268 3281 - '@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)': 3282 3270 dependencies: 3283 - '@babel/core': 7.27.4 3284 - '@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) 3285 3273 '@babel/helper-plugin-utils': 7.27.1 3286 3274 transitivePeerDependencies: 3287 3275 - supports-color 3288 3276 3289 - '@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)': 3290 3278 dependencies: 3291 - '@babel/core': 7.27.4 3292 - '@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) 3293 3281 '@babel/helper-plugin-utils': 7.27.1 3294 - '@babel/helper-validator-identifier': 7.27.1 3295 - '@babel/traverse': 7.27.4 3282 + '@babel/helper-validator-identifier': 7.28.5 3283 + '@babel/traverse': 7.28.5 3296 3284 transitivePeerDependencies: 3297 3285 - supports-color 3298 3286 3299 - '@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)': 3300 3288 dependencies: 3301 - '@babel/core': 7.27.4 3302 - '@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) 3303 3291 '@babel/helper-plugin-utils': 7.27.1 3304 3292 transitivePeerDependencies: 3305 3293 - supports-color 3306 3294 3307 - '@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)': 3308 3296 dependencies: 3309 - '@babel/core': 7.27.4 3310 - '@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) 3311 3299 '@babel/helper-plugin-utils': 7.27.1 3312 3300 3313 - '@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)': 3314 3302 dependencies: 3315 - '@babel/core': 7.27.4 3303 + '@babel/core': 7.28.5 3316 3304 '@babel/helper-plugin-utils': 7.27.1 3317 3305 3318 - '@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)': 3319 3307 dependencies: 3320 - '@babel/core': 7.27.4 3308 + '@babel/core': 7.28.5 3321 3309 '@babel/helper-plugin-utils': 7.27.1 3322 3310 3323 - '@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)': 3324 3312 dependencies: 3325 - '@babel/core': 7.27.4 3313 + '@babel/core': 7.28.5 3326 3314 '@babel/helper-plugin-utils': 7.27.1 3327 3315 3328 - '@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)': 3329 3317 dependencies: 3330 - '@babel/core': 7.27.4 3318 + '@babel/core': 7.28.5 3331 3319 '@babel/helper-compilation-targets': 7.27.2 3332 3320 '@babel/helper-plugin-utils': 7.27.1 3333 - '@babel/plugin-transform-destructuring': 7.27.3(@babel/core@7.27.4) 3334 - '@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 3335 3326 3336 - '@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)': 3337 3328 dependencies: 3338 - '@babel/core': 7.27.4 3329 + '@babel/core': 7.28.5 3339 3330 '@babel/helper-plugin-utils': 7.27.1 3340 - '@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) 3341 3332 transitivePeerDependencies: 3342 3333 - supports-color 3343 3334 3344 - '@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)': 3345 3336 dependencies: 3346 - '@babel/core': 7.27.4 3337 + '@babel/core': 7.28.5 3347 3338 '@babel/helper-plugin-utils': 7.27.1 3348 3339 3349 - '@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)': 3350 3341 dependencies: 3351 - '@babel/core': 7.27.4 3342 + '@babel/core': 7.28.5 3352 3343 '@babel/helper-plugin-utils': 7.27.1 3353 3344 '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 3354 3345 transitivePeerDependencies: 3355 3346 - supports-color 3356 3347 3357 - '@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)': 3358 3349 dependencies: 3359 - '@babel/core': 7.27.4 3350 + '@babel/core': 7.28.5 3360 3351 '@babel/helper-plugin-utils': 7.27.1 3361 3352 3362 - '@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)': 3363 3354 dependencies: 3364 - '@babel/core': 7.27.4 3365 - '@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) 3366 3357 '@babel/helper-plugin-utils': 7.27.1 3367 3358 transitivePeerDependencies: 3368 3359 - supports-color 3369 3360 3370 - '@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)': 3371 3362 dependencies: 3372 - '@babel/core': 7.27.4 3363 + '@babel/core': 7.28.5 3373 3364 '@babel/helper-annotate-as-pure': 7.27.3 3374 - '@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) 3375 3366 '@babel/helper-plugin-utils': 7.27.1 3376 3367 transitivePeerDependencies: 3377 3368 - supports-color 3378 3369 3379 - '@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)': 3380 3371 dependencies: 3381 - '@babel/core': 7.27.4 3372 + '@babel/core': 7.28.5 3382 3373 '@babel/helper-plugin-utils': 7.27.1 3383 3374 3384 - '@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)': 3385 3376 dependencies: 3386 - '@babel/core': 7.27.4 3377 + '@babel/core': 7.28.5 3387 3378 '@babel/helper-plugin-utils': 7.27.1 3388 3379 3389 - '@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)': 3390 3381 dependencies: 3391 - '@babel/core': 7.27.4 3392 - '@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) 3393 3384 '@babel/helper-plugin-utils': 7.27.1 3394 3385 3395 - '@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)': 3396 3387 dependencies: 3397 - '@babel/core': 7.27.4 3388 + '@babel/core': 7.28.5 3398 3389 '@babel/helper-plugin-utils': 7.27.1 3399 3390 3400 - '@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)': 3401 3392 dependencies: 3402 - '@babel/core': 7.27.4 3393 + '@babel/core': 7.28.5 3403 3394 '@babel/helper-plugin-utils': 7.27.1 3404 3395 3405 - '@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)': 3406 3397 dependencies: 3407 - '@babel/core': 7.27.4 3398 + '@babel/core': 7.28.5 3408 3399 '@babel/helper-plugin-utils': 7.27.1 3409 3400 '@babel/helper-skip-transparent-expression-wrappers': 7.27.1 3410 3401 transitivePeerDependencies: 3411 3402 - supports-color 3412 3403 3413 - '@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)': 3414 3405 dependencies: 3415 - '@babel/core': 7.27.4 3406 + '@babel/core': 7.28.5 3416 3407 '@babel/helper-plugin-utils': 7.27.1 3417 3408 3418 - '@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)': 3419 3410 dependencies: 3420 - '@babel/core': 7.27.4 3411 + '@babel/core': 7.28.5 3421 3412 '@babel/helper-plugin-utils': 7.27.1 3422 3413 3423 - '@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)': 3424 3415 dependencies: 3425 - '@babel/core': 7.27.4 3416 + '@babel/core': 7.28.5 3426 3417 '@babel/helper-plugin-utils': 7.27.1 3427 3418 3428 - '@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)': 3429 3420 dependencies: 3430 - '@babel/core': 7.27.4 3421 + '@babel/core': 7.28.5 3431 3422 '@babel/helper-plugin-utils': 7.27.1 3432 3423 3433 - '@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)': 3434 3425 dependencies: 3435 - '@babel/core': 7.27.4 3436 - '@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) 3437 3428 '@babel/helper-plugin-utils': 7.27.1 3438 3429 3439 - '@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)': 3440 3431 dependencies: 3441 - '@babel/core': 7.27.4 3442 - '@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) 3443 3434 '@babel/helper-plugin-utils': 7.27.1 3444 3435 3445 - '@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)': 3446 3437 dependencies: 3447 - '@babel/core': 7.27.4 3448 - '@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) 3449 3440 '@babel/helper-plugin-utils': 7.27.1 3450 3441 3451 - '@babel/preset-env@7.27.2(@babel/core@7.27.4)': 3442 + '@babel/preset-env@7.28.5(@babel/core@7.28.5)': 3452 3443 dependencies: 3453 - '@babel/compat-data': 7.27.5 3454 - '@babel/core': 7.27.4 3444 + '@babel/compat-data': 7.28.5 3445 + '@babel/core': 7.28.5 3455 3446 '@babel/helper-compilation-targets': 7.27.2 3456 3447 '@babel/helper-plugin-utils': 7.27.1 3457 3448 '@babel/helper-validator-option': 7.27.1 3458 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.27.1(@babel/core@7.27.4) 3459 - '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.27.1(@babel/core@7.27.4) 3460 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.27.1(@babel/core@7.27.4) 3461 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.27.1(@babel/core@7.27.4) 3462 - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.27.1(@babel/core@7.27.4) 3463 - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.27.4) 3464 - '@babel/plugin-syntax-import-assertions': 7.27.1(@babel/core@7.27.4) 3465 - '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.27.4) 3466 - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.27.4) 3467 - '@babel/plugin-transform-arrow-functions': 7.27.1(@babel/core@7.27.4) 3468 - '@babel/plugin-transform-async-generator-functions': 7.27.1(@babel/core@7.27.4) 3469 - '@babel/plugin-transform-async-to-generator': 7.27.1(@babel/core@7.27.4) 3470 - '@babel/plugin-transform-block-scoped-functions': 7.27.1(@babel/core@7.27.4) 3471 - '@babel/plugin-transform-block-scoping': 7.27.5(@babel/core@7.27.4) 3472 - '@babel/plugin-transform-class-properties': 7.27.1(@babel/core@7.27.4) 3473 - '@babel/plugin-transform-class-static-block': 7.27.1(@babel/core@7.27.4) 3474 - '@babel/plugin-transform-classes': 7.27.1(@babel/core@7.27.4) 3475 - '@babel/plugin-transform-computed-properties': 7.27.1(@babel/core@7.27.4) 3476 - '@babel/plugin-transform-destructuring': 7.27.3(@babel/core@7.27.4) 3477 - '@babel/plugin-transform-dotall-regex': 7.27.1(@babel/core@7.27.4) 3478 - '@babel/plugin-transform-duplicate-keys': 7.27.1(@babel/core@7.27.4) 3479 - '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.27.1(@babel/core@7.27.4) 3480 - '@babel/plugin-transform-dynamic-import': 7.27.1(@babel/core@7.27.4) 3481 - '@babel/plugin-transform-exponentiation-operator': 7.27.1(@babel/core@7.27.4) 3482 - '@babel/plugin-transform-export-namespace-from': 7.27.1(@babel/core@7.27.4) 3483 - '@babel/plugin-transform-for-of': 7.27.1(@babel/core@7.27.4) 3484 - '@babel/plugin-transform-function-name': 7.27.1(@babel/core@7.27.4) 3485 - '@babel/plugin-transform-json-strings': 7.27.1(@babel/core@7.27.4) 3486 - '@babel/plugin-transform-literals': 7.27.1(@babel/core@7.27.4) 3487 - '@babel/plugin-transform-logical-assignment-operators': 7.27.1(@babel/core@7.27.4) 3488 - '@babel/plugin-transform-member-expression-literals': 7.27.1(@babel/core@7.27.4) 3489 - '@babel/plugin-transform-modules-amd': 7.27.1(@babel/core@7.27.4) 3490 - '@babel/plugin-transform-modules-commonjs': 7.27.1(@babel/core@7.27.4) 3491 - '@babel/plugin-transform-modules-systemjs': 7.27.1(@babel/core@7.27.4) 3492 - '@babel/plugin-transform-modules-umd': 7.27.1(@babel/core@7.27.4) 3493 - '@babel/plugin-transform-named-capturing-groups-regex': 7.27.1(@babel/core@7.27.4) 3494 - '@babel/plugin-transform-new-target': 7.27.1(@babel/core@7.27.4) 3495 - '@babel/plugin-transform-nullish-coalescing-operator': 7.27.1(@babel/core@7.27.4) 3496 - '@babel/plugin-transform-numeric-separator': 7.27.1(@babel/core@7.27.4) 3497 - '@babel/plugin-transform-object-rest-spread': 7.27.3(@babel/core@7.27.4) 3498 - '@babel/plugin-transform-object-super': 7.27.1(@babel/core@7.27.4) 3499 - '@babel/plugin-transform-optional-catch-binding': 7.27.1(@babel/core@7.27.4) 3500 - '@babel/plugin-transform-optional-chaining': 7.27.1(@babel/core@7.27.4) 3501 - '@babel/plugin-transform-parameters': 7.27.1(@babel/core@7.27.4) 3502 - '@babel/plugin-transform-private-methods': 7.27.1(@babel/core@7.27.4) 3503 - '@babel/plugin-transform-private-property-in-object': 7.27.1(@babel/core@7.27.4) 3504 - '@babel/plugin-transform-property-literals': 7.27.1(@babel/core@7.27.4) 3505 - '@babel/plugin-transform-regenerator': 7.27.5(@babel/core@7.27.4) 3506 - '@babel/plugin-transform-regexp-modifiers': 7.27.1(@babel/core@7.27.4) 3507 - '@babel/plugin-transform-reserved-words': 7.27.1(@babel/core@7.27.4) 3508 - '@babel/plugin-transform-shorthand-properties': 7.27.1(@babel/core@7.27.4) 3509 - '@babel/plugin-transform-spread': 7.27.1(@babel/core@7.27.4) 3510 - '@babel/plugin-transform-sticky-regex': 7.27.1(@babel/core@7.27.4) 3511 - '@babel/plugin-transform-template-literals': 7.27.1(@babel/core@7.27.4) 3512 - '@babel/plugin-transform-typeof-symbol': 7.27.1(@babel/core@7.27.4) 3513 - '@babel/plugin-transform-unicode-escapes': 7.27.1(@babel/core@7.27.4) 3514 - '@babel/plugin-transform-unicode-property-regex': 7.27.1(@babel/core@7.27.4) 3515 - '@babel/plugin-transform-unicode-regex': 7.27.1(@babel/core@7.27.4) 3516 - '@babel/plugin-transform-unicode-sets-regex': 7.27.1(@babel/core@7.27.4) 3517 - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.27.4) 3518 - babel-plugin-polyfill-corejs2: 0.4.13(@babel/core@7.27.4) 3519 - babel-plugin-polyfill-corejs3: 0.11.1(@babel/core@7.27.4) 3520 - babel-plugin-polyfill-regenerator: 0.6.4(@babel/core@7.27.4) 3521 - 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 3522 3514 semver: 6.3.1 3523 3515 transitivePeerDependencies: 3524 3516 - supports-color 3525 3517 3526 - '@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)': 3527 3519 dependencies: 3528 - '@babel/core': 7.27.4 3520 + '@babel/core': 7.28.5 3529 3521 '@babel/helper-plugin-utils': 7.27.1 3530 - '@babel/types': 7.27.6 3522 + '@babel/types': 7.28.5 3531 3523 esutils: 2.0.3 3532 3524 3533 - '@babel/runtime@7.27.6': {} 3525 + '@babel/runtime@7.28.4': {} 3534 3526 3535 3527 '@babel/template@7.27.2': 3536 3528 dependencies: 3537 3529 '@babel/code-frame': 7.27.1 3538 - '@babel/parser': 7.27.5 3539 - '@babel/types': 7.27.6 3530 + '@babel/parser': 7.28.5 3531 + '@babel/types': 7.28.5 3540 3532 3541 - '@babel/traverse@7.27.4': 3533 + '@babel/traverse@7.28.5': 3542 3534 dependencies: 3543 3535 '@babel/code-frame': 7.27.1 3544 - '@babel/generator': 7.27.5 3545 - '@babel/parser': 7.27.5 3536 + '@babel/generator': 7.28.5 3537 + '@babel/helper-globals': 7.28.0 3538 + '@babel/parser': 7.28.5 3546 3539 '@babel/template': 7.27.2 3547 - '@babel/types': 7.27.6 3548 - debug: 4.4.1 3549 - globals: 11.12.0 3540 + '@babel/types': 7.28.5 3541 + debug: 4.4.3 3550 3542 transitivePeerDependencies: 3551 3543 - supports-color 3552 3544 3553 - '@babel/types@7.27.6': 3545 + '@babel/types@7.28.5': 3554 3546 dependencies: 3555 3547 '@babel/helper-string-parser': 7.27.1 3556 - '@babel/helper-validator-identifier': 7.27.1 3548 + '@babel/helper-validator-identifier': 7.28.5 3557 3549 3558 - '@badrap/valita@0.4.5': {} 3550 + '@badrap/valita@0.4.6': {} 3559 3551 3560 - '@cloudflare/kv-asset-handler@0.4.0': 3552 + '@cloudflare/kv-asset-handler@0.4.1': 3561 3553 dependencies: 3562 3554 mime: 3.0.0 3563 3555 3564 - '@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)': 3565 3557 dependencies: 3566 - unenv: 2.0.0-rc.19 3558 + unenv: 2.0.0-rc.24 3567 3559 optionalDependencies: 3568 - workerd: 1.20250816.0 3560 + workerd: 1.20251202.0 3569 3561 3570 - '@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)': 3571 3563 dependencies: 3572 - '@cloudflare/unenv-preset': 2.6.2(unenv@2.0.0-rc.19)(workerd@1.20250816.0) 3573 - '@mjackson/node-fetch-server': 0.6.1 3574 - '@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 3575 3567 get-port: 7.1.0 3576 - miniflare: 4.20250816.1 3568 + miniflare: 4.20251202.1 3577 3569 picocolors: 1.1.1 3578 - tinyglobby: 0.2.14 3579 - unenv: 2.0.0-rc.19 3580 - vite: 6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0) 3581 - 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 3582 3574 ws: 8.18.0 3583 3575 transitivePeerDependencies: 3584 3576 - bufferutil 3585 - - rollup 3586 3577 - utf-8-validate 3587 3578 - workerd 3588 3579 3589 - '@cloudflare/workerd-darwin-64@1.20250816.0': 3580 + '@cloudflare/workerd-darwin-64@1.20251202.0': 3590 3581 optional: true 3591 3582 3592 - '@cloudflare/workerd-darwin-arm64@1.20250816.0': 3583 + '@cloudflare/workerd-darwin-arm64@1.20251202.0': 3593 3584 optional: true 3594 3585 3595 - '@cloudflare/workerd-linux-64@1.20250816.0': 3586 + '@cloudflare/workerd-linux-64@1.20251202.0': 3596 3587 optional: true 3597 3588 3598 - '@cloudflare/workerd-linux-arm64@1.20250816.0': 3589 + '@cloudflare/workerd-linux-arm64@1.20251202.0': 3599 3590 optional: true 3600 3591 3601 - '@cloudflare/workerd-windows-64@1.20250816.0': 3592 + '@cloudflare/workerd-windows-64@1.20251202.0': 3602 3593 optional: true 3603 3594 3604 3595 '@cspotcode/source-map-support@0.8.1': 3605 3596 dependencies: 3606 3597 '@jridgewell/trace-mapping': 0.3.9 3607 3598 3608 - '@emnapi/runtime@1.4.3': 3599 + '@emnapi/runtime@1.7.1': 3609 3600 dependencies: 3610 3601 tslib: 2.8.1 3611 3602 optional: true 3612 3603 3613 - '@esbuild/aix-ppc64@0.25.4': 3604 + '@esbuild/aix-ppc64@0.25.12': 3614 3605 optional: true 3615 3606 3616 - '@esbuild/aix-ppc64@0.25.5': 3607 + '@esbuild/aix-ppc64@0.27.0': 3617 3608 optional: true 3618 3609 3619 - '@esbuild/android-arm64@0.25.4': 3610 + '@esbuild/android-arm64@0.25.12': 3620 3611 optional: true 3621 3612 3622 - '@esbuild/android-arm64@0.25.5': 3613 + '@esbuild/android-arm64@0.27.0': 3623 3614 optional: true 3624 3615 3625 - '@esbuild/android-arm@0.25.4': 3616 + '@esbuild/android-arm@0.25.12': 3626 3617 optional: true 3627 3618 3628 - '@esbuild/android-arm@0.25.5': 3619 + '@esbuild/android-arm@0.27.0': 3629 3620 optional: true 3630 3621 3631 - '@esbuild/android-x64@0.25.4': 3622 + '@esbuild/android-x64@0.25.12': 3632 3623 optional: true 3633 3624 3634 - '@esbuild/android-x64@0.25.5': 3625 + '@esbuild/android-x64@0.27.0': 3635 3626 optional: true 3636 3627 3637 - '@esbuild/darwin-arm64@0.25.4': 3628 + '@esbuild/darwin-arm64@0.25.12': 3638 3629 optional: true 3639 3630 3640 - '@esbuild/darwin-arm64@0.25.5': 3631 + '@esbuild/darwin-arm64@0.27.0': 3641 3632 optional: true 3642 3633 3643 - '@esbuild/darwin-x64@0.25.4': 3634 + '@esbuild/darwin-x64@0.25.12': 3644 3635 optional: true 3645 3636 3646 - '@esbuild/darwin-x64@0.25.5': 3637 + '@esbuild/darwin-x64@0.27.0': 3647 3638 optional: true 3648 3639 3649 - '@esbuild/freebsd-arm64@0.25.4': 3640 + '@esbuild/freebsd-arm64@0.25.12': 3650 3641 optional: true 3651 3642 3652 - '@esbuild/freebsd-arm64@0.25.5': 3643 + '@esbuild/freebsd-arm64@0.27.0': 3653 3644 optional: true 3654 3645 3655 - '@esbuild/freebsd-x64@0.25.4': 3646 + '@esbuild/freebsd-x64@0.25.12': 3656 3647 optional: true 3657 3648 3658 - '@esbuild/freebsd-x64@0.25.5': 3649 + '@esbuild/freebsd-x64@0.27.0': 3659 3650 optional: true 3660 3651 3661 - '@esbuild/linux-arm64@0.25.4': 3652 + '@esbuild/linux-arm64@0.25.12': 3662 3653 optional: true 3663 3654 3664 - '@esbuild/linux-arm64@0.25.5': 3655 + '@esbuild/linux-arm64@0.27.0': 3656 + optional: true 3657 + 3658 + '@esbuild/linux-arm@0.25.12': 3659 + optional: true 3660 + 3661 + '@esbuild/linux-arm@0.27.0': 3665 3662 optional: true 3666 3663 3667 - '@esbuild/linux-arm@0.25.4': 3664 + '@esbuild/linux-ia32@0.25.12': 3668 3665 optional: true 3669 3666 3670 - '@esbuild/linux-arm@0.25.5': 3667 + '@esbuild/linux-ia32@0.27.0': 3671 3668 optional: true 3672 3669 3673 - '@esbuild/linux-ia32@0.25.4': 3670 + '@esbuild/linux-loong64@0.25.12': 3674 3671 optional: true 3675 3672 3676 - '@esbuild/linux-ia32@0.25.5': 3673 + '@esbuild/linux-loong64@0.27.0': 3677 3674 optional: true 3678 3675 3679 - '@esbuild/linux-loong64@0.25.4': 3676 + '@esbuild/linux-mips64el@0.25.12': 3680 3677 optional: true 3681 3678 3682 - '@esbuild/linux-loong64@0.25.5': 3679 + '@esbuild/linux-mips64el@0.27.0': 3683 3680 optional: true 3684 3681 3685 - '@esbuild/linux-mips64el@0.25.4': 3682 + '@esbuild/linux-ppc64@0.25.12': 3686 3683 optional: true 3687 3684 3688 - '@esbuild/linux-mips64el@0.25.5': 3685 + '@esbuild/linux-ppc64@0.27.0': 3689 3686 optional: true 3690 3687 3691 - '@esbuild/linux-ppc64@0.25.4': 3688 + '@esbuild/linux-riscv64@0.25.12': 3692 3689 optional: true 3693 3690 3694 - '@esbuild/linux-ppc64@0.25.5': 3691 + '@esbuild/linux-riscv64@0.27.0': 3695 3692 optional: true 3696 3693 3697 - '@esbuild/linux-riscv64@0.25.4': 3694 + '@esbuild/linux-s390x@0.25.12': 3698 3695 optional: true 3699 3696 3700 - '@esbuild/linux-riscv64@0.25.5': 3697 + '@esbuild/linux-s390x@0.27.0': 3701 3698 optional: true 3702 3699 3703 - '@esbuild/linux-s390x@0.25.4': 3700 + '@esbuild/linux-x64@0.25.12': 3704 3701 optional: true 3705 3702 3706 - '@esbuild/linux-s390x@0.25.5': 3703 + '@esbuild/linux-x64@0.27.0': 3707 3704 optional: true 3708 3705 3709 - '@esbuild/linux-x64@0.25.4': 3706 + '@esbuild/netbsd-arm64@0.25.12': 3710 3707 optional: true 3711 3708 3712 - '@esbuild/linux-x64@0.25.5': 3709 + '@esbuild/netbsd-arm64@0.27.0': 3713 3710 optional: true 3714 3711 3715 - '@esbuild/netbsd-arm64@0.25.4': 3712 + '@esbuild/netbsd-x64@0.25.12': 3716 3713 optional: true 3717 3714 3718 - '@esbuild/netbsd-arm64@0.25.5': 3715 + '@esbuild/netbsd-x64@0.27.0': 3719 3716 optional: true 3720 3717 3721 - '@esbuild/netbsd-x64@0.25.4': 3718 + '@esbuild/openbsd-arm64@0.25.12': 3722 3719 optional: true 3723 3720 3724 - '@esbuild/netbsd-x64@0.25.5': 3721 + '@esbuild/openbsd-arm64@0.27.0': 3725 3722 optional: true 3726 3723 3727 - '@esbuild/openbsd-arm64@0.25.4': 3724 + '@esbuild/openbsd-x64@0.25.12': 3728 3725 optional: true 3729 3726 3730 - '@esbuild/openbsd-arm64@0.25.5': 3727 + '@esbuild/openbsd-x64@0.27.0': 3731 3728 optional: true 3732 3729 3733 - '@esbuild/openbsd-x64@0.25.4': 3730 + '@esbuild/openharmony-arm64@0.25.12': 3734 3731 optional: true 3735 3732 3736 - '@esbuild/openbsd-x64@0.25.5': 3733 + '@esbuild/openharmony-arm64@0.27.0': 3737 3734 optional: true 3738 3735 3739 - '@esbuild/sunos-x64@0.25.4': 3736 + '@esbuild/sunos-x64@0.25.12': 3740 3737 optional: true 3741 3738 3742 - '@esbuild/sunos-x64@0.25.5': 3739 + '@esbuild/sunos-x64@0.27.0': 3743 3740 optional: true 3744 3741 3745 - '@esbuild/win32-arm64@0.25.4': 3742 + '@esbuild/win32-arm64@0.25.12': 3746 3743 optional: true 3747 3744 3748 - '@esbuild/win32-arm64@0.25.5': 3745 + '@esbuild/win32-arm64@0.27.0': 3749 3746 optional: true 3750 3747 3751 - '@esbuild/win32-ia32@0.25.4': 3748 + '@esbuild/win32-ia32@0.25.12': 3752 3749 optional: true 3753 3750 3754 - '@esbuild/win32-ia32@0.25.5': 3751 + '@esbuild/win32-ia32@0.27.0': 3755 3752 optional: true 3756 3753 3757 - '@esbuild/win32-x64@0.25.4': 3754 + '@esbuild/win32-x64@0.25.12': 3758 3755 optional: true 3759 3756 3760 - '@esbuild/win32-x64@0.25.5': 3757 + '@esbuild/win32-x64@0.27.0': 3761 3758 optional: true 3762 3759 3763 - '@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))': 3764 3761 dependencies: 3765 - solid-js: 1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 3762 + solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 3766 3763 3767 - '@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))': 3768 3765 dependencies: 3769 3766 '@tanstack/query-core': 5.17.19(patch_hash=0b06407b66b7af88765fb6e01e112677a8c09ce518cb4f547cee8a0044471acd) 3770 - solid-js: 1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 3767 + solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 3771 3768 3772 - '@floating-ui/core@1.7.1': 3769 + '@floating-ui/core@1.7.3': 3773 3770 dependencies: 3774 - '@floating-ui/utils': 0.2.9(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea) 3771 + '@floating-ui/utils': 0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea) 3775 3772 3776 - '@floating-ui/dom@1.7.1': 3773 + '@floating-ui/dom@1.7.4': 3777 3774 dependencies: 3778 - '@floating-ui/core': 1.7.1 3779 - '@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) 3780 3777 3781 - '@floating-ui/utils@0.2.9(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea)': {} 3778 + '@floating-ui/utils@0.2.10(patch_hash=1cf283fbaa686f96f7b3029bbc0955bff698af6f4a75ba6c276ad1a7a7c40aea)': {} 3782 3779 3783 3780 '@img/sharp-darwin-arm64@0.33.5': 3784 3781 optionalDependencies: ··· 3846 3843 3847 3844 '@img/sharp-wasm32@0.33.5': 3848 3845 dependencies: 3849 - '@emnapi/runtime': 1.4.3 3846 + '@emnapi/runtime': 1.7.1 3850 3847 optional: true 3851 3848 3852 3849 '@img/sharp-win32-ia32@0.33.5': ··· 3855 3852 '@img/sharp-win32-x64@0.33.5': 3856 3853 optional: true 3857 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 3860 + 3858 3861 '@isaacs/cliui@8.0.2': 3859 3862 dependencies: 3860 3863 string-width: 5.1.2 3861 3864 string-width-cjs: string-width@4.2.3 3862 - strip-ansi: 7.1.0 3865 + strip-ansi: 7.1.2 3863 3866 strip-ansi-cjs: strip-ansi@6.0.1 3864 3867 wrap-ansi: 8.1.0 3865 3868 wrap-ansi-cjs: wrap-ansi@7.0.0 3866 3869 3867 - '@jridgewell/gen-mapping@0.3.8': 3870 + '@jridgewell/gen-mapping@0.3.13': 3871 + dependencies: 3872 + '@jridgewell/sourcemap-codec': 1.5.5 3873 + '@jridgewell/trace-mapping': 0.3.31 3874 + 3875 + '@jridgewell/remapping@2.3.5': 3868 3876 dependencies: 3869 - '@jridgewell/set-array': 1.2.1 3870 - '@jridgewell/sourcemap-codec': 1.5.0 3871 - '@jridgewell/trace-mapping': 0.3.25 3877 + '@jridgewell/gen-mapping': 0.3.13 3878 + '@jridgewell/trace-mapping': 0.3.31 3872 3879 3873 3880 '@jridgewell/resolve-uri@3.1.2': {} 3874 3881 3875 - '@jridgewell/set-array@1.2.1': {} 3876 - 3877 - '@jridgewell/source-map@0.3.6': 3882 + '@jridgewell/source-map@0.3.11': 3878 3883 dependencies: 3879 - '@jridgewell/gen-mapping': 0.3.8 3880 - '@jridgewell/trace-mapping': 0.3.25 3881 - 3882 - '@jridgewell/sourcemap-codec@1.5.0': {} 3884 + '@jridgewell/gen-mapping': 0.3.13 3885 + '@jridgewell/trace-mapping': 0.3.31 3883 3886 3884 3887 '@jridgewell/sourcemap-codec@1.5.5': {} 3885 3888 3886 - '@jridgewell/trace-mapping@0.3.25': 3889 + '@jridgewell/trace-mapping@0.3.31': 3887 3890 dependencies: 3888 3891 '@jridgewell/resolve-uri': 3.1.2 3889 - '@jridgewell/sourcemap-codec': 1.5.0 3892 + '@jridgewell/sourcemap-codec': 1.5.5 3890 3893 3891 3894 '@jridgewell/trace-mapping@0.3.9': 3892 3895 dependencies: 3893 3896 '@jridgewell/resolve-uri': 3.1.2 3894 - '@jridgewell/sourcemap-codec': 1.5.0 3897 + '@jridgewell/sourcemap-codec': 1.5.5 3895 3898 3896 - '@jsr/mary__array-fns@0.1.4': {} 3899 + '@jsr/mary__array-fns@0.1.5': {} 3897 3900 3898 3901 '@jsr/mary__async-iterator-fns@0.1.1': {} 3899 3902 ··· 3907 3910 3908 3911 '@kelinci/basa-lexicons@1.0.0': 3909 3912 dependencies: 3910 - '@atcute/lexicons': 1.1.1 3911 - 3912 - '@mjackson/node-fetch-server@0.6.1': {} 3913 + '@atcute/lexicons': 1.2.5 3913 3914 3914 - '@noble/secp256k1@2.3.0': {} 3915 + '@noble/secp256k1@3.0.0': {} 3915 3916 3916 3917 '@nodelib/fs.scandir@2.1.5': 3917 3918 dependencies: ··· 3935 3936 dependencies: 3936 3937 '@nolyfill/shared': 1.0.44 3937 3938 3938 - '@pkgjs/parseargs@0.11.0': 3939 - optional: true 3940 - 3941 3939 '@poppinss/colors@4.1.5': 3942 3940 dependencies: 3943 3941 kleur: 4.1.5 3944 3942 3945 - '@poppinss/dumper@0.6.4': 3943 + '@poppinss/dumper@0.6.5': 3946 3944 dependencies: 3947 3945 '@poppinss/colors': 4.1.5 3948 - '@sindresorhus/is': 7.0.2 3949 - supports-color: 10.2.0 3946 + '@sindresorhus/is': 7.1.1 3947 + supports-color: 10.2.2 3950 3948 3951 3949 '@poppinss/exception@1.2.2': {} 3952 3950 3953 - '@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)': 3954 3954 dependencies: 3955 - '@babel/core': 7.27.4 3955 + '@babel/core': 7.28.5 3956 3956 '@babel/helper-module-imports': 7.27.1 3957 3957 '@rollup/pluginutils': 3.1.0(rollup@2.79.2) 3958 3958 rollup: 2.79.2 ··· 3963 3963 3964 3964 '@rollup/plugin-node-resolve@15.3.1(rollup@2.79.2)': 3965 3965 dependencies: 3966 - '@rollup/pluginutils': 5.2.0(rollup@2.79.2) 3966 + '@rollup/pluginutils': 5.3.0(rollup@2.79.2) 3967 3967 '@types/resolve': 1.20.2 3968 3968 deepmerge: 4.3.1 3969 3969 is-module: 1.0.0 3970 - resolve: 1.22.10 3970 + resolve: 1.22.11 3971 3971 optionalDependencies: 3972 3972 rollup: 2.79.2 3973 3973 ··· 3976 3976 '@rollup/pluginutils': 3.1.0(rollup@2.79.2) 3977 3977 magic-string: 0.25.9 3978 3978 rollup: 2.79.2 3979 - 3980 - '@rollup/plugin-replace@6.0.2(rollup@4.44.0)': 3981 - dependencies: 3982 - '@rollup/pluginutils': 5.2.0(rollup@4.44.0) 3983 - magic-string: 0.30.18 3984 - optionalDependencies: 3985 - rollup: 4.44.0 3986 3979 3987 3980 '@rollup/plugin-terser@0.4.4(rollup@2.79.2)': 3988 3981 dependencies: 3989 3982 serialize-javascript: 6.0.2 3990 3983 smob: 1.5.0 3991 - terser: 5.43.1 3984 + terser: 5.44.1 3992 3985 optionalDependencies: 3993 3986 rollup: 2.79.2 3994 3987 ··· 3999 3992 picomatch: 2.3.1 4000 3993 rollup: 2.79.2 4001 3994 4002 - '@rollup/pluginutils@5.2.0(rollup@2.79.2)': 3995 + '@rollup/pluginutils@5.3.0(rollup@2.79.2)': 4003 3996 dependencies: 4004 3997 '@types/estree': 1.0.8 4005 3998 estree-walker: 2.0.2 4006 - picomatch: 4.0.2 3999 + picomatch: 4.0.3 4007 4000 optionalDependencies: 4008 4001 rollup: 2.79.2 4009 4002 4010 - '@rollup/pluginutils@5.2.0(rollup@4.44.0)': 4011 - dependencies: 4012 - '@types/estree': 1.0.8 4013 - estree-walker: 2.0.2 4014 - picomatch: 4.0.2 4015 - optionalDependencies: 4016 - 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 4017 4008 4018 - '@rollup/rollup-android-arm-eabi@4.44.0': 4009 + '@rollup/rollup-darwin-arm64@4.53.3': 4019 4010 optional: true 4020 4011 4021 - '@rollup/rollup-android-arm64@4.44.0': 4012 + '@rollup/rollup-darwin-x64@4.53.3': 4022 4013 optional: true 4023 4014 4024 - '@rollup/rollup-darwin-arm64@4.44.0': 4015 + '@rollup/rollup-freebsd-arm64@4.53.3': 4025 4016 optional: true 4026 4017 4027 - '@rollup/rollup-darwin-x64@4.44.0': 4018 + '@rollup/rollup-freebsd-x64@4.53.3': 4028 4019 optional: true 4029 4020 4030 - '@rollup/rollup-freebsd-arm64@4.44.0': 4021 + '@rollup/rollup-linux-arm-gnueabihf@4.53.3': 4031 4022 optional: true 4032 4023 4033 - '@rollup/rollup-freebsd-x64@4.44.0': 4024 + '@rollup/rollup-linux-arm-musleabihf@4.53.3': 4034 4025 optional: true 4035 4026 4036 - '@rollup/rollup-linux-arm-gnueabihf@4.44.0': 4027 + '@rollup/rollup-linux-arm64-gnu@4.53.3': 4037 4028 optional: true 4038 4029 4039 - '@rollup/rollup-linux-arm-musleabihf@4.44.0': 4030 + '@rollup/rollup-linux-arm64-musl@4.53.3': 4040 4031 optional: true 4041 4032 4042 - '@rollup/rollup-linux-arm64-gnu@4.44.0': 4033 + '@rollup/rollup-linux-loong64-gnu@4.53.3': 4043 4034 optional: true 4044 4035 4045 - '@rollup/rollup-linux-arm64-musl@4.44.0': 4036 + '@rollup/rollup-linux-ppc64-gnu@4.53.3': 4046 4037 optional: true 4047 4038 4048 - '@rollup/rollup-linux-loongarch64-gnu@4.44.0': 4039 + '@rollup/rollup-linux-riscv64-gnu@4.53.3': 4049 4040 optional: true 4050 4041 4051 - '@rollup/rollup-linux-powerpc64le-gnu@4.44.0': 4042 + '@rollup/rollup-linux-riscv64-musl@4.53.3': 4052 4043 optional: true 4053 4044 4054 - '@rollup/rollup-linux-riscv64-gnu@4.44.0': 4045 + '@rollup/rollup-linux-s390x-gnu@4.53.3': 4055 4046 optional: true 4056 4047 4057 - '@rollup/rollup-linux-riscv64-musl@4.44.0': 4048 + '@rollup/rollup-linux-x64-gnu@4.53.3': 4058 4049 optional: true 4059 4050 4060 - '@rollup/rollup-linux-s390x-gnu@4.44.0': 4051 + '@rollup/rollup-linux-x64-musl@4.53.3': 4061 4052 optional: true 4062 4053 4063 - '@rollup/rollup-linux-x64-gnu@4.44.0': 4054 + '@rollup/rollup-openharmony-arm64@4.53.3': 4064 4055 optional: true 4065 4056 4066 - '@rollup/rollup-linux-x64-musl@4.44.0': 4057 + '@rollup/rollup-win32-arm64-msvc@4.53.3': 4067 4058 optional: true 4068 4059 4069 - '@rollup/rollup-win32-arm64-msvc@4.44.0': 4060 + '@rollup/rollup-win32-ia32-msvc@4.53.3': 4070 4061 optional: true 4071 4062 4072 - '@rollup/rollup-win32-ia32-msvc@4.44.0': 4063 + '@rollup/rollup-win32-x64-gnu@4.53.3': 4073 4064 optional: true 4074 4065 4075 - '@rollup/rollup-win32-x64-msvc@4.44.0': 4066 + '@rollup/rollup-win32-x64-msvc@4.53.3': 4076 4067 optional: true 4077 4068 4078 - '@sindresorhus/is@7.0.2': {} 4069 + '@sindresorhus/is@7.1.1': {} 4070 + 4071 + '@speed-highlight/core@1.2.12': {} 4079 4072 4080 - '@speed-highlight/core@1.2.7': {} 4073 + '@standard-schema/spec@1.0.0': {} 4081 4074 4082 4075 '@surma/rollup-plugin-off-main-thread@2.2.3': 4083 4076 dependencies: ··· 4088 4081 4089 4082 '@tanstack/query-core@5.17.19(patch_hash=0b06407b66b7af88765fb6e01e112677a8c09ce518cb4f547cee8a0044471acd)': {} 4090 4083 4091 - '@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)': 4092 4085 dependencies: 4093 - '@babel/generator': 7.27.5 4094 - '@babel/parser': 7.27.5 4095 - '@babel/traverse': 7.27.4 4096 - '@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 4097 4090 javascript-natural-sort: 0.7.1 4098 4091 lodash: 4.17.21 4099 - prettier: 3.6.0 4092 + prettier: 3.7.4 4100 4093 transitivePeerDependencies: 4101 4094 - supports-color 4102 4095 4103 4096 '@types/babel__core@7.20.5': 4104 4097 dependencies: 4105 - '@babel/parser': 7.27.5 4106 - '@babel/types': 7.27.6 4098 + '@babel/parser': 7.28.5 4099 + '@babel/types': 7.28.5 4107 4100 '@types/babel__generator': 7.27.0 4108 4101 '@types/babel__template': 7.4.4 4109 - '@types/babel__traverse': 7.20.7 4102 + '@types/babel__traverse': 7.28.0 4110 4103 4111 4104 '@types/babel__generator@7.27.0': 4112 4105 dependencies: 4113 - '@babel/types': 7.27.6 4106 + '@babel/types': 7.28.5 4114 4107 4115 4108 '@types/babel__template@7.4.4': 4116 4109 dependencies: 4117 - '@babel/parser': 7.27.5 4118 - '@babel/types': 7.27.6 4110 + '@babel/parser': 7.28.5 4111 + '@babel/types': 7.28.5 4119 4112 4120 - '@types/babel__traverse@7.20.7': 4113 + '@types/babel__traverse@7.28.0': 4121 4114 dependencies: 4122 - '@babel/types': 7.27.6 4115 + '@babel/types': 7.28.5 4123 4116 4124 4117 '@types/dom-close-watcher@1.0.0': {} 4125 4118 4126 - '@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': {} 4127 4126 4128 4127 '@types/estree@0.0.39': {} 4129 4128 4130 4129 '@types/estree@1.0.8': {} 4131 4130 4132 - '@types/node@24.3.0': 4131 + '@types/node@24.10.1': 4133 4132 dependencies: 4134 - undici-types: 7.10.0 4133 + undici-types: 7.16.0 4135 4134 4136 4135 '@types/resolve@1.20.2': {} 4137 4136 4138 4137 '@types/trusted-types@2.0.7': {} 4139 - 4140 - '@types/wicg-file-system-access@2020.9.8': {} 4141 4138 4142 4139 acorn-walk@8.3.2: {} 4143 4140 ··· 4148 4145 ajv@8.17.1: 4149 4146 dependencies: 4150 4147 fast-deep-equal: 3.1.3 4151 - fast-uri: 3.0.6 4148 + fast-uri: 3.1.0 4152 4149 json-schema-traverse: 1.0.0 4153 4150 require-from-string: 2.0.2 4154 4151 4155 4152 ansi-regex@5.0.1: {} 4156 4153 4157 - ansi-regex@6.1.0: {} 4154 + ansi-regex@6.2.2: {} 4158 4155 4159 4156 ansi-styles@4.3.0: 4160 4157 dependencies: 4161 4158 color-convert: 2.0.1 4162 4159 4163 - ansi-styles@6.2.1: {} 4160 + ansi-styles@6.2.3: {} 4164 4161 4165 4162 any-promise@1.3.0: {} 4166 4163 ··· 4175 4172 4176 4173 at-least-node@1.0.0: {} 4177 4174 4178 - autoprefixer@10.4.21(postcss@8.5.6): 4175 + autoprefixer@10.4.22(postcss@8.5.6): 4179 4176 dependencies: 4180 - browserslist: 4.25.0 4181 - caniuse-lite: 1.0.30001724 4182 - fraction.js: 4.3.7 4177 + browserslist: 4.28.1 4178 + caniuse-lite: 1.0.30001759 4179 + fraction.js: 5.3.4 4183 4180 normalize-range: 0.1.2 4184 4181 picocolors: 1.1.1 4185 4182 postcss: 8.5.6 4186 4183 postcss-value-parser: 4.2.0 4187 4184 4188 - 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): 4189 4186 dependencies: 4190 - '@babel/core': 7.27.4 4187 + '@babel/core': 7.28.5 4191 4188 '@babel/helper-module-imports': 7.18.6 4192 - '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.27.4) 4193 - '@babel/types': 7.27.6 4189 + '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.5) 4190 + '@babel/types': 7.28.5 4194 4191 html-entities: 2.3.3 4195 4192 parse5: 7.3.0 4196 - validate-html-nesting: 1.2.3 4197 4193 4198 - 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): 4199 4195 dependencies: 4200 - '@babel/compat-data': 7.27.5 4201 - '@babel/core': 7.27.4 4202 - '@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) 4203 4199 semver: 6.3.1 4204 4200 transitivePeerDependencies: 4205 4201 - supports-color 4206 4202 4207 - 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): 4208 4204 dependencies: 4209 - '@babel/core': 7.27.4 4210 - '@babel/helper-define-polyfill-provider': 0.6.4(@babel/core@7.27.4) 4211 - 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 4212 4208 transitivePeerDependencies: 4213 4209 - supports-color 4214 4210 4215 - 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): 4216 4212 dependencies: 4217 - '@babel/core': 7.27.4 4218 - '@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) 4219 4215 transitivePeerDependencies: 4220 4216 - supports-color 4221 4217 4222 - 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): 4223 4219 dependencies: 4224 - '@babel/core': 7.27.4 4220 + '@babel/core': 7.28.5 4225 4221 '@babel/helper-plugin-utils': 7.27.1 4226 - '@babel/types': 7.27.6 4222 + '@babel/types': 7.28.5 4227 4223 4228 - 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)): 4229 4225 dependencies: 4230 - '@babel/core': 7.27.4 4231 - 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) 4232 4230 4233 4231 balanced-match@1.0.2: {} 4232 + 4233 + baseline-browser-mapping@2.9.3: {} 4234 4234 4235 4235 binary-extensions@2.3.0: {} 4236 4236 ··· 4238 4238 4239 4239 blake3-wasm@2.1.5: {} 4240 4240 4241 - brace-expansion@1.1.12: 4242 - dependencies: 4243 - balanced-match: 1.0.2 4244 - concat-map: 0.0.1 4245 - 4246 4241 brace-expansion@2.0.2: 4247 4242 dependencies: 4248 4243 balanced-match: 1.0.2 ··· 4251 4246 dependencies: 4252 4247 fill-range: 7.1.1 4253 4248 4254 - browserslist@4.25.0: 4249 + browserslist@4.28.1: 4255 4250 dependencies: 4256 - caniuse-lite: 1.0.30001724 4257 - electron-to-chromium: 1.5.171 4258 - node-releases: 2.0.19 4259 - 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) 4260 4256 4261 4257 buffer-from@1.1.2: {} 4262 4258 4263 4259 camelcase-css@2.0.1: {} 4264 4260 4265 - caniuse-lite@1.0.30001724: {} 4266 - 4267 - chalk@4.1.2: 4268 - dependencies: 4269 - ansi-styles: 4.3.0 4270 - supports-color: 7.2.0 4261 + caniuse-lite@1.0.30001759: {} 4271 4262 4272 4263 chokidar@3.6.0: 4273 4264 dependencies: ··· 4290 4281 color-string@1.9.1: 4291 4282 dependencies: 4292 4283 color-name: 1.1.4 4293 - simple-swizzle: 0.2.2 4284 + simple-swizzle: 0.2.4 4294 4285 4295 4286 color@4.2.3: 4296 4287 dependencies: ··· 4305 4296 4306 4297 common-tags@1.8.2: {} 4307 4298 4308 - concat-map@0.0.1: {} 4309 - 4310 4299 convert-source-map@2.0.0: {} 4311 4300 4312 - cookie@1.0.2: {} 4301 + cookie@1.1.1: {} 4313 4302 4314 - core-js-compat@3.43.0: 4303 + core-js-compat@3.47.0: 4315 4304 dependencies: 4316 - browserslist: 4.25.0 4305 + browserslist: 4.28.1 4317 4306 4318 4307 cross-spawn@7.0.6: 4319 4308 dependencies: ··· 4325 4314 4326 4315 cssesc@3.0.0: {} 4327 4316 4328 - csstype@3.1.3: {} 4317 + csstype@3.2.3: {} 4329 4318 4330 - debug@4.4.1: 4319 + debug@4.4.3: 4331 4320 dependencies: 4332 4321 ms: 2.1.3 4333 4322 ··· 4335 4324 4336 4325 defu@6.1.4: {} 4337 4326 4338 - detect-libc@2.0.4: {} 4327 + detect-libc@2.1.2: {} 4339 4328 4340 4329 didyoumean@1.2.2: {} 4341 4330 ··· 4345 4334 4346 4335 ejs@3.1.10: 4347 4336 dependencies: 4348 - jake: 10.9.2 4337 + jake: 10.9.4 4349 4338 4350 - electron-to-chromium@1.5.171: {} 4339 + electron-to-chromium@1.5.266: {} 4351 4340 4352 4341 emoji-regex@8.0.0: {} 4353 4342 ··· 4357 4346 4358 4347 error-stack-parser-es@1.0.5: {} 4359 4348 4360 - esbuild@0.25.4: 4349 + esbuild@0.25.12: 4361 4350 optionalDependencies: 4362 - '@esbuild/aix-ppc64': 0.25.4 4363 - '@esbuild/android-arm': 0.25.4 4364 - '@esbuild/android-arm64': 0.25.4 4365 - '@esbuild/android-x64': 0.25.4 4366 - '@esbuild/darwin-arm64': 0.25.4 4367 - '@esbuild/darwin-x64': 0.25.4 4368 - '@esbuild/freebsd-arm64': 0.25.4 4369 - '@esbuild/freebsd-x64': 0.25.4 4370 - '@esbuild/linux-arm': 0.25.4 4371 - '@esbuild/linux-arm64': 0.25.4 4372 - '@esbuild/linux-ia32': 0.25.4 4373 - '@esbuild/linux-loong64': 0.25.4 4374 - '@esbuild/linux-mips64el': 0.25.4 4375 - '@esbuild/linux-ppc64': 0.25.4 4376 - '@esbuild/linux-riscv64': 0.25.4 4377 - '@esbuild/linux-s390x': 0.25.4 4378 - '@esbuild/linux-x64': 0.25.4 4379 - '@esbuild/netbsd-arm64': 0.25.4 4380 - '@esbuild/netbsd-x64': 0.25.4 4381 - '@esbuild/openbsd-arm64': 0.25.4 4382 - '@esbuild/openbsd-x64': 0.25.4 4383 - '@esbuild/sunos-x64': 0.25.4 4384 - '@esbuild/win32-arm64': 0.25.4 4385 - '@esbuild/win32-ia32': 0.25.4 4386 - '@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 4387 4377 4388 - esbuild@0.25.5: 4378 + esbuild@0.27.0: 4389 4379 optionalDependencies: 4390 - '@esbuild/aix-ppc64': 0.25.5 4391 - '@esbuild/android-arm': 0.25.5 4392 - '@esbuild/android-arm64': 0.25.5 4393 - '@esbuild/android-x64': 0.25.5 4394 - '@esbuild/darwin-arm64': 0.25.5 4395 - '@esbuild/darwin-x64': 0.25.5 4396 - '@esbuild/freebsd-arm64': 0.25.5 4397 - '@esbuild/freebsd-x64': 0.25.5 4398 - '@esbuild/linux-arm': 0.25.5 4399 - '@esbuild/linux-arm64': 0.25.5 4400 - '@esbuild/linux-ia32': 0.25.5 4401 - '@esbuild/linux-loong64': 0.25.5 4402 - '@esbuild/linux-mips64el': 0.25.5 4403 - '@esbuild/linux-ppc64': 0.25.5 4404 - '@esbuild/linux-riscv64': 0.25.5 4405 - '@esbuild/linux-s390x': 0.25.5 4406 - '@esbuild/linux-x64': 0.25.5 4407 - '@esbuild/netbsd-arm64': 0.25.5 4408 - '@esbuild/netbsd-x64': 0.25.5 4409 - '@esbuild/openbsd-arm64': 0.25.5 4410 - '@esbuild/openbsd-x64': 0.25.5 4411 - '@esbuild/sunos-x64': 0.25.5 4412 - '@esbuild/win32-arm64': 0.25.5 4413 - '@esbuild/win32-ia32': 0.25.5 4414 - '@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 4415 4406 4416 4407 escalade@3.2.0: {} 4417 4408 ··· 4425 4416 4426 4417 exit-hook@2.2.1: {} 4427 4418 4428 - exsolve@1.0.7: {} 4429 - 4430 4419 fast-deep-equal@3.1.3: {} 4431 4420 4432 4421 fast-glob@3.3.3: ··· 4439 4428 4440 4429 fast-json-stable-stringify@2.1.0: {} 4441 4430 4442 - fast-uri@3.0.6: {} 4431 + fast-uri@3.1.0: {} 4443 4432 4444 4433 fastq@1.19.1: 4445 4434 dependencies: 4446 4435 reusify: 1.1.0 4447 4436 4448 - fdir@6.4.6(picomatch@4.0.2): 4437 + fdir@6.5.0(picomatch@4.0.3): 4449 4438 optionalDependencies: 4450 - picomatch: 4.0.2 4439 + picomatch: 4.0.3 4451 4440 4452 4441 filelist@1.0.4: 4453 4442 dependencies: ··· 4462 4451 cross-spawn: 7.0.6 4463 4452 signal-exit: 4.1.0 4464 4453 4465 - fraction.js@4.3.7: {} 4454 + fraction.js@5.3.4: {} 4466 4455 4467 4456 fs-extra@9.1.0: 4468 4457 dependencies: 4469 4458 at-least-node: 1.0.0 4470 4459 graceful-fs: 4.2.11 4471 - jsonfile: 6.1.0 4460 + jsonfile: 6.2.0 4472 4461 universalify: 2.0.1 4473 4462 4474 - fs.realpath@1.0.0: {} 4475 - 4476 4463 fsevents@2.3.3: 4477 4464 optional: true 4478 4465 ··· 4492 4479 4493 4480 glob-to-regexp@0.4.1: {} 4494 4481 4495 - glob@10.4.5: 4482 + glob@11.1.0: 4496 4483 dependencies: 4497 4484 foreground-child: 3.3.1 4498 - jackspeak: 3.4.3 4499 - minimatch: 9.0.5 4485 + jackspeak: 4.1.1 4486 + minimatch: 10.1.1 4500 4487 minipass: 7.1.2 4501 4488 package-json-from-dist: 1.0.1 4502 - path-scurry: 1.11.1 4503 - 4504 - glob@7.2.3: 4505 - dependencies: 4506 - fs.realpath: 1.0.0 4507 - inflight: 1.0.6 4508 - inherits: 2.0.4 4509 - minimatch: 3.1.2 4510 - once: 1.4.0 4511 - path-is-absolute: 1.0.1 4512 - 4513 - globals@11.12.0: {} 4489 + path-scurry: 2.0.1 4514 4490 4515 4491 graceful-fs@4.2.11: {} 4516 4492 4517 - has-flag@4.0.0: {} 4518 - 4519 - hls.js@1.6.5: {} 4493 + hls.js@1.6.15: {} 4520 4494 4521 4495 html-entities@2.3.3: {} 4522 4496 ··· 4524 4498 4525 4499 idb@8.0.3: {} 4526 4500 4527 - inflight@1.0.6: 4528 - dependencies: 4529 - once: 1.4.0 4530 - wrappy: 1.0.2 4531 - 4532 - inherits@2.0.4: {} 4533 - 4534 - is-arrayish@0.3.2: {} 4501 + is-arrayish@0.3.4: {} 4535 4502 4536 4503 is-binary-path@2.1.0: 4537 4504 dependencies: ··· 4559 4526 4560 4527 isexe@2.0.0: {} 4561 4528 4562 - jackspeak@3.4.3: 4529 + jackspeak@4.1.1: 4563 4530 dependencies: 4564 4531 '@isaacs/cliui': 8.0.2 4565 - optionalDependencies: 4566 - '@pkgjs/parseargs': 0.11.0 4567 4532 4568 - jake@10.9.2: 4533 + jake@10.9.4: 4569 4534 dependencies: 4570 4535 async: 3.2.6 4571 - chalk: 4.1.2 4572 4536 filelist: 1.0.4 4573 - minimatch: 3.1.2 4537 + picocolors: 1.1.1 4574 4538 4575 4539 javascript-natural-sort@0.7.1: {} 4576 4540 ··· 4578 4542 4579 4543 js-tokens@4.0.0: {} 4580 4544 4581 - jsesc@3.0.2: {} 4582 - 4583 4545 jsesc@3.1.0: {} 4584 4546 4585 4547 json-schema-traverse@1.0.0: {} ··· 4588 4550 4589 4551 json5@2.2.3: {} 4590 4552 4591 - jsonfile@6.1.0: 4553 + jsonfile@6.2.0: 4592 4554 dependencies: 4593 4555 universalify: 2.0.1 4594 4556 optionalDependencies: ··· 4610 4572 4611 4573 lodash@4.17.21: {} 4612 4574 4613 - lru-cache@10.4.3: {} 4575 + lru-cache@11.2.4: {} 4614 4576 4615 4577 lru-cache@5.1.1: 4616 4578 dependencies: ··· 4620 4582 dependencies: 4621 4583 sourcemap-codec: 1.4.8 4622 4584 4623 - magic-string@0.30.18: 4585 + mediabunny@1.25.7: 4624 4586 dependencies: 4625 - '@jridgewell/sourcemap-codec': 1.5.5 4587 + '@types/dom-mediacapture-transform': 0.1.11 4588 + '@types/dom-webcodecs': 0.1.13 4626 4589 4627 4590 merge-anything@5.1.7: 4628 4591 dependencies: ··· 4637 4600 4638 4601 mime@3.0.0: {} 4639 4602 4640 - miniflare@4.20250816.1: 4603 + miniflare@4.20251202.1: 4641 4604 dependencies: 4642 4605 '@cspotcode/source-map-support': 0.8.1 4643 4606 acorn: 8.14.0 ··· 4646 4609 glob-to-regexp: 0.4.1 4647 4610 sharp: 0.33.5 4648 4611 stoppable: 1.1.0 4649 - undici: 7.15.0 4650 - workerd: 1.20250816.0 4612 + undici: 7.14.0 4613 + workerd: 1.20251202.0 4651 4614 ws: 8.18.0 4652 4615 youch: 4.1.0-beta.10 4653 4616 zod: 3.22.3 ··· 4655 4618 - bufferutil 4656 4619 - utf-8-validate 4657 4620 4658 - minimatch@3.1.2: 4621 + minimatch@10.1.1: 4659 4622 dependencies: 4660 - brace-expansion: 1.1.12 4623 + '@isaacs/brace-expansion': 5.0.0 4661 4624 4662 4625 minimatch@5.1.6: 4663 4626 dependencies: 4664 4627 brace-expansion: 2.0.2 4665 4628 4666 - minimatch@9.0.5: 4667 - dependencies: 4668 - brace-expansion: 2.0.2 4669 - 4670 4629 minipass@7.1.2: {} 4671 4630 4672 4631 ms@2.1.3: {} ··· 4679 4638 4680 4639 nanoid@3.3.11: {} 4681 4640 4682 - nanoid@5.1.5: {} 4641 + nanoid@5.1.6: {} 4683 4642 4684 - node-releases@2.0.19: {} 4643 + node-releases@2.0.27: {} 4685 4644 4686 4645 normalize-path@3.0.0: {} 4687 4646 ··· 4691 4650 4692 4651 object-hash@3.0.0: {} 4693 4652 4694 - ohash@2.0.11: {} 4695 - 4696 - once@1.4.0: 4697 - dependencies: 4698 - wrappy: 1.0.2 4699 - 4700 4653 package-json-from-dist@1.0.1: {} 4701 4654 4702 4655 parse5@7.3.0: 4703 4656 dependencies: 4704 4657 entities: 6.0.1 4705 4658 4706 - path-is-absolute@1.0.1: {} 4707 - 4708 4659 path-key@3.1.1: {} 4709 4660 4710 4661 path-parse@1.0.7: {} 4711 4662 4712 - path-scurry@1.11.1: 4663 + path-scurry@2.0.1: 4713 4664 dependencies: 4714 - lru-cache: 10.4.3 4665 + lru-cache: 11.2.4 4715 4666 minipass: 7.1.2 4716 4667 4717 4668 path-to-regexp@6.3.0: {} ··· 4722 4673 4723 4674 picomatch@2.3.1: {} 4724 4675 4725 - picomatch@4.0.2: {} 4676 + picomatch@4.0.3: {} 4726 4677 4727 4678 pify@2.3.0: {} 4728 4679 ··· 4733 4684 postcss: 8.5.6 4734 4685 postcss-value-parser: 4.2.0 4735 4686 read-cache: 1.0.0 4736 - resolve: 1.22.10 4687 + resolve: 1.22.11 4737 4688 4738 - postcss-js@4.0.1(postcss@8.5.6): 4689 + postcss-js@4.1.0(postcss@8.5.6): 4739 4690 dependencies: 4740 4691 camelcase-css: 2.0.1 4741 4692 postcss: 8.5.6 4742 4693 4743 - 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): 4744 4695 dependencies: 4745 4696 lilconfig: 3.1.3 4746 - yaml: 2.8.0 4747 4697 optionalDependencies: 4698 + jiti: 1.21.7 4748 4699 postcss: 8.5.6 4749 4700 4750 4701 postcss-nested@6.2.0(postcss@8.5.6): ··· 4765 4716 picocolors: 1.1.1 4766 4717 source-map-js: 1.2.1 4767 4718 4768 - 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): 4769 4720 dependencies: 4770 - prettier: 3.6.0 4721 + prettier: 3.7.4 4771 4722 optionalDependencies: 4772 - '@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) 4773 4724 4774 - prettier@3.6.0: {} 4725 + prettier@3.7.4: {} 4775 4726 4776 4727 pretty-bytes@5.6.0: {} 4777 4728 ··· 4795 4746 dependencies: 4796 4747 picomatch: 2.3.1 4797 4748 4798 - regenerate-unicode-properties@10.2.0: 4749 + regenerate-unicode-properties@10.2.2: 4799 4750 dependencies: 4800 4751 regenerate: 1.4.2 4801 4752 4802 4753 regenerate@1.4.2: {} 4803 4754 4804 - regexpu-core@6.2.0: 4755 + regexpu-core@6.4.0: 4805 4756 dependencies: 4806 4757 regenerate: 1.4.2 4807 - regenerate-unicode-properties: 10.2.0 4758 + regenerate-unicode-properties: 10.2.2 4808 4759 regjsgen: 0.8.0 4809 - regjsparser: 0.12.0 4760 + regjsparser: 0.13.0 4810 4761 unicode-match-property-ecmascript: 2.0.0 4811 - unicode-match-property-value-ecmascript: 2.2.0 4762 + unicode-match-property-value-ecmascript: 2.2.1 4812 4763 4813 4764 regjsgen@0.8.0: {} 4814 4765 4815 - regjsparser@0.12.0: 4766 + regjsparser@0.13.0: 4816 4767 dependencies: 4817 - jsesc: 3.0.2 4768 + jsesc: 3.1.0 4818 4769 4819 4770 require-from-string@2.0.2: {} 4820 4771 4821 - resolve@1.22.10: 4772 + resolve@1.22.11: 4822 4773 dependencies: 4823 4774 is-core-module: '@nolyfill/is-core-module@1.0.39' 4824 4775 path-parse: 1.0.7 ··· 4830 4781 optionalDependencies: 4831 4782 fsevents: 2.3.3 4832 4783 4833 - rollup@4.44.0: 4784 + rollup@4.53.3: 4834 4785 dependencies: 4835 4786 '@types/estree': 1.0.8 4836 4787 optionalDependencies: 4837 - '@rollup/rollup-android-arm-eabi': 4.44.0 4838 - '@rollup/rollup-android-arm64': 4.44.0 4839 - '@rollup/rollup-darwin-arm64': 4.44.0 4840 - '@rollup/rollup-darwin-x64': 4.44.0 4841 - '@rollup/rollup-freebsd-arm64': 4.44.0 4842 - '@rollup/rollup-freebsd-x64': 4.44.0 4843 - '@rollup/rollup-linux-arm-gnueabihf': 4.44.0 4844 - '@rollup/rollup-linux-arm-musleabihf': 4.44.0 4845 - '@rollup/rollup-linux-arm64-gnu': 4.44.0 4846 - '@rollup/rollup-linux-arm64-musl': 4.44.0 4847 - '@rollup/rollup-linux-loongarch64-gnu': 4.44.0 4848 - '@rollup/rollup-linux-powerpc64le-gnu': 4.44.0 4849 - '@rollup/rollup-linux-riscv64-gnu': 4.44.0 4850 - '@rollup/rollup-linux-riscv64-musl': 4.44.0 4851 - '@rollup/rollup-linux-s390x-gnu': 4.44.0 4852 - '@rollup/rollup-linux-x64-gnu': 4.44.0 4853 - '@rollup/rollup-linux-x64-musl': 4.44.0 4854 - '@rollup/rollup-win32-arm64-msvc': 4.44.0 4855 - '@rollup/rollup-win32-ia32-msvc': 4.44.0 4856 - '@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 4857 4810 fsevents: 2.3.3 4858 4811 4859 4812 run-parallel@1.2.0: ··· 4862 4815 4863 4816 semver@6.3.1: {} 4864 4817 4865 - semver@7.7.2: {} 4818 + semver@7.7.3: {} 4866 4819 4867 4820 serialize-javascript@6.0.2: 4868 4821 dependencies: 4869 4822 randombytes: 2.1.0 4870 4823 4871 - seroval-plugins@1.3.2(seroval@1.3.2): 4824 + seroval-plugins@1.3.3(seroval@1.3.2): 4872 4825 dependencies: 4873 4826 seroval: 1.3.2 4874 4827 ··· 4877 4830 sharp@0.33.5: 4878 4831 dependencies: 4879 4832 color: 4.2.3 4880 - detect-libc: 2.0.4 4881 - semver: 7.7.2 4833 + detect-libc: 2.1.2 4834 + semver: 7.7.3 4882 4835 optionalDependencies: 4883 4836 '@img/sharp-darwin-arm64': 0.33.5 4884 4837 '@img/sharp-darwin-x64': 0.33.5 ··· 4908 4861 4909 4862 signal-exit@4.1.0: {} 4910 4863 4911 - simple-swizzle@0.2.2: 4864 + simple-swizzle@0.2.4: 4912 4865 dependencies: 4913 - is-arrayish: 0.3.2 4866 + is-arrayish: 0.3.4 4914 4867 4915 4868 smob@1.5.0: {} 4916 4869 4917 - 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)): 4918 4871 dependencies: 4919 - '@floating-ui/dom': 1.7.1 4920 - solid-js: 1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 4872 + '@floating-ui/dom': 1.7.4 4873 + solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 4921 4874 4922 - solid-js@1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7): 4875 + solid-js@1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7): 4923 4876 dependencies: 4924 - csstype: 3.1.3 4877 + csstype: 3.2.3 4925 4878 seroval: 1.3.2 4926 - seroval-plugins: 1.3.2(seroval@1.3.2) 4879 + seroval-plugins: 1.3.3(seroval@1.3.2) 4927 4880 4928 - 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)): 4929 4882 dependencies: 4930 - '@babel/generator': 7.27.5 4883 + '@babel/generator': 7.28.5 4931 4884 '@babel/helper-module-imports': 7.27.1 4932 - '@babel/types': 7.27.6 4933 - solid-js: 1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 4885 + '@babel/types': 7.28.5 4886 + solid-js: 1.9.10(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 4934 4887 transitivePeerDependencies: 4935 4888 - supports-color 4936 4889 ··· 4961 4914 dependencies: 4962 4915 eastasianwidth: 0.2.0 4963 4916 emoji-regex: 9.2.2 4964 - strip-ansi: 7.1.0 4917 + strip-ansi: 7.1.2 4965 4918 4966 4919 stringify-object@3.3.0: 4967 4920 dependencies: ··· 4973 4926 dependencies: 4974 4927 ansi-regex: 5.0.1 4975 4928 4976 - strip-ansi@7.1.0: 4929 + strip-ansi@7.1.2: 4977 4930 dependencies: 4978 - ansi-regex: 6.1.0 4931 + ansi-regex: 6.2.2 4979 4932 4980 4933 strip-comments@2.0.1: {} 4981 4934 4982 - sucrase@3.35.0: 4935 + sucrase@3.35.1: 4983 4936 dependencies: 4984 - '@jridgewell/gen-mapping': 0.3.8 4937 + '@jridgewell/gen-mapping': 0.3.13 4985 4938 commander: 4.1.1 4986 - glob: 10.4.5 4987 4939 lines-and-columns: 1.2.4 4988 4940 mz: 2.7.0 4989 4941 pirates: 4.0.7 4942 + tinyglobby: 0.2.15 4990 4943 ts-interface-checker: 0.1.13 4991 4944 4992 - supports-color@10.2.0: {} 4993 - 4994 - supports-color@7.2.0: 4995 - dependencies: 4996 - has-flag: 4.0.0 4945 + supports-color@10.2.2: {} 4997 4946 4998 4947 supports-preserve-symlinks-flag@1.0.0: {} 4999 4948 5000 - tailwindcss@3.4.17: 4949 + tailwindcss@3.4.18: 5001 4950 dependencies: 5002 4951 '@alloc/quick-lru': 5.2.0 5003 4952 arg: 5.0.2 ··· 5015 4964 picocolors: 1.1.1 5016 4965 postcss: 8.5.6 5017 4966 postcss-import: 15.1.0(postcss@8.5.6) 5018 - postcss-js: 4.0.1(postcss@8.5.6) 5019 - 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) 5020 4969 postcss-nested: 6.2.0(postcss@8.5.6) 5021 4970 postcss-selector-parser: 6.1.2 5022 - resolve: 1.22.10 5023 - sucrase: 3.35.0 4971 + resolve: 1.22.11 4972 + sucrase: 3.35.1 5024 4973 transitivePeerDependencies: 5025 - - ts-node 4974 + - tsx 4975 + - yaml 5026 4976 5027 4977 temp-dir@2.0.0: {} 5028 4978 ··· 5033 4983 type-fest: 0.16.0 5034 4984 unique-string: 2.0.0 5035 4985 5036 - terser@5.43.1: 4986 + terser@5.44.1: 5037 4987 dependencies: 5038 - '@jridgewell/source-map': 0.3.6 4988 + '@jridgewell/source-map': 0.3.11 5039 4989 acorn: 8.15.0 5040 4990 commander: 2.20.3 5041 4991 source-map-support: 0.5.21 ··· 5048 4998 dependencies: 5049 4999 any-promise: 1.3.0 5050 5000 5051 - tinyglobby@0.2.14: 5001 + tinyglobby@0.2.15: 5052 5002 dependencies: 5053 - fdir: 6.4.6(picomatch@4.0.2) 5054 - picomatch: 4.0.2 5003 + fdir: 6.5.0(picomatch@4.0.3) 5004 + picomatch: 4.0.3 5055 5005 5056 5006 to-regex-range@5.0.1: 5057 5007 dependencies: ··· 5068 5018 5069 5019 type-fest@0.16.0: {} 5070 5020 5071 - typescript@5.8.3: {} 5021 + typescript@5.9.3: {} 5072 5022 5073 - ufo@1.6.1: {} 5023 + undici-types@7.16.0: {} 5074 5024 5075 - undici-types@7.10.0: {} 5025 + undici@7.14.0: {} 5076 5026 5077 - undici@7.15.0: {} 5078 - 5079 - unenv@2.0.0-rc.19: 5027 + unenv@2.0.0-rc.24: 5080 5028 dependencies: 5081 - defu: 6.1.4 5082 - exsolve: 1.0.7 5083 - ohash: 2.0.11 5084 5029 pathe: 2.0.3 5085 - ufo: 1.6.1 5086 5030 5087 5031 unicode-canonical-property-names-ecmascript@2.0.1: {} 5088 5032 5089 5033 unicode-match-property-ecmascript@2.0.0: 5090 5034 dependencies: 5091 5035 unicode-canonical-property-names-ecmascript: 2.0.1 5092 - unicode-property-aliases-ecmascript: 2.1.0 5036 + unicode-property-aliases-ecmascript: 2.2.0 5093 5037 5094 - unicode-match-property-value-ecmascript@2.2.0: {} 5038 + unicode-match-property-value-ecmascript@2.2.1: {} 5095 5039 5096 - unicode-property-aliases-ecmascript@2.1.0: {} 5040 + unicode-property-aliases-ecmascript@2.2.0: {} 5097 5041 5098 5042 unique-string@2.0.0: 5099 5043 dependencies: ··· 5103 5047 5104 5048 upath@1.2.0: {} 5105 5049 5106 - update-browserslist-db@1.1.3(browserslist@4.25.0): 5050 + update-browserslist-db@1.2.2(browserslist@4.28.1): 5107 5051 dependencies: 5108 - browserslist: 4.25.0 5052 + browserslist: 4.28.1 5109 5053 escalade: 3.2.0 5110 5054 picocolors: 1.1.1 5111 5055 5112 5056 util-deprecate@1.0.2: {} 5113 5057 5114 - validate-html-nesting@1.2.3: {} 5115 - 5116 - 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)): 5117 5059 dependencies: 5118 - debug: 4.4.1 5060 + debug: 4.4.3 5119 5061 pretty-bytes: 6.1.1 5120 - tinyglobby: 0.2.14 5121 - vite: 6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0) 5122 - workbox-build: 7.3.0(@types/babel__core@7.20.5) 5123 - 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 5124 5066 transitivePeerDependencies: 5125 5067 - '@types/babel__core' 5126 5068 - supports-color 5127 5069 5128 - 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)): 5129 5071 dependencies: 5130 - '@babel/core': 7.27.4 5072 + '@babel/core': 7.28.5 5131 5073 '@types/babel__core': 7.20.5 5132 - 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)) 5133 5075 merge-anything: 5.1.7 5134 - solid-js: 1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7) 5135 - solid-refresh: 0.6.3(solid-js@1.9.7(patch_hash=9cf3f9930aa2f8d4e60502a75153adf9468eb53b42f69e86cac05dfaea3f82e7)) 5136 - vite: 6.3.5(@types/node@24.3.0)(jiti@1.21.7)(terser@5.43.1)(yaml@2.8.0) 5137 - 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)) 5138 5080 transitivePeerDependencies: 5139 5081 - supports-color 5140 5082 5141 - 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): 5142 5084 dependencies: 5143 - esbuild: 0.25.5 5144 - fdir: 6.4.6(picomatch@4.0.2) 5145 - picomatch: 4.0.2 5085 + esbuild: 0.25.12 5086 + fdir: 6.5.0(picomatch@4.0.3) 5087 + picomatch: 4.0.3 5146 5088 postcss: 8.5.6 5147 - rollup: 4.44.0 5148 - tinyglobby: 0.2.14 5089 + rollup: 4.53.3 5090 + tinyglobby: 0.2.15 5149 5091 optionalDependencies: 5150 - '@types/node': 24.3.0 5092 + '@types/node': 24.10.1 5151 5093 fsevents: 2.3.3 5152 5094 jiti: 1.21.7 5153 - terser: 5.43.1 5154 - yaml: 2.8.0 5095 + terser: 5.44.1 5155 5096 5156 - 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)): 5157 5098 optionalDependencies: 5158 - 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) 5159 5100 5160 5101 webidl-conversions@4.0.2: {} 5161 5102 5162 - webm-muxer@5.1.3: 5163 - dependencies: 5164 - '@types/dom-webcodecs': 0.1.15 5165 - '@types/wicg-file-system-access': 2020.9.8 5166 - 5167 5103 whatwg-url@7.1.0: 5168 5104 dependencies: 5169 5105 lodash.sortby: 4.7.0 ··· 5174 5110 dependencies: 5175 5111 isexe: 2.0.0 5176 5112 5177 - workbox-background-sync@7.3.0: 5113 + workbox-background-sync@7.4.0: 5178 5114 dependencies: 5179 5115 idb: 7.1.1 5180 - workbox-core: 7.3.0 5116 + workbox-core: 7.4.0 5181 5117 5182 - workbox-broadcast-update@7.3.0: 5118 + workbox-broadcast-update@7.4.0: 5183 5119 dependencies: 5184 - workbox-core: 7.3.0 5120 + workbox-core: 7.4.0 5185 5121 5186 - workbox-build@7.3.0(@types/babel__core@7.20.5): 5122 + workbox-build@7.4.0(@types/babel__core@7.20.5): 5187 5123 dependencies: 5188 5124 '@apideck/better-ajv-errors': 0.3.6(ajv@8.17.1) 5189 - '@babel/core': 7.27.4 5190 - '@babel/preset-env': 7.27.2(@babel/core@7.27.4) 5191 - '@babel/runtime': 7.27.6 5192 - '@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) 5193 5129 '@rollup/plugin-node-resolve': 15.3.1(rollup@2.79.2) 5194 5130 '@rollup/plugin-replace': 2.4.2(rollup@2.79.2) 5195 5131 '@rollup/plugin-terser': 0.4.4(rollup@2.79.2) ··· 5198 5134 common-tags: 1.8.2 5199 5135 fast-json-stable-stringify: 2.1.0 5200 5136 fs-extra: 9.1.0 5201 - glob: 7.2.3 5137 + glob: 11.1.0 5202 5138 lodash: 4.17.21 5203 5139 pretty-bytes: 5.6.0 5204 5140 rollup: 2.79.2 ··· 5207 5143 strip-comments: 2.0.1 5208 5144 tempy: 0.6.0 5209 5145 upath: 1.2.0 5210 - workbox-background-sync: 7.3.0 5211 - workbox-broadcast-update: 7.3.0 5212 - workbox-cacheable-response: 7.3.0 5213 - workbox-core: 7.3.0 5214 - workbox-expiration: 7.3.0 5215 - workbox-google-analytics: 7.3.0 5216 - workbox-navigation-preload: 7.3.0 5217 - workbox-precaching: 7.3.0(patch_hash=ffcec6cb23aa5ae1a2fe2de772c169a4f653a5ae7dc6b03415109f70d86ed35b) 5218 - workbox-range-requests: 7.3.0 5219 - workbox-recipes: 7.3.0 5220 - workbox-routing: 7.3.0 5221 - workbox-strategies: 7.3.0 5222 - workbox-streams: 7.3.0 5223 - workbox-sw: 7.3.0 5224 - 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 5225 5161 transitivePeerDependencies: 5226 5162 - '@types/babel__core' 5227 5163 - supports-color 5228 5164 5229 - workbox-cacheable-response@7.3.0: 5165 + workbox-cacheable-response@7.4.0: 5230 5166 dependencies: 5231 - workbox-core: 7.3.0 5167 + workbox-core: 7.4.0 5232 5168 5233 - workbox-core@7.3.0: {} 5169 + workbox-core@7.4.0: {} 5234 5170 5235 - workbox-expiration@7.3.0: 5171 + workbox-expiration@7.4.0: 5236 5172 dependencies: 5237 5173 idb: 7.1.1 5238 - workbox-core: 7.3.0 5174 + workbox-core: 7.4.0 5239 5175 5240 - workbox-google-analytics@7.3.0: 5176 + workbox-google-analytics@7.4.0: 5241 5177 dependencies: 5242 - workbox-background-sync: 7.3.0 5243 - workbox-core: 7.3.0 5244 - workbox-routing: 7.3.0 5245 - 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 5246 5182 5247 - workbox-navigation-preload@7.3.0: 5183 + workbox-navigation-preload@7.4.0: 5248 5184 dependencies: 5249 - workbox-core: 7.3.0 5185 + workbox-core: 7.4.0 5250 5186 5251 - workbox-precaching@7.3.0(patch_hash=ffcec6cb23aa5ae1a2fe2de772c169a4f653a5ae7dc6b03415109f70d86ed35b): 5187 + workbox-precaching@7.4.0(patch_hash=ffcec6cb23aa5ae1a2fe2de772c169a4f653a5ae7dc6b03415109f70d86ed35b): 5252 5188 dependencies: 5253 - workbox-core: 7.3.0 5254 - workbox-routing: 7.3.0 5255 - workbox-strategies: 7.3.0 5189 + workbox-core: 7.4.0 5190 + workbox-routing: 7.4.0 5191 + workbox-strategies: 7.4.0 5256 5192 5257 - workbox-range-requests@7.3.0: 5193 + workbox-range-requests@7.4.0: 5258 5194 dependencies: 5259 - workbox-core: 7.3.0 5195 + workbox-core: 7.4.0 5260 5196 5261 - workbox-recipes@7.3.0: 5197 + workbox-recipes@7.4.0: 5262 5198 dependencies: 5263 - workbox-cacheable-response: 7.3.0 5264 - workbox-core: 7.3.0 5265 - workbox-expiration: 7.3.0 5266 - workbox-precaching: 7.3.0(patch_hash=ffcec6cb23aa5ae1a2fe2de772c169a4f653a5ae7dc6b03415109f70d86ed35b) 5267 - workbox-routing: 7.3.0 5268 - 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 5269 5205 5270 - workbox-routing@7.3.0: 5206 + workbox-routing@7.4.0: 5271 5207 dependencies: 5272 - workbox-core: 7.3.0 5208 + workbox-core: 7.4.0 5273 5209 5274 - workbox-strategies@7.3.0: 5210 + workbox-strategies@7.4.0: 5275 5211 dependencies: 5276 - workbox-core: 7.3.0 5212 + workbox-core: 7.4.0 5277 5213 5278 - workbox-streams@7.3.0: 5214 + workbox-streams@7.4.0: 5279 5215 dependencies: 5280 - workbox-core: 7.3.0 5281 - workbox-routing: 7.3.0 5216 + workbox-core: 7.4.0 5217 + workbox-routing: 7.4.0 5282 5218 5283 - workbox-sw@7.3.0: {} 5219 + workbox-sw@7.4.0: {} 5284 5220 5285 - workbox-window@7.3.0: 5221 + workbox-window@7.4.0: 5286 5222 dependencies: 5287 5223 '@types/trusted-types': 2.0.7 5288 - workbox-core: 7.3.0 5224 + workbox-core: 7.4.0 5289 5225 5290 - workerd@1.20250816.0: 5226 + workerd@1.20251202.0: 5291 5227 optionalDependencies: 5292 - '@cloudflare/workerd-darwin-64': 1.20250816.0 5293 - '@cloudflare/workerd-darwin-arm64': 1.20250816.0 5294 - '@cloudflare/workerd-linux-64': 1.20250816.0 5295 - '@cloudflare/workerd-linux-arm64': 1.20250816.0 5296 - '@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 5297 5233 5298 - wrangler@4.32.0: 5234 + wrangler@4.53.0: 5299 5235 dependencies: 5300 - '@cloudflare/kv-asset-handler': 0.4.0 5301 - '@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) 5302 5238 blake3-wasm: 2.1.5 5303 - esbuild: 0.25.4 5304 - miniflare: 4.20250816.1 5239 + esbuild: 0.27.0 5240 + miniflare: 4.20251202.1 5305 5241 path-to-regexp: 6.3.0 5306 - unenv: 2.0.0-rc.19 5307 - workerd: 1.20250816.0 5242 + unenv: 2.0.0-rc.24 5243 + workerd: 1.20251202.0 5308 5244 optionalDependencies: 5309 5245 fsevents: 2.3.3 5310 5246 transitivePeerDependencies: ··· 5319 5255 5320 5256 wrap-ansi@8.1.0: 5321 5257 dependencies: 5322 - ansi-styles: 6.2.1 5258 + ansi-styles: 6.2.3 5323 5259 string-width: 5.1.2 5324 - strip-ansi: 7.1.0 5325 - 5326 - wrappy@1.0.2: {} 5260 + strip-ansi: 7.1.2 5327 5261 5328 5262 ws@8.18.0: {} 5329 5263 5330 5264 yallist@3.1.1: {} 5331 - 5332 - yaml@2.8.0: {} 5333 5265 5334 5266 youch-core@0.3.3: 5335 5267 dependencies: ··· 5339 5271 youch@4.1.0-beta.10: 5340 5272 dependencies: 5341 5273 '@poppinss/colors': 4.1.5 5342 - '@poppinss/dumper': 0.6.4 5343 - '@speed-highlight/core': 1.2.7 5344 - cookie: 1.0.2 5274 + '@poppinss/dumper': 0.6.5 5275 + '@speed-highlight/core': 1.2.12 5276 + cookie: 1.1.1 5345 5277 youch-core: 0.3.3 5346 5278 5347 5279 zod@3.22.3: {}
-12
public/oauth-client-metadata.json
··· 1 - { 2 - "client_id": "https://aglais.kelinci.net/oauth-client-metadata.json", 3 - "client_uri": "https://aglais.kelinci.net", 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.kelinci.net/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');
+153 -26
server/index.ts
··· 1 - import { ComAtprotoIdentityResolveDid, ComAtprotoIdentityResolveHandle } from '@atcute/atproto'; 1 + import { type DidDocument, getAtprotoHandle, getPdsEndpoint } from '@atcute/identity'; 2 2 import { 3 3 AmbiguousHandleError, 4 4 CompositeDidDocumentResolver, ··· 13 13 WebDidDocumentResolver, 14 14 WellKnownHandleResolver, 15 15 } from '@atcute/identity-resolver'; 16 - import { InvalidRequestError, XRPCRouter, json } from '@atcute/xrpc-server'; 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 + ); 17 32 18 33 const handleResolver = new CompositeHandleResolver({ 19 34 methods: { ··· 22 37 }, 23 38 }); 24 39 25 - const didDocResolver = new CompositeDidDocumentResolver<string>({ 40 + const didDocumentResolver = new CompositeDidDocumentResolver<string>({ 26 41 methods: { 27 42 plc: new PlcDidDocumentResolver(), 28 43 web: new WebDidDocumentResolver(), 29 44 }, 30 45 }); 31 46 32 - const router = new XRPCRouter(); 47 + const cache = caches.default; 48 + const contexts = new WeakMap<Request, ExecutionContext>(); 33 49 34 - router.add(ComAtprotoIdentityResolveHandle.mainSchema, { 35 - async handler({ params: { handle } }) { 36 - try { 37 - const did = await handleResolver.resolve(handle); 50 + const router = new XRPCRouter({ 51 + middlewares: [ 52 + async (request, next) => { 53 + if (request.method !== 'GET') { 54 + return await next(request); 55 + } 38 56 39 - return json({ did }); 40 - } catch (err) { 41 - console.error(`resolveHandleToDid`, handle, err); 57 + let response = await cache.match(request); 58 + if (response === undefined) { 59 + response = await next(request); 42 60 43 - if (err instanceof DidNotFoundError) { 44 - throw new InvalidRequestError({ description: `no did found under that handle` }); 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 + } 45 69 } 46 70 47 - if (err instanceof InvalidResolvedHandleError) { 48 - throw new InvalidRequestError({ description: `did found but is invalid atproto did` }); 49 - } 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 + } 50 81 51 - if (err instanceof AmbiguousHandleError) { 52 - throw new InvalidRequestError({ description: `multiple did found under that handle` }); 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 }); 53 88 } 54 89 55 90 throw err; 56 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 + }); 57 105 }, 58 106 }); 59 107 60 - router.add(ComAtprotoIdentityResolveDid.mainSchema, { 61 - async handler({ params: { did } }) { 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; 62 136 try { 63 - const doc = await didDocResolver.resolve(did); 64 - 65 - return json({ didDoc: doc as unknown as Record<string, unknown> }); 137 + doc = await didDocumentResolver.resolve(did); 66 138 } catch (err) { 67 - console.error(`resolveDidToDoc`, did, err); 68 - 69 139 if (err instanceof DocumentNotFoundError) { 70 140 throw new InvalidRequestError({ description: `no document found under that did` }); 71 141 } ··· 80 150 81 151 throw err; 82 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 + }); 83 180 }, 84 181 }); 85 182 86 - export default { fetch: router.fetch } satisfies ExportedHandler<Env>; 183 + export default { 184 + fetch(request, _env, ctx) { 185 + const url = new URL(request.url); 186 + 187 + if (url.pathname === '/oauth-client-metadata.json') { 188 + return Response.json({ 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, 201 + }); 202 + } 203 + 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); 212 + }, 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 + };
+41 -22
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'; ··· 20 19 import CircularProgress from '~/components/circular-progress'; 21 20 import ModalRenderer from '~/components/main/modal-renderer'; 22 21 22 + import type {} from '../server/lexicons'; 23 + 23 24 import routes from './routes'; 24 25 import './service-worker'; 25 26 import Shell from './shell'; ··· 35 36 36 37 // Configure OAuth 37 38 { 38 - const resolver = new Client({ 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({ 39 44 handler: simpleFetchHandler({ service: location.origin }), 40 45 }); 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 + }; 41 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": ["/xrpc/*"], 8 + "run_worker_first": ["/xrpc/*", "/oauth-client-metadata.json", "/oauth-jwks.json"], 10 9 }, 11 10 }