├── .env.example ├── .gitignore ├── .vscode ├── extensions.json └── launch.json ├── README.md ├── astro.config.mjs ├── package.json ├── pnpm-lock.yaml ├── public ├── favicon.svg └── text │ └── c1a098ffcb49079c8180b18c7b15229a.txt ├── src ├── components │ ├── App.svelte │ ├── StepChat.svelte │ ├── StepLoading.svelte │ └── StepUpload.svelte ├── env.d.ts ├── layouts │ └── Layout.astro ├── pages │ ├── api │ │ ├── ask.ts │ │ └── upload.ts │ └── index.astro ├── store.ts └── utils │ └── sse.ts ├── svelte.config.js ├── tailwind.config.mjs └── tsconfig.json /.env.example: -------------------------------------------------------------------------------- 1 | CLOUDINARY_SECRET="your-api-secret" 2 | OPENAI_KEY="your-api-key" 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # build output 2 | dist/ 3 | 4 | # generated types 5 | .astro/ 6 | 7 | # dependencies 8 | node_modules/ 9 | 10 | # logs 11 | npm-debug.log* 12 | yarn-debug.log* 13 | yarn-error.log* 14 | pnpm-debug.log* 15 | 16 | # environment variables 17 | .env 18 | .env.production 19 | 20 | # macOS-specific files 21 | .DS_Store 22 | 23 | # Packages 24 | package-lock.json 25 | 26 | # Idles 27 | .idea -------------------------------------------------------------------------------- /.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 | App para hablar con tu PDF con IA. 2 | -------------------------------------------------------------------------------- /astro.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'astro/config'; 2 | import tailwind from "@astrojs/tailwind"; 3 | 4 | import svelte from "@astrojs/svelte"; 5 | 6 | // https://astro.build/config 7 | export default defineConfig({ 8 | integrations: [tailwind(), svelte()], 9 | output: 'server' 10 | }); -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "chat-with-pdf", 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.4.1", 14 | "@astrojs/svelte": "^5.0.3", 15 | "@astrojs/tailwind": "^5.1.0", 16 | "astro": "^4.3.0", 17 | "cloudinary": "^2.0.0", 18 | "openai": "^4.26.0", 19 | "svelte": "^4.2.9", 20 | "svelte-file-dropzone": "^2.0.4", 21 | "tailwindcss": "^3.4.1", 22 | "typescript": "^5.3.3" 23 | }, 24 | "devDependencies": { 25 | "flowbite": "^2.2.1", 26 | "flowbite-svelte": "^0.44.22" 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /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.4.1 10 | version: 0.4.1(typescript@5.3.3) 11 | '@astrojs/svelte': 12 | specifier: ^5.0.3 13 | version: 5.0.3(astro@4.3.0)(svelte@4.2.9)(typescript@5.3.3)(vite@5.0.12) 14 | '@astrojs/tailwind': 15 | specifier: ^5.1.0 16 | version: 5.1.0(astro@4.3.0)(tailwindcss@3.4.1) 17 | astro: 18 | specifier: ^4.3.0 19 | version: 4.3.0(typescript@5.3.3) 20 | cloudinary: 21 | specifier: ^2.0.0 22 | version: 2.0.0 23 | openai: 24 | specifier: ^4.26.0 25 | version: 4.26.0 26 | svelte: 27 | specifier: ^4.2.9 28 | version: 4.2.9 29 | svelte-file-dropzone: 30 | specifier: ^2.0.4 31 | version: 2.0.4(svelte@4.2.9) 32 | tailwindcss: 33 | specifier: ^3.4.1 34 | version: 3.4.1 35 | typescript: 36 | specifier: ^5.3.3 37 | version: 5.3.3 38 | 39 | devDependencies: 40 | flowbite: 41 | specifier: ^2.2.1 42 | version: 2.2.1 43 | flowbite-svelte: 44 | specifier: ^0.44.22 45 | version: 0.44.22(svelte@4.2.9) 46 | 47 | packages: 48 | 49 | /@alloc/quick-lru@5.2.0: 50 | resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} 51 | engines: {node: '>=10'} 52 | dev: false 53 | 54 | /@ampproject/remapping@2.2.1: 55 | resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} 56 | engines: {node: '>=6.0.0'} 57 | dependencies: 58 | '@jridgewell/gen-mapping': 0.3.3 59 | '@jridgewell/trace-mapping': 0.3.22 60 | 61 | /@astrojs/check@0.4.1(typescript@5.3.3): 62 | resolution: {integrity: sha512-XEsuU4TlWkgcsvdeessq5mXLXV1fejtxIioCPv/FfhTzb1bDYe2BtLiSBK+rFTyD9Hl686YOas9AGNMJcpoRsw==} 63 | hasBin: true 64 | peerDependencies: 65 | typescript: ^5.0.0 66 | dependencies: 67 | '@astrojs/language-server': 2.6.2(typescript@5.3.3) 68 | chokidar: 3.5.3 69 | fast-glob: 3.3.2 70 | kleur: 4.1.5 71 | typescript: 5.3.3 72 | yargs: 17.7.2 73 | transitivePeerDependencies: 74 | - prettier 75 | - prettier-plugin-astro 76 | dev: false 77 | 78 | /@astrojs/compiler@2.5.2: 79 | resolution: {integrity: sha512-fm9HNYu1tVnJjZYHE+SdDM5k6fZKNPXS9PwT43Mf6l4HVGx8d1jQwhGQqCvLkYJJBwQ9OysiexFMt7wtNuXhmQ==} 80 | dev: false 81 | 82 | /@astrojs/internal-helpers@0.2.1: 83 | resolution: {integrity: sha512-06DD2ZnItMwUnH81LBLco3tWjcZ1lGU9rLCCBaeUCGYe9cI0wKyY2W3kDyoW1I6GmcWgt1fu+D1CTvz+FIKf8A==} 84 | dev: false 85 | 86 | /@astrojs/language-server@2.6.2(typescript@5.3.3): 87 | resolution: {integrity: sha512-RYzPRhS/WBXK5JtfR+0+nGj+N3VbJd5jU/uSNUev9baUx/RLmUwDk1f6Oy8QDEfDDLAr76Ig8YeDD/nxPdBSLw==} 88 | hasBin: true 89 | peerDependencies: 90 | prettier: ^3.0.0 91 | prettier-plugin-astro: '>=0.11.0' 92 | peerDependenciesMeta: 93 | prettier: 94 | optional: true 95 | prettier-plugin-astro: 96 | optional: true 97 | dependencies: 98 | '@astrojs/compiler': 2.5.2 99 | '@jridgewell/sourcemap-codec': 1.4.15 100 | '@volar/kit': 1.11.1(typescript@5.3.3) 101 | '@volar/language-core': 1.11.1 102 | '@volar/language-server': 1.11.1 103 | '@volar/language-service': 1.11.1 104 | '@volar/source-map': 1.11.1 105 | '@volar/typescript': 1.11.1 106 | fast-glob: 3.3.2 107 | muggle-string: 0.3.1 108 | volar-service-css: 0.0.17(@volar/language-service@1.11.1) 109 | volar-service-emmet: 0.0.17(@volar/language-service@1.11.1) 110 | volar-service-html: 0.0.17(@volar/language-service@1.11.1) 111 | volar-service-prettier: 0.0.17(@volar/language-service@1.11.1) 112 | volar-service-typescript: 0.0.17(@volar/language-service@1.11.1)(@volar/typescript@1.11.1) 113 | volar-service-typescript-twoslash-queries: 0.0.17(@volar/language-service@1.11.1) 114 | vscode-html-languageservice: 5.1.2 115 | vscode-uri: 3.0.8 116 | transitivePeerDependencies: 117 | - typescript 118 | dev: false 119 | 120 | /@astrojs/markdown-remark@4.2.1: 121 | resolution: {integrity: sha512-2RQBIwrq+2qPYtp99bH+eL5hfbK0BoxXla85lHsRpIX/IsGqFrPX6pXI2cbWPihBwGbKCdxS6uZNX2QerZWwpQ==} 122 | dependencies: 123 | '@astrojs/prism': 3.0.0 124 | github-slugger: 2.0.0 125 | import-meta-resolve: 4.0.0 126 | mdast-util-definitions: 6.0.0 127 | rehype-raw: 7.0.0 128 | rehype-stringify: 10.0.0 129 | remark-gfm: 4.0.0 130 | remark-parse: 11.0.0 131 | remark-rehype: 11.1.0 132 | remark-smartypants: 2.1.0 133 | shikiji: 0.9.19 134 | unified: 11.0.4 135 | unist-util-visit: 5.0.0 136 | vfile: 6.0.1 137 | transitivePeerDependencies: 138 | - supports-color 139 | dev: false 140 | 141 | /@astrojs/prism@3.0.0: 142 | resolution: {integrity: sha512-g61lZupWq1bYbcBnYZqdjndShr/J3l/oFobBKPA3+qMat146zce3nz2kdO4giGbhYDt4gYdhmoBz0vZJ4sIurQ==} 143 | engines: {node: '>=18.14.1'} 144 | dependencies: 145 | prismjs: 1.29.0 146 | dev: false 147 | 148 | /@astrojs/svelte@5.0.3(astro@4.3.0)(svelte@4.2.9)(typescript@5.3.3)(vite@5.0.12): 149 | resolution: {integrity: sha512-6TUBRUxmsEczKPBT6oDUAfvzuFCmITuhZfKPT5ZtOOyj9XOVnEnj/Iobd3ajKUbpWNYX7qZVAd1KMkmJc1Nhsg==} 150 | engines: {node: '>=18.14.1'} 151 | peerDependencies: 152 | astro: ^4.0.0 153 | svelte: ^4.0.0 || ^5.0.0-next.1 154 | dependencies: 155 | '@sveltejs/vite-plugin-svelte': 3.0.2(svelte@4.2.9)(vite@5.0.12) 156 | astro: 4.3.0(typescript@5.3.3) 157 | svelte: 4.2.9 158 | svelte2tsx: 0.6.27(svelte@4.2.9)(typescript@5.3.3) 159 | transitivePeerDependencies: 160 | - supports-color 161 | - typescript 162 | - vite 163 | dev: false 164 | 165 | /@astrojs/tailwind@5.1.0(astro@4.3.0)(tailwindcss@3.4.1): 166 | resolution: {integrity: sha512-BJoCDKuWhU9FT2qYg+fr6Nfb3qP4ShtyjXGHKA/4mHN94z7BGcmauQK23iy+YH5qWvTnhqkd6mQPQ1yTZTe9Ig==} 167 | peerDependencies: 168 | astro: ^3.0.0 || ^4.0.0 169 | tailwindcss: ^3.0.24 170 | dependencies: 171 | astro: 4.3.0(typescript@5.3.3) 172 | autoprefixer: 10.4.17(postcss@8.4.33) 173 | postcss: 8.4.33 174 | postcss-load-config: 4.0.2(postcss@8.4.33) 175 | tailwindcss: 3.4.1 176 | transitivePeerDependencies: 177 | - ts-node 178 | dev: false 179 | 180 | /@astrojs/telemetry@3.0.4: 181 | resolution: {integrity: sha512-A+0c7k/Xy293xx6odsYZuXiaHO0PL+bnDoXOc47sGDF5ffIKdKQGRPFl2NMlCF4L0NqN4Ynbgnaip+pPF0s7pQ==} 182 | engines: {node: '>=18.14.1'} 183 | dependencies: 184 | ci-info: 3.9.0 185 | debug: 4.3.4 186 | dlv: 1.1.3 187 | dset: 3.1.3 188 | is-docker: 3.0.0 189 | is-wsl: 3.1.0 190 | which-pm-runs: 1.1.0 191 | transitivePeerDependencies: 192 | - supports-color 193 | dev: false 194 | 195 | /@babel/code-frame@7.23.5: 196 | resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} 197 | engines: {node: '>=6.9.0'} 198 | dependencies: 199 | '@babel/highlight': 7.23.4 200 | chalk: 2.4.2 201 | dev: false 202 | 203 | /@babel/compat-data@7.23.5: 204 | resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==} 205 | engines: {node: '>=6.9.0'} 206 | dev: false 207 | 208 | /@babel/core@7.23.9: 209 | resolution: {integrity: sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==} 210 | engines: {node: '>=6.9.0'} 211 | dependencies: 212 | '@ampproject/remapping': 2.2.1 213 | '@babel/code-frame': 7.23.5 214 | '@babel/generator': 7.23.6 215 | '@babel/helper-compilation-targets': 7.23.6 216 | '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.9) 217 | '@babel/helpers': 7.23.9 218 | '@babel/parser': 7.23.9 219 | '@babel/template': 7.23.9 220 | '@babel/traverse': 7.23.9 221 | '@babel/types': 7.23.9 222 | convert-source-map: 2.0.0 223 | debug: 4.3.4 224 | gensync: 1.0.0-beta.2 225 | json5: 2.2.3 226 | semver: 6.3.1 227 | transitivePeerDependencies: 228 | - supports-color 229 | dev: false 230 | 231 | /@babel/generator@7.23.6: 232 | resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} 233 | engines: {node: '>=6.9.0'} 234 | dependencies: 235 | '@babel/types': 7.23.9 236 | '@jridgewell/gen-mapping': 0.3.3 237 | '@jridgewell/trace-mapping': 0.3.22 238 | jsesc: 2.5.2 239 | dev: false 240 | 241 | /@babel/helper-annotate-as-pure@7.22.5: 242 | resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} 243 | engines: {node: '>=6.9.0'} 244 | dependencies: 245 | '@babel/types': 7.23.9 246 | dev: false 247 | 248 | /@babel/helper-compilation-targets@7.23.6: 249 | resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} 250 | engines: {node: '>=6.9.0'} 251 | dependencies: 252 | '@babel/compat-data': 7.23.5 253 | '@babel/helper-validator-option': 7.23.5 254 | browserslist: 4.22.3 255 | lru-cache: 5.1.1 256 | semver: 6.3.1 257 | dev: false 258 | 259 | /@babel/helper-environment-visitor@7.22.20: 260 | resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} 261 | engines: {node: '>=6.9.0'} 262 | dev: false 263 | 264 | /@babel/helper-function-name@7.23.0: 265 | resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} 266 | engines: {node: '>=6.9.0'} 267 | dependencies: 268 | '@babel/template': 7.23.9 269 | '@babel/types': 7.23.9 270 | dev: false 271 | 272 | /@babel/helper-hoist-variables@7.22.5: 273 | resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} 274 | engines: {node: '>=6.9.0'} 275 | dependencies: 276 | '@babel/types': 7.23.9 277 | dev: false 278 | 279 | /@babel/helper-module-imports@7.22.15: 280 | resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} 281 | engines: {node: '>=6.9.0'} 282 | dependencies: 283 | '@babel/types': 7.23.9 284 | dev: false 285 | 286 | /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.9): 287 | resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} 288 | engines: {node: '>=6.9.0'} 289 | peerDependencies: 290 | '@babel/core': ^7.0.0 291 | dependencies: 292 | '@babel/core': 7.23.9 293 | '@babel/helper-environment-visitor': 7.22.20 294 | '@babel/helper-module-imports': 7.22.15 295 | '@babel/helper-simple-access': 7.22.5 296 | '@babel/helper-split-export-declaration': 7.22.6 297 | '@babel/helper-validator-identifier': 7.22.20 298 | dev: false 299 | 300 | /@babel/helper-plugin-utils@7.22.5: 301 | resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} 302 | engines: {node: '>=6.9.0'} 303 | dev: false 304 | 305 | /@babel/helper-simple-access@7.22.5: 306 | resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} 307 | engines: {node: '>=6.9.0'} 308 | dependencies: 309 | '@babel/types': 7.23.9 310 | dev: false 311 | 312 | /@babel/helper-split-export-declaration@7.22.6: 313 | resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} 314 | engines: {node: '>=6.9.0'} 315 | dependencies: 316 | '@babel/types': 7.23.9 317 | dev: false 318 | 319 | /@babel/helper-string-parser@7.23.4: 320 | resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} 321 | engines: {node: '>=6.9.0'} 322 | dev: false 323 | 324 | /@babel/helper-validator-identifier@7.22.20: 325 | resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} 326 | engines: {node: '>=6.9.0'} 327 | dev: false 328 | 329 | /@babel/helper-validator-option@7.23.5: 330 | resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} 331 | engines: {node: '>=6.9.0'} 332 | dev: false 333 | 334 | /@babel/helpers@7.23.9: 335 | resolution: {integrity: sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==} 336 | engines: {node: '>=6.9.0'} 337 | dependencies: 338 | '@babel/template': 7.23.9 339 | '@babel/traverse': 7.23.9 340 | '@babel/types': 7.23.9 341 | transitivePeerDependencies: 342 | - supports-color 343 | dev: false 344 | 345 | /@babel/highlight@7.23.4: 346 | resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} 347 | engines: {node: '>=6.9.0'} 348 | dependencies: 349 | '@babel/helper-validator-identifier': 7.22.20 350 | chalk: 2.4.2 351 | js-tokens: 4.0.0 352 | dev: false 353 | 354 | /@babel/parser@7.23.9: 355 | resolution: {integrity: sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==} 356 | engines: {node: '>=6.0.0'} 357 | hasBin: true 358 | dependencies: 359 | '@babel/types': 7.23.9 360 | dev: false 361 | 362 | /@babel/plugin-syntax-jsx@7.23.3(@babel/core@7.23.9): 363 | resolution: {integrity: sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==} 364 | engines: {node: '>=6.9.0'} 365 | peerDependencies: 366 | '@babel/core': ^7.0.0-0 367 | dependencies: 368 | '@babel/core': 7.23.9 369 | '@babel/helper-plugin-utils': 7.22.5 370 | dev: false 371 | 372 | /@babel/plugin-transform-react-jsx@7.23.4(@babel/core@7.23.9): 373 | resolution: {integrity: sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==} 374 | engines: {node: '>=6.9.0'} 375 | peerDependencies: 376 | '@babel/core': ^7.0.0-0 377 | dependencies: 378 | '@babel/core': 7.23.9 379 | '@babel/helper-annotate-as-pure': 7.22.5 380 | '@babel/helper-module-imports': 7.22.15 381 | '@babel/helper-plugin-utils': 7.22.5 382 | '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.23.9) 383 | '@babel/types': 7.23.9 384 | dev: false 385 | 386 | /@babel/runtime@7.23.9: 387 | resolution: {integrity: sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==} 388 | engines: {node: '>=6.9.0'} 389 | dependencies: 390 | regenerator-runtime: 0.14.1 391 | dev: true 392 | 393 | /@babel/template@7.23.9: 394 | resolution: {integrity: sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==} 395 | engines: {node: '>=6.9.0'} 396 | dependencies: 397 | '@babel/code-frame': 7.23.5 398 | '@babel/parser': 7.23.9 399 | '@babel/types': 7.23.9 400 | dev: false 401 | 402 | /@babel/traverse@7.23.9: 403 | resolution: {integrity: sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==} 404 | engines: {node: '>=6.9.0'} 405 | dependencies: 406 | '@babel/code-frame': 7.23.5 407 | '@babel/generator': 7.23.6 408 | '@babel/helper-environment-visitor': 7.22.20 409 | '@babel/helper-function-name': 7.23.0 410 | '@babel/helper-hoist-variables': 7.22.5 411 | '@babel/helper-split-export-declaration': 7.22.6 412 | '@babel/parser': 7.23.9 413 | '@babel/types': 7.23.9 414 | debug: 4.3.4 415 | globals: 11.12.0 416 | transitivePeerDependencies: 417 | - supports-color 418 | dev: false 419 | 420 | /@babel/types@7.23.9: 421 | resolution: {integrity: sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==} 422 | engines: {node: '>=6.9.0'} 423 | dependencies: 424 | '@babel/helper-string-parser': 7.23.4 425 | '@babel/helper-validator-identifier': 7.22.20 426 | to-fast-properties: 2.0.0 427 | dev: false 428 | 429 | /@emmetio/abbreviation@2.3.3: 430 | resolution: {integrity: sha512-mgv58UrU3rh4YgbE/TzgLQwJ3pFsHHhCLqY20aJq+9comytTXUDNGG/SMtSeMJdkpxgXSXunBGLD8Boka3JyVA==} 431 | dependencies: 432 | '@emmetio/scanner': 1.0.4 433 | dev: false 434 | 435 | /@emmetio/css-abbreviation@2.1.8: 436 | resolution: {integrity: sha512-s9yjhJ6saOO/uk1V74eifykk2CBYi01STTK3WlXWGOepyKa23ymJ053+DNQjpFcy1ingpaO7AxCcwLvHFY9tuw==} 437 | dependencies: 438 | '@emmetio/scanner': 1.0.4 439 | dev: false 440 | 441 | /@emmetio/scanner@1.0.4: 442 | resolution: {integrity: sha512-IqRuJtQff7YHHBk4G8YZ45uB9BaAGcwQeVzgj/zj8/UdOhtQpEIupUhSk8dys6spFIWVZVeK20CzGEnqR5SbqA==} 443 | dev: false 444 | 445 | /@esbuild/aix-ppc64@0.19.12: 446 | resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==} 447 | engines: {node: '>=12'} 448 | cpu: [ppc64] 449 | os: [aix] 450 | requiresBuild: true 451 | dev: false 452 | optional: true 453 | 454 | /@esbuild/android-arm64@0.19.12: 455 | resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==} 456 | engines: {node: '>=12'} 457 | cpu: [arm64] 458 | os: [android] 459 | requiresBuild: true 460 | dev: false 461 | optional: true 462 | 463 | /@esbuild/android-arm@0.19.12: 464 | resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==} 465 | engines: {node: '>=12'} 466 | cpu: [arm] 467 | os: [android] 468 | requiresBuild: true 469 | dev: false 470 | optional: true 471 | 472 | /@esbuild/android-x64@0.19.12: 473 | resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==} 474 | engines: {node: '>=12'} 475 | cpu: [x64] 476 | os: [android] 477 | requiresBuild: true 478 | dev: false 479 | optional: true 480 | 481 | /@esbuild/darwin-arm64@0.19.12: 482 | resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==} 483 | engines: {node: '>=12'} 484 | cpu: [arm64] 485 | os: [darwin] 486 | requiresBuild: true 487 | dev: false 488 | optional: true 489 | 490 | /@esbuild/darwin-x64@0.19.12: 491 | resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==} 492 | engines: {node: '>=12'} 493 | cpu: [x64] 494 | os: [darwin] 495 | requiresBuild: true 496 | dev: false 497 | optional: true 498 | 499 | /@esbuild/freebsd-arm64@0.19.12: 500 | resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==} 501 | engines: {node: '>=12'} 502 | cpu: [arm64] 503 | os: [freebsd] 504 | requiresBuild: true 505 | dev: false 506 | optional: true 507 | 508 | /@esbuild/freebsd-x64@0.19.12: 509 | resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==} 510 | engines: {node: '>=12'} 511 | cpu: [x64] 512 | os: [freebsd] 513 | requiresBuild: true 514 | dev: false 515 | optional: true 516 | 517 | /@esbuild/linux-arm64@0.19.12: 518 | resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==} 519 | engines: {node: '>=12'} 520 | cpu: [arm64] 521 | os: [linux] 522 | requiresBuild: true 523 | dev: false 524 | optional: true 525 | 526 | /@esbuild/linux-arm@0.19.12: 527 | resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==} 528 | engines: {node: '>=12'} 529 | cpu: [arm] 530 | os: [linux] 531 | requiresBuild: true 532 | dev: false 533 | optional: true 534 | 535 | /@esbuild/linux-ia32@0.19.12: 536 | resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==} 537 | engines: {node: '>=12'} 538 | cpu: [ia32] 539 | os: [linux] 540 | requiresBuild: true 541 | dev: false 542 | optional: true 543 | 544 | /@esbuild/linux-loong64@0.19.12: 545 | resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==} 546 | engines: {node: '>=12'} 547 | cpu: [loong64] 548 | os: [linux] 549 | requiresBuild: true 550 | dev: false 551 | optional: true 552 | 553 | /@esbuild/linux-mips64el@0.19.12: 554 | resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==} 555 | engines: {node: '>=12'} 556 | cpu: [mips64el] 557 | os: [linux] 558 | requiresBuild: true 559 | dev: false 560 | optional: true 561 | 562 | /@esbuild/linux-ppc64@0.19.12: 563 | resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==} 564 | engines: {node: '>=12'} 565 | cpu: [ppc64] 566 | os: [linux] 567 | requiresBuild: true 568 | dev: false 569 | optional: true 570 | 571 | /@esbuild/linux-riscv64@0.19.12: 572 | resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==} 573 | engines: {node: '>=12'} 574 | cpu: [riscv64] 575 | os: [linux] 576 | requiresBuild: true 577 | dev: false 578 | optional: true 579 | 580 | /@esbuild/linux-s390x@0.19.12: 581 | resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==} 582 | engines: {node: '>=12'} 583 | cpu: [s390x] 584 | os: [linux] 585 | requiresBuild: true 586 | dev: false 587 | optional: true 588 | 589 | /@esbuild/linux-x64@0.19.12: 590 | resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==} 591 | engines: {node: '>=12'} 592 | cpu: [x64] 593 | os: [linux] 594 | requiresBuild: true 595 | dev: false 596 | optional: true 597 | 598 | /@esbuild/netbsd-x64@0.19.12: 599 | resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==} 600 | engines: {node: '>=12'} 601 | cpu: [x64] 602 | os: [netbsd] 603 | requiresBuild: true 604 | dev: false 605 | optional: true 606 | 607 | /@esbuild/openbsd-x64@0.19.12: 608 | resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==} 609 | engines: {node: '>=12'} 610 | cpu: [x64] 611 | os: [openbsd] 612 | requiresBuild: true 613 | dev: false 614 | optional: true 615 | 616 | /@esbuild/sunos-x64@0.19.12: 617 | resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==} 618 | engines: {node: '>=12'} 619 | cpu: [x64] 620 | os: [sunos] 621 | requiresBuild: true 622 | dev: false 623 | optional: true 624 | 625 | /@esbuild/win32-arm64@0.19.12: 626 | resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==} 627 | engines: {node: '>=12'} 628 | cpu: [arm64] 629 | os: [win32] 630 | requiresBuild: true 631 | dev: false 632 | optional: true 633 | 634 | /@esbuild/win32-ia32@0.19.12: 635 | resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==} 636 | engines: {node: '>=12'} 637 | cpu: [ia32] 638 | os: [win32] 639 | requiresBuild: true 640 | dev: false 641 | optional: true 642 | 643 | /@esbuild/win32-x64@0.19.12: 644 | resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==} 645 | engines: {node: '>=12'} 646 | cpu: [x64] 647 | os: [win32] 648 | requiresBuild: true 649 | dev: false 650 | optional: true 651 | 652 | /@floating-ui/core@1.6.0: 653 | resolution: {integrity: sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g==} 654 | dependencies: 655 | '@floating-ui/utils': 0.2.1 656 | dev: true 657 | 658 | /@floating-ui/dom@1.6.1: 659 | resolution: {integrity: sha512-iA8qE43/H5iGozC3W0YSnVSW42Vh522yyM1gj+BqRwVsTNOyr231PsXDaV04yT39PsO0QL2QpbI/M0ZaLUQgRQ==} 660 | dependencies: 661 | '@floating-ui/core': 1.6.0 662 | '@floating-ui/utils': 0.2.1 663 | dev: true 664 | 665 | /@floating-ui/utils@0.2.1: 666 | resolution: {integrity: sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==} 667 | dev: true 668 | 669 | /@isaacs/cliui@8.0.2: 670 | resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} 671 | engines: {node: '>=12'} 672 | dependencies: 673 | string-width: 5.1.2 674 | string-width-cjs: /string-width@4.2.3 675 | strip-ansi: 7.1.0 676 | strip-ansi-cjs: /strip-ansi@6.0.1 677 | wrap-ansi: 8.1.0 678 | wrap-ansi-cjs: /wrap-ansi@7.0.0 679 | dev: false 680 | 681 | /@jridgewell/gen-mapping@0.3.3: 682 | resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} 683 | engines: {node: '>=6.0.0'} 684 | dependencies: 685 | '@jridgewell/set-array': 1.1.2 686 | '@jridgewell/sourcemap-codec': 1.4.15 687 | '@jridgewell/trace-mapping': 0.3.22 688 | 689 | /@jridgewell/resolve-uri@3.1.1: 690 | resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} 691 | engines: {node: '>=6.0.0'} 692 | 693 | /@jridgewell/set-array@1.1.2: 694 | resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} 695 | engines: {node: '>=6.0.0'} 696 | 697 | /@jridgewell/sourcemap-codec@1.4.15: 698 | resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} 699 | 700 | /@jridgewell/trace-mapping@0.3.22: 701 | resolution: {integrity: sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==} 702 | dependencies: 703 | '@jridgewell/resolve-uri': 3.1.1 704 | '@jridgewell/sourcemap-codec': 1.4.15 705 | 706 | /@nodelib/fs.scandir@2.1.5: 707 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 708 | engines: {node: '>= 8'} 709 | dependencies: 710 | '@nodelib/fs.stat': 2.0.5 711 | run-parallel: 1.2.0 712 | dev: false 713 | 714 | /@nodelib/fs.stat@2.0.5: 715 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 716 | engines: {node: '>= 8'} 717 | dev: false 718 | 719 | /@nodelib/fs.walk@1.2.8: 720 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 721 | engines: {node: '>= 8'} 722 | dependencies: 723 | '@nodelib/fs.scandir': 2.1.5 724 | fastq: 1.17.0 725 | dev: false 726 | 727 | /@pkgjs/parseargs@0.11.0: 728 | resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} 729 | engines: {node: '>=14'} 730 | requiresBuild: true 731 | dev: false 732 | optional: true 733 | 734 | /@popperjs/core@2.11.8: 735 | resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} 736 | dev: true 737 | 738 | /@rollup/rollup-android-arm-eabi@4.9.6: 739 | resolution: {integrity: sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg==} 740 | cpu: [arm] 741 | os: [android] 742 | requiresBuild: true 743 | dev: false 744 | optional: true 745 | 746 | /@rollup/rollup-android-arm64@4.9.6: 747 | resolution: {integrity: sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw==} 748 | cpu: [arm64] 749 | os: [android] 750 | requiresBuild: true 751 | dev: false 752 | optional: true 753 | 754 | /@rollup/rollup-darwin-arm64@4.9.6: 755 | resolution: {integrity: sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw==} 756 | cpu: [arm64] 757 | os: [darwin] 758 | requiresBuild: true 759 | dev: false 760 | optional: true 761 | 762 | /@rollup/rollup-darwin-x64@4.9.6: 763 | resolution: {integrity: sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog==} 764 | cpu: [x64] 765 | os: [darwin] 766 | requiresBuild: true 767 | dev: false 768 | optional: true 769 | 770 | /@rollup/rollup-linux-arm-gnueabihf@4.9.6: 771 | resolution: {integrity: sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ==} 772 | cpu: [arm] 773 | os: [linux] 774 | requiresBuild: true 775 | dev: false 776 | optional: true 777 | 778 | /@rollup/rollup-linux-arm64-gnu@4.9.6: 779 | resolution: {integrity: sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ==} 780 | cpu: [arm64] 781 | os: [linux] 782 | requiresBuild: true 783 | dev: false 784 | optional: true 785 | 786 | /@rollup/rollup-linux-arm64-musl@4.9.6: 787 | resolution: {integrity: sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ==} 788 | cpu: [arm64] 789 | os: [linux] 790 | requiresBuild: true 791 | dev: false 792 | optional: true 793 | 794 | /@rollup/rollup-linux-riscv64-gnu@4.9.6: 795 | resolution: {integrity: sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA==} 796 | cpu: [riscv64] 797 | os: [linux] 798 | requiresBuild: true 799 | dev: false 800 | optional: true 801 | 802 | /@rollup/rollup-linux-x64-gnu@4.9.6: 803 | resolution: {integrity: sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw==} 804 | cpu: [x64] 805 | os: [linux] 806 | requiresBuild: true 807 | dev: false 808 | optional: true 809 | 810 | /@rollup/rollup-linux-x64-musl@4.9.6: 811 | resolution: {integrity: sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ==} 812 | cpu: [x64] 813 | os: [linux] 814 | requiresBuild: true 815 | dev: false 816 | optional: true 817 | 818 | /@rollup/rollup-win32-arm64-msvc@4.9.6: 819 | resolution: {integrity: sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA==} 820 | cpu: [arm64] 821 | os: [win32] 822 | requiresBuild: true 823 | dev: false 824 | optional: true 825 | 826 | /@rollup/rollup-win32-ia32-msvc@4.9.6: 827 | resolution: {integrity: sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ==} 828 | cpu: [ia32] 829 | os: [win32] 830 | requiresBuild: true 831 | dev: false 832 | optional: true 833 | 834 | /@rollup/rollup-win32-x64-msvc@4.9.6: 835 | resolution: {integrity: sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==} 836 | cpu: [x64] 837 | os: [win32] 838 | requiresBuild: true 839 | dev: false 840 | optional: true 841 | 842 | /@sveltejs/vite-plugin-svelte-inspector@2.0.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.9)(vite@5.0.12): 843 | resolution: {integrity: sha512-gjr9ZFg1BSlIpfZ4PRewigrvYmHWbDrq2uvvPB1AmTWKuM+dI1JXQSUu2pIrYLb/QncyiIGkFDFKTwJ0XqQZZg==} 844 | engines: {node: ^18.0.0 || >=20} 845 | peerDependencies: 846 | '@sveltejs/vite-plugin-svelte': ^3.0.0 847 | svelte: ^4.0.0 || ^5.0.0-next.0 848 | vite: ^5.0.0 849 | dependencies: 850 | '@sveltejs/vite-plugin-svelte': 3.0.2(svelte@4.2.9)(vite@5.0.12) 851 | debug: 4.3.4 852 | svelte: 4.2.9 853 | vite: 5.0.12 854 | transitivePeerDependencies: 855 | - supports-color 856 | dev: false 857 | 858 | /@sveltejs/vite-plugin-svelte@3.0.2(svelte@4.2.9)(vite@5.0.12): 859 | resolution: {integrity: sha512-MpmF/cju2HqUls50WyTHQBZUV3ovV/Uk8k66AN2gwHogNAG8wnW8xtZDhzNBsFJJuvmq1qnzA5kE7YfMJNFv2Q==} 860 | engines: {node: ^18.0.0 || >=20} 861 | peerDependencies: 862 | svelte: ^4.0.0 || ^5.0.0-next.0 863 | vite: ^5.0.0 864 | dependencies: 865 | '@sveltejs/vite-plugin-svelte-inspector': 2.0.0(@sveltejs/vite-plugin-svelte@3.0.2)(svelte@4.2.9)(vite@5.0.12) 866 | debug: 4.3.4 867 | deepmerge: 4.3.1 868 | kleur: 4.1.5 869 | magic-string: 0.30.6 870 | svelte: 4.2.9 871 | svelte-hmr: 0.15.3(svelte@4.2.9) 872 | vite: 5.0.12 873 | vitefu: 0.2.5(vite@5.0.12) 874 | transitivePeerDependencies: 875 | - supports-color 876 | dev: false 877 | 878 | /@types/babel__core@7.20.5: 879 | resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} 880 | dependencies: 881 | '@babel/parser': 7.23.9 882 | '@babel/types': 7.23.9 883 | '@types/babel__generator': 7.6.8 884 | '@types/babel__template': 7.4.4 885 | '@types/babel__traverse': 7.20.5 886 | dev: false 887 | 888 | /@types/babel__generator@7.6.8: 889 | resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} 890 | dependencies: 891 | '@babel/types': 7.23.9 892 | dev: false 893 | 894 | /@types/babel__template@7.4.4: 895 | resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} 896 | dependencies: 897 | '@babel/parser': 7.23.9 898 | '@babel/types': 7.23.9 899 | dev: false 900 | 901 | /@types/babel__traverse@7.20.5: 902 | resolution: {integrity: sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==} 903 | dependencies: 904 | '@babel/types': 7.23.9 905 | dev: false 906 | 907 | /@types/debug@4.1.12: 908 | resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} 909 | dependencies: 910 | '@types/ms': 0.7.34 911 | dev: false 912 | 913 | /@types/estree@1.0.5: 914 | resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} 915 | 916 | /@types/hast@3.0.4: 917 | resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} 918 | dependencies: 919 | '@types/unist': 3.0.2 920 | dev: false 921 | 922 | /@types/mdast@4.0.3: 923 | resolution: {integrity: sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==} 924 | dependencies: 925 | '@types/unist': 3.0.2 926 | dev: false 927 | 928 | /@types/ms@0.7.34: 929 | resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} 930 | dev: false 931 | 932 | /@types/nlcst@1.0.4: 933 | resolution: {integrity: sha512-ABoYdNQ/kBSsLvZAekMhIPMQ3YUZvavStpKYs7BjLLuKVmIMA0LUgZ7b54zzuWJRbHF80v1cNf4r90Vd6eMQDg==} 934 | dependencies: 935 | '@types/unist': 2.0.10 936 | dev: false 937 | 938 | /@types/node-fetch@2.6.11: 939 | resolution: {integrity: sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==} 940 | dependencies: 941 | '@types/node': 18.19.14 942 | form-data: 4.0.0 943 | dev: false 944 | 945 | /@types/node@18.19.14: 946 | resolution: {integrity: sha512-EnQ4Us2rmOS64nHDWr0XqAD8DsO6f3XR6lf9UIIrZQpUzPVdN/oPuEzfDWNHSyXLvoGgjuEm/sPwFGSSs35Wtg==} 947 | dependencies: 948 | undici-types: 5.26.5 949 | dev: false 950 | 951 | /@types/unist@2.0.10: 952 | resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==} 953 | dev: false 954 | 955 | /@types/unist@3.0.2: 956 | resolution: {integrity: sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==} 957 | dev: false 958 | 959 | /@ungap/structured-clone@1.2.0: 960 | resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} 961 | dev: false 962 | 963 | /@volar/kit@1.11.1(typescript@5.3.3): 964 | resolution: {integrity: sha512-nqO+Hl9f1ygOK/3M7Hpnw0lhKvuMFhh823nilStpkTmm5WfrUnE+4WaQkb3dC6LM3TZq74j2m88yxRC+Z3sZZw==} 965 | peerDependencies: 966 | typescript: '*' 967 | dependencies: 968 | '@volar/language-service': 1.11.1 969 | typesafe-path: 0.2.2 970 | typescript: 5.3.3 971 | vscode-languageserver-textdocument: 1.0.11 972 | vscode-uri: 3.0.8 973 | dev: false 974 | 975 | /@volar/language-core@1.11.1: 976 | resolution: {integrity: sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==} 977 | dependencies: 978 | '@volar/source-map': 1.11.1 979 | dev: false 980 | 981 | /@volar/language-server@1.11.1: 982 | resolution: {integrity: sha512-XYG4HcML2qimQV9UouQ7c1GuuqQw1NXoNDxAOAcfyYlz43P+HgzGQx4QEou+QMGHJeYIN86foDvkTN3fcopw9A==} 983 | dependencies: 984 | '@volar/language-core': 1.11.1 985 | '@volar/language-service': 1.11.1 986 | '@volar/typescript': 1.11.1 987 | '@vscode/l10n': 0.0.16 988 | path-browserify: 1.0.1 989 | request-light: 0.7.0 990 | vscode-languageserver: 9.0.1 991 | vscode-languageserver-protocol: 3.17.5 992 | vscode-languageserver-textdocument: 1.0.11 993 | vscode-uri: 3.0.8 994 | dev: false 995 | 996 | /@volar/language-service@1.11.1: 997 | resolution: {integrity: sha512-dKo8z1UzQRPHnlXxwfONGrasS1wEWXMoLQiohZ8KgWqZALbekZCwdGImLZD4DeFGNjk3HTTdfeCzo3KjwohjEQ==} 998 | dependencies: 999 | '@volar/language-core': 1.11.1 1000 | '@volar/source-map': 1.11.1 1001 | vscode-languageserver-protocol: 3.17.5 1002 | vscode-languageserver-textdocument: 1.0.11 1003 | vscode-uri: 3.0.8 1004 | dev: false 1005 | 1006 | /@volar/source-map@1.11.1: 1007 | resolution: {integrity: sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==} 1008 | dependencies: 1009 | muggle-string: 0.3.1 1010 | dev: false 1011 | 1012 | /@volar/typescript@1.11.1: 1013 | resolution: {integrity: sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==} 1014 | dependencies: 1015 | '@volar/language-core': 1.11.1 1016 | path-browserify: 1.0.1 1017 | dev: false 1018 | 1019 | /@vscode/emmet-helper@2.9.2: 1020 | resolution: {integrity: sha512-MaGuyW+fa13q3aYsluKqclmh62Hgp0BpKIqS66fCxfOaBcVQ1OnMQxRRgQUYnCkxFISAQlkJ0qWWPyXjro1Qrg==} 1021 | dependencies: 1022 | emmet: 2.4.6 1023 | jsonc-parser: 2.3.1 1024 | vscode-languageserver-textdocument: 1.0.11 1025 | vscode-languageserver-types: 3.17.5 1026 | vscode-uri: 2.1.2 1027 | dev: false 1028 | 1029 | /@vscode/l10n@0.0.16: 1030 | resolution: {integrity: sha512-JT5CvrIYYCrmB+dCana8sUqJEcGB1ZDXNLMQ2+42bW995WmNoenijWMUdZfwmuQUTQcEVVIa2OecZzTYWUW9Cg==} 1031 | dev: false 1032 | 1033 | /@vscode/l10n@0.0.18: 1034 | resolution: {integrity: sha512-KYSIHVmslkaCDyw013pphY+d7x1qV8IZupYfeIfzNA+nsaWHbn5uPuQRvdRFsa9zFzGeudPuoGoZ1Op4jrJXIQ==} 1035 | dev: false 1036 | 1037 | /@yr/monotone-cubic-spline@1.0.3: 1038 | resolution: {integrity: sha512-FQXkOta0XBSUPHndIKON2Y9JeQz5ZeMqLYZVVK93FliNBFm7LNMIZmY6FrMEB9XPcDbE2bekMbZD6kzDkxwYjA==} 1039 | dev: true 1040 | 1041 | /abort-controller@3.0.0: 1042 | resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} 1043 | engines: {node: '>=6.5'} 1044 | dependencies: 1045 | event-target-shim: 5.0.1 1046 | dev: false 1047 | 1048 | /acorn@8.11.3: 1049 | resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} 1050 | engines: {node: '>=0.4.0'} 1051 | hasBin: true 1052 | 1053 | /agentkeepalive@4.5.0: 1054 | resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==} 1055 | engines: {node: '>= 8.0.0'} 1056 | dependencies: 1057 | humanize-ms: 1.2.1 1058 | dev: false 1059 | 1060 | /ansi-align@3.0.1: 1061 | resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} 1062 | dependencies: 1063 | string-width: 4.2.3 1064 | dev: false 1065 | 1066 | /ansi-regex@5.0.1: 1067 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 1068 | engines: {node: '>=8'} 1069 | dev: false 1070 | 1071 | /ansi-regex@6.0.1: 1072 | resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} 1073 | engines: {node: '>=12'} 1074 | dev: false 1075 | 1076 | /ansi-styles@3.2.1: 1077 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} 1078 | engines: {node: '>=4'} 1079 | dependencies: 1080 | color-convert: 1.9.3 1081 | dev: false 1082 | 1083 | /ansi-styles@4.3.0: 1084 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 1085 | engines: {node: '>=8'} 1086 | dependencies: 1087 | color-convert: 2.0.1 1088 | dev: false 1089 | 1090 | /ansi-styles@6.2.1: 1091 | resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} 1092 | engines: {node: '>=12'} 1093 | dev: false 1094 | 1095 | /any-promise@1.3.0: 1096 | resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} 1097 | dev: false 1098 | 1099 | /anymatch@3.1.3: 1100 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} 1101 | engines: {node: '>= 8'} 1102 | dependencies: 1103 | normalize-path: 3.0.0 1104 | picomatch: 2.3.1 1105 | dev: false 1106 | 1107 | /apexcharts@3.45.2: 1108 | resolution: {integrity: sha512-PpuM4sJWy70sUh5U1IFn1m1p45MdHSChLUNnqEoUUUHSU2IHZugFrsVNhov1S8Q0cvfdrCRCvdBtHGSs6PSAWQ==} 1109 | dependencies: 1110 | '@yr/monotone-cubic-spline': 1.0.3 1111 | svg.draggable.js: 2.2.2 1112 | svg.easing.js: 2.0.0 1113 | svg.filter.js: 2.0.2 1114 | svg.pathmorphing.js: 0.1.3 1115 | svg.resize.js: 1.4.3 1116 | svg.select.js: 3.0.1 1117 | dev: true 1118 | 1119 | /arg@5.0.2: 1120 | resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} 1121 | dev: false 1122 | 1123 | /argparse@1.0.10: 1124 | resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} 1125 | dependencies: 1126 | sprintf-js: 1.0.3 1127 | dev: false 1128 | 1129 | /argparse@2.0.1: 1130 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 1131 | dev: false 1132 | 1133 | /aria-query@5.3.0: 1134 | resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} 1135 | dependencies: 1136 | dequal: 2.0.3 1137 | 1138 | /array-iterate@2.0.1: 1139 | resolution: {integrity: sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==} 1140 | dev: false 1141 | 1142 | /astro@4.3.0(typescript@5.3.3): 1143 | resolution: {integrity: sha512-DSn7q7KJ9lmA7B3faz6uaIIRTzJduKNYRAsgXDn+wH1Jso33PFOU3ZcI4knlMAqhFW3MX8WorB8Hg6kR+waQXg==} 1144 | engines: {node: '>=18.14.1', npm: '>=6.14.0'} 1145 | hasBin: true 1146 | dependencies: 1147 | '@astrojs/compiler': 2.5.2 1148 | '@astrojs/internal-helpers': 0.2.1 1149 | '@astrojs/markdown-remark': 4.2.1 1150 | '@astrojs/telemetry': 3.0.4 1151 | '@babel/core': 7.23.9 1152 | '@babel/generator': 7.23.6 1153 | '@babel/parser': 7.23.9 1154 | '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.23.9) 1155 | '@babel/traverse': 7.23.9 1156 | '@babel/types': 7.23.9 1157 | '@types/babel__core': 7.20.5 1158 | acorn: 8.11.3 1159 | aria-query: 5.3.0 1160 | axobject-query: 4.0.0 1161 | boxen: 7.1.1 1162 | chokidar: 3.5.3 1163 | ci-info: 4.0.0 1164 | clsx: 2.1.0 1165 | common-ancestor-path: 1.0.1 1166 | cookie: 0.6.0 1167 | cssesc: 3.0.0 1168 | debug: 4.3.4 1169 | deterministic-object-hash: 2.0.2 1170 | devalue: 4.3.2 1171 | diff: 5.1.0 1172 | dlv: 1.1.3 1173 | dset: 3.1.3 1174 | es-module-lexer: 1.4.1 1175 | esbuild: 0.19.12 1176 | estree-walker: 3.0.3 1177 | execa: 8.0.1 1178 | fast-glob: 3.3.2 1179 | flattie: 1.1.0 1180 | github-slugger: 2.0.0 1181 | gray-matter: 4.0.3 1182 | html-escaper: 3.0.3 1183 | http-cache-semantics: 4.1.1 1184 | js-yaml: 4.1.0 1185 | kleur: 4.1.5 1186 | magic-string: 0.30.6 1187 | mdast-util-to-hast: 13.0.2 1188 | mime: 3.0.0 1189 | ora: 7.0.1 1190 | p-limit: 5.0.0 1191 | p-queue: 8.0.1 1192 | path-to-regexp: 6.2.1 1193 | preferred-pm: 3.1.2 1194 | probe-image-size: 7.2.3 1195 | prompts: 2.4.2 1196 | rehype: 13.0.1 1197 | resolve: 1.22.8 1198 | semver: 7.5.4 1199 | server-destroy: 1.0.1 1200 | shikiji: 0.9.19 1201 | string-width: 7.1.0 1202 | strip-ansi: 7.1.0 1203 | tsconfck: 3.0.1(typescript@5.3.3) 1204 | unist-util-visit: 5.0.0 1205 | vfile: 6.0.1 1206 | vite: 5.0.12 1207 | vitefu: 0.2.5(vite@5.0.12) 1208 | which-pm: 2.1.1 1209 | yargs-parser: 21.1.1 1210 | zod: 3.22.4 1211 | optionalDependencies: 1212 | sharp: 0.32.6 1213 | transitivePeerDependencies: 1214 | - '@types/node' 1215 | - less 1216 | - lightningcss 1217 | - sass 1218 | - stylus 1219 | - sugarss 1220 | - supports-color 1221 | - terser 1222 | - typescript 1223 | dev: false 1224 | 1225 | /asynckit@0.4.0: 1226 | resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} 1227 | dev: false 1228 | 1229 | /autoprefixer@10.4.17(postcss@8.4.33): 1230 | resolution: {integrity: sha512-/cpVNRLSfhOtcGflT13P2794gVSgmPgTR+erw5ifnMLZb0UnSlkK4tquLmkd3BhA+nLo5tX8Cu0upUsGKvKbmg==} 1231 | engines: {node: ^10 || ^12 || >=14} 1232 | hasBin: true 1233 | peerDependencies: 1234 | postcss: ^8.1.0 1235 | dependencies: 1236 | browserslist: 4.22.3 1237 | caniuse-lite: 1.0.30001582 1238 | fraction.js: 4.3.7 1239 | normalize-range: 0.1.2 1240 | picocolors: 1.0.0 1241 | postcss: 8.4.33 1242 | postcss-value-parser: 4.2.0 1243 | dev: false 1244 | 1245 | /axobject-query@4.0.0: 1246 | resolution: {integrity: sha512-+60uv1hiVFhHZeO+Lz0RYzsVHy5Wr1ayX0mwda9KPDVLNJgZ1T9Ny7VmFbLDzxsH0D87I86vgj3gFrjTJUYznw==} 1247 | dependencies: 1248 | dequal: 2.0.3 1249 | 1250 | /b4a@1.6.4: 1251 | resolution: {integrity: sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==} 1252 | requiresBuild: true 1253 | dev: false 1254 | optional: true 1255 | 1256 | /bail@2.0.2: 1257 | resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} 1258 | dev: false 1259 | 1260 | /balanced-match@1.0.2: 1261 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 1262 | dev: false 1263 | 1264 | /base-64@0.1.0: 1265 | resolution: {integrity: sha512-Y5gU45svrR5tI2Vt/X9GPd3L0HNIKzGu202EjxrXMpuc2V2CiKgemAbUUsqYmZJvPtCXoUKjNZwBJzsNScUbXA==} 1266 | dev: false 1267 | 1268 | /base-64@1.0.0: 1269 | resolution: {integrity: sha512-kwDPIFCGx0NZHog36dj+tHiwP4QMzsZ3AgMViUBKI0+V5n4U0ufTCUMhnQ04diaRI8EX/QcPfql7zlhZ7j4zgg==} 1270 | dev: false 1271 | 1272 | /base64-js@1.5.1: 1273 | resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} 1274 | dev: false 1275 | 1276 | /binary-extensions@2.2.0: 1277 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} 1278 | engines: {node: '>=8'} 1279 | dev: false 1280 | 1281 | /bl@4.1.0: 1282 | resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} 1283 | requiresBuild: true 1284 | dependencies: 1285 | buffer: 5.7.1 1286 | inherits: 2.0.4 1287 | readable-stream: 3.6.2 1288 | dev: false 1289 | optional: true 1290 | 1291 | /bl@5.1.0: 1292 | resolution: {integrity: sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==} 1293 | dependencies: 1294 | buffer: 6.0.3 1295 | inherits: 2.0.4 1296 | readable-stream: 3.6.2 1297 | dev: false 1298 | 1299 | /boxen@7.1.1: 1300 | resolution: {integrity: sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==} 1301 | engines: {node: '>=14.16'} 1302 | dependencies: 1303 | ansi-align: 3.0.1 1304 | camelcase: 7.0.1 1305 | chalk: 5.3.0 1306 | cli-boxes: 3.0.0 1307 | string-width: 5.1.2 1308 | type-fest: 2.19.0 1309 | widest-line: 4.0.1 1310 | wrap-ansi: 8.1.0 1311 | dev: false 1312 | 1313 | /brace-expansion@2.0.1: 1314 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 1315 | dependencies: 1316 | balanced-match: 1.0.2 1317 | dev: false 1318 | 1319 | /braces@3.0.2: 1320 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 1321 | engines: {node: '>=8'} 1322 | dependencies: 1323 | fill-range: 7.0.1 1324 | dev: false 1325 | 1326 | /browserslist@4.22.3: 1327 | resolution: {integrity: sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==} 1328 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 1329 | hasBin: true 1330 | dependencies: 1331 | caniuse-lite: 1.0.30001582 1332 | electron-to-chromium: 1.4.653 1333 | node-releases: 2.0.14 1334 | update-browserslist-db: 1.0.13(browserslist@4.22.3) 1335 | dev: false 1336 | 1337 | /buffer@5.7.1: 1338 | resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} 1339 | requiresBuild: true 1340 | dependencies: 1341 | base64-js: 1.5.1 1342 | ieee754: 1.2.1 1343 | dev: false 1344 | optional: true 1345 | 1346 | /buffer@6.0.3: 1347 | resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} 1348 | dependencies: 1349 | base64-js: 1.5.1 1350 | ieee754: 1.2.1 1351 | dev: false 1352 | 1353 | /camelcase-css@2.0.1: 1354 | resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} 1355 | engines: {node: '>= 6'} 1356 | dev: false 1357 | 1358 | /camelcase@7.0.1: 1359 | resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==} 1360 | engines: {node: '>=14.16'} 1361 | dev: false 1362 | 1363 | /caniuse-lite@1.0.30001582: 1364 | resolution: {integrity: sha512-vsJG3V5vgfduaQGVxL53uSX/HUzxyr2eA8xCo36OLal7sRcSZbibJtLeh0qja4sFOr/QQGt4opB4tOy+eOgAxg==} 1365 | dev: false 1366 | 1367 | /ccount@2.0.1: 1368 | resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} 1369 | dev: false 1370 | 1371 | /chalk@2.4.2: 1372 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} 1373 | engines: {node: '>=4'} 1374 | dependencies: 1375 | ansi-styles: 3.2.1 1376 | escape-string-regexp: 1.0.5 1377 | supports-color: 5.5.0 1378 | dev: false 1379 | 1380 | /chalk@5.3.0: 1381 | resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} 1382 | engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} 1383 | dev: false 1384 | 1385 | /character-entities-html4@2.1.0: 1386 | resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} 1387 | dev: false 1388 | 1389 | /character-entities-legacy@3.0.0: 1390 | resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} 1391 | dev: false 1392 | 1393 | /character-entities@2.0.2: 1394 | resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} 1395 | dev: false 1396 | 1397 | /charenc@0.0.2: 1398 | resolution: {integrity: sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA==} 1399 | dev: false 1400 | 1401 | /chokidar@3.5.3: 1402 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} 1403 | engines: {node: '>= 8.10.0'} 1404 | dependencies: 1405 | anymatch: 3.1.3 1406 | braces: 3.0.2 1407 | glob-parent: 5.1.2 1408 | is-binary-path: 2.1.0 1409 | is-glob: 4.0.3 1410 | normalize-path: 3.0.0 1411 | readdirp: 3.6.0 1412 | optionalDependencies: 1413 | fsevents: 2.3.3 1414 | dev: false 1415 | 1416 | /chownr@1.1.4: 1417 | resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} 1418 | requiresBuild: true 1419 | dev: false 1420 | optional: true 1421 | 1422 | /ci-info@3.9.0: 1423 | resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} 1424 | engines: {node: '>=8'} 1425 | dev: false 1426 | 1427 | /ci-info@4.0.0: 1428 | resolution: {integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==} 1429 | engines: {node: '>=8'} 1430 | dev: false 1431 | 1432 | /cli-boxes@3.0.0: 1433 | resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} 1434 | engines: {node: '>=10'} 1435 | dev: false 1436 | 1437 | /cli-cursor@4.0.0: 1438 | resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} 1439 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1440 | dependencies: 1441 | restore-cursor: 4.0.0 1442 | dev: false 1443 | 1444 | /cli-spinners@2.9.2: 1445 | resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} 1446 | engines: {node: '>=6'} 1447 | dev: false 1448 | 1449 | /cliui@8.0.1: 1450 | resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} 1451 | engines: {node: '>=12'} 1452 | dependencies: 1453 | string-width: 4.2.3 1454 | strip-ansi: 6.0.1 1455 | wrap-ansi: 7.0.0 1456 | dev: false 1457 | 1458 | /cloudinary-core@2.13.0(lodash@4.17.21): 1459 | resolution: {integrity: sha512-Nt0Q5I2FtenmJghtC4YZ3MZZbGg1wLm84SsxcuVwZ83OyJqG9CNIGp86CiI6iDv3QobaqBUpOT7vg+HqY5HxEA==} 1460 | peerDependencies: 1461 | lodash: '>=4.0' 1462 | dependencies: 1463 | lodash: 4.17.21 1464 | dev: false 1465 | 1466 | /cloudinary@2.0.0: 1467 | resolution: {integrity: sha512-NUbufckg2GiuJjB0DVGFBRNLt4jl+2nOA1KeZv1ub8FCduNFvkcdGF1t9JKeoVVM8Po9wYvjICcecMsjQVq1Jw==} 1468 | engines: {node: '>=9'} 1469 | dependencies: 1470 | cloudinary-core: 2.13.0(lodash@4.17.21) 1471 | lodash: 4.17.21 1472 | q: 1.5.1 1473 | dev: false 1474 | 1475 | /clsx@2.1.0: 1476 | resolution: {integrity: sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==} 1477 | engines: {node: '>=6'} 1478 | dev: false 1479 | 1480 | /code-red@1.0.4: 1481 | resolution: {integrity: sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==} 1482 | dependencies: 1483 | '@jridgewell/sourcemap-codec': 1.4.15 1484 | '@types/estree': 1.0.5 1485 | acorn: 8.11.3 1486 | estree-walker: 3.0.3 1487 | periscopic: 3.1.0 1488 | 1489 | /color-convert@1.9.3: 1490 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} 1491 | dependencies: 1492 | color-name: 1.1.3 1493 | dev: false 1494 | 1495 | /color-convert@2.0.1: 1496 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 1497 | engines: {node: '>=7.0.0'} 1498 | dependencies: 1499 | color-name: 1.1.4 1500 | dev: false 1501 | 1502 | /color-name@1.1.3: 1503 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} 1504 | dev: false 1505 | 1506 | /color-name@1.1.4: 1507 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 1508 | requiresBuild: true 1509 | dev: false 1510 | 1511 | /color-string@1.9.1: 1512 | resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} 1513 | requiresBuild: true 1514 | dependencies: 1515 | color-name: 1.1.4 1516 | simple-swizzle: 0.2.2 1517 | dev: false 1518 | optional: true 1519 | 1520 | /color@4.2.3: 1521 | resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} 1522 | engines: {node: '>=12.5.0'} 1523 | requiresBuild: true 1524 | dependencies: 1525 | color-convert: 2.0.1 1526 | color-string: 1.9.1 1527 | dev: false 1528 | optional: true 1529 | 1530 | /combined-stream@1.0.8: 1531 | resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} 1532 | engines: {node: '>= 0.8'} 1533 | dependencies: 1534 | delayed-stream: 1.0.0 1535 | dev: false 1536 | 1537 | /comma-separated-tokens@2.0.3: 1538 | resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} 1539 | dev: false 1540 | 1541 | /commander@4.1.1: 1542 | resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} 1543 | engines: {node: '>= 6'} 1544 | dev: false 1545 | 1546 | /common-ancestor-path@1.0.1: 1547 | resolution: {integrity: sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==} 1548 | dev: false 1549 | 1550 | /convert-source-map@2.0.0: 1551 | resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} 1552 | dev: false 1553 | 1554 | /cookie@0.6.0: 1555 | resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} 1556 | engines: {node: '>= 0.6'} 1557 | dev: false 1558 | 1559 | /cross-spawn@7.0.3: 1560 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 1561 | engines: {node: '>= 8'} 1562 | dependencies: 1563 | path-key: 3.1.1 1564 | shebang-command: 2.0.0 1565 | which: 2.0.2 1566 | dev: false 1567 | 1568 | /crypt@0.0.2: 1569 | resolution: {integrity: sha512-mCxBlsHFYh9C+HVpiEacem8FEBnMXgU9gy4zmNC+SXAZNB/1idgp/aulFJ4FgCi7GPEVbfyng092GqL2k2rmow==} 1570 | dev: false 1571 | 1572 | /css-tree@2.3.1: 1573 | resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} 1574 | engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} 1575 | dependencies: 1576 | mdn-data: 2.0.30 1577 | source-map-js: 1.0.2 1578 | 1579 | /cssesc@3.0.0: 1580 | resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} 1581 | engines: {node: '>=4'} 1582 | hasBin: true 1583 | dev: false 1584 | 1585 | /debug@2.6.9: 1586 | resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} 1587 | peerDependencies: 1588 | supports-color: '*' 1589 | peerDependenciesMeta: 1590 | supports-color: 1591 | optional: true 1592 | dependencies: 1593 | ms: 2.0.0 1594 | dev: false 1595 | 1596 | /debug@3.2.7: 1597 | resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} 1598 | peerDependencies: 1599 | supports-color: '*' 1600 | peerDependenciesMeta: 1601 | supports-color: 1602 | optional: true 1603 | dependencies: 1604 | ms: 2.1.3 1605 | dev: false 1606 | 1607 | /debug@4.3.4: 1608 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 1609 | engines: {node: '>=6.0'} 1610 | peerDependencies: 1611 | supports-color: '*' 1612 | peerDependenciesMeta: 1613 | supports-color: 1614 | optional: true 1615 | dependencies: 1616 | ms: 2.1.2 1617 | dev: false 1618 | 1619 | /decode-named-character-reference@1.0.2: 1620 | resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} 1621 | dependencies: 1622 | character-entities: 2.0.2 1623 | dev: false 1624 | 1625 | /decompress-response@6.0.0: 1626 | resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} 1627 | engines: {node: '>=10'} 1628 | requiresBuild: true 1629 | dependencies: 1630 | mimic-response: 3.1.0 1631 | dev: false 1632 | optional: true 1633 | 1634 | /dedent-js@1.0.1: 1635 | resolution: {integrity: sha512-OUepMozQULMLUmhxS95Vudo0jb0UchLimi3+pQ2plj61Fcy8axbP9hbiD4Sz6DPqn6XG3kfmziVfQ1rSys5AJQ==} 1636 | dev: false 1637 | 1638 | /deep-extend@0.6.0: 1639 | resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} 1640 | engines: {node: '>=4.0.0'} 1641 | requiresBuild: true 1642 | dev: false 1643 | optional: true 1644 | 1645 | /deepmerge@4.3.1: 1646 | resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} 1647 | engines: {node: '>=0.10.0'} 1648 | dev: false 1649 | 1650 | /delayed-stream@1.0.0: 1651 | resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} 1652 | engines: {node: '>=0.4.0'} 1653 | dev: false 1654 | 1655 | /dequal@2.0.3: 1656 | resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} 1657 | engines: {node: '>=6'} 1658 | 1659 | /detect-libc@2.0.2: 1660 | resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==} 1661 | engines: {node: '>=8'} 1662 | requiresBuild: true 1663 | dev: false 1664 | optional: true 1665 | 1666 | /deterministic-object-hash@2.0.2: 1667 | resolution: {integrity: sha512-KxektNH63SrbfUyDiwXqRb1rLwKt33AmMv+5Nhsw1kqZ13SJBRTgZHtGbE+hH3a1mVW1cz+4pqSWVPAtLVXTzQ==} 1668 | engines: {node: '>=18'} 1669 | dependencies: 1670 | base-64: 1.0.0 1671 | dev: false 1672 | 1673 | /devalue@4.3.2: 1674 | resolution: {integrity: sha512-KqFl6pOgOW+Y6wJgu80rHpo2/3H07vr8ntR9rkkFIRETewbf5GaYYcakYfiKz89K+sLsuPkQIZaXDMjUObZwWg==} 1675 | dev: false 1676 | 1677 | /devlop@1.1.0: 1678 | resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} 1679 | dependencies: 1680 | dequal: 2.0.3 1681 | dev: false 1682 | 1683 | /didyoumean@1.2.2: 1684 | resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} 1685 | dev: false 1686 | 1687 | /diff@5.1.0: 1688 | resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} 1689 | engines: {node: '>=0.3.1'} 1690 | dev: false 1691 | 1692 | /digest-fetch@1.3.0: 1693 | resolution: {integrity: sha512-CGJuv6iKNM7QyZlM2T3sPAdZWd/p9zQiRNS9G+9COUCwzWFTs0Xp8NF5iePx7wtvhDykReiRRrSeNb4oMmB8lA==} 1694 | dependencies: 1695 | base-64: 0.1.0 1696 | md5: 2.3.0 1697 | dev: false 1698 | 1699 | /dlv@1.1.3: 1700 | resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} 1701 | dev: false 1702 | 1703 | /dset@3.1.3: 1704 | resolution: {integrity: sha512-20TuZZHCEZ2O71q9/+8BwKwZ0QtD9D8ObhrihJPr+vLLYlSuAU3/zL4cSlgbfeoGHTjCSJBa7NGcrF9/Bx/WJQ==} 1705 | engines: {node: '>=4'} 1706 | dev: false 1707 | 1708 | /eastasianwidth@0.2.0: 1709 | resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} 1710 | dev: false 1711 | 1712 | /electron-to-chromium@1.4.653: 1713 | resolution: {integrity: sha512-wA2A2LQCqnEwQAvwADQq3KpMpNwgAUBnRmrFgRzHnPhbQUFArTR32Ab46f4p0MovDLcg4uqd4nCsN2hTltslpA==} 1714 | dev: false 1715 | 1716 | /emmet@2.4.6: 1717 | resolution: {integrity: sha512-dJfbdY/hfeTyf/Ef7Y7ubLYzkBvPQ912wPaeVYpAxvFxkEBf/+hJu4H6vhAvFN6HlxqedlfVn2x1S44FfQ97pg==} 1718 | dependencies: 1719 | '@emmetio/abbreviation': 2.3.3 1720 | '@emmetio/css-abbreviation': 2.1.8 1721 | dev: false 1722 | 1723 | /emoji-regex@10.3.0: 1724 | resolution: {integrity: sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==} 1725 | dev: false 1726 | 1727 | /emoji-regex@8.0.0: 1728 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 1729 | dev: false 1730 | 1731 | /emoji-regex@9.2.2: 1732 | resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} 1733 | dev: false 1734 | 1735 | /end-of-stream@1.4.4: 1736 | resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} 1737 | requiresBuild: true 1738 | dependencies: 1739 | once: 1.4.0 1740 | dev: false 1741 | optional: true 1742 | 1743 | /entities@4.5.0: 1744 | resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} 1745 | engines: {node: '>=0.12'} 1746 | dev: false 1747 | 1748 | /es-module-lexer@1.4.1: 1749 | resolution: {integrity: sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==} 1750 | dev: false 1751 | 1752 | /esbuild@0.19.12: 1753 | resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} 1754 | engines: {node: '>=12'} 1755 | hasBin: true 1756 | requiresBuild: true 1757 | optionalDependencies: 1758 | '@esbuild/aix-ppc64': 0.19.12 1759 | '@esbuild/android-arm': 0.19.12 1760 | '@esbuild/android-arm64': 0.19.12 1761 | '@esbuild/android-x64': 0.19.12 1762 | '@esbuild/darwin-arm64': 0.19.12 1763 | '@esbuild/darwin-x64': 0.19.12 1764 | '@esbuild/freebsd-arm64': 0.19.12 1765 | '@esbuild/freebsd-x64': 0.19.12 1766 | '@esbuild/linux-arm': 0.19.12 1767 | '@esbuild/linux-arm64': 0.19.12 1768 | '@esbuild/linux-ia32': 0.19.12 1769 | '@esbuild/linux-loong64': 0.19.12 1770 | '@esbuild/linux-mips64el': 0.19.12 1771 | '@esbuild/linux-ppc64': 0.19.12 1772 | '@esbuild/linux-riscv64': 0.19.12 1773 | '@esbuild/linux-s390x': 0.19.12 1774 | '@esbuild/linux-x64': 0.19.12 1775 | '@esbuild/netbsd-x64': 0.19.12 1776 | '@esbuild/openbsd-x64': 0.19.12 1777 | '@esbuild/sunos-x64': 0.19.12 1778 | '@esbuild/win32-arm64': 0.19.12 1779 | '@esbuild/win32-ia32': 0.19.12 1780 | '@esbuild/win32-x64': 0.19.12 1781 | dev: false 1782 | 1783 | /escalade@3.1.1: 1784 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} 1785 | engines: {node: '>=6'} 1786 | dev: false 1787 | 1788 | /escape-string-regexp@1.0.5: 1789 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} 1790 | engines: {node: '>=0.8.0'} 1791 | dev: false 1792 | 1793 | /escape-string-regexp@5.0.0: 1794 | resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} 1795 | engines: {node: '>=12'} 1796 | dev: false 1797 | 1798 | /esprima@4.0.1: 1799 | resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} 1800 | engines: {node: '>=4'} 1801 | hasBin: true 1802 | dev: false 1803 | 1804 | /estree-walker@3.0.3: 1805 | resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} 1806 | dependencies: 1807 | '@types/estree': 1.0.5 1808 | 1809 | /event-target-shim@5.0.1: 1810 | resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} 1811 | engines: {node: '>=6'} 1812 | dev: false 1813 | 1814 | /eventemitter3@5.0.1: 1815 | resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} 1816 | dev: false 1817 | 1818 | /execa@8.0.1: 1819 | resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} 1820 | engines: {node: '>=16.17'} 1821 | dependencies: 1822 | cross-spawn: 7.0.3 1823 | get-stream: 8.0.1 1824 | human-signals: 5.0.0 1825 | is-stream: 3.0.0 1826 | merge-stream: 2.0.0 1827 | npm-run-path: 5.2.0 1828 | onetime: 6.0.0 1829 | signal-exit: 4.1.0 1830 | strip-final-newline: 3.0.0 1831 | dev: false 1832 | 1833 | /expand-template@2.0.3: 1834 | resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} 1835 | engines: {node: '>=6'} 1836 | requiresBuild: true 1837 | dev: false 1838 | optional: true 1839 | 1840 | /extend-shallow@2.0.1: 1841 | resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} 1842 | engines: {node: '>=0.10.0'} 1843 | dependencies: 1844 | is-extendable: 0.1.1 1845 | dev: false 1846 | 1847 | /extend@3.0.2: 1848 | resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} 1849 | dev: false 1850 | 1851 | /fast-fifo@1.3.2: 1852 | resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==} 1853 | requiresBuild: true 1854 | dev: false 1855 | optional: true 1856 | 1857 | /fast-glob@3.3.2: 1858 | resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} 1859 | engines: {node: '>=8.6.0'} 1860 | dependencies: 1861 | '@nodelib/fs.stat': 2.0.5 1862 | '@nodelib/fs.walk': 1.2.8 1863 | glob-parent: 5.1.2 1864 | merge2: 1.4.1 1865 | micromatch: 4.0.5 1866 | dev: false 1867 | 1868 | /fastq@1.17.0: 1869 | resolution: {integrity: sha512-zGygtijUMT7jnk3h26kUms3BkSDp4IfIKjmnqI2tvx6nuBfiF1UqOxbnLfzdv+apBy+53oaImsKtMw/xYbW+1w==} 1870 | dependencies: 1871 | reusify: 1.0.4 1872 | dev: false 1873 | 1874 | /file-selector@0.6.0: 1875 | resolution: {integrity: sha512-QlZ5yJC0VxHxQQsQhXvBaC7VRJ2uaxTf+Tfpu4Z/OcVQJVpZO+DGU0rkoVW5ce2SccxugvpBJoMvUs59iILYdw==} 1876 | engines: {node: '>= 12'} 1877 | dependencies: 1878 | tslib: 2.6.2 1879 | dev: false 1880 | 1881 | /fill-range@7.0.1: 1882 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 1883 | engines: {node: '>=8'} 1884 | dependencies: 1885 | to-regex-range: 5.0.1 1886 | dev: false 1887 | 1888 | /find-up@4.1.0: 1889 | resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} 1890 | engines: {node: '>=8'} 1891 | dependencies: 1892 | locate-path: 5.0.0 1893 | path-exists: 4.0.0 1894 | dev: false 1895 | 1896 | /find-up@5.0.0: 1897 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 1898 | engines: {node: '>=10'} 1899 | dependencies: 1900 | locate-path: 6.0.0 1901 | path-exists: 4.0.0 1902 | dev: false 1903 | 1904 | /find-yarn-workspace-root2@1.2.16: 1905 | resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==} 1906 | dependencies: 1907 | micromatch: 4.0.5 1908 | pkg-dir: 4.2.0 1909 | dev: false 1910 | 1911 | /flattie@1.1.0: 1912 | resolution: {integrity: sha512-xU99gDEnciIwJdGcBmNHnzTJ/w5AT+VFJOu6sTB6WM8diOYNA3Sa+K1DiEBQ7XH4QikQq3iFW1U+jRVcotQnBw==} 1913 | engines: {node: '>=8'} 1914 | dev: false 1915 | 1916 | /flowbite-svelte@0.44.22(svelte@4.2.9): 1917 | resolution: {integrity: sha512-QYxpxtlo8U1WijVrqXTzxrlsqdN/ggGjbV8H9sO+/MNlDIrtoDHqhfoNXjKqSAQh+lnx3FhuqbkUMGT025Wsdw==} 1918 | engines: {node: '>=18.0.0', npm: '>=7.0.0'} 1919 | peerDependencies: 1920 | svelte: ^4.0.0 1921 | dependencies: 1922 | '@floating-ui/dom': 1.6.1 1923 | apexcharts: 3.45.2 1924 | flowbite: 2.2.1 1925 | svelte: 4.2.9 1926 | tailwind-merge: 2.2.1 1927 | dev: true 1928 | 1929 | /flowbite@2.2.1: 1930 | resolution: {integrity: sha512-iiZyBTtriEDRHrqXZgpKHaxl4B2J8HZUP8Yn1RXozUDKszWHDVj4GxQqMMB9AJHRWOgXV/4E/LJZ/zqQgBUhWA==} 1931 | dependencies: 1932 | '@popperjs/core': 2.11.8 1933 | mini-svg-data-uri: 1.4.4 1934 | dev: true 1935 | 1936 | /foreground-child@3.1.1: 1937 | resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} 1938 | engines: {node: '>=14'} 1939 | dependencies: 1940 | cross-spawn: 7.0.3 1941 | signal-exit: 4.1.0 1942 | dev: false 1943 | 1944 | /form-data-encoder@1.7.2: 1945 | resolution: {integrity: sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==} 1946 | dev: false 1947 | 1948 | /form-data@4.0.0: 1949 | resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} 1950 | engines: {node: '>= 6'} 1951 | dependencies: 1952 | asynckit: 0.4.0 1953 | combined-stream: 1.0.8 1954 | mime-types: 2.1.35 1955 | dev: false 1956 | 1957 | /formdata-node@4.4.1: 1958 | resolution: {integrity: sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==} 1959 | engines: {node: '>= 12.20'} 1960 | dependencies: 1961 | node-domexception: 1.0.0 1962 | web-streams-polyfill: 4.0.0-beta.3 1963 | dev: false 1964 | 1965 | /fraction.js@4.3.7: 1966 | resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} 1967 | dev: false 1968 | 1969 | /fs-constants@1.0.0: 1970 | resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} 1971 | requiresBuild: true 1972 | dev: false 1973 | optional: true 1974 | 1975 | /fsevents@2.3.3: 1976 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 1977 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 1978 | os: [darwin] 1979 | requiresBuild: true 1980 | dev: false 1981 | optional: true 1982 | 1983 | /function-bind@1.1.2: 1984 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} 1985 | dev: false 1986 | 1987 | /gensync@1.0.0-beta.2: 1988 | resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} 1989 | engines: {node: '>=6.9.0'} 1990 | dev: false 1991 | 1992 | /get-caller-file@2.0.5: 1993 | resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} 1994 | engines: {node: 6.* || 8.* || >= 10.*} 1995 | dev: false 1996 | 1997 | /get-east-asian-width@1.2.0: 1998 | resolution: {integrity: sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==} 1999 | engines: {node: '>=18'} 2000 | dev: false 2001 | 2002 | /get-stream@8.0.1: 2003 | resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} 2004 | engines: {node: '>=16'} 2005 | dev: false 2006 | 2007 | /github-from-package@0.0.0: 2008 | resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} 2009 | requiresBuild: true 2010 | dev: false 2011 | optional: true 2012 | 2013 | /github-slugger@2.0.0: 2014 | resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} 2015 | dev: false 2016 | 2017 | /glob-parent@5.1.2: 2018 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 2019 | engines: {node: '>= 6'} 2020 | dependencies: 2021 | is-glob: 4.0.3 2022 | dev: false 2023 | 2024 | /glob-parent@6.0.2: 2025 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 2026 | engines: {node: '>=10.13.0'} 2027 | dependencies: 2028 | is-glob: 4.0.3 2029 | dev: false 2030 | 2031 | /glob@10.3.10: 2032 | resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} 2033 | engines: {node: '>=16 || 14 >=14.17'} 2034 | hasBin: true 2035 | dependencies: 2036 | foreground-child: 3.1.1 2037 | jackspeak: 2.3.6 2038 | minimatch: 9.0.3 2039 | minipass: 7.0.4 2040 | path-scurry: 1.10.1 2041 | dev: false 2042 | 2043 | /globals@11.12.0: 2044 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} 2045 | engines: {node: '>=4'} 2046 | dev: false 2047 | 2048 | /graceful-fs@4.2.11: 2049 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 2050 | dev: false 2051 | 2052 | /gray-matter@4.0.3: 2053 | resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} 2054 | engines: {node: '>=6.0'} 2055 | dependencies: 2056 | js-yaml: 3.14.1 2057 | kind-of: 6.0.3 2058 | section-matter: 1.0.0 2059 | strip-bom-string: 1.0.0 2060 | dev: false 2061 | 2062 | /has-flag@3.0.0: 2063 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} 2064 | engines: {node: '>=4'} 2065 | dev: false 2066 | 2067 | /hasown@2.0.0: 2068 | resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} 2069 | engines: {node: '>= 0.4'} 2070 | dependencies: 2071 | function-bind: 1.1.2 2072 | dev: false 2073 | 2074 | /hast-util-from-html@2.0.1: 2075 | resolution: {integrity: sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g==} 2076 | dependencies: 2077 | '@types/hast': 3.0.4 2078 | devlop: 1.1.0 2079 | hast-util-from-parse5: 8.0.1 2080 | parse5: 7.1.2 2081 | vfile: 6.0.1 2082 | vfile-message: 4.0.2 2083 | dev: false 2084 | 2085 | /hast-util-from-parse5@8.0.1: 2086 | resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==} 2087 | dependencies: 2088 | '@types/hast': 3.0.4 2089 | '@types/unist': 3.0.2 2090 | devlop: 1.1.0 2091 | hastscript: 8.0.0 2092 | property-information: 6.4.1 2093 | vfile: 6.0.1 2094 | vfile-location: 5.0.2 2095 | web-namespaces: 2.0.1 2096 | dev: false 2097 | 2098 | /hast-util-parse-selector@4.0.0: 2099 | resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} 2100 | dependencies: 2101 | '@types/hast': 3.0.4 2102 | dev: false 2103 | 2104 | /hast-util-raw@9.0.2: 2105 | resolution: {integrity: sha512-PldBy71wO9Uq1kyaMch9AHIghtQvIwxBUkv823pKmkTM3oV1JxtsTNYdevMxvUHqcnOAuO65JKU2+0NOxc2ksA==} 2106 | dependencies: 2107 | '@types/hast': 3.0.4 2108 | '@types/unist': 3.0.2 2109 | '@ungap/structured-clone': 1.2.0 2110 | hast-util-from-parse5: 8.0.1 2111 | hast-util-to-parse5: 8.0.0 2112 | html-void-elements: 3.0.0 2113 | mdast-util-to-hast: 13.0.2 2114 | parse5: 7.1.2 2115 | unist-util-position: 5.0.0 2116 | unist-util-visit: 5.0.0 2117 | vfile: 6.0.1 2118 | web-namespaces: 2.0.1 2119 | zwitch: 2.0.4 2120 | dev: false 2121 | 2122 | /hast-util-to-html@9.0.0: 2123 | resolution: {integrity: sha512-IVGhNgg7vANuUA2XKrT6sOIIPgaYZnmLx3l/CCOAK0PtgfoHrZwX7jCSYyFxHTrGmC6S9q8aQQekjp4JPZF+cw==} 2124 | dependencies: 2125 | '@types/hast': 3.0.4 2126 | '@types/unist': 3.0.2 2127 | ccount: 2.0.1 2128 | comma-separated-tokens: 2.0.3 2129 | hast-util-raw: 9.0.2 2130 | hast-util-whitespace: 3.0.0 2131 | html-void-elements: 3.0.0 2132 | mdast-util-to-hast: 13.0.2 2133 | property-information: 6.4.1 2134 | space-separated-tokens: 2.0.2 2135 | stringify-entities: 4.0.3 2136 | zwitch: 2.0.4 2137 | dev: false 2138 | 2139 | /hast-util-to-parse5@8.0.0: 2140 | resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} 2141 | dependencies: 2142 | '@types/hast': 3.0.4 2143 | comma-separated-tokens: 2.0.3 2144 | devlop: 1.1.0 2145 | property-information: 6.4.1 2146 | space-separated-tokens: 2.0.2 2147 | web-namespaces: 2.0.1 2148 | zwitch: 2.0.4 2149 | dev: false 2150 | 2151 | /hast-util-whitespace@3.0.0: 2152 | resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} 2153 | dependencies: 2154 | '@types/hast': 3.0.4 2155 | dev: false 2156 | 2157 | /hastscript@8.0.0: 2158 | resolution: {integrity: sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==} 2159 | dependencies: 2160 | '@types/hast': 3.0.4 2161 | comma-separated-tokens: 2.0.3 2162 | hast-util-parse-selector: 4.0.0 2163 | property-information: 6.4.1 2164 | space-separated-tokens: 2.0.2 2165 | dev: false 2166 | 2167 | /html-escaper@3.0.3: 2168 | resolution: {integrity: sha512-RuMffC89BOWQoY0WKGpIhn5gX3iI54O6nRA0yC124NYVtzjmFWBIiFd8M0x+ZdX0P9R4lADg1mgP8C7PxGOWuQ==} 2169 | dev: false 2170 | 2171 | /html-void-elements@3.0.0: 2172 | resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} 2173 | dev: false 2174 | 2175 | /http-cache-semantics@4.1.1: 2176 | resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} 2177 | dev: false 2178 | 2179 | /human-signals@5.0.0: 2180 | resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} 2181 | engines: {node: '>=16.17.0'} 2182 | dev: false 2183 | 2184 | /humanize-ms@1.2.1: 2185 | resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} 2186 | dependencies: 2187 | ms: 2.1.3 2188 | dev: false 2189 | 2190 | /iconv-lite@0.4.24: 2191 | resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} 2192 | engines: {node: '>=0.10.0'} 2193 | dependencies: 2194 | safer-buffer: 2.1.2 2195 | dev: false 2196 | 2197 | /ieee754@1.2.1: 2198 | resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} 2199 | dev: false 2200 | 2201 | /import-meta-resolve@4.0.0: 2202 | resolution: {integrity: sha512-okYUR7ZQPH+efeuMJGlq4f8ubUgO50kByRPyt/Cy1Io4PSRsPjxME+YlVaCOx+NIToW7hCsZNFJyTPFFKepRSA==} 2203 | dev: false 2204 | 2205 | /inherits@2.0.4: 2206 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 2207 | dev: false 2208 | 2209 | /ini@1.3.8: 2210 | resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} 2211 | requiresBuild: true 2212 | dev: false 2213 | optional: true 2214 | 2215 | /is-arrayish@0.3.2: 2216 | resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} 2217 | requiresBuild: true 2218 | dev: false 2219 | optional: true 2220 | 2221 | /is-binary-path@2.1.0: 2222 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} 2223 | engines: {node: '>=8'} 2224 | dependencies: 2225 | binary-extensions: 2.2.0 2226 | dev: false 2227 | 2228 | /is-buffer@1.1.6: 2229 | resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==} 2230 | dev: false 2231 | 2232 | /is-buffer@2.0.5: 2233 | resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} 2234 | engines: {node: '>=4'} 2235 | dev: false 2236 | 2237 | /is-core-module@2.13.1: 2238 | resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} 2239 | dependencies: 2240 | hasown: 2.0.0 2241 | dev: false 2242 | 2243 | /is-docker@3.0.0: 2244 | resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} 2245 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 2246 | hasBin: true 2247 | dev: false 2248 | 2249 | /is-extendable@0.1.1: 2250 | resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==} 2251 | engines: {node: '>=0.10.0'} 2252 | dev: false 2253 | 2254 | /is-extglob@2.1.1: 2255 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 2256 | engines: {node: '>=0.10.0'} 2257 | dev: false 2258 | 2259 | /is-fullwidth-code-point@3.0.0: 2260 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 2261 | engines: {node: '>=8'} 2262 | dev: false 2263 | 2264 | /is-glob@4.0.3: 2265 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 2266 | engines: {node: '>=0.10.0'} 2267 | dependencies: 2268 | is-extglob: 2.1.1 2269 | dev: false 2270 | 2271 | /is-inside-container@1.0.0: 2272 | resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} 2273 | engines: {node: '>=14.16'} 2274 | hasBin: true 2275 | dependencies: 2276 | is-docker: 3.0.0 2277 | dev: false 2278 | 2279 | /is-interactive@2.0.0: 2280 | resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==} 2281 | engines: {node: '>=12'} 2282 | dev: false 2283 | 2284 | /is-number@7.0.0: 2285 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 2286 | engines: {node: '>=0.12.0'} 2287 | dev: false 2288 | 2289 | /is-plain-obj@4.1.0: 2290 | resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} 2291 | engines: {node: '>=12'} 2292 | dev: false 2293 | 2294 | /is-reference@3.0.2: 2295 | resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==} 2296 | dependencies: 2297 | '@types/estree': 1.0.5 2298 | 2299 | /is-stream@3.0.0: 2300 | resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} 2301 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 2302 | dev: false 2303 | 2304 | /is-unicode-supported@1.3.0: 2305 | resolution: {integrity: sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==} 2306 | engines: {node: '>=12'} 2307 | dev: false 2308 | 2309 | /is-wsl@3.1.0: 2310 | resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==} 2311 | engines: {node: '>=16'} 2312 | dependencies: 2313 | is-inside-container: 1.0.0 2314 | dev: false 2315 | 2316 | /isexe@2.0.0: 2317 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 2318 | dev: false 2319 | 2320 | /jackspeak@2.3.6: 2321 | resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} 2322 | engines: {node: '>=14'} 2323 | dependencies: 2324 | '@isaacs/cliui': 8.0.2 2325 | optionalDependencies: 2326 | '@pkgjs/parseargs': 0.11.0 2327 | dev: false 2328 | 2329 | /jiti@1.21.0: 2330 | resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==} 2331 | hasBin: true 2332 | dev: false 2333 | 2334 | /js-tokens@4.0.0: 2335 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 2336 | dev: false 2337 | 2338 | /js-yaml@3.14.1: 2339 | resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} 2340 | hasBin: true 2341 | dependencies: 2342 | argparse: 1.0.10 2343 | esprima: 4.0.1 2344 | dev: false 2345 | 2346 | /js-yaml@4.1.0: 2347 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 2348 | hasBin: true 2349 | dependencies: 2350 | argparse: 2.0.1 2351 | dev: false 2352 | 2353 | /jsesc@2.5.2: 2354 | resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} 2355 | engines: {node: '>=4'} 2356 | hasBin: true 2357 | dev: false 2358 | 2359 | /json5@2.2.3: 2360 | resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} 2361 | engines: {node: '>=6'} 2362 | hasBin: true 2363 | dev: false 2364 | 2365 | /jsonc-parser@2.3.1: 2366 | resolution: {integrity: sha512-H8jvkz1O50L3dMZCsLqiuB2tA7muqbSg1AtGEkN0leAqGjsUzDJir3Zwr02BhqdcITPg3ei3mZ+HjMocAknhhg==} 2367 | dev: false 2368 | 2369 | /kind-of@6.0.3: 2370 | resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} 2371 | engines: {node: '>=0.10.0'} 2372 | dev: false 2373 | 2374 | /kleur@3.0.3: 2375 | resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} 2376 | engines: {node: '>=6'} 2377 | dev: false 2378 | 2379 | /kleur@4.1.5: 2380 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} 2381 | engines: {node: '>=6'} 2382 | dev: false 2383 | 2384 | /lilconfig@2.1.0: 2385 | resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} 2386 | engines: {node: '>=10'} 2387 | dev: false 2388 | 2389 | /lilconfig@3.0.0: 2390 | resolution: {integrity: sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==} 2391 | engines: {node: '>=14'} 2392 | dev: false 2393 | 2394 | /lines-and-columns@1.2.4: 2395 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} 2396 | dev: false 2397 | 2398 | /load-yaml-file@0.2.0: 2399 | resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==} 2400 | engines: {node: '>=6'} 2401 | dependencies: 2402 | graceful-fs: 4.2.11 2403 | js-yaml: 3.14.1 2404 | pify: 4.0.1 2405 | strip-bom: 3.0.0 2406 | dev: false 2407 | 2408 | /locate-character@3.0.0: 2409 | resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} 2410 | 2411 | /locate-path@5.0.0: 2412 | resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} 2413 | engines: {node: '>=8'} 2414 | dependencies: 2415 | p-locate: 4.1.0 2416 | dev: false 2417 | 2418 | /locate-path@6.0.0: 2419 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 2420 | engines: {node: '>=10'} 2421 | dependencies: 2422 | p-locate: 5.0.0 2423 | dev: false 2424 | 2425 | /lodash.merge@4.6.2: 2426 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 2427 | dev: false 2428 | 2429 | /lodash@4.17.21: 2430 | resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} 2431 | dev: false 2432 | 2433 | /log-symbols@5.1.0: 2434 | resolution: {integrity: sha512-l0x2DvrW294C9uDCoQe1VSU4gf529FkSZ6leBl4TiqZH/e+0R7hSfHQBNut2mNygDgHwvYHfFLn6Oxb3VWj2rA==} 2435 | engines: {node: '>=12'} 2436 | dependencies: 2437 | chalk: 5.3.0 2438 | is-unicode-supported: 1.3.0 2439 | dev: false 2440 | 2441 | /longest-streak@3.1.0: 2442 | resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} 2443 | dev: false 2444 | 2445 | /lower-case@2.0.2: 2446 | resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} 2447 | dependencies: 2448 | tslib: 2.6.2 2449 | dev: false 2450 | 2451 | /lru-cache@10.2.0: 2452 | resolution: {integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==} 2453 | engines: {node: 14 || >=16.14} 2454 | dev: false 2455 | 2456 | /lru-cache@5.1.1: 2457 | resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} 2458 | dependencies: 2459 | yallist: 3.1.1 2460 | dev: false 2461 | 2462 | /lru-cache@6.0.0: 2463 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 2464 | engines: {node: '>=10'} 2465 | dependencies: 2466 | yallist: 4.0.0 2467 | dev: false 2468 | 2469 | /magic-string@0.30.6: 2470 | resolution: {integrity: sha512-n62qCLbPjNjyo+owKtveQxZFZTBm+Ms6YoGD23Wew6Vw337PElFNifQpknPruVRQV57kVShPnLGo9vWxVhpPvA==} 2471 | engines: {node: '>=12'} 2472 | dependencies: 2473 | '@jridgewell/sourcemap-codec': 1.4.15 2474 | 2475 | /markdown-table@3.0.3: 2476 | resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} 2477 | dev: false 2478 | 2479 | /md5@2.3.0: 2480 | resolution: {integrity: sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==} 2481 | dependencies: 2482 | charenc: 0.0.2 2483 | crypt: 0.0.2 2484 | is-buffer: 1.1.6 2485 | dev: false 2486 | 2487 | /mdast-util-definitions@6.0.0: 2488 | resolution: {integrity: sha512-scTllyX6pnYNZH/AIp/0ePz6s4cZtARxImwoPJ7kS42n+MnVsI4XbnG6d4ibehRIldYMWM2LD7ImQblVhUejVQ==} 2489 | dependencies: 2490 | '@types/mdast': 4.0.3 2491 | '@types/unist': 3.0.2 2492 | unist-util-visit: 5.0.0 2493 | dev: false 2494 | 2495 | /mdast-util-find-and-replace@3.0.1: 2496 | resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==} 2497 | dependencies: 2498 | '@types/mdast': 4.0.3 2499 | escape-string-regexp: 5.0.0 2500 | unist-util-is: 6.0.0 2501 | unist-util-visit-parents: 6.0.1 2502 | dev: false 2503 | 2504 | /mdast-util-from-markdown@2.0.0: 2505 | resolution: {integrity: sha512-n7MTOr/z+8NAX/wmhhDji8O3bRvPTV/U0oTCaZJkjhPSKTPhS3xufVhKGF8s1pJ7Ox4QgoIU7KHseh09S+9rTA==} 2506 | dependencies: 2507 | '@types/mdast': 4.0.3 2508 | '@types/unist': 3.0.2 2509 | decode-named-character-reference: 1.0.2 2510 | devlop: 1.1.0 2511 | mdast-util-to-string: 4.0.0 2512 | micromark: 4.0.0 2513 | micromark-util-decode-numeric-character-reference: 2.0.1 2514 | micromark-util-decode-string: 2.0.0 2515 | micromark-util-normalize-identifier: 2.0.0 2516 | micromark-util-symbol: 2.0.0 2517 | micromark-util-types: 2.0.0 2518 | unist-util-stringify-position: 4.0.0 2519 | transitivePeerDependencies: 2520 | - supports-color 2521 | dev: false 2522 | 2523 | /mdast-util-gfm-autolink-literal@2.0.0: 2524 | resolution: {integrity: sha512-FyzMsduZZHSc3i0Px3PQcBT4WJY/X/RCtEJKuybiC6sjPqLv7h1yqAkmILZtuxMSsUyaLUWNp71+vQH2zqp5cg==} 2525 | dependencies: 2526 | '@types/mdast': 4.0.3 2527 | ccount: 2.0.1 2528 | devlop: 1.1.0 2529 | mdast-util-find-and-replace: 3.0.1 2530 | micromark-util-character: 2.1.0 2531 | dev: false 2532 | 2533 | /mdast-util-gfm-footnote@2.0.0: 2534 | resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==} 2535 | dependencies: 2536 | '@types/mdast': 4.0.3 2537 | devlop: 1.1.0 2538 | mdast-util-from-markdown: 2.0.0 2539 | mdast-util-to-markdown: 2.1.0 2540 | micromark-util-normalize-identifier: 2.0.0 2541 | transitivePeerDependencies: 2542 | - supports-color 2543 | dev: false 2544 | 2545 | /mdast-util-gfm-strikethrough@2.0.0: 2546 | resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} 2547 | dependencies: 2548 | '@types/mdast': 4.0.3 2549 | mdast-util-from-markdown: 2.0.0 2550 | mdast-util-to-markdown: 2.1.0 2551 | transitivePeerDependencies: 2552 | - supports-color 2553 | dev: false 2554 | 2555 | /mdast-util-gfm-table@2.0.0: 2556 | resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} 2557 | dependencies: 2558 | '@types/mdast': 4.0.3 2559 | devlop: 1.1.0 2560 | markdown-table: 3.0.3 2561 | mdast-util-from-markdown: 2.0.0 2562 | mdast-util-to-markdown: 2.1.0 2563 | transitivePeerDependencies: 2564 | - supports-color 2565 | dev: false 2566 | 2567 | /mdast-util-gfm-task-list-item@2.0.0: 2568 | resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} 2569 | dependencies: 2570 | '@types/mdast': 4.0.3 2571 | devlop: 1.1.0 2572 | mdast-util-from-markdown: 2.0.0 2573 | mdast-util-to-markdown: 2.1.0 2574 | transitivePeerDependencies: 2575 | - supports-color 2576 | dev: false 2577 | 2578 | /mdast-util-gfm@3.0.0: 2579 | resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==} 2580 | dependencies: 2581 | mdast-util-from-markdown: 2.0.0 2582 | mdast-util-gfm-autolink-literal: 2.0.0 2583 | mdast-util-gfm-footnote: 2.0.0 2584 | mdast-util-gfm-strikethrough: 2.0.0 2585 | mdast-util-gfm-table: 2.0.0 2586 | mdast-util-gfm-task-list-item: 2.0.0 2587 | mdast-util-to-markdown: 2.1.0 2588 | transitivePeerDependencies: 2589 | - supports-color 2590 | dev: false 2591 | 2592 | /mdast-util-phrasing@4.1.0: 2593 | resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} 2594 | dependencies: 2595 | '@types/mdast': 4.0.3 2596 | unist-util-is: 6.0.0 2597 | dev: false 2598 | 2599 | /mdast-util-to-hast@13.0.2: 2600 | resolution: {integrity: sha512-U5I+500EOOw9e3ZrclN3Is3fRpw8c19SMyNZlZ2IS+7vLsNzb2Om11VpIVOR+/0137GhZsFEF6YiKD5+0Hr2Og==} 2601 | dependencies: 2602 | '@types/hast': 3.0.4 2603 | '@types/mdast': 4.0.3 2604 | '@ungap/structured-clone': 1.2.0 2605 | devlop: 1.1.0 2606 | micromark-util-sanitize-uri: 2.0.0 2607 | trim-lines: 3.0.1 2608 | unist-util-position: 5.0.0 2609 | unist-util-visit: 5.0.0 2610 | dev: false 2611 | 2612 | /mdast-util-to-markdown@2.1.0: 2613 | resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==} 2614 | dependencies: 2615 | '@types/mdast': 4.0.3 2616 | '@types/unist': 3.0.2 2617 | longest-streak: 3.1.0 2618 | mdast-util-phrasing: 4.1.0 2619 | mdast-util-to-string: 4.0.0 2620 | micromark-util-decode-string: 2.0.0 2621 | unist-util-visit: 5.0.0 2622 | zwitch: 2.0.4 2623 | dev: false 2624 | 2625 | /mdast-util-to-string@4.0.0: 2626 | resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} 2627 | dependencies: 2628 | '@types/mdast': 4.0.3 2629 | dev: false 2630 | 2631 | /mdn-data@2.0.30: 2632 | resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} 2633 | 2634 | /merge-stream@2.0.0: 2635 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} 2636 | dev: false 2637 | 2638 | /merge2@1.4.1: 2639 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 2640 | engines: {node: '>= 8'} 2641 | dev: false 2642 | 2643 | /micromark-core-commonmark@2.0.0: 2644 | resolution: {integrity: sha512-jThOz/pVmAYUtkroV3D5c1osFXAMv9e0ypGDOIZuCeAe91/sD6BoE2Sjzt30yuXtwOYUmySOhMas/PVyh02itA==} 2645 | dependencies: 2646 | decode-named-character-reference: 1.0.2 2647 | devlop: 1.1.0 2648 | micromark-factory-destination: 2.0.0 2649 | micromark-factory-label: 2.0.0 2650 | micromark-factory-space: 2.0.0 2651 | micromark-factory-title: 2.0.0 2652 | micromark-factory-whitespace: 2.0.0 2653 | micromark-util-character: 2.1.0 2654 | micromark-util-chunked: 2.0.0 2655 | micromark-util-classify-character: 2.0.0 2656 | micromark-util-html-tag-name: 2.0.0 2657 | micromark-util-normalize-identifier: 2.0.0 2658 | micromark-util-resolve-all: 2.0.0 2659 | micromark-util-subtokenize: 2.0.0 2660 | micromark-util-symbol: 2.0.0 2661 | micromark-util-types: 2.0.0 2662 | dev: false 2663 | 2664 | /micromark-extension-gfm-autolink-literal@2.0.0: 2665 | resolution: {integrity: sha512-rTHfnpt/Q7dEAK1Y5ii0W8bhfJlVJFnJMHIPisfPK3gpVNuOP0VnRl96+YJ3RYWV/P4gFeQoGKNlT3RhuvpqAg==} 2666 | dependencies: 2667 | micromark-util-character: 2.1.0 2668 | micromark-util-sanitize-uri: 2.0.0 2669 | micromark-util-symbol: 2.0.0 2670 | micromark-util-types: 2.0.0 2671 | dev: false 2672 | 2673 | /micromark-extension-gfm-footnote@2.0.0: 2674 | resolution: {integrity: sha512-6Rzu0CYRKDv3BfLAUnZsSlzx3ak6HAoI85KTiijuKIz5UxZxbUI+pD6oHgw+6UtQuiRwnGRhzMmPRv4smcz0fg==} 2675 | dependencies: 2676 | devlop: 1.1.0 2677 | micromark-core-commonmark: 2.0.0 2678 | micromark-factory-space: 2.0.0 2679 | micromark-util-character: 2.1.0 2680 | micromark-util-normalize-identifier: 2.0.0 2681 | micromark-util-sanitize-uri: 2.0.0 2682 | micromark-util-symbol: 2.0.0 2683 | micromark-util-types: 2.0.0 2684 | dev: false 2685 | 2686 | /micromark-extension-gfm-strikethrough@2.0.0: 2687 | resolution: {integrity: sha512-c3BR1ClMp5fxxmwP6AoOY2fXO9U8uFMKs4ADD66ahLTNcwzSCyRVU4k7LPV5Nxo/VJiR4TdzxRQY2v3qIUceCw==} 2688 | dependencies: 2689 | devlop: 1.1.0 2690 | micromark-util-chunked: 2.0.0 2691 | micromark-util-classify-character: 2.0.0 2692 | micromark-util-resolve-all: 2.0.0 2693 | micromark-util-symbol: 2.0.0 2694 | micromark-util-types: 2.0.0 2695 | dev: false 2696 | 2697 | /micromark-extension-gfm-table@2.0.0: 2698 | resolution: {integrity: sha512-PoHlhypg1ItIucOaHmKE8fbin3vTLpDOUg8KAr8gRCF1MOZI9Nquq2i/44wFvviM4WuxJzc3demT8Y3dkfvYrw==} 2699 | dependencies: 2700 | devlop: 1.1.0 2701 | micromark-factory-space: 2.0.0 2702 | micromark-util-character: 2.1.0 2703 | micromark-util-symbol: 2.0.0 2704 | micromark-util-types: 2.0.0 2705 | dev: false 2706 | 2707 | /micromark-extension-gfm-tagfilter@2.0.0: 2708 | resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} 2709 | dependencies: 2710 | micromark-util-types: 2.0.0 2711 | dev: false 2712 | 2713 | /micromark-extension-gfm-task-list-item@2.0.1: 2714 | resolution: {integrity: sha512-cY5PzGcnULaN5O7T+cOzfMoHjBW7j+T9D2sucA5d/KbsBTPcYdebm9zUd9zzdgJGCwahV+/W78Z3nbulBYVbTw==} 2715 | dependencies: 2716 | devlop: 1.1.0 2717 | micromark-factory-space: 2.0.0 2718 | micromark-util-character: 2.1.0 2719 | micromark-util-symbol: 2.0.0 2720 | micromark-util-types: 2.0.0 2721 | dev: false 2722 | 2723 | /micromark-extension-gfm@3.0.0: 2724 | resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} 2725 | dependencies: 2726 | micromark-extension-gfm-autolink-literal: 2.0.0 2727 | micromark-extension-gfm-footnote: 2.0.0 2728 | micromark-extension-gfm-strikethrough: 2.0.0 2729 | micromark-extension-gfm-table: 2.0.0 2730 | micromark-extension-gfm-tagfilter: 2.0.0 2731 | micromark-extension-gfm-task-list-item: 2.0.1 2732 | micromark-util-combine-extensions: 2.0.0 2733 | micromark-util-types: 2.0.0 2734 | dev: false 2735 | 2736 | /micromark-factory-destination@2.0.0: 2737 | resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==} 2738 | dependencies: 2739 | micromark-util-character: 2.1.0 2740 | micromark-util-symbol: 2.0.0 2741 | micromark-util-types: 2.0.0 2742 | dev: false 2743 | 2744 | /micromark-factory-label@2.0.0: 2745 | resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==} 2746 | dependencies: 2747 | devlop: 1.1.0 2748 | micromark-util-character: 2.1.0 2749 | micromark-util-symbol: 2.0.0 2750 | micromark-util-types: 2.0.0 2751 | dev: false 2752 | 2753 | /micromark-factory-space@2.0.0: 2754 | resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==} 2755 | dependencies: 2756 | micromark-util-character: 2.1.0 2757 | micromark-util-types: 2.0.0 2758 | dev: false 2759 | 2760 | /micromark-factory-title@2.0.0: 2761 | resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==} 2762 | dependencies: 2763 | micromark-factory-space: 2.0.0 2764 | micromark-util-character: 2.1.0 2765 | micromark-util-symbol: 2.0.0 2766 | micromark-util-types: 2.0.0 2767 | dev: false 2768 | 2769 | /micromark-factory-whitespace@2.0.0: 2770 | resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==} 2771 | dependencies: 2772 | micromark-factory-space: 2.0.0 2773 | micromark-util-character: 2.1.0 2774 | micromark-util-symbol: 2.0.0 2775 | micromark-util-types: 2.0.0 2776 | dev: false 2777 | 2778 | /micromark-util-character@2.1.0: 2779 | resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==} 2780 | dependencies: 2781 | micromark-util-symbol: 2.0.0 2782 | micromark-util-types: 2.0.0 2783 | dev: false 2784 | 2785 | /micromark-util-chunked@2.0.0: 2786 | resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==} 2787 | dependencies: 2788 | micromark-util-symbol: 2.0.0 2789 | dev: false 2790 | 2791 | /micromark-util-classify-character@2.0.0: 2792 | resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==} 2793 | dependencies: 2794 | micromark-util-character: 2.1.0 2795 | micromark-util-symbol: 2.0.0 2796 | micromark-util-types: 2.0.0 2797 | dev: false 2798 | 2799 | /micromark-util-combine-extensions@2.0.0: 2800 | resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==} 2801 | dependencies: 2802 | micromark-util-chunked: 2.0.0 2803 | micromark-util-types: 2.0.0 2804 | dev: false 2805 | 2806 | /micromark-util-decode-numeric-character-reference@2.0.1: 2807 | resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==} 2808 | dependencies: 2809 | micromark-util-symbol: 2.0.0 2810 | dev: false 2811 | 2812 | /micromark-util-decode-string@2.0.0: 2813 | resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==} 2814 | dependencies: 2815 | decode-named-character-reference: 1.0.2 2816 | micromark-util-character: 2.1.0 2817 | micromark-util-decode-numeric-character-reference: 2.0.1 2818 | micromark-util-symbol: 2.0.0 2819 | dev: false 2820 | 2821 | /micromark-util-encode@2.0.0: 2822 | resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==} 2823 | dev: false 2824 | 2825 | /micromark-util-html-tag-name@2.0.0: 2826 | resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==} 2827 | dev: false 2828 | 2829 | /micromark-util-normalize-identifier@2.0.0: 2830 | resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==} 2831 | dependencies: 2832 | micromark-util-symbol: 2.0.0 2833 | dev: false 2834 | 2835 | /micromark-util-resolve-all@2.0.0: 2836 | resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==} 2837 | dependencies: 2838 | micromark-util-types: 2.0.0 2839 | dev: false 2840 | 2841 | /micromark-util-sanitize-uri@2.0.0: 2842 | resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==} 2843 | dependencies: 2844 | micromark-util-character: 2.1.0 2845 | micromark-util-encode: 2.0.0 2846 | micromark-util-symbol: 2.0.0 2847 | dev: false 2848 | 2849 | /micromark-util-subtokenize@2.0.0: 2850 | resolution: {integrity: sha512-vc93L1t+gpR3p8jxeVdaYlbV2jTYteDje19rNSS/H5dlhxUYll5Fy6vJ2cDwP8RnsXi818yGty1ayP55y3W6fg==} 2851 | dependencies: 2852 | devlop: 1.1.0 2853 | micromark-util-chunked: 2.0.0 2854 | micromark-util-symbol: 2.0.0 2855 | micromark-util-types: 2.0.0 2856 | dev: false 2857 | 2858 | /micromark-util-symbol@2.0.0: 2859 | resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==} 2860 | dev: false 2861 | 2862 | /micromark-util-types@2.0.0: 2863 | resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==} 2864 | dev: false 2865 | 2866 | /micromark@4.0.0: 2867 | resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==} 2868 | dependencies: 2869 | '@types/debug': 4.1.12 2870 | debug: 4.3.4 2871 | decode-named-character-reference: 1.0.2 2872 | devlop: 1.1.0 2873 | micromark-core-commonmark: 2.0.0 2874 | micromark-factory-space: 2.0.0 2875 | micromark-util-character: 2.1.0 2876 | micromark-util-chunked: 2.0.0 2877 | micromark-util-combine-extensions: 2.0.0 2878 | micromark-util-decode-numeric-character-reference: 2.0.1 2879 | micromark-util-encode: 2.0.0 2880 | micromark-util-normalize-identifier: 2.0.0 2881 | micromark-util-resolve-all: 2.0.0 2882 | micromark-util-sanitize-uri: 2.0.0 2883 | micromark-util-subtokenize: 2.0.0 2884 | micromark-util-symbol: 2.0.0 2885 | micromark-util-types: 2.0.0 2886 | transitivePeerDependencies: 2887 | - supports-color 2888 | dev: false 2889 | 2890 | /micromatch@4.0.5: 2891 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 2892 | engines: {node: '>=8.6'} 2893 | dependencies: 2894 | braces: 3.0.2 2895 | picomatch: 2.3.1 2896 | dev: false 2897 | 2898 | /mime-db@1.52.0: 2899 | resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} 2900 | engines: {node: '>= 0.6'} 2901 | dev: false 2902 | 2903 | /mime-types@2.1.35: 2904 | resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} 2905 | engines: {node: '>= 0.6'} 2906 | dependencies: 2907 | mime-db: 1.52.0 2908 | dev: false 2909 | 2910 | /mime@3.0.0: 2911 | resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} 2912 | engines: {node: '>=10.0.0'} 2913 | hasBin: true 2914 | dev: false 2915 | 2916 | /mimic-fn@2.1.0: 2917 | resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} 2918 | engines: {node: '>=6'} 2919 | dev: false 2920 | 2921 | /mimic-fn@4.0.0: 2922 | resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} 2923 | engines: {node: '>=12'} 2924 | dev: false 2925 | 2926 | /mimic-response@3.1.0: 2927 | resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} 2928 | engines: {node: '>=10'} 2929 | requiresBuild: true 2930 | dev: false 2931 | optional: true 2932 | 2933 | /mini-svg-data-uri@1.4.4: 2934 | resolution: {integrity: sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==} 2935 | hasBin: true 2936 | dev: true 2937 | 2938 | /minimatch@9.0.3: 2939 | resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} 2940 | engines: {node: '>=16 || 14 >=14.17'} 2941 | dependencies: 2942 | brace-expansion: 2.0.1 2943 | dev: false 2944 | 2945 | /minimist@1.2.8: 2946 | resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} 2947 | requiresBuild: true 2948 | dev: false 2949 | optional: true 2950 | 2951 | /minipass@7.0.4: 2952 | resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} 2953 | engines: {node: '>=16 || 14 >=14.17'} 2954 | dev: false 2955 | 2956 | /mkdirp-classic@0.5.3: 2957 | resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} 2958 | requiresBuild: true 2959 | dev: false 2960 | optional: true 2961 | 2962 | /ms@2.0.0: 2963 | resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} 2964 | dev: false 2965 | 2966 | /ms@2.1.2: 2967 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 2968 | dev: false 2969 | 2970 | /ms@2.1.3: 2971 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 2972 | dev: false 2973 | 2974 | /muggle-string@0.3.1: 2975 | resolution: {integrity: sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==} 2976 | dev: false 2977 | 2978 | /mz@2.7.0: 2979 | resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} 2980 | dependencies: 2981 | any-promise: 1.3.0 2982 | object-assign: 4.1.1 2983 | thenify-all: 1.6.0 2984 | dev: false 2985 | 2986 | /nanoid@3.3.7: 2987 | resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} 2988 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 2989 | hasBin: true 2990 | dev: false 2991 | 2992 | /napi-build-utils@1.0.2: 2993 | resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} 2994 | requiresBuild: true 2995 | dev: false 2996 | optional: true 2997 | 2998 | /needle@2.9.1: 2999 | resolution: {integrity: sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==} 3000 | engines: {node: '>= 4.4.x'} 3001 | hasBin: true 3002 | dependencies: 3003 | debug: 3.2.7 3004 | iconv-lite: 0.4.24 3005 | sax: 1.3.0 3006 | transitivePeerDependencies: 3007 | - supports-color 3008 | dev: false 3009 | 3010 | /nlcst-to-string@3.1.1: 3011 | resolution: {integrity: sha512-63mVyqaqt0cmn2VcI2aH6kxe1rLAmSROqHMA0i4qqg1tidkfExgpb0FGMikMCn86mw5dFtBtEANfmSSK7TjNHw==} 3012 | dependencies: 3013 | '@types/nlcst': 1.0.4 3014 | dev: false 3015 | 3016 | /no-case@3.0.4: 3017 | resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} 3018 | dependencies: 3019 | lower-case: 2.0.2 3020 | tslib: 2.6.2 3021 | dev: false 3022 | 3023 | /node-abi@3.54.0: 3024 | resolution: {integrity: sha512-p7eGEiQil0YUV3ItH4/tBb781L5impVmmx2E9FRKF7d18XXzp4PGT2tdYMFY6wQqgxD0IwNZOiSJ0/K0fSi/OA==} 3025 | engines: {node: '>=10'} 3026 | requiresBuild: true 3027 | dependencies: 3028 | semver: 7.5.4 3029 | dev: false 3030 | optional: true 3031 | 3032 | /node-addon-api@6.1.0: 3033 | resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==} 3034 | requiresBuild: true 3035 | dev: false 3036 | optional: true 3037 | 3038 | /node-domexception@1.0.0: 3039 | resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} 3040 | engines: {node: '>=10.5.0'} 3041 | dev: false 3042 | 3043 | /node-fetch@2.7.0: 3044 | resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} 3045 | engines: {node: 4.x || >=6.0.0} 3046 | peerDependencies: 3047 | encoding: ^0.1.0 3048 | peerDependenciesMeta: 3049 | encoding: 3050 | optional: true 3051 | dependencies: 3052 | whatwg-url: 5.0.0 3053 | dev: false 3054 | 3055 | /node-releases@2.0.14: 3056 | resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} 3057 | dev: false 3058 | 3059 | /normalize-path@3.0.0: 3060 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 3061 | engines: {node: '>=0.10.0'} 3062 | dev: false 3063 | 3064 | /normalize-range@0.1.2: 3065 | resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} 3066 | engines: {node: '>=0.10.0'} 3067 | dev: false 3068 | 3069 | /npm-run-path@5.2.0: 3070 | resolution: {integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==} 3071 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 3072 | dependencies: 3073 | path-key: 4.0.0 3074 | dev: false 3075 | 3076 | /object-assign@4.1.1: 3077 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 3078 | engines: {node: '>=0.10.0'} 3079 | dev: false 3080 | 3081 | /object-hash@3.0.0: 3082 | resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} 3083 | engines: {node: '>= 6'} 3084 | dev: false 3085 | 3086 | /once@1.4.0: 3087 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 3088 | requiresBuild: true 3089 | dependencies: 3090 | wrappy: 1.0.2 3091 | dev: false 3092 | optional: true 3093 | 3094 | /onetime@5.1.2: 3095 | resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} 3096 | engines: {node: '>=6'} 3097 | dependencies: 3098 | mimic-fn: 2.1.0 3099 | dev: false 3100 | 3101 | /onetime@6.0.0: 3102 | resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} 3103 | engines: {node: '>=12'} 3104 | dependencies: 3105 | mimic-fn: 4.0.0 3106 | dev: false 3107 | 3108 | /openai@4.26.0: 3109 | resolution: {integrity: sha512-HPC7tgYdeP38F3uHA5WgnoXZyGbAp9jgcIo23p6It+q/07u4C+NZ8xHKlMShsPbDDmFRpPsa3vdbXYpbhJH3eg==} 3110 | hasBin: true 3111 | dependencies: 3112 | '@types/node': 18.19.14 3113 | '@types/node-fetch': 2.6.11 3114 | abort-controller: 3.0.0 3115 | agentkeepalive: 4.5.0 3116 | digest-fetch: 1.3.0 3117 | form-data-encoder: 1.7.2 3118 | formdata-node: 4.4.1 3119 | node-fetch: 2.7.0 3120 | web-streams-polyfill: 3.3.2 3121 | transitivePeerDependencies: 3122 | - encoding 3123 | dev: false 3124 | 3125 | /ora@7.0.1: 3126 | resolution: {integrity: sha512-0TUxTiFJWv+JnjWm4o9yvuskpEJLXTcng8MJuKd+SzAzp2o+OP3HWqNhB4OdJRt1Vsd9/mR0oyaEYlOnL7XIRw==} 3127 | engines: {node: '>=16'} 3128 | dependencies: 3129 | chalk: 5.3.0 3130 | cli-cursor: 4.0.0 3131 | cli-spinners: 2.9.2 3132 | is-interactive: 2.0.0 3133 | is-unicode-supported: 1.3.0 3134 | log-symbols: 5.1.0 3135 | stdin-discarder: 0.1.0 3136 | string-width: 6.1.0 3137 | strip-ansi: 7.1.0 3138 | dev: false 3139 | 3140 | /p-limit@2.3.0: 3141 | resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} 3142 | engines: {node: '>=6'} 3143 | dependencies: 3144 | p-try: 2.2.0 3145 | dev: false 3146 | 3147 | /p-limit@3.1.0: 3148 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 3149 | engines: {node: '>=10'} 3150 | dependencies: 3151 | yocto-queue: 0.1.0 3152 | dev: false 3153 | 3154 | /p-limit@5.0.0: 3155 | resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==} 3156 | engines: {node: '>=18'} 3157 | dependencies: 3158 | yocto-queue: 1.0.0 3159 | dev: false 3160 | 3161 | /p-locate@4.1.0: 3162 | resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} 3163 | engines: {node: '>=8'} 3164 | dependencies: 3165 | p-limit: 2.3.0 3166 | dev: false 3167 | 3168 | /p-locate@5.0.0: 3169 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 3170 | engines: {node: '>=10'} 3171 | dependencies: 3172 | p-limit: 3.1.0 3173 | dev: false 3174 | 3175 | /p-queue@8.0.1: 3176 | resolution: {integrity: sha512-NXzu9aQJTAzbBqOt2hwsR63ea7yvxJc0PwN/zobNAudYfb1B7R08SzB4TsLeSbUCuG467NhnoT0oO6w1qRO+BA==} 3177 | engines: {node: '>=18'} 3178 | dependencies: 3179 | eventemitter3: 5.0.1 3180 | p-timeout: 6.1.2 3181 | dev: false 3182 | 3183 | /p-timeout@6.1.2: 3184 | resolution: {integrity: sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ==} 3185 | engines: {node: '>=14.16'} 3186 | dev: false 3187 | 3188 | /p-try@2.2.0: 3189 | resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} 3190 | engines: {node: '>=6'} 3191 | dev: false 3192 | 3193 | /parse-latin@5.0.1: 3194 | resolution: {integrity: sha512-b/K8ExXaWC9t34kKeDV8kGXBkXZ1HCSAZRYE7HR14eA1GlXX5L8iWhs8USJNhQU9q5ci413jCKF0gOyovvyRBg==} 3195 | dependencies: 3196 | nlcst-to-string: 3.1.1 3197 | unist-util-modify-children: 3.1.1 3198 | unist-util-visit-children: 2.0.2 3199 | dev: false 3200 | 3201 | /parse5@7.1.2: 3202 | resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==} 3203 | dependencies: 3204 | entities: 4.5.0 3205 | dev: false 3206 | 3207 | /pascal-case@3.1.2: 3208 | resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} 3209 | dependencies: 3210 | no-case: 3.0.4 3211 | tslib: 2.6.2 3212 | dev: false 3213 | 3214 | /path-browserify@1.0.1: 3215 | resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} 3216 | dev: false 3217 | 3218 | /path-exists@4.0.0: 3219 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 3220 | engines: {node: '>=8'} 3221 | dev: false 3222 | 3223 | /path-key@3.1.1: 3224 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 3225 | engines: {node: '>=8'} 3226 | dev: false 3227 | 3228 | /path-key@4.0.0: 3229 | resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} 3230 | engines: {node: '>=12'} 3231 | dev: false 3232 | 3233 | /path-parse@1.0.7: 3234 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 3235 | dev: false 3236 | 3237 | /path-scurry@1.10.1: 3238 | resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} 3239 | engines: {node: '>=16 || 14 >=14.17'} 3240 | dependencies: 3241 | lru-cache: 10.2.0 3242 | minipass: 7.0.4 3243 | dev: false 3244 | 3245 | /path-to-regexp@6.2.1: 3246 | resolution: {integrity: sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==} 3247 | dev: false 3248 | 3249 | /periscopic@3.1.0: 3250 | resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} 3251 | dependencies: 3252 | '@types/estree': 1.0.5 3253 | estree-walker: 3.0.3 3254 | is-reference: 3.0.2 3255 | 3256 | /picocolors@1.0.0: 3257 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 3258 | dev: false 3259 | 3260 | /picomatch@2.3.1: 3261 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 3262 | engines: {node: '>=8.6'} 3263 | dev: false 3264 | 3265 | /pify@2.3.0: 3266 | resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} 3267 | engines: {node: '>=0.10.0'} 3268 | dev: false 3269 | 3270 | /pify@4.0.1: 3271 | resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} 3272 | engines: {node: '>=6'} 3273 | dev: false 3274 | 3275 | /pirates@4.0.6: 3276 | resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} 3277 | engines: {node: '>= 6'} 3278 | dev: false 3279 | 3280 | /pkg-dir@4.2.0: 3281 | resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} 3282 | engines: {node: '>=8'} 3283 | dependencies: 3284 | find-up: 4.1.0 3285 | dev: false 3286 | 3287 | /postcss-import@15.1.0(postcss@8.4.33): 3288 | resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} 3289 | engines: {node: '>=14.0.0'} 3290 | peerDependencies: 3291 | postcss: ^8.0.0 3292 | dependencies: 3293 | postcss: 8.4.33 3294 | postcss-value-parser: 4.2.0 3295 | read-cache: 1.0.0 3296 | resolve: 1.22.8 3297 | dev: false 3298 | 3299 | /postcss-js@4.0.1(postcss@8.4.33): 3300 | resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} 3301 | engines: {node: ^12 || ^14 || >= 16} 3302 | peerDependencies: 3303 | postcss: ^8.4.21 3304 | dependencies: 3305 | camelcase-css: 2.0.1 3306 | postcss: 8.4.33 3307 | dev: false 3308 | 3309 | /postcss-load-config@4.0.2(postcss@8.4.33): 3310 | resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} 3311 | engines: {node: '>= 14'} 3312 | peerDependencies: 3313 | postcss: '>=8.0.9' 3314 | ts-node: '>=9.0.0' 3315 | peerDependenciesMeta: 3316 | postcss: 3317 | optional: true 3318 | ts-node: 3319 | optional: true 3320 | dependencies: 3321 | lilconfig: 3.0.0 3322 | postcss: 8.4.33 3323 | yaml: 2.3.4 3324 | dev: false 3325 | 3326 | /postcss-nested@6.0.1(postcss@8.4.33): 3327 | resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} 3328 | engines: {node: '>=12.0'} 3329 | peerDependencies: 3330 | postcss: ^8.2.14 3331 | dependencies: 3332 | postcss: 8.4.33 3333 | postcss-selector-parser: 6.0.15 3334 | dev: false 3335 | 3336 | /postcss-selector-parser@6.0.15: 3337 | resolution: {integrity: sha512-rEYkQOMUCEMhsKbK66tbEU9QVIxbhN18YiniAwA7XQYTVBqrBy+P2p5JcdqsHgKM2zWylp8d7J6eszocfds5Sw==} 3338 | engines: {node: '>=4'} 3339 | dependencies: 3340 | cssesc: 3.0.0 3341 | util-deprecate: 1.0.2 3342 | dev: false 3343 | 3344 | /postcss-value-parser@4.2.0: 3345 | resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} 3346 | dev: false 3347 | 3348 | /postcss@8.4.33: 3349 | resolution: {integrity: sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==} 3350 | engines: {node: ^10 || ^12 || >=14} 3351 | dependencies: 3352 | nanoid: 3.3.7 3353 | picocolors: 1.0.0 3354 | source-map-js: 1.0.2 3355 | dev: false 3356 | 3357 | /prebuild-install@7.1.1: 3358 | resolution: {integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==} 3359 | engines: {node: '>=10'} 3360 | hasBin: true 3361 | requiresBuild: true 3362 | dependencies: 3363 | detect-libc: 2.0.2 3364 | expand-template: 2.0.3 3365 | github-from-package: 0.0.0 3366 | minimist: 1.2.8 3367 | mkdirp-classic: 0.5.3 3368 | napi-build-utils: 1.0.2 3369 | node-abi: 3.54.0 3370 | pump: 3.0.0 3371 | rc: 1.2.8 3372 | simple-get: 4.0.1 3373 | tar-fs: 2.1.1 3374 | tunnel-agent: 0.6.0 3375 | dev: false 3376 | optional: true 3377 | 3378 | /preferred-pm@3.1.2: 3379 | resolution: {integrity: sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==} 3380 | engines: {node: '>=10'} 3381 | dependencies: 3382 | find-up: 5.0.0 3383 | find-yarn-workspace-root2: 1.2.16 3384 | path-exists: 4.0.0 3385 | which-pm: 2.0.0 3386 | dev: false 3387 | 3388 | /prismjs@1.29.0: 3389 | resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} 3390 | engines: {node: '>=6'} 3391 | dev: false 3392 | 3393 | /probe-image-size@7.2.3: 3394 | resolution: {integrity: sha512-HubhG4Rb2UH8YtV4ba0Vp5bQ7L78RTONYu/ujmCu5nBI8wGv24s4E9xSKBi0N1MowRpxk76pFCpJtW0KPzOK0w==} 3395 | dependencies: 3396 | lodash.merge: 4.6.2 3397 | needle: 2.9.1 3398 | stream-parser: 0.3.1 3399 | transitivePeerDependencies: 3400 | - supports-color 3401 | dev: false 3402 | 3403 | /prompts@2.4.2: 3404 | resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} 3405 | engines: {node: '>= 6'} 3406 | dependencies: 3407 | kleur: 3.0.3 3408 | sisteransi: 1.0.5 3409 | dev: false 3410 | 3411 | /property-information@6.4.1: 3412 | resolution: {integrity: sha512-OHYtXfu5aI2sS2LWFSN5rgJjrQ4pCy8i1jubJLe2QvMF8JJ++HXTUIVWFLfXJoaOfvYYjk2SN8J2wFUWIGXT4w==} 3413 | dev: false 3414 | 3415 | /pump@3.0.0: 3416 | resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} 3417 | requiresBuild: true 3418 | dependencies: 3419 | end-of-stream: 1.4.4 3420 | once: 1.4.0 3421 | dev: false 3422 | optional: true 3423 | 3424 | /q@1.5.1: 3425 | resolution: {integrity: sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==} 3426 | engines: {node: '>=0.6.0', teleport: '>=0.2.0'} 3427 | dev: false 3428 | 3429 | /queue-microtask@1.2.3: 3430 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 3431 | dev: false 3432 | 3433 | /queue-tick@1.0.1: 3434 | resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==} 3435 | requiresBuild: true 3436 | dev: false 3437 | optional: true 3438 | 3439 | /rc@1.2.8: 3440 | resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} 3441 | hasBin: true 3442 | requiresBuild: true 3443 | dependencies: 3444 | deep-extend: 0.6.0 3445 | ini: 1.3.8 3446 | minimist: 1.2.8 3447 | strip-json-comments: 2.0.1 3448 | dev: false 3449 | optional: true 3450 | 3451 | /read-cache@1.0.0: 3452 | resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} 3453 | dependencies: 3454 | pify: 2.3.0 3455 | dev: false 3456 | 3457 | /readable-stream@3.6.2: 3458 | resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} 3459 | engines: {node: '>= 6'} 3460 | dependencies: 3461 | inherits: 2.0.4 3462 | string_decoder: 1.3.0 3463 | util-deprecate: 1.0.2 3464 | dev: false 3465 | 3466 | /readdirp@3.6.0: 3467 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} 3468 | engines: {node: '>=8.10.0'} 3469 | dependencies: 3470 | picomatch: 2.3.1 3471 | dev: false 3472 | 3473 | /regenerator-runtime@0.14.1: 3474 | resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} 3475 | dev: true 3476 | 3477 | /rehype-parse@9.0.0: 3478 | resolution: {integrity: sha512-WG7nfvmWWkCR++KEkZevZb/uw41E8TsH4DsY9UxsTbIXCVGbAs4S+r8FrQ+OtH5EEQAs+5UxKC42VinkmpA1Yw==} 3479 | dependencies: 3480 | '@types/hast': 3.0.4 3481 | hast-util-from-html: 2.0.1 3482 | unified: 11.0.4 3483 | dev: false 3484 | 3485 | /rehype-raw@7.0.0: 3486 | resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} 3487 | dependencies: 3488 | '@types/hast': 3.0.4 3489 | hast-util-raw: 9.0.2 3490 | vfile: 6.0.1 3491 | dev: false 3492 | 3493 | /rehype-stringify@10.0.0: 3494 | resolution: {integrity: sha512-1TX1i048LooI9QoecrXy7nGFFbFSufxVRAfc6Y9YMRAi56l+oB0zP51mLSV312uRuvVLPV1opSlJmslozR1XHQ==} 3495 | dependencies: 3496 | '@types/hast': 3.0.4 3497 | hast-util-to-html: 9.0.0 3498 | unified: 11.0.4 3499 | dev: false 3500 | 3501 | /rehype@13.0.1: 3502 | resolution: {integrity: sha512-AcSLS2mItY+0fYu9xKxOu1LhUZeBZZBx8//5HKzF+0XP+eP8+6a5MXn2+DW2kfXR6Dtp1FEXMVrjyKAcvcU8vg==} 3503 | dependencies: 3504 | '@types/hast': 3.0.4 3505 | rehype-parse: 9.0.0 3506 | rehype-stringify: 10.0.0 3507 | unified: 11.0.4 3508 | dev: false 3509 | 3510 | /remark-gfm@4.0.0: 3511 | resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==} 3512 | dependencies: 3513 | '@types/mdast': 4.0.3 3514 | mdast-util-gfm: 3.0.0 3515 | micromark-extension-gfm: 3.0.0 3516 | remark-parse: 11.0.0 3517 | remark-stringify: 11.0.0 3518 | unified: 11.0.4 3519 | transitivePeerDependencies: 3520 | - supports-color 3521 | dev: false 3522 | 3523 | /remark-parse@11.0.0: 3524 | resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} 3525 | dependencies: 3526 | '@types/mdast': 4.0.3 3527 | mdast-util-from-markdown: 2.0.0 3528 | micromark-util-types: 2.0.0 3529 | unified: 11.0.4 3530 | transitivePeerDependencies: 3531 | - supports-color 3532 | dev: false 3533 | 3534 | /remark-rehype@11.1.0: 3535 | resolution: {integrity: sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==} 3536 | dependencies: 3537 | '@types/hast': 3.0.4 3538 | '@types/mdast': 4.0.3 3539 | mdast-util-to-hast: 13.0.2 3540 | unified: 11.0.4 3541 | vfile: 6.0.1 3542 | dev: false 3543 | 3544 | /remark-smartypants@2.1.0: 3545 | resolution: {integrity: sha512-qoF6Vz3BjU2tP6OfZqHOvCU0ACmu/6jhGaINSQRI9mM7wCxNQTKB3JUAN4SVoN2ybElEDTxBIABRep7e569iJw==} 3546 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 3547 | dependencies: 3548 | retext: 8.1.0 3549 | retext-smartypants: 5.2.0 3550 | unist-util-visit: 5.0.0 3551 | dev: false 3552 | 3553 | /remark-stringify@11.0.0: 3554 | resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} 3555 | dependencies: 3556 | '@types/mdast': 4.0.3 3557 | mdast-util-to-markdown: 2.1.0 3558 | unified: 11.0.4 3559 | dev: false 3560 | 3561 | /request-light@0.7.0: 3562 | resolution: {integrity: sha512-lMbBMrDoxgsyO+yB3sDcrDuX85yYt7sS8BfQd11jtbW/z5ZWgLZRcEGLsLoYw7I0WSUGQBs8CC8ScIxkTX1+6Q==} 3563 | dev: false 3564 | 3565 | /require-directory@2.1.1: 3566 | resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} 3567 | engines: {node: '>=0.10.0'} 3568 | dev: false 3569 | 3570 | /resolve@1.22.8: 3571 | resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} 3572 | hasBin: true 3573 | dependencies: 3574 | is-core-module: 2.13.1 3575 | path-parse: 1.0.7 3576 | supports-preserve-symlinks-flag: 1.0.0 3577 | dev: false 3578 | 3579 | /restore-cursor@4.0.0: 3580 | resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} 3581 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 3582 | dependencies: 3583 | onetime: 5.1.2 3584 | signal-exit: 3.0.7 3585 | dev: false 3586 | 3587 | /retext-latin@3.1.0: 3588 | resolution: {integrity: sha512-5MrD1tuebzO8ppsja5eEu+ZbBeUNCjoEarn70tkXOS7Bdsdf6tNahsv2bY0Z8VooFF6cw7/6S+d3yI/TMlMVVQ==} 3589 | dependencies: 3590 | '@types/nlcst': 1.0.4 3591 | parse-latin: 5.0.1 3592 | unherit: 3.0.1 3593 | unified: 10.1.2 3594 | dev: false 3595 | 3596 | /retext-smartypants@5.2.0: 3597 | resolution: {integrity: sha512-Do8oM+SsjrbzT2UNIKgheP0hgUQTDDQYyZaIY3kfq0pdFzoPk+ZClYJ+OERNXveog4xf1pZL4PfRxNoVL7a/jw==} 3598 | dependencies: 3599 | '@types/nlcst': 1.0.4 3600 | nlcst-to-string: 3.1.1 3601 | unified: 10.1.2 3602 | unist-util-visit: 4.1.2 3603 | dev: false 3604 | 3605 | /retext-stringify@3.1.0: 3606 | resolution: {integrity: sha512-767TLOaoXFXyOnjx/EggXlb37ZD2u4P1n0GJqVdpipqACsQP+20W+BNpMYrlJkq7hxffnFk+jc6mAK9qrbuB8w==} 3607 | dependencies: 3608 | '@types/nlcst': 1.0.4 3609 | nlcst-to-string: 3.1.1 3610 | unified: 10.1.2 3611 | dev: false 3612 | 3613 | /retext@8.1.0: 3614 | resolution: {integrity: sha512-N9/Kq7YTn6ZpzfiGW45WfEGJqFf1IM1q8OsRa1CGzIebCJBNCANDRmOrholiDRGKo/We7ofKR4SEvcGAWEMD3Q==} 3615 | dependencies: 3616 | '@types/nlcst': 1.0.4 3617 | retext-latin: 3.1.0 3618 | retext-stringify: 3.1.0 3619 | unified: 10.1.2 3620 | dev: false 3621 | 3622 | /reusify@1.0.4: 3623 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 3624 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 3625 | dev: false 3626 | 3627 | /rollup@4.9.6: 3628 | resolution: {integrity: sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==} 3629 | engines: {node: '>=18.0.0', npm: '>=8.0.0'} 3630 | hasBin: true 3631 | dependencies: 3632 | '@types/estree': 1.0.5 3633 | optionalDependencies: 3634 | '@rollup/rollup-android-arm-eabi': 4.9.6 3635 | '@rollup/rollup-android-arm64': 4.9.6 3636 | '@rollup/rollup-darwin-arm64': 4.9.6 3637 | '@rollup/rollup-darwin-x64': 4.9.6 3638 | '@rollup/rollup-linux-arm-gnueabihf': 4.9.6 3639 | '@rollup/rollup-linux-arm64-gnu': 4.9.6 3640 | '@rollup/rollup-linux-arm64-musl': 4.9.6 3641 | '@rollup/rollup-linux-riscv64-gnu': 4.9.6 3642 | '@rollup/rollup-linux-x64-gnu': 4.9.6 3643 | '@rollup/rollup-linux-x64-musl': 4.9.6 3644 | '@rollup/rollup-win32-arm64-msvc': 4.9.6 3645 | '@rollup/rollup-win32-ia32-msvc': 4.9.6 3646 | '@rollup/rollup-win32-x64-msvc': 4.9.6 3647 | fsevents: 2.3.3 3648 | dev: false 3649 | 3650 | /run-parallel@1.2.0: 3651 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 3652 | dependencies: 3653 | queue-microtask: 1.2.3 3654 | dev: false 3655 | 3656 | /safe-buffer@5.2.1: 3657 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} 3658 | dev: false 3659 | 3660 | /safer-buffer@2.1.2: 3661 | resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} 3662 | dev: false 3663 | 3664 | /sax@1.3.0: 3665 | resolution: {integrity: sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==} 3666 | dev: false 3667 | 3668 | /section-matter@1.0.0: 3669 | resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==} 3670 | engines: {node: '>=4'} 3671 | dependencies: 3672 | extend-shallow: 2.0.1 3673 | kind-of: 6.0.3 3674 | dev: false 3675 | 3676 | /semver@6.3.1: 3677 | resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} 3678 | hasBin: true 3679 | dev: false 3680 | 3681 | /semver@7.5.4: 3682 | resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} 3683 | engines: {node: '>=10'} 3684 | hasBin: true 3685 | dependencies: 3686 | lru-cache: 6.0.0 3687 | dev: false 3688 | 3689 | /server-destroy@1.0.1: 3690 | resolution: {integrity: sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ==} 3691 | dev: false 3692 | 3693 | /sharp@0.32.6: 3694 | resolution: {integrity: sha512-KyLTWwgcR9Oe4d9HwCwNM2l7+J0dUQwn/yf7S0EnTtb0eVS4RxO0eUSvxPtzT4F3SY+C4K6fqdv/DO27sJ/v/w==} 3695 | engines: {node: '>=14.15.0'} 3696 | requiresBuild: true 3697 | dependencies: 3698 | color: 4.2.3 3699 | detect-libc: 2.0.2 3700 | node-addon-api: 6.1.0 3701 | prebuild-install: 7.1.1 3702 | semver: 7.5.4 3703 | simple-get: 4.0.1 3704 | tar-fs: 3.0.4 3705 | tunnel-agent: 0.6.0 3706 | dev: false 3707 | optional: true 3708 | 3709 | /shebang-command@2.0.0: 3710 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 3711 | engines: {node: '>=8'} 3712 | dependencies: 3713 | shebang-regex: 3.0.0 3714 | dev: false 3715 | 3716 | /shebang-regex@3.0.0: 3717 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 3718 | engines: {node: '>=8'} 3719 | dev: false 3720 | 3721 | /shikiji-core@0.9.19: 3722 | resolution: {integrity: sha512-AFJu/vcNT21t0e6YrfadZ+9q86gvPum6iywRyt1OtIPjPFe25RQnYJyxHQPMLKCCWA992TPxmEmbNcOZCAJclw==} 3723 | dev: false 3724 | 3725 | /shikiji@0.9.19: 3726 | resolution: {integrity: sha512-Kw2NHWktdcdypCj1GkKpXH4o6Vxz8B8TykPlPuLHOGSV8VkhoCLcFOH4k19K4LXAQYRQmxg+0X/eM+m2sLhAkg==} 3727 | dependencies: 3728 | shikiji-core: 0.9.19 3729 | dev: false 3730 | 3731 | /signal-exit@3.0.7: 3732 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} 3733 | dev: false 3734 | 3735 | /signal-exit@4.1.0: 3736 | resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} 3737 | engines: {node: '>=14'} 3738 | dev: false 3739 | 3740 | /simple-concat@1.0.1: 3741 | resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} 3742 | requiresBuild: true 3743 | dev: false 3744 | optional: true 3745 | 3746 | /simple-get@4.0.1: 3747 | resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} 3748 | requiresBuild: true 3749 | dependencies: 3750 | decompress-response: 6.0.0 3751 | once: 1.4.0 3752 | simple-concat: 1.0.1 3753 | dev: false 3754 | optional: true 3755 | 3756 | /simple-swizzle@0.2.2: 3757 | resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} 3758 | requiresBuild: true 3759 | dependencies: 3760 | is-arrayish: 0.3.2 3761 | dev: false 3762 | optional: true 3763 | 3764 | /sisteransi@1.0.5: 3765 | resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} 3766 | dev: false 3767 | 3768 | /source-map-js@1.0.2: 3769 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} 3770 | engines: {node: '>=0.10.0'} 3771 | 3772 | /space-separated-tokens@2.0.2: 3773 | resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} 3774 | dev: false 3775 | 3776 | /sprintf-js@1.0.3: 3777 | resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} 3778 | dev: false 3779 | 3780 | /stdin-discarder@0.1.0: 3781 | resolution: {integrity: sha512-xhV7w8S+bUwlPTb4bAOUQhv8/cSS5offJuX8GQGq32ONF0ZtDWKfkdomM3HMRA+LhX6um/FZ0COqlwsjD53LeQ==} 3782 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 3783 | dependencies: 3784 | bl: 5.1.0 3785 | dev: false 3786 | 3787 | /stream-parser@0.3.1: 3788 | resolution: {integrity: sha512-bJ/HgKq41nlKvlhccD5kaCr/P+Hu0wPNKPJOH7en+YrJu/9EgqUF+88w5Jb6KNcjOFMhfX4B2asfeAtIGuHObQ==} 3789 | dependencies: 3790 | debug: 2.6.9 3791 | transitivePeerDependencies: 3792 | - supports-color 3793 | dev: false 3794 | 3795 | /streamx@2.15.6: 3796 | resolution: {integrity: sha512-q+vQL4AAz+FdfT137VF69Cc/APqUbxy+MDOImRrMvchJpigHj9GksgDU2LYbO9rx7RX6osWgxJB2WxhYv4SZAw==} 3797 | requiresBuild: true 3798 | dependencies: 3799 | fast-fifo: 1.3.2 3800 | queue-tick: 1.0.1 3801 | dev: false 3802 | optional: true 3803 | 3804 | /string-width@4.2.3: 3805 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 3806 | engines: {node: '>=8'} 3807 | dependencies: 3808 | emoji-regex: 8.0.0 3809 | is-fullwidth-code-point: 3.0.0 3810 | strip-ansi: 6.0.1 3811 | dev: false 3812 | 3813 | /string-width@5.1.2: 3814 | resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} 3815 | engines: {node: '>=12'} 3816 | dependencies: 3817 | eastasianwidth: 0.2.0 3818 | emoji-regex: 9.2.2 3819 | strip-ansi: 7.1.0 3820 | dev: false 3821 | 3822 | /string-width@6.1.0: 3823 | resolution: {integrity: sha512-k01swCJAgQmuADB0YIc+7TuatfNvTBVOoaUWJjTB9R4VJzR5vNWzf5t42ESVZFPS8xTySF7CAdV4t/aaIm3UnQ==} 3824 | engines: {node: '>=16'} 3825 | dependencies: 3826 | eastasianwidth: 0.2.0 3827 | emoji-regex: 10.3.0 3828 | strip-ansi: 7.1.0 3829 | dev: false 3830 | 3831 | /string-width@7.1.0: 3832 | resolution: {integrity: sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==} 3833 | engines: {node: '>=18'} 3834 | dependencies: 3835 | emoji-regex: 10.3.0 3836 | get-east-asian-width: 1.2.0 3837 | strip-ansi: 7.1.0 3838 | dev: false 3839 | 3840 | /string_decoder@1.3.0: 3841 | resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} 3842 | dependencies: 3843 | safe-buffer: 5.2.1 3844 | dev: false 3845 | 3846 | /stringify-entities@4.0.3: 3847 | resolution: {integrity: sha512-BP9nNHMhhfcMbiuQKCqMjhDP5yBCAxsPu4pHFFzJ6Alo9dZgY4VLDPutXqIjpRiMoKdp7Av85Gr73Q5uH9k7+g==} 3848 | dependencies: 3849 | character-entities-html4: 2.1.0 3850 | character-entities-legacy: 3.0.0 3851 | dev: false 3852 | 3853 | /strip-ansi@6.0.1: 3854 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 3855 | engines: {node: '>=8'} 3856 | dependencies: 3857 | ansi-regex: 5.0.1 3858 | dev: false 3859 | 3860 | /strip-ansi@7.1.0: 3861 | resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} 3862 | engines: {node: '>=12'} 3863 | dependencies: 3864 | ansi-regex: 6.0.1 3865 | dev: false 3866 | 3867 | /strip-bom-string@1.0.0: 3868 | resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==} 3869 | engines: {node: '>=0.10.0'} 3870 | dev: false 3871 | 3872 | /strip-bom@3.0.0: 3873 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} 3874 | engines: {node: '>=4'} 3875 | dev: false 3876 | 3877 | /strip-final-newline@3.0.0: 3878 | resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} 3879 | engines: {node: '>=12'} 3880 | dev: false 3881 | 3882 | /strip-json-comments@2.0.1: 3883 | resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} 3884 | engines: {node: '>=0.10.0'} 3885 | requiresBuild: true 3886 | dev: false 3887 | optional: true 3888 | 3889 | /sucrase@3.35.0: 3890 | resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} 3891 | engines: {node: '>=16 || 14 >=14.17'} 3892 | hasBin: true 3893 | dependencies: 3894 | '@jridgewell/gen-mapping': 0.3.3 3895 | commander: 4.1.1 3896 | glob: 10.3.10 3897 | lines-and-columns: 1.2.4 3898 | mz: 2.7.0 3899 | pirates: 4.0.6 3900 | ts-interface-checker: 0.1.13 3901 | dev: false 3902 | 3903 | /supports-color@5.5.0: 3904 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} 3905 | engines: {node: '>=4'} 3906 | dependencies: 3907 | has-flag: 3.0.0 3908 | dev: false 3909 | 3910 | /supports-preserve-symlinks-flag@1.0.0: 3911 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 3912 | engines: {node: '>= 0.4'} 3913 | dev: false 3914 | 3915 | /svelte-file-dropzone@2.0.4(svelte@4.2.9): 3916 | resolution: {integrity: sha512-MkCQ68cXJ4yCSn5Qo8O43cV1Yx9Hq6vJ9kIQk3QlrMzqik398UTXjHTgZpMt2OKtfeRdOFd474CjWpQDJOnCog==} 3917 | peerDependencies: 3918 | svelte: ^3.54.0 || ^4.0.0 3919 | dependencies: 3920 | file-selector: 0.6.0 3921 | svelte: 4.2.9 3922 | dev: false 3923 | 3924 | /svelte-hmr@0.15.3(svelte@4.2.9): 3925 | resolution: {integrity: sha512-41snaPswvSf8TJUhlkoJBekRrABDXDMdpNpT2tfHIv4JuhgvHqLMhEPGtaQn0BmbNSTkuz2Ed20DF2eHw0SmBQ==} 3926 | engines: {node: ^12.20 || ^14.13.1 || >= 16} 3927 | peerDependencies: 3928 | svelte: ^3.19.0 || ^4.0.0 3929 | dependencies: 3930 | svelte: 4.2.9 3931 | dev: false 3932 | 3933 | /svelte2tsx@0.6.27(svelte@4.2.9)(typescript@5.3.3): 3934 | resolution: {integrity: sha512-E1uPW1o6VsbRz+nUk3fznZ2lSmCITAJoNu8AYefWSvIwE2pSB01i5sId4RMbWNzfcwCQl1DcgGShCPcldl4rvg==} 3935 | peerDependencies: 3936 | svelte: ^3.55 || ^4.0.0-next.0 || ^4.0 || ^5.0.0-next.0 3937 | typescript: ^4.9.4 || ^5.0.0 3938 | dependencies: 3939 | dedent-js: 1.0.1 3940 | pascal-case: 3.1.2 3941 | svelte: 4.2.9 3942 | typescript: 5.3.3 3943 | dev: false 3944 | 3945 | /svelte@4.2.9: 3946 | resolution: {integrity: sha512-hsoB/WZGEPFXeRRLPhPrbRz67PhP6sqYgvwcAs+gWdSQSvNDw+/lTeUJSWe5h2xC97Fz/8QxAOqItwBzNJPU8w==} 3947 | engines: {node: '>=16'} 3948 | dependencies: 3949 | '@ampproject/remapping': 2.2.1 3950 | '@jridgewell/sourcemap-codec': 1.4.15 3951 | '@jridgewell/trace-mapping': 0.3.22 3952 | '@types/estree': 1.0.5 3953 | acorn: 8.11.3 3954 | aria-query: 5.3.0 3955 | axobject-query: 4.0.0 3956 | code-red: 1.0.4 3957 | css-tree: 2.3.1 3958 | estree-walker: 3.0.3 3959 | is-reference: 3.0.2 3960 | locate-character: 3.0.0 3961 | magic-string: 0.30.6 3962 | periscopic: 3.1.0 3963 | 3964 | /svg.draggable.js@2.2.2: 3965 | resolution: {integrity: sha512-JzNHBc2fLQMzYCZ90KZHN2ohXL0BQJGQimK1kGk6AvSeibuKcIdDX9Kr0dT9+UJ5O8nYA0RB839Lhvk4CY4MZw==} 3966 | engines: {node: '>= 0.8.0'} 3967 | dependencies: 3968 | svg.js: 2.7.1 3969 | dev: true 3970 | 3971 | /svg.easing.js@2.0.0: 3972 | resolution: {integrity: sha512-//ctPdJMGy22YoYGV+3HEfHbm6/69LJUTAqI2/5qBvaNHZ9uUFVC82B0Pl299HzgH13rKrBgi4+XyXXyVWWthA==} 3973 | engines: {node: '>= 0.8.0'} 3974 | dependencies: 3975 | svg.js: 2.7.1 3976 | dev: true 3977 | 3978 | /svg.filter.js@2.0.2: 3979 | resolution: {integrity: sha512-xkGBwU+dKBzqg5PtilaTb0EYPqPfJ9Q6saVldX+5vCRy31P6TlRCP3U9NxH3HEufkKkpNgdTLBJnmhDHeTqAkw==} 3980 | engines: {node: '>= 0.8.0'} 3981 | dependencies: 3982 | svg.js: 2.7.1 3983 | dev: true 3984 | 3985 | /svg.js@2.7.1: 3986 | resolution: {integrity: sha512-ycbxpizEQktk3FYvn/8BH+6/EuWXg7ZpQREJvgacqn46gIddG24tNNe4Son6omdXCnSOaApnpZw6MPCBA1dODA==} 3987 | dev: true 3988 | 3989 | /svg.pathmorphing.js@0.1.3: 3990 | resolution: {integrity: sha512-49HWI9X4XQR/JG1qXkSDV8xViuTLIWm/B/7YuQELV5KMOPtXjiwH4XPJvr/ghEDibmLQ9Oc22dpWpG0vUDDNww==} 3991 | engines: {node: '>= 0.8.0'} 3992 | dependencies: 3993 | svg.js: 2.7.1 3994 | dev: true 3995 | 3996 | /svg.resize.js@1.4.3: 3997 | resolution: {integrity: sha512-9k5sXJuPKp+mVzXNvxz7U0uC9oVMQrrf7cFsETznzUDDm0x8+77dtZkWdMfRlmbkEEYvUn9btKuZ3n41oNA+uw==} 3998 | engines: {node: '>= 0.8.0'} 3999 | dependencies: 4000 | svg.js: 2.7.1 4001 | svg.select.js: 2.1.2 4002 | dev: true 4003 | 4004 | /svg.select.js@2.1.2: 4005 | resolution: {integrity: sha512-tH6ABEyJsAOVAhwcCjF8mw4crjXSI1aa7j2VQR8ZuJ37H2MBUbyeqYr5nEO7sSN3cy9AR9DUwNg0t/962HlDbQ==} 4006 | engines: {node: '>= 0.8.0'} 4007 | dependencies: 4008 | svg.js: 2.7.1 4009 | dev: true 4010 | 4011 | /svg.select.js@3.0.1: 4012 | resolution: {integrity: sha512-h5IS/hKkuVCbKSieR9uQCj9w+zLHoPh+ce19bBYyqF53g6mnPB8sAtIbe1s9dh2S2fCmYX2xel1Ln3PJBbK4kw==} 4013 | engines: {node: '>= 0.8.0'} 4014 | dependencies: 4015 | svg.js: 2.7.1 4016 | dev: true 4017 | 4018 | /tailwind-merge@2.2.1: 4019 | resolution: {integrity: sha512-o+2GTLkthfa5YUt4JxPfzMIpQzZ3adD1vLVkvKE1Twl9UAhGsEbIZhHHZVRttyW177S8PDJI3bTQNaebyofK3Q==} 4020 | dependencies: 4021 | '@babel/runtime': 7.23.9 4022 | dev: true 4023 | 4024 | /tailwindcss@3.4.1: 4025 | resolution: {integrity: sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA==} 4026 | engines: {node: '>=14.0.0'} 4027 | hasBin: true 4028 | dependencies: 4029 | '@alloc/quick-lru': 5.2.0 4030 | arg: 5.0.2 4031 | chokidar: 3.5.3 4032 | didyoumean: 1.2.2 4033 | dlv: 1.1.3 4034 | fast-glob: 3.3.2 4035 | glob-parent: 6.0.2 4036 | is-glob: 4.0.3 4037 | jiti: 1.21.0 4038 | lilconfig: 2.1.0 4039 | micromatch: 4.0.5 4040 | normalize-path: 3.0.0 4041 | object-hash: 3.0.0 4042 | picocolors: 1.0.0 4043 | postcss: 8.4.33 4044 | postcss-import: 15.1.0(postcss@8.4.33) 4045 | postcss-js: 4.0.1(postcss@8.4.33) 4046 | postcss-load-config: 4.0.2(postcss@8.4.33) 4047 | postcss-nested: 6.0.1(postcss@8.4.33) 4048 | postcss-selector-parser: 6.0.15 4049 | resolve: 1.22.8 4050 | sucrase: 3.35.0 4051 | transitivePeerDependencies: 4052 | - ts-node 4053 | dev: false 4054 | 4055 | /tar-fs@2.1.1: 4056 | resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} 4057 | requiresBuild: true 4058 | dependencies: 4059 | chownr: 1.1.4 4060 | mkdirp-classic: 0.5.3 4061 | pump: 3.0.0 4062 | tar-stream: 2.2.0 4063 | dev: false 4064 | optional: true 4065 | 4066 | /tar-fs@3.0.4: 4067 | resolution: {integrity: sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==} 4068 | requiresBuild: true 4069 | dependencies: 4070 | mkdirp-classic: 0.5.3 4071 | pump: 3.0.0 4072 | tar-stream: 3.1.7 4073 | dev: false 4074 | optional: true 4075 | 4076 | /tar-stream@2.2.0: 4077 | resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} 4078 | engines: {node: '>=6'} 4079 | requiresBuild: true 4080 | dependencies: 4081 | bl: 4.1.0 4082 | end-of-stream: 1.4.4 4083 | fs-constants: 1.0.0 4084 | inherits: 2.0.4 4085 | readable-stream: 3.6.2 4086 | dev: false 4087 | optional: true 4088 | 4089 | /tar-stream@3.1.7: 4090 | resolution: {integrity: sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==} 4091 | requiresBuild: true 4092 | dependencies: 4093 | b4a: 1.6.4 4094 | fast-fifo: 1.3.2 4095 | streamx: 2.15.6 4096 | dev: false 4097 | optional: true 4098 | 4099 | /thenify-all@1.6.0: 4100 | resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} 4101 | engines: {node: '>=0.8'} 4102 | dependencies: 4103 | thenify: 3.3.1 4104 | dev: false 4105 | 4106 | /thenify@3.3.1: 4107 | resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} 4108 | dependencies: 4109 | any-promise: 1.3.0 4110 | dev: false 4111 | 4112 | /to-fast-properties@2.0.0: 4113 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} 4114 | engines: {node: '>=4'} 4115 | dev: false 4116 | 4117 | /to-regex-range@5.0.1: 4118 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 4119 | engines: {node: '>=8.0'} 4120 | dependencies: 4121 | is-number: 7.0.0 4122 | dev: false 4123 | 4124 | /tr46@0.0.3: 4125 | resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} 4126 | dev: false 4127 | 4128 | /trim-lines@3.0.1: 4129 | resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} 4130 | dev: false 4131 | 4132 | /trough@2.1.0: 4133 | resolution: {integrity: sha512-AqTiAOLcj85xS7vQ8QkAV41hPDIJ71XJB4RCUrzo/1GM2CQwhkJGaf9Hgr7BOugMRpgGUrqRg/DrBDl4H40+8g==} 4134 | dev: false 4135 | 4136 | /ts-interface-checker@0.1.13: 4137 | resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} 4138 | dev: false 4139 | 4140 | /tsconfck@3.0.1(typescript@5.3.3): 4141 | resolution: {integrity: sha512-7ppiBlF3UEddCLeI1JRx5m2Ryq+xk4JrZuq4EuYXykipebaq1dV0Fhgr1hb7CkmHt32QSgOZlcqVLEtHBG4/mg==} 4142 | engines: {node: ^18 || >=20} 4143 | hasBin: true 4144 | peerDependencies: 4145 | typescript: ^5.0.0 4146 | peerDependenciesMeta: 4147 | typescript: 4148 | optional: true 4149 | dependencies: 4150 | typescript: 5.3.3 4151 | dev: false 4152 | 4153 | /tslib@2.6.2: 4154 | resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} 4155 | dev: false 4156 | 4157 | /tunnel-agent@0.6.0: 4158 | resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} 4159 | requiresBuild: true 4160 | dependencies: 4161 | safe-buffer: 5.2.1 4162 | dev: false 4163 | optional: true 4164 | 4165 | /type-fest@2.19.0: 4166 | resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} 4167 | engines: {node: '>=12.20'} 4168 | dev: false 4169 | 4170 | /typesafe-path@0.2.2: 4171 | resolution: {integrity: sha512-OJabfkAg1WLZSqJAJ0Z6Sdt3utnbzr/jh+NAHoyWHJe8CMSy79Gm085094M9nvTPy22KzTVn5Zq5mbapCI/hPA==} 4172 | dev: false 4173 | 4174 | /typescript-auto-import-cache@0.3.2: 4175 | resolution: {integrity: sha512-+laqe5SFL1vN62FPOOJSUDTZxtgsoOXjneYOXIpx5rQ4UMiN89NAtJLpqLqyebv9fgQ/IMeeTX+mQyRnwvJzvg==} 4176 | dependencies: 4177 | semver: 7.5.4 4178 | dev: false 4179 | 4180 | /typescript@5.3.3: 4181 | resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} 4182 | engines: {node: '>=14.17'} 4183 | hasBin: true 4184 | dev: false 4185 | 4186 | /undici-types@5.26.5: 4187 | resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} 4188 | dev: false 4189 | 4190 | /unherit@3.0.1: 4191 | resolution: {integrity: sha512-akOOQ/Yln8a2sgcLj4U0Jmx0R5jpIg2IUyRrWOzmEbjBtGzBdHtSeFKgoEcoH4KYIG/Pb8GQ/BwtYm0GCq1Sqg==} 4192 | dev: false 4193 | 4194 | /unified@10.1.2: 4195 | resolution: {integrity: sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==} 4196 | dependencies: 4197 | '@types/unist': 2.0.10 4198 | bail: 2.0.2 4199 | extend: 3.0.2 4200 | is-buffer: 2.0.5 4201 | is-plain-obj: 4.1.0 4202 | trough: 2.1.0 4203 | vfile: 5.3.7 4204 | dev: false 4205 | 4206 | /unified@11.0.4: 4207 | resolution: {integrity: sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==} 4208 | dependencies: 4209 | '@types/unist': 3.0.2 4210 | bail: 2.0.2 4211 | devlop: 1.1.0 4212 | extend: 3.0.2 4213 | is-plain-obj: 4.1.0 4214 | trough: 2.1.0 4215 | vfile: 6.0.1 4216 | dev: false 4217 | 4218 | /unist-util-is@5.2.1: 4219 | resolution: {integrity: sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==} 4220 | dependencies: 4221 | '@types/unist': 2.0.10 4222 | dev: false 4223 | 4224 | /unist-util-is@6.0.0: 4225 | resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} 4226 | dependencies: 4227 | '@types/unist': 3.0.2 4228 | dev: false 4229 | 4230 | /unist-util-modify-children@3.1.1: 4231 | resolution: {integrity: sha512-yXi4Lm+TG5VG+qvokP6tpnk+r1EPwyYL04JWDxLvgvPV40jANh7nm3udk65OOWquvbMDe+PL9+LmkxDpTv/7BA==} 4232 | dependencies: 4233 | '@types/unist': 2.0.10 4234 | array-iterate: 2.0.1 4235 | dev: false 4236 | 4237 | /unist-util-position@5.0.0: 4238 | resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} 4239 | dependencies: 4240 | '@types/unist': 3.0.2 4241 | dev: false 4242 | 4243 | /unist-util-stringify-position@3.0.3: 4244 | resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==} 4245 | dependencies: 4246 | '@types/unist': 2.0.10 4247 | dev: false 4248 | 4249 | /unist-util-stringify-position@4.0.0: 4250 | resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} 4251 | dependencies: 4252 | '@types/unist': 3.0.2 4253 | dev: false 4254 | 4255 | /unist-util-visit-children@2.0.2: 4256 | resolution: {integrity: sha512-+LWpMFqyUwLGpsQxpumsQ9o9DG2VGLFrpz+rpVXYIEdPy57GSy5HioC0g3bg/8WP9oCLlapQtklOzQ8uLS496Q==} 4257 | dependencies: 4258 | '@types/unist': 2.0.10 4259 | dev: false 4260 | 4261 | /unist-util-visit-parents@5.1.3: 4262 | resolution: {integrity: sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==} 4263 | dependencies: 4264 | '@types/unist': 2.0.10 4265 | unist-util-is: 5.2.1 4266 | dev: false 4267 | 4268 | /unist-util-visit-parents@6.0.1: 4269 | resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} 4270 | dependencies: 4271 | '@types/unist': 3.0.2 4272 | unist-util-is: 6.0.0 4273 | dev: false 4274 | 4275 | /unist-util-visit@4.1.2: 4276 | resolution: {integrity: sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==} 4277 | dependencies: 4278 | '@types/unist': 2.0.10 4279 | unist-util-is: 5.2.1 4280 | unist-util-visit-parents: 5.1.3 4281 | dev: false 4282 | 4283 | /unist-util-visit@5.0.0: 4284 | resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} 4285 | dependencies: 4286 | '@types/unist': 3.0.2 4287 | unist-util-is: 6.0.0 4288 | unist-util-visit-parents: 6.0.1 4289 | dev: false 4290 | 4291 | /update-browserslist-db@1.0.13(browserslist@4.22.3): 4292 | resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} 4293 | hasBin: true 4294 | peerDependencies: 4295 | browserslist: '>= 4.21.0' 4296 | dependencies: 4297 | browserslist: 4.22.3 4298 | escalade: 3.1.1 4299 | picocolors: 1.0.0 4300 | dev: false 4301 | 4302 | /util-deprecate@1.0.2: 4303 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 4304 | dev: false 4305 | 4306 | /vfile-location@5.0.2: 4307 | resolution: {integrity: sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==} 4308 | dependencies: 4309 | '@types/unist': 3.0.2 4310 | vfile: 6.0.1 4311 | dev: false 4312 | 4313 | /vfile-message@3.1.4: 4314 | resolution: {integrity: sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==} 4315 | dependencies: 4316 | '@types/unist': 2.0.10 4317 | unist-util-stringify-position: 3.0.3 4318 | dev: false 4319 | 4320 | /vfile-message@4.0.2: 4321 | resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} 4322 | dependencies: 4323 | '@types/unist': 3.0.2 4324 | unist-util-stringify-position: 4.0.0 4325 | dev: false 4326 | 4327 | /vfile@5.3.7: 4328 | resolution: {integrity: sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==} 4329 | dependencies: 4330 | '@types/unist': 2.0.10 4331 | is-buffer: 2.0.5 4332 | unist-util-stringify-position: 3.0.3 4333 | vfile-message: 3.1.4 4334 | dev: false 4335 | 4336 | /vfile@6.0.1: 4337 | resolution: {integrity: sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==} 4338 | dependencies: 4339 | '@types/unist': 3.0.2 4340 | unist-util-stringify-position: 4.0.0 4341 | vfile-message: 4.0.2 4342 | dev: false 4343 | 4344 | /vite@5.0.12: 4345 | resolution: {integrity: sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==} 4346 | engines: {node: ^18.0.0 || >=20.0.0} 4347 | hasBin: true 4348 | peerDependencies: 4349 | '@types/node': ^18.0.0 || >=20.0.0 4350 | less: '*' 4351 | lightningcss: ^1.21.0 4352 | sass: '*' 4353 | stylus: '*' 4354 | sugarss: '*' 4355 | terser: ^5.4.0 4356 | peerDependenciesMeta: 4357 | '@types/node': 4358 | optional: true 4359 | less: 4360 | optional: true 4361 | lightningcss: 4362 | optional: true 4363 | sass: 4364 | optional: true 4365 | stylus: 4366 | optional: true 4367 | sugarss: 4368 | optional: true 4369 | terser: 4370 | optional: true 4371 | dependencies: 4372 | esbuild: 0.19.12 4373 | postcss: 8.4.33 4374 | rollup: 4.9.6 4375 | optionalDependencies: 4376 | fsevents: 2.3.3 4377 | dev: false 4378 | 4379 | /vitefu@0.2.5(vite@5.0.12): 4380 | resolution: {integrity: sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==} 4381 | peerDependencies: 4382 | vite: ^3.0.0 || ^4.0.0 || ^5.0.0 4383 | peerDependenciesMeta: 4384 | vite: 4385 | optional: true 4386 | dependencies: 4387 | vite: 5.0.12 4388 | dev: false 4389 | 4390 | /volar-service-css@0.0.17(@volar/language-service@1.11.1): 4391 | resolution: {integrity: sha512-bEDJykygMzn2+a9ud6KwZZLli9eqarxApAXZuf2CqJJh6Trw1elmbBCo9SlPfqMrIhpFnwV0Sa+Xoc9x5WPeGw==} 4392 | peerDependencies: 4393 | '@volar/language-service': ~1.11.0 4394 | peerDependenciesMeta: 4395 | '@volar/language-service': 4396 | optional: true 4397 | dependencies: 4398 | '@volar/language-service': 1.11.1 4399 | vscode-css-languageservice: 6.2.12 4400 | vscode-uri: 3.0.8 4401 | dev: false 4402 | 4403 | /volar-service-emmet@0.0.17(@volar/language-service@1.11.1): 4404 | resolution: {integrity: sha512-C6hVnuQL52MqaydkrblYUbzIo5ZmIGo1hR8wmpcCjs5uNcjqn8aPqZRfznhLiUSaPHpFC+zQxJwFcZI9/u2iKQ==} 4405 | peerDependencies: 4406 | '@volar/language-service': ~1.11.0 4407 | peerDependenciesMeta: 4408 | '@volar/language-service': 4409 | optional: true 4410 | dependencies: 4411 | '@volar/language-service': 1.11.1 4412 | '@vscode/emmet-helper': 2.9.2 4413 | volar-service-html: 0.0.17(@volar/language-service@1.11.1) 4414 | dev: false 4415 | 4416 | /volar-service-html@0.0.17(@volar/language-service@1.11.1): 4417 | resolution: {integrity: sha512-OGkP+ZTo13j/+enafGe+esXvda/W4eU78YNLbbHxtV3rnX4odVrewenLJmXiECg6wdQz/PG8rLijZqQnDUYkfw==} 4418 | peerDependencies: 4419 | '@volar/language-service': ~1.11.0 4420 | peerDependenciesMeta: 4421 | '@volar/language-service': 4422 | optional: true 4423 | dependencies: 4424 | '@volar/language-service': 1.11.1 4425 | vscode-html-languageservice: 5.1.2 4426 | vscode-uri: 3.0.8 4427 | dev: false 4428 | 4429 | /volar-service-prettier@0.0.17(@volar/language-service@1.11.1): 4430 | resolution: {integrity: sha512-YYnzZ+OT0M3Bx+xKuoAfs/uVuxk7ofz4dkZDQqjwa9iC63Ay4YGqONtmHd+xsO3lufkEBXlAQCbofDeZbSz3YQ==} 4431 | peerDependencies: 4432 | '@volar/language-service': ~1.11.0 4433 | prettier: ^2.2 || ^3.0 4434 | peerDependenciesMeta: 4435 | '@volar/language-service': 4436 | optional: true 4437 | prettier: 4438 | optional: true 4439 | dependencies: 4440 | '@volar/language-service': 1.11.1 4441 | dev: false 4442 | 4443 | /volar-service-typescript-twoslash-queries@0.0.17(@volar/language-service@1.11.1): 4444 | resolution: {integrity: sha512-6FHXK5AWeFzCL6uGmEcbkZmQsaQ0m9IjbeLdgOIQ4KGvauqT2aA1BhdfDJu6vRAFIfXe7xjEJ85keIlHl72tSA==} 4445 | peerDependencies: 4446 | '@volar/language-service': ~1.11.0 4447 | peerDependenciesMeta: 4448 | '@volar/language-service': 4449 | optional: true 4450 | dependencies: 4451 | '@volar/language-service': 1.11.1 4452 | dev: false 4453 | 4454 | /volar-service-typescript@0.0.17(@volar/language-service@1.11.1)(@volar/typescript@1.11.1): 4455 | resolution: {integrity: sha512-Krs8pOIo2yoBVoJ91hKT1czhWt9ek7EbuK3MxxgvDYdd4HYHOtHi1eOlb7bFnZMNgFcwsL48yQI9vbPm160s9A==} 4456 | peerDependencies: 4457 | '@volar/language-service': ~1.11.0 4458 | '@volar/typescript': ~1.11.0 4459 | peerDependenciesMeta: 4460 | '@volar/language-service': 4461 | optional: true 4462 | dependencies: 4463 | '@volar/language-service': 1.11.1 4464 | '@volar/typescript': 1.11.1 4465 | path-browserify: 1.0.1 4466 | semver: 7.5.4 4467 | typescript-auto-import-cache: 0.3.2 4468 | vscode-languageserver-textdocument: 1.0.11 4469 | vscode-nls: 5.2.0 4470 | vscode-uri: 3.0.8 4471 | dev: false 4472 | 4473 | /vscode-css-languageservice@6.2.12: 4474 | resolution: {integrity: sha512-PS9r7HgNjqzRl3v91sXpCyZPc8UDotNo6gntFNtGCKPhGA9Frk7g/VjX1Mbv3F00pn56D+rxrFzR9ep4cawOgA==} 4475 | dependencies: 4476 | '@vscode/l10n': 0.0.18 4477 | vscode-languageserver-textdocument: 1.0.11 4478 | vscode-languageserver-types: 3.17.5 4479 | vscode-uri: 3.0.8 4480 | dev: false 4481 | 4482 | /vscode-html-languageservice@5.1.2: 4483 | resolution: {integrity: sha512-wkWfEx/IIR3s2P5yD4aTGHiOb8IAzFxgkSt1uSC3itJ4oDAm23yG7o0L29JljUdnXDDgLafPAvhv8A2I/8riHw==} 4484 | dependencies: 4485 | '@vscode/l10n': 0.0.18 4486 | vscode-languageserver-textdocument: 1.0.11 4487 | vscode-languageserver-types: 3.17.5 4488 | vscode-uri: 3.0.8 4489 | dev: false 4490 | 4491 | /vscode-jsonrpc@8.2.0: 4492 | resolution: {integrity: sha512-C+r0eKJUIfiDIfwJhria30+TYWPtuHJXHtI7J0YlOmKAo7ogxP20T0zxB7HZQIFhIyvoBPwWskjxrvAtfjyZfA==} 4493 | engines: {node: '>=14.0.0'} 4494 | dev: false 4495 | 4496 | /vscode-languageserver-protocol@3.17.5: 4497 | resolution: {integrity: sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg==} 4498 | dependencies: 4499 | vscode-jsonrpc: 8.2.0 4500 | vscode-languageserver-types: 3.17.5 4501 | dev: false 4502 | 4503 | /vscode-languageserver-textdocument@1.0.11: 4504 | resolution: {integrity: sha512-X+8T3GoiwTVlJbicx/sIAF+yuJAqz8VvwJyoMVhwEMoEKE/fkDmrqUgDMyBECcM2A2frVZIUj5HI/ErRXCfOeA==} 4505 | dev: false 4506 | 4507 | /vscode-languageserver-types@3.17.5: 4508 | resolution: {integrity: sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==} 4509 | dev: false 4510 | 4511 | /vscode-languageserver@9.0.1: 4512 | resolution: {integrity: sha512-woByF3PDpkHFUreUa7Hos7+pUWdeWMXRd26+ZX2A8cFx6v/JPTtd4/uN0/jB6XQHYaOlHbio03NTHCqrgG5n7g==} 4513 | hasBin: true 4514 | dependencies: 4515 | vscode-languageserver-protocol: 3.17.5 4516 | dev: false 4517 | 4518 | /vscode-nls@5.2.0: 4519 | resolution: {integrity: sha512-RAaHx7B14ZU04EU31pT+rKz2/zSl7xMsfIZuo8pd+KZO6PXtQmpevpq3vxvWNcrGbdmhM/rr5Uw5Mz+NBfhVng==} 4520 | dev: false 4521 | 4522 | /vscode-uri@2.1.2: 4523 | resolution: {integrity: sha512-8TEXQxlldWAuIODdukIb+TR5s+9Ds40eSJrw+1iDDA9IFORPjMELarNQE3myz5XIkWWpdprmJjm1/SxMlWOC8A==} 4524 | dev: false 4525 | 4526 | /vscode-uri@3.0.8: 4527 | resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==} 4528 | dev: false 4529 | 4530 | /web-namespaces@2.0.1: 4531 | resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==} 4532 | dev: false 4533 | 4534 | /web-streams-polyfill@3.3.2: 4535 | resolution: {integrity: sha512-3pRGuxRF5gpuZc0W+EpwQRmCD7gRqcDOMt688KmdlDAgAyaB1XlN0zq2njfDNm44XVdIouE7pZ6GzbdyH47uIQ==} 4536 | engines: {node: '>= 8'} 4537 | dev: false 4538 | 4539 | /web-streams-polyfill@4.0.0-beta.3: 4540 | resolution: {integrity: sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==} 4541 | engines: {node: '>= 14'} 4542 | dev: false 4543 | 4544 | /webidl-conversions@3.0.1: 4545 | resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} 4546 | dev: false 4547 | 4548 | /whatwg-url@5.0.0: 4549 | resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} 4550 | dependencies: 4551 | tr46: 0.0.3 4552 | webidl-conversions: 3.0.1 4553 | dev: false 4554 | 4555 | /which-pm-runs@1.1.0: 4556 | resolution: {integrity: sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==} 4557 | engines: {node: '>=4'} 4558 | dev: false 4559 | 4560 | /which-pm@2.0.0: 4561 | resolution: {integrity: sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==} 4562 | engines: {node: '>=8.15'} 4563 | dependencies: 4564 | load-yaml-file: 0.2.0 4565 | path-exists: 4.0.0 4566 | dev: false 4567 | 4568 | /which-pm@2.1.1: 4569 | resolution: {integrity: sha512-xzzxNw2wMaoCWXiGE8IJ9wuPMU+EYhFksjHxrRT8kMT5SnocBPRg69YAMtyV4D12fP582RA+k3P8H9J5EMdIxQ==} 4570 | engines: {node: '>=8.15'} 4571 | dependencies: 4572 | load-yaml-file: 0.2.0 4573 | path-exists: 4.0.0 4574 | dev: false 4575 | 4576 | /which@2.0.2: 4577 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 4578 | engines: {node: '>= 8'} 4579 | hasBin: true 4580 | dependencies: 4581 | isexe: 2.0.0 4582 | dev: false 4583 | 4584 | /widest-line@4.0.1: 4585 | resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} 4586 | engines: {node: '>=12'} 4587 | dependencies: 4588 | string-width: 5.1.2 4589 | dev: false 4590 | 4591 | /wrap-ansi@7.0.0: 4592 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 4593 | engines: {node: '>=10'} 4594 | dependencies: 4595 | ansi-styles: 4.3.0 4596 | string-width: 4.2.3 4597 | strip-ansi: 6.0.1 4598 | dev: false 4599 | 4600 | /wrap-ansi@8.1.0: 4601 | resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} 4602 | engines: {node: '>=12'} 4603 | dependencies: 4604 | ansi-styles: 6.2.1 4605 | string-width: 5.1.2 4606 | strip-ansi: 7.1.0 4607 | dev: false 4608 | 4609 | /wrappy@1.0.2: 4610 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 4611 | requiresBuild: true 4612 | dev: false 4613 | optional: true 4614 | 4615 | /y18n@5.0.8: 4616 | resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} 4617 | engines: {node: '>=10'} 4618 | dev: false 4619 | 4620 | /yallist@3.1.1: 4621 | resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} 4622 | dev: false 4623 | 4624 | /yallist@4.0.0: 4625 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 4626 | dev: false 4627 | 4628 | /yaml@2.3.4: 4629 | resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==} 4630 | engines: {node: '>= 14'} 4631 | dev: false 4632 | 4633 | /yargs-parser@21.1.1: 4634 | resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} 4635 | engines: {node: '>=12'} 4636 | dev: false 4637 | 4638 | /yargs@17.7.2: 4639 | resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} 4640 | engines: {node: '>=12'} 4641 | dependencies: 4642 | cliui: 8.0.1 4643 | escalade: 3.1.1 4644 | get-caller-file: 2.0.5 4645 | require-directory: 2.1.1 4646 | string-width: 4.2.3 4647 | y18n: 5.0.8 4648 | yargs-parser: 21.1.1 4649 | dev: false 4650 | 4651 | /yocto-queue@0.1.0: 4652 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 4653 | engines: {node: '>=10'} 4654 | dev: false 4655 | 4656 | /yocto-queue@1.0.0: 4657 | resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} 4658 | engines: {node: '>=12.20'} 4659 | dev: false 4660 | 4661 | /zod@3.22.4: 4662 | resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==} 4663 | dev: false 4664 | 4665 | /zwitch@2.0.4: 4666 | resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} 4667 | dev: false 4668 | -------------------------------------------------------------------------------- /public/favicon.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | -------------------------------------------------------------------------------- /public/text/c1a098ffcb49079c8180b18c7b15229a.txt: -------------------------------------------------------------------------------- 1 | Parte 1 2 | El lenguaje JavaScript 3 | JS 4 | Ilya Kantor 5 | Hecho el 31 de julio de 2022 6 | La última versión de este tutorial está en https://es.javascript.info. 7 | Trabajamos constantemente para mejorar el tutorial. Si encuentra algún error, por 8 | favor escríbanos a nuestro github. 9 | ● 10 | Una introducción 11 | Una introducción a JavaScript 12 | Manuales y especificaciones 13 | Editores de Código 14 | Consola de desarrollador 15 | ● 16 | 1/12 17 | Aquí aprenderemos JavaScript, empezando desde cero y llegaremos hasta 18 | conceptos avanzados como POO. 19 | Nos concentraremos en el lenguaje mismo con el mínimo de notas específicas del 20 | entorno. 21 | Una introducción 22 | Acerca del lenguaje JavaScript y el entorno para desarrollar con él. 23 | Una introducción a JavaScript 24 | Veamos qué tiene de especial JavaScript, qué podemos lograr con este lenguaje y 25 | qué otras tecnologías se integran bien con él. 26 | ¿Qué es JavaScript? 27 | JavaScript fue creado para "dar vida a las páginas web". 28 | Los programas en este lenguaje se llaman scripts. Se pueden escribir directamente 29 | en el HTML de una página web y ejecutarse automáticamente a medida que se 30 | carga la página. 31 | Los scripts se proporcionan y ejecutan como texto plano. No necesitan preparación 32 | especial o compilación para correr. 33 | En este aspecto, JavaScript es muy diferente a otro lenguaje llamado Java. 34 | ¿Por qué se llama JavaScript? 35 | Cuando JavaScript fue creado, inicialmente tenía otro nombre: "LiveScript". 36 | Pero Java era muy popular en ese momento, así que se decidió que el 37 | posicionamiento de un nuevo lenguaje como un “Hermano menor" de Java 38 | ayudaría. 39 | Pero a medida que evolucionaba, JavaScript se convirtió en un lenguaje 40 | completamente independiente con su propia especificación llamada 41 | ECMAScript, y ahora no tiene ninguna relación con Java. 42 | Hoy, JavaScript puede ejecutarse no solo en los navegadores, sino también en 43 | servidores o incluso en cualquier dispositivo que cuente con un programa especial 44 | llamado El motor o intérprete de JavaScript. 45 | El navegador tiene un motor embebido a veces llamado una "Máquina virtual de 46 | JavaScript". 47 | Diferentes motores tienen diferentes "nombres en clave". Por ejemplo: 48 | 2/12 49 | ● 50 | . 51 | V8 52 | - en Chrome, Opera y Edge. 53 | Es bueno recordar estos términos porque son usados en artículos para 54 | desarrolladores en internet. También los usaremos. Por ejemplo, si “la 55 | característica X es soportada por V8", entonces probablemente funciona en 56 | Chrome, Opera y Edge. 57 | SpiderMonkey - en Firefox. 58 | ..Existen otros nombres en clave como "Chakra" para IE, "JavaScriptCore", 59 | "Nitro" y "Squirrel Fish" para Safari, etc. 60 | . 61 | ● 62 | ¿Como trabajan los motores? 63 | Los motores son complicados, pero los fundamentos son fáciles. 64 | 1. El motor (embebido si es un navegador) lee ("analiza") el script. 65 | 2. Entonces convierte ("compila") el script a lenguaje máquina. 66 | 3. y por último el código maquina se ejecuta muy rápido. 67 | ¿Qué puede hacer JavaScript en el navegador? 68 | JavaScript moderno es un lenguaje de programación "seguro". No proporciona 69 | acceso de bajo nivel a la memoria o la CPU (UCP), ya que se creó inicialmente 70 | para los navegadores los cuales no lo requieren. 71 | El motor aplica optimizaciones en cada paso del proceso. Incluso observa 72 | como el script compilado se ejecuta, analiza los datos que fluyen a través de él 73 | y aplica optimizaciones al código maquina basadas en ese conocimiento. 74 | Las capacidades de JavaScript dependen en gran medida en el entorno en que se 75 | ejecuta. Por ejemplo, Node.JS soporta funciones que permiten a JavaScript leer 76 | y escribir archivos arbitrariamente, realizar solicitudes de red, etc. 77 | En el navegador JavaScript puede realizar cualquier cosa relacionada con la 78 | manipulación de una página web, interacción con el usuario y el servidor web. 79 | Por ejemplo, en el navegador JavaScript es capaz de: 80 | Agregar nuevo HTML a la página, cambiar el contenido existente y modificar 81 | estilos. 82 | Reaccionar a las acciones del usuario, ejecutarse con los clics del ratón, 83 | movimientos del puntero y al oprimir teclas. 84 | Enviar solicitudes de red a servidores remotos, descargar y cargar archivos 85 | (Tecnologías llamadas AJAX y COMET ). 86 | Obtener y configurar cookies, hacer preguntas al visitante y mostrar mensajes. 87 | 3/12 88 | Recordar datos en el lado del cliente con el almacenamiento local ("local 89 | storage"). 90 | ¿Qué NO PUEDE hacer JavaScript en el navegador? 91 | Las capacidades de JavaScript en el navegador están limitadas por el bien de la 92 | seguridad de usuario. El objetivo es prevenir que una página maliciosa acceda a 93 | información privada o dañe los datos de usuario. 94 | Ejemplos de tales restricciones incluyen: 95 | JavaScript en el navegador no puede leer y escribir arbitrariamente archivos en 96 | el disco duro, copiarlos o ejecutar programas. No tiene acceso directo a 97 | funciones del Sistema operativo (OS). 98 | Los navegadores más modernos le permiten trabajar con archivos, pero el 99 | acceso es limitado y solo permitido si el usuario realiza ciertas acciones, como 100 | "arrastrar" un archivo a la ventana del navegador o seleccionarlo por medio de 101 | una etiqueta . 102 | Existen maneras de interactuar con la cámara, micrófono y otros dispositivos, 103 | pero eso requiere el permiso explícito del usuario. Por lo tanto, una página 104 | habilitada para JavaScript no puede habilitar una cámara web para observar el 105 | entorno y enviar la información a la NSA . 106 | Diferentes pestañas y ventanas generalmente no se conocen entre sí. A veces 107 | sí lo hacen, por ejemplo, cuando una ventana usa JavaScript para abrir otra. 108 | Pero incluso en este caso, JavaScript no puede acceder a la otra si provienen de 109 | diferentes sitios (de diferente dominio, protocolo o puerto). 110 | Esta restricción es conocida como "política del mismo origen" ("Same Origin 111 | Policy"). Es posible la comunicación, pero ambas páginas deben acordar el 112 | intercambio de datos y contener el código especial de JavaScript que permite 113 | controlarlo. Cubriremos esto en el tutorial. 114 | Esta limitación es, de nuevo, para la seguridad del usuario. Una página de 115 | http://anysite.com la cual el usuario ha abierto no debe ser capaz de 116 | acceder a otra pestaña del navegador con la URL http://gmail.com y 117 | robar información de esta otra página. 118 | JavaScript puede fácilmente comunicarse a través de la red con el servidor de 119 | donde la página actual proviene. Pero su capacidad para recibir información de 120 | otros sitios y dominios esta bloqueada. Aunque sea posible, esto requiere un 121 | acuerdo explícito (expresado en los encabezados HTTP) desde el sitio remoto. 122 | Una vez más, esto es una limitación de seguridad. 123 | 4/12 124 | https://javascript.info 125 | ooo https://javascript.info 126 | 129 | WWW 130 | Tales limitaciones no existen si JavaScript es usado fuera del navegador, por 131 | ejemplo, en un servidor. Los navegadores modernos también permiten 132 | complementos y extensiones que pueden solicitar permisos extendidos. 133 | ooo https://gmail.com 134 | ¿Qué hace a JavaScript único? 135 | Existen al menos tres cosas geniales sobre JavaScript: 136 | Completa integración con HTML y CSS. 137 | Las cosas simples se hacen de manera simple. 138 | Soportado por la mayoría de los navegadores y habilitado de forma 139 | predeterminada. 140 | JavaScript es la única tecnología de los navegadores que combina estas tres 141 | cosas. 142 | Eso es lo que hace a JavaScript único. Por esto es la herramienta mas extendida 143 | para crear interfaces de navegador. 144 | Dicho esto, JavaScript también permite crear servidores, aplicaciones móviles, etc. 145 | Lenguajes "por arriba de" JavaScript 146 | 5/12 147 | La sintaxis de JavaScript no se adapta a las necesidades de todos. Personas 148 | diferentes querrán diferentes características. 149 | Esto es algo obvio, porque los proyectos y requerimientos son diferentes para cada 150 | persona. 151 | Así que recientemente ha aparecido una gran cantidad de nuevos lenguajes, los 152 | cuales son Convertidos/Transpilados a JavaScript antes de ser ejecutados en el 153 | navegador. 154 | Las herramientas modernas hacen la conversión (Transpilación) muy rápida y 155 | transparente, permitiendo a los desarrolladores codificar en otros lenguajes y 156 | convertirlo automáticamente detrás de escena. 157 | Ejemplos de tales lenguajes: 158 | CoffeeScript Es una "sintaxis azucarada" para JavaScript. Introduce una 159 | sintaxis corta, permitiéndonos escribir un código mas claro y preciso. 160 | Usualmente desarrolladores de Ruby prefieren este lenguaje. 161 | ● 162 | . 163 | ● 164 | ● 165 | ● 166 | TypeScript se concentra en agregar "tipado estricto" ("strict data typing") para 167 | simplificar el desarrollo y soporte de sistemas complejos. Es desarrollado por 168 | Microsoft. 169 | FLow también agrega la escritura de datos, pero de una manera diferente. 170 | Desarrollado por Facebook. 171 | . 172 | Dart es un lenguaje independiente, tiene su propio motor que se ejecuta en 173 | entornos que no son de navegador (como aplicaciones móviles), pero que 174 | también se puede convertir/transpilar a JavaScript. Desarrollado por Google. 175 | Brython es un transpilador de Python a JavaScript que permite escribir 176 | aplicaciones en Python puro sin JavaScript. 177 | Kotlin es un lenguaje moderno, seguro y conciso que puede apuntar al 178 | navegador o a Node. 179 | Hay más. Por supuesto, incluso si nosotros usamos alguno de estos lenguajes, 180 | deberíamos conocer también JavaScript para realmente entender qué estamos 181 | haciendo. 182 | Resumen 183 | JavaScript fue inicialmente creado como un lenguaje solamente para el 184 | navegador, pero ahora es usado también en muchos otros entornos. 185 | Hoy en día, JavaScript tiene una posición única como el lenguaje más extendido 186 | y adoptado de navegador, con una integración completa con HTML y CSS. 187 | Existen muchos lenguajes que se convierten o transpilan a JavaScript y aportan 188 | ciertas características. Es recomendable echarles un vistazo, al menos 189 | 6/12 190 | brevemente, después de dominar JavaScript. 191 | Manuales y especificaciones 192 | Este libro es un tutorial. Su objetivo es ayudarte a aprender el lenguaje 193 | gradualmente. Pero una vez que te familiarices con lo básico, necesitarás otras 194 | fuentes. 195 | Especificación 196 | La especificación ECMA-262 contiene la información más exhaustiva, detallada 197 | y formal sobre JavaScript. En ella se define el lenguaje. 198 | Pero por su estilo formal, es difícil de entender a primeras. Así que si necesitas la 199 | fuente de información más fiable sobre los detalles del lenguaje, esta 200 | especificación es el lugar correcto a consultar. Es de entender entonces que no es 201 | para el uso diario. 202 | Una nueva versión de la especificación del lenguaje es publicada anualmente. 203 | Entre publicaciones, el último borrador de la especificación se puede consultar en 204 | https://tc39.es/ecma262/. 205 | Para leer acerca de las nuevas prestaciones de vanguardia del lenguaje, 206 | incluyendo aquellas que son "cuasi-estándar" (apodado "stage 3"), encuentra las 207 | propuestas en https://github.com/tc39/proposals. 208 | Si estás desarrollando para navegadores web, se mencionan otras 209 | especificaciones en la segunda parte del tutorial. 210 | Manuales 211 | MDN (Mozilla) JavaScript Reference es el manual principal, con ejemplos y 212 | otras informaciones. Es fantástico para obtener información exhaustiva sobre 213 | funciones individuales del lenguaje, métodos, etc. 214 | Se puede acceder en https://developer.mozilla.org/en- 215 | US/docs/Web/JavaScript/Reference. 216 | Aunque a menudo es preferible una búsqueda en internet. Simplemente añade 217 | "MDN [término]" en la consulta, por ejemplo https://google.com/search? 218 | q=MDN+parseInt para buscar la función parseInt. 219 | Tablas de compatibilidad 220 | 7/12 221 | JavaScript es un lenguaje en evolución, regularmente se agregan nuevas 222 | características. 223 | Para ver la compatibilidad por navegador y otros motores, consultar: 224 | https://caniuse.com tablas de compatibilidad por característica. Por 225 | ejemplo, para comprobar qué motores soportan funciones modernas de 226 | criptografía: https://caniuse.com/#feat=cryptography . 227 | ● 228 | https://kangax.github.io/compat-table - tabla que muestra la compatibilidad o 229 | no de las prestaciones del lenguaje por motor. 230 | Todos estos recursos son de utilidad para el desarrollo con JavaScript, ya que 231 | incluyen información valiosa sobre los detalles del lenguaje, su compatibilidad, etc. 232 | Por favor, tenlos en cuenta (o esta página) para cuando necesites información 233 | exhaustiva sobre una característica determinada. 234 | Editores de Código 235 | Un editor de código es el lugar donde los programadores pasan la mayor parte de 236 | su tiempo. 237 | Hay dos principales tipos de editores de código: IDEs y editores livianos. Muchas 238 | personas usan una herramienta de cada tipo. 239 | IDE 240 | El término IDE (siglas en inglés para Integrated Development Environment, 241 | Ambiente Integrado de Desarrollo) se refiere a un poderoso editor con varias 242 | características que operan usualmente sobre un "proyecto completo". Como el 243 | nombre sugiere, no sólo es un editor, sino un completo "ambiente de desarrollo". 244 | Un IDE carga el proyecto (el cual puede ser de varios archivos), permite navegar 245 | entre archivos, provee autocompletado basado en el proyecto completo (no sólo el 246 | archivo abierto), e integra un sistema de control de versiones (como git), un 247 | ambiente de pruebas, entre otras cosas a "nivel de proyecto". 248 | Si aún no has seleccionado un IDE, considera las siguientes opciones: 249 | Visual Studio Code (Multiplataforma, gratuito). 250 | WebStorm (Multiplataforma, de pago). 251 | ● 252 | Para Windows, también está “Visual Studio", no lo confundamos con "Visual Studio 253 | Code". "Visual Studio" es un poderoso editor de pago sólo para Windows, idóneo 254 | para la plataforma .NET. Una versión gratuita es de este editor se llama Visual 255 | Studio Community. 256 | 8/12 257 | Muchos IDEs son de paga, pero tienen un periodo de prueba. Su costo usualmente 258 | es pequeño si lo comparamos al salario de un desarrollador calificado, así que sólo 259 | escoge el mejor para ti. 260 | Editores livianos 261 | Los "editores livianos" no son tan poderosos como los IDEs, pero son rápidos, 262 | elegantes y simples. 263 | Son usados principalmente para abrir y editar un archivo al instante. 264 | La diferencia principal entre un "editor liviano" y un "IDE" es que un IDE trabaja a 265 | nivel de proyecto, por lo que carga mucha más información desde el inicio, analiza 266 | la estructura del proyecto si así lo requiere y continua. Un editor liviano es mucho 267 | más rápido si solo necesitamos un archivo. 268 | En la práctica, los editores livianos pueden tener montones de plugins incluyendo 269 | analizadores de sintaxis a nivel de directorio y autocompletado, por lo que no hay 270 | un límite estricto entre un editor liviano y un IDE. 271 | Las siguientes opciones merecen tu atención: 272 | ● 273 | ● 274 | Sublime Text (multiplataforma, shareware). 275 | Notepad++ (Windows, gratuito). 276 | Vimy Emacs son también interesantes si sabes cómo usarlos. 277 | No discutamos 278 | Los editores en las listas anteriores son aquellos que yo o mis amigos a quienes 279 | considero buenos programadores hemos estado usando por un largo tiempo y con 280 | los que somos felices. 281 | Existen otros grandes editores en este gran mundo. Por favor escoge el que más te 282 | guste. 283 | La elección de un editor, como cualquier otra herr mienta, es individual y depende 284 | de tus proyectos, hábitos y preferencias personales. 285 | Consola de desarrollador 286 | El código es propenso a errores. Es muy probable que cometas errores ... Oh, ¿de 287 | qué estoy hablando? Definitivamente vas a cometer errores, al menos si eres un 288 | humano, no un robot. 289 | Pero el navegador, de forma predeterminada, no muestra los errores al usuario. 290 | Entonces si algo sale mal en el script, no veremos lo que está roto y no podemos 291 | 9/12 292 | arreglarlo. 293 | Para ver los errores y obtener mucha otra información útil sobre los scripts, se han 294 | incorporado "herramientas de desarrollo" en los navegadores. 295 | La mayoría de los desarrolladores se inclinan por Chrome o Firefox para el 296 | desarrollo porque esos navegadores tienen las mejores herramientas para 297 | desarrolladores. Otros navegadores también proporcionan herramientas de 298 | desarrollo, a veces con características especiales, pero generalmente están 299 | jugando a ponerse al día con Chrome o Firefox. Por lo tanto, la mayoría de los 300 | desarrolladores tienen un navegador "favorito" y cambian a otros si un problema es 301 | específico del navegador. 302 | Las herramientas de desarrollo son potentes; Tienen muchas características. Para 303 | comenzar, aprenderemos cómo abrirlas, observar errores y ejecutar comandos 304 | JavaScript. 305 | Google Chrome 306 | Abre la página bug.html. 307 | Hay un error en el código JavaScript dentro de la página. Está oculto a los ojos de 308 | un visitante regular, así que abramos las herramientas de desarrollador para verlo. 309 | Presione F12 o, si está en Mac, entonces combine Cmd+Opt+J. 310 | Las herramientas de desarrollador se abrirán en la pestaña Consola de forma 311 | predeterminada. 312 | Se ve algo así: 313 | RO Elements Network Sources Timeline Profiles Console 314 | ▼ Preserve log 315 | Filter 316 | All Errors Warnings Info Logs Debug Handled 317 | Uncaught ReferenceError: lalala is not defined 318 | Regex Hide network messages 319 | > 320 | 01 321 | bug.html:12 322 | El aspecto exacto de las herramientas de desarrollador depende de su versión de 323 | Chrome. Cambia de vez en cuando, pero debería ser similar. 324 | Aquí podemos ver el mensaje de error de color rojo. En este caso, el script 325 | contiene un comando desconocido "lalala". 326 | X 327 | 10/12 328 | A la derecha, hay un enlace en el que se puede hacer clic en la fuente 329 | bug.html:12 con el número de línea donde se produjo el error. 330 | Debajo del mensaje de error, hay un símbolo azul > . Marca una "línea de 331 | comando" donde podemos escribir comandos JavaScript. Presione Enter para 332 | ejecutarlos. 333 | Ahora podemos ver errores, y eso es suficiente para empezar. Volveremos a las 334 | herramientas de desarrollador más adelante y cubriremos la depuración más en 335 | profundidad en el capítulo Debugging en el navegador. 336 | Entrada multilínea 337 | Por lo general, cuando colocamos una línea de código en la consola y luego 338 | presionamos Enter, se ejecuta. 339 | Para insertar varias líneas, presione Shift+Enter. De esta forma se pueden 340 | ingresar fragmentos largos de código JavaScript. 341 | Firefox, Edge, y otros 342 | La mayoría de los otros navegadores usan F12 para abrir herramientas de 343 | desarrollador. 344 | La apariencia de ellos es bastante similar. Una vez que sepa cómo usar una de 345 | estas herramientas (puede comenzar con Chrome), puede cambiar fácilmente a 346 | otra. 347 | Safari 348 | Safari (navegador Mac, no compatible con Windows/Linux) es un poco especial 349 | aquí. Necesitamos habilitar primero el "Menú de desarrollo". 350 | Abra Preferencias y vaya al panel "Avanzado". Hay una casilla de verificación en la 351 | parte inferior: 352 | 11/12 353 | Resumen 354 | ● 355 | General Tabs AutoFill Passwords Security Privacy Notifications Extensions Advanced 356 | . 357 | Advanced 358 | Accessibility: Never use font sizes smaller than 9 359 | Press Tab to highlight each item on a webpage 360 | Option-Tab highlights each item. 361 | Bonjour: Include Bonjour in the Bookmarks menu 362 | Include Bonjour in the favorites bar 363 | Internet plug-ins: ✔✓ Stop plug-ins to save power 364 | Style sheet: None Selected 365 | Proxies: 366 | Default encoding: Unicode (UTF-8) 367 | Ahora combine Cmd+Opt+C para alternar a consola. Además, tenga en cuenta 368 | que ha aparecido el nuevo elemento del menú superior denominado "Desarrollar". 369 | Tiene muchos comandos y opciones. 370 | Change Settings... 371 | ✔Show Develop menu in menu bar 372 | Las herramientas para desarrolladores nos permiten ver errores, ejecutar 373 | comandos, examinar variables y mucho más. 374 | Se pueden abrir con F12 para la mayoría de los navegadores en Windows. 375 | Chrome para Mac necesita la combinación Cmd+Opt+J, Safari: Cmd+Opt+C 376 | (primero debe habilitarse). 377 | Ahora tenemos el entorno listo. En la siguiente sección nos enfocaremos en 378 | JavaScript. 379 | 12/12 -------------------------------------------------------------------------------- /src/components/App.svelte: -------------------------------------------------------------------------------- 1 | 8 | 9 | {#if $appStatus === APP_STATUS.INIT} 10 | 11 | {:else if $appStatus === APP_STATUS.LOADING} 12 | 13 | {:else if $appStatus === APP_STATUS.ERROR} 14 | 15 | ¡Algo malo ha pasado! 16 | Hay un error en la aplicación 17 | 18 | {:else if $appStatus === APP_STATUS.CHAT_MODE} 19 | 20 | {:else} 21 | 22 | Acción no reconocida 23 | Este estado de la aplicación no está reconocido 24 | 25 | {/if} 26 | -------------------------------------------------------------------------------- /src/components/StepChat.svelte: -------------------------------------------------------------------------------- 1 | 49 | 50 |
51 | {#each images as image} 52 | PDF page 57 | {/each} 58 |
59 | 60 |
61 | 62 | 64 |
65 | 66 | {#if loading} 67 |
68 | 69 |

Esperando respuesta...

70 |
71 | {/if} 72 | 73 | {#if answer} 74 |
75 |

Respuesta:

76 |

{answer}

77 |
78 | {/if} 79 | -------------------------------------------------------------------------------- /src/components/StepLoading.svelte: -------------------------------------------------------------------------------- 1 | 4 | 5 |
6 | 7 |

Subiendo el archivo y extrayendo el texto...

8 |
9 | -------------------------------------------------------------------------------- /src/components/StepUpload.svelte: -------------------------------------------------------------------------------- 1 | 41 | 42 | {#if files.accepted.length === 0} 43 | Arrastra y suelta aquí tu PDF 48 | {/if} 49 | 50 |
    51 | {#each files.accepted as item} 52 |
  1. {item.name}
  2. 53 | {/each} 54 |
55 | -------------------------------------------------------------------------------- /src/env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | -------------------------------------------------------------------------------- /src/layouts/Layout.astro: -------------------------------------------------------------------------------- 1 | --- 2 | interface Props { 3 | title: string; 4 | } 5 | 6 | const { title } = Astro.props; 7 | --- 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | {title} 18 | 19 | 20 | 21 | 22 | 23 | 52 | -------------------------------------------------------------------------------- /src/pages/api/ask.ts: -------------------------------------------------------------------------------- 1 | import { type APIRoute } from "astro" 2 | import { readFile } from 'node:fs/promises' 3 | import { responseSSE } from '../../utils/sse' 4 | 5 | import OpenAI from 'openai' 6 | 7 | const openai = new OpenAI({ 8 | apiKey: import.meta.env.OPENAI_KEY 9 | }) 10 | 11 | export const GET: APIRoute = async ({ request }) => { 12 | const url = new URL(request.url) 13 | const id = url.searchParams.get('id') 14 | const question = url.searchParams.get('question') 15 | 16 | if (!id) { 17 | return new Response('Missing id', { status: 400 }) 18 | } 19 | 20 | if (!question) { 21 | return new Response('Missing question', { status: 400 }) 22 | } 23 | 24 | const txt = await readFile(`public/text/${id}.txt`, 'utf-8') 25 | 26 | return responseSSE({ request }, async (sendEvent) => { 27 | const response = await openai.chat.completions.create({ 28 | model: 'gpt-3.5-turbo-16k', 29 | stream: true, 30 | messages: [ 31 | { 32 | role: 'system', 33 | content: 'Eres un investigador español experimentado, experto en interpretar y responder preguntas basadas en las fuentes proporcionadas. Utilizando el contexto proporcionado entre las etiquetas , genera una respuesta concisa para una pregunta rodeada con las etiquetas . Debes usar únicamente información del contexto. Usa un tono imparcial y periodístico. No repitas texto. Si no hay nada en el contexto relevante para la pregunta en cuestión, simplemente di "No lo sé". No intentes inventar una respuesta. Cualquier cosa entre los siguientes bloques html context se recupera de un banco de conocimientos, no es parte de la conversación con el usuario.' 34 | }, 35 | { 36 | role: 'user', 37 | content: `${txt}${question}` 38 | } 39 | ] 40 | }) 41 | 42 | for await (const part of response) { 43 | sendEvent(part.choices[0].delta.content) 44 | } 45 | 46 | sendEvent('__END__') 47 | }) 48 | } -------------------------------------------------------------------------------- /src/pages/api/upload.ts: -------------------------------------------------------------------------------- 1 | import type { APIRoute } from "astro"; 2 | import fs from 'node:fs/promises'; 3 | import path from 'node:path'; 4 | 5 | import { 6 | v2 as cloudinary, type UploadApiResponse, 7 | } from 'cloudinary'; 8 | 9 | cloudinary.config({ 10 | cloud_name: 'midudev', 11 | api_key: '898535479927365', // es pública 12 | api_secret: import.meta.env.CLOUDINARY_SECRET 13 | }); 14 | 15 | const outputDir = path.join(process.cwd(), 'public/text') 16 | 17 | const uploadStream = async (buffer: Uint8Array, options: { 18 | folder: string, 19 | ocr?: string, 20 | }): Promise => { 21 | return new Promise((resolve, reject) => { 22 | cloudinary 23 | .uploader 24 | .upload_stream(options, (error, result) => { 25 | if (result) return resolve(result); 26 | reject(error); 27 | }).end(buffer) 28 | }) 29 | } 30 | 31 | export const POST: APIRoute = async ({ request }) => { 32 | const formData = await request.formData(); 33 | const file = formData.get('file') as File; 34 | 35 | if (file == null) { 36 | return new Response("No file found", { status: 400 }); 37 | } 38 | 39 | const arrayBuffer = await file.arrayBuffer(); 40 | const unit8Array = new Uint8Array(arrayBuffer); 41 | 42 | const result = await uploadStream(unit8Array, { 43 | folder: 'pdf', 44 | ocr: 'adv_ocr' 45 | }) 46 | 47 | const { 48 | asset_id: id, 49 | secure_url: url, 50 | pages, 51 | info 52 | } = result 53 | 54 | const data = info?.ocr?.adv_ocr?.data 55 | 56 | const text = data.map((blocks: { textAnnotations: { description: string }[] }) => { 57 | const annotations = blocks['textAnnotations'] ?? {} 58 | const first = annotations[0] ?? {} 59 | const content = first['description'] ?? '' 60 | return content.trim() 61 | }).filter(Boolean).join('\n') 62 | 63 | // TODO: Meter esta info en una base de datos 64 | // Mejor todavía en un vector y hacer los embeddings 65 | // pero no nos da tiempo 66 | fs.writeFile(`${outputDir}/${id}.txt`, text, 'utf-8') 67 | 68 | return new Response(JSON.stringify({ 69 | id, 70 | url, 71 | pages 72 | })); 73 | } -------------------------------------------------------------------------------- /src/pages/index.astro: -------------------------------------------------------------------------------- 1 | --- 2 | import Layout from "../layouts/Layout.astro" 3 | import App from "../components/App.svelte" 4 | --- 5 | 6 | 7 |
10 |
13 |
14 |
15 |
16 |

17 | Chat with your PDF 18 |

19 |
20 | 21 |
22 |
23 |
24 | 25 | 26 | -------------------------------------------------------------------------------- /src/store.ts: -------------------------------------------------------------------------------- 1 | import { writable } from 'svelte/store' 2 | 3 | export const APP_STATUS = { 4 | INIT: 0, 5 | LOADING: 1, 6 | CHAT_MODE: 2, 7 | ERROR: -1 8 | } 9 | 10 | export const appStatus = writable(APP_STATUS.INIT) 11 | export const appStatusInfo = writable({ 12 | id: 'c1a098ffcb49079c8180b18c7b15229a', 13 | url: 'https://res.cloudinary.com/midudev/image/upload/v1706810969/pdf/khiice5vqnr1gcn1pmtq.pdf', 14 | pages: 4 15 | }) 16 | 17 | export const setAppStatusLoading = () => { 18 | appStatus.set(APP_STATUS.LOADING) 19 | } 20 | 21 | export const setAppStatusError = () => { 22 | appStatus.set(APP_STATUS.ERROR) 23 | } 24 | 25 | export const setAppStatusChatMode = ( 26 | { id, url, pages } : 27 | { id: string, url: string, pages: number }) => { 28 | appStatus.set(APP_STATUS.CHAT_MODE) 29 | appStatusInfo.set({ id, url, pages }) 30 | } -------------------------------------------------------------------------------- /src/utils/sse.ts: -------------------------------------------------------------------------------- 1 | export const responseSSE = ( 2 | { request }: { request: Request }, 3 | callback: (sendEvent: (data: any) => void) => Promise 4 | ) => { 5 | const body = new ReadableStream({ 6 | async start(controller) { 7 | // Text encoder for converting strings to Uint8Array 8 | const encoder = new TextEncoder(); 9 | 10 | // Send event to client 11 | const sendEvent = (data: any) => { 12 | const message = `data: ${JSON.stringify(data)}\n\n`; 13 | controller.enqueue(encoder.encode(message)); 14 | }; 15 | 16 | callback(sendEvent) 17 | 18 | // Handle the connection closing 19 | request.signal.addEventListener('abort', () => { 20 | controller.close(); 21 | }); 22 | } 23 | }); 24 | 25 | return new Response(body, { 26 | headers: { 27 | 'Content-Type': 'text/event-stream', 28 | 'Cache-Control': 'no-cache', 29 | Connection: 'keep-alive' 30 | } 31 | }); 32 | } 33 | 34 | -------------------------------------------------------------------------------- /svelte.config.js: -------------------------------------------------------------------------------- 1 | import { vitePreprocess } from '@astrojs/svelte'; 2 | 3 | export default { 4 | preprocess: vitePreprocess(), 5 | }; 6 | -------------------------------------------------------------------------------- /tailwind.config.mjs: -------------------------------------------------------------------------------- 1 | /** @type {import('tailwindcss').Config} */ 2 | export default { 3 | content: [ 4 | './src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}', 5 | './node_modules/flowbite-svelte/**/*.{html,js,svelte,ts}'], 6 | 7 | plugins: [require('flowbite/plugin')], 8 | 9 | darkMode: 'class', 10 | 11 | theme: { 12 | extend: { 13 | colors: { 14 | // flowbite-svelte 15 | primary: { 16 | 50: '#FFF5F2', 17 | 100: '#FFF1EE', 18 | 200: '#FFE4DE', 19 | 300: '#FFD5CC', 20 | 400: '#FFBCAD', 21 | 500: '#FE795D', 22 | 600: '#EF562F', 23 | 700: '#EB4F27', 24 | 800: '#CC4522', 25 | 900: '#A5371B' 26 | } 27 | } 28 | } 29 | } 30 | }; -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "astro/tsconfigs/strict" 3 | } --------------------------------------------------------------------------------