From 359b9a33051c1687178b0ec209dc706245fc6e1c Mon Sep 17 00:00:00 2001 From: Zack Ames Date: Tue, 1 Oct 2024 11:57:02 -0400 Subject: [PATCH 1/2] svelte starter --- examples/example-vite-svelte-recs/.gitignore | 1 + examples/example-vite-svelte-recs/README.md | 47 + examples/example-vite-svelte-recs/bun.lockb | Bin 0 -> 116916 bytes .../example-vite-svelte-recs/dojoConfig.ts | 7 + examples/example-vite-svelte-recs/index.html | 13 + .../example-vite-svelte-recs/package.json | 33 + .../example-vite-svelte-recs/pnpm-lock.yaml | 2716 +++++++++++++++++ .../example-vite-svelte-recs/public/vite.svg | 1 + .../example-vite-svelte-recs/src/App.svelte | 108 + examples/example-vite-svelte-recs/src/app.css | 79 + .../src/dojo/componentValueStore.ts | 53 + .../src/dojo/createClientComponents.ts | 16 + .../src/dojo/setup.ts | 87 + .../src/dojo/typescript/contracts.gen.ts | 86 + .../src/dojo/typescript/models.gen.ts | 193 ++ .../src/dojo/world.ts | 3 + .../example-vite-svelte-recs/src/handlers.ts | 27 + examples/example-vite-svelte-recs/src/main.ts | 25 + .../example-vite-svelte-recs/src/stores.ts | 9 + .../src/vite-env.d.ts | 8 + .../example-vite-svelte-recs/svelte.config.js | 7 + .../example-vite-svelte-recs/tsconfig.json | 22 + .../tsconfig.node.json | 12 + .../example-vite-svelte-recs/vite.config.ts | 8 + packages/create-dojo/src/commands/start.ts | 4 + 25 files changed, 3565 insertions(+) create mode 100644 examples/example-vite-svelte-recs/.gitignore create mode 100644 examples/example-vite-svelte-recs/README.md create mode 100755 examples/example-vite-svelte-recs/bun.lockb create mode 100644 examples/example-vite-svelte-recs/dojoConfig.ts create mode 100644 examples/example-vite-svelte-recs/index.html create mode 100644 examples/example-vite-svelte-recs/package.json create mode 100644 examples/example-vite-svelte-recs/pnpm-lock.yaml create mode 100644 examples/example-vite-svelte-recs/public/vite.svg create mode 100644 examples/example-vite-svelte-recs/src/App.svelte create mode 100644 examples/example-vite-svelte-recs/src/app.css create mode 100644 examples/example-vite-svelte-recs/src/dojo/componentValueStore.ts create mode 100644 examples/example-vite-svelte-recs/src/dojo/createClientComponents.ts create mode 100644 examples/example-vite-svelte-recs/src/dojo/setup.ts create mode 100644 examples/example-vite-svelte-recs/src/dojo/typescript/contracts.gen.ts create mode 100644 examples/example-vite-svelte-recs/src/dojo/typescript/models.gen.ts create mode 100644 examples/example-vite-svelte-recs/src/dojo/world.ts create mode 100644 examples/example-vite-svelte-recs/src/handlers.ts create mode 100644 examples/example-vite-svelte-recs/src/main.ts create mode 100644 examples/example-vite-svelte-recs/src/stores.ts create mode 100644 examples/example-vite-svelte-recs/src/vite-env.d.ts create mode 100644 examples/example-vite-svelte-recs/svelte.config.js create mode 100644 examples/example-vite-svelte-recs/tsconfig.json create mode 100644 examples/example-vite-svelte-recs/tsconfig.node.json create mode 100644 examples/example-vite-svelte-recs/vite.config.ts diff --git a/examples/example-vite-svelte-recs/.gitignore b/examples/example-vite-svelte-recs/.gitignore new file mode 100644 index 00000000..b512c09d --- /dev/null +++ b/examples/example-vite-svelte-recs/.gitignore @@ -0,0 +1 @@ +node_modules \ No newline at end of file diff --git a/examples/example-vite-svelte-recs/README.md b/examples/example-vite-svelte-recs/README.md new file mode 100644 index 00000000..e6cd94fc --- /dev/null +++ b/examples/example-vite-svelte-recs/README.md @@ -0,0 +1,47 @@ +# Svelte + TS + Vite + +This template should help get you started developing with Svelte and TypeScript in Vite. + +## Recommended IDE Setup + +[VS Code](https://code.visualstudio.com/) + [Svelte](https://marketplace.visualstudio.com/items?itemName=svelte.svelte-vscode). + +## Need an official Svelte framework? + +Check out [SvelteKit](https://github.com/sveltejs/kit#readme), which is also powered by Vite. Deploy anywhere with its serverless-first approach and adapt to various platforms, with out of the box support for TypeScript, SCSS, and Less, and easily-added support for mdsvex, GraphQL, PostCSS, Tailwind CSS, and more. + +## Technical considerations + +**Why use this over SvelteKit?** + +- It brings its own routing solution which might not be preferable for some users. +- It is first and foremost a framework that just happens to use Vite under the hood, not a Vite app. + +This template contains as little as possible to get started with Vite + TypeScript + Svelte, while taking into account the developer experience with regards to HMR and intellisense. It demonstrates capabilities on par with the other `create-vite` templates and is a good starting point for beginners dipping their toes into a Vite + Svelte project. + +Should you later need the extended capabilities and extensibility provided by SvelteKit, the template has been structured similarly to SvelteKit so that it is easy to migrate. + +**Why `global.d.ts` instead of `compilerOptions.types` inside `jsconfig.json` or `tsconfig.json`?** + +Setting `compilerOptions.types` shuts out all other types not explicitly listed in the configuration. Using triple-slash references keeps the default TypeScript setting of accepting type information from the entire workspace, while also adding `svelte` and `vite/client` type information. + +**Why include `.vscode/extensions.json`?** + +Other templates indirectly recommend extensions via the README, but this file allows VS Code to prompt the user to install the recommended extension upon opening the project. + +**Why enable `allowJs` in the TS template?** + +While `allowJs: false` would indeed prevent the use of `.js` files in the project, it does not prevent the use of JavaScript syntax in `.svelte` files. In addition, it would force `checkJs: false`, bringing the worst of both worlds: not being able to guarantee the entire codebase is TypeScript, and also having worse typechecking for the existing JavaScript. In addition, there are valid use cases in which a mixed codebase may be relevant. + +**Why is HMR not preserving my local component state?** + +HMR state preservation comes with a number of gotchas! It has been disabled by default in both `svelte-hmr` and `@sveltejs/vite-plugin-svelte` due to its often surprising behavior. You can read the details [here](https://github.com/rixo/svelte-hmr#svelte-hmr). + +If you have state that's important to retain within a component, consider creating an external store which would not be replaced by HMR. + +```ts +// store.ts +// An extremely simple external store +import { writable } from 'svelte/store' +export default writable(0) +``` diff --git a/examples/example-vite-svelte-recs/bun.lockb b/examples/example-vite-svelte-recs/bun.lockb new file mode 100755 index 0000000000000000000000000000000000000000..8ba945308e5f7ba16519bb9aee0553e4e5cf3625 GIT binary patch literal 116916 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 + + + + + + Vite + Svelte + TS + + +

+ + + diff --git a/examples/example-vite-svelte-recs/package.json b/examples/example-vite-svelte-recs/package.json new file mode 100644 index 00000000..df75214c --- /dev/null +++ b/examples/example-vite-svelte-recs/package.json @@ -0,0 +1,33 @@ +{ + "name": "svelte-starter", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview", + "check": "svelte-check --tsconfig ./tsconfig.json && tsc -p tsconfig.node.json" + }, + "devDependencies": { + "@sveltejs/vite-plugin-svelte": "^3.1.1", + "@tsconfig/svelte": "^5.0.4", + "svelte": "^4.2.18", + "svelte-check": "^3.8.5", + "tslib": "^2.6.3", + "typescript": "^5.5.3", + "vite": "^5.4.1" + }, + "dependencies": { + "@dojoengine/core": "1.0.0-alpha.12", + "@dojoengine/create-burner": "1.0.0-alpha.12", + "@dojoengine/recs": "^2.0.13", + "@dojoengine/state": "1.0.0-alpha.12", + "@dojoengine/torii-client": "1.0.0-alpha.12", + "@dojoengine/utils": "1.0.0-alpha.12", + "@latticexyz/utils": "^2.1.1", + "starknet": "^6.11.0", + "vite-plugin-top-level-await": "^1.4.4", + "vite-plugin-wasm": "^3.3.0" + } +} diff --git a/examples/example-vite-svelte-recs/pnpm-lock.yaml b/examples/example-vite-svelte-recs/pnpm-lock.yaml new file mode 100644 index 00000000..a361ba22 --- /dev/null +++ b/examples/example-vite-svelte-recs/pnpm-lock.yaml @@ -0,0 +1,2716 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + '@dojoengine/core': + specifier: 1.0.0-alpha.7 + version: 1.0.0-alpha.7(starknet@6.11.0(encoding@0.1.13))(typescript@5.5.4) + '@dojoengine/create-burner': + specifier: 1.0.0-alpha.7 + version: 1.0.0-alpha.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(starknet@6.11.0(encoding@0.1.13))(typescript@5.5.4) + '@dojoengine/recs': + specifier: ^2.0.13 + version: 2.0.13(typescript@5.5.4)(zod@3.23.8) + '@dojoengine/state': + specifier: 1.0.0-alpha.7 + version: 1.0.0-alpha.7(react@18.3.1)(starknet@6.11.0(encoding@0.1.13))(typescript@5.5.4)(zod@3.23.8) + '@dojoengine/torii-client': + specifier: 1.0.0-alpha.7 + version: 1.0.0-alpha.7 + '@dojoengine/utils': + specifier: 1.0.0-alpha.7 + version: 1.0.0-alpha.7(starknet@6.11.0(encoding@0.1.13))(typescript@5.5.4)(zod@3.23.8) + '@latticexyz/utils': + specifier: ^2.1.1 + version: 2.1.1 + starknet: + specifier: ^6.11.0 + version: 6.11.0(encoding@0.1.13) + vite-plugin-top-level-await: + specifier: ^1.4.4 + version: 1.4.4(rollup@4.21.0)(vite@5.4.2) + vite-plugin-wasm: + specifier: ^3.3.0 + version: 3.3.0(vite@5.4.2) + devDependencies: + '@sveltejs/vite-plugin-svelte': + specifier: ^3.1.1 + version: 3.1.2(svelte@4.2.19)(vite@5.4.2) + '@tsconfig/svelte': + specifier: ^5.0.4 + version: 5.0.4 + svelte: + specifier: ^4.2.18 + version: 4.2.19 + svelte-check: + specifier: ^3.8.5 + version: 3.8.6(postcss@8.4.41)(svelte@4.2.19) + tslib: + specifier: ^2.6.3 + version: 2.7.0 + typescript: + specifier: ^5.5.3 + version: 5.5.4 + vite: + specifier: ^5.4.1 + version: 5.4.2 + +packages: + + '@adraffy/ens-normalize@1.10.0': + resolution: {integrity: sha512-nA9XHtlAkYfJxY7bce8DcN7eKxWWCWkU+1GR9d+U6MbNpfwQp8TI7vqOsBsMcHoT4mBu2kypKoSKnghEzOOq5Q==} + + '@ampproject/remapping@2.3.0': + resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} + engines: {node: '>=6.0.0'} + + '@babel/runtime@7.25.4': + resolution: {integrity: sha512-DSgLeL/FNcpXuzav5wfYvHCGvynXkJbn3Zvc3823AEe9nPwW9IK4UoCSS5yGymmQzN0pCPvivtgS6/8U2kkm1w==} + engines: {node: '>=6.9.0'} + + '@dojoengine/core@1.0.0-alpha.7': + resolution: {integrity: sha512-wSin2zy2xSvbnvPxMke55a6HkwzacBPlSNl+CEDxvvmE8awvAPxTGeV6VDU2xdlgpc9oYbTX/GHR5EgmjW7zpA==} + hasBin: true + peerDependencies: + starknet: 6.11.0 + + '@dojoengine/create-burner@1.0.0-alpha.7': + resolution: {integrity: sha512-4zGMIzcfaLybfj2Lh+li0q9egu1FbQ2l7OPkPisUd2rZUH7ryn6jifEr7hw/ODmu4qnaLlf2ugca/ukn4T7sTA==} + peerDependencies: + react: ^18.2.0 + react-dom: ^18.2.0 + starknet: 6.11.0 + + '@dojoengine/recs@2.0.13': + resolution: {integrity: sha512-Cgz4Unlnk2FSDoFTYKrJexX/KiSYPMFMxftxQkC+9LUKS5yNGkgFQM7xu4/L1HvpDAenL7NjUmH6ynRAS7Iifw==} + + '@dojoengine/state@1.0.0-alpha.7': + resolution: {integrity: sha512-5k4mDtUXdV0/TiU/Sz3FijTFDxr39Avm6z3zORDcl4lkadULDBOlPnUrBNVXtJ2Mtl5jnDdvsDgg0TVdJnZVkw==} + peerDependencies: + starknet: 6.11.0 + + '@dojoengine/torii-client@1.0.0-alpha.7': + resolution: {integrity: sha512-x+gMe9R+YuS/O5CKQtPQKDRe5zCxOtKXzqIFkknocd/KEmN8XniX6zkEx4j+RtVxTbpyF/nhOqUbH9jRBTT2uw==} + + '@dojoengine/torii-wasm@1.0.0-alpha.7': + resolution: {integrity: sha512-SqxRfQanoxf9pRxyEYWGf5wxgHU/sVnB4UrDKZz7teN2MIcT9/rLwLvEu4J4mjyib0MAs9HS9lr/LmSQNn+Jhw==} + + '@dojoengine/utils@1.0.0-alpha.7': + resolution: {integrity: sha512-XT7MX0UFnFGW2zVayhyzMuTIjybN/Qp5Rs/1jTugdFsT7n0FIW/1UJJeNYINQ2ogW6le7mzpxDZGG85ecwpdOw==} + peerDependencies: + starknet: 6.11.0 + + '@esbuild/aix-ppc64@0.21.5': + resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.21.5': + resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.21.5': + resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.21.5': + resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.21.5': + resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.21.5': + resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.21.5': + resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.21.5': + resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.21.5': + resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.21.5': + resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.21.5': + resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.21.5': + resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.21.5': + resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.21.5': + resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-riscv64@0.21.5': + resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.21.5': + resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.21.5': + resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-x64@0.21.5': + resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-x64@0.21.5': + resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + + '@esbuild/sunos-x64@0.21.5': + resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.21.5': + resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.21.5': + resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.21.5': + resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + + '@jest/schemas@29.6.3': + resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jridgewell/gen-mapping@0.3.5': + resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} + engines: {node: '>=6.0.0'} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/set-array@1.2.1': + resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.0': + resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} + + '@jridgewell/trace-mapping@0.3.25': + resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + + '@latticexyz/schema-type@2.0.12': + resolution: {integrity: sha512-QDnHU3iCQmY8e24CGR3hKUEprHrrNUfFTiUaSuj3J0d/x9iaIafYT2+dWydxgcpCmK4Xl7PgurvJiAVCmcLokg==} + + '@latticexyz/utils@2.0.12': + resolution: {integrity: sha512-AwniovUlWY7YL92Mjz/3R0V9g8c5wYg5t3agRmMZ9wgktUB6BYZC65n+sKp88wUuN3DrMLb51UFZOycGh0JD2w==} + + '@latticexyz/utils@2.1.1': + resolution: {integrity: sha512-8g8WEaKOszeWFP0FSU6YW50RNTdk7AjdlUq4KbShdij/0NN3Bfqr+cjiBPcJzLPdJu9UdNIQde/N4xWIdmRXjQ==} + + '@module-federation/runtime@0.1.21': + resolution: {integrity: sha512-/p4BhZ0SnjJuiL0wwu+FebFgIUJ9vM+oCY7CyprUHImyi/Y23ulI61WNWMVrKQGgdMoXQDQCL8RH4EnrVP2ZFw==} + + '@module-federation/sdk@0.1.21': + resolution: {integrity: sha512-r7xPiAm+O4e+8Zvw+8b4ToeD0D0VJD004nHmt+Y8r/l98J2eA6di72Vn1FeyjtQbCrFtiMw3ts/dlqtcmIBipw==} + + '@noble/curves@1.0.0': + resolution: {integrity: sha512-2upgEu0iLiDVDZkNLeFV2+ht0BAVgQnEmCk6JsOch9Rp8xfkMCbvbAZlA2pBHQc73dbl+vFOXfqkf4uemdn0bw==} + + '@noble/curves@1.2.0': + resolution: {integrity: sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==} + + '@noble/curves@1.3.0': + resolution: {integrity: sha512-t01iSXPuN+Eqzb4eBX0S5oubSqXbK/xXa1Ne18Hj8f9pStxztHCE2gfboSp/dZRLSqfuLpRK2nDXDK+W9puocA==} + + '@noble/curves@1.4.2': + resolution: {integrity: sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==} + + '@noble/hashes@1.3.0': + resolution: {integrity: sha512-ilHEACi9DwqJB0pw7kv+Apvh50jiiSyR/cQ3y4W7lOR5mhvn/50FLUfsnfJz0BDZtl/RR16kXvptiv6q1msYZg==} + + '@noble/hashes@1.3.2': + resolution: {integrity: sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==} + engines: {node: '>= 16'} + + '@noble/hashes@1.3.3': + resolution: {integrity: sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA==} + engines: {node: '>= 16'} + + '@noble/hashes@1.4.0': + resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==} + engines: {node: '>= 16'} + + '@rollup/plugin-virtual@3.0.2': + resolution: {integrity: sha512-10monEYsBp3scM4/ND4LNH5Rxvh3e/cVeL3jWTgZ2SrQ+BmUoQcopVQvnaMcOnykb1VkxUFuDAN+0FnpTFRy2A==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true + + '@rollup/rollup-android-arm-eabi@4.21.0': + resolution: {integrity: sha512-WTWD8PfoSAJ+qL87lE7votj3syLavxunWhzCnx3XFxFiI/BA/r3X7MUM8dVrH8rb2r4AiO8jJsr3ZjdaftmnfA==} + cpu: [arm] + os: [android] + + '@rollup/rollup-android-arm64@4.21.0': + resolution: {integrity: sha512-a1sR2zSK1B4eYkiZu17ZUZhmUQcKjk2/j9Me2IDjk1GHW7LB5Z35LEzj9iJch6gtUfsnvZs1ZNyDW2oZSThrkA==} + cpu: [arm64] + os: [android] + + '@rollup/rollup-darwin-arm64@4.21.0': + resolution: {integrity: sha512-zOnKWLgDld/svhKO5PD9ozmL6roy5OQ5T4ThvdYZLpiOhEGY+dp2NwUmxK0Ld91LrbjrvtNAE0ERBwjqhZTRAA==} + cpu: [arm64] + os: [darwin] + + '@rollup/rollup-darwin-x64@4.21.0': + resolution: {integrity: sha512-7doS8br0xAkg48SKE2QNtMSFPFUlRdw9+votl27MvT46vo44ATBmdZdGysOevNELmZlfd+NEa0UYOA8f01WSrg==} + cpu: [x64] + os: [darwin] + + '@rollup/rollup-linux-arm-gnueabihf@4.21.0': + resolution: {integrity: sha512-pWJsfQjNWNGsoCq53KjMtwdJDmh/6NubwQcz52aEwLEuvx08bzcy6tOUuawAOncPnxz/3siRtd8hiQ32G1y8VA==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm-musleabihf@4.21.0': + resolution: {integrity: sha512-efRIANsz3UHZrnZXuEvxS9LoCOWMGD1rweciD6uJQIx2myN3a8Im1FafZBzh7zk1RJ6oKcR16dU3UPldaKd83w==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm64-gnu@4.21.0': + resolution: {integrity: sha512-ZrPhydkTVhyeGTW94WJ8pnl1uroqVHM3j3hjdquwAcWnmivjAwOYjTEAuEDeJvGX7xv3Z9GAvrBkEzCgHq9U1w==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-arm64-musl@4.21.0': + resolution: {integrity: sha512-cfaupqd+UEFeURmqNP2eEvXqgbSox/LHOyN9/d2pSdV8xTrjdg3NgOFJCtc1vQ/jEke1qD0IejbBfxleBPHnPw==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-powerpc64le-gnu@4.21.0': + resolution: {integrity: sha512-ZKPan1/RvAhrUylwBXC9t7B2hXdpb/ufeu22pG2psV7RN8roOfGurEghw1ySmX/CmDDHNTDDjY3lo9hRlgtaHg==} + cpu: [ppc64] + os: [linux] + + '@rollup/rollup-linux-riscv64-gnu@4.21.0': + resolution: {integrity: sha512-H1eRaCwd5E8eS8leiS+o/NqMdljkcb1d6r2h4fKSsCXQilLKArq6WS7XBLDu80Yz+nMqHVFDquwcVrQmGr28rg==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-s390x-gnu@4.21.0': + resolution: {integrity: sha512-zJ4hA+3b5tu8u7L58CCSI0A9N1vkfwPhWd/puGXwtZlsB5bTkwDNW/+JCU84+3QYmKpLi+XvHdmrlwUwDA6kqw==} + cpu: [s390x] + os: [linux] + + '@rollup/rollup-linux-x64-gnu@4.21.0': + resolution: {integrity: sha512-e2hrvElFIh6kW/UNBQK/kzqMNY5mO+67YtEh9OA65RM5IJXYTWiXjX6fjIiPaqOkBthYF1EqgiZ6OXKcQsM0hg==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-linux-x64-musl@4.21.0': + resolution: {integrity: sha512-1vvmgDdUSebVGXWX2lIcgRebqfQSff0hMEkLJyakQ9JQUbLDkEaMsPTLOmyccyC6IJ/l3FZuJbmrBw/u0A0uCQ==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-win32-arm64-msvc@4.21.0': + resolution: {integrity: sha512-s5oFkZ/hFcrlAyBTONFY1TWndfyre1wOMwU+6KCpm/iatybvrRgmZVM+vCFwxmC5ZhdlgfE0N4XorsDpi7/4XQ==} + cpu: [arm64] + os: [win32] + + '@rollup/rollup-win32-ia32-msvc@4.21.0': + resolution: {integrity: sha512-G9+TEqRnAA6nbpqyUqgTiopmnfgnMkR3kMukFBDsiyy23LZvUCpiUwjTRx6ezYCjJODXrh52rBR9oXvm+Fp5wg==} + cpu: [ia32] + os: [win32] + + '@rollup/rollup-win32-x64-msvc@4.21.0': + resolution: {integrity: sha512-2jsCDZwtQvRhejHLfZ1JY6w6kEuEtfF9nzYsZxzSlNVKDX+DpsDJ+Rbjkm74nvg2rdx0gwBS+IMdvwJuq3S9pQ==} + cpu: [x64] + os: [win32] + + '@scure/base@1.1.7': + resolution: {integrity: sha512-PPNYBslrLNNUQ/Yad37MHYsNQtK67EhWb6WtSvNLLPo7SdVZgkUjD6Dg+5On7zNwmskf8OX7I7Nx5oN+MIWE0g==} + + '@scure/bip32@1.3.2': + resolution: {integrity: sha512-N1ZhksgwD3OBlwTv3R6KFEcPojl/W4ElJOeCZdi+vuI5QmTFwLq3OFf2zd2ROpKvxFdgZ6hUpb0dx9bVNEwYCA==} + + '@scure/bip32@1.4.0': + resolution: {integrity: sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==} + + '@scure/bip39@1.2.1': + resolution: {integrity: sha512-Z3/Fsz1yr904dduJD0NpiyRHhRYHdcnyh73FZWiV+/qhWi83wNJ3NWolYqCEN+ZWsUz2TWwajJggcRE9r1zUYg==} + + '@scure/starknet@1.0.0': + resolution: {integrity: sha512-o5J57zY0f+2IL/mq8+AYJJ4Xpc1fOtDhr+mFQKbHnYFmm3WQrC+8zj2HEgxak1a+x86mhmBC1Kq305KUpVf0wg==} + + '@sinclair/typebox@0.27.8': + resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + + '@starknet-io/types-js@0.7.7': + resolution: {integrity: sha512-WLrpK7LIaIb8Ymxu6KF/6JkGW1sso988DweWu7p5QY/3y7waBIiPvzh27D9bX5KIJNRDyOoOVoHVEKYUYWZ/RQ==} + + '@starknet-react/chains@0.1.7': + resolution: {integrity: sha512-UNh97I1SvuJKaAhKOmpEk8JcWuZWMlPG/ba2HcvFYL9x/47BKndJ+Da9V+iJFtkHUjreVnajT1snsaz1XMG+UQ==} + + '@starknet-react/core@2.3.0': + resolution: {integrity: sha512-8g9d0Gs811gJnQJHVMxQoXYhv+y5/qug7NQ0lnJ51uytdBhr/Zz5wgeTHW4ZQ5Igljyvf+ks+yhp4P1iSvnSqA==} + peerDependencies: + get-starknet-core: ^3.2.0 + react: ^18.0 + starknet: ^5.25.0 + + '@sveltejs/vite-plugin-svelte-inspector@2.1.0': + resolution: {integrity: sha512-9QX28IymvBlSCqsCll5t0kQVxipsfhFFL+L2t3nTWfXnddYwxBuAEtTtlaVQpRz9c37BhJjltSeY4AJSC03SSg==} + engines: {node: ^18.0.0 || >=20} + peerDependencies: + '@sveltejs/vite-plugin-svelte': ^3.0.0 + svelte: ^4.0.0 || ^5.0.0-next.0 + vite: ^5.0.0 + + '@sveltejs/vite-plugin-svelte@3.1.2': + resolution: {integrity: sha512-Txsm1tJvtiYeLUVRNqxZGKR/mI+CzuIQuc2gn+YCs9rMTowpNZ2Nqt53JdL8KF9bLhAf2ruR/dr9eZCwdTriRA==} + engines: {node: ^18.0.0 || >=20} + peerDependencies: + svelte: ^4.0.0 || ^5.0.0-next.0 + vite: ^5.0.0 + + '@swc/core-darwin-arm64@1.7.14': + resolution: {integrity: sha512-V0OUXjOH+hdGxDYG8NkQzy25mKOpcNKFpqtZEzLe5V/CpLJPnpg1+pMz70m14s9ZFda9OxsjlvPbg1FLUwhgIQ==} + engines: {node: '>=10'} + cpu: [arm64] + os: [darwin] + + '@swc/core-darwin-x64@1.7.14': + resolution: {integrity: sha512-9iFvUnxG6FC3An5ogp5jbBfQuUmTTwy8KMB+ZddUoPB3NR1eV+Y9vOh/tfWcenSJbgOKDLgYC5D/b1mHAprsrQ==} + engines: {node: '>=10'} + cpu: [x64] + os: [darwin] + + '@swc/core-linux-arm-gnueabihf@1.7.14': + resolution: {integrity: sha512-zGJsef9qPivKSH8Vv4F/HiBXBTHZ5Hs3ZjVGo/UIdWPJF8fTL9OVADiRrl34Q7zOZEtGXRwEKLUW1SCQcbDvZA==} + engines: {node: '>=10'} + cpu: [arm] + os: [linux] + + '@swc/core-linux-arm64-gnu@1.7.14': + resolution: {integrity: sha512-AxV3MPsoI7i4B8FXOew3dx3N8y00YoJYvIPfxelw07RegeCEH3aHp2U2DtgbP/NV1ugZMx0TL2Z2DEvocmA51g==} + engines: {node: '>=10'} + cpu: [arm64] + os: [linux] + + '@swc/core-linux-arm64-musl@1.7.14': + resolution: {integrity: sha512-JDLdNjUj3zPehd4+DrQD8Ltb3B5lD8D05IwePyDWw+uR/YPc7w/TX1FUVci5h3giJnlMCJRvi1IQYV7K1n7KtQ==} + engines: {node: '>=10'} + cpu: [arm64] + os: [linux] + + '@swc/core-linux-x64-gnu@1.7.14': + resolution: {integrity: sha512-Siy5OvPCLLWmMdx4msnEs8HvEVUEigSn0+3pbLjv78iwzXd0qSBNHUPZyC1xeurVaUbpNDxZTpPRIwpqNE2+Og==} + engines: {node: '>=10'} + cpu: [x64] + os: [linux] + + '@swc/core-linux-x64-musl@1.7.14': + resolution: {integrity: sha512-FtEGm9mwtRYQNK43WMtUIadxHs/ja2rnDurB99os0ZoFTGG2IHuht2zD97W0wB8JbqEabT1XwSG9Y5wmN+ciEQ==} + engines: {node: '>=10'} + cpu: [x64] + os: [linux] + + '@swc/core-win32-arm64-msvc@1.7.14': + resolution: {integrity: sha512-Jp8KDlfq7Ntt2/BXr0y344cYgB1zf0DaLzDZ1ZJR6rYlAzWYSccLYcxHa97VGnsYhhPspMpmCvHid97oe2hl4A==} + engines: {node: '>=10'} + cpu: [arm64] + os: [win32] + + '@swc/core-win32-ia32-msvc@1.7.14': + resolution: {integrity: sha512-I+cFsXF0OU0J9J4zdWiQKKLURO5dvCujH9Jr8N0cErdy54l9d4gfIxdctfTF+7FyXtWKLTCkp+oby9BQhkFGWA==} + engines: {node: '>=10'} + cpu: [ia32] + os: [win32] + + '@swc/core-win32-x64-msvc@1.7.14': + resolution: {integrity: sha512-NNrprQCK6d28mG436jVo2TD+vACHseUECacEBGZ9Ef0qfOIWS1XIt2MisQKG0Oea2VvLFl6tF/V4Lnx/H0Sn3Q==} + engines: {node: '>=10'} + cpu: [x64] + os: [win32] + + '@swc/core@1.7.14': + resolution: {integrity: sha512-9aeXeifnyuvc2pcuuhPQgVUwdpGEzZ+9nJu0W8/hNl/aESFsJGR5i9uQJRGu0atoNr01gK092fvmqMmQAPcKow==} + engines: {node: '>=10'} + peerDependencies: + '@swc/helpers': '*' + peerDependenciesMeta: + '@swc/helpers': + optional: true + + '@swc/counter@0.1.3': + resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} + + '@swc/types@0.1.12': + resolution: {integrity: sha512-wBJA+SdtkbFhHjTMYH+dEH1y4VpfGdAc2Kw/LK09i9bXd/K6j6PkDcFCEzb6iVfZMkPRrl/q0e3toqTAJdkIVA==} + + '@tanstack/query-core@5.52.0': + resolution: {integrity: sha512-U1DOEgltjUwalN6uWYTewSnA14b+tE7lSylOiASKCAO61ENJeCq9VVD/TXHA6O5u9+6v5+UgGYBSccTKDoyMqw==} + + '@tanstack/react-query@5.52.1': + resolution: {integrity: sha512-soyn4dNIUZ8US8NaPVXv06gkZFHaZnPfKWPDjRJjFRW3Y7WZ0jx72eT6zhw3VQlkMPysmXye8l35ewPHspKgbQ==} + peerDependencies: + react: ^18 || ^19 + + '@tsconfig/svelte@5.0.4': + resolution: {integrity: sha512-BV9NplVgLmSi4mwKzD8BD/NQ8erOY/nUE/GpgWe2ckx+wIQF5RyRirn/QsSSCPeulVpc3RA/iJt6DpfTIZps0Q==} + + '@types/estree@1.0.5': + resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + + '@types/pug@2.0.10': + resolution: {integrity: sha512-Sk/uYFOBAB7mb74XcpizmH0KOR2Pv3D2Hmrh1Dmy5BmK3MpdSa5kqZcg6EKBdklU0bFXX9gCfzvpnyUehrPIuA==} + + '@vitest/expect@1.6.0': + resolution: {integrity: sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==} + + '@vitest/runner@1.6.0': + resolution: {integrity: sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==} + + '@vitest/snapshot@1.6.0': + resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==} + + '@vitest/spy@1.6.0': + resolution: {integrity: sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==} + + '@vitest/utils@1.6.0': + resolution: {integrity: sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==} + + abi-wan-kanabi@2.2.3: + resolution: {integrity: sha512-JlqiAl9CPvTm5kKG0QXmVCWNWoC/XyRMOeT77cQlbxXWllgjf6SqUmaNqFon72C2o5OSZids+5FvLdsw6dvWaw==} + hasBin: true + + abitype@1.0.0: + resolution: {integrity: sha512-NMeMah//6bJ56H5XRj8QCV4AwuW6hB6zqz2LnhhLdcWVQOsXki6/Pn3APeqxCma62nXIcmZWdu1DlHWS74umVQ==} + peerDependencies: + typescript: '>=5.0.4' + zod: ^3 >=3.22.0 + peerDependenciesMeta: + typescript: + optional: true + zod: + optional: true + + acorn-walk@8.3.3: + resolution: {integrity: sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==} + engines: {node: '>=0.4.0'} + + acorn@8.12.1: + resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} + engines: {node: '>=0.4.0'} + hasBin: true + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansi-styles@5.2.0: + resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} + engines: {node: '>=10'} + + ansicolors@0.3.2: + resolution: {integrity: sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + + aria-query@5.3.0: + resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} + + assertion-error@1.1.0: + resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} + + axobject-query@4.1.0: + resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} + engines: {node: '>= 0.4'} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + binary-extensions@2.3.0: + resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} + engines: {node: '>=8'} + + brace-expansion@1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + + braces@3.0.3: + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} + + buffer-crc32@1.0.0: + resolution: {integrity: sha512-Db1SbgBS/fg/392AblrMJk97KggmvYhr4pB5ZIMTWtaivCPMWLkmb7m21cJvpvgK+J3nsU2CmmixNBZx4vFj/w==} + engines: {node: '>=8.0.0'} + + cac@6.7.14: + resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} + engines: {node: '>=8'} + + cardinal@2.1.1: + resolution: {integrity: sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==} + hasBin: true + + chai@4.5.0: + resolution: {integrity: sha512-RITGBfijLkBddZvnn8jdqoTypxvqbOLYQkGGxXzeFjVHvudaPw0HNFD9x928/eUwYWd2dPCugVqspGALTZZQKw==} + engines: {node: '>=4'} + + check-error@1.0.3: + resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} + + chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + + code-red@1.0.4: + resolution: {integrity: sha512-7qJWqItLA8/VPVlKJlFXU+NBlo/qyfs39aJcuMT/2ere32ZqvF5OSxgdM5xOfJJ7O429gg2HM47y8v9P+9wrNw==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + complex.js@2.1.1: + resolution: {integrity: sha512-8njCHOTtFFLtegk6zQo0kkVX1rngygb/KQI6z1qZxlFI3scluC+LVTCFbrkWjBv4vvLlbQ9t88IPMC6k95VTTg==} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + confbox@0.1.7: + resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==} + + cross-spawn@7.0.3: + resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} + engines: {node: '>= 8'} + + css-tree@2.3.1: + resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} + engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} + + debug@4.3.6: + resolution: {integrity: sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + decimal.js@10.4.3: + resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==} + + deep-eql@4.1.4: + resolution: {integrity: sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==} + engines: {node: '>=6'} + + deepmerge@4.3.1: + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} + engines: {node: '>=0.10.0'} + + dequal@2.0.3: + resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} + engines: {node: '>=6'} + + detect-indent@6.1.0: + resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} + engines: {node: '>=8'} + + diff-sequences@29.6.3: + resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + encoding@0.1.13: + resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} + + es6-promise@3.3.1: + resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==} + + esbuild@0.21.5: + resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} + engines: {node: '>=12'} + hasBin: true + + escalade@3.1.2: + resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} + engines: {node: '>=6'} + + escape-latex@1.2.0: + resolution: {integrity: sha512-nV5aVWW1K0wEiUIEdZ4erkGGH8mDxGyxSeqPzRNtWP7ataw+/olFObw7hujFWlVjNsaDFw5VZ5NzVSIqRgfTiw==} + + esprima@4.0.1: + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} + engines: {node: '>=4'} + hasBin: true + + estree-walker@3.0.3: + resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} + + eventemitter3@5.0.1: + resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} + + execa@8.0.1: + resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} + engines: {node: '>=16.17'} + + fetch-cookie@3.0.1: + resolution: {integrity: sha512-ZGXe8Y5Z/1FWqQ9q/CrJhkUD73DyBU9VF0hBQmEO/wPHe4A9PKTjplFDLeFX8aOsYypZUcX5Ji/eByn3VCVO3Q==} + + fill-range@7.1.1: + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} + + fraction.js@4.3.4: + resolution: {integrity: sha512-pwiTgt0Q7t+GHZA4yaLjObx4vXmmdcS0iSJ19o8d/goUGgItX9UZWKWNnLHehxviD8wU2IWRsnR8cD5+yOJP2Q==} + + fs-extra@10.1.0: + resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} + engines: {node: '>=12'} + + fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + get-func-name@2.0.2: + resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} + + get-starknet-core@3.3.3: + resolution: {integrity: sha512-IscL4lAigJpc/9Idkg07sdyUOXkB+/goTDQm8EhMGn/nIAW4rn04d+D47ils75drNQIfZZKDIIZrWrbIKvjoWA==} + peerDependencies: + starknet: ^5.18.0 + + get-starknet-core@4.0.0: + resolution: {integrity: sha512-6pLmidQZkC3wZsrHY99grQHoGpuuXqkbSP65F8ov1/JsEI8DDLkhsAuLCKFzNOK56cJp+f1bWWfTJ57e9r5eqQ==} + + get-stream@8.0.1: + resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} + engines: {node: '>=16'} + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + deprecated: Glob versions prior to v9 are no longer supported + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + human-signals@5.0.0: + resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} + engines: {node: '>=16.17.0'} + + iconv-lite@0.6.3: + resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} + engines: {node: '>=0.10.0'} + + immutable@4.3.7: + resolution: {integrity: sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==} + + inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-reference@3.0.2: + resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==} + + is-stream@3.0.0: + resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + isomorphic-fetch@3.0.0: + resolution: {integrity: sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA==} + + isows@1.0.3: + resolution: {integrity: sha512-2cKei4vlmg2cxEjm3wVSqn8pcoRF/LX/wpifuuNquFO4SQmPwarClT+SUCA2lt+l581tTeZIPIZuIDo2jWN1fg==} + peerDependencies: + ws: '*' + + javascript-natural-sort@0.7.1: + resolution: {integrity: sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==} + + js-cookie@3.0.5: + resolution: {integrity: sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==} + engines: {node: '>=14'} + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-tokens@9.0.0: + resolution: {integrity: sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==} + + jsonfile@6.1.0: + resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + + kleur@4.1.5: + resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} + engines: {node: '>=6'} + + local-pkg@0.5.0: + resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} + engines: {node: '>=14'} + + locate-character@3.0.0: + resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} + + loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + + lossless-json@4.0.1: + resolution: {integrity: sha512-l0L+ppmgPDnb+JGxNLndPtJZGNf6+ZmVaQzoxQm3u6TXmhdnsA+YtdVR8DjzZd/em58686CQhOFDPewfJ4l7MA==} + + loupe@2.3.7: + resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} + + magic-string@0.30.11: + resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==} + + mathjs@12.4.3: + resolution: {integrity: sha512-oHdGPDbp7gO873xxG90RLq36IuicuKvbpr/bBG5g9c8Obm/VsKVrK9uoRZZHUodohzlnmCEqfDzbR3LH6m+aAQ==} + engines: {node: '>= 18'} + hasBin: true + + mdn-data@2.0.30: + resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} + + merge-stream@2.0.0: + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + + micro-starknet@0.2.3: + resolution: {integrity: sha512-6XBcC+GerlwJSR4iA0VaeXtS2wrayWFcA4PEzrJPMuFmWCaUtuGIq5K/DB5F/XgnL54/zl2Bxo690Lj7mYVA8A==} + + mimic-fn@4.0.0: + resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} + engines: {node: '>=12'} + + min-indent@1.0.1: + resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} + engines: {node: '>=4'} + + minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + + minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + + mkdirp@0.5.6: + resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} + hasBin: true + + mlly@1.7.1: + resolution: {integrity: sha512-rrVRZRELyQzrIUAVMHxP97kv+G786pHmOKzuFII8zDYahFBS7qnHh2AlYSl1GAHhaMPCz6/oHjVMcfFYgFYHgA==} + + mobx@6.13.1: + resolution: {integrity: sha512-ekLRxgjWJr8hVxj9ZKuClPwM/iHckx3euIJ3Np7zLVNtqJvfbbq7l370W/98C8EabdQ1pB5Jd3BbDWxJPNnaOg==} + + mri@1.2.0: + resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} + engines: {node: '>=4'} + + ms@2.1.2: + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + + nanoid@3.3.7: + resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} + engines: {node: 4.x || >=6.0.0} + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + npm-run-path@5.3.0: + resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + onetime@6.0.0: + resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} + engines: {node: '>=12'} + + p-limit@5.0.0: + resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==} + engines: {node: '>=18'} + + pako@2.1.0: + resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==} + + path-is-absolute@1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + path-key@4.0.0: + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} + engines: {node: '>=12'} + + pathe@1.1.2: + resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + + pathval@1.1.1: + resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} + + periscopic@3.1.0: + resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==} + + picocolors@1.0.1: + resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + pkg-types@1.2.0: + resolution: {integrity: sha512-+ifYuSSqOQ8CqP4MbZA5hDpb97n3E8SVWdJe+Wms9kj745lmd3b7EZJiqvmLwAlmRfjrI7Hi5z3kdBJ93lFNPA==} + + postcss@8.4.41: + resolution: {integrity: sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==} + engines: {node: ^10 || ^12 || >=14} + + pretty-format@29.7.0: + resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + proxy-deep@3.1.1: + resolution: {integrity: sha512-kppbvLUNJ4IOMZds9/4gz/rtT5OFiesy3XosLsgMKlF3vb6GA5Y3ptyDlzKLcOcUBW+zaY+RiMINTsgE+O6e+Q==} + + psl@1.9.0: + resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} + + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + + querystringify@2.2.0: + resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} + + react-dom@18.3.1: + resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} + peerDependencies: + react: ^18.3.1 + + react-is@18.3.1: + resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} + + react@18.3.1: + resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} + engines: {node: '>=0.10.0'} + + readdirp@3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + + redeyed@2.1.1: + resolution: {integrity: sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ==} + + regenerator-runtime@0.14.1: + resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + requires-port@1.0.0: + resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} + + rimraf@2.7.1: + resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} + deprecated: Rimraf versions prior to v4 are no longer supported + hasBin: true + + rollup@4.21.0: + resolution: {integrity: sha512-vo+S/lfA2lMS7rZ2Qoubi6I5hwZwzXeUIctILZLbHI+laNtvhhOIon2S1JksA5UEDQ7l3vberd0fxK44lTYjbQ==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + + rxjs@7.5.5: + resolution: {integrity: sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==} + + sade@1.8.1: + resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} + engines: {node: '>=6'} + + safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + + sander@0.5.1: + resolution: {integrity: sha512-3lVqBir7WuKDHGrKRDn/1Ye3kwpXaDOMsiRP1wd6wpZW56gJhsbp5RqQpA6JG/P+pkXizygnr1dKR8vzWaVsfA==} + + scheduler@0.23.2: + resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} + + seedrandom@3.0.5: + resolution: {integrity: sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg==} + + set-cookie-parser@2.7.0: + resolution: {integrity: sha512-lXLOiqpkUumhRdFF3k1osNXCy9akgx/dyPZ5p8qAg9seJzXr5ZrlqZuWIMuY6ejOsVLE6flJ5/h3lsn57fQ/PQ==} + + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + siginfo@2.0.0: + resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + + sorcery@0.11.1: + resolution: {integrity: sha512-o7npfeJE6wi6J9l0/5LKshFzZ2rMatRiCDwYeDQaOzqdzRJwALhX7mk/A/ecg6wjMu7wdZbmXfD2S/vpOg0bdQ==} + hasBin: true + + source-map-js@1.2.0: + resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} + engines: {node: '>=0.10.0'} + + stackback@0.0.2: + resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} + + starknet@6.11.0: + resolution: {integrity: sha512-u50KrGDi9fbu1Ogu7ynwF/tSeFlp3mzOg1/Y5x50tYFICImo3OfY4lOz9OtYDk404HK4eUujKkhov9tG7GAKlg==} + + std-env@3.7.0: + resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-final-newline@3.0.0: + resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} + engines: {node: '>=12'} + + strip-indent@3.0.0: + resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} + engines: {node: '>=8'} + + strip-literal@2.1.0: + resolution: {integrity: sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==} + + svelte-check@3.8.6: + resolution: {integrity: sha512-ij0u4Lw/sOTREP13BdWZjiXD/BlHE6/e2e34XzmVmsp5IN4kVa3PWP65NM32JAgwjZlwBg/+JtiNV1MM8khu0Q==} + hasBin: true + peerDependencies: + svelte: ^3.55.0 || ^4.0.0-next.0 || ^4.0.0 || ^5.0.0-next.0 + + svelte-hmr@0.16.0: + resolution: {integrity: sha512-Gyc7cOS3VJzLlfj7wKS0ZnzDVdv3Pn2IuVeJPk9m2skfhcu5bq3wtIZyQGggr7/Iim5rH5cncyQft/kRLupcnA==} + engines: {node: ^12.20 || ^14.13.1 || >= 16} + peerDependencies: + svelte: ^3.19.0 || ^4.0.0 + + svelte-preprocess@5.1.4: + resolution: {integrity: sha512-IvnbQ6D6Ao3Gg6ftiM5tdbR6aAETwjhHV+UKGf5bHGYR69RQvF1ho0JKPcbUON4vy4R7zom13jPjgdOWCQ5hDA==} + engines: {node: '>= 16.0.0'} + peerDependencies: + '@babel/core': ^7.10.2 + coffeescript: ^2.5.1 + less: ^3.11.3 || ^4.0.0 + postcss: ^7 || ^8 + postcss-load-config: ^2.1.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 + pug: ^3.0.0 + sass: ^1.26.8 + stylus: ^0.55.0 + sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0 + svelte: ^3.23.0 || ^4.0.0-next.0 || ^4.0.0 || ^5.0.0-next.0 + typescript: '>=3.9.5 || ^4.0.0 || ^5.0.0' + peerDependenciesMeta: + '@babel/core': + optional: true + coffeescript: + optional: true + less: + optional: true + postcss: + optional: true + postcss-load-config: + optional: true + pug: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + typescript: + optional: true + + svelte@4.2.19: + resolution: {integrity: sha512-IY1rnGr6izd10B0A8LqsBfmlT5OILVuZ7XsI0vdGPEvuonFV7NYEUK4dAkm9Zg2q0Um92kYjTpS1CAP3Nh/KWw==} + engines: {node: '>=16'} + + tiny-emitter@2.1.0: + resolution: {integrity: sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==} + + tinybench@2.9.0: + resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} + + tinypool@0.8.4: + resolution: {integrity: sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==} + engines: {node: '>=14.0.0'} + + tinyspy@2.2.1: + resolution: {integrity: sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==} + engines: {node: '>=14.0.0'} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + tough-cookie@4.1.4: + resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==} + engines: {node: '>=6'} + + tr46@0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + + ts-mixer@6.0.4: + resolution: {integrity: sha512-ufKpbmrugz5Aou4wcr5Wc1UUFWOLhq+Fm6qa6P0w0K5Qw2yhaUoiWszhCVuNQyNwrlGiscHOmqYoAox1PtvgjA==} + + tslib@2.7.0: + resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} + + type-detect@4.1.0: + resolution: {integrity: sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==} + engines: {node: '>=4'} + + typed-function@4.2.1: + resolution: {integrity: sha512-EGjWssW7Tsk4DGfE+5yluuljS1OGYWiI1J6e8puZz9nTMM51Oug8CD5Zo4gWMsOhq5BI+1bF+rWTm4Vbj3ivRA==} + engines: {node: '>= 18'} + + typescript@5.5.4: + resolution: {integrity: sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==} + engines: {node: '>=14.17'} + hasBin: true + + ufo@1.5.4: + resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} + + universalify@0.2.0: + resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} + engines: {node: '>= 4.0.0'} + + universalify@2.0.1: + resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} + engines: {node: '>= 10.0.0'} + + url-join@4.0.1: + resolution: {integrity: sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==} + + url-parse@1.5.10: + resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} + + use-sync-external-store@1.2.2: + resolution: {integrity: sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==} + peerDependencies: + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + + uuid@10.0.0: + resolution: {integrity: sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==} + hasBin: true + + viem@2.9.20: + resolution: {integrity: sha512-PHb1MrBHMrSZ8Ayuk3Y/6wUTcMbzlACQaM6AJBSv9kRKX3xYSZ/kehi+gvS0swQJeAlTQ4eZM7jsHQJNAOarmg==} + peerDependencies: + typescript: '>=5.0.4' + peerDependenciesMeta: + typescript: + optional: true + + vite-node@1.6.0: + resolution: {integrity: sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + + vite-plugin-top-level-await@1.4.4: + resolution: {integrity: sha512-QyxQbvcMkgt+kDb12m2P8Ed35Sp6nXP+l8ptGrnHV9zgYDUpraO0CPdlqLSeBqvY2DToR52nutDG7mIHuysdiw==} + peerDependencies: + vite: '>=2.8' + + vite-plugin-wasm@3.3.0: + resolution: {integrity: sha512-tVhz6w+W9MVsOCHzxo6SSMSswCeIw4HTrXEi6qL3IRzATl83jl09JVO1djBqPSwfjgnpVHNLYcaMbaDX5WB/pg==} + peerDependencies: + vite: ^2 || ^3 || ^4 || ^5 + + vite@5.4.2: + resolution: {integrity: sha512-dDrQTRHp5C1fTFzcSaMxjk6vdpKvT+2/mIdE07Gw2ykehT49O0z/VHS3zZ8iV/Gh8BJJKHWOe5RjaNrW5xf/GA==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + sass-embedded: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + + vitefu@0.2.5: + resolution: {integrity: sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==} + peerDependencies: + vite: ^3.0.0 || ^4.0.0 || ^5.0.0 + peerDependenciesMeta: + vite: + optional: true + + vitest@1.6.0: + resolution: {integrity: sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@types/node': ^18.0.0 || >=20.0.0 + '@vitest/browser': 1.6.0 + '@vitest/ui': 1.6.0 + happy-dom: '*' + jsdom: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@types/node': + optional: true + '@vitest/browser': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + + webidl-conversions@3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + + whatwg-fetch@3.6.20: + resolution: {integrity: sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==} + + whatwg-url@5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + why-is-node-running@2.3.0: + resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} + engines: {node: '>=8'} + hasBin: true + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + ws@8.13.0: + resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + + yocto-queue@1.1.1: + resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==} + engines: {node: '>=12.20'} + + zod@3.23.8: + resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==} + + zustand@4.5.5: + resolution: {integrity: sha512-+0PALYNJNgK6hldkgDq2vLrw5f6g/jCInz52n9RTpropGgeAf/ioFUCdtsjCqu4gNhW9D01rUQBROoRjdzyn2Q==} + engines: {node: '>=12.7.0'} + peerDependencies: + '@types/react': '>=16.8' + immer: '>=9.0.6' + react: '>=16.8' + peerDependenciesMeta: + '@types/react': + optional: true + immer: + optional: true + react: + optional: true + +snapshots: + + '@adraffy/ens-normalize@1.10.0': {} + + '@ampproject/remapping@2.3.0': + dependencies: + '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/trace-mapping': 0.3.25 + + '@babel/runtime@7.25.4': + dependencies: + regenerator-runtime: 0.14.1 + + '@dojoengine/core@1.0.0-alpha.7(starknet@6.11.0(encoding@0.1.13))(typescript@5.5.4)': + dependencies: + '@dojoengine/recs': 2.0.13(typescript@5.5.4)(zod@3.23.8) + starknet: 6.11.0(encoding@0.1.13) + zod: 3.23.8 + transitivePeerDependencies: + - bufferutil + - typescript + - utf-8-validate + + '@dojoengine/create-burner@1.0.0-alpha.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(starknet@6.11.0(encoding@0.1.13))(typescript@5.5.4)': + dependencies: + '@dojoengine/core': 1.0.0-alpha.7(starknet@6.11.0(encoding@0.1.13))(typescript@5.5.4) + '@scure/bip32': 1.4.0 + '@starknet-react/core': 2.3.0(get-starknet-core@3.3.3(starknet@6.11.0(encoding@0.1.13)))(react@18.3.1)(starknet@6.11.0(encoding@0.1.13)) + encoding: 0.1.13 + get-starknet-core: 3.3.3(starknet@6.11.0(encoding@0.1.13)) + js-cookie: 3.0.5 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + starknet: 6.11.0(encoding@0.1.13) + transitivePeerDependencies: + - bufferutil + - typescript + - utf-8-validate + + '@dojoengine/recs@2.0.13(typescript@5.5.4)(zod@3.23.8)': + dependencies: + '@latticexyz/schema-type': 2.0.12(typescript@5.5.4)(zod@3.23.8) + '@latticexyz/utils': 2.0.12 + mobx: 6.13.1 + rxjs: 7.5.5 + transitivePeerDependencies: + - bufferutil + - typescript + - utf-8-validate + - zod + + '@dojoengine/state@1.0.0-alpha.7(react@18.3.1)(starknet@6.11.0(encoding@0.1.13))(typescript@5.5.4)(zod@3.23.8)': + dependencies: + '@dojoengine/recs': 2.0.13(typescript@5.5.4)(zod@3.23.8) + '@dojoengine/torii-client': 1.0.0-alpha.7 + '@latticexyz/utils': 2.1.1 + starknet: 6.11.0(encoding@0.1.13) + vitest: 1.6.0 + zustand: 4.5.5(react@18.3.1) + transitivePeerDependencies: + - '@edge-runtime/vm' + - '@types/node' + - '@types/react' + - '@vitest/browser' + - '@vitest/ui' + - bufferutil + - happy-dom + - immer + - jsdom + - less + - lightningcss + - react + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + - typescript + - utf-8-validate + - zod + + '@dojoengine/torii-client@1.0.0-alpha.7': + dependencies: + '@dojoengine/torii-wasm': 1.0.0-alpha.7 + typescript: 5.5.4 + + '@dojoengine/torii-wasm@1.0.0-alpha.7': {} + + '@dojoengine/utils@1.0.0-alpha.7(starknet@6.11.0(encoding@0.1.13))(typescript@5.5.4)(zod@3.23.8)': + dependencies: + '@dojoengine/recs': 2.0.13(typescript@5.5.4)(zod@3.23.8) + '@latticexyz/utils': 2.1.1 + mathjs: 12.4.3 + micro-starknet: 0.2.3 + starknet: 6.11.0(encoding@0.1.13) + transitivePeerDependencies: + - bufferutil + - typescript + - utf-8-validate + - zod + + '@esbuild/aix-ppc64@0.21.5': + optional: true + + '@esbuild/android-arm64@0.21.5': + optional: true + + '@esbuild/android-arm@0.21.5': + optional: true + + '@esbuild/android-x64@0.21.5': + optional: true + + '@esbuild/darwin-arm64@0.21.5': + optional: true + + '@esbuild/darwin-x64@0.21.5': + optional: true + + '@esbuild/freebsd-arm64@0.21.5': + optional: true + + '@esbuild/freebsd-x64@0.21.5': + optional: true + + '@esbuild/linux-arm64@0.21.5': + optional: true + + '@esbuild/linux-arm@0.21.5': + optional: true + + '@esbuild/linux-ia32@0.21.5': + optional: true + + '@esbuild/linux-loong64@0.21.5': + optional: true + + '@esbuild/linux-mips64el@0.21.5': + optional: true + + '@esbuild/linux-ppc64@0.21.5': + optional: true + + '@esbuild/linux-riscv64@0.21.5': + optional: true + + '@esbuild/linux-s390x@0.21.5': + optional: true + + '@esbuild/linux-x64@0.21.5': + optional: true + + '@esbuild/netbsd-x64@0.21.5': + optional: true + + '@esbuild/openbsd-x64@0.21.5': + optional: true + + '@esbuild/sunos-x64@0.21.5': + optional: true + + '@esbuild/win32-arm64@0.21.5': + optional: true + + '@esbuild/win32-ia32@0.21.5': + optional: true + + '@esbuild/win32-x64@0.21.5': + optional: true + + '@jest/schemas@29.6.3': + dependencies: + '@sinclair/typebox': 0.27.8 + + '@jridgewell/gen-mapping@0.3.5': + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping': 0.3.25 + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/set-array@1.2.1': {} + + '@jridgewell/sourcemap-codec@1.5.0': {} + + '@jridgewell/trace-mapping@0.3.25': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 + + '@latticexyz/schema-type@2.0.12(typescript@5.5.4)(zod@3.23.8)': + dependencies: + abitype: 1.0.0(typescript@5.5.4)(zod@3.23.8) + viem: 2.9.20(typescript@5.5.4)(zod@3.23.8) + transitivePeerDependencies: + - bufferutil + - typescript + - utf-8-validate + - zod + + '@latticexyz/utils@2.0.12': + dependencies: + mobx: 6.13.1 + proxy-deep: 3.1.1 + rxjs: 7.5.5 + + '@latticexyz/utils@2.1.1': + dependencies: + mobx: 6.13.1 + proxy-deep: 3.1.1 + rxjs: 7.5.5 + + '@module-federation/runtime@0.1.21': + dependencies: + '@module-federation/sdk': 0.1.21 + + '@module-federation/sdk@0.1.21': {} + + '@noble/curves@1.0.0': + dependencies: + '@noble/hashes': 1.3.0 + + '@noble/curves@1.2.0': + dependencies: + '@noble/hashes': 1.3.2 + + '@noble/curves@1.3.0': + dependencies: + '@noble/hashes': 1.3.3 + + '@noble/curves@1.4.2': + dependencies: + '@noble/hashes': 1.4.0 + + '@noble/hashes@1.3.0': {} + + '@noble/hashes@1.3.2': {} + + '@noble/hashes@1.3.3': {} + + '@noble/hashes@1.4.0': {} + + '@rollup/plugin-virtual@3.0.2(rollup@4.21.0)': + optionalDependencies: + rollup: 4.21.0 + + '@rollup/rollup-android-arm-eabi@4.21.0': + optional: true + + '@rollup/rollup-android-arm64@4.21.0': + optional: true + + '@rollup/rollup-darwin-arm64@4.21.0': + optional: true + + '@rollup/rollup-darwin-x64@4.21.0': + optional: true + + '@rollup/rollup-linux-arm-gnueabihf@4.21.0': + optional: true + + '@rollup/rollup-linux-arm-musleabihf@4.21.0': + optional: true + + '@rollup/rollup-linux-arm64-gnu@4.21.0': + optional: true + + '@rollup/rollup-linux-arm64-musl@4.21.0': + optional: true + + '@rollup/rollup-linux-powerpc64le-gnu@4.21.0': + optional: true + + '@rollup/rollup-linux-riscv64-gnu@4.21.0': + optional: true + + '@rollup/rollup-linux-s390x-gnu@4.21.0': + optional: true + + '@rollup/rollup-linux-x64-gnu@4.21.0': + optional: true + + '@rollup/rollup-linux-x64-musl@4.21.0': + optional: true + + '@rollup/rollup-win32-arm64-msvc@4.21.0': + optional: true + + '@rollup/rollup-win32-ia32-msvc@4.21.0': + optional: true + + '@rollup/rollup-win32-x64-msvc@4.21.0': + optional: true + + '@scure/base@1.1.7': {} + + '@scure/bip32@1.3.2': + dependencies: + '@noble/curves': 1.2.0 + '@noble/hashes': 1.3.2 + '@scure/base': 1.1.7 + + '@scure/bip32@1.4.0': + dependencies: + '@noble/curves': 1.4.2 + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.7 + + '@scure/bip39@1.2.1': + dependencies: + '@noble/hashes': 1.3.2 + '@scure/base': 1.1.7 + + '@scure/starknet@1.0.0': + dependencies: + '@noble/curves': 1.3.0 + '@noble/hashes': 1.3.3 + + '@sinclair/typebox@0.27.8': {} + + '@starknet-io/types-js@0.7.7': {} + + '@starknet-react/chains@0.1.7': {} + + '@starknet-react/core@2.3.0(get-starknet-core@3.3.3(starknet@6.11.0(encoding@0.1.13)))(react@18.3.1)(starknet@6.11.0(encoding@0.1.13))': + dependencies: + '@starknet-react/chains': 0.1.7 + '@tanstack/react-query': 5.52.1(react@18.3.1) + eventemitter3: 5.0.1 + get-starknet-core: 3.3.3(starknet@6.11.0(encoding@0.1.13)) + immutable: 4.3.7 + react: 18.3.1 + starknet: 6.11.0(encoding@0.1.13) + zod: 3.23.8 + + '@sveltejs/vite-plugin-svelte-inspector@2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.2))(svelte@4.2.19)(vite@5.4.2)': + dependencies: + '@sveltejs/vite-plugin-svelte': 3.1.2(svelte@4.2.19)(vite@5.4.2) + debug: 4.3.6 + svelte: 4.2.19 + vite: 5.4.2 + transitivePeerDependencies: + - supports-color + + '@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.2)': + dependencies: + '@sveltejs/vite-plugin-svelte-inspector': 2.1.0(@sveltejs/vite-plugin-svelte@3.1.2(svelte@4.2.19)(vite@5.4.2))(svelte@4.2.19)(vite@5.4.2) + debug: 4.3.6 + deepmerge: 4.3.1 + kleur: 4.1.5 + magic-string: 0.30.11 + svelte: 4.2.19 + svelte-hmr: 0.16.0(svelte@4.2.19) + vite: 5.4.2 + vitefu: 0.2.5(vite@5.4.2) + transitivePeerDependencies: + - supports-color + + '@swc/core-darwin-arm64@1.7.14': + optional: true + + '@swc/core-darwin-x64@1.7.14': + optional: true + + '@swc/core-linux-arm-gnueabihf@1.7.14': + optional: true + + '@swc/core-linux-arm64-gnu@1.7.14': + optional: true + + '@swc/core-linux-arm64-musl@1.7.14': + optional: true + + '@swc/core-linux-x64-gnu@1.7.14': + optional: true + + '@swc/core-linux-x64-musl@1.7.14': + optional: true + + '@swc/core-win32-arm64-msvc@1.7.14': + optional: true + + '@swc/core-win32-ia32-msvc@1.7.14': + optional: true + + '@swc/core-win32-x64-msvc@1.7.14': + optional: true + + '@swc/core@1.7.14': + dependencies: + '@swc/counter': 0.1.3 + '@swc/types': 0.1.12 + optionalDependencies: + '@swc/core-darwin-arm64': 1.7.14 + '@swc/core-darwin-x64': 1.7.14 + '@swc/core-linux-arm-gnueabihf': 1.7.14 + '@swc/core-linux-arm64-gnu': 1.7.14 + '@swc/core-linux-arm64-musl': 1.7.14 + '@swc/core-linux-x64-gnu': 1.7.14 + '@swc/core-linux-x64-musl': 1.7.14 + '@swc/core-win32-arm64-msvc': 1.7.14 + '@swc/core-win32-ia32-msvc': 1.7.14 + '@swc/core-win32-x64-msvc': 1.7.14 + + '@swc/counter@0.1.3': {} + + '@swc/types@0.1.12': + dependencies: + '@swc/counter': 0.1.3 + + '@tanstack/query-core@5.52.0': {} + + '@tanstack/react-query@5.52.1(react@18.3.1)': + dependencies: + '@tanstack/query-core': 5.52.0 + react: 18.3.1 + + '@tsconfig/svelte@5.0.4': {} + + '@types/estree@1.0.5': {} + + '@types/pug@2.0.10': {} + + '@vitest/expect@1.6.0': + dependencies: + '@vitest/spy': 1.6.0 + '@vitest/utils': 1.6.0 + chai: 4.5.0 + + '@vitest/runner@1.6.0': + dependencies: + '@vitest/utils': 1.6.0 + p-limit: 5.0.0 + pathe: 1.1.2 + + '@vitest/snapshot@1.6.0': + dependencies: + magic-string: 0.30.11 + pathe: 1.1.2 + pretty-format: 29.7.0 + + '@vitest/spy@1.6.0': + dependencies: + tinyspy: 2.2.1 + + '@vitest/utils@1.6.0': + dependencies: + diff-sequences: 29.6.3 + estree-walker: 3.0.3 + loupe: 2.3.7 + pretty-format: 29.7.0 + + abi-wan-kanabi@2.2.3: + dependencies: + ansicolors: 0.3.2 + cardinal: 2.1.1 + fs-extra: 10.1.0 + yargs: 17.7.2 + + abitype@1.0.0(typescript@5.5.4)(zod@3.23.8): + optionalDependencies: + typescript: 5.5.4 + zod: 3.23.8 + + acorn-walk@8.3.3: + dependencies: + acorn: 8.12.1 + + acorn@8.12.1: {} + + ansi-regex@5.0.1: {} + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + ansi-styles@5.2.0: {} + + ansicolors@0.3.2: {} + + anymatch@3.1.3: + dependencies: + normalize-path: 3.0.0 + picomatch: 2.3.1 + + aria-query@5.3.0: + dependencies: + dequal: 2.0.3 + + assertion-error@1.1.0: {} + + axobject-query@4.1.0: {} + + balanced-match@1.0.2: {} + + binary-extensions@2.3.0: {} + + brace-expansion@1.1.11: + dependencies: + balanced-match: 1.0.2 + concat-map: 0.0.1 + + braces@3.0.3: + dependencies: + fill-range: 7.1.1 + + buffer-crc32@1.0.0: {} + + cac@6.7.14: {} + + cardinal@2.1.1: + dependencies: + ansicolors: 0.3.2 + redeyed: 2.1.1 + + chai@4.5.0: + dependencies: + assertion-error: 1.1.0 + check-error: 1.0.3 + deep-eql: 4.1.4 + get-func-name: 2.0.2 + loupe: 2.3.7 + pathval: 1.1.1 + type-detect: 4.1.0 + + check-error@1.0.3: + dependencies: + get-func-name: 2.0.2 + + chokidar@3.6.0: + dependencies: + anymatch: 3.1.3 + braces: 3.0.3 + glob-parent: 5.1.2 + is-binary-path: 2.1.0 + is-glob: 4.0.3 + normalize-path: 3.0.0 + readdirp: 3.6.0 + optionalDependencies: + fsevents: 2.3.3 + + cliui@8.0.1: + dependencies: + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi: 7.0.0 + + code-red@1.0.4: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + '@types/estree': 1.0.5 + acorn: 8.12.1 + estree-walker: 3.0.3 + periscopic: 3.1.0 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.4: {} + + complex.js@2.1.1: {} + + concat-map@0.0.1: {} + + confbox@0.1.7: {} + + cross-spawn@7.0.3: + dependencies: + path-key: 3.1.1 + shebang-command: 2.0.0 + which: 2.0.2 + + css-tree@2.3.1: + dependencies: + mdn-data: 2.0.30 + source-map-js: 1.2.0 + + debug@4.3.6: + dependencies: + ms: 2.1.2 + + decimal.js@10.4.3: {} + + deep-eql@4.1.4: + dependencies: + type-detect: 4.1.0 + + deepmerge@4.3.1: {} + + dequal@2.0.3: {} + + detect-indent@6.1.0: {} + + diff-sequences@29.6.3: {} + + emoji-regex@8.0.0: {} + + encoding@0.1.13: + dependencies: + iconv-lite: 0.6.3 + + es6-promise@3.3.1: {} + + esbuild@0.21.5: + optionalDependencies: + '@esbuild/aix-ppc64': 0.21.5 + '@esbuild/android-arm': 0.21.5 + '@esbuild/android-arm64': 0.21.5 + '@esbuild/android-x64': 0.21.5 + '@esbuild/darwin-arm64': 0.21.5 + '@esbuild/darwin-x64': 0.21.5 + '@esbuild/freebsd-arm64': 0.21.5 + '@esbuild/freebsd-x64': 0.21.5 + '@esbuild/linux-arm': 0.21.5 + '@esbuild/linux-arm64': 0.21.5 + '@esbuild/linux-ia32': 0.21.5 + '@esbuild/linux-loong64': 0.21.5 + '@esbuild/linux-mips64el': 0.21.5 + '@esbuild/linux-ppc64': 0.21.5 + '@esbuild/linux-riscv64': 0.21.5 + '@esbuild/linux-s390x': 0.21.5 + '@esbuild/linux-x64': 0.21.5 + '@esbuild/netbsd-x64': 0.21.5 + '@esbuild/openbsd-x64': 0.21.5 + '@esbuild/sunos-x64': 0.21.5 + '@esbuild/win32-arm64': 0.21.5 + '@esbuild/win32-ia32': 0.21.5 + '@esbuild/win32-x64': 0.21.5 + + escalade@3.1.2: {} + + escape-latex@1.2.0: {} + + esprima@4.0.1: {} + + estree-walker@3.0.3: + dependencies: + '@types/estree': 1.0.5 + + eventemitter3@5.0.1: {} + + execa@8.0.1: + dependencies: + cross-spawn: 7.0.3 + get-stream: 8.0.1 + human-signals: 5.0.0 + is-stream: 3.0.0 + merge-stream: 2.0.0 + npm-run-path: 5.3.0 + onetime: 6.0.0 + signal-exit: 4.1.0 + strip-final-newline: 3.0.0 + + fetch-cookie@3.0.1: + dependencies: + set-cookie-parser: 2.7.0 + tough-cookie: 4.1.4 + + fill-range@7.1.1: + dependencies: + to-regex-range: 5.0.1 + + fraction.js@4.3.4: {} + + fs-extra@10.1.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 6.1.0 + universalify: 2.0.1 + + fs.realpath@1.0.0: {} + + fsevents@2.3.3: + optional: true + + get-caller-file@2.0.5: {} + + get-func-name@2.0.2: {} + + get-starknet-core@3.3.3(starknet@6.11.0(encoding@0.1.13)): + dependencies: + '@module-federation/runtime': 0.1.21 + starknet: 6.11.0(encoding@0.1.13) + + get-starknet-core@4.0.0: + dependencies: + '@starknet-io/types-js': 0.7.7 + + get-stream@8.0.1: {} + + glob-parent@5.1.2: + dependencies: + is-glob: 4.0.3 + + glob@7.2.3: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + + graceful-fs@4.2.11: {} + + human-signals@5.0.0: {} + + iconv-lite@0.6.3: + dependencies: + safer-buffer: 2.1.2 + + immutable@4.3.7: {} + + inflight@1.0.6: + dependencies: + once: 1.4.0 + wrappy: 1.0.2 + + inherits@2.0.4: {} + + is-binary-path@2.1.0: + dependencies: + binary-extensions: 2.3.0 + + is-extglob@2.1.1: {} + + is-fullwidth-code-point@3.0.0: {} + + is-glob@4.0.3: + dependencies: + is-extglob: 2.1.1 + + is-number@7.0.0: {} + + is-reference@3.0.2: + dependencies: + '@types/estree': 1.0.5 + + is-stream@3.0.0: {} + + isexe@2.0.0: {} + + isomorphic-fetch@3.0.0(encoding@0.1.13): + dependencies: + node-fetch: 2.7.0(encoding@0.1.13) + whatwg-fetch: 3.6.20 + transitivePeerDependencies: + - encoding + + isows@1.0.3(ws@8.13.0): + dependencies: + ws: 8.13.0 + + javascript-natural-sort@0.7.1: {} + + js-cookie@3.0.5: {} + + js-tokens@4.0.0: {} + + js-tokens@9.0.0: {} + + jsonfile@6.1.0: + dependencies: + universalify: 2.0.1 + optionalDependencies: + graceful-fs: 4.2.11 + + kleur@4.1.5: {} + + local-pkg@0.5.0: + dependencies: + mlly: 1.7.1 + pkg-types: 1.2.0 + + locate-character@3.0.0: {} + + loose-envify@1.4.0: + dependencies: + js-tokens: 4.0.0 + + lossless-json@4.0.1: {} + + loupe@2.3.7: + dependencies: + get-func-name: 2.0.2 + + magic-string@0.30.11: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + + mathjs@12.4.3: + dependencies: + '@babel/runtime': 7.25.4 + complex.js: 2.1.1 + decimal.js: 10.4.3 + escape-latex: 1.2.0 + fraction.js: 4.3.4 + javascript-natural-sort: 0.7.1 + seedrandom: 3.0.5 + tiny-emitter: 2.1.0 + typed-function: 4.2.1 + + mdn-data@2.0.30: {} + + merge-stream@2.0.0: {} + + micro-starknet@0.2.3: + dependencies: + '@noble/curves': 1.0.0 + '@noble/hashes': 1.3.3 + + mimic-fn@4.0.0: {} + + min-indent@1.0.1: {} + + minimatch@3.1.2: + dependencies: + brace-expansion: 1.1.11 + + minimist@1.2.8: {} + + mkdirp@0.5.6: + dependencies: + minimist: 1.2.8 + + mlly@1.7.1: + dependencies: + acorn: 8.12.1 + pathe: 1.1.2 + pkg-types: 1.2.0 + ufo: 1.5.4 + + mobx@6.13.1: {} + + mri@1.2.0: {} + + ms@2.1.2: {} + + nanoid@3.3.7: {} + + node-fetch@2.7.0(encoding@0.1.13): + dependencies: + whatwg-url: 5.0.0 + optionalDependencies: + encoding: 0.1.13 + + normalize-path@3.0.0: {} + + npm-run-path@5.3.0: + dependencies: + path-key: 4.0.0 + + once@1.4.0: + dependencies: + wrappy: 1.0.2 + + onetime@6.0.0: + dependencies: + mimic-fn: 4.0.0 + + p-limit@5.0.0: + dependencies: + yocto-queue: 1.1.1 + + pako@2.1.0: {} + + path-is-absolute@1.0.1: {} + + path-key@3.1.1: {} + + path-key@4.0.0: {} + + pathe@1.1.2: {} + + pathval@1.1.1: {} + + periscopic@3.1.0: + dependencies: + '@types/estree': 1.0.5 + estree-walker: 3.0.3 + is-reference: 3.0.2 + + picocolors@1.0.1: {} + + picomatch@2.3.1: {} + + pkg-types@1.2.0: + dependencies: + confbox: 0.1.7 + mlly: 1.7.1 + pathe: 1.1.2 + + postcss@8.4.41: + dependencies: + nanoid: 3.3.7 + picocolors: 1.0.1 + source-map-js: 1.2.0 + + pretty-format@29.7.0: + dependencies: + '@jest/schemas': 29.6.3 + ansi-styles: 5.2.0 + react-is: 18.3.1 + + proxy-deep@3.1.1: {} + + psl@1.9.0: {} + + punycode@2.3.1: {} + + querystringify@2.2.0: {} + + react-dom@18.3.1(react@18.3.1): + dependencies: + loose-envify: 1.4.0 + react: 18.3.1 + scheduler: 0.23.2 + + react-is@18.3.1: {} + + react@18.3.1: + dependencies: + loose-envify: 1.4.0 + + readdirp@3.6.0: + dependencies: + picomatch: 2.3.1 + + redeyed@2.1.1: + dependencies: + esprima: 4.0.1 + + regenerator-runtime@0.14.1: {} + + require-directory@2.1.1: {} + + requires-port@1.0.0: {} + + rimraf@2.7.1: + dependencies: + glob: 7.2.3 + + rollup@4.21.0: + dependencies: + '@types/estree': 1.0.5 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.21.0 + '@rollup/rollup-android-arm64': 4.21.0 + '@rollup/rollup-darwin-arm64': 4.21.0 + '@rollup/rollup-darwin-x64': 4.21.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.21.0 + '@rollup/rollup-linux-arm-musleabihf': 4.21.0 + '@rollup/rollup-linux-arm64-gnu': 4.21.0 + '@rollup/rollup-linux-arm64-musl': 4.21.0 + '@rollup/rollup-linux-powerpc64le-gnu': 4.21.0 + '@rollup/rollup-linux-riscv64-gnu': 4.21.0 + '@rollup/rollup-linux-s390x-gnu': 4.21.0 + '@rollup/rollup-linux-x64-gnu': 4.21.0 + '@rollup/rollup-linux-x64-musl': 4.21.0 + '@rollup/rollup-win32-arm64-msvc': 4.21.0 + '@rollup/rollup-win32-ia32-msvc': 4.21.0 + '@rollup/rollup-win32-x64-msvc': 4.21.0 + fsevents: 2.3.3 + + rxjs@7.5.5: + dependencies: + tslib: 2.7.0 + + sade@1.8.1: + dependencies: + mri: 1.2.0 + + safer-buffer@2.1.2: {} + + sander@0.5.1: + dependencies: + es6-promise: 3.3.1 + graceful-fs: 4.2.11 + mkdirp: 0.5.6 + rimraf: 2.7.1 + + scheduler@0.23.2: + dependencies: + loose-envify: 1.4.0 + + seedrandom@3.0.5: {} + + set-cookie-parser@2.7.0: {} + + shebang-command@2.0.0: + dependencies: + shebang-regex: 3.0.0 + + shebang-regex@3.0.0: {} + + siginfo@2.0.0: {} + + signal-exit@4.1.0: {} + + sorcery@0.11.1: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + buffer-crc32: 1.0.0 + minimist: 1.2.8 + sander: 0.5.1 + + source-map-js@1.2.0: {} + + stackback@0.0.2: {} + + starknet@6.11.0(encoding@0.1.13): + dependencies: + '@noble/curves': 1.4.2 + '@noble/hashes': 1.4.0 + '@scure/base': 1.1.7 + '@scure/starknet': 1.0.0 + abi-wan-kanabi: 2.2.3 + fetch-cookie: 3.0.1 + get-starknet-core: 4.0.0 + isomorphic-fetch: 3.0.0(encoding@0.1.13) + lossless-json: 4.0.1 + pako: 2.1.0 + starknet-types-07: '@starknet-io/types-js@0.7.7' + ts-mixer: 6.0.4 + url-join: 4.0.1 + transitivePeerDependencies: + - encoding + + std-env@3.7.0: {} + + string-width@4.2.3: + dependencies: + emoji-regex: 8.0.0 + is-fullwidth-code-point: 3.0.0 + strip-ansi: 6.0.1 + + strip-ansi@6.0.1: + dependencies: + ansi-regex: 5.0.1 + + strip-final-newline@3.0.0: {} + + strip-indent@3.0.0: + dependencies: + min-indent: 1.0.1 + + strip-literal@2.1.0: + dependencies: + js-tokens: 9.0.0 + + svelte-check@3.8.6(postcss@8.4.41)(svelte@4.2.19): + dependencies: + '@jridgewell/trace-mapping': 0.3.25 + chokidar: 3.6.0 + picocolors: 1.0.1 + sade: 1.8.1 + svelte: 4.2.19 + svelte-preprocess: 5.1.4(postcss@8.4.41)(svelte@4.2.19)(typescript@5.5.4) + typescript: 5.5.4 + transitivePeerDependencies: + - '@babel/core' + - coffeescript + - less + - postcss + - postcss-load-config + - pug + - sass + - stylus + - sugarss + + svelte-hmr@0.16.0(svelte@4.2.19): + dependencies: + svelte: 4.2.19 + + svelte-preprocess@5.1.4(postcss@8.4.41)(svelte@4.2.19)(typescript@5.5.4): + dependencies: + '@types/pug': 2.0.10 + detect-indent: 6.1.0 + magic-string: 0.30.11 + sorcery: 0.11.1 + strip-indent: 3.0.0 + svelte: 4.2.19 + optionalDependencies: + postcss: 8.4.41 + typescript: 5.5.4 + + svelte@4.2.19: + dependencies: + '@ampproject/remapping': 2.3.0 + '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping': 0.3.25 + '@types/estree': 1.0.5 + acorn: 8.12.1 + aria-query: 5.3.0 + axobject-query: 4.1.0 + code-red: 1.0.4 + css-tree: 2.3.1 + estree-walker: 3.0.3 + is-reference: 3.0.2 + locate-character: 3.0.0 + magic-string: 0.30.11 + periscopic: 3.1.0 + + tiny-emitter@2.1.0: {} + + tinybench@2.9.0: {} + + tinypool@0.8.4: {} + + tinyspy@2.2.1: {} + + to-regex-range@5.0.1: + dependencies: + is-number: 7.0.0 + + tough-cookie@4.1.4: + dependencies: + psl: 1.9.0 + punycode: 2.3.1 + universalify: 0.2.0 + url-parse: 1.5.10 + + tr46@0.0.3: {} + + ts-mixer@6.0.4: {} + + tslib@2.7.0: {} + + type-detect@4.1.0: {} + + typed-function@4.2.1: {} + + typescript@5.5.4: {} + + ufo@1.5.4: {} + + universalify@0.2.0: {} + + universalify@2.0.1: {} + + url-join@4.0.1: {} + + url-parse@1.5.10: + dependencies: + querystringify: 2.2.0 + requires-port: 1.0.0 + + use-sync-external-store@1.2.2(react@18.3.1): + dependencies: + react: 18.3.1 + + uuid@10.0.0: {} + + viem@2.9.20(typescript@5.5.4)(zod@3.23.8): + dependencies: + '@adraffy/ens-normalize': 1.10.0 + '@noble/curves': 1.2.0 + '@noble/hashes': 1.3.2 + '@scure/bip32': 1.3.2 + '@scure/bip39': 1.2.1 + abitype: 1.0.0(typescript@5.5.4)(zod@3.23.8) + isows: 1.0.3(ws@8.13.0) + ws: 8.13.0 + optionalDependencies: + typescript: 5.5.4 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + - zod + + vite-node@1.6.0: + dependencies: + cac: 6.7.14 + debug: 4.3.6 + pathe: 1.1.2 + picocolors: 1.0.1 + vite: 5.4.2 + transitivePeerDependencies: + - '@types/node' + - less + - lightningcss + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + + vite-plugin-top-level-await@1.4.4(rollup@4.21.0)(vite@5.4.2): + dependencies: + '@rollup/plugin-virtual': 3.0.2(rollup@4.21.0) + '@swc/core': 1.7.14 + uuid: 10.0.0 + vite: 5.4.2 + transitivePeerDependencies: + - '@swc/helpers' + - rollup + + vite-plugin-wasm@3.3.0(vite@5.4.2): + dependencies: + vite: 5.4.2 + + vite@5.4.2: + dependencies: + esbuild: 0.21.5 + postcss: 8.4.41 + rollup: 4.21.0 + optionalDependencies: + fsevents: 2.3.3 + + vitefu@0.2.5(vite@5.4.2): + optionalDependencies: + vite: 5.4.2 + + vitest@1.6.0: + dependencies: + '@vitest/expect': 1.6.0 + '@vitest/runner': 1.6.0 + '@vitest/snapshot': 1.6.0 + '@vitest/spy': 1.6.0 + '@vitest/utils': 1.6.0 + acorn-walk: 8.3.3 + chai: 4.5.0 + debug: 4.3.6 + execa: 8.0.1 + local-pkg: 0.5.0 + magic-string: 0.30.11 + pathe: 1.1.2 + picocolors: 1.0.1 + std-env: 3.7.0 + strip-literal: 2.1.0 + tinybench: 2.9.0 + tinypool: 0.8.4 + vite: 5.4.2 + vite-node: 1.6.0 + why-is-node-running: 2.3.0 + transitivePeerDependencies: + - less + - lightningcss + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + + webidl-conversions@3.0.1: {} + + whatwg-fetch@3.6.20: {} + + whatwg-url@5.0.0: + dependencies: + tr46: 0.0.3 + webidl-conversions: 3.0.1 + + which@2.0.2: + dependencies: + isexe: 2.0.0 + + why-is-node-running@2.3.0: + dependencies: + siginfo: 2.0.0 + stackback: 0.0.2 + + wrap-ansi@7.0.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + + wrappy@1.0.2: {} + + ws@8.13.0: {} + + y18n@5.0.8: {} + + yargs-parser@21.1.1: {} + + yargs@17.7.2: + dependencies: + cliui: 8.0.1 + escalade: 3.1.2 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + + yocto-queue@1.1.1: {} + + zod@3.23.8: {} + + zustand@4.5.5(react@18.3.1): + dependencies: + use-sync-external-store: 1.2.2(react@18.3.1) + optionalDependencies: + react: 18.3.1 diff --git a/examples/example-vite-svelte-recs/public/vite.svg b/examples/example-vite-svelte-recs/public/vite.svg new file mode 100644 index 00000000..e7b8dfb1 --- /dev/null +++ b/examples/example-vite-svelte-recs/public/vite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/examples/example-vite-svelte-recs/src/App.svelte b/examples/example-vite-svelte-recs/src/App.svelte new file mode 100644 index 00000000..c4f6d34a --- /dev/null +++ b/examples/example-vite-svelte-recs/src/App.svelte @@ -0,0 +1,108 @@ + + +
+ {#if $dojoStore} +

Setup completed

+ {:else} +

Setting up...

+ {/if} + + + +
+
{`burners deployed: ${burners.length}`}
+
+ select signer:{" "} + +
+
+ +
+
+ +
+ +
+ Moves Left: {moves ? `${$moves?.remaining}` : "Need to Spawn"} +
+
+ Position:{" "} + {position + ? `${$position?.vec.x}, ${$position?.vec.y}` + : "Need to Spawn"} +
+ +
{$moves && $moves.last_direction}
+ +
+ +
+
+ +
+
+ + +
+
+ +
+
+
diff --git a/examples/example-vite-svelte-recs/src/app.css b/examples/example-vite-svelte-recs/src/app.css new file mode 100644 index 00000000..617f5e93 --- /dev/null +++ b/examples/example-vite-svelte-recs/src/app.css @@ -0,0 +1,79 @@ +:root { + font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; + line-height: 1.5; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +a { + font-weight: 500; + color: #646cff; + text-decoration: inherit; +} +a:hover { + color: #535bf2; +} + +body { + margin: 0; + display: flex; + place-items: center; + min-width: 320px; + min-height: 100vh; +} + +h1 { + font-size: 3.2em; + line-height: 1.1; +} + +.card { + padding: 2em; +} + +#app { + max-width: 1280px; + margin: 0 auto; + padding: 2rem; + text-align: center; +} + +button { + border-radius: 8px; + border: 1px solid transparent; + padding: 0.6em 1.2em; + font-size: 1em; + font-weight: 500; + font-family: inherit; + background-color: #1a1a1a; + cursor: pointer; + transition: border-color 0.25s; +} +button:hover { + border-color: #646cff; +} +button:focus, +button:focus-visible { + outline: 4px auto -webkit-focus-ring-color; +} + +@media (prefers-color-scheme: light) { + :root { + color: #213547; + background-color: #ffffff; + } + a:hover { + color: #747bff; + } + button { + background-color: #f9f9f9; + } +} diff --git a/examples/example-vite-svelte-recs/src/dojo/componentValueStore.ts b/examples/example-vite-svelte-recs/src/dojo/componentValueStore.ts new file mode 100644 index 00000000..730f233f --- /dev/null +++ b/examples/example-vite-svelte-recs/src/dojo/componentValueStore.ts @@ -0,0 +1,53 @@ +import { writable, derived, get } from "svelte/store"; +import { + defineQuery, + getComponentValue, + Has, + isComponentUpdate, +} from "@dojoengine/recs"; +import type { + Component, + ComponentValue, + Entity, + Schema, +} from "@dojoengine/recs"; +import { dojoStore } from "../stores"; + +export type ComponentStore = ReturnType; + +export function componentValueStore( + component: Component, + entityId: Entity | undefined, + defaultValue?: ComponentValue +) { + + let entityStore = derived(dojoStore, ($store) => + $store + ? entityId + : undefined + ); + + return derived( + entityStore, + ($entity, set) => { + set( + $entity != null + ? (getComponentValue(component, $entity) as ComponentValue) + : (defaultValue as ComponentValue) + ); + + if ($entity == null) return; + + const queryResult = defineQuery([Has(component)], { runOnInit: false }); + const subscription = queryResult.update$.subscribe((update) => { + if (isComponentUpdate(update, component) && update.entity === $entity) { + const [nextValue] = update.value; + set(nextValue as ComponentValue); + } + }); + + return () => subscription.unsubscribe(); + }, + defaultValue + ); +} diff --git a/examples/example-vite-svelte-recs/src/dojo/createClientComponents.ts b/examples/example-vite-svelte-recs/src/dojo/createClientComponents.ts new file mode 100644 index 00000000..cd262f64 --- /dev/null +++ b/examples/example-vite-svelte-recs/src/dojo/createClientComponents.ts @@ -0,0 +1,16 @@ +import { overridableComponent } from "@dojoengine/recs"; +import type { ContractComponents } from "./typescript/models.gen"; + +export type ClientComponents = ReturnType; + +export function createClientComponents({ + contractComponents, +}: { + contractComponents: ContractComponents; +}) { + return { + ...contractComponents, + Position: overridableComponent(contractComponents.Position), + Moves: overridableComponent(contractComponents.Moves), + }; +} diff --git a/examples/example-vite-svelte-recs/src/dojo/setup.ts b/examples/example-vite-svelte-recs/src/dojo/setup.ts new file mode 100644 index 00000000..15942bc5 --- /dev/null +++ b/examples/example-vite-svelte-recs/src/dojo/setup.ts @@ -0,0 +1,87 @@ +import type { DojoConfig } from "@dojoengine/core"; +import { DojoProvider } from "@dojoengine/core"; +import * as torii from "@dojoengine/torii-client"; +import { createClientComponents } from "./createClientComponents"; +import { defineContractComponents } from "./typescript/models.gen"; +import { world } from "./world"; +import { setupWorld } from "./typescript/contracts.gen"; +import { Account } from "starknet"; +import type { ArraySignatureType } from "starknet"; +import { BurnerManager } from "@dojoengine/create-burner"; +import { getSyncEntities, getSyncEvents } from "@dojoengine/state"; + +export type SetupResult = Awaited>; + +export async function setup({ ...config }: DojoConfig) { + // torii client + const toriiClient = await torii.createClient({ + rpcUrl: config.rpcUrl, + toriiUrl: config.toriiUrl, + relayUrl: "", + worldAddress: config.manifest.world.address || "", + }); + + // create contract components + const contractComponents = defineContractComponents(world); + + // create client components + const clientComponents = createClientComponents({ contractComponents }); + + // create dojo provider + const dojoProvider = new DojoProvider(config.manifest, config.rpcUrl); + + const sync = await getSyncEntities( + toriiClient, + contractComponents as any, + [] + ); + + const eventSync = getSyncEvents( + toriiClient, + contractComponents as any, + undefined, + [] + ); + + // setup world + const client = await setupWorld(dojoProvider); + + // create burner manager + const burnerManager = new BurnerManager({ + masterAccount: new Account( + { + nodeUrl: config.rpcUrl, + }, + config.masterAddress, + config.masterPrivateKey + ), + accountClassHash: config.accountClassHash, + rpcProvider: dojoProvider.provider, + feeTokenAddress: config.feeTokenAddress, + }); + + try { + await burnerManager.init(); + if (burnerManager.list().length === 0) { + await burnerManager.create(); + } + } catch (e) { + console.error(e); + } + + return { + client, + clientComponents, + contractComponents, + publish: (typedData: string, signature: ArraySignatureType) => { + toriiClient.publishMessage(typedData, signature); + }, + config, + dojoProvider, + burnerManager, + toriiClient, + eventSync, + torii, + sync, + }; +} diff --git a/examples/example-vite-svelte-recs/src/dojo/typescript/contracts.gen.ts b/examples/example-vite-svelte-recs/src/dojo/typescript/contracts.gen.ts new file mode 100644 index 00000000..0f7fac11 --- /dev/null +++ b/examples/example-vite-svelte-recs/src/dojo/typescript/contracts.gen.ts @@ -0,0 +1,86 @@ +// Generated by dojo-bindgen on Thu, 22 Aug 2024 20:04:33 +0000. Do not modify this file manually. +// Import the necessary types from the recs SDK +// generate again with `sozo build --typescript` +import { Account, byteArray } from "starknet"; +import { DojoProvider } from "@dojoengine/core"; +import * as models from "./models.gen"; + +export type IWorld = Awaited>; + +export async function setupWorld(provider: DojoProvider) { + // System definitions for `dojo_starter-actions` contract + function actions() { + const contract_name = "actions"; + + // Call the `spawn` system with the specified Account and calldata + const spawn = async (props: { account: Account }) => { + try { + return await provider.execute( + props.account, + { + contractName: contract_name, + entrypoint: "spawn", + calldata: [], + }, + "dojo_starter" + ); + } catch (error) { + console.error("Error executing spawn:", error); + throw error; + } + }; + + // Call the `move` system with the specified Account and calldata + const move = async (props: { + account: Account; + direction: models.Direction; + }) => { + try { + return await provider.execute( + props.account, + { + contractName: contract_name, + entrypoint: "move", + calldata: [ + ["None", "Left", "Right", "Up", "Down"].indexOf( + props.direction.type + ), + ], + }, + "dojo_starter" + ); + } catch (error) { + console.error("Error executing spawn:", error); + throw error; + } + }; + + // Call the `world` system with the specified Account and calldata + const world = async (props: { account: Account }) => { + try { + return await provider.execute( + props.account, + { + contractName: contract_name, + entrypoint: "world", + calldata: [], + }, + "dojo_starter" + ); + } catch (error) { + console.error("Error executing spawn:", error); + throw error; + } + }; + + return { + spawn, + move, + world, + }; + } + + return { + actions: actions(), + }; +} diff --git a/examples/example-vite-svelte-recs/src/dojo/typescript/models.gen.ts b/examples/example-vite-svelte-recs/src/dojo/typescript/models.gen.ts new file mode 100644 index 00000000..485cdc6a --- /dev/null +++ b/examples/example-vite-svelte-recs/src/dojo/typescript/models.gen.ts @@ -0,0 +1,193 @@ +// Generated by dojo-bindgen on Thu, 22 Aug 2024 20:04:33 +0000. Do not modify this file manually. +// Import the necessary types from the recs SDK +// generate again with `sozo build --typescript` +import { defineComponent, Type as RecsType } from "@dojoengine/recs"; +import type { World } from "@dojoengine/recs"; +export type ContractComponents = Awaited< + ReturnType +>; + +// Type definition for `dojo_starter::models::Direction` enum +export type Direction = + | { type: "None" } + | { type: "Left" } + | { type: "Right" } + | { type: "Up" } + | { type: "Down" }; + +export const DirectionDefinition = { + type: RecsType.String, + value: RecsType.String, +}; + +// Type definition for `dojo::model::layout::Layout` enum +export type Layout = + | { type: "Fixed"; value: RecsType.NumberArray } + | { type: "Struct"; value: RecsType.StringArray } + | { type: "Tuple"; value: RecsType.StringArray } + | { type: "Array"; value: RecsType.StringArray } + | { type: "ByteArray" } + | { type: "Enum"; value: RecsType.StringArray }; + +export const LayoutDefinition = { + type: RecsType.String, + value: RecsType.String, +}; + +// Type definition for `core::byte_array::ByteArray` struct +export interface ByteArray { + data: String[]; + pending_word: BigInt; + pending_word_len: Number; +} +export const ByteArrayDefinition = { + data: RecsType.StringArray, + pending_word: RecsType.BigInt, + pending_word_len: RecsType.Number, +}; + +// Type definition for `dojo::model::layout::FieldLayout` struct +export interface FieldLayout { + selector: BigInt; + layout: Layout; +} +export const FieldLayoutDefinition = { + selector: RecsType.BigInt, + layout: LayoutDefinition, +}; + +// Type definition for `dojo_starter::models::Moves` struct +export interface Moves { + player: BigInt; + remaining: Number; + last_direction: Direction; + can_move: Boolean; +} +export const MovesDefinition = { + player: RecsType.BigInt, + remaining: RecsType.Number, + last_direction: DirectionDefinition, + can_move: RecsType.Boolean, +}; + +// Type definition for `dojo_starter::models::DirectionsAvailable` struct +export interface DirectionsAvailable { + player: BigInt; + directions: String[]; +} +export const DirectionsAvailableDefinition = { + player: RecsType.BigInt, + directions: RecsType.StringArray, +}; + +// Type definition for `dojo_starter::systems::actions::actions::Moved` struct +export interface Moved { + player: BigInt; + direction: Direction; +} +export const MovedDefinition = { + player: RecsType.BigInt, + direction: DirectionDefinition, +}; + +// Type definition for `dojo_starter::models::Vec2` struct +export interface Vec2 { + x: Number; + y: Number; +} +export const Vec2Definition = { + x: RecsType.Number, + y: RecsType.Number, +}; + +// Type definition for `dojo_starter::models::Position` struct +export interface Position { + player: BigInt; + vec: Vec2; +} +export const PositionDefinition = { + player: RecsType.BigInt, + vec: Vec2Definition, +}; + +export function defineContractComponents(world: World) { + return { + // Model definition for `dojo_starter::models::Moves` model + Moves: (() => { + return defineComponent( + world, + { + player: RecsType.BigInt, + remaining: RecsType.Number, + last_direction: RecsType.String, + can_move: RecsType.Boolean, + }, + { + metadata: { + namespace: "dojo_starter", + name: "Moves", + types: ["ContractAddress", "u8", "Direction", "bool"], + customTypes: [], + }, + } + ); + })(), + + // Model definition for `dojo_starter::models::DirectionsAvailable` model + DirectionsAvailable: (() => { + return defineComponent( + world, + { + player: RecsType.BigInt, + directions: RecsType.StringArray, + }, + { + metadata: { + namespace: "dojo_starter", + name: "DirectionsAvailable", + types: ["ContractAddress", "array"], + customTypes: [], + }, + } + ); + })(), + + // Model definition for `dojo_starter::systems::actions::actions::Moved` model + Moved: (() => { + return defineComponent( + world, + { + player: RecsType.BigInt, + direction: RecsType.String, + }, + { + metadata: { + namespace: "dojo_starter", + name: "Moved", + types: ["ContractAddress", "Direction"], + customTypes: [], + }, + } + ); + })(), + + // Model definition for `dojo_starter::models::Position` model + Position: (() => { + return defineComponent( + world, + { + player: RecsType.BigInt, + vec: Vec2Definition, + }, + { + metadata: { + namespace: "dojo_starter", + name: "Position", + types: ["ContractAddress"], + customTypes: ["Vec2"], + }, + } + ); + })(), + }; +} diff --git a/examples/example-vite-svelte-recs/src/dojo/world.ts b/examples/example-vite-svelte-recs/src/dojo/world.ts new file mode 100644 index 00000000..960676e5 --- /dev/null +++ b/examples/example-vite-svelte-recs/src/dojo/world.ts @@ -0,0 +1,3 @@ +import { createWorld } from "@dojoengine/recs"; + +export const world = createWorld(); diff --git a/examples/example-vite-svelte-recs/src/handlers.ts b/examples/example-vite-svelte-recs/src/handlers.ts new file mode 100644 index 00000000..48cf37c4 --- /dev/null +++ b/examples/example-vite-svelte-recs/src/handlers.ts @@ -0,0 +1,27 @@ +import { get } from "svelte/store"; +import { dojoStore, accountStore, burnerStore } from "./stores"; +import type { BurnerManager } from "@dojoengine/create-burner"; + +let burnerManager: BurnerManager + + +export function handleBurnerChange(event: Event) { + const target = event.target as HTMLSelectElement; + burnerManager = get(dojoStore).burnerManager + burnerManager.select(target.value); + accountStore.set(burnerManager.getActiveAccount()) +} + +export async function handleNewBurner(event: Event) { + burnerManager = get(dojoStore).burnerManager + await burnerManager.create(); + burnerStore.set(burnerManager.list()); + accountStore.set(burnerManager.getActiveAccount()) +} + +export function handleClearBurners(event: Event) { + burnerManager = get(dojoStore).burnerManager + burnerManager.clear(); + burnerStore.set(burnerManager.list()); + accountStore.set(null); +} \ No newline at end of file diff --git a/examples/example-vite-svelte-recs/src/main.ts b/examples/example-vite-svelte-recs/src/main.ts new file mode 100644 index 00000000..e75e6f62 --- /dev/null +++ b/examples/example-vite-svelte-recs/src/main.ts @@ -0,0 +1,25 @@ +import "./app.css"; +import App from "./App.svelte"; +import { setup } from "./dojo/setup"; +import { dojoConfig } from "../dojoConfig"; +import { accountStore, burnerStore, dojoStore } from "./stores"; + +// Create a writable store for the setup result + +async function initApp() { + // Update the store with the setup result + let setupRes = await setup(dojoConfig) + dojoStore.set(setupRes); + burnerStore.set(setupRes.burnerManager.list()); + accountStore.set(setupRes.burnerManager.getActiveAccount()) + + console.log("App initialized"); + + const app = new App({ + target: document.getElementById("app")!, + }); + + return app; +} + +export default initApp(); diff --git a/examples/example-vite-svelte-recs/src/stores.ts b/examples/example-vite-svelte-recs/src/stores.ts new file mode 100644 index 00000000..a414876e --- /dev/null +++ b/examples/example-vite-svelte-recs/src/stores.ts @@ -0,0 +1,9 @@ +import { writable, derived } from "svelte/store"; +import { type SetupResult } from "./dojo/setup"; +import { Account } from "starknet"; +import { type Burner } from "@dojoengine/create-burner"; + +export const dojoStore = writable(); +export const accountStore = writable(); + +export const burnerStore = writable(); diff --git a/examples/example-vite-svelte-recs/src/vite-env.d.ts b/examples/example-vite-svelte-recs/src/vite-env.d.ts new file mode 100644 index 00000000..69d05020 --- /dev/null +++ b/examples/example-vite-svelte-recs/src/vite-env.d.ts @@ -0,0 +1,8 @@ +/// +/// + +declare module "*.svelte" { + import type { ComponentType } from "svelte"; + const component: ComponentType; + export default component; +} diff --git a/examples/example-vite-svelte-recs/svelte.config.js b/examples/example-vite-svelte-recs/svelte.config.js new file mode 100644 index 00000000..b0683fd2 --- /dev/null +++ b/examples/example-vite-svelte-recs/svelte.config.js @@ -0,0 +1,7 @@ +import { vitePreprocess } from '@sveltejs/vite-plugin-svelte' + +export default { + // Consult https://svelte.dev/docs#compile-time-svelte-preprocess + // for more information about preprocessors + preprocess: vitePreprocess(), +} diff --git a/examples/example-vite-svelte-recs/tsconfig.json b/examples/example-vite-svelte-recs/tsconfig.json new file mode 100644 index 00000000..1c9391ae --- /dev/null +++ b/examples/example-vite-svelte-recs/tsconfig.json @@ -0,0 +1,22 @@ +{ + "extends": "@tsconfig/svelte/tsconfig.json", + "compilerOptions": { + "target": "ESNext", + "useDefineForClassFields": true, + "module": "ESNext", + "resolveJsonModule": true, + /** + * Typecheck JS in `.svelte` and `.js` files by default. + * Disable checkJs if you'd like to use dynamic types in JS. + * Note that setting allowJs false does not prevent the use + * of JS in `.svelte` files. + */ + "allowJs": true, + "checkJs": true, + "isolatedModules": true, + "moduleDetection": "force", + "allowSyntheticDefaultImports": true + }, + "include": ["src/**/*.ts", "src/**/*.js", "src/**/*.svelte"], + "references": [{ "path": "./tsconfig.node.json" }] +} diff --git a/examples/example-vite-svelte-recs/tsconfig.node.json b/examples/example-vite-svelte-recs/tsconfig.node.json new file mode 100644 index 00000000..6c2d8703 --- /dev/null +++ b/examples/example-vite-svelte-recs/tsconfig.node.json @@ -0,0 +1,12 @@ +{ + "compilerOptions": { + "composite": true, + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", + "skipLibCheck": true, + "module": "ESNext", + "moduleResolution": "bundler", + "strict": true, + "noEmit": true + }, + "include": ["vite.config.ts"] +} diff --git a/examples/example-vite-svelte-recs/vite.config.ts b/examples/example-vite-svelte-recs/vite.config.ts new file mode 100644 index 00000000..76d598a1 --- /dev/null +++ b/examples/example-vite-svelte-recs/vite.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from "vite"; +import { svelte } from "@sveltejs/vite-plugin-svelte"; +import topLevelAwait from "vite-plugin-top-level-await"; +import wasm from "vite-plugin-wasm"; +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [svelte(), wasm(), topLevelAwait()], +}); diff --git a/packages/create-dojo/src/commands/start.ts b/packages/create-dojo/src/commands/start.ts index 73a0ec11..fc8bd6b3 100644 --- a/packages/create-dojo/src/commands/start.ts +++ b/packages/create-dojo/src/commands/start.ts @@ -26,6 +26,10 @@ const templates = [ value: "example-vite-react-sdk", description: "Basic react app using the sdk", }, + { + value: "example-vite-svelte-recs", + description: "Basic svelte app using Dojo RECS", + }, { value: "example-vue-app-recs", description: "Basic vite app using RECS" }, ]; From 4b4550f2b231d9d6fa5bd837b3d62dc3994b2233 Mon Sep 17 00:00:00 2001 From: Zack Ames Date: Tue, 1 Oct 2024 11:59:56 -0400 Subject: [PATCH 2/2] update manifest location and imports --- examples/example-vite-svelte-recs/dojoConfig.ts | 2 +- examples/example-vite-svelte-recs/package.json | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/examples/example-vite-svelte-recs/dojoConfig.ts b/examples/example-vite-svelte-recs/dojoConfig.ts index cb5fe7bc..67124b18 100644 --- a/examples/example-vite-svelte-recs/dojoConfig.ts +++ b/examples/example-vite-svelte-recs/dojoConfig.ts @@ -1,4 +1,4 @@ -import manifest from "../../../testy/manifests/dev/deployment/manifest.json"; +import manifest from "../manifests/dev/deployment/manifest.json"; import { createDojoConfig } from "@dojoengine/core"; diff --git a/examples/example-vite-svelte-recs/package.json b/examples/example-vite-svelte-recs/package.json index df75214c..e01df8d6 100644 --- a/examples/example-vite-svelte-recs/package.json +++ b/examples/example-vite-svelte-recs/package.json @@ -19,12 +19,12 @@ "vite": "^5.4.1" }, "dependencies": { - "@dojoengine/core": "1.0.0-alpha.12", - "@dojoengine/create-burner": "1.0.0-alpha.12", + "@dojoengine/core": "workspace:*", + "@dojoengine/create-burner": "workspace:*", "@dojoengine/recs": "^2.0.13", - "@dojoengine/state": "1.0.0-alpha.12", - "@dojoengine/torii-client": "1.0.0-alpha.12", - "@dojoengine/utils": "1.0.0-alpha.12", + "@dojoengine/state": "workspace:*", + "@dojoengine/torii-client": "workspace:*", + "@dojoengine/utils": "workspace:*", "@latticexyz/utils": "^2.1.1", "starknet": "^6.11.0", "vite-plugin-top-level-await": "^1.4.4",