├── .gitignore ├── .vscode ├── extensions.json └── launch.json ├── README.md ├── astro.config.mjs ├── package.json ├── pnpm-lock.yaml ├── public ├── dangpt.jpeg ├── favicon.ico └── og.jpg ├── src ├── components │ ├── App.tsx │ └── Form.tsx ├── env.d.ts └── pages │ ├── api │ └── ask.ts │ └── index.astro ├── tailwind.config.mjs ├── tsconfig.json └── util ├── collectionName.ts ├── getChatResponse.ts ├── getMessages.ts ├── replaceTwitterHandles.ts ├── search.ts ├── text2vec.ts └── types.ts /.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | # generated types 4 | .astro/ 5 | 6 | # dependencies 7 | node_modules/ 8 | 9 | # logs 10 | npm-debug.log* 11 | yarn-debug.log* 12 | yarn-error.log* 13 | pnpm-debug.log* 14 | 15 | 16 | # environment variables 17 | .env 18 | .env.production 19 | 20 | # macOS-specific files 21 | .DS_Store 22 | 23 | # jetbrains setting folder 24 | .idea/ 25 | .vercel 26 | -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["astro-build.astro-vscode"], 3 | "unwantedRecommendations": [] 4 | } 5 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "0.2.0", 3 | "configurations": [ 4 | { 5 | "command": "./node_modules/.bin/astro dev", 6 | "name": "Development server", 7 | "request": "launch", 8 | "type": "node-terminal" 9 | } 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # danGPT 2 | 3 | ![OG Image](public/og.jpg) 4 | 5 | > Try it out at [https://dangpt.vercel.app/](https://dangpt.vercel.app). 6 | 7 | This project showcases how to compose AI services and implement RAG (Retrieval Augmented Generation) with Generative AI. 8 | 9 | Here's a breakdown of how it works: 10 | 11 | 1. Outside of the scope of this repo, we have scraped a huge amount of data. In this case, [Dan](https://x.com/dan_abramov2)'s posts. 12 | 2. We then turn all the text we'd like to search into vectors (lists of numbers) using a machine learning model that maps meaning in text to a multidimensional numerical space. "Embedding" the text in vector space using an ["embeddings model"](https://platform.openai.com/docs/models/embeddings). In this case, OpenAI's `text-embedding-3-small`. 13 | 3. We then store those vectors in a vector database. Our weapon of choice here is [AstraDB](https://astra.datastax.com/) from [DataStax](https://datastax.com/). 14 | 15 | Then, when a user submits a query, we: 16 | 17 | 1. Turn the query into a vector using the same embeddings model. 18 | 2. Search the vector database for the most similar vectors to the query vector, or vectors "near" the query vector in dimensional space. 19 | 3. Retrieve many original texts from the most similar vectors. 20 | 4. Take those original texts and feed them as context into a generative AI model. In this case, OpenAI's `gpt-3.5-turbo`. The same model behind ChatGPT's free tier. 21 | 5. The generative AI model then generates a response based on the context it was given, prentending to be Dan. 22 | 23 | It's worth noting that this is just a silly side project demo and is likely to be wrong. It's more for education than anything else. 24 | -------------------------------------------------------------------------------- /astro.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from "astro/config"; 2 | import react from "@astrojs/react"; 3 | import tailwind from "@astrojs/tailwind"; 4 | 5 | import vercel from "@astrojs/vercel/serverless"; 6 | 7 | // https://astro.build/config 8 | export default defineConfig({ 9 | output: "server", 10 | integrations: [react(), tailwind()], 11 | adapter: vercel({ maxDuration: 300 }), 12 | }); 13 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ui-astro", 3 | "type": "module", 4 | "version": "0.0.1", 5 | "scripts": { 6 | "dev": "astro dev", 7 | "start": "astro dev", 8 | "build": "astro check && astro build", 9 | "preview": "astro preview", 10 | "astro": "astro" 11 | }, 12 | "dependencies": { 13 | "@astrojs/check": "^0.5.10", 14 | "@astrojs/react": "^3.3.0", 15 | "@astrojs/tailwind": "^5.1.0", 16 | "@astrojs/vercel": "^7.5.3", 17 | "@datastax/astra-db-ts": "^1.0.0", 18 | "@types/react": "^18.2.77", 19 | "@types/react-dom": "^18.2.25", 20 | "astro": "^4.6.1", 21 | "dotenv": "^16.4.5", 22 | "openai": "^4.33.1", 23 | "openai-chat-tokens": "^0.2.8", 24 | "openpipe": "^0.10.0", 25 | "react": "^18.2.0", 26 | "react-dom": "^18.2.0", 27 | "react-markdown": "^9.0.1", 28 | "tailwindcss": "^3.4.3" 29 | }, 30 | "devDependencies": { 31 | "@types/node": "^20.12.7", 32 | "typescript": "^5.4.5" 33 | } 34 | } -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '6.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | dependencies: 8 | '@astrojs/check': 9 | specifier: ^0.5.10 10 | version: 0.5.10(typescript@5.4.5) 11 | '@astrojs/react': 12 | specifier: ^3.3.0 13 | version: 3.3.0(@types/react-dom@18.2.25)(@types/react@18.2.77)(react-dom@18.2.0)(react@18.2.0)(vite@5.2.8) 14 | '@astrojs/tailwind': 15 | specifier: ^5.1.0 16 | version: 5.1.0(astro@4.6.1)(tailwindcss@3.4.3) 17 | '@astrojs/vercel': 18 | specifier: ^7.5.3 19 | version: 7.5.3(astro@4.6.1)(react@18.2.0) 20 | '@datastax/astra-db-ts': 21 | specifier: ^1.0.0 22 | version: 1.0.0 23 | '@types/react': 24 | specifier: ^18.2.77 25 | version: 18.2.77 26 | '@types/react-dom': 27 | specifier: ^18.2.25 28 | version: 18.2.25 29 | astro: 30 | specifier: ^4.6.1 31 | version: 4.6.1(@types/node@20.12.7)(typescript@5.4.5) 32 | dotenv: 33 | specifier: ^16.4.5 34 | version: 16.4.5 35 | openai: 36 | specifier: ^4.33.1 37 | version: 4.33.1 38 | openai-chat-tokens: 39 | specifier: ^0.2.8 40 | version: 0.2.8 41 | openpipe: 42 | specifier: ^0.10.0 43 | version: 0.10.0 44 | react: 45 | specifier: ^18.2.0 46 | version: 18.2.0 47 | react-dom: 48 | specifier: ^18.2.0 49 | version: 18.2.0(react@18.2.0) 50 | react-markdown: 51 | specifier: ^9.0.1 52 | version: 9.0.1(@types/react@18.2.77)(react@18.2.0) 53 | tailwindcss: 54 | specifier: ^3.4.3 55 | version: 3.4.3 56 | 57 | devDependencies: 58 | '@types/node': 59 | specifier: ^20.12.7 60 | version: 20.12.7 61 | typescript: 62 | specifier: ^5.4.5 63 | version: 5.4.5 64 | 65 | packages: 66 | 67 | /@alloc/quick-lru@5.2.0: 68 | resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} 69 | engines: {node: '>=10'} 70 | dev: false 71 | 72 | /@ampproject/remapping@2.3.0: 73 | resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} 74 | engines: {node: '>=6.0.0'} 75 | dependencies: 76 | '@jridgewell/gen-mapping': 0.3.5 77 | '@jridgewell/trace-mapping': 0.3.25 78 | dev: false 79 | 80 | /@anthropic-ai/sdk@0.19.2(encoding@0.1.13): 81 | resolution: {integrity: sha512-lsMl7IOFpFCZKUbNdLR0bYN8bevAmvw1Ak79Pp9RIFMwU6nMsMiWWhuBqccK8wi25h6skWE/lY/c0x29rEJFMw==} 82 | dependencies: 83 | '@types/node': 18.19.31 84 | '@types/node-fetch': 2.6.11 85 | abort-controller: 3.0.0 86 | agentkeepalive: 4.5.0 87 | form-data-encoder: 1.7.2 88 | formdata-node: 4.4.1 89 | node-fetch: 2.7.0(encoding@0.1.13) 90 | web-streams-polyfill: 3.3.3 91 | transitivePeerDependencies: 92 | - encoding 93 | dev: false 94 | 95 | /@astrojs/check@0.5.10(typescript@5.4.5): 96 | resolution: {integrity: sha512-vliHXM9cu/viGeKiksUM4mXfO816ohWtawTl2ADPgTsd4nUMjFiyAl7xFZhF34yy4hq4qf7jvK1F2PlR3b5I5w==} 97 | hasBin: true 98 | peerDependencies: 99 | typescript: ^5.0.0 100 | dependencies: 101 | '@astrojs/language-server': 2.8.4(typescript@5.4.5) 102 | chokidar: 3.6.0 103 | fast-glob: 3.3.2 104 | kleur: 4.1.5 105 | typescript: 5.4.5 106 | yargs: 17.7.2 107 | transitivePeerDependencies: 108 | - prettier 109 | - prettier-plugin-astro 110 | dev: false 111 | 112 | /@astrojs/compiler@2.7.1: 113 | resolution: {integrity: sha512-/POejAYuj8WEw7ZI0J8JBvevjfp9jQ9Wmu/Bg52RiNwGXkMV7JnYpsenVfHvvf1G7R5sXHGKlTcxlQWhoUTiGQ==} 114 | dev: false 115 | 116 | /@astrojs/internal-helpers@0.4.0: 117 | resolution: {integrity: sha512-6B13lz5n6BrbTqCTwhXjJXuR1sqiX/H6rTxzlXx+lN1NnV4jgnq/KJldCQaUWJzPL5SiWahQyinxAbxQtwgPHA==} 118 | dev: false 119 | 120 | /@astrojs/language-server@2.8.4(typescript@5.4.5): 121 | resolution: {integrity: sha512-sJH5vGTBkhgA8+hdhzX78UUp4cFz4Mt7xkEkevD188OS5bDMkaue6hK+dtXWM47mnrXFveXA2u38K7S+5+IRjA==} 122 | hasBin: true 123 | peerDependencies: 124 | prettier: ^3.0.0 125 | prettier-plugin-astro: '>=0.11.0' 126 | peerDependenciesMeta: 127 | prettier: 128 | optional: true 129 | prettier-plugin-astro: 130 | optional: true 131 | dependencies: 132 | '@astrojs/compiler': 2.7.1 133 | '@jridgewell/sourcemap-codec': 1.4.15 134 | '@volar/kit': 2.1.6(typescript@5.4.5) 135 | '@volar/language-core': 2.1.6 136 | '@volar/language-server': 2.1.6 137 | '@volar/language-service': 2.1.6 138 | '@volar/typescript': 2.1.6 139 | fast-glob: 3.3.2 140 | volar-service-css: 0.0.34(@volar/language-service@2.1.6) 141 | volar-service-emmet: 0.0.34(@volar/language-service@2.1.6) 142 | volar-service-html: 0.0.34(@volar/language-service@2.1.6) 143 | volar-service-prettier: 0.0.34(@volar/language-service@2.1.6) 144 | volar-service-typescript: 0.0.34(@volar/language-service@2.1.6) 145 | volar-service-typescript-twoslash-queries: 0.0.34(@volar/language-service@2.1.6) 146 | vscode-html-languageservice: 5.2.0 147 | vscode-uri: 3.0.8 148 | transitivePeerDependencies: 149 | - typescript 150 | dev: false 151 | 152 | /@astrojs/markdown-remark@5.1.0: 153 | resolution: {integrity: sha512-S6Z3K2hOB7MfjeDoHsotnP/q2UsnEDB8NlNAaCjMDsGBZfTUbWxyLW3CaphEWw08f6KLZi2ibK9yC3BaMhh2NQ==} 154 | dependencies: 155 | '@astrojs/prism': 3.1.0 156 | github-slugger: 2.0.0 157 | hast-util-from-html: 2.0.1 158 | hast-util-to-text: 4.0.1 159 | import-meta-resolve: 4.0.0 160 | mdast-util-definitions: 6.0.0 161 | rehype-raw: 7.0.0 162 | rehype-stringify: 10.0.0 163 | remark-gfm: 4.0.0 164 | remark-parse: 11.0.0 165 | remark-rehype: 11.1.0 166 | remark-smartypants: 2.1.0 167 | shiki: 1.3.0 168 | unified: 11.0.4 169 | unist-util-remove-position: 5.0.0 170 | unist-util-visit: 5.0.0 171 | unist-util-visit-parents: 6.0.1 172 | vfile: 6.0.1 173 | transitivePeerDependencies: 174 | - supports-color 175 | dev: false 176 | 177 | /@astrojs/prism@3.1.0: 178 | resolution: {integrity: sha512-Z9IYjuXSArkAUx3N6xj6+Bnvx8OdUSHA8YoOgyepp3+zJmtVYJIl/I18GozdJVW1p5u/CNpl3Km7/gwTJK85cw==} 179 | engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0} 180 | dependencies: 181 | prismjs: 1.29.0 182 | dev: false 183 | 184 | /@astrojs/react@3.3.0(@types/react-dom@18.2.25)(@types/react@18.2.77)(react-dom@18.2.0)(react@18.2.0)(vite@5.2.8): 185 | resolution: {integrity: sha512-IKHizDgYPTl9TTKcEB+PwmqHqYgCwD3jqd9hGBRITYiMmeiHVMRr2zNNXSmOOv0uWL3/EwsISsrUnjwuxIVZUA==} 186 | engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0} 187 | peerDependencies: 188 | '@types/react': ^17.0.50 || ^18.0.21 189 | '@types/react-dom': ^17.0.17 || ^18.0.6 190 | react: ^17.0.2 || ^18.0.0 191 | react-dom: ^17.0.2 || ^18.0.0 192 | dependencies: 193 | '@types/react': 18.2.77 194 | '@types/react-dom': 18.2.25 195 | '@vitejs/plugin-react': 4.2.1(vite@5.2.8) 196 | react: 18.2.0 197 | react-dom: 18.2.0(react@18.2.0) 198 | ultrahtml: 1.5.3 199 | transitivePeerDependencies: 200 | - supports-color 201 | - vite 202 | dev: false 203 | 204 | /@astrojs/tailwind@5.1.0(astro@4.6.1)(tailwindcss@3.4.3): 205 | resolution: {integrity: sha512-BJoCDKuWhU9FT2qYg+fr6Nfb3qP4ShtyjXGHKA/4mHN94z7BGcmauQK23iy+YH5qWvTnhqkd6mQPQ1yTZTe9Ig==} 206 | peerDependencies: 207 | astro: ^3.0.0 || ^4.0.0 208 | tailwindcss: ^3.0.24 209 | dependencies: 210 | astro: 4.6.1(@types/node@20.12.7)(typescript@5.4.5) 211 | autoprefixer: 10.4.19(postcss@8.4.38) 212 | postcss: 8.4.38 213 | postcss-load-config: 4.0.2(postcss@8.4.38) 214 | tailwindcss: 3.4.3 215 | transitivePeerDependencies: 216 | - ts-node 217 | dev: false 218 | 219 | /@astrojs/telemetry@3.1.0: 220 | resolution: {integrity: sha512-/ca/+D8MIKEC8/A9cSaPUqQNZm+Es/ZinRv0ZAzvu2ios7POQSsVD+VOj7/hypWNsNM3T7RpfgNq7H2TU1KEHA==} 221 | engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0} 222 | dependencies: 223 | ci-info: 4.0.0 224 | debug: 4.3.4 225 | dlv: 1.1.3 226 | dset: 3.1.3 227 | is-docker: 3.0.0 228 | is-wsl: 3.1.0 229 | which-pm-runs: 1.1.0 230 | transitivePeerDependencies: 231 | - supports-color 232 | dev: false 233 | 234 | /@astrojs/vercel@7.5.3(astro@4.6.1)(react@18.2.0): 235 | resolution: {integrity: sha512-rIqcoGoW+SJv+rOjMjMq5ICdBZP+zbuenXyNhTa6UIUZldm4pZLLImuBDvTxB/A3JvJZRoTwZtsEgORXav1bbg==} 236 | peerDependencies: 237 | astro: ^4.2.0 238 | dependencies: 239 | '@astrojs/internal-helpers': 0.4.0 240 | '@vercel/analytics': 1.2.2(react@18.2.0) 241 | '@vercel/edge': 1.1.1 242 | '@vercel/nft': 0.26.4 243 | astro: 4.6.1(@types/node@20.12.7)(typescript@5.4.5) 244 | esbuild: 0.19.12 245 | fast-glob: 3.3.2 246 | set-cookie-parser: 2.6.0 247 | web-vitals: 3.5.2 248 | transitivePeerDependencies: 249 | - encoding 250 | - next 251 | - react 252 | - supports-color 253 | dev: false 254 | 255 | /@babel/code-frame@7.24.2: 256 | resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==} 257 | engines: {node: '>=6.9.0'} 258 | dependencies: 259 | '@babel/highlight': 7.24.2 260 | picocolors: 1.0.0 261 | dev: false 262 | 263 | /@babel/compat-data@7.24.4: 264 | resolution: {integrity: sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==} 265 | engines: {node: '>=6.9.0'} 266 | dev: false 267 | 268 | /@babel/core@7.24.4: 269 | resolution: {integrity: sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==} 270 | engines: {node: '>=6.9.0'} 271 | dependencies: 272 | '@ampproject/remapping': 2.3.0 273 | '@babel/code-frame': 7.24.2 274 | '@babel/generator': 7.24.4 275 | '@babel/helper-compilation-targets': 7.23.6 276 | '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.4) 277 | '@babel/helpers': 7.24.4 278 | '@babel/parser': 7.24.4 279 | '@babel/template': 7.24.0 280 | '@babel/traverse': 7.24.1 281 | '@babel/types': 7.24.0 282 | convert-source-map: 2.0.0 283 | debug: 4.3.4 284 | gensync: 1.0.0-beta.2 285 | json5: 2.2.3 286 | semver: 6.3.1 287 | transitivePeerDependencies: 288 | - supports-color 289 | dev: false 290 | 291 | /@babel/generator@7.24.4: 292 | resolution: {integrity: sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==} 293 | engines: {node: '>=6.9.0'} 294 | dependencies: 295 | '@babel/types': 7.24.0 296 | '@jridgewell/gen-mapping': 0.3.5 297 | '@jridgewell/trace-mapping': 0.3.25 298 | jsesc: 2.5.2 299 | dev: false 300 | 301 | /@babel/helper-annotate-as-pure@7.22.5: 302 | resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} 303 | engines: {node: '>=6.9.0'} 304 | dependencies: 305 | '@babel/types': 7.24.0 306 | dev: false 307 | 308 | /@babel/helper-compilation-targets@7.23.6: 309 | resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} 310 | engines: {node: '>=6.9.0'} 311 | dependencies: 312 | '@babel/compat-data': 7.24.4 313 | '@babel/helper-validator-option': 7.23.5 314 | browserslist: 4.23.0 315 | lru-cache: 5.1.1 316 | semver: 6.3.1 317 | dev: false 318 | 319 | /@babel/helper-environment-visitor@7.22.20: 320 | resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} 321 | engines: {node: '>=6.9.0'} 322 | dev: false 323 | 324 | /@babel/helper-function-name@7.23.0: 325 | resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} 326 | engines: {node: '>=6.9.0'} 327 | dependencies: 328 | '@babel/template': 7.24.0 329 | '@babel/types': 7.24.0 330 | dev: false 331 | 332 | /@babel/helper-hoist-variables@7.22.5: 333 | resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} 334 | engines: {node: '>=6.9.0'} 335 | dependencies: 336 | '@babel/types': 7.24.0 337 | dev: false 338 | 339 | /@babel/helper-module-imports@7.24.3: 340 | resolution: {integrity: sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==} 341 | engines: {node: '>=6.9.0'} 342 | dependencies: 343 | '@babel/types': 7.24.0 344 | dev: false 345 | 346 | /@babel/helper-module-transforms@7.23.3(@babel/core@7.24.4): 347 | resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} 348 | engines: {node: '>=6.9.0'} 349 | peerDependencies: 350 | '@babel/core': ^7.0.0 351 | dependencies: 352 | '@babel/core': 7.24.4 353 | '@babel/helper-environment-visitor': 7.22.20 354 | '@babel/helper-module-imports': 7.24.3 355 | '@babel/helper-simple-access': 7.22.5 356 | '@babel/helper-split-export-declaration': 7.22.6 357 | '@babel/helper-validator-identifier': 7.22.20 358 | dev: false 359 | 360 | /@babel/helper-plugin-utils@7.24.0: 361 | resolution: {integrity: sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==} 362 | engines: {node: '>=6.9.0'} 363 | dev: false 364 | 365 | /@babel/helper-simple-access@7.22.5: 366 | resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} 367 | engines: {node: '>=6.9.0'} 368 | dependencies: 369 | '@babel/types': 7.24.0 370 | dev: false 371 | 372 | /@babel/helper-split-export-declaration@7.22.6: 373 | resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} 374 | engines: {node: '>=6.9.0'} 375 | dependencies: 376 | '@babel/types': 7.24.0 377 | dev: false 378 | 379 | /@babel/helper-string-parser@7.24.1: 380 | resolution: {integrity: sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==} 381 | engines: {node: '>=6.9.0'} 382 | dev: false 383 | 384 | /@babel/helper-validator-identifier@7.22.20: 385 | resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} 386 | engines: {node: '>=6.9.0'} 387 | dev: false 388 | 389 | /@babel/helper-validator-option@7.23.5: 390 | resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} 391 | engines: {node: '>=6.9.0'} 392 | dev: false 393 | 394 | /@babel/helpers@7.24.4: 395 | resolution: {integrity: sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==} 396 | engines: {node: '>=6.9.0'} 397 | dependencies: 398 | '@babel/template': 7.24.0 399 | '@babel/traverse': 7.24.1 400 | '@babel/types': 7.24.0 401 | transitivePeerDependencies: 402 | - supports-color 403 | dev: false 404 | 405 | /@babel/highlight@7.24.2: 406 | resolution: {integrity: sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==} 407 | engines: {node: '>=6.9.0'} 408 | dependencies: 409 | '@babel/helper-validator-identifier': 7.22.20 410 | chalk: 2.4.2 411 | js-tokens: 4.0.0 412 | picocolors: 1.0.0 413 | dev: false 414 | 415 | /@babel/parser@7.24.4: 416 | resolution: {integrity: sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==} 417 | engines: {node: '>=6.0.0'} 418 | hasBin: true 419 | dependencies: 420 | '@babel/types': 7.24.0 421 | dev: false 422 | 423 | /@babel/plugin-syntax-jsx@7.24.1(@babel/core@7.24.4): 424 | resolution: {integrity: sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==} 425 | engines: {node: '>=6.9.0'} 426 | peerDependencies: 427 | '@babel/core': ^7.0.0-0 428 | dependencies: 429 | '@babel/core': 7.24.4 430 | '@babel/helper-plugin-utils': 7.24.0 431 | dev: false 432 | 433 | /@babel/plugin-transform-react-jsx-self@7.24.1(@babel/core@7.24.4): 434 | resolution: {integrity: sha512-kDJgnPujTmAZ/9q2CN4m2/lRsUUPDvsG3+tSHWUJIzMGTt5U/b/fwWd3RO3n+5mjLrsBrVa5eKFRVSQbi3dF1w==} 435 | engines: {node: '>=6.9.0'} 436 | peerDependencies: 437 | '@babel/core': ^7.0.0-0 438 | dependencies: 439 | '@babel/core': 7.24.4 440 | '@babel/helper-plugin-utils': 7.24.0 441 | dev: false 442 | 443 | /@babel/plugin-transform-react-jsx-source@7.24.1(@babel/core@7.24.4): 444 | resolution: {integrity: sha512-1v202n7aUq4uXAieRTKcwPzNyphlCuqHHDcdSNc+vdhoTEZcFMh+L5yZuCmGaIO7bs1nJUNfHB89TZyoL48xNA==} 445 | engines: {node: '>=6.9.0'} 446 | peerDependencies: 447 | '@babel/core': ^7.0.0-0 448 | dependencies: 449 | '@babel/core': 7.24.4 450 | '@babel/helper-plugin-utils': 7.24.0 451 | dev: false 452 | 453 | /@babel/plugin-transform-react-jsx@7.23.4(@babel/core@7.24.4): 454 | resolution: {integrity: sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==} 455 | engines: {node: '>=6.9.0'} 456 | peerDependencies: 457 | '@babel/core': ^7.0.0-0 458 | dependencies: 459 | '@babel/core': 7.24.4 460 | '@babel/helper-annotate-as-pure': 7.22.5 461 | '@babel/helper-module-imports': 7.24.3 462 | '@babel/helper-plugin-utils': 7.24.0 463 | '@babel/plugin-syntax-jsx': 7.24.1(@babel/core@7.24.4) 464 | '@babel/types': 7.24.0 465 | dev: false 466 | 467 | /@babel/template@7.24.0: 468 | resolution: {integrity: sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==} 469 | engines: {node: '>=6.9.0'} 470 | dependencies: 471 | '@babel/code-frame': 7.24.2 472 | '@babel/parser': 7.24.4 473 | '@babel/types': 7.24.0 474 | dev: false 475 | 476 | /@babel/traverse@7.24.1: 477 | resolution: {integrity: sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==} 478 | engines: {node: '>=6.9.0'} 479 | dependencies: 480 | '@babel/code-frame': 7.24.2 481 | '@babel/generator': 7.24.4 482 | '@babel/helper-environment-visitor': 7.22.20 483 | '@babel/helper-function-name': 7.23.0 484 | '@babel/helper-hoist-variables': 7.22.5 485 | '@babel/helper-split-export-declaration': 7.22.6 486 | '@babel/parser': 7.24.4 487 | '@babel/types': 7.24.0 488 | debug: 4.3.4 489 | globals: 11.12.0 490 | transitivePeerDependencies: 491 | - supports-color 492 | dev: false 493 | 494 | /@babel/types@7.24.0: 495 | resolution: {integrity: sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==} 496 | engines: {node: '>=6.9.0'} 497 | dependencies: 498 | '@babel/helper-string-parser': 7.24.1 499 | '@babel/helper-validator-identifier': 7.22.20 500 | to-fast-properties: 2.0.0 501 | dev: false 502 | 503 | /@datastax/astra-db-ts@1.0.0: 504 | resolution: {integrity: sha512-inTjgKQKbuL0gjfFX24llqaxefcqDu0LJrh1aKHMK8uAaRQ1uIN9cHkxlg02Aq/y4AOsFZCdGlsZYto2EHRRFg==} 505 | engines: {node: '>=14.0.0'} 506 | dependencies: 507 | bson-objectid: 2.0.4 508 | fetch-h2: 3.0.2 509 | object-hash: 3.0.0 510 | typed-emitter: 2.1.0 511 | uuidv7: 0.6.3 512 | dev: false 513 | 514 | /@emmetio/abbreviation@2.3.3: 515 | resolution: {integrity: sha512-mgv58UrU3rh4YgbE/TzgLQwJ3pFsHHhCLqY20aJq+9comytTXUDNGG/SMtSeMJdkpxgXSXunBGLD8Boka3JyVA==} 516 | dependencies: 517 | '@emmetio/scanner': 1.0.4 518 | dev: false 519 | 520 | /@emmetio/css-abbreviation@2.1.8: 521 | resolution: {integrity: sha512-s9yjhJ6saOO/uk1V74eifykk2CBYi01STTK3WlXWGOepyKa23ymJ053+DNQjpFcy1ingpaO7AxCcwLvHFY9tuw==} 522 | dependencies: 523 | '@emmetio/scanner': 1.0.4 524 | dev: false 525 | 526 | /@emmetio/scanner@1.0.4: 527 | resolution: {integrity: sha512-IqRuJtQff7YHHBk4G8YZ45uB9BaAGcwQeVzgj/zj8/UdOhtQpEIupUhSk8dys6spFIWVZVeK20CzGEnqR5SbqA==} 528 | dev: false 529 | 530 | /@esbuild/aix-ppc64@0.19.12: 531 | resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==} 532 | engines: {node: '>=12'} 533 | cpu: [ppc64] 534 | os: [aix] 535 | requiresBuild: true 536 | dev: false 537 | optional: true 538 | 539 | /@esbuild/aix-ppc64@0.20.2: 540 | resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==} 541 | engines: {node: '>=12'} 542 | cpu: [ppc64] 543 | os: [aix] 544 | requiresBuild: true 545 | dev: false 546 | optional: true 547 | 548 | /@esbuild/android-arm64@0.19.12: 549 | resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==} 550 | engines: {node: '>=12'} 551 | cpu: [arm64] 552 | os: [android] 553 | requiresBuild: true 554 | dev: false 555 | optional: true 556 | 557 | /@esbuild/android-arm64@0.20.2: 558 | resolution: {integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==} 559 | engines: {node: '>=12'} 560 | cpu: [arm64] 561 | os: [android] 562 | requiresBuild: true 563 | dev: false 564 | optional: true 565 | 566 | /@esbuild/android-arm@0.19.12: 567 | resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==} 568 | engines: {node: '>=12'} 569 | cpu: [arm] 570 | os: [android] 571 | requiresBuild: true 572 | dev: false 573 | optional: true 574 | 575 | /@esbuild/android-arm@0.20.2: 576 | resolution: {integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==} 577 | engines: {node: '>=12'} 578 | cpu: [arm] 579 | os: [android] 580 | requiresBuild: true 581 | dev: false 582 | optional: true 583 | 584 | /@esbuild/android-x64@0.19.12: 585 | resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==} 586 | engines: {node: '>=12'} 587 | cpu: [x64] 588 | os: [android] 589 | requiresBuild: true 590 | dev: false 591 | optional: true 592 | 593 | /@esbuild/android-x64@0.20.2: 594 | resolution: {integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==} 595 | engines: {node: '>=12'} 596 | cpu: [x64] 597 | os: [android] 598 | requiresBuild: true 599 | dev: false 600 | optional: true 601 | 602 | /@esbuild/darwin-arm64@0.19.12: 603 | resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==} 604 | engines: {node: '>=12'} 605 | cpu: [arm64] 606 | os: [darwin] 607 | requiresBuild: true 608 | dev: false 609 | optional: true 610 | 611 | /@esbuild/darwin-arm64@0.20.2: 612 | resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==} 613 | engines: {node: '>=12'} 614 | cpu: [arm64] 615 | os: [darwin] 616 | requiresBuild: true 617 | dev: false 618 | optional: true 619 | 620 | /@esbuild/darwin-x64@0.19.12: 621 | resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==} 622 | engines: {node: '>=12'} 623 | cpu: [x64] 624 | os: [darwin] 625 | requiresBuild: true 626 | dev: false 627 | optional: true 628 | 629 | /@esbuild/darwin-x64@0.20.2: 630 | resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==} 631 | engines: {node: '>=12'} 632 | cpu: [x64] 633 | os: [darwin] 634 | requiresBuild: true 635 | dev: false 636 | optional: true 637 | 638 | /@esbuild/freebsd-arm64@0.19.12: 639 | resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==} 640 | engines: {node: '>=12'} 641 | cpu: [arm64] 642 | os: [freebsd] 643 | requiresBuild: true 644 | dev: false 645 | optional: true 646 | 647 | /@esbuild/freebsd-arm64@0.20.2: 648 | resolution: {integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==} 649 | engines: {node: '>=12'} 650 | cpu: [arm64] 651 | os: [freebsd] 652 | requiresBuild: true 653 | dev: false 654 | optional: true 655 | 656 | /@esbuild/freebsd-x64@0.19.12: 657 | resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==} 658 | engines: {node: '>=12'} 659 | cpu: [x64] 660 | os: [freebsd] 661 | requiresBuild: true 662 | dev: false 663 | optional: true 664 | 665 | /@esbuild/freebsd-x64@0.20.2: 666 | resolution: {integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==} 667 | engines: {node: '>=12'} 668 | cpu: [x64] 669 | os: [freebsd] 670 | requiresBuild: true 671 | dev: false 672 | optional: true 673 | 674 | /@esbuild/linux-arm64@0.19.12: 675 | resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==} 676 | engines: {node: '>=12'} 677 | cpu: [arm64] 678 | os: [linux] 679 | requiresBuild: true 680 | dev: false 681 | optional: true 682 | 683 | /@esbuild/linux-arm64@0.20.2: 684 | resolution: {integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==} 685 | engines: {node: '>=12'} 686 | cpu: [arm64] 687 | os: [linux] 688 | requiresBuild: true 689 | dev: false 690 | optional: true 691 | 692 | /@esbuild/linux-arm@0.19.12: 693 | resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==} 694 | engines: {node: '>=12'} 695 | cpu: [arm] 696 | os: [linux] 697 | requiresBuild: true 698 | dev: false 699 | optional: true 700 | 701 | /@esbuild/linux-arm@0.20.2: 702 | resolution: {integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==} 703 | engines: {node: '>=12'} 704 | cpu: [arm] 705 | os: [linux] 706 | requiresBuild: true 707 | dev: false 708 | optional: true 709 | 710 | /@esbuild/linux-ia32@0.19.12: 711 | resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==} 712 | engines: {node: '>=12'} 713 | cpu: [ia32] 714 | os: [linux] 715 | requiresBuild: true 716 | dev: false 717 | optional: true 718 | 719 | /@esbuild/linux-ia32@0.20.2: 720 | resolution: {integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==} 721 | engines: {node: '>=12'} 722 | cpu: [ia32] 723 | os: [linux] 724 | requiresBuild: true 725 | dev: false 726 | optional: true 727 | 728 | /@esbuild/linux-loong64@0.19.12: 729 | resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==} 730 | engines: {node: '>=12'} 731 | cpu: [loong64] 732 | os: [linux] 733 | requiresBuild: true 734 | dev: false 735 | optional: true 736 | 737 | /@esbuild/linux-loong64@0.20.2: 738 | resolution: {integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==} 739 | engines: {node: '>=12'} 740 | cpu: [loong64] 741 | os: [linux] 742 | requiresBuild: true 743 | dev: false 744 | optional: true 745 | 746 | /@esbuild/linux-mips64el@0.19.12: 747 | resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==} 748 | engines: {node: '>=12'} 749 | cpu: [mips64el] 750 | os: [linux] 751 | requiresBuild: true 752 | dev: false 753 | optional: true 754 | 755 | /@esbuild/linux-mips64el@0.20.2: 756 | resolution: {integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==} 757 | engines: {node: '>=12'} 758 | cpu: [mips64el] 759 | os: [linux] 760 | requiresBuild: true 761 | dev: false 762 | optional: true 763 | 764 | /@esbuild/linux-ppc64@0.19.12: 765 | resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==} 766 | engines: {node: '>=12'} 767 | cpu: [ppc64] 768 | os: [linux] 769 | requiresBuild: true 770 | dev: false 771 | optional: true 772 | 773 | /@esbuild/linux-ppc64@0.20.2: 774 | resolution: {integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==} 775 | engines: {node: '>=12'} 776 | cpu: [ppc64] 777 | os: [linux] 778 | requiresBuild: true 779 | dev: false 780 | optional: true 781 | 782 | /@esbuild/linux-riscv64@0.19.12: 783 | resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==} 784 | engines: {node: '>=12'} 785 | cpu: [riscv64] 786 | os: [linux] 787 | requiresBuild: true 788 | dev: false 789 | optional: true 790 | 791 | /@esbuild/linux-riscv64@0.20.2: 792 | resolution: {integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==} 793 | engines: {node: '>=12'} 794 | cpu: [riscv64] 795 | os: [linux] 796 | requiresBuild: true 797 | dev: false 798 | optional: true 799 | 800 | /@esbuild/linux-s390x@0.19.12: 801 | resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==} 802 | engines: {node: '>=12'} 803 | cpu: [s390x] 804 | os: [linux] 805 | requiresBuild: true 806 | dev: false 807 | optional: true 808 | 809 | /@esbuild/linux-s390x@0.20.2: 810 | resolution: {integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==} 811 | engines: {node: '>=12'} 812 | cpu: [s390x] 813 | os: [linux] 814 | requiresBuild: true 815 | dev: false 816 | optional: true 817 | 818 | /@esbuild/linux-x64@0.19.12: 819 | resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==} 820 | engines: {node: '>=12'} 821 | cpu: [x64] 822 | os: [linux] 823 | requiresBuild: true 824 | dev: false 825 | optional: true 826 | 827 | /@esbuild/linux-x64@0.20.2: 828 | resolution: {integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==} 829 | engines: {node: '>=12'} 830 | cpu: [x64] 831 | os: [linux] 832 | requiresBuild: true 833 | dev: false 834 | optional: true 835 | 836 | /@esbuild/netbsd-x64@0.19.12: 837 | resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==} 838 | engines: {node: '>=12'} 839 | cpu: [x64] 840 | os: [netbsd] 841 | requiresBuild: true 842 | dev: false 843 | optional: true 844 | 845 | /@esbuild/netbsd-x64@0.20.2: 846 | resolution: {integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==} 847 | engines: {node: '>=12'} 848 | cpu: [x64] 849 | os: [netbsd] 850 | requiresBuild: true 851 | dev: false 852 | optional: true 853 | 854 | /@esbuild/openbsd-x64@0.19.12: 855 | resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==} 856 | engines: {node: '>=12'} 857 | cpu: [x64] 858 | os: [openbsd] 859 | requiresBuild: true 860 | dev: false 861 | optional: true 862 | 863 | /@esbuild/openbsd-x64@0.20.2: 864 | resolution: {integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==} 865 | engines: {node: '>=12'} 866 | cpu: [x64] 867 | os: [openbsd] 868 | requiresBuild: true 869 | dev: false 870 | optional: true 871 | 872 | /@esbuild/sunos-x64@0.19.12: 873 | resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==} 874 | engines: {node: '>=12'} 875 | cpu: [x64] 876 | os: [sunos] 877 | requiresBuild: true 878 | dev: false 879 | optional: true 880 | 881 | /@esbuild/sunos-x64@0.20.2: 882 | resolution: {integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==} 883 | engines: {node: '>=12'} 884 | cpu: [x64] 885 | os: [sunos] 886 | requiresBuild: true 887 | dev: false 888 | optional: true 889 | 890 | /@esbuild/win32-arm64@0.19.12: 891 | resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==} 892 | engines: {node: '>=12'} 893 | cpu: [arm64] 894 | os: [win32] 895 | requiresBuild: true 896 | dev: false 897 | optional: true 898 | 899 | /@esbuild/win32-arm64@0.20.2: 900 | resolution: {integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==} 901 | engines: {node: '>=12'} 902 | cpu: [arm64] 903 | os: [win32] 904 | requiresBuild: true 905 | dev: false 906 | optional: true 907 | 908 | /@esbuild/win32-ia32@0.19.12: 909 | resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==} 910 | engines: {node: '>=12'} 911 | cpu: [ia32] 912 | os: [win32] 913 | requiresBuild: true 914 | dev: false 915 | optional: true 916 | 917 | /@esbuild/win32-ia32@0.20.2: 918 | resolution: {integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==} 919 | engines: {node: '>=12'} 920 | cpu: [ia32] 921 | os: [win32] 922 | requiresBuild: true 923 | dev: false 924 | optional: true 925 | 926 | /@esbuild/win32-x64@0.19.12: 927 | resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==} 928 | engines: {node: '>=12'} 929 | cpu: [x64] 930 | os: [win32] 931 | requiresBuild: true 932 | dev: false 933 | optional: true 934 | 935 | /@esbuild/win32-x64@0.20.2: 936 | resolution: {integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==} 937 | engines: {node: '>=12'} 938 | cpu: [x64] 939 | os: [win32] 940 | requiresBuild: true 941 | dev: false 942 | optional: true 943 | 944 | /@isaacs/cliui@8.0.2: 945 | resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} 946 | engines: {node: '>=12'} 947 | dependencies: 948 | string-width: 5.1.2 949 | string-width-cjs: /string-width@4.2.3 950 | strip-ansi: 7.1.0 951 | strip-ansi-cjs: /strip-ansi@6.0.1 952 | wrap-ansi: 8.1.0 953 | wrap-ansi-cjs: /wrap-ansi@7.0.0 954 | dev: false 955 | 956 | /@jridgewell/gen-mapping@0.3.5: 957 | resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} 958 | engines: {node: '>=6.0.0'} 959 | dependencies: 960 | '@jridgewell/set-array': 1.2.1 961 | '@jridgewell/sourcemap-codec': 1.4.15 962 | '@jridgewell/trace-mapping': 0.3.25 963 | dev: false 964 | 965 | /@jridgewell/resolve-uri@3.1.2: 966 | resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 967 | engines: {node: '>=6.0.0'} 968 | dev: false 969 | 970 | /@jridgewell/set-array@1.2.1: 971 | resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} 972 | engines: {node: '>=6.0.0'} 973 | dev: false 974 | 975 | /@jridgewell/sourcemap-codec@1.4.15: 976 | resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} 977 | dev: false 978 | 979 | /@jridgewell/trace-mapping@0.3.25: 980 | resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} 981 | dependencies: 982 | '@jridgewell/resolve-uri': 3.1.2 983 | '@jridgewell/sourcemap-codec': 1.4.15 984 | dev: false 985 | 986 | /@mapbox/node-pre-gyp@1.0.11: 987 | resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==} 988 | hasBin: true 989 | dependencies: 990 | detect-libc: 2.0.3 991 | https-proxy-agent: 5.0.1 992 | make-dir: 3.1.0 993 | node-fetch: 2.7.0(encoding@0.1.13) 994 | nopt: 5.0.0 995 | npmlog: 5.0.1 996 | rimraf: 3.0.2 997 | semver: 7.6.0 998 | tar: 6.2.1 999 | transitivePeerDependencies: 1000 | - encoding 1001 | - supports-color 1002 | dev: false 1003 | 1004 | /@nodelib/fs.scandir@2.1.5: 1005 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 1006 | engines: {node: '>= 8'} 1007 | dependencies: 1008 | '@nodelib/fs.stat': 2.0.5 1009 | run-parallel: 1.2.0 1010 | dev: false 1011 | 1012 | /@nodelib/fs.stat@2.0.5: 1013 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 1014 | engines: {node: '>= 8'} 1015 | dev: false 1016 | 1017 | /@nodelib/fs.walk@1.2.8: 1018 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 1019 | engines: {node: '>= 8'} 1020 | dependencies: 1021 | '@nodelib/fs.scandir': 2.1.5 1022 | fastq: 1.17.1 1023 | dev: false 1024 | 1025 | /@pkgjs/parseargs@0.11.0: 1026 | resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} 1027 | engines: {node: '>=14'} 1028 | requiresBuild: true 1029 | dev: false 1030 | optional: true 1031 | 1032 | /@rollup/pluginutils@4.2.1: 1033 | resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} 1034 | engines: {node: '>= 8.0.0'} 1035 | dependencies: 1036 | estree-walker: 2.0.2 1037 | picomatch: 2.3.1 1038 | dev: false 1039 | 1040 | /@rollup/rollup-android-arm-eabi@4.14.2: 1041 | resolution: {integrity: sha512-ahxSgCkAEk+P/AVO0vYr7DxOD3CwAQrT0Go9BJyGQ9Ef0QxVOfjDZMiF4Y2s3mLyPrjonchIMH/tbWHucJMykQ==} 1042 | cpu: [arm] 1043 | os: [android] 1044 | requiresBuild: true 1045 | dev: false 1046 | optional: true 1047 | 1048 | /@rollup/rollup-android-arm64@4.14.2: 1049 | resolution: {integrity: sha512-lAarIdxZWbFSHFSDao9+I/F5jDaKyCqAPMq5HqnfpBw8dKDiCaaqM0lq5h1pQTLeIqueeay4PieGR5jGZMWprw==} 1050 | cpu: [arm64] 1051 | os: [android] 1052 | requiresBuild: true 1053 | dev: false 1054 | optional: true 1055 | 1056 | /@rollup/rollup-darwin-arm64@4.14.2: 1057 | resolution: {integrity: sha512-SWsr8zEUk82KSqquIMgZEg2GE5mCSfr9sE/thDROkX6pb3QQWPp8Vw8zOq2GyxZ2t0XoSIUlvHDkrf5Gmf7x3Q==} 1058 | cpu: [arm64] 1059 | os: [darwin] 1060 | requiresBuild: true 1061 | dev: false 1062 | optional: true 1063 | 1064 | /@rollup/rollup-darwin-x64@4.14.2: 1065 | resolution: {integrity: sha512-o/HAIrQq0jIxJAhgtIvV5FWviYK4WB0WwV91SLUnsliw1lSAoLsmgEEgRWzDguAFeUEUUoIWXiJrPqU7vGiVkA==} 1066 | cpu: [x64] 1067 | os: [darwin] 1068 | requiresBuild: true 1069 | dev: false 1070 | optional: true 1071 | 1072 | /@rollup/rollup-linux-arm-gnueabihf@4.14.2: 1073 | resolution: {integrity: sha512-nwlJ65UY9eGq91cBi6VyDfArUJSKOYt5dJQBq8xyLhvS23qO+4Nr/RreibFHjP6t+5ap2ohZrUJcHv5zk5ju/g==} 1074 | cpu: [arm] 1075 | os: [linux] 1076 | requiresBuild: true 1077 | dev: false 1078 | optional: true 1079 | 1080 | /@rollup/rollup-linux-arm64-gnu@4.14.2: 1081 | resolution: {integrity: sha512-Pg5TxxO2IVlMj79+c/9G0LREC9SY3HM+pfAwX7zj5/cAuwrbfj2Wv9JbMHIdPCfQpYsI4g9mE+2Bw/3aeSs2rQ==} 1082 | cpu: [arm64] 1083 | os: [linux] 1084 | requiresBuild: true 1085 | dev: false 1086 | optional: true 1087 | 1088 | /@rollup/rollup-linux-arm64-musl@4.14.2: 1089 | resolution: {integrity: sha512-cAOTjGNm84gc6tS02D1EXtG7tDRsVSDTBVXOLbj31DkwfZwgTPYZ6aafSU7rD/4R2a34JOwlF9fQayuTSkoclA==} 1090 | cpu: [arm64] 1091 | os: [linux] 1092 | requiresBuild: true 1093 | dev: false 1094 | optional: true 1095 | 1096 | /@rollup/rollup-linux-powerpc64le-gnu@4.14.2: 1097 | resolution: {integrity: sha512-4RyT6v1kXb7C0fn6zV33rvaX05P0zHoNzaXI/5oFHklfKm602j+N4mn2YvoezQViRLPnxP8M1NaY4s/5kXO5cw==} 1098 | cpu: [ppc64] 1099 | os: [linux] 1100 | requiresBuild: true 1101 | dev: false 1102 | optional: true 1103 | 1104 | /@rollup/rollup-linux-riscv64-gnu@4.14.2: 1105 | resolution: {integrity: sha512-KNUH6jC/vRGAKSorySTyc/yRYlCwN/5pnMjXylfBniwtJx5O7X17KG/0efj8XM3TZU7raYRXJFFReOzNmL1n1w==} 1106 | cpu: [riscv64] 1107 | os: [linux] 1108 | requiresBuild: true 1109 | dev: false 1110 | optional: true 1111 | 1112 | /@rollup/rollup-linux-s390x-gnu@4.14.2: 1113 | resolution: {integrity: sha512-xPV4y73IBEXToNPa3h5lbgXOi/v0NcvKxU0xejiFw6DtIYQqOTMhZ2DN18/HrrP0PmiL3rGtRG9gz1QE8vFKXQ==} 1114 | cpu: [s390x] 1115 | os: [linux] 1116 | requiresBuild: true 1117 | dev: false 1118 | optional: true 1119 | 1120 | /@rollup/rollup-linux-x64-gnu@4.14.2: 1121 | resolution: {integrity: sha512-QBhtr07iFGmF9egrPOWyO5wciwgtzKkYPNLVCFZTmr4TWmY0oY2Dm/bmhHjKRwZoGiaKdNcKhFtUMBKvlchH+Q==} 1122 | cpu: [x64] 1123 | os: [linux] 1124 | requiresBuild: true 1125 | dev: false 1126 | optional: true 1127 | 1128 | /@rollup/rollup-linux-x64-musl@4.14.2: 1129 | resolution: {integrity: sha512-8zfsQRQGH23O6qazZSFY5jP5gt4cFvRuKTpuBsC1ZnSWxV8ZKQpPqOZIUtdfMOugCcBvFGRa1pDC/tkf19EgBw==} 1130 | cpu: [x64] 1131 | os: [linux] 1132 | requiresBuild: true 1133 | dev: false 1134 | optional: true 1135 | 1136 | /@rollup/rollup-win32-arm64-msvc@4.14.2: 1137 | resolution: {integrity: sha512-H4s8UjgkPnlChl6JF5empNvFHp77Jx+Wfy2EtmYPe9G22XV+PMuCinZVHurNe8ggtwoaohxARJZbaH/3xjB/FA==} 1138 | cpu: [arm64] 1139 | os: [win32] 1140 | requiresBuild: true 1141 | dev: false 1142 | optional: true 1143 | 1144 | /@rollup/rollup-win32-ia32-msvc@4.14.2: 1145 | resolution: {integrity: sha512-djqpAjm/i8erWYF0K6UY4kRO3X5+T4TypIqw60Q8MTqSBaQNpNXDhxdjpZ3ikgb+wn99svA7jxcXpiyg9MUsdw==} 1146 | cpu: [ia32] 1147 | os: [win32] 1148 | requiresBuild: true 1149 | dev: false 1150 | optional: true 1151 | 1152 | /@rollup/rollup-win32-x64-msvc@4.14.2: 1153 | resolution: {integrity: sha512-teAqzLT0yTYZa8ZP7zhFKEx4cotS8Tkk5XiqNMJhD4CpaWB1BHARE4Qy+RzwnXvSAYv+Q3jAqCVBS+PS+Yee8Q==} 1154 | cpu: [x64] 1155 | os: [win32] 1156 | requiresBuild: true 1157 | dev: false 1158 | optional: true 1159 | 1160 | /@shikijs/core@1.3.0: 1161 | resolution: {integrity: sha512-7fedsBfuILDTBmrYZNFI8B6ATTxhQAasUHllHmjvSZPnoq4bULWoTpHwmuQvZ8Aq03/tAa2IGo6RXqWtHdWaCA==} 1162 | dev: false 1163 | 1164 | /@types/babel__core@7.20.5: 1165 | resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} 1166 | dependencies: 1167 | '@babel/parser': 7.24.4 1168 | '@babel/types': 7.24.0 1169 | '@types/babel__generator': 7.6.8 1170 | '@types/babel__template': 7.4.4 1171 | '@types/babel__traverse': 7.20.5 1172 | dev: false 1173 | 1174 | /@types/babel__generator@7.6.8: 1175 | resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} 1176 | dependencies: 1177 | '@babel/types': 7.24.0 1178 | dev: false 1179 | 1180 | /@types/babel__template@7.4.4: 1181 | resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} 1182 | dependencies: 1183 | '@babel/parser': 7.24.4 1184 | '@babel/types': 7.24.0 1185 | dev: false 1186 | 1187 | /@types/babel__traverse@7.20.5: 1188 | resolution: {integrity: sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==} 1189 | dependencies: 1190 | '@babel/types': 7.24.0 1191 | dev: false 1192 | 1193 | /@types/debug@4.1.12: 1194 | resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} 1195 | dependencies: 1196 | '@types/ms': 0.7.34 1197 | dev: false 1198 | 1199 | /@types/estree-jsx@1.0.5: 1200 | resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==} 1201 | dependencies: 1202 | '@types/estree': 1.0.5 1203 | dev: false 1204 | 1205 | /@types/estree@1.0.5: 1206 | resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} 1207 | dev: false 1208 | 1209 | /@types/hast@3.0.4: 1210 | resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} 1211 | dependencies: 1212 | '@types/unist': 3.0.2 1213 | dev: false 1214 | 1215 | /@types/mdast@4.0.3: 1216 | resolution: {integrity: sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==} 1217 | dependencies: 1218 | '@types/unist': 3.0.2 1219 | dev: false 1220 | 1221 | /@types/ms@0.7.34: 1222 | resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} 1223 | dev: false 1224 | 1225 | /@types/nlcst@1.0.4: 1226 | resolution: {integrity: sha512-ABoYdNQ/kBSsLvZAekMhIPMQ3YUZvavStpKYs7BjLLuKVmIMA0LUgZ7b54zzuWJRbHF80v1cNf4r90Vd6eMQDg==} 1227 | dependencies: 1228 | '@types/unist': 2.0.10 1229 | dev: false 1230 | 1231 | /@types/node-fetch@2.6.11: 1232 | resolution: {integrity: sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==} 1233 | dependencies: 1234 | '@types/node': 20.12.7 1235 | form-data: 4.0.0 1236 | dev: false 1237 | 1238 | /@types/node@18.19.31: 1239 | resolution: {integrity: sha512-ArgCD39YpyyrtFKIqMDvjz79jto5fcI/SVUs2HwB+f0dAzq68yqOdyaSivLiLugSziTpNXLQrVb7RZFmdZzbhA==} 1240 | dependencies: 1241 | undici-types: 5.26.5 1242 | dev: false 1243 | 1244 | /@types/node@20.12.7: 1245 | resolution: {integrity: sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==} 1246 | dependencies: 1247 | undici-types: 5.26.5 1248 | 1249 | /@types/prop-types@15.7.12: 1250 | resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==} 1251 | dev: false 1252 | 1253 | /@types/react-dom@18.2.25: 1254 | resolution: {integrity: sha512-o/V48vf4MQh7juIKZU2QGDfli6p1+OOi5oXx36Hffpc9adsHeXjVp8rHuPkjd8VT8sOJ2Zp05HR7CdpGTIUFUA==} 1255 | dependencies: 1256 | '@types/react': 18.2.77 1257 | dev: false 1258 | 1259 | /@types/react@18.2.77: 1260 | resolution: {integrity: sha512-CUT9KUUF+HytDM7WiXKLF9qUSg4tGImwy4FXTlfEDPEkkNUzJ7rVFolYweJ9fS1ljoIaP7M7Rdjc5eUm/Yu5AA==} 1261 | dependencies: 1262 | '@types/prop-types': 15.7.12 1263 | csstype: 3.1.3 1264 | dev: false 1265 | 1266 | /@types/tough-cookie@4.0.5: 1267 | resolution: {integrity: sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==} 1268 | dev: false 1269 | 1270 | /@types/unist@2.0.10: 1271 | resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==} 1272 | dev: false 1273 | 1274 | /@types/unist@3.0.2: 1275 | resolution: {integrity: sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==} 1276 | dev: false 1277 | 1278 | /@ungap/structured-clone@1.2.0: 1279 | resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} 1280 | dev: false 1281 | 1282 | /@vercel/analytics@1.2.2(react@18.2.0): 1283 | resolution: {integrity: sha512-X0rctVWkQV1e5Y300ehVNqpOfSOufo7ieA5PIdna8yX/U7Vjz0GFsGf4qvAhxV02uQ2CVt7GYcrFfddXXK2Y4A==} 1284 | peerDependencies: 1285 | next: '>= 13' 1286 | react: ^18 || ^19 1287 | peerDependenciesMeta: 1288 | next: 1289 | optional: true 1290 | react: 1291 | optional: true 1292 | dependencies: 1293 | react: 18.2.0 1294 | server-only: 0.0.1 1295 | dev: false 1296 | 1297 | /@vercel/edge@1.1.1: 1298 | resolution: {integrity: sha512-NtKiIbn9Cq6HWGy+qRudz28mz5nxfOJWls5Pnckjw1yCfSX8rhXdvY/il3Sy3Zd5n/sKCM2h7VSCCpJF/oaDrQ==} 1299 | dev: false 1300 | 1301 | /@vercel/nft@0.26.4: 1302 | resolution: {integrity: sha512-j4jCOOXke2t8cHZCIxu1dzKLHLcFmYzC3yqAK6MfZznOL1QIJKd0xcFsXK3zcqzU7ScsE2zWkiMMNHGMHgp+FA==} 1303 | engines: {node: '>=16'} 1304 | hasBin: true 1305 | dependencies: 1306 | '@mapbox/node-pre-gyp': 1.0.11 1307 | '@rollup/pluginutils': 4.2.1 1308 | acorn: 8.11.3 1309 | acorn-import-attributes: 1.9.5(acorn@8.11.3) 1310 | async-sema: 3.1.1 1311 | bindings: 1.5.0 1312 | estree-walker: 2.0.2 1313 | glob: 7.2.3 1314 | graceful-fs: 4.2.11 1315 | micromatch: 4.0.5 1316 | node-gyp-build: 4.8.0 1317 | resolve-from: 5.0.0 1318 | transitivePeerDependencies: 1319 | - encoding 1320 | - supports-color 1321 | dev: false 1322 | 1323 | /@vitejs/plugin-react@4.2.1(vite@5.2.8): 1324 | resolution: {integrity: sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==} 1325 | engines: {node: ^14.18.0 || >=16.0.0} 1326 | peerDependencies: 1327 | vite: ^4.2.0 || ^5.0.0 1328 | dependencies: 1329 | '@babel/core': 7.24.4 1330 | '@babel/plugin-transform-react-jsx-self': 7.24.1(@babel/core@7.24.4) 1331 | '@babel/plugin-transform-react-jsx-source': 7.24.1(@babel/core@7.24.4) 1332 | '@types/babel__core': 7.20.5 1333 | react-refresh: 0.14.0 1334 | vite: 5.2.8(@types/node@20.12.7) 1335 | transitivePeerDependencies: 1336 | - supports-color 1337 | dev: false 1338 | 1339 | /@volar/kit@2.1.6(typescript@5.4.5): 1340 | resolution: {integrity: sha512-dSuXChDGM0nSG/0fxqlNfadjpAeeo1P1SJPBQ+pDf8H1XrqeJq5gIhxRTEbiS+dyNIG69ATq1CArkbCif+oxJw==} 1341 | peerDependencies: 1342 | typescript: '*' 1343 | dependencies: 1344 | '@volar/language-service': 2.1.6 1345 | '@volar/typescript': 2.1.6 1346 | typesafe-path: 0.2.2 1347 | typescript: 5.4.5 1348 | vscode-languageserver-textdocument: 1.0.11 1349 | vscode-uri: 3.0.8 1350 | dev: false 1351 | 1352 | /@volar/language-core@2.1.6: 1353 | resolution: {integrity: sha512-pAlMCGX/HatBSiDFMdMyqUshkbwWbLxpN/RL7HCQDOo2gYBE+uS+nanosLc1qR6pTQ/U8q00xt8bdrrAFPSC0A==} 1354 | dependencies: 1355 | '@volar/source-map': 2.1.6 1356 | dev: false 1357 | 1358 | /@volar/language-server@2.1.6: 1359 | resolution: {integrity: sha512-0w+FV8ro37hVb3qE4ONo3VbS5kEQXv4H/D2xCePyY5dRw6XnbJAPFNKvoxI9mxHTPonvIG1si5rN9MSGSKtgZQ==} 1360 | dependencies: 1361 | '@volar/language-core': 2.1.6 1362 | '@volar/language-service': 2.1.6 1363 | '@volar/snapshot-document': 2.1.6 1364 | '@volar/typescript': 2.1.6 1365 | '@vscode/l10n': 0.0.16 1366 | path-browserify: 1.0.1 1367 | request-light: 0.7.0 1368 | vscode-languageserver: 9.0.1 1369 | vscode-languageserver-protocol: 3.17.5 1370 | vscode-languageserver-textdocument: 1.0.11 1371 | vscode-uri: 3.0.8 1372 | dev: false 1373 | 1374 | /@volar/language-service@2.1.6: 1375 | resolution: {integrity: sha512-1OpbbPQ6wUIumwMP5r45y8utVEmvq1n6BC8JHqGKsuFr9RGFIldDBlvA/xuO3MDKhjmmPGPHKb54kg1/YN78ow==} 1376 | dependencies: 1377 | '@volar/language-core': 2.1.6 1378 | vscode-languageserver-protocol: 3.17.5 1379 | vscode-languageserver-textdocument: 1.0.11 1380 | vscode-uri: 3.0.8 1381 | dev: false 1382 | 1383 | /@volar/snapshot-document@2.1.6: 1384 | resolution: {integrity: sha512-YNYk1sCOrGg7VHbZM+1It97q0GWhFxdqIwnxSNFoL0X1LuSRXoCT2DRb/aa1J6aBpPMbKqSFUWHGQEAFUnc4Zw==} 1385 | dependencies: 1386 | vscode-languageserver-protocol: 3.17.5 1387 | vscode-languageserver-textdocument: 1.0.11 1388 | dev: false 1389 | 1390 | /@volar/source-map@2.1.6: 1391 | resolution: {integrity: sha512-TeyH8pHHonRCHYI91J7fWUoxi0zWV8whZTVRlsWHSYfjm58Blalkf9LrZ+pj6OiverPTmrHRkBsG17ScQyWECw==} 1392 | dependencies: 1393 | muggle-string: 0.4.1 1394 | dev: false 1395 | 1396 | /@volar/typescript@2.1.6: 1397 | resolution: {integrity: sha512-JgPGhORHqXuyC3r6skPmPHIZj4LoMmGlYErFTuPNBq9Nhc9VTv7ctHY7A3jMN3ngKEfRrfnUcwXHztvdSQqNfw==} 1398 | dependencies: 1399 | '@volar/language-core': 2.1.6 1400 | path-browserify: 1.0.1 1401 | dev: false 1402 | 1403 | /@vscode/emmet-helper@2.9.2: 1404 | resolution: {integrity: sha512-MaGuyW+fa13q3aYsluKqclmh62Hgp0BpKIqS66fCxfOaBcVQ1OnMQxRRgQUYnCkxFISAQlkJ0qWWPyXjro1Qrg==} 1405 | dependencies: 1406 | emmet: 2.4.7 1407 | jsonc-parser: 2.3.1 1408 | vscode-languageserver-textdocument: 1.0.11 1409 | vscode-languageserver-types: 3.17.5 1410 | vscode-uri: 2.1.2 1411 | dev: false 1412 | 1413 | /@vscode/l10n@0.0.16: 1414 | resolution: {integrity: sha512-JT5CvrIYYCrmB+dCana8sUqJEcGB1ZDXNLMQ2+42bW995WmNoenijWMUdZfwmuQUTQcEVVIa2OecZzTYWUW9Cg==} 1415 | dev: false 1416 | 1417 | /@vscode/l10n@0.0.18: 1418 | resolution: {integrity: sha512-KYSIHVmslkaCDyw013pphY+d7x1qV8IZupYfeIfzNA+nsaWHbn5uPuQRvdRFsa9zFzGeudPuoGoZ1Op4jrJXIQ==} 1419 | dev: false 1420 | 1421 | /abbrev@1.1.1: 1422 | resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} 1423 | dev: false 1424 | 1425 | /abort-controller@3.0.0: 1426 | resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} 1427 | engines: {node: '>=6.5'} 1428 | dependencies: 1429 | event-target-shim: 5.0.1 1430 | dev: false 1431 | 1432 | /acorn-import-attributes@1.9.5(acorn@8.11.3): 1433 | resolution: {integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==} 1434 | peerDependencies: 1435 | acorn: ^8 1436 | dependencies: 1437 | acorn: 8.11.3 1438 | dev: false 1439 | 1440 | /acorn@8.11.3: 1441 | resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} 1442 | engines: {node: '>=0.4.0'} 1443 | hasBin: true 1444 | dev: false 1445 | 1446 | /agent-base@6.0.2: 1447 | resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} 1448 | engines: {node: '>= 6.0.0'} 1449 | dependencies: 1450 | debug: 4.3.4 1451 | transitivePeerDependencies: 1452 | - supports-color 1453 | dev: false 1454 | 1455 | /agentkeepalive@4.5.0: 1456 | resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==} 1457 | engines: {node: '>= 8.0.0'} 1458 | dependencies: 1459 | humanize-ms: 1.2.1 1460 | dev: false 1461 | 1462 | /already@2.2.1: 1463 | resolution: {integrity: sha512-qk6RIVMS/R1yTvBzfIL1T76PsIL7DIVCINoLuFw2YXKLpLtsTobqdChMs8m3OhuPS3CEE3+Ra5ibYiqdyogbsQ==} 1464 | dev: false 1465 | 1466 | /ansi-align@3.0.1: 1467 | resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} 1468 | dependencies: 1469 | string-width: 4.2.3 1470 | dev: false 1471 | 1472 | /ansi-regex@5.0.1: 1473 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 1474 | engines: {node: '>=8'} 1475 | dev: false 1476 | 1477 | /ansi-regex@6.0.1: 1478 | resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} 1479 | engines: {node: '>=12'} 1480 | dev: false 1481 | 1482 | /ansi-styles@3.2.1: 1483 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} 1484 | engines: {node: '>=4'} 1485 | dependencies: 1486 | color-convert: 1.9.3 1487 | dev: false 1488 | 1489 | /ansi-styles@4.3.0: 1490 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 1491 | engines: {node: '>=8'} 1492 | dependencies: 1493 | color-convert: 2.0.1 1494 | dev: false 1495 | 1496 | /ansi-styles@6.2.1: 1497 | resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} 1498 | engines: {node: '>=12'} 1499 | dev: false 1500 | 1501 | /any-promise@1.3.0: 1502 | resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} 1503 | dev: false 1504 | 1505 | /anymatch@3.1.3: 1506 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} 1507 | engines: {node: '>= 8'} 1508 | dependencies: 1509 | normalize-path: 3.0.0 1510 | picomatch: 2.3.1 1511 | dev: false 1512 | 1513 | /aproba@2.0.0: 1514 | resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} 1515 | dev: false 1516 | 1517 | /are-we-there-yet@2.0.0: 1518 | resolution: {integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==} 1519 | engines: {node: '>=10'} 1520 | dependencies: 1521 | delegates: 1.0.0 1522 | readable-stream: 3.6.2 1523 | dev: false 1524 | 1525 | /arg@5.0.2: 1526 | resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} 1527 | dev: false 1528 | 1529 | /argparse@1.0.10: 1530 | resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} 1531 | dependencies: 1532 | sprintf-js: 1.0.3 1533 | dev: false 1534 | 1535 | /argparse@2.0.1: 1536 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 1537 | dev: false 1538 | 1539 | /aria-query@5.3.0: 1540 | resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} 1541 | dependencies: 1542 | dequal: 2.0.3 1543 | dev: false 1544 | 1545 | /array-iterate@2.0.1: 1546 | resolution: {integrity: sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==} 1547 | dev: false 1548 | 1549 | /astro@4.6.1(@types/node@20.12.7)(typescript@5.4.5): 1550 | resolution: {integrity: sha512-gcL22NEhuRi4wu9/x5Kn2eJf7nT6GeU5BxdN6AHbUnX6UzEDIWtpgHs5lBIZYExKbHKN9PjEGXWQzQtFwLU+5g==} 1551 | engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0'} 1552 | hasBin: true 1553 | dependencies: 1554 | '@astrojs/compiler': 2.7.1 1555 | '@astrojs/internal-helpers': 0.4.0 1556 | '@astrojs/markdown-remark': 5.1.0 1557 | '@astrojs/telemetry': 3.1.0 1558 | '@babel/core': 7.24.4 1559 | '@babel/generator': 7.24.4 1560 | '@babel/parser': 7.24.4 1561 | '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.24.4) 1562 | '@babel/traverse': 7.24.1 1563 | '@babel/types': 7.24.0 1564 | '@types/babel__core': 7.20.5 1565 | acorn: 8.11.3 1566 | aria-query: 5.3.0 1567 | axobject-query: 4.0.0 1568 | boxen: 7.1.1 1569 | chokidar: 3.6.0 1570 | ci-info: 4.0.0 1571 | clsx: 2.1.0 1572 | common-ancestor-path: 1.0.1 1573 | cookie: 0.6.0 1574 | cssesc: 3.0.0 1575 | debug: 4.3.4 1576 | deterministic-object-hash: 2.0.2 1577 | devalue: 4.3.2 1578 | diff: 5.2.0 1579 | dlv: 1.1.3 1580 | dset: 3.1.3 1581 | es-module-lexer: 1.5.0 1582 | esbuild: 0.19.12 1583 | estree-walker: 3.0.3 1584 | execa: 8.0.1 1585 | fast-glob: 3.3.2 1586 | flattie: 1.1.1 1587 | github-slugger: 2.0.0 1588 | gray-matter: 4.0.3 1589 | html-escaper: 3.0.3 1590 | http-cache-semantics: 4.1.1 1591 | js-yaml: 4.1.0 1592 | kleur: 4.1.5 1593 | magic-string: 0.30.9 1594 | mime: 3.0.0 1595 | ora: 7.0.1 1596 | p-limit: 5.0.0 1597 | p-queue: 8.0.1 1598 | path-to-regexp: 6.2.2 1599 | preferred-pm: 3.1.3 1600 | prompts: 2.4.2 1601 | rehype: 13.0.1 1602 | resolve: 1.22.8 1603 | semver: 7.6.0 1604 | shiki: 1.3.0 1605 | string-width: 7.1.0 1606 | strip-ansi: 7.1.0 1607 | tsconfck: 3.0.3(typescript@5.4.5) 1608 | unist-util-visit: 5.0.0 1609 | vfile: 6.0.1 1610 | vite: 5.2.8(@types/node@20.12.7) 1611 | vitefu: 0.2.5(vite@5.2.8) 1612 | which-pm: 2.1.1 1613 | yargs-parser: 21.1.1 1614 | zod: 3.22.4 1615 | zod-to-json-schema: 3.22.5(zod@3.22.4) 1616 | optionalDependencies: 1617 | sharp: 0.32.6 1618 | transitivePeerDependencies: 1619 | - '@types/node' 1620 | - less 1621 | - lightningcss 1622 | - sass 1623 | - stylus 1624 | - sugarss 1625 | - supports-color 1626 | - terser 1627 | - typescript 1628 | dev: false 1629 | 1630 | /async-sema@3.1.1: 1631 | resolution: {integrity: sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==} 1632 | dev: false 1633 | 1634 | /asynckit@0.4.0: 1635 | resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} 1636 | dev: false 1637 | 1638 | /autoprefixer@10.4.19(postcss@8.4.38): 1639 | resolution: {integrity: sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==} 1640 | engines: {node: ^10 || ^12 || >=14} 1641 | hasBin: true 1642 | peerDependencies: 1643 | postcss: ^8.1.0 1644 | dependencies: 1645 | browserslist: 4.23.0 1646 | caniuse-lite: 1.0.30001609 1647 | fraction.js: 4.3.7 1648 | normalize-range: 0.1.2 1649 | picocolors: 1.0.0 1650 | postcss: 8.4.38 1651 | postcss-value-parser: 4.2.0 1652 | dev: false 1653 | 1654 | /axobject-query@4.0.0: 1655 | resolution: {integrity: sha512-+60uv1hiVFhHZeO+Lz0RYzsVHy5Wr1ayX0mwda9KPDVLNJgZ1T9Ny7VmFbLDzxsH0D87I86vgj3gFrjTJUYznw==} 1656 | dependencies: 1657 | dequal: 2.0.3 1658 | dev: false 1659 | 1660 | /b4a@1.6.6: 1661 | resolution: {integrity: sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==} 1662 | requiresBuild: true 1663 | dev: false 1664 | optional: true 1665 | 1666 | /bail@2.0.2: 1667 | resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} 1668 | dev: false 1669 | 1670 | /balanced-match@1.0.2: 1671 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 1672 | dev: false 1673 | 1674 | /bare-events@2.2.2: 1675 | resolution: {integrity: sha512-h7z00dWdG0PYOQEvChhOSWvOfkIKsdZGkWr083FgN/HyoQuebSew/cgirYqh9SCuy/hRvxc5Vy6Fw8xAmYHLkQ==} 1676 | requiresBuild: true 1677 | dev: false 1678 | optional: true 1679 | 1680 | /bare-fs@2.2.3: 1681 | resolution: {integrity: sha512-amG72llr9pstfXOBOHve1WjiuKKAMnebcmMbPWDZ7BCevAoJLpugjuAPRsDINEyjT0a6tbaVx3DctkXIRbLuJw==} 1682 | requiresBuild: true 1683 | dependencies: 1684 | bare-events: 2.2.2 1685 | bare-path: 2.1.1 1686 | streamx: 2.16.1 1687 | dev: false 1688 | optional: true 1689 | 1690 | /bare-os@2.2.1: 1691 | resolution: {integrity: sha512-OwPyHgBBMkhC29Hl3O4/YfxW9n7mdTr2+SsO29XBWKKJsbgj3mnorDB80r5TiCQgQstgE5ga1qNYrpes6NvX2w==} 1692 | requiresBuild: true 1693 | dev: false 1694 | optional: true 1695 | 1696 | /bare-path@2.1.1: 1697 | resolution: {integrity: sha512-OHM+iwRDRMDBsSW7kl3dO62JyHdBKO3B25FB9vNQBPcGHMo4+eA8Yj41Lfbk3pS/seDY+siNge0LdRTulAau/A==} 1698 | requiresBuild: true 1699 | dependencies: 1700 | bare-os: 2.2.1 1701 | dev: false 1702 | optional: true 1703 | 1704 | /base-64@1.0.0: 1705 | resolution: {integrity: sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==} 1706 | dev: false 1707 | 1708 | /base64-js@1.5.1: 1709 | resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} 1710 | dev: false 1711 | 1712 | /binary-extensions@2.3.0: 1713 | resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} 1714 | engines: {node: '>=8'} 1715 | dev: false 1716 | 1717 | /bindings@1.5.0: 1718 | resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} 1719 | dependencies: 1720 | file-uri-to-path: 1.0.0 1721 | dev: false 1722 | 1723 | /bl@4.1.0: 1724 | resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} 1725 | requiresBuild: true 1726 | dependencies: 1727 | buffer: 5.7.1 1728 | inherits: 2.0.4 1729 | readable-stream: 3.6.2 1730 | dev: false 1731 | optional: true 1732 | 1733 | /bl@5.1.0: 1734 | resolution: {integrity: sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==} 1735 | dependencies: 1736 | buffer: 6.0.3 1737 | inherits: 2.0.4 1738 | readable-stream: 3.6.2 1739 | dev: false 1740 | 1741 | /boxen@7.1.1: 1742 | resolution: {integrity: sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==} 1743 | engines: {node: '>=14.16'} 1744 | dependencies: 1745 | ansi-align: 3.0.1 1746 | camelcase: 7.0.1 1747 | chalk: 5.3.0 1748 | cli-boxes: 3.0.0 1749 | string-width: 5.1.2 1750 | type-fest: 2.19.0 1751 | widest-line: 4.0.1 1752 | wrap-ansi: 8.1.0 1753 | dev: false 1754 | 1755 | /brace-expansion@1.1.11: 1756 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 1757 | dependencies: 1758 | balanced-match: 1.0.2 1759 | concat-map: 0.0.1 1760 | dev: false 1761 | 1762 | /brace-expansion@2.0.1: 1763 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 1764 | dependencies: 1765 | balanced-match: 1.0.2 1766 | dev: false 1767 | 1768 | /braces@3.0.2: 1769 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 1770 | engines: {node: '>=8'} 1771 | dependencies: 1772 | fill-range: 7.0.1 1773 | dev: false 1774 | 1775 | /browserslist@4.23.0: 1776 | resolution: {integrity: sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==} 1777 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 1778 | hasBin: true 1779 | dependencies: 1780 | caniuse-lite: 1.0.30001609 1781 | electron-to-chromium: 1.4.736 1782 | node-releases: 2.0.14 1783 | update-browserslist-db: 1.0.13(browserslist@4.23.0) 1784 | dev: false 1785 | 1786 | /bson-objectid@2.0.4: 1787 | resolution: {integrity: sha512-vgnKAUzcDoa+AeyYwXCoHyF2q6u/8H46dxu5JN+4/TZeq/Dlinn0K6GvxsCLb3LHUJl0m/TLiEK31kUwtgocMQ==} 1788 | dev: false 1789 | 1790 | /buffer@5.7.1: 1791 | resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} 1792 | requiresBuild: true 1793 | dependencies: 1794 | base64-js: 1.5.1 1795 | ieee754: 1.2.1 1796 | dev: false 1797 | optional: true 1798 | 1799 | /buffer@6.0.3: 1800 | resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} 1801 | dependencies: 1802 | base64-js: 1.5.1 1803 | ieee754: 1.2.1 1804 | dev: false 1805 | 1806 | /callguard@2.0.0: 1807 | resolution: {integrity: sha512-I3nd+fuj20FK1qu00ImrbH+II+8ULS6ioYr9igqR1xyqySoqc3DiHEyUM0mkoAdKeLGg2CtGnO8R3VRQX5krpQ==} 1808 | dev: false 1809 | 1810 | /camelcase-css@2.0.1: 1811 | resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} 1812 | engines: {node: '>= 6'} 1813 | dev: false 1814 | 1815 | /camelcase@7.0.1: 1816 | resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==} 1817 | engines: {node: '>=14.16'} 1818 | dev: false 1819 | 1820 | /caniuse-lite@1.0.30001609: 1821 | resolution: {integrity: sha512-JFPQs34lHKx1B5t1EpQpWH4c+29zIyn/haGsbpfq3suuV9v56enjFt23zqijxGTMwy1p/4H2tjnQMY+p1WoAyA==} 1822 | dev: false 1823 | 1824 | /ccount@2.0.1: 1825 | resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} 1826 | dev: false 1827 | 1828 | /chalk@2.4.2: 1829 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} 1830 | engines: {node: '>=4'} 1831 | dependencies: 1832 | ansi-styles: 3.2.1 1833 | escape-string-regexp: 1.0.5 1834 | supports-color: 5.5.0 1835 | dev: false 1836 | 1837 | /chalk@5.3.0: 1838 | resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} 1839 | engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} 1840 | dev: false 1841 | 1842 | /character-entities-html4@2.1.0: 1843 | resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} 1844 | dev: false 1845 | 1846 | /character-entities-legacy@3.0.0: 1847 | resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} 1848 | dev: false 1849 | 1850 | /character-entities@2.0.2: 1851 | resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} 1852 | dev: false 1853 | 1854 | /character-reference-invalid@2.0.1: 1855 | resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} 1856 | dev: false 1857 | 1858 | /chokidar@3.6.0: 1859 | resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} 1860 | engines: {node: '>= 8.10.0'} 1861 | dependencies: 1862 | anymatch: 3.1.3 1863 | braces: 3.0.2 1864 | glob-parent: 5.1.2 1865 | is-binary-path: 2.1.0 1866 | is-glob: 4.0.3 1867 | normalize-path: 3.0.0 1868 | readdirp: 3.6.0 1869 | optionalDependencies: 1870 | fsevents: 2.3.3 1871 | dev: false 1872 | 1873 | /chownr@1.1.4: 1874 | resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} 1875 | requiresBuild: true 1876 | dev: false 1877 | optional: true 1878 | 1879 | /chownr@2.0.0: 1880 | resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} 1881 | engines: {node: '>=10'} 1882 | dev: false 1883 | 1884 | /ci-info@4.0.0: 1885 | resolution: {integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==} 1886 | engines: {node: '>=8'} 1887 | dev: false 1888 | 1889 | /cli-boxes@3.0.0: 1890 | resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} 1891 | engines: {node: '>=10'} 1892 | dev: false 1893 | 1894 | /cli-cursor@4.0.0: 1895 | resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} 1896 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1897 | dependencies: 1898 | restore-cursor: 4.0.0 1899 | dev: false 1900 | 1901 | /cli-spinners@2.9.2: 1902 | resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} 1903 | engines: {node: '>=6'} 1904 | dev: false 1905 | 1906 | /cliui@8.0.1: 1907 | resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} 1908 | engines: {node: '>=12'} 1909 | dependencies: 1910 | string-width: 4.2.3 1911 | strip-ansi: 6.0.1 1912 | wrap-ansi: 7.0.0 1913 | dev: false 1914 | 1915 | /clsx@2.1.0: 1916 | resolution: {integrity: sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==} 1917 | engines: {node: '>=6'} 1918 | dev: false 1919 | 1920 | /color-convert@1.9.3: 1921 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} 1922 | dependencies: 1923 | color-name: 1.1.3 1924 | dev: false 1925 | 1926 | /color-convert@2.0.1: 1927 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 1928 | engines: {node: '>=7.0.0'} 1929 | dependencies: 1930 | color-name: 1.1.4 1931 | dev: false 1932 | 1933 | /color-name@1.1.3: 1934 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} 1935 | dev: false 1936 | 1937 | /color-name@1.1.4: 1938 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 1939 | requiresBuild: true 1940 | dev: false 1941 | 1942 | /color-string@1.9.1: 1943 | resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} 1944 | requiresBuild: true 1945 | dependencies: 1946 | color-name: 1.1.4 1947 | simple-swizzle: 0.2.2 1948 | dev: false 1949 | optional: true 1950 | 1951 | /color-support@1.1.3: 1952 | resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} 1953 | hasBin: true 1954 | dev: false 1955 | 1956 | /color@4.2.3: 1957 | resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} 1958 | engines: {node: '>=12.5.0'} 1959 | requiresBuild: true 1960 | dependencies: 1961 | color-convert: 2.0.1 1962 | color-string: 1.9.1 1963 | dev: false 1964 | optional: true 1965 | 1966 | /combined-stream@1.0.8: 1967 | resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} 1968 | engines: {node: '>= 0.8'} 1969 | dependencies: 1970 | delayed-stream: 1.0.0 1971 | dev: false 1972 | 1973 | /comma-separated-tokens@2.0.3: 1974 | resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} 1975 | dev: false 1976 | 1977 | /commander@4.1.1: 1978 | resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} 1979 | engines: {node: '>= 6'} 1980 | dev: false 1981 | 1982 | /common-ancestor-path@1.0.1: 1983 | resolution: {integrity: sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==} 1984 | dev: false 1985 | 1986 | /concat-map@0.0.1: 1987 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 1988 | dev: false 1989 | 1990 | /console-control-strings@1.1.0: 1991 | resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} 1992 | dev: false 1993 | 1994 | /convert-source-map@2.0.0: 1995 | resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} 1996 | dev: false 1997 | 1998 | /cookie@0.6.0: 1999 | resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} 2000 | engines: {node: '>= 0.6'} 2001 | dev: false 2002 | 2003 | /cross-spawn@7.0.3: 2004 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 2005 | engines: {node: '>= 8'} 2006 | dependencies: 2007 | path-key: 3.1.1 2008 | shebang-command: 2.0.0 2009 | which: 2.0.2 2010 | dev: false 2011 | 2012 | /cssesc@3.0.0: 2013 | resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} 2014 | engines: {node: '>=4'} 2015 | hasBin: true 2016 | dev: false 2017 | 2018 | /csstype@3.1.3: 2019 | resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} 2020 | dev: false 2021 | 2022 | /debug@4.3.4: 2023 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 2024 | engines: {node: '>=6.0'} 2025 | peerDependencies: 2026 | supports-color: '*' 2027 | peerDependenciesMeta: 2028 | supports-color: 2029 | optional: true 2030 | dependencies: 2031 | ms: 2.1.2 2032 | dev: false 2033 | 2034 | /decode-named-character-reference@1.0.2: 2035 | resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} 2036 | dependencies: 2037 | character-entities: 2.0.2 2038 | dev: false 2039 | 2040 | /decompress-response@6.0.0: 2041 | resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} 2042 | engines: {node: '>=10'} 2043 | requiresBuild: true 2044 | dependencies: 2045 | mimic-response: 3.1.0 2046 | dev: false 2047 | optional: true 2048 | 2049 | /deep-extend@0.6.0: 2050 | resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} 2051 | engines: {node: '>=4.0.0'} 2052 | requiresBuild: true 2053 | dev: false 2054 | optional: true 2055 | 2056 | /delayed-stream@1.0.0: 2057 | resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} 2058 | engines: {node: '>=0.4.0'} 2059 | dev: false 2060 | 2061 | /delegates@1.0.0: 2062 | resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} 2063 | dev: false 2064 | 2065 | /dequal@2.0.3: 2066 | resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} 2067 | engines: {node: '>=6'} 2068 | dev: false 2069 | 2070 | /detect-libc@2.0.3: 2071 | resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==} 2072 | engines: {node: '>=8'} 2073 | requiresBuild: true 2074 | dev: false 2075 | 2076 | /deterministic-object-hash@2.0.2: 2077 | resolution: {integrity: sha512-KxektNH63SrbfUyDiwXqRb1rLwKt33AmMv+5Nhsw1kqZ13SJBRTgZHtGbE+hH3a1mVW1cz+4pqSWVPAtLVXTzQ==} 2078 | engines: {node: '>=18'} 2079 | dependencies: 2080 | base-64: 1.0.0 2081 | dev: false 2082 | 2083 | /devalue@4.3.2: 2084 | resolution: {integrity: sha512-KqFl6pOgOW+Y6wJgu80rHpo2/3H07vr8ntR9rkkFIRETewbf5GaYYcakYfiKz89K+sLsuPkQIZaXDMjUObZwWg==} 2085 | dev: false 2086 | 2087 | /devlop@1.1.0: 2088 | resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} 2089 | dependencies: 2090 | dequal: 2.0.3 2091 | dev: false 2092 | 2093 | /didyoumean@1.2.2: 2094 | resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} 2095 | dev: false 2096 | 2097 | /diff@5.2.0: 2098 | resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==} 2099 | engines: {node: '>=0.3.1'} 2100 | dev: false 2101 | 2102 | /dlv@1.1.3: 2103 | resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} 2104 | dev: false 2105 | 2106 | /dotenv@16.4.5: 2107 | resolution: {integrity: sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==} 2108 | engines: {node: '>=12'} 2109 | dev: false 2110 | 2111 | /dset@3.1.3: 2112 | resolution: {integrity: sha512-20TuZZHCEZ2O71q9/+8BwKwZ0QtD9D8ObhrihJPr+vLLYlSuAU3/zL4cSlgbfeoGHTjCSJBa7NGcrF9/Bx/WJQ==} 2113 | engines: {node: '>=4'} 2114 | dev: false 2115 | 2116 | /eastasianwidth@0.2.0: 2117 | resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} 2118 | dev: false 2119 | 2120 | /electron-to-chromium@1.4.736: 2121 | resolution: {integrity: sha512-Rer6wc3ynLelKNM4lOCg7/zPQj8tPOCB2hzD32PX9wd3hgRRi9MxEbmkFCokzcEhRVMiOVLjnL9ig9cefJ+6+Q==} 2122 | dev: false 2123 | 2124 | /emmet@2.4.7: 2125 | resolution: {integrity: sha512-O5O5QNqtdlnQM2bmKHtJgyChcrFMgQuulI+WdiOw2NArzprUqqxUW6bgYtKvzKgrsYpuLWalOkdhNP+1jluhCA==} 2126 | dependencies: 2127 | '@emmetio/abbreviation': 2.3.3 2128 | '@emmetio/css-abbreviation': 2.1.8 2129 | dev: false 2130 | 2131 | /emoji-regex@10.3.0: 2132 | resolution: {integrity: sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==} 2133 | dev: false 2134 | 2135 | /emoji-regex@8.0.0: 2136 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 2137 | dev: false 2138 | 2139 | /emoji-regex@9.2.2: 2140 | resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} 2141 | dev: false 2142 | 2143 | /encoding@0.1.13: 2144 | resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} 2145 | dependencies: 2146 | iconv-lite: 0.6.3 2147 | dev: false 2148 | 2149 | /end-of-stream@1.4.4: 2150 | resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} 2151 | requiresBuild: true 2152 | dependencies: 2153 | once: 1.4.0 2154 | dev: false 2155 | optional: true 2156 | 2157 | /entities@4.5.0: 2158 | resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} 2159 | engines: {node: '>=0.12'} 2160 | dev: false 2161 | 2162 | /es-module-lexer@1.5.0: 2163 | resolution: {integrity: sha512-pqrTKmwEIgafsYZAGw9kszYzmagcE/n4dbgwGWLEXg7J4QFJVQRBld8j3Q3GNez79jzxZshq0bcT962QHOghjw==} 2164 | dev: false 2165 | 2166 | /esbuild@0.19.12: 2167 | resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} 2168 | engines: {node: '>=12'} 2169 | hasBin: true 2170 | requiresBuild: true 2171 | optionalDependencies: 2172 | '@esbuild/aix-ppc64': 0.19.12 2173 | '@esbuild/android-arm': 0.19.12 2174 | '@esbuild/android-arm64': 0.19.12 2175 | '@esbuild/android-x64': 0.19.12 2176 | '@esbuild/darwin-arm64': 0.19.12 2177 | '@esbuild/darwin-x64': 0.19.12 2178 | '@esbuild/freebsd-arm64': 0.19.12 2179 | '@esbuild/freebsd-x64': 0.19.12 2180 | '@esbuild/linux-arm': 0.19.12 2181 | '@esbuild/linux-arm64': 0.19.12 2182 | '@esbuild/linux-ia32': 0.19.12 2183 | '@esbuild/linux-loong64': 0.19.12 2184 | '@esbuild/linux-mips64el': 0.19.12 2185 | '@esbuild/linux-ppc64': 0.19.12 2186 | '@esbuild/linux-riscv64': 0.19.12 2187 | '@esbuild/linux-s390x': 0.19.12 2188 | '@esbuild/linux-x64': 0.19.12 2189 | '@esbuild/netbsd-x64': 0.19.12 2190 | '@esbuild/openbsd-x64': 0.19.12 2191 | '@esbuild/sunos-x64': 0.19.12 2192 | '@esbuild/win32-arm64': 0.19.12 2193 | '@esbuild/win32-ia32': 0.19.12 2194 | '@esbuild/win32-x64': 0.19.12 2195 | dev: false 2196 | 2197 | /esbuild@0.20.2: 2198 | resolution: {integrity: sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==} 2199 | engines: {node: '>=12'} 2200 | hasBin: true 2201 | requiresBuild: true 2202 | optionalDependencies: 2203 | '@esbuild/aix-ppc64': 0.20.2 2204 | '@esbuild/android-arm': 0.20.2 2205 | '@esbuild/android-arm64': 0.20.2 2206 | '@esbuild/android-x64': 0.20.2 2207 | '@esbuild/darwin-arm64': 0.20.2 2208 | '@esbuild/darwin-x64': 0.20.2 2209 | '@esbuild/freebsd-arm64': 0.20.2 2210 | '@esbuild/freebsd-x64': 0.20.2 2211 | '@esbuild/linux-arm': 0.20.2 2212 | '@esbuild/linux-arm64': 0.20.2 2213 | '@esbuild/linux-ia32': 0.20.2 2214 | '@esbuild/linux-loong64': 0.20.2 2215 | '@esbuild/linux-mips64el': 0.20.2 2216 | '@esbuild/linux-ppc64': 0.20.2 2217 | '@esbuild/linux-riscv64': 0.20.2 2218 | '@esbuild/linux-s390x': 0.20.2 2219 | '@esbuild/linux-x64': 0.20.2 2220 | '@esbuild/netbsd-x64': 0.20.2 2221 | '@esbuild/openbsd-x64': 0.20.2 2222 | '@esbuild/sunos-x64': 0.20.2 2223 | '@esbuild/win32-arm64': 0.20.2 2224 | '@esbuild/win32-ia32': 0.20.2 2225 | '@esbuild/win32-x64': 0.20.2 2226 | dev: false 2227 | 2228 | /escalade@3.1.2: 2229 | resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} 2230 | engines: {node: '>=6'} 2231 | dev: false 2232 | 2233 | /escape-string-regexp@1.0.5: 2234 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} 2235 | engines: {node: '>=0.8.0'} 2236 | dev: false 2237 | 2238 | /escape-string-regexp@5.0.0: 2239 | resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} 2240 | engines: {node: '>=12'} 2241 | dev: false 2242 | 2243 | /esprima@4.0.1: 2244 | resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} 2245 | engines: {node: '>=4'} 2246 | hasBin: true 2247 | dev: false 2248 | 2249 | /estree-util-is-identifier-name@3.0.0: 2250 | resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==} 2251 | dev: false 2252 | 2253 | /estree-walker@2.0.2: 2254 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} 2255 | dev: false 2256 | 2257 | /estree-walker@3.0.3: 2258 | resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} 2259 | dependencies: 2260 | '@types/estree': 1.0.5 2261 | dev: false 2262 | 2263 | /event-target-shim@5.0.1: 2264 | resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} 2265 | engines: {node: '>=6'} 2266 | dev: false 2267 | 2268 | /eventemitter3@5.0.1: 2269 | resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} 2270 | dev: false 2271 | 2272 | /execa@8.0.1: 2273 | resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} 2274 | engines: {node: '>=16.17'} 2275 | dependencies: 2276 | cross-spawn: 7.0.3 2277 | get-stream: 8.0.1 2278 | human-signals: 5.0.0 2279 | is-stream: 3.0.0 2280 | merge-stream: 2.0.0 2281 | npm-run-path: 5.3.0 2282 | onetime: 6.0.0 2283 | signal-exit: 4.1.0 2284 | strip-final-newline: 3.0.0 2285 | dev: false 2286 | 2287 | /expand-template@2.0.3: 2288 | resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} 2289 | engines: {node: '>=6'} 2290 | requiresBuild: true 2291 | dev: false 2292 | optional: true 2293 | 2294 | /extend-shallow@2.0.1: 2295 | resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} 2296 | engines: {node: '>=0.10.0'} 2297 | dependencies: 2298 | is-extendable: 0.1.1 2299 | dev: false 2300 | 2301 | /extend@3.0.2: 2302 | resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} 2303 | dev: false 2304 | 2305 | /fast-fifo@1.3.2: 2306 | resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==} 2307 | requiresBuild: true 2308 | dev: false 2309 | optional: true 2310 | 2311 | /fast-glob@3.3.2: 2312 | resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} 2313 | engines: {node: '>=8.6.0'} 2314 | dependencies: 2315 | '@nodelib/fs.stat': 2.0.5 2316 | '@nodelib/fs.walk': 1.2.8 2317 | glob-parent: 5.1.2 2318 | merge2: 1.4.1 2319 | micromatch: 4.0.5 2320 | dev: false 2321 | 2322 | /fastq@1.17.1: 2323 | resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} 2324 | dependencies: 2325 | reusify: 1.0.4 2326 | dev: false 2327 | 2328 | /fetch-h2@3.0.2: 2329 | resolution: {integrity: sha512-Lo6UPdMKKc9Ond7yjG2vq0mnocspOLh1oV6+XZdtfdexacvMSz5xm3WoQhTAdoR2+UqPlyMNqcqfecipoD+l/A==} 2330 | engines: {node: '>=12'} 2331 | dependencies: 2332 | '@types/tough-cookie': 4.0.5 2333 | already: 2.2.1 2334 | callguard: 2.0.0 2335 | get-stream: 6.0.1 2336 | through2: 4.0.2 2337 | to-arraybuffer: 1.0.1 2338 | tough-cookie: 4.1.3 2339 | dev: false 2340 | 2341 | /file-uri-to-path@1.0.0: 2342 | resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} 2343 | dev: false 2344 | 2345 | /fill-range@7.0.1: 2346 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 2347 | engines: {node: '>=8'} 2348 | dependencies: 2349 | to-regex-range: 5.0.1 2350 | dev: false 2351 | 2352 | /find-up@4.1.0: 2353 | resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} 2354 | engines: {node: '>=8'} 2355 | dependencies: 2356 | locate-path: 5.0.0 2357 | path-exists: 4.0.0 2358 | dev: false 2359 | 2360 | /find-up@5.0.0: 2361 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 2362 | engines: {node: '>=10'} 2363 | dependencies: 2364 | locate-path: 6.0.0 2365 | path-exists: 4.0.0 2366 | dev: false 2367 | 2368 | /find-yarn-workspace-root2@1.2.16: 2369 | resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==} 2370 | dependencies: 2371 | micromatch: 4.0.5 2372 | pkg-dir: 4.2.0 2373 | dev: false 2374 | 2375 | /flattie@1.1.1: 2376 | resolution: {integrity: sha512-9UbaD6XdAL97+k/n+N7JwX46K/M6Zc6KcFYskrYL8wbBV/Uyk0CTAMY0VT+qiK5PM7AIc9aTWYtq65U7T+aCNQ==} 2377 | engines: {node: '>=8'} 2378 | dev: false 2379 | 2380 | /foreground-child@3.1.1: 2381 | resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} 2382 | engines: {node: '>=14'} 2383 | dependencies: 2384 | cross-spawn: 7.0.3 2385 | signal-exit: 4.1.0 2386 | dev: false 2387 | 2388 | /form-data-encoder@1.7.2: 2389 | resolution: {integrity: sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==} 2390 | dev: false 2391 | 2392 | /form-data@4.0.0: 2393 | resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} 2394 | engines: {node: '>= 6'} 2395 | dependencies: 2396 | asynckit: 0.4.0 2397 | combined-stream: 1.0.8 2398 | mime-types: 2.1.35 2399 | dev: false 2400 | 2401 | /formdata-node@4.4.1: 2402 | resolution: {integrity: sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==} 2403 | engines: {node: '>= 12.20'} 2404 | dependencies: 2405 | node-domexception: 1.0.0 2406 | web-streams-polyfill: 4.0.0-beta.3 2407 | dev: false 2408 | 2409 | /fraction.js@4.3.7: 2410 | resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} 2411 | dev: false 2412 | 2413 | /fs-constants@1.0.0: 2414 | resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} 2415 | requiresBuild: true 2416 | dev: false 2417 | optional: true 2418 | 2419 | /fs-minipass@2.1.0: 2420 | resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} 2421 | engines: {node: '>= 8'} 2422 | dependencies: 2423 | minipass: 3.3.6 2424 | dev: false 2425 | 2426 | /fs.realpath@1.0.0: 2427 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 2428 | dev: false 2429 | 2430 | /fsevents@2.3.3: 2431 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 2432 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 2433 | os: [darwin] 2434 | requiresBuild: true 2435 | dev: false 2436 | optional: true 2437 | 2438 | /function-bind@1.1.2: 2439 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} 2440 | dev: false 2441 | 2442 | /gauge@3.0.2: 2443 | resolution: {integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==} 2444 | engines: {node: '>=10'} 2445 | dependencies: 2446 | aproba: 2.0.0 2447 | color-support: 1.1.3 2448 | console-control-strings: 1.1.0 2449 | has-unicode: 2.0.1 2450 | object-assign: 4.1.1 2451 | signal-exit: 3.0.7 2452 | string-width: 4.2.3 2453 | strip-ansi: 6.0.1 2454 | wide-align: 1.1.5 2455 | dev: false 2456 | 2457 | /gensync@1.0.0-beta.2: 2458 | resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} 2459 | engines: {node: '>=6.9.0'} 2460 | dev: false 2461 | 2462 | /get-caller-file@2.0.5: 2463 | resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} 2464 | engines: {node: 6.* || 8.* || >= 10.*} 2465 | dev: false 2466 | 2467 | /get-east-asian-width@1.2.0: 2468 | resolution: {integrity: sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==} 2469 | engines: {node: '>=18'} 2470 | dev: false 2471 | 2472 | /get-stream@6.0.1: 2473 | resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} 2474 | engines: {node: '>=10'} 2475 | dev: false 2476 | 2477 | /get-stream@8.0.1: 2478 | resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} 2479 | engines: {node: '>=16'} 2480 | dev: false 2481 | 2482 | /github-from-package@0.0.0: 2483 | resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} 2484 | requiresBuild: true 2485 | dev: false 2486 | optional: true 2487 | 2488 | /github-slugger@2.0.0: 2489 | resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} 2490 | dev: false 2491 | 2492 | /glob-parent@5.1.2: 2493 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 2494 | engines: {node: '>= 6'} 2495 | dependencies: 2496 | is-glob: 4.0.3 2497 | dev: false 2498 | 2499 | /glob-parent@6.0.2: 2500 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 2501 | engines: {node: '>=10.13.0'} 2502 | dependencies: 2503 | is-glob: 4.0.3 2504 | dev: false 2505 | 2506 | /glob@10.3.12: 2507 | resolution: {integrity: sha512-TCNv8vJ+xz4QiqTpfOJA7HvYv+tNIRHKfUWw/q+v2jdgN4ebz+KY9tGx5J4rHP0o84mNP+ApH66HRX8us3Khqg==} 2508 | engines: {node: '>=16 || 14 >=14.17'} 2509 | hasBin: true 2510 | dependencies: 2511 | foreground-child: 3.1.1 2512 | jackspeak: 2.3.6 2513 | minimatch: 9.0.4 2514 | minipass: 7.0.4 2515 | path-scurry: 1.10.2 2516 | dev: false 2517 | 2518 | /glob@7.2.3: 2519 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 2520 | dependencies: 2521 | fs.realpath: 1.0.0 2522 | inflight: 1.0.6 2523 | inherits: 2.0.4 2524 | minimatch: 3.1.2 2525 | once: 1.4.0 2526 | path-is-absolute: 1.0.1 2527 | dev: false 2528 | 2529 | /globals@11.12.0: 2530 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} 2531 | engines: {node: '>=4'} 2532 | dev: false 2533 | 2534 | /graceful-fs@4.2.11: 2535 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 2536 | dev: false 2537 | 2538 | /gray-matter@4.0.3: 2539 | resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} 2540 | engines: {node: '>=6.0'} 2541 | dependencies: 2542 | js-yaml: 3.14.1 2543 | kind-of: 6.0.3 2544 | section-matter: 1.0.0 2545 | strip-bom-string: 1.0.0 2546 | dev: false 2547 | 2548 | /has-flag@3.0.0: 2549 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} 2550 | engines: {node: '>=4'} 2551 | dev: false 2552 | 2553 | /has-unicode@2.0.1: 2554 | resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==} 2555 | dev: false 2556 | 2557 | /hasown@2.0.2: 2558 | resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} 2559 | engines: {node: '>= 0.4'} 2560 | dependencies: 2561 | function-bind: 1.1.2 2562 | dev: false 2563 | 2564 | /hast-util-from-html@2.0.1: 2565 | resolution: {integrity: sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g==} 2566 | dependencies: 2567 | '@types/hast': 3.0.4 2568 | devlop: 1.1.0 2569 | hast-util-from-parse5: 8.0.1 2570 | parse5: 7.1.2 2571 | vfile: 6.0.1 2572 | vfile-message: 4.0.2 2573 | dev: false 2574 | 2575 | /hast-util-from-parse5@8.0.1: 2576 | resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==} 2577 | dependencies: 2578 | '@types/hast': 3.0.4 2579 | '@types/unist': 3.0.2 2580 | devlop: 1.1.0 2581 | hastscript: 8.0.0 2582 | property-information: 6.5.0 2583 | vfile: 6.0.1 2584 | vfile-location: 5.0.2 2585 | web-namespaces: 2.0.1 2586 | dev: false 2587 | 2588 | /hast-util-is-element@3.0.0: 2589 | resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==} 2590 | dependencies: 2591 | '@types/hast': 3.0.4 2592 | dev: false 2593 | 2594 | /hast-util-parse-selector@4.0.0: 2595 | resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} 2596 | dependencies: 2597 | '@types/hast': 3.0.4 2598 | dev: false 2599 | 2600 | /hast-util-raw@9.0.2: 2601 | resolution: {integrity: sha512-PldBy71wO9Uq1kyaMch9AHIghtQvIwxBUkv823pKmkTM3oV1JxtsTNYdevMxvUHqcnOAuO65JKU2+0NOxc2ksA==} 2602 | dependencies: 2603 | '@types/hast': 3.0.4 2604 | '@types/unist': 3.0.2 2605 | '@ungap/structured-clone': 1.2.0 2606 | hast-util-from-parse5: 8.0.1 2607 | hast-util-to-parse5: 8.0.0 2608 | html-void-elements: 3.0.0 2609 | mdast-util-to-hast: 13.1.0 2610 | parse5: 7.1.2 2611 | unist-util-position: 5.0.0 2612 | unist-util-visit: 5.0.0 2613 | vfile: 6.0.1 2614 | web-namespaces: 2.0.1 2615 | zwitch: 2.0.4 2616 | dev: false 2617 | 2618 | /hast-util-to-html@9.0.1: 2619 | resolution: {integrity: sha512-hZOofyZANbyWo+9RP75xIDV/gq+OUKx+T46IlwERnKmfpwp81XBFbT9mi26ws+SJchA4RVUQwIBJpqEOBhMzEQ==} 2620 | dependencies: 2621 | '@types/hast': 3.0.4 2622 | '@types/unist': 3.0.2 2623 | ccount: 2.0.1 2624 | comma-separated-tokens: 2.0.3 2625 | hast-util-raw: 9.0.2 2626 | hast-util-whitespace: 3.0.0 2627 | html-void-elements: 3.0.0 2628 | mdast-util-to-hast: 13.1.0 2629 | property-information: 6.5.0 2630 | space-separated-tokens: 2.0.2 2631 | stringify-entities: 4.0.4 2632 | zwitch: 2.0.4 2633 | dev: false 2634 | 2635 | /hast-util-to-jsx-runtime@2.3.0: 2636 | resolution: {integrity: sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==} 2637 | dependencies: 2638 | '@types/estree': 1.0.5 2639 | '@types/hast': 3.0.4 2640 | '@types/unist': 3.0.2 2641 | comma-separated-tokens: 2.0.3 2642 | devlop: 1.1.0 2643 | estree-util-is-identifier-name: 3.0.0 2644 | hast-util-whitespace: 3.0.0 2645 | mdast-util-mdx-expression: 2.0.0 2646 | mdast-util-mdx-jsx: 3.1.2 2647 | mdast-util-mdxjs-esm: 2.0.1 2648 | property-information: 6.5.0 2649 | space-separated-tokens: 2.0.2 2650 | style-to-object: 1.0.6 2651 | unist-util-position: 5.0.0 2652 | vfile-message: 4.0.2 2653 | transitivePeerDependencies: 2654 | - supports-color 2655 | dev: false 2656 | 2657 | /hast-util-to-parse5@8.0.0: 2658 | resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} 2659 | dependencies: 2660 | '@types/hast': 3.0.4 2661 | comma-separated-tokens: 2.0.3 2662 | devlop: 1.1.0 2663 | property-information: 6.5.0 2664 | space-separated-tokens: 2.0.2 2665 | web-namespaces: 2.0.1 2666 | zwitch: 2.0.4 2667 | dev: false 2668 | 2669 | /hast-util-to-text@4.0.1: 2670 | resolution: {integrity: sha512-RHL7Vo2n06ZocCFWqmbyhZ1pCYX/mSKdywt9YD5U6Hquu5syV+dImCXFKLFt02JoK5QxkQFS0PoVdFdPXuPffQ==} 2671 | dependencies: 2672 | '@types/hast': 3.0.4 2673 | '@types/unist': 3.0.2 2674 | hast-util-is-element: 3.0.0 2675 | unist-util-find-after: 5.0.0 2676 | dev: false 2677 | 2678 | /hast-util-whitespace@3.0.0: 2679 | resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} 2680 | dependencies: 2681 | '@types/hast': 3.0.4 2682 | dev: false 2683 | 2684 | /hastscript@8.0.0: 2685 | resolution: {integrity: sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==} 2686 | dependencies: 2687 | '@types/hast': 3.0.4 2688 | comma-separated-tokens: 2.0.3 2689 | hast-util-parse-selector: 4.0.0 2690 | property-information: 6.5.0 2691 | space-separated-tokens: 2.0.2 2692 | dev: false 2693 | 2694 | /html-escaper@3.0.3: 2695 | resolution: {integrity: sha512-RuMffC89BOWQoY0WKGpIhn5gX3iI54O6nRA0yC124NYVtzjmFWBIiFd8M0x+ZdX0P9R4lADg1mgP8C7PxGOWuQ==} 2696 | dev: false 2697 | 2698 | /html-url-attributes@3.0.0: 2699 | resolution: {integrity: sha512-/sXbVCWayk6GDVg3ctOX6nxaVj7So40FcFAnWlWGNAB1LpYKcV5Cd10APjPjW80O7zYW2MsjBV4zZ7IZO5fVow==} 2700 | dev: false 2701 | 2702 | /html-void-elements@3.0.0: 2703 | resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} 2704 | dev: false 2705 | 2706 | /http-cache-semantics@4.1.1: 2707 | resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} 2708 | dev: false 2709 | 2710 | /https-proxy-agent@5.0.1: 2711 | resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} 2712 | engines: {node: '>= 6'} 2713 | dependencies: 2714 | agent-base: 6.0.2 2715 | debug: 4.3.4 2716 | transitivePeerDependencies: 2717 | - supports-color 2718 | dev: false 2719 | 2720 | /human-signals@5.0.0: 2721 | resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} 2722 | engines: {node: '>=16.17.0'} 2723 | dev: false 2724 | 2725 | /humanize-ms@1.2.1: 2726 | resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} 2727 | dependencies: 2728 | ms: 2.1.2 2729 | dev: false 2730 | 2731 | /iconv-lite@0.6.3: 2732 | resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} 2733 | engines: {node: '>=0.10.0'} 2734 | dependencies: 2735 | safer-buffer: 2.1.2 2736 | dev: false 2737 | 2738 | /ieee754@1.2.1: 2739 | resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} 2740 | dev: false 2741 | 2742 | /import-meta-resolve@4.0.0: 2743 | resolution: {integrity: sha512-okYUR7ZQPH+efeuMJGlq4f8ubUgO50kByRPyt/Cy1Io4PSRsPjxME+YlVaCOx+NIToW7hCsZNFJyTPFFKepRSA==} 2744 | dev: false 2745 | 2746 | /inflight@1.0.6: 2747 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 2748 | dependencies: 2749 | once: 1.4.0 2750 | wrappy: 1.0.2 2751 | dev: false 2752 | 2753 | /inherits@2.0.4: 2754 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 2755 | dev: false 2756 | 2757 | /ini@1.3.8: 2758 | resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} 2759 | requiresBuild: true 2760 | dev: false 2761 | optional: true 2762 | 2763 | /inline-style-parser@0.2.3: 2764 | resolution: {integrity: sha512-qlD8YNDqyTKTyuITrDOffsl6Tdhv+UC4hcdAVuQsK4IMQ99nSgd1MIA/Q+jQYoh9r3hVUXhYh7urSRmXPkW04g==} 2765 | dev: false 2766 | 2767 | /is-alphabetical@2.0.1: 2768 | resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} 2769 | dev: false 2770 | 2771 | /is-alphanumerical@2.0.1: 2772 | resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} 2773 | dependencies: 2774 | is-alphabetical: 2.0.1 2775 | is-decimal: 2.0.1 2776 | dev: false 2777 | 2778 | /is-arrayish@0.3.2: 2779 | resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} 2780 | requiresBuild: true 2781 | dev: false 2782 | optional: true 2783 | 2784 | /is-binary-path@2.1.0: 2785 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} 2786 | engines: {node: '>=8'} 2787 | dependencies: 2788 | binary-extensions: 2.3.0 2789 | dev: false 2790 | 2791 | /is-buffer@2.0.5: 2792 | resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} 2793 | engines: {node: '>=4'} 2794 | dev: false 2795 | 2796 | /is-core-module@2.13.1: 2797 | resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} 2798 | dependencies: 2799 | hasown: 2.0.2 2800 | dev: false 2801 | 2802 | /is-decimal@2.0.1: 2803 | resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} 2804 | dev: false 2805 | 2806 | /is-docker@3.0.0: 2807 | resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} 2808 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 2809 | hasBin: true 2810 | dev: false 2811 | 2812 | /is-extendable@0.1.1: 2813 | resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==} 2814 | engines: {node: '>=0.10.0'} 2815 | dev: false 2816 | 2817 | /is-extglob@2.1.1: 2818 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 2819 | engines: {node: '>=0.10.0'} 2820 | dev: false 2821 | 2822 | /is-fullwidth-code-point@3.0.0: 2823 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 2824 | engines: {node: '>=8'} 2825 | dev: false 2826 | 2827 | /is-glob@4.0.3: 2828 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 2829 | engines: {node: '>=0.10.0'} 2830 | dependencies: 2831 | is-extglob: 2.1.1 2832 | dev: false 2833 | 2834 | /is-hexadecimal@2.0.1: 2835 | resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} 2836 | dev: false 2837 | 2838 | /is-inside-container@1.0.0: 2839 | resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} 2840 | engines: {node: '>=14.16'} 2841 | hasBin: true 2842 | dependencies: 2843 | is-docker: 3.0.0 2844 | dev: false 2845 | 2846 | /is-interactive@2.0.0: 2847 | resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==} 2848 | engines: {node: '>=12'} 2849 | dev: false 2850 | 2851 | /is-number@7.0.0: 2852 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 2853 | engines: {node: '>=0.12.0'} 2854 | dev: false 2855 | 2856 | /is-plain-obj@4.1.0: 2857 | resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} 2858 | engines: {node: '>=12'} 2859 | dev: false 2860 | 2861 | /is-stream@3.0.0: 2862 | resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} 2863 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 2864 | dev: false 2865 | 2866 | /is-unicode-supported@1.3.0: 2867 | resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==} 2868 | engines: {node: '>=12'} 2869 | dev: false 2870 | 2871 | /is-wsl@3.1.0: 2872 | resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==} 2873 | engines: {node: '>=16'} 2874 | dependencies: 2875 | is-inside-container: 1.0.0 2876 | dev: false 2877 | 2878 | /isexe@2.0.0: 2879 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 2880 | dev: false 2881 | 2882 | /jackspeak@2.3.6: 2883 | resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} 2884 | engines: {node: '>=14'} 2885 | dependencies: 2886 | '@isaacs/cliui': 8.0.2 2887 | optionalDependencies: 2888 | '@pkgjs/parseargs': 0.11.0 2889 | dev: false 2890 | 2891 | /jiti@1.21.0: 2892 | resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==} 2893 | hasBin: true 2894 | dev: false 2895 | 2896 | /js-tiktoken@1.0.11: 2897 | resolution: {integrity: sha512-PajXFLq2vx7/8jllQZ43vzNpAai/0MOVdJjW/UrNyJorNQRTjHrqdGJG/mjHVy7h9M6dW6CaG43eNLMYFkTh6w==} 2898 | dependencies: 2899 | base64-js: 1.5.1 2900 | dev: false 2901 | 2902 | /js-tokens@4.0.0: 2903 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 2904 | dev: false 2905 | 2906 | /js-yaml@3.14.1: 2907 | resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} 2908 | hasBin: true 2909 | dependencies: 2910 | argparse: 1.0.10 2911 | esprima: 4.0.1 2912 | dev: false 2913 | 2914 | /js-yaml@4.1.0: 2915 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 2916 | hasBin: true 2917 | dependencies: 2918 | argparse: 2.0.1 2919 | dev: false 2920 | 2921 | /jsesc@2.5.2: 2922 | resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} 2923 | engines: {node: '>=4'} 2924 | hasBin: true 2925 | dev: false 2926 | 2927 | /json5@2.2.3: 2928 | resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} 2929 | engines: {node: '>=6'} 2930 | hasBin: true 2931 | dev: false 2932 | 2933 | /jsonc-parser@2.3.1: 2934 | resolution: {integrity: sha512-H8jvkz1O50L3dMZCsLqiuB2tA7muqbSg1AtGEkN0leAqGjsUzDJir3Zwr02BhqdcITPg3ei3mZ+HjMocAknhhg==} 2935 | dev: false 2936 | 2937 | /kind-of@6.0.3: 2938 | resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} 2939 | engines: {node: '>=0.10.0'} 2940 | dev: false 2941 | 2942 | /kleur@3.0.3: 2943 | resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} 2944 | engines: {node: '>=6'} 2945 | dev: false 2946 | 2947 | /kleur@4.1.5: 2948 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} 2949 | engines: {node: '>=6'} 2950 | dev: false 2951 | 2952 | /lilconfig@2.1.0: 2953 | resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} 2954 | engines: {node: '>=10'} 2955 | dev: false 2956 | 2957 | /lilconfig@3.1.1: 2958 | resolution: {integrity: sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==} 2959 | engines: {node: '>=14'} 2960 | dev: false 2961 | 2962 | /lines-and-columns@1.2.4: 2963 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} 2964 | dev: false 2965 | 2966 | /load-yaml-file@0.2.0: 2967 | resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==} 2968 | engines: {node: '>=6'} 2969 | dependencies: 2970 | graceful-fs: 4.2.11 2971 | js-yaml: 3.14.1 2972 | pify: 4.0.1 2973 | strip-bom: 3.0.0 2974 | dev: false 2975 | 2976 | /locate-path@5.0.0: 2977 | resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} 2978 | engines: {node: '>=8'} 2979 | dependencies: 2980 | p-locate: 4.1.0 2981 | dev: false 2982 | 2983 | /locate-path@6.0.0: 2984 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 2985 | engines: {node: '>=10'} 2986 | dependencies: 2987 | p-locate: 5.0.0 2988 | dev: false 2989 | 2990 | /log-symbols@5.1.0: 2991 | resolution: {integrity: sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA==} 2992 | engines: {node: '>=12'} 2993 | dependencies: 2994 | chalk: 5.3.0 2995 | is-unicode-supported: 1.3.0 2996 | dev: false 2997 | 2998 | /longest-streak@3.1.0: 2999 | resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} 3000 | dev: false 3001 | 3002 | /loose-envify@1.4.0: 3003 | resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} 3004 | hasBin: true 3005 | dependencies: 3006 | js-tokens: 4.0.0 3007 | dev: false 3008 | 3009 | /lru-cache@10.2.0: 3010 | resolution: {integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==} 3011 | engines: {node: 14 || >=16.14} 3012 | dev: false 3013 | 3014 | /lru-cache@5.1.1: 3015 | resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} 3016 | dependencies: 3017 | yallist: 3.1.1 3018 | dev: false 3019 | 3020 | /lru-cache@6.0.0: 3021 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 3022 | engines: {node: '>=10'} 3023 | dependencies: 3024 | yallist: 4.0.0 3025 | dev: false 3026 | 3027 | /magic-string@0.30.9: 3028 | resolution: {integrity: sha512-S1+hd+dIrC8EZqKyT9DstTH/0Z+f76kmmvZnkfQVmOpDEF9iVgdYif3Q/pIWHmCoo59bQVGW0kVL3e2nl+9+Sw==} 3029 | engines: {node: '>=12'} 3030 | dependencies: 3031 | '@jridgewell/sourcemap-codec': 1.4.15 3032 | dev: false 3033 | 3034 | /make-dir@3.1.0: 3035 | resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} 3036 | engines: {node: '>=8'} 3037 | dependencies: 3038 | semver: 6.3.1 3039 | dev: false 3040 | 3041 | /markdown-table@3.0.3: 3042 | resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} 3043 | dev: false 3044 | 3045 | /mdast-util-definitions@6.0.0: 3046 | resolution: {integrity: sha512-scTllyX6pnYNZH/AIp/0ePz6s4cZtARxImwoPJ7kS42n+MnVsI4XbnG6d4ibehRIldYMWM2LD7ImQblVhUejVQ==} 3047 | dependencies: 3048 | '@types/mdast': 4.0.3 3049 | '@types/unist': 3.0.2 3050 | unist-util-visit: 5.0.0 3051 | dev: false 3052 | 3053 | /mdast-util-find-and-replace@3.0.1: 3054 | resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==} 3055 | dependencies: 3056 | '@types/mdast': 4.0.3 3057 | escape-string-regexp: 5.0.0 3058 | unist-util-is: 6.0.0 3059 | unist-util-visit-parents: 6.0.1 3060 | dev: false 3061 | 3062 | /mdast-util-from-markdown@2.0.0: 3063 | resolution: {integrity: sha512-n7MTOr/z+8NAX/wmhhDji8O3bRvPTV/U0oTCaZJkjhPSKTPhS3xufVhKGF8s1pJ7Ox4QgoIU7KHseh09S+9rTA==} 3064 | dependencies: 3065 | '@types/mdast': 4.0.3 3066 | '@types/unist': 3.0.2 3067 | decode-named-character-reference: 1.0.2 3068 | devlop: 1.1.0 3069 | mdast-util-to-string: 4.0.0 3070 | micromark: 4.0.0 3071 | micromark-util-decode-numeric-character-reference: 2.0.1 3072 | micromark-util-decode-string: 2.0.0 3073 | micromark-util-normalize-identifier: 2.0.0 3074 | micromark-util-symbol: 2.0.0 3075 | micromark-util-types: 2.0.0 3076 | unist-util-stringify-position: 4.0.0 3077 | transitivePeerDependencies: 3078 | - supports-color 3079 | dev: false 3080 | 3081 | /mdast-util-gfm-autolink-literal@2.0.0: 3082 | resolution: {integrity: sha512-FyzMsduZZHSc3i0Px3PQcBT4WJY/X/RCtEJKuybiC6sjPqLv7h1yqAkmILZtuxMSsUyaLUWNp71+vQH2zqp5cg==} 3083 | dependencies: 3084 | '@types/mdast': 4.0.3 3085 | ccount: 2.0.1 3086 | devlop: 1.1.0 3087 | mdast-util-find-and-replace: 3.0.1 3088 | micromark-util-character: 2.1.0 3089 | dev: false 3090 | 3091 | /mdast-util-gfm-footnote@2.0.0: 3092 | resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==} 3093 | dependencies: 3094 | '@types/mdast': 4.0.3 3095 | devlop: 1.1.0 3096 | mdast-util-from-markdown: 2.0.0 3097 | mdast-util-to-markdown: 2.1.0 3098 | micromark-util-normalize-identifier: 2.0.0 3099 | transitivePeerDependencies: 3100 | - supports-color 3101 | dev: false 3102 | 3103 | /mdast-util-gfm-strikethrough@2.0.0: 3104 | resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} 3105 | dependencies: 3106 | '@types/mdast': 4.0.3 3107 | mdast-util-from-markdown: 2.0.0 3108 | mdast-util-to-markdown: 2.1.0 3109 | transitivePeerDependencies: 3110 | - supports-color 3111 | dev: false 3112 | 3113 | /mdast-util-gfm-table@2.0.0: 3114 | resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} 3115 | dependencies: 3116 | '@types/mdast': 4.0.3 3117 | devlop: 1.1.0 3118 | markdown-table: 3.0.3 3119 | mdast-util-from-markdown: 2.0.0 3120 | mdast-util-to-markdown: 2.1.0 3121 | transitivePeerDependencies: 3122 | - supports-color 3123 | dev: false 3124 | 3125 | /mdast-util-gfm-task-list-item@2.0.0: 3126 | resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} 3127 | dependencies: 3128 | '@types/mdast': 4.0.3 3129 | devlop: 1.1.0 3130 | mdast-util-from-markdown: 2.0.0 3131 | mdast-util-to-markdown: 2.1.0 3132 | transitivePeerDependencies: 3133 | - supports-color 3134 | dev: false 3135 | 3136 | /mdast-util-gfm@3.0.0: 3137 | resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==} 3138 | dependencies: 3139 | mdast-util-from-markdown: 2.0.0 3140 | mdast-util-gfm-autolink-literal: 2.0.0 3141 | mdast-util-gfm-footnote: 2.0.0 3142 | mdast-util-gfm-strikethrough: 2.0.0 3143 | mdast-util-gfm-table: 2.0.0 3144 | mdast-util-gfm-task-list-item: 2.0.0 3145 | mdast-util-to-markdown: 2.1.0 3146 | transitivePeerDependencies: 3147 | - supports-color 3148 | dev: false 3149 | 3150 | /mdast-util-mdx-expression@2.0.0: 3151 | resolution: {integrity: sha512-fGCu8eWdKUKNu5mohVGkhBXCXGnOTLuFqOvGMvdikr+J1w7lDJgxThOKpwRWzzbyXAU2hhSwsmssOY4yTokluw==} 3152 | dependencies: 3153 | '@types/estree-jsx': 1.0.5 3154 | '@types/hast': 3.0.4 3155 | '@types/mdast': 4.0.3 3156 | devlop: 1.1.0 3157 | mdast-util-from-markdown: 2.0.0 3158 | mdast-util-to-markdown: 2.1.0 3159 | transitivePeerDependencies: 3160 | - supports-color 3161 | dev: false 3162 | 3163 | /mdast-util-mdx-jsx@3.1.2: 3164 | resolution: {integrity: sha512-eKMQDeywY2wlHc97k5eD8VC+9ASMjN8ItEZQNGwJ6E0XWKiW/Z0V5/H8pvoXUf+y+Mj0VIgeRRbujBmFn4FTyA==} 3165 | dependencies: 3166 | '@types/estree-jsx': 1.0.5 3167 | '@types/hast': 3.0.4 3168 | '@types/mdast': 4.0.3 3169 | '@types/unist': 3.0.2 3170 | ccount: 2.0.1 3171 | devlop: 1.1.0 3172 | mdast-util-from-markdown: 2.0.0 3173 | mdast-util-to-markdown: 2.1.0 3174 | parse-entities: 4.0.1 3175 | stringify-entities: 4.0.4 3176 | unist-util-remove-position: 5.0.0 3177 | unist-util-stringify-position: 4.0.0 3178 | vfile-message: 4.0.2 3179 | transitivePeerDependencies: 3180 | - supports-color 3181 | dev: false 3182 | 3183 | /mdast-util-mdxjs-esm@2.0.1: 3184 | resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==} 3185 | dependencies: 3186 | '@types/estree-jsx': 1.0.5 3187 | '@types/hast': 3.0.4 3188 | '@types/mdast': 4.0.3 3189 | devlop: 1.1.0 3190 | mdast-util-from-markdown: 2.0.0 3191 | mdast-util-to-markdown: 2.1.0 3192 | transitivePeerDependencies: 3193 | - supports-color 3194 | dev: false 3195 | 3196 | /mdast-util-phrasing@4.1.0: 3197 | resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} 3198 | dependencies: 3199 | '@types/mdast': 4.0.3 3200 | unist-util-is: 6.0.0 3201 | dev: false 3202 | 3203 | /mdast-util-to-hast@13.1.0: 3204 | resolution: {integrity: sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA==} 3205 | dependencies: 3206 | '@types/hast': 3.0.4 3207 | '@types/mdast': 4.0.3 3208 | '@ungap/structured-clone': 1.2.0 3209 | devlop: 1.1.0 3210 | micromark-util-sanitize-uri: 2.0.0 3211 | trim-lines: 3.0.1 3212 | unist-util-position: 5.0.0 3213 | unist-util-visit: 5.0.0 3214 | vfile: 6.0.1 3215 | dev: false 3216 | 3217 | /mdast-util-to-markdown@2.1.0: 3218 | resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==} 3219 | dependencies: 3220 | '@types/mdast': 4.0.3 3221 | '@types/unist': 3.0.2 3222 | longest-streak: 3.1.0 3223 | mdast-util-phrasing: 4.1.0 3224 | mdast-util-to-string: 4.0.0 3225 | micromark-util-decode-string: 2.0.0 3226 | unist-util-visit: 5.0.0 3227 | zwitch: 2.0.4 3228 | dev: false 3229 | 3230 | /mdast-util-to-string@4.0.0: 3231 | resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} 3232 | dependencies: 3233 | '@types/mdast': 4.0.3 3234 | dev: false 3235 | 3236 | /merge-stream@2.0.0: 3237 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} 3238 | dev: false 3239 | 3240 | /merge2@1.4.1: 3241 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 3242 | engines: {node: '>= 8'} 3243 | dev: false 3244 | 3245 | /micromark-core-commonmark@2.0.0: 3246 | resolution: {integrity: sha512-jThOz/pVmAYUtkroV3D5c1osFXAMv9e0ypGDOIZuCeAe91/sD6BoE2Sjzt30yuXtwOYUmySOhMas/PVyh02itA==} 3247 | dependencies: 3248 | decode-named-character-reference: 1.0.2 3249 | devlop: 1.1.0 3250 | micromark-factory-destination: 2.0.0 3251 | micromark-factory-label: 2.0.0 3252 | micromark-factory-space: 2.0.0 3253 | micromark-factory-title: 2.0.0 3254 | micromark-factory-whitespace: 2.0.0 3255 | micromark-util-character: 2.1.0 3256 | micromark-util-chunked: 2.0.0 3257 | micromark-util-classify-character: 2.0.0 3258 | micromark-util-html-tag-name: 2.0.0 3259 | micromark-util-normalize-identifier: 2.0.0 3260 | micromark-util-resolve-all: 2.0.0 3261 | micromark-util-subtokenize: 2.0.0 3262 | micromark-util-symbol: 2.0.0 3263 | micromark-util-types: 2.0.0 3264 | dev: false 3265 | 3266 | /micromark-extension-gfm-autolink-literal@2.0.0: 3267 | resolution: {integrity: sha512-rTHfnpt/Q7dEAK1Y5ii0W8bhfJlVJFnJMHIPisfPK3gpVNuOP0VnRl96+YJ3RYWV/P4gFeQoGKNlT3RhuvpqAg==} 3268 | dependencies: 3269 | micromark-util-character: 2.1.0 3270 | micromark-util-sanitize-uri: 2.0.0 3271 | micromark-util-symbol: 2.0.0 3272 | micromark-util-types: 2.0.0 3273 | dev: false 3274 | 3275 | /micromark-extension-gfm-footnote@2.0.0: 3276 | resolution: {integrity: sha512-6Rzu0CYRKDv3BfLAUnZsSlzx3ak6HAoI85KTiijuKIz5UxZxbUI+pD6oHgw+6UtQuiRwnGRhzMmPRv4smcz0fg==} 3277 | dependencies: 3278 | devlop: 1.1.0 3279 | micromark-core-commonmark: 2.0.0 3280 | micromark-factory-space: 2.0.0 3281 | micromark-util-character: 2.1.0 3282 | micromark-util-normalize-identifier: 2.0.0 3283 | micromark-util-sanitize-uri: 2.0.0 3284 | micromark-util-symbol: 2.0.0 3285 | micromark-util-types: 2.0.0 3286 | dev: false 3287 | 3288 | /micromark-extension-gfm-strikethrough@2.0.0: 3289 | resolution: {integrity: sha512-c3BR1ClMp5fxxmwP6AoOY2fXO9U8uFMKs4ADD66ahLTNcwzSCyRVU4k7LPV5Nxo/VJiR4TdzxRQY2v3qIUceCw==} 3290 | dependencies: 3291 | devlop: 1.1.0 3292 | micromark-util-chunked: 2.0.0 3293 | micromark-util-classify-character: 2.0.0 3294 | micromark-util-resolve-all: 2.0.0 3295 | micromark-util-symbol: 2.0.0 3296 | micromark-util-types: 2.0.0 3297 | dev: false 3298 | 3299 | /micromark-extension-gfm-table@2.0.0: 3300 | resolution: {integrity: sha512-PoHlhypg1ItIucOaHmKE8fbin3vTLpDOUg8KAr8gRCF1MOZI9Nquq2i/44wFvviM4WuxJzc3demT8Y3dkfvYrw==} 3301 | dependencies: 3302 | devlop: 1.1.0 3303 | micromark-factory-space: 2.0.0 3304 | micromark-util-character: 2.1.0 3305 | micromark-util-symbol: 2.0.0 3306 | micromark-util-types: 2.0.0 3307 | dev: false 3308 | 3309 | /micromark-extension-gfm-tagfilter@2.0.0: 3310 | resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} 3311 | dependencies: 3312 | micromark-util-types: 2.0.0 3313 | dev: false 3314 | 3315 | /micromark-extension-gfm-task-list-item@2.0.1: 3316 | resolution: {integrity: sha512-cY5PzGcnULaN5O7T+cOzfMoHjBW7j+T9D2sucA5d/KbsBTPcYdebm9zUd9zzdgJGCwahV+/W78Z3nbulBYVbTw==} 3317 | dependencies: 3318 | devlop: 1.1.0 3319 | micromark-factory-space: 2.0.0 3320 | micromark-util-character: 2.1.0 3321 | micromark-util-symbol: 2.0.0 3322 | micromark-util-types: 2.0.0 3323 | dev: false 3324 | 3325 | /micromark-extension-gfm@3.0.0: 3326 | resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} 3327 | dependencies: 3328 | micromark-extension-gfm-autolink-literal: 2.0.0 3329 | micromark-extension-gfm-footnote: 2.0.0 3330 | micromark-extension-gfm-strikethrough: 2.0.0 3331 | micromark-extension-gfm-table: 2.0.0 3332 | micromark-extension-gfm-tagfilter: 2.0.0 3333 | micromark-extension-gfm-task-list-item: 2.0.1 3334 | micromark-util-combine-extensions: 2.0.0 3335 | micromark-util-types: 2.0.0 3336 | dev: false 3337 | 3338 | /micromark-factory-destination@2.0.0: 3339 | resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==} 3340 | dependencies: 3341 | micromark-util-character: 2.1.0 3342 | micromark-util-symbol: 2.0.0 3343 | micromark-util-types: 2.0.0 3344 | dev: false 3345 | 3346 | /micromark-factory-label@2.0.0: 3347 | resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==} 3348 | dependencies: 3349 | devlop: 1.1.0 3350 | micromark-util-character: 2.1.0 3351 | micromark-util-symbol: 2.0.0 3352 | micromark-util-types: 2.0.0 3353 | dev: false 3354 | 3355 | /micromark-factory-space@2.0.0: 3356 | resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==} 3357 | dependencies: 3358 | micromark-util-character: 2.1.0 3359 | micromark-util-types: 2.0.0 3360 | dev: false 3361 | 3362 | /micromark-factory-title@2.0.0: 3363 | resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==} 3364 | dependencies: 3365 | micromark-factory-space: 2.0.0 3366 | micromark-util-character: 2.1.0 3367 | micromark-util-symbol: 2.0.0 3368 | micromark-util-types: 2.0.0 3369 | dev: false 3370 | 3371 | /micromark-factory-whitespace@2.0.0: 3372 | resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==} 3373 | dependencies: 3374 | micromark-factory-space: 2.0.0 3375 | micromark-util-character: 2.1.0 3376 | micromark-util-symbol: 2.0.0 3377 | micromark-util-types: 2.0.0 3378 | dev: false 3379 | 3380 | /micromark-util-character@2.1.0: 3381 | resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==} 3382 | dependencies: 3383 | micromark-util-symbol: 2.0.0 3384 | micromark-util-types: 2.0.0 3385 | dev: false 3386 | 3387 | /micromark-util-chunked@2.0.0: 3388 | resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==} 3389 | dependencies: 3390 | micromark-util-symbol: 2.0.0 3391 | dev: false 3392 | 3393 | /micromark-util-classify-character@2.0.0: 3394 | resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==} 3395 | dependencies: 3396 | micromark-util-character: 2.1.0 3397 | micromark-util-symbol: 2.0.0 3398 | micromark-util-types: 2.0.0 3399 | dev: false 3400 | 3401 | /micromark-util-combine-extensions@2.0.0: 3402 | resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==} 3403 | dependencies: 3404 | micromark-util-chunked: 2.0.0 3405 | micromark-util-types: 2.0.0 3406 | dev: false 3407 | 3408 | /micromark-util-decode-numeric-character-reference@2.0.1: 3409 | resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==} 3410 | dependencies: 3411 | micromark-util-symbol: 2.0.0 3412 | dev: false 3413 | 3414 | /micromark-util-decode-string@2.0.0: 3415 | resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==} 3416 | dependencies: 3417 | decode-named-character-reference: 1.0.2 3418 | micromark-util-character: 2.1.0 3419 | micromark-util-decode-numeric-character-reference: 2.0.1 3420 | micromark-util-symbol: 2.0.0 3421 | dev: false 3422 | 3423 | /micromark-util-encode@2.0.0: 3424 | resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==} 3425 | dev: false 3426 | 3427 | /micromark-util-html-tag-name@2.0.0: 3428 | resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==} 3429 | dev: false 3430 | 3431 | /micromark-util-normalize-identifier@2.0.0: 3432 | resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==} 3433 | dependencies: 3434 | micromark-util-symbol: 2.0.0 3435 | dev: false 3436 | 3437 | /micromark-util-resolve-all@2.0.0: 3438 | resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==} 3439 | dependencies: 3440 | micromark-util-types: 2.0.0 3441 | dev: false 3442 | 3443 | /micromark-util-sanitize-uri@2.0.0: 3444 | resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==} 3445 | dependencies: 3446 | micromark-util-character: 2.1.0 3447 | micromark-util-encode: 2.0.0 3448 | micromark-util-symbol: 2.0.0 3449 | dev: false 3450 | 3451 | /micromark-util-subtokenize@2.0.0: 3452 | resolution: {integrity: sha512-vc93L1t+gpR3p8jxeVdaYlbV2jTYteDje19rNSS/H5dlhxUYll5Fy6vJ2cDwP8RnsXi818yGty1ayP55y3W6fg==} 3453 | dependencies: 3454 | devlop: 1.1.0 3455 | micromark-util-chunked: 2.0.0 3456 | micromark-util-symbol: 2.0.0 3457 | micromark-util-types: 2.0.0 3458 | dev: false 3459 | 3460 | /micromark-util-symbol@2.0.0: 3461 | resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==} 3462 | dev: false 3463 | 3464 | /micromark-util-types@2.0.0: 3465 | resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==} 3466 | dev: false 3467 | 3468 | /micromark@4.0.0: 3469 | resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==} 3470 | dependencies: 3471 | '@types/debug': 4.1.12 3472 | debug: 4.3.4 3473 | decode-named-character-reference: 1.0.2 3474 | devlop: 1.1.0 3475 | micromark-core-commonmark: 2.0.0 3476 | micromark-factory-space: 2.0.0 3477 | micromark-util-character: 2.1.0 3478 | micromark-util-chunked: 2.0.0 3479 | micromark-util-combine-extensions: 2.0.0 3480 | micromark-util-decode-numeric-character-reference: 2.0.1 3481 | micromark-util-encode: 2.0.0 3482 | micromark-util-normalize-identifier: 2.0.0 3483 | micromark-util-resolve-all: 2.0.0 3484 | micromark-util-sanitize-uri: 2.0.0 3485 | micromark-util-subtokenize: 2.0.0 3486 | micromark-util-symbol: 2.0.0 3487 | micromark-util-types: 2.0.0 3488 | transitivePeerDependencies: 3489 | - supports-color 3490 | dev: false 3491 | 3492 | /micromatch@4.0.5: 3493 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 3494 | engines: {node: '>=8.6'} 3495 | dependencies: 3496 | braces: 3.0.2 3497 | picomatch: 2.3.1 3498 | dev: false 3499 | 3500 | /mime-db@1.52.0: 3501 | resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} 3502 | engines: {node: '>= 0.6'} 3503 | dev: false 3504 | 3505 | /mime-types@2.1.35: 3506 | resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} 3507 | engines: {node: '>= 0.6'} 3508 | dependencies: 3509 | mime-db: 1.52.0 3510 | dev: false 3511 | 3512 | /mime@3.0.0: 3513 | resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} 3514 | engines: {node: '>=10.0.0'} 3515 | hasBin: true 3516 | dev: false 3517 | 3518 | /mimic-fn@2.1.0: 3519 | resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} 3520 | engines: {node: '>=6'} 3521 | dev: false 3522 | 3523 | /mimic-fn@4.0.0: 3524 | resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} 3525 | engines: {node: '>=12'} 3526 | dev: false 3527 | 3528 | /mimic-response@3.1.0: 3529 | resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} 3530 | engines: {node: '>=10'} 3531 | requiresBuild: true 3532 | dev: false 3533 | optional: true 3534 | 3535 | /minimatch@3.1.2: 3536 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 3537 | dependencies: 3538 | brace-expansion: 1.1.11 3539 | dev: false 3540 | 3541 | /minimatch@9.0.4: 3542 | resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} 3543 | engines: {node: '>=16 || 14 >=14.17'} 3544 | dependencies: 3545 | brace-expansion: 2.0.1 3546 | dev: false 3547 | 3548 | /minimist@1.2.8: 3549 | resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} 3550 | requiresBuild: true 3551 | dev: false 3552 | optional: true 3553 | 3554 | /minipass@3.3.6: 3555 | resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} 3556 | engines: {node: '>=8'} 3557 | dependencies: 3558 | yallist: 4.0.0 3559 | dev: false 3560 | 3561 | /minipass@5.0.0: 3562 | resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} 3563 | engines: {node: '>=8'} 3564 | dev: false 3565 | 3566 | /minipass@7.0.4: 3567 | resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} 3568 | engines: {node: '>=16 || 14 >=14.17'} 3569 | dev: false 3570 | 3571 | /minizlib@2.1.2: 3572 | resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} 3573 | engines: {node: '>= 8'} 3574 | dependencies: 3575 | minipass: 3.3.6 3576 | yallist: 4.0.0 3577 | dev: false 3578 | 3579 | /mkdirp-classic@0.5.3: 3580 | resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} 3581 | requiresBuild: true 3582 | dev: false 3583 | optional: true 3584 | 3585 | /mkdirp@1.0.4: 3586 | resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} 3587 | engines: {node: '>=10'} 3588 | hasBin: true 3589 | dev: false 3590 | 3591 | /ms@2.1.2: 3592 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 3593 | dev: false 3594 | 3595 | /muggle-string@0.4.1: 3596 | resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} 3597 | dev: false 3598 | 3599 | /mz@2.7.0: 3600 | resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} 3601 | dependencies: 3602 | any-promise: 1.3.0 3603 | object-assign: 4.1.1 3604 | thenify-all: 1.6.0 3605 | dev: false 3606 | 3607 | /nanoid@3.3.7: 3608 | resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} 3609 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 3610 | hasBin: true 3611 | dev: false 3612 | 3613 | /napi-build-utils@1.0.2: 3614 | resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} 3615 | requiresBuild: true 3616 | dev: false 3617 | optional: true 3618 | 3619 | /nlcst-to-string@3.1.1: 3620 | resolution: {integrity: sha512-63mVyqaqt0cmn2VcI2aH6kxe1rLAmSROqHMA0i4qqg1tidkfExgpb0FGMikMCn86mw5dFtBtEANfmSSK7TjNHw==} 3621 | dependencies: 3622 | '@types/nlcst': 1.0.4 3623 | dev: false 3624 | 3625 | /node-abi@3.57.0: 3626 | resolution: {integrity: sha512-Dp+A9JWxRaKuHP35H77I4kCKesDy5HUDEmScia2FyncMTOXASMyg251F5PhFoDA5uqBrDDffiLpbqnrZmNXW+g==} 3627 | engines: {node: '>=10'} 3628 | requiresBuild: true 3629 | dependencies: 3630 | semver: 7.6.0 3631 | dev: false 3632 | optional: true 3633 | 3634 | /node-addon-api@6.1.0: 3635 | resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==} 3636 | requiresBuild: true 3637 | dev: false 3638 | optional: true 3639 | 3640 | /node-domexception@1.0.0: 3641 | resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} 3642 | engines: {node: '>=10.5.0'} 3643 | dev: false 3644 | 3645 | /node-fetch@2.7.0(encoding@0.1.13): 3646 | resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} 3647 | engines: {node: 4.x || >=6.0.0} 3648 | peerDependencies: 3649 | encoding: ^0.1.0 3650 | peerDependenciesMeta: 3651 | encoding: 3652 | optional: true 3653 | dependencies: 3654 | encoding: 0.1.13 3655 | whatwg-url: 5.0.0 3656 | dev: false 3657 | 3658 | /node-gyp-build@4.8.0: 3659 | resolution: {integrity: sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==} 3660 | hasBin: true 3661 | dev: false 3662 | 3663 | /node-releases@2.0.14: 3664 | resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} 3665 | dev: false 3666 | 3667 | /nopt@5.0.0: 3668 | resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==} 3669 | engines: {node: '>=6'} 3670 | hasBin: true 3671 | dependencies: 3672 | abbrev: 1.1.1 3673 | dev: false 3674 | 3675 | /normalize-path@3.0.0: 3676 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 3677 | engines: {node: '>=0.10.0'} 3678 | dev: false 3679 | 3680 | /normalize-range@0.1.2: 3681 | resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} 3682 | engines: {node: '>=0.10.0'} 3683 | dev: false 3684 | 3685 | /npm-run-path@5.3.0: 3686 | resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} 3687 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 3688 | dependencies: 3689 | path-key: 4.0.0 3690 | dev: false 3691 | 3692 | /npmlog@5.0.1: 3693 | resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==} 3694 | dependencies: 3695 | are-we-there-yet: 2.0.0 3696 | console-control-strings: 1.1.0 3697 | gauge: 3.0.2 3698 | set-blocking: 2.0.0 3699 | dev: false 3700 | 3701 | /object-assign@4.1.1: 3702 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 3703 | engines: {node: '>=0.10.0'} 3704 | dev: false 3705 | 3706 | /object-hash@3.0.0: 3707 | resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} 3708 | engines: {node: '>= 6'} 3709 | dev: false 3710 | 3711 | /once@1.4.0: 3712 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 3713 | requiresBuild: true 3714 | dependencies: 3715 | wrappy: 1.0.2 3716 | dev: false 3717 | 3718 | /onetime@5.1.2: 3719 | resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} 3720 | engines: {node: '>=6'} 3721 | dependencies: 3722 | mimic-fn: 2.1.0 3723 | dev: false 3724 | 3725 | /onetime@6.0.0: 3726 | resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} 3727 | engines: {node: '>=12'} 3728 | dependencies: 3729 | mimic-fn: 4.0.0 3730 | dev: false 3731 | 3732 | /openai-chat-tokens@0.2.8: 3733 | resolution: {integrity: sha512-nW7QdFDIZlAYe6jsCT/VPJ/Lam3/w2DX9oxf/5wHpebBT49KI3TN43PPhYlq1klq2ajzXWKNOLY6U4FNZM7AoA==} 3734 | dependencies: 3735 | js-tiktoken: 1.0.11 3736 | dev: false 3737 | 3738 | /openai@4.32.2(encoding@0.1.13): 3739 | resolution: {integrity: sha512-JXU5ttiL4liZJ2GRYvyqd/m9zA64bI8e6B5BtyKlbkcv5DAd5wiDgd0cQ1CIIdsEH90k5p3TdK6MyjnUhvOe7w==} 3740 | hasBin: true 3741 | dependencies: 3742 | '@types/node': 18.19.31 3743 | '@types/node-fetch': 2.6.11 3744 | abort-controller: 3.0.0 3745 | agentkeepalive: 4.5.0 3746 | form-data-encoder: 1.7.2 3747 | formdata-node: 4.4.1 3748 | node-fetch: 2.7.0(encoding@0.1.13) 3749 | web-streams-polyfill: 3.3.3 3750 | transitivePeerDependencies: 3751 | - encoding 3752 | dev: false 3753 | 3754 | /openai@4.33.1: 3755 | resolution: {integrity: sha512-0DH572aSxGTT1JPOXgJQ9mjiuSPg/7scPot8hLc5I1mfQxPxLXTZWJpWerKaIWOuPkR2nrB0SamGDEehH8RuWA==} 3756 | hasBin: true 3757 | dependencies: 3758 | '@types/node': 18.19.31 3759 | '@types/node-fetch': 2.6.11 3760 | abort-controller: 3.0.0 3761 | agentkeepalive: 4.5.0 3762 | form-data-encoder: 1.7.2 3763 | formdata-node: 4.4.1 3764 | node-fetch: 2.7.0(encoding@0.1.13) 3765 | web-streams-polyfill: 3.3.3 3766 | transitivePeerDependencies: 3767 | - encoding 3768 | dev: false 3769 | 3770 | /openpipe@0.10.0: 3771 | resolution: {integrity: sha512-bzviMoRn7tD+f3v6fjhlnL3W0A4LQI/rg44qbHPAHVWSHRFSp0jqUU/scs7DBti+nrWGYbELzYWyJpQMHLhmMg==} 3772 | dependencies: 3773 | '@anthropic-ai/sdk': 0.19.2(encoding@0.1.13) 3774 | encoding: 0.1.13 3775 | form-data: 4.0.0 3776 | node-fetch: 2.7.0(encoding@0.1.13) 3777 | openai: 4.32.2(encoding@0.1.13) 3778 | dev: false 3779 | 3780 | /ora@7.0.1: 3781 | resolution: {integrity: sha512-0TUxTiFJWv+JnjWm4o9yvuskpEJLXTcng8MJuKd+SzAzp2o+OP3HWqNhB4OdJRt1Vsd9/mR0oyaEYlOnL7XIRw==} 3782 | engines: {node: '>=16'} 3783 | dependencies: 3784 | chalk: 5.3.0 3785 | cli-cursor: 4.0.0 3786 | cli-spinners: 2.9.2 3787 | is-interactive: 2.0.0 3788 | is-unicode-supported: 1.3.0 3789 | log-symbols: 5.1.0 3790 | stdin-discarder: 0.1.0 3791 | string-width: 6.1.0 3792 | strip-ansi: 7.1.0 3793 | dev: false 3794 | 3795 | /p-limit@2.3.0: 3796 | resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} 3797 | engines: {node: '>=6'} 3798 | dependencies: 3799 | p-try: 2.2.0 3800 | dev: false 3801 | 3802 | /p-limit@3.1.0: 3803 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 3804 | engines: {node: '>=10'} 3805 | dependencies: 3806 | yocto-queue: 0.1.0 3807 | dev: false 3808 | 3809 | /p-limit@5.0.0: 3810 | resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==} 3811 | engines: {node: '>=18'} 3812 | dependencies: 3813 | yocto-queue: 1.0.0 3814 | dev: false 3815 | 3816 | /p-locate@4.1.0: 3817 | resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} 3818 | engines: {node: '>=8'} 3819 | dependencies: 3820 | p-limit: 2.3.0 3821 | dev: false 3822 | 3823 | /p-locate@5.0.0: 3824 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 3825 | engines: {node: '>=10'} 3826 | dependencies: 3827 | p-limit: 3.1.0 3828 | dev: false 3829 | 3830 | /p-queue@8.0.1: 3831 | resolution: {integrity: sha512-NXzu9aQJTAzbBqOt2hwsR63ea7yvxJc0PwN/zobNAudYfb1B7R08SzB4TsLeSbUCuG467NhnoT0oO6w1qRO+BA==} 3832 | engines: {node: '>=18'} 3833 | dependencies: 3834 | eventemitter3: 5.0.1 3835 | p-timeout: 6.1.2 3836 | dev: false 3837 | 3838 | /p-timeout@6.1.2: 3839 | resolution: {integrity: sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ==} 3840 | engines: {node: '>=14.16'} 3841 | dev: false 3842 | 3843 | /p-try@2.2.0: 3844 | resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} 3845 | engines: {node: '>=6'} 3846 | dev: false 3847 | 3848 | /parse-entities@4.0.1: 3849 | resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} 3850 | dependencies: 3851 | '@types/unist': 2.0.10 3852 | character-entities: 2.0.2 3853 | character-entities-legacy: 3.0.0 3854 | character-reference-invalid: 2.0.1 3855 | decode-named-character-reference: 1.0.2 3856 | is-alphanumerical: 2.0.1 3857 | is-decimal: 2.0.1 3858 | is-hexadecimal: 2.0.1 3859 | dev: false 3860 | 3861 | /parse-latin@5.0.1: 3862 | resolution: {integrity: sha512-b/K8ExXaWC9t34kKeDV8kGXBkXZ1HCSAZRYE7HR14eA1GlXX5L8iWhs8USJNhQU9q5ci413jCKF0gOyovvyRBg==} 3863 | dependencies: 3864 | nlcst-to-string: 3.1.1 3865 | unist-util-modify-children: 3.1.1 3866 | unist-util-visit-children: 2.0.2 3867 | dev: false 3868 | 3869 | /parse5@7.1.2: 3870 | resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} 3871 | dependencies: 3872 | entities: 4.5.0 3873 | dev: false 3874 | 3875 | /path-browserify@1.0.1: 3876 | resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} 3877 | dev: false 3878 | 3879 | /path-exists@4.0.0: 3880 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 3881 | engines: {node: '>=8'} 3882 | dev: false 3883 | 3884 | /path-is-absolute@1.0.1: 3885 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 3886 | engines: {node: '>=0.10.0'} 3887 | dev: false 3888 | 3889 | /path-key@3.1.1: 3890 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 3891 | engines: {node: '>=8'} 3892 | dev: false 3893 | 3894 | /path-key@4.0.0: 3895 | resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} 3896 | engines: {node: '>=12'} 3897 | dev: false 3898 | 3899 | /path-parse@1.0.7: 3900 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 3901 | dev: false 3902 | 3903 | /path-scurry@1.10.2: 3904 | resolution: {integrity: sha512-7xTavNy5RQXnsjANvVvMkEjvloOinkAjv/Z6Ildz9v2RinZ4SBKTWFOVRbaF8p0vpHnyjV/UwNDdKuUv6M5qcA==} 3905 | engines: {node: '>=16 || 14 >=14.17'} 3906 | dependencies: 3907 | lru-cache: 10.2.0 3908 | minipass: 7.0.4 3909 | dev: false 3910 | 3911 | /path-to-regexp@6.2.2: 3912 | resolution: {integrity: sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==} 3913 | dev: false 3914 | 3915 | /picocolors@1.0.0: 3916 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 3917 | dev: false 3918 | 3919 | /picomatch@2.3.1: 3920 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 3921 | engines: {node: '>=8.6'} 3922 | dev: false 3923 | 3924 | /pify@2.3.0: 3925 | resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} 3926 | engines: {node: '>=0.10.0'} 3927 | dev: false 3928 | 3929 | /pify@4.0.1: 3930 | resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} 3931 | engines: {node: '>=6'} 3932 | dev: false 3933 | 3934 | /pirates@4.0.6: 3935 | resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} 3936 | engines: {node: '>= 6'} 3937 | dev: false 3938 | 3939 | /pkg-dir@4.2.0: 3940 | resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} 3941 | engines: {node: '>=8'} 3942 | dependencies: 3943 | find-up: 4.1.0 3944 | dev: false 3945 | 3946 | /postcss-import@15.1.0(postcss@8.4.38): 3947 | resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} 3948 | engines: {node: '>=14.0.0'} 3949 | peerDependencies: 3950 | postcss: ^8.0.0 3951 | dependencies: 3952 | postcss: 8.4.38 3953 | postcss-value-parser: 4.2.0 3954 | read-cache: 1.0.0 3955 | resolve: 1.22.8 3956 | dev: false 3957 | 3958 | /postcss-js@4.0.1(postcss@8.4.38): 3959 | resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} 3960 | engines: {node: ^12 || ^14 || >= 16} 3961 | peerDependencies: 3962 | postcss: ^8.4.21 3963 | dependencies: 3964 | camelcase-css: 2.0.1 3965 | postcss: 8.4.38 3966 | dev: false 3967 | 3968 | /postcss-load-config@4.0.2(postcss@8.4.38): 3969 | resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} 3970 | engines: {node: '>= 14'} 3971 | peerDependencies: 3972 | postcss: '>=8.0.9' 3973 | ts-node: '>=9.0.0' 3974 | peerDependenciesMeta: 3975 | postcss: 3976 | optional: true 3977 | ts-node: 3978 | optional: true 3979 | dependencies: 3980 | lilconfig: 3.1.1 3981 | postcss: 8.4.38 3982 | yaml: 2.4.1 3983 | dev: false 3984 | 3985 | /postcss-nested@6.0.1(postcss@8.4.38): 3986 | resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} 3987 | engines: {node: '>=12.0'} 3988 | peerDependencies: 3989 | postcss: ^8.2.14 3990 | dependencies: 3991 | postcss: 8.4.38 3992 | postcss-selector-parser: 6.0.16 3993 | dev: false 3994 | 3995 | /postcss-selector-parser@6.0.16: 3996 | resolution: {integrity: sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==} 3997 | engines: {node: '>=4'} 3998 | dependencies: 3999 | cssesc: 3.0.0 4000 | util-deprecate: 1.0.2 4001 | dev: false 4002 | 4003 | /postcss-value-parser@4.2.0: 4004 | resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} 4005 | dev: false 4006 | 4007 | /postcss@8.4.38: 4008 | resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} 4009 | engines: {node: ^10 || ^12 || >=14} 4010 | dependencies: 4011 | nanoid: 3.3.7 4012 | picocolors: 1.0.0 4013 | source-map-js: 1.2.0 4014 | dev: false 4015 | 4016 | /prebuild-install@7.1.2: 4017 | resolution: {integrity: sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==} 4018 | engines: {node: '>=10'} 4019 | hasBin: true 4020 | requiresBuild: true 4021 | dependencies: 4022 | detect-libc: 2.0.3 4023 | expand-template: 2.0.3 4024 | github-from-package: 0.0.0 4025 | minimist: 1.2.8 4026 | mkdirp-classic: 0.5.3 4027 | napi-build-utils: 1.0.2 4028 | node-abi: 3.57.0 4029 | pump: 3.0.0 4030 | rc: 1.2.8 4031 | simple-get: 4.0.1 4032 | tar-fs: 2.1.1 4033 | tunnel-agent: 0.6.0 4034 | dev: false 4035 | optional: true 4036 | 4037 | /preferred-pm@3.1.3: 4038 | resolution: {integrity: sha512-MkXsENfftWSRpzCzImcp4FRsCc3y1opwB73CfCNWyzMqArju2CrlMHlqB7VexKiPEOjGMbttv1r9fSCn5S610w==} 4039 | engines: {node: '>=10'} 4040 | dependencies: 4041 | find-up: 5.0.0 4042 | find-yarn-workspace-root2: 1.2.16 4043 | path-exists: 4.0.0 4044 | which-pm: 2.0.0 4045 | dev: false 4046 | 4047 | /prismjs@1.29.0: 4048 | resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} 4049 | engines: {node: '>=6'} 4050 | dev: false 4051 | 4052 | /prompts@2.4.2: 4053 | resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} 4054 | engines: {node: '>= 6'} 4055 | dependencies: 4056 | kleur: 3.0.3 4057 | sisteransi: 1.0.5 4058 | dev: false 4059 | 4060 | /property-information@6.5.0: 4061 | resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} 4062 | dev: false 4063 | 4064 | /psl@1.9.0: 4065 | resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} 4066 | dev: false 4067 | 4068 | /pump@3.0.0: 4069 | resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} 4070 | requiresBuild: true 4071 | dependencies: 4072 | end-of-stream: 1.4.4 4073 | once: 1.4.0 4074 | dev: false 4075 | optional: true 4076 | 4077 | /punycode@2.3.1: 4078 | resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} 4079 | engines: {node: '>=6'} 4080 | dev: false 4081 | 4082 | /querystringify@2.2.0: 4083 | resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} 4084 | dev: false 4085 | 4086 | /queue-microtask@1.2.3: 4087 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 4088 | dev: false 4089 | 4090 | /queue-tick@1.0.1: 4091 | resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==} 4092 | requiresBuild: true 4093 | dev: false 4094 | optional: true 4095 | 4096 | /rc@1.2.8: 4097 | resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} 4098 | hasBin: true 4099 | requiresBuild: true 4100 | dependencies: 4101 | deep-extend: 0.6.0 4102 | ini: 1.3.8 4103 | minimist: 1.2.8 4104 | strip-json-comments: 2.0.1 4105 | dev: false 4106 | optional: true 4107 | 4108 | /react-dom@18.2.0(react@18.2.0): 4109 | resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} 4110 | peerDependencies: 4111 | react: ^18.2.0 4112 | dependencies: 4113 | loose-envify: 1.4.0 4114 | react: 18.2.0 4115 | scheduler: 0.23.0 4116 | dev: false 4117 | 4118 | /react-markdown@9.0.1(@types/react@18.2.77)(react@18.2.0): 4119 | resolution: {integrity: sha512-186Gw/vF1uRkydbsOIkcGXw7aHq0sZOCRFFjGrr7b9+nVZg4UfA4enXCaxm4fUzecU38sWfrNDitGhshuU7rdg==} 4120 | peerDependencies: 4121 | '@types/react': '>=18' 4122 | react: '>=18' 4123 | dependencies: 4124 | '@types/hast': 3.0.4 4125 | '@types/react': 18.2.77 4126 | devlop: 1.1.0 4127 | hast-util-to-jsx-runtime: 2.3.0 4128 | html-url-attributes: 3.0.0 4129 | mdast-util-to-hast: 13.1.0 4130 | react: 18.2.0 4131 | remark-parse: 11.0.0 4132 | remark-rehype: 11.1.0 4133 | unified: 11.0.4 4134 | unist-util-visit: 5.0.0 4135 | vfile: 6.0.1 4136 | transitivePeerDependencies: 4137 | - supports-color 4138 | dev: false 4139 | 4140 | /react-refresh@0.14.0: 4141 | resolution: {integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==} 4142 | engines: {node: '>=0.10.0'} 4143 | dev: false 4144 | 4145 | /react@18.2.0: 4146 | resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} 4147 | engines: {node: '>=0.10.0'} 4148 | dependencies: 4149 | loose-envify: 1.4.0 4150 | dev: false 4151 | 4152 | /read-cache@1.0.0: 4153 | resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} 4154 | dependencies: 4155 | pify: 2.3.0 4156 | dev: false 4157 | 4158 | /readable-stream@3.6.2: 4159 | resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} 4160 | engines: {node: '>= 6'} 4161 | dependencies: 4162 | inherits: 2.0.4 4163 | string_decoder: 1.3.0 4164 | util-deprecate: 1.0.2 4165 | dev: false 4166 | 4167 | /readdirp@3.6.0: 4168 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} 4169 | engines: {node: '>=8.10.0'} 4170 | dependencies: 4171 | picomatch: 2.3.1 4172 | dev: false 4173 | 4174 | /rehype-parse@9.0.0: 4175 | resolution: {integrity: sha512-WG7nfvmWWkCR++KEkZevZb/uw41E8TsH4DsY9UxsTbIXCVGbAs4S+r8FrQ+OtH5EEQAs+5UxKC42VinkmpA1Yw==} 4176 | dependencies: 4177 | '@types/hast': 3.0.4 4178 | hast-util-from-html: 2.0.1 4179 | unified: 11.0.4 4180 | dev: false 4181 | 4182 | /rehype-raw@7.0.0: 4183 | resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} 4184 | dependencies: 4185 | '@types/hast': 3.0.4 4186 | hast-util-raw: 9.0.2 4187 | vfile: 6.0.1 4188 | dev: false 4189 | 4190 | /rehype-stringify@10.0.0: 4191 | resolution: {integrity: sha512-1TX1i048LooI9QoecrXy7nGFFbFSufxVRAfc6Y9YMRAi56l+oB0zP51mLSV312uRuvVLPV1opSlJmslozR1XHQ==} 4192 | dependencies: 4193 | '@types/hast': 3.0.4 4194 | hast-util-to-html: 9.0.1 4195 | unified: 11.0.4 4196 | dev: false 4197 | 4198 | /rehype@13.0.1: 4199 | resolution: {integrity: sha512-AcSLS2mItY+0fYu9xKxOu1LhUZeBZZBx8//5HKzF+0XP+eP8+6a5MXn2+DW2kfXR6Dtp1FEXMVrjyKAcvcU8vg==} 4200 | dependencies: 4201 | '@types/hast': 3.0.4 4202 | rehype-parse: 9.0.0 4203 | rehype-stringify: 10.0.0 4204 | unified: 11.0.4 4205 | dev: false 4206 | 4207 | /remark-gfm@4.0.0: 4208 | resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==} 4209 | dependencies: 4210 | '@types/mdast': 4.0.3 4211 | mdast-util-gfm: 3.0.0 4212 | micromark-extension-gfm: 3.0.0 4213 | remark-parse: 11.0.0 4214 | remark-stringify: 11.0.0 4215 | unified: 11.0.4 4216 | transitivePeerDependencies: 4217 | - supports-color 4218 | dev: false 4219 | 4220 | /remark-parse@11.0.0: 4221 | resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} 4222 | dependencies: 4223 | '@types/mdast': 4.0.3 4224 | mdast-util-from-markdown: 2.0.0 4225 | micromark-util-types: 2.0.0 4226 | unified: 11.0.4 4227 | transitivePeerDependencies: 4228 | - supports-color 4229 | dev: false 4230 | 4231 | /remark-rehype@11.1.0: 4232 | resolution: {integrity: sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==} 4233 | dependencies: 4234 | '@types/hast': 3.0.4 4235 | '@types/mdast': 4.0.3 4236 | mdast-util-to-hast: 13.1.0 4237 | unified: 11.0.4 4238 | vfile: 6.0.1 4239 | dev: false 4240 | 4241 | /remark-smartypants@2.1.0: 4242 | resolution: {integrity: sha512-qoF6Vz3BjU2tP6OfZqHOvCU0ACmu/6jhGaINSQRI9mM7wCxNQTKB3JUAN4SVoN2ybElEDTxBIABRep7e569iJw==} 4243 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 4244 | dependencies: 4245 | retext: 8.1.0 4246 | retext-smartypants: 5.2.0 4247 | unist-util-visit: 5.0.0 4248 | dev: false 4249 | 4250 | /remark-stringify@11.0.0: 4251 | resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} 4252 | dependencies: 4253 | '@types/mdast': 4.0.3 4254 | mdast-util-to-markdown: 2.1.0 4255 | unified: 11.0.4 4256 | dev: false 4257 | 4258 | /request-light@0.7.0: 4259 | resolution: {integrity: sha512-lMbBMrDoxgsyO+yB3sDcrDuX85yYt7sS8BfQd11jtbW/z5ZWgLZRcEGLsLoYw7I0WSUGQBs8CC8ScIxkTX1+6Q==} 4260 | dev: false 4261 | 4262 | /require-directory@2.1.1: 4263 | resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} 4264 | engines: {node: '>=0.10.0'} 4265 | dev: false 4266 | 4267 | /requires-port@1.0.0: 4268 | resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} 4269 | dev: false 4270 | 4271 | /resolve-from@5.0.0: 4272 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} 4273 | engines: {node: '>=8'} 4274 | dev: false 4275 | 4276 | /resolve@1.22.8: 4277 | resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} 4278 | hasBin: true 4279 | dependencies: 4280 | is-core-module: 2.13.1 4281 | path-parse: 1.0.7 4282 | supports-preserve-symlinks-flag: 1.0.0 4283 | dev: false 4284 | 4285 | /restore-cursor@4.0.0: 4286 | resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} 4287 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 4288 | dependencies: 4289 | onetime: 5.1.2 4290 | signal-exit: 3.0.7 4291 | dev: false 4292 | 4293 | /retext-latin@3.1.0: 4294 | resolution: {integrity: sha512-5MrD1tuebzO8ppsja5eEu+ZbBeUNCjoEarn70tkXOS7Bdsdf6tNahsv2bY0Z8VooFF6cw7/6S+d3yI/TMlMVVQ==} 4295 | dependencies: 4296 | '@types/nlcst': 1.0.4 4297 | parse-latin: 5.0.1 4298 | unherit: 3.0.1 4299 | unified: 10.1.2 4300 | dev: false 4301 | 4302 | /retext-smartypants@5.2.0: 4303 | resolution: {integrity: sha512-Do8oM+SsjrbzT2UNIKgheP0hgUQTDDQYyZaIY3kfq0pdFzoPk+ZClYJ+OERNXveog4xf1pZL4PfRxNoVL7a/jw==} 4304 | dependencies: 4305 | '@types/nlcst': 1.0.4 4306 | nlcst-to-string: 3.1.1 4307 | unified: 10.1.2 4308 | unist-util-visit: 4.1.2 4309 | dev: false 4310 | 4311 | /retext-stringify@3.1.0: 4312 | resolution: {integrity: sha512-767TLOaoXFXyOnjx/EggXlb37ZD2u4P1n0GJqVdpipqACsQP+20W+BNpMYrlJkq7hxffnFk+jc6mAK9qrbuB8w==} 4313 | dependencies: 4314 | '@types/nlcst': 1.0.4 4315 | nlcst-to-string: 3.1.1 4316 | unified: 10.1.2 4317 | dev: false 4318 | 4319 | /retext@8.1.0: 4320 | resolution: {integrity: sha512-N9/Kq7YTn6ZpzfiGW45WfEGJqFf1IM1q8OsRa1CGzIebCJBNCANDRmOrholiDRGKo/We7ofKR4SEvcGAWEMD3Q==} 4321 | dependencies: 4322 | '@types/nlcst': 1.0.4 4323 | retext-latin: 3.1.0 4324 | retext-stringify: 3.1.0 4325 | unified: 10.1.2 4326 | dev: false 4327 | 4328 | /reusify@1.0.4: 4329 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 4330 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 4331 | dev: false 4332 | 4333 | /rimraf@3.0.2: 4334 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 4335 | hasBin: true 4336 | dependencies: 4337 | glob: 7.2.3 4338 | dev: false 4339 | 4340 | /rollup@4.14.2: 4341 | resolution: {integrity: sha512-WkeoTWvuBoFjFAhsEOHKRoZ3r9GfTyhh7Vff1zwebEFLEFjT1lG3784xEgKiTa7E+e70vsC81roVL2MP4tgEEQ==} 4342 | engines: {node: '>=18.0.0', npm: '>=8.0.0'} 4343 | hasBin: true 4344 | dependencies: 4345 | '@types/estree': 1.0.5 4346 | optionalDependencies: 4347 | '@rollup/rollup-android-arm-eabi': 4.14.2 4348 | '@rollup/rollup-android-arm64': 4.14.2 4349 | '@rollup/rollup-darwin-arm64': 4.14.2 4350 | '@rollup/rollup-darwin-x64': 4.14.2 4351 | '@rollup/rollup-linux-arm-gnueabihf': 4.14.2 4352 | '@rollup/rollup-linux-arm64-gnu': 4.14.2 4353 | '@rollup/rollup-linux-arm64-musl': 4.14.2 4354 | '@rollup/rollup-linux-powerpc64le-gnu': 4.14.2 4355 | '@rollup/rollup-linux-riscv64-gnu': 4.14.2 4356 | '@rollup/rollup-linux-s390x-gnu': 4.14.2 4357 | '@rollup/rollup-linux-x64-gnu': 4.14.2 4358 | '@rollup/rollup-linux-x64-musl': 4.14.2 4359 | '@rollup/rollup-win32-arm64-msvc': 4.14.2 4360 | '@rollup/rollup-win32-ia32-msvc': 4.14.2 4361 | '@rollup/rollup-win32-x64-msvc': 4.14.2 4362 | fsevents: 2.3.3 4363 | dev: false 4364 | 4365 | /run-parallel@1.2.0: 4366 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 4367 | dependencies: 4368 | queue-microtask: 1.2.3 4369 | dev: false 4370 | 4371 | /rxjs@7.8.1: 4372 | resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} 4373 | requiresBuild: true 4374 | dependencies: 4375 | tslib: 2.6.2 4376 | dev: false 4377 | optional: true 4378 | 4379 | /safe-buffer@5.2.1: 4380 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} 4381 | dev: false 4382 | 4383 | /safer-buffer@2.1.2: 4384 | resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} 4385 | dev: false 4386 | 4387 | /scheduler@0.23.0: 4388 | resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} 4389 | dependencies: 4390 | loose-envify: 1.4.0 4391 | dev: false 4392 | 4393 | /section-matter@1.0.0: 4394 | resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==} 4395 | engines: {node: '>=4'} 4396 | dependencies: 4397 | extend-shallow: 2.0.1 4398 | kind-of: 6.0.3 4399 | dev: false 4400 | 4401 | /semver@6.3.1: 4402 | resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} 4403 | hasBin: true 4404 | dev: false 4405 | 4406 | /semver@7.6.0: 4407 | resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==} 4408 | engines: {node: '>=10'} 4409 | hasBin: true 4410 | dependencies: 4411 | lru-cache: 6.0.0 4412 | dev: false 4413 | 4414 | /server-only@0.0.1: 4415 | resolution: {integrity: sha512-qepMx2JxAa5jjfzxG79yPPq+8BuFToHd1hm7kI+Z4zAq1ftQiP7HcxMhDDItrbtwVeLg/cY2JnKnrcFkmiswNA==} 4416 | dev: false 4417 | 4418 | /set-blocking@2.0.0: 4419 | resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} 4420 | dev: false 4421 | 4422 | /set-cookie-parser@2.6.0: 4423 | resolution: {integrity: sha512-RVnVQxTXuerk653XfuliOxBP81Sf0+qfQE73LIYKcyMYHG94AuH0kgrQpRDuTZnSmjpysHmzxJXKNfa6PjFhyQ==} 4424 | dev: false 4425 | 4426 | /sharp@0.32.6: 4427 | resolution: {integrity: sha512-KyLTWwgcR9Oe4d9HwCwNM2l7+J0dUQwn/yf7S0EnTtb0eVS4RxO0eUSvxPtzT4F3SY+C4K6fqdv/DO27sJ/v/w==} 4428 | engines: {node: '>=14.15.0'} 4429 | requiresBuild: true 4430 | dependencies: 4431 | color: 4.2.3 4432 | detect-libc: 2.0.3 4433 | node-addon-api: 6.1.0 4434 | prebuild-install: 7.1.2 4435 | semver: 7.6.0 4436 | simple-get: 4.0.1 4437 | tar-fs: 3.0.5 4438 | tunnel-agent: 0.6.0 4439 | dev: false 4440 | optional: true 4441 | 4442 | /shebang-command@2.0.0: 4443 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 4444 | engines: {node: '>=8'} 4445 | dependencies: 4446 | shebang-regex: 3.0.0 4447 | dev: false 4448 | 4449 | /shebang-regex@3.0.0: 4450 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 4451 | engines: {node: '>=8'} 4452 | dev: false 4453 | 4454 | /shiki@1.3.0: 4455 | resolution: {integrity: sha512-9aNdQy/etMXctnPzsje1h1XIGm9YfRcSksKOGqZWXA/qP9G18/8fpz5Bjpma8bOgz3tqIpjERAd6/lLjFyzoww==} 4456 | dependencies: 4457 | '@shikijs/core': 1.3.0 4458 | dev: false 4459 | 4460 | /signal-exit@3.0.7: 4461 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} 4462 | dev: false 4463 | 4464 | /signal-exit@4.1.0: 4465 | resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} 4466 | engines: {node: '>=14'} 4467 | dev: false 4468 | 4469 | /simple-concat@1.0.1: 4470 | resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} 4471 | requiresBuild: true 4472 | dev: false 4473 | optional: true 4474 | 4475 | /simple-get@4.0.1: 4476 | resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} 4477 | requiresBuild: true 4478 | dependencies: 4479 | decompress-response: 6.0.0 4480 | once: 1.4.0 4481 | simple-concat: 1.0.1 4482 | dev: false 4483 | optional: true 4484 | 4485 | /simple-swizzle@0.2.2: 4486 | resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} 4487 | requiresBuild: true 4488 | dependencies: 4489 | is-arrayish: 0.3.2 4490 | dev: false 4491 | optional: true 4492 | 4493 | /sisteransi@1.0.5: 4494 | resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} 4495 | dev: false 4496 | 4497 | /source-map-js@1.2.0: 4498 | resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} 4499 | engines: {node: '>=0.10.0'} 4500 | dev: false 4501 | 4502 | /space-separated-tokens@2.0.2: 4503 | resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} 4504 | dev: false 4505 | 4506 | /sprintf-js@1.0.3: 4507 | resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} 4508 | dev: false 4509 | 4510 | /stdin-discarder@0.1.0: 4511 | resolution: {integrity: sha512-xhV7w8S+bUwlPTb4bAOUQhv8/cSS5offJuX8GQGq32ONF0ZtDWKfkdomM3HMRA+LhX6um/FZ0COqlwsjD53LeQ==} 4512 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 4513 | dependencies: 4514 | bl: 5.1.0 4515 | dev: false 4516 | 4517 | /streamx@2.16.1: 4518 | resolution: {integrity: sha512-m9QYj6WygWyWa3H1YY69amr4nVgy61xfjys7xO7kviL5rfIEc2naf+ewFiOA+aEJD7y0JO3h2GoiUv4TDwEGzQ==} 4519 | requiresBuild: true 4520 | dependencies: 4521 | fast-fifo: 1.3.2 4522 | queue-tick: 1.0.1 4523 | optionalDependencies: 4524 | bare-events: 2.2.2 4525 | dev: false 4526 | optional: true 4527 | 4528 | /string-width@4.2.3: 4529 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 4530 | engines: {node: '>=8'} 4531 | dependencies: 4532 | emoji-regex: 8.0.0 4533 | is-fullwidth-code-point: 3.0.0 4534 | strip-ansi: 6.0.1 4535 | dev: false 4536 | 4537 | /string-width@5.1.2: 4538 | resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} 4539 | engines: {node: '>=12'} 4540 | dependencies: 4541 | eastasianwidth: 0.2.0 4542 | emoji-regex: 9.2.2 4543 | strip-ansi: 7.1.0 4544 | dev: false 4545 | 4546 | /string-width@6.1.0: 4547 | resolution: {integrity: sha512-k01swCJAgQmuADB0YIc+7TuatfNvTBVOoaUWJjTB9R4VJzR5vNWzf5t42ESVZFPS8xTySF7CAdV4t/aaIm3UnQ==} 4548 | engines: {node: '>=16'} 4549 | dependencies: 4550 | eastasianwidth: 0.2.0 4551 | emoji-regex: 10.3.0 4552 | strip-ansi: 7.1.0 4553 | dev: false 4554 | 4555 | /string-width@7.1.0: 4556 | resolution: {integrity: sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==} 4557 | engines: {node: '>=18'} 4558 | dependencies: 4559 | emoji-regex: 10.3.0 4560 | get-east-asian-width: 1.2.0 4561 | strip-ansi: 7.1.0 4562 | dev: false 4563 | 4564 | /string_decoder@1.3.0: 4565 | resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} 4566 | dependencies: 4567 | safe-buffer: 5.2.1 4568 | dev: false 4569 | 4570 | /stringify-entities@4.0.4: 4571 | resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} 4572 | dependencies: 4573 | character-entities-html4: 2.1.0 4574 | character-entities-legacy: 3.0.0 4575 | dev: false 4576 | 4577 | /strip-ansi@6.0.1: 4578 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 4579 | engines: {node: '>=8'} 4580 | dependencies: 4581 | ansi-regex: 5.0.1 4582 | dev: false 4583 | 4584 | /strip-ansi@7.1.0: 4585 | resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} 4586 | engines: {node: '>=12'} 4587 | dependencies: 4588 | ansi-regex: 6.0.1 4589 | dev: false 4590 | 4591 | /strip-bom-string@1.0.0: 4592 | resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==} 4593 | engines: {node: '>=0.10.0'} 4594 | dev: false 4595 | 4596 | /strip-bom@3.0.0: 4597 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} 4598 | engines: {node: '>=4'} 4599 | dev: false 4600 | 4601 | /strip-final-newline@3.0.0: 4602 | resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} 4603 | engines: {node: '>=12'} 4604 | dev: false 4605 | 4606 | /strip-json-comments@2.0.1: 4607 | resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} 4608 | engines: {node: '>=0.10.0'} 4609 | requiresBuild: true 4610 | dev: false 4611 | optional: true 4612 | 4613 | /style-to-object@1.0.6: 4614 | resolution: {integrity: sha512-khxq+Qm3xEyZfKd/y9L3oIWQimxuc4STrQKtQn8aSDRHb8mFgpukgX1hdzfrMEW6JCjyJ8p89x+IUMVnCBI1PA==} 4615 | dependencies: 4616 | inline-style-parser: 0.2.3 4617 | dev: false 4618 | 4619 | /sucrase@3.35.0: 4620 | resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} 4621 | engines: {node: '>=16 || 14 >=14.17'} 4622 | hasBin: true 4623 | dependencies: 4624 | '@jridgewell/gen-mapping': 0.3.5 4625 | commander: 4.1.1 4626 | glob: 10.3.12 4627 | lines-and-columns: 1.2.4 4628 | mz: 2.7.0 4629 | pirates: 4.0.6 4630 | ts-interface-checker: 0.1.13 4631 | dev: false 4632 | 4633 | /supports-color@5.5.0: 4634 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} 4635 | engines: {node: '>=4'} 4636 | dependencies: 4637 | has-flag: 3.0.0 4638 | dev: false 4639 | 4640 | /supports-preserve-symlinks-flag@1.0.0: 4641 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 4642 | engines: {node: '>= 0.4'} 4643 | dev: false 4644 | 4645 | /tailwindcss@3.4.3: 4646 | resolution: {integrity: sha512-U7sxQk/n397Bmx4JHbJx/iSOOv5G+II3f1kpLpY2QeUv5DcPdcTsYLlusZfq1NthHS1c1cZoyFmmkex1rzke0A==} 4647 | engines: {node: '>=14.0.0'} 4648 | hasBin: true 4649 | dependencies: 4650 | '@alloc/quick-lru': 5.2.0 4651 | arg: 5.0.2 4652 | chokidar: 3.6.0 4653 | didyoumean: 1.2.2 4654 | dlv: 1.1.3 4655 | fast-glob: 3.3.2 4656 | glob-parent: 6.0.2 4657 | is-glob: 4.0.3 4658 | jiti: 1.21.0 4659 | lilconfig: 2.1.0 4660 | micromatch: 4.0.5 4661 | normalize-path: 3.0.0 4662 | object-hash: 3.0.0 4663 | picocolors: 1.0.0 4664 | postcss: 8.4.38 4665 | postcss-import: 15.1.0(postcss@8.4.38) 4666 | postcss-js: 4.0.1(postcss@8.4.38) 4667 | postcss-load-config: 4.0.2(postcss@8.4.38) 4668 | postcss-nested: 6.0.1(postcss@8.4.38) 4669 | postcss-selector-parser: 6.0.16 4670 | resolve: 1.22.8 4671 | sucrase: 3.35.0 4672 | transitivePeerDependencies: 4673 | - ts-node 4674 | dev: false 4675 | 4676 | /tar-fs@2.1.1: 4677 | resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} 4678 | requiresBuild: true 4679 | dependencies: 4680 | chownr: 1.1.4 4681 | mkdirp-classic: 0.5.3 4682 | pump: 3.0.0 4683 | tar-stream: 2.2.0 4684 | dev: false 4685 | optional: true 4686 | 4687 | /tar-fs@3.0.5: 4688 | resolution: {integrity: sha512-JOgGAmZyMgbqpLwct7ZV8VzkEB6pxXFBVErLtb+XCOqzc6w1xiWKI9GVd6bwk68EX7eJ4DWmfXVmq8K2ziZTGg==} 4689 | requiresBuild: true 4690 | dependencies: 4691 | pump: 3.0.0 4692 | tar-stream: 3.1.7 4693 | optionalDependencies: 4694 | bare-fs: 2.2.3 4695 | bare-path: 2.1.1 4696 | dev: false 4697 | optional: true 4698 | 4699 | /tar-stream@2.2.0: 4700 | resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} 4701 | engines: {node: '>=6'} 4702 | requiresBuild: true 4703 | dependencies: 4704 | bl: 4.1.0 4705 | end-of-stream: 1.4.4 4706 | fs-constants: 1.0.0 4707 | inherits: 2.0.4 4708 | readable-stream: 3.6.2 4709 | dev: false 4710 | optional: true 4711 | 4712 | /tar-stream@3.1.7: 4713 | resolution: {integrity: sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==} 4714 | requiresBuild: true 4715 | dependencies: 4716 | b4a: 1.6.6 4717 | fast-fifo: 1.3.2 4718 | streamx: 2.16.1 4719 | dev: false 4720 | optional: true 4721 | 4722 | /tar@6.2.1: 4723 | resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==} 4724 | engines: {node: '>=10'} 4725 | dependencies: 4726 | chownr: 2.0.0 4727 | fs-minipass: 2.1.0 4728 | minipass: 5.0.0 4729 | minizlib: 2.1.2 4730 | mkdirp: 1.0.4 4731 | yallist: 4.0.0 4732 | dev: false 4733 | 4734 | /thenify-all@1.6.0: 4735 | resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} 4736 | engines: {node: '>=0.8'} 4737 | dependencies: 4738 | thenify: 3.3.1 4739 | dev: false 4740 | 4741 | /thenify@3.3.1: 4742 | resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} 4743 | dependencies: 4744 | any-promise: 1.3.0 4745 | dev: false 4746 | 4747 | /through2@4.0.2: 4748 | resolution: {integrity: sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==} 4749 | dependencies: 4750 | readable-stream: 3.6.2 4751 | dev: false 4752 | 4753 | /to-arraybuffer@1.0.1: 4754 | resolution: {integrity: sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA==} 4755 | dev: false 4756 | 4757 | /to-fast-properties@2.0.0: 4758 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} 4759 | engines: {node: '>=4'} 4760 | dev: false 4761 | 4762 | /to-regex-range@5.0.1: 4763 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 4764 | engines: {node: '>=8.0'} 4765 | dependencies: 4766 | is-number: 7.0.0 4767 | dev: false 4768 | 4769 | /tough-cookie@4.1.3: 4770 | resolution: {integrity: sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==} 4771 | engines: {node: '>=6'} 4772 | dependencies: 4773 | psl: 1.9.0 4774 | punycode: 2.3.1 4775 | universalify: 0.2.0 4776 | url-parse: 1.5.10 4777 | dev: false 4778 | 4779 | /tr46@0.0.3: 4780 | resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} 4781 | dev: false 4782 | 4783 | /trim-lines@3.0.1: 4784 | resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} 4785 | dev: false 4786 | 4787 | /trough@2.2.0: 4788 | resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} 4789 | dev: false 4790 | 4791 | /ts-interface-checker@0.1.13: 4792 | resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} 4793 | dev: false 4794 | 4795 | /tsconfck@3.0.3(typescript@5.4.5): 4796 | resolution: {integrity: sha512-4t0noZX9t6GcPTfBAbIbbIU4pfpCwh0ueq3S4O/5qXI1VwK1outmxhe9dOiEWqMz3MW2LKgDTpqWV+37IWuVbA==} 4797 | engines: {node: ^18 || >=20} 4798 | hasBin: true 4799 | peerDependencies: 4800 | typescript: ^5.0.0 4801 | peerDependenciesMeta: 4802 | typescript: 4803 | optional: true 4804 | dependencies: 4805 | typescript: 5.4.5 4806 | dev: false 4807 | 4808 | /tslib@2.6.2: 4809 | resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} 4810 | requiresBuild: true 4811 | dev: false 4812 | optional: true 4813 | 4814 | /tunnel-agent@0.6.0: 4815 | resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} 4816 | requiresBuild: true 4817 | dependencies: 4818 | safe-buffer: 5.2.1 4819 | dev: false 4820 | optional: true 4821 | 4822 | /type-fest@2.19.0: 4823 | resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} 4824 | engines: {node: '>=12.20'} 4825 | dev: false 4826 | 4827 | /typed-emitter@2.1.0: 4828 | resolution: {integrity: sha512-g/KzbYKbH5C2vPkaXGu8DJlHrGKHLsM25Zg9WuC9pMGfuvT+X25tZQWo5fK1BjBm8+UrVE9LDCvaY0CQk+fXDA==} 4829 | optionalDependencies: 4830 | rxjs: 7.8.1 4831 | dev: false 4832 | 4833 | /typesafe-path@0.2.2: 4834 | resolution: {integrity: sha512-OJabfkAg1WLZSqJAJ0Z6Sdt3utnbzr/jh+NAHoyWHJe8CMSy79Gm085094M9nvTPy22KzTVn5Zq5mbapCI/hPA==} 4835 | dev: false 4836 | 4837 | /typescript-auto-import-cache@0.3.2: 4838 | resolution: {integrity: sha512-+laqe5SFL1vN62FPOOJSUDTZxtgsoOXjneYOXIpx5rQ4UMiN89NAtJLpqLqyebv9fgQ/IMeeTX+mQyRnwvJzvg==} 4839 | dependencies: 4840 | semver: 7.6.0 4841 | dev: false 4842 | 4843 | /typescript@5.4.5: 4844 | resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} 4845 | engines: {node: '>=14.17'} 4846 | hasBin: true 4847 | 4848 | /ultrahtml@1.5.3: 4849 | resolution: {integrity: sha512-GykOvZwgDWZlTQMtp5jrD4BVL+gNn2NVlVafjcFUJ7taY20tqYdwdoWBFy6GBJsNTZe1GkGPkSl5knQAjtgceg==} 4850 | dev: false 4851 | 4852 | /undici-types@5.26.5: 4853 | resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} 4854 | 4855 | /unherit@3.0.1: 4856 | resolution: {integrity: sha512-akOOQ/Yln8a2sgcLj4U0Jmx0R5jpIg2IUyRrWOzmEbjBtGzBdHtSeFKgoEcoH4KYIG/Pb8GQ/BwtYm0GCq1Sqg==} 4857 | dev: false 4858 | 4859 | /unified@10.1.2: 4860 | resolution: {integrity: sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==} 4861 | dependencies: 4862 | '@types/unist': 2.0.10 4863 | bail: 2.0.2 4864 | extend: 3.0.2 4865 | is-buffer: 2.0.5 4866 | is-plain-obj: 4.1.0 4867 | trough: 2.2.0 4868 | vfile: 5.3.7 4869 | dev: false 4870 | 4871 | /unified@11.0.4: 4872 | resolution: {integrity: sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==} 4873 | dependencies: 4874 | '@types/unist': 3.0.2 4875 | bail: 2.0.2 4876 | devlop: 1.1.0 4877 | extend: 3.0.2 4878 | is-plain-obj: 4.1.0 4879 | trough: 2.2.0 4880 | vfile: 6.0.1 4881 | dev: false 4882 | 4883 | /unist-util-find-after@5.0.0: 4884 | resolution: {integrity: sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==} 4885 | dependencies: 4886 | '@types/unist': 3.0.2 4887 | unist-util-is: 6.0.0 4888 | dev: false 4889 | 4890 | /unist-util-is@5.2.1: 4891 | resolution: {integrity: sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==} 4892 | dependencies: 4893 | '@types/unist': 2.0.10 4894 | dev: false 4895 | 4896 | /unist-util-is@6.0.0: 4897 | resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} 4898 | dependencies: 4899 | '@types/unist': 3.0.2 4900 | dev: false 4901 | 4902 | /unist-util-modify-children@3.1.1: 4903 | resolution: {integrity: sha512-yXi4Lm+TG5VG+qvokP6tpnk+r1EPwyYL04JWDxLvgvPV40jANh7nm3udk65OOWquvbMDe+PL9+LmkxDpTv/7BA==} 4904 | dependencies: 4905 | '@types/unist': 2.0.10 4906 | array-iterate: 2.0.1 4907 | dev: false 4908 | 4909 | /unist-util-position@5.0.0: 4910 | resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} 4911 | dependencies: 4912 | '@types/unist': 3.0.2 4913 | dev: false 4914 | 4915 | /unist-util-remove-position@5.0.0: 4916 | resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==} 4917 | dependencies: 4918 | '@types/unist': 3.0.2 4919 | unist-util-visit: 5.0.0 4920 | dev: false 4921 | 4922 | /unist-util-stringify-position@3.0.3: 4923 | resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==} 4924 | dependencies: 4925 | '@types/unist': 2.0.10 4926 | dev: false 4927 | 4928 | /unist-util-stringify-position@4.0.0: 4929 | resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} 4930 | dependencies: 4931 | '@types/unist': 3.0.2 4932 | dev: false 4933 | 4934 | /unist-util-visit-children@2.0.2: 4935 | resolution: {integrity: sha512-+LWpMFqyUwLGpsQxpumsQ9o9DG2VGLFrpz+rpVXYIEdPy57GSy5HioC0g3bg/8WP9oCLlapQtklOzQ8uLS496Q==} 4936 | dependencies: 4937 | '@types/unist': 2.0.10 4938 | dev: false 4939 | 4940 | /unist-util-visit-parents@5.1.3: 4941 | resolution: {integrity: sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==} 4942 | dependencies: 4943 | '@types/unist': 2.0.10 4944 | unist-util-is: 5.2.1 4945 | dev: false 4946 | 4947 | /unist-util-visit-parents@6.0.1: 4948 | resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} 4949 | dependencies: 4950 | '@types/unist': 3.0.2 4951 | unist-util-is: 6.0.0 4952 | dev: false 4953 | 4954 | /unist-util-visit@4.1.2: 4955 | resolution: {integrity: sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==} 4956 | dependencies: 4957 | '@types/unist': 2.0.10 4958 | unist-util-is: 5.2.1 4959 | unist-util-visit-parents: 5.1.3 4960 | dev: false 4961 | 4962 | /unist-util-visit@5.0.0: 4963 | resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} 4964 | dependencies: 4965 | '@types/unist': 3.0.2 4966 | unist-util-is: 6.0.0 4967 | unist-util-visit-parents: 6.0.1 4968 | dev: false 4969 | 4970 | /universalify@0.2.0: 4971 | resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} 4972 | engines: {node: '>= 4.0.0'} 4973 | dev: false 4974 | 4975 | /update-browserslist-db@1.0.13(browserslist@4.23.0): 4976 | resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} 4977 | hasBin: true 4978 | peerDependencies: 4979 | browserslist: '>= 4.21.0' 4980 | dependencies: 4981 | browserslist: 4.23.0 4982 | escalade: 3.1.2 4983 | picocolors: 1.0.0 4984 | dev: false 4985 | 4986 | /url-parse@1.5.10: 4987 | resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} 4988 | dependencies: 4989 | querystringify: 2.2.0 4990 | requires-port: 1.0.0 4991 | dev: false 4992 | 4993 | /util-deprecate@1.0.2: 4994 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 4995 | dev: false 4996 | 4997 | /uuidv7@0.6.3: 4998 | resolution: {integrity: sha512-zV3eW2NlXTsun/aJ7AixxZjH/byQcH/r3J99MI0dDEkU2cJIBJxhEWUHDTpOaLPRNhebPZoeHuykYREkI9HafA==} 4999 | hasBin: true 5000 | dev: false 5001 | 5002 | /vfile-location@5.0.2: 5003 | resolution: {integrity: sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==} 5004 | dependencies: 5005 | '@types/unist': 3.0.2 5006 | vfile: 6.0.1 5007 | dev: false 5008 | 5009 | /vfile-message@3.1.4: 5010 | resolution: {integrity: sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==} 5011 | dependencies: 5012 | '@types/unist': 2.0.10 5013 | unist-util-stringify-position: 3.0.3 5014 | dev: false 5015 | 5016 | /vfile-message@4.0.2: 5017 | resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} 5018 | dependencies: 5019 | '@types/unist': 3.0.2 5020 | unist-util-stringify-position: 4.0.0 5021 | dev: false 5022 | 5023 | /vfile@5.3.7: 5024 | resolution: {integrity: sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==} 5025 | dependencies: 5026 | '@types/unist': 2.0.10 5027 | is-buffer: 2.0.5 5028 | unist-util-stringify-position: 3.0.3 5029 | vfile-message: 3.1.4 5030 | dev: false 5031 | 5032 | /vfile@6.0.1: 5033 | resolution: {integrity: sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==} 5034 | dependencies: 5035 | '@types/unist': 3.0.2 5036 | unist-util-stringify-position: 4.0.0 5037 | vfile-message: 4.0.2 5038 | dev: false 5039 | 5040 | /vite@5.2.8(@types/node@20.12.7): 5041 | resolution: {integrity: sha512-OyZR+c1CE8yeHw5V5t59aXsUPPVTHMDjEZz8MgguLL/Q7NblxhZUlTu9xSPqlsUO/y+X7dlU05jdhvyycD55DA==} 5042 | engines: {node: ^18.0.0 || >=20.0.0} 5043 | hasBin: true 5044 | peerDependencies: 5045 | '@types/node': ^18.0.0 || >=20.0.0 5046 | less: '*' 5047 | lightningcss: ^1.21.0 5048 | sass: '*' 5049 | stylus: '*' 5050 | sugarss: '*' 5051 | terser: ^5.4.0 5052 | peerDependenciesMeta: 5053 | '@types/node': 5054 | optional: true 5055 | less: 5056 | optional: true 5057 | lightningcss: 5058 | optional: true 5059 | sass: 5060 | optional: true 5061 | stylus: 5062 | optional: true 5063 | sugarss: 5064 | optional: true 5065 | terser: 5066 | optional: true 5067 | dependencies: 5068 | '@types/node': 20.12.7 5069 | esbuild: 0.20.2 5070 | postcss: 8.4.38 5071 | rollup: 4.14.2 5072 | optionalDependencies: 5073 | fsevents: 2.3.3 5074 | dev: false 5075 | 5076 | /vitefu@0.2.5(vite@5.2.8): 5077 | resolution: {integrity: sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==} 5078 | peerDependencies: 5079 | vite: ^3.0.0 || ^4.0.0 || ^5.0.0 5080 | peerDependenciesMeta: 5081 | vite: 5082 | optional: true 5083 | dependencies: 5084 | vite: 5.2.8(@types/node@20.12.7) 5085 | dev: false 5086 | 5087 | /volar-service-css@0.0.34(@volar/language-service@2.1.6): 5088 | resolution: {integrity: sha512-C7ua0j80ZD7bsgALAz/cA1bykPehoIa5n+3+Ccr+YLpj0fypqw9iLUmGLX11CqzqNCO2XFGe/1eXB/c+SWrF/g==} 5089 | peerDependencies: 5090 | '@volar/language-service': ~2.1.0 5091 | peerDependenciesMeta: 5092 | '@volar/language-service': 5093 | optional: true 5094 | dependencies: 5095 | '@volar/language-service': 2.1.6 5096 | vscode-css-languageservice: 6.2.13 5097 | vscode-languageserver-textdocument: 1.0.11 5098 | vscode-uri: 3.0.8 5099 | dev: false 5100 | 5101 | /volar-service-emmet@0.0.34(@volar/language-service@2.1.6): 5102 | resolution: {integrity: sha512-ubQvMCmHPp8Ic82LMPkgrp9ot+u2p/RDd0RyT0EykRkZpWsagHUF5HWkVheLfiMyx2rFuWx/+7qZPOgypx6h6g==} 5103 | peerDependencies: 5104 | '@volar/language-service': ~2.1.0 5105 | peerDependenciesMeta: 5106 | '@volar/language-service': 5107 | optional: true 5108 | dependencies: 5109 | '@volar/language-service': 2.1.6 5110 | '@vscode/emmet-helper': 2.9.2 5111 | vscode-html-languageservice: 5.2.0 5112 | dev: false 5113 | 5114 | /volar-service-html@0.0.34(@volar/language-service@2.1.6): 5115 | resolution: {integrity: sha512-kMEneea1tQbiRcyKavqdrSVt8zV06t+0/3pGkjO3gV6sikXTNShIDkdtB4Tq9vE2cQdM50TuS7utVV7iysUxHw==} 5116 | peerDependencies: 5117 | '@volar/language-service': ~2.1.0 5118 | peerDependenciesMeta: 5119 | '@volar/language-service': 5120 | optional: true 5121 | dependencies: 5122 | '@volar/language-service': 2.1.6 5123 | vscode-html-languageservice: 5.2.0 5124 | vscode-languageserver-textdocument: 1.0.11 5125 | vscode-uri: 3.0.8 5126 | dev: false 5127 | 5128 | /volar-service-prettier@0.0.34(@volar/language-service@2.1.6): 5129 | resolution: {integrity: sha512-BNfJ8FwfPi1Wm/JkuzNjraOLdtKieGksNT/bDyquygVawv1QUzO2HB1hiMKfZGdcSFG5ZL9R0j7bBfRTfXA2gg==} 5130 | peerDependencies: 5131 | '@volar/language-service': ~2.1.0 5132 | prettier: ^2.2 || ^3.0 5133 | peerDependenciesMeta: 5134 | '@volar/language-service': 5135 | optional: true 5136 | prettier: 5137 | optional: true 5138 | dependencies: 5139 | '@volar/language-service': 2.1.6 5140 | vscode-uri: 3.0.8 5141 | dev: false 5142 | 5143 | /volar-service-typescript-twoslash-queries@0.0.34(@volar/language-service@2.1.6): 5144 | resolution: {integrity: sha512-XAY2YtWKUp6ht89gxt3L5Dr46LU45d/VlBkj1KXUwNlinpoWiGN4Nm3B6DRF3VoBThAnQgm4c7WD0S+5yTzh+w==} 5145 | peerDependencies: 5146 | '@volar/language-service': ~2.1.0 5147 | peerDependenciesMeta: 5148 | '@volar/language-service': 5149 | optional: true 5150 | dependencies: 5151 | '@volar/language-service': 2.1.6 5152 | dev: false 5153 | 5154 | /volar-service-typescript@0.0.34(@volar/language-service@2.1.6): 5155 | resolution: {integrity: sha512-NbAry0w8ZXFgGsflvMwmPDCzgJGx3C+eYxFEbldaumkpTAJiywECWiUbPIOfmEHgpOllUKSnhwtLlWFK4YnfQg==} 5156 | peerDependencies: 5157 | '@volar/language-service': ~2.1.0 5158 | peerDependenciesMeta: 5159 | '@volar/language-service': 5160 | optional: true 5161 | dependencies: 5162 | '@volar/language-service': 2.1.6 5163 | path-browserify: 1.0.1 5164 | semver: 7.6.0 5165 | typescript-auto-import-cache: 0.3.2 5166 | vscode-languageserver-textdocument: 1.0.11 5167 | vscode-nls: 5.2.0 5168 | dev: false 5169 | 5170 | /vscode-css-languageservice@6.2.13: 5171 | resolution: {integrity: sha512-2rKWXfH++Kxd9Z4QuEgd1IF7WmblWWU7DScuyf1YumoGLkY9DW6wF/OTlhOyO2rN63sWHX2dehIpKBbho4ZwvA==} 5172 | dependencies: 5173 | '@vscode/l10n': 0.0.18 5174 | vscode-languageserver-textdocument: 1.0.11 5175 | vscode-languageserver-types: 3.17.5 5176 | vscode-uri: 3.0.8 5177 | dev: false 5178 | 5179 | /vscode-html-languageservice@5.2.0: 5180 | resolution: {integrity: sha512-cdNMhyw57/SQzgUUGSIMQ66jikqEN6nBNyhx5YuOyj9310+eY9zw8Q0cXpiKzDX8aHYFewQEXRnigl06j/TVwQ==} 5181 | dependencies: 5182 | '@vscode/l10n': 0.0.18 5183 | vscode-languageserver-textdocument: 1.0.11 5184 | vscode-languageserver-types: 3.17.5 5185 | vscode-uri: 3.0.8 5186 | dev: false 5187 | 5188 | /vscode-jsonrpc@8.2.0: 5189 | resolution: {integrity: sha512-C+r0eKJUIfiDIfwJhria30+TYWPtuHJXHtI7J0YlOmKAo7ogxP20T0zxB7HZQIFhIyvoBPwWskjxrvAtfjyZfA==} 5190 | engines: {node: '>=14.0.0'} 5191 | dev: false 5192 | 5193 | /vscode-languageserver-protocol@3.17.5: 5194 | resolution: {integrity: sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg==} 5195 | dependencies: 5196 | vscode-jsonrpc: 8.2.0 5197 | vscode-languageserver-types: 3.17.5 5198 | dev: false 5199 | 5200 | /vscode-languageserver-textdocument@1.0.11: 5201 | resolution: {integrity: sha512-X+8T3GoiwTVlJbicx/sIAF+yuJAqz8VvwJyoMVhwEMoEKE/fkDmrqUgDMyBECcM2A2frVZIUj5HI/ErRXCfOeA==} 5202 | dev: false 5203 | 5204 | /vscode-languageserver-types@3.17.5: 5205 | resolution: {integrity: sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==} 5206 | dev: false 5207 | 5208 | /vscode-languageserver@9.0.1: 5209 | resolution: {integrity: sha512-woByF3PDpkHFUreUa7Hos7+pUWdeWMXRd26+ZX2A8cFx6v/JPTtd4/uN0/jB6XQHYaOlHbio03NTHCqrgG5n7g==} 5210 | hasBin: true 5211 | dependencies: 5212 | vscode-languageserver-protocol: 3.17.5 5213 | dev: false 5214 | 5215 | /vscode-nls@5.2.0: 5216 | resolution: {integrity: sha512-RAaHx7B14ZU04EU31pT+rKz2/zSl7xMsfIZuo8pd+KZO6PXtQmpevpq3vxvWNcrGbdmhM/rr5Uw5Mz+NBfhVng==} 5217 | dev: false 5218 | 5219 | /vscode-uri@2.1.2: 5220 | resolution: {integrity: sha512-8TEXQxlldWAuIODdukIb+TR5s+9Ds40eSJrw+1iDDA9IFORPjMELarNQE3myz5XIkWWpdprmJjm1/SxMlWOC8A==} 5221 | dev: false 5222 | 5223 | /vscode-uri@3.0.8: 5224 | resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==} 5225 | dev: false 5226 | 5227 | /web-namespaces@2.0.1: 5228 | resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==} 5229 | dev: false 5230 | 5231 | /web-streams-polyfill@3.3.3: 5232 | resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==} 5233 | engines: {node: '>= 8'} 5234 | dev: false 5235 | 5236 | /web-streams-polyfill@4.0.0-beta.3: 5237 | resolution: {integrity: sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==} 5238 | engines: {node: '>= 14'} 5239 | dev: false 5240 | 5241 | /web-vitals@3.5.2: 5242 | resolution: {integrity: sha512-c0rhqNcHXRkY/ogGDJQxZ9Im9D19hDihbzSQJrsioex+KnFgmMzBiy57Z1EjkhX/+OjyBpclDCzz2ITtjokFmg==} 5243 | dev: false 5244 | 5245 | /webidl-conversions@3.0.1: 5246 | resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} 5247 | dev: false 5248 | 5249 | /whatwg-url@5.0.0: 5250 | resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} 5251 | dependencies: 5252 | tr46: 0.0.3 5253 | webidl-conversions: 3.0.1 5254 | dev: false 5255 | 5256 | /which-pm-runs@1.1.0: 5257 | resolution: {integrity: sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==} 5258 | engines: {node: '>=4'} 5259 | dev: false 5260 | 5261 | /which-pm@2.0.0: 5262 | resolution: {integrity: sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==} 5263 | engines: {node: '>=8.15'} 5264 | dependencies: 5265 | load-yaml-file: 0.2.0 5266 | path-exists: 4.0.0 5267 | dev: false 5268 | 5269 | /which-pm@2.1.1: 5270 | resolution: {integrity: sha512-xzzxNw2wMaoCWXiGE8IJ9wuPMU+EYhFksjHxrRT8kMT5SnocBPRg69YAMtyV4D12fP582RA+k3P8H9J5EMdIxQ==} 5271 | engines: {node: '>=8.15'} 5272 | dependencies: 5273 | load-yaml-file: 0.2.0 5274 | path-exists: 4.0.0 5275 | dev: false 5276 | 5277 | /which@2.0.2: 5278 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 5279 | engines: {node: '>= 8'} 5280 | hasBin: true 5281 | dependencies: 5282 | isexe: 2.0.0 5283 | dev: false 5284 | 5285 | /wide-align@1.1.5: 5286 | resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==} 5287 | dependencies: 5288 | string-width: 4.2.3 5289 | dev: false 5290 | 5291 | /widest-line@4.0.1: 5292 | resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} 5293 | engines: {node: '>=12'} 5294 | dependencies: 5295 | string-width: 5.1.2 5296 | dev: false 5297 | 5298 | /wrap-ansi@7.0.0: 5299 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 5300 | engines: {node: '>=10'} 5301 | dependencies: 5302 | ansi-styles: 4.3.0 5303 | string-width: 4.2.3 5304 | strip-ansi: 6.0.1 5305 | dev: false 5306 | 5307 | /wrap-ansi@8.1.0: 5308 | resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} 5309 | engines: {node: '>=12'} 5310 | dependencies: 5311 | ansi-styles: 6.2.1 5312 | string-width: 5.1.2 5313 | strip-ansi: 7.1.0 5314 | dev: false 5315 | 5316 | /wrappy@1.0.2: 5317 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 5318 | requiresBuild: true 5319 | dev: false 5320 | 5321 | /y18n@5.0.8: 5322 | resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} 5323 | engines: {node: '>=10'} 5324 | dev: false 5325 | 5326 | /yallist@3.1.1: 5327 | resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} 5328 | dev: false 5329 | 5330 | /yallist@4.0.0: 5331 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 5332 | dev: false 5333 | 5334 | /yaml@2.4.1: 5335 | resolution: {integrity: sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==} 5336 | engines: {node: '>= 14'} 5337 | hasBin: true 5338 | dev: false 5339 | 5340 | /yargs-parser@21.1.1: 5341 | resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} 5342 | engines: {node: '>=12'} 5343 | dev: false 5344 | 5345 | /yargs@17.7.2: 5346 | resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} 5347 | engines: {node: '>=12'} 5348 | dependencies: 5349 | cliui: 8.0.1 5350 | escalade: 3.1.2 5351 | get-caller-file: 2.0.5 5352 | require-directory: 2.1.1 5353 | string-width: 4.2.3 5354 | y18n: 5.0.8 5355 | yargs-parser: 21.1.1 5356 | dev: false 5357 | 5358 | /yocto-queue@0.1.0: 5359 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 5360 | engines: {node: '>=10'} 5361 | dev: false 5362 | 5363 | /yocto-queue@1.0.0: 5364 | resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} 5365 | engines: {node: '>=12.20'} 5366 | dev: false 5367 | 5368 | /zod-to-json-schema@3.22.5(zod@3.22.4): 5369 | resolution: {integrity: sha512-+akaPo6a0zpVCCseDed504KBJUQpEW5QZw7RMneNmKw+fGaML1Z9tUNLnHHAC8x6dzVRO1eB2oEMyZRnuBZg7Q==} 5370 | peerDependencies: 5371 | zod: ^3.22.4 5372 | dependencies: 5373 | zod: 3.22.4 5374 | dev: false 5375 | 5376 | /zod@3.22.4: 5377 | resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==} 5378 | dev: false 5379 | 5380 | /zwitch@2.0.4: 5381 | resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} 5382 | dev: false 5383 | -------------------------------------------------------------------------------- /public/dangpt.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TejasQ/danGPT/d62650e3bb32eea6393a581b50264867ea1efc2e/public/dangpt.jpeg -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TejasQ/danGPT/d62650e3bb32eea6393a581b50264867ea1efc2e/public/favicon.ico -------------------------------------------------------------------------------- /public/og.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/TejasQ/danGPT/d62650e3bb32eea6393a581b50264867ea1efc2e/public/og.jpg -------------------------------------------------------------------------------- /src/components/App.tsx: -------------------------------------------------------------------------------- 1 | import { useState } from "react"; 2 | import type { Source } from "../../util/types"; 3 | import { replaceTwitterHandles } from "../../util/replaceTwitterHandles"; 4 | import { Form } from "./Form"; 5 | import ReactMarkdown from "react-markdown"; 6 | 7 | type AppProps = { 8 | initialQuery: string; 9 | initialAnswer: string; 10 | initialSources: Source[]; 11 | }; 12 | 13 | export function App({ initialQuery, initialAnswer, initialSources }: AppProps) { 14 | const [answer, setAnswer] = useState(initialAnswer); 15 | const [sources, setSources] = useState(initialSources); 16 | 17 | return ( 18 | <> 19 |
20 | {answer && ( 21 | <> 22 |
23 | {answer} 24 |
25 |
26 |

Sources

27 | 69 | 70 | )} 71 | 72 | ); 73 | } 74 | -------------------------------------------------------------------------------- /src/components/Form.tsx: -------------------------------------------------------------------------------- 1 | import { useRef, useState, type Dispatch, type SetStateAction } from "react"; 2 | import type { Source } from "../../util/types"; 3 | 4 | type Props = { 5 | query: string; 6 | onUpdate: { 7 | setAnswer: Dispatch>; 8 | setSources: Dispatch>; 9 | }; 10 | }; 11 | 12 | export const Form = ({ query, onUpdate }: Props) => { 13 | const [pending, setPending] = useState(false); 14 | const inputRef = useRef(null); 15 | return ( 16 | { 21 | e.preventDefault(); 22 | setPending(true); 23 | if (!inputRef.current?.value) { 24 | alert("Ask something."); 25 | return; 26 | } 27 | window.history.replaceState( 28 | {}, 29 | "", 30 | "/?q=" + encodeURIComponent(inputRef.current.value) 31 | ); 32 | onUpdate.setAnswer(""); 33 | const eventSource = new EventSource( 34 | "/api/ask?q=" + encodeURIComponent(inputRef.current.value) 35 | ); 36 | eventSource.addEventListener("message", (e) => { 37 | onUpdate.setAnswer((a) => a + decodeURIComponent(e.data)); 38 | }); 39 | eventSource.addEventListener("done", () => { 40 | eventSource.close(); 41 | setPending(false); 42 | }); 43 | eventSource.addEventListener("sources", (e) => { 44 | console.log("BIG SOURCES", e.data); 45 | onUpdate.setSources(JSON.parse(e.data)); 46 | }); 47 | eventSource.addEventListener("error", () => { 48 | onUpdate.setAnswer( 49 | (a) => 50 | a + 51 | " ...sorry, the whole world is using this and we're being rate limited because of heavy load. Try again in 30 seconds or much, much later." 52 | ); 53 | eventSource.close(); 54 | setPending(false); 55 | }); 56 | }} 57 | > 58 | 68 | 76 | 77 | ); 78 | }; 79 | -------------------------------------------------------------------------------- /src/env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /src/pages/api/ask.ts: -------------------------------------------------------------------------------- 1 | import type { APIRoute } from "astro"; 2 | import { getChatResponse } from "../../../util/getChatResponse"; 3 | import type { Stream } from "openai/streaming.mjs"; 4 | import type { ChatCompletionChunk } from "openai/resources/index.mjs"; 5 | 6 | export const GET: APIRoute = async ({ url, request }) => { 7 | const q = new URLSearchParams(url.search).get("q"); 8 | if (!q) { 9 | return new Response("Ask something.", { status: 400 }); 10 | } 11 | 12 | const answer = await getChatResponse(q, true); 13 | const stream = ( 14 | answer.response as Stream 15 | ).toReadableStream(); 16 | 17 | const responseStream = new ReadableStream({ 18 | async start(controller) { 19 | const decoder = new TextDecoder(); 20 | const reader = stream.getReader(); 21 | let result = ""; 22 | let finished = false; 23 | while (!finished) { 24 | const { value, done } = await reader.read(); 25 | if (value) { 26 | const data = `data:${encodeURIComponent( 27 | JSON.parse(decoder.decode(value)).choices?.[0]?.delta?.content ?? "" 28 | )}\n\n`; 29 | result += 30 | JSON.parse(decoder.decode(value)).choices?.[0]?.delta?.content ?? 31 | ""; 32 | controller.enqueue(data); 33 | } 34 | finished = done; 35 | } 36 | 37 | controller.enqueue( 38 | `event: sources\ndata: ${JSON.stringify(answer.sources)}\n\n` 39 | ); 40 | controller.enqueue("event: done\ndata: ok\n\n"); 41 | 42 | // Handle the connection closing 43 | request.signal.addEventListener("abort", () => { 44 | controller.close(); 45 | }); 46 | }, 47 | }); 48 | 49 | return new Response(responseStream, { 50 | headers: { 51 | "Content-Type": "text/event-stream", 52 | "Cache-Control": "no-cache", 53 | Connection: "keep-alive", 54 | }, 55 | }); 56 | }; 57 | -------------------------------------------------------------------------------- /src/pages/index.astro: -------------------------------------------------------------------------------- 1 | --- 2 | // @ts-ignore 3 | import type { ChatCompletion } from "openai/resources"; 4 | import type { Source } from "../../util/types"; 5 | import { getChatResponse } from "../../util/getChatResponse"; 6 | import { App } from "../components/App"; 7 | 8 | const q = new URLSearchParams(Astro.request.url.split("?")[1]).get("q"); 9 | let answer = { 10 | response: { 11 | choices: [], 12 | id: "", 13 | created: 0, 14 | model: "", 15 | object: "chat.completion", 16 | } as ChatCompletion, 17 | sources: [] as Source[], 18 | }; 19 | 20 | const isNotStream = (maybeAnswer: any): maybeAnswer is ChatCompletion => { 21 | return maybeAnswer.response.hasOwnProperty("choices"); 22 | }; 23 | 24 | if (q && isNotStream(answer)) { 25 | answer = await getChatResponse(q, false); 26 | } 27 | --- 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | { 36 | q ? ( 37 | Ask Dan Abramov: {q} | danGPT 38 | ) : ( 39 | danGPT | Dan Abramov as an AI 40 | ) 41 | } 42 | 48 | 49 | 50 |
53 | DanGPT 60 | 66 |
67 | Even with RAG, this still may be inaccurate.{" "} 68 | 73 | Real Dan 74 | {" "} 75 | is always the truest source of information. Built as a side hobby project 76 | by{" "} 77 | 81 | Tejas 82 | 83 | . 84 |
85 |
86 | 97 | 98 | 99 | -------------------------------------------------------------------------------- /tailwind.config.mjs: -------------------------------------------------------------------------------- 1 | /** @type {import('tailwindcss').Config} */ 2 | export default { 3 | content: ['./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}'], 4 | theme: { 5 | extend: {}, 6 | }, 7 | plugins: [], 8 | } 9 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "astro/tsconfigs/strictest", 3 | "compilerOptions": { 4 | "jsx": "react-jsx", 5 | "jsxImportSource": "react" 6 | } 7 | } -------------------------------------------------------------------------------- /util/collectionName.ts: -------------------------------------------------------------------------------- 1 | export const collectionName = "dangpt2"; 2 | -------------------------------------------------------------------------------- /util/getChatResponse.ts: -------------------------------------------------------------------------------- 1 | import OpenAI from "openpipe/openai"; 2 | import { search } from "./search"; 3 | import { getMessages } from "./getMessages"; 4 | import type { Stream } from "openai/streaming.mjs"; 5 | import type { 6 | ChatCompletion, 7 | ChatCompletionChunk, 8 | } from "openai/resources/index.mjs"; 9 | import type { Source } from "./types"; 10 | 11 | type GetChatResponse = { 12 | response: Stream | ChatCompletion; 13 | sources: Source[]; 14 | }; 15 | 16 | export const getChatResponse = async ( 17 | query: string, 18 | stream: T 19 | ): Promise => { 20 | const results = await search(query); 21 | const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY }); 22 | 23 | console.time("chatgpt"); 24 | console.timeLog("chatgpt", "Asking GPT-3.5..."); 25 | 26 | try { 27 | const response: any = await openai.chat.completions.create({ 28 | model: "gpt-4-turbo-preview", 29 | stream: Boolean(stream), 30 | messages: await getMessages( 31 | results.map((r) => r.text), 32 | query 33 | ), 34 | openpipe: { 35 | logRequest: true, 36 | }, 37 | }); 38 | console.timeLog("chatgpt", "Got response."); 39 | console.timeEnd("chatgpt"); 40 | 41 | return { 42 | response, 43 | sources: results.map((r) => { 44 | const { $vector, ...rest } = r; 45 | 46 | /** 47 | * @todo fix this with DataStax 48 | */ 49 | return rest as unknown as Source; 50 | }), 51 | }; 52 | } catch (e: any) { 53 | console.error(e); 54 | return { 55 | response: { 56 | choices: [ 57 | { 58 | finish_reason: "stop", 59 | index: 0, 60 | logprobs: null, 61 | message: { 62 | content: 63 | "Sorry, the whole world is using this and we're being rate limited because of heavy load." + 64 | e.message.split(".")[2] + 65 | " seconds or much, much later.", 66 | role: "assistant", 67 | }, 68 | }, 69 | ], 70 | } as ChatCompletion, 71 | sources: [] as Source[], 72 | }; 73 | } 74 | }; 75 | -------------------------------------------------------------------------------- /util/getMessages.ts: -------------------------------------------------------------------------------- 1 | import { promptTokensEstimate } from "openai-chat-tokens"; 2 | import type { ChatCompletionMessageParam } from "openai/resources/index.mjs"; 3 | 4 | export const getMessages = async (results: string[], query: string) => { 5 | let resultsCopy = [...results]; 6 | const getSystemPrompt = ( 7 | r: string[] 8 | ) => `You are Dan Abramov, a former engineer on the React.js core team at Meta. You are the leading global expert on React.js and have been asked to answer a question. Use this context to best answer the question. Respond in THE SAME TEXT STYLE as the context below. Do not use any of your own knowledge about these topics but instead, ONLY use the context you are given. Answer in about 1 paragraph, no more. Here is your context: 9 | ${r.length >= 3 ? r.join("\n- ") : "Answer EXACTLY LIKE THIS 'i dont know'"}`; 10 | const messages: ChatCompletionMessageParam[] = [ 11 | { 12 | role: "system", 13 | content: getSystemPrompt(resultsCopy), 14 | }, 15 | { 16 | role: "user", 17 | content: query, 18 | }, 19 | ]; 20 | 21 | console.time("getContext"); 22 | console.timeLog("getContext", "Estimating tokens..."); 23 | let tokenCount = promptTokensEstimate({ messages }); 24 | while (tokenCount > 16385) { 25 | console.timeLog( 26 | "getContext", 27 | `Too many tokens (${tokenCount}), removing last result...` 28 | ); 29 | resultsCopy.pop(); 30 | messages[0]!.content = getSystemPrompt(resultsCopy); 31 | tokenCount = promptTokensEstimate({ messages }); 32 | } 33 | 34 | console.timeLog("getContext", "Got context."); 35 | console.timeEnd("getContext"); 36 | return messages; 37 | }; 38 | -------------------------------------------------------------------------------- /util/replaceTwitterHandles.ts: -------------------------------------------------------------------------------- 1 | export function replaceTwitterHandles(text: string): string { 2 | // Regex to match Twitter handles: starts with @ followed by one or more word characters or underscores 3 | const regex = /@([a-zA-Z0-9_]+)/g; 4 | 5 | // Replace matched handles with Markdown links 6 | return text.replace( 7 | regex, 8 | (match, handle) => `[${match}](https://twitter.com/${handle})` 9 | ); 10 | } 11 | -------------------------------------------------------------------------------- /util/search.ts: -------------------------------------------------------------------------------- 1 | import { DataAPIClient } from "@datastax/astra-db-ts"; 2 | import dotenv from "dotenv"; 3 | import { text2vec } from "./text2vec"; 4 | import { collectionName } from "./collectionName"; 5 | 6 | dotenv.config(); 7 | 8 | export const search = async (query: string) => { 9 | if (!process.env.ASTRA_DB_APPLICATION_TOKEN) { 10 | throw new Error("Please provide an ASTRA_DB_APPLICATION_TOKEN"); 11 | } 12 | 13 | if (!process.env.ASTRA_DB_API_ENDPOINT) { 14 | throw new Error("Please provide an ASTRA_DB_API_ENDPOINT"); 15 | } 16 | 17 | console.time("search"); 18 | console.timeLog("search", "Getting collection..."); 19 | const astraClient = new DataAPIClient(process.env.ASTRA_DB_APPLICATION_TOKEN); 20 | const db = astraClient.db(process.env.ASTRA_DB_API_ENDPOINT); 21 | try { 22 | /** 23 | * @todo this should be idempotent 24 | */ 25 | await db.createCollection(collectionName, { vector: { dimension: 1024 } }); 26 | } catch {} 27 | const collection = db.collection(collectionName); 28 | console.timeLog("search", "Vectorizing query", query, "..."); 29 | const [$vector] = await text2vec([query]); 30 | console.timeLog("search", "Searching..."); 31 | const results = ( 32 | await collection 33 | .find( 34 | {}, 35 | { sort: { $vector: $vector! }, limit: 10, includeSimilarity: true } 36 | ) 37 | .toArray() 38 | ).filter((r) => r.$similarity > 0.76); 39 | console.timeLog("search", "Got results."); 40 | console.timeEnd("search"); 41 | return results; 42 | }; 43 | -------------------------------------------------------------------------------- /util/text2vec.ts: -------------------------------------------------------------------------------- 1 | import OpenAI from "openai"; 2 | 3 | export const text2vec = async (texts: string[]) => { 4 | const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY }); 5 | 6 | const embedding = await openai.embeddings.create({ 7 | model: "text-embedding-3-small", 8 | dimensions: 1024, 9 | input: texts, 10 | }); 11 | 12 | return embedding.data.map((d) => d.embedding); 13 | }; 14 | -------------------------------------------------------------------------------- /util/types.ts: -------------------------------------------------------------------------------- 1 | export type Source = { 2 | id: string; 3 | datetime: number; 4 | authorName: string; 5 | authorAvatarUrl: string; 6 | authorHandle: string; 7 | text: string; 8 | }; 9 | --------------------------------------------------------------------------------