diff --git a/.dockerignore b/.dockerignore index 94adb11f4..af502a4f7 100644 --- a/.dockerignore +++ b/.dockerignore @@ -11,7 +11,6 @@ docker-compose* .svelte-kit .wrangler README.md -src/lib/paraglide LICENSE .vscode helm-charts diff --git a/.env b/.env index 606ad5809..13ecc0b9f 100644 --- a/.env +++ b/.env @@ -10,7 +10,6 @@ PUBLIC_ENVIRONMENT=development PUBLIC_CANONICAL_ORIGIN=http://localhost:5173 # The domain used for analytics -PUBLIC_ANALYTICS_DOMAIN= # An optional private key that can be specified for testing specific accounts PUBLIC_LOCAL_SIGNER= @@ -60,6 +59,8 @@ PUBLIC_STORYBLOK_REGION= PUBLIC_STORYBLOK_CONTENT_TYPE= PUBLIC_STORYBLOK_SOURCE= +PUBLIC_BIDNAME_MAX_TRACKED=20 +PUBLIC_FEATURE_BIDNAME= PUBLIC_FEATURE_CMC_APIKEY= PUBLIC_FEATURE_CMC_PAIRS= PUBLIC_FEATURE_COINBASE_ASSETS= @@ -70,16 +71,18 @@ PUBLIC_FEATURE_EOSNTIME=false PUBLIC_FEATURE_GIFTEDRAM=false PUBLIC_FEATURE_HYPERION=false PUBLIC_FEATURE_LIGHTAPI=false -PUBLIC_FEATURE_METAMASK_PRODUCT_NAME="EOS Wallet" PUBLIC_FEATURE_METAMASK_SERVICE_URL="https://dev.account-creation-portal.pages.dev/buy" -PUBLIC_FEATURE_METAMASK_SNAP_ORIGIN="npm:@greymass/eos-wallet" +PUBLIC_FEATURE_METAMASK_SNAP_ORIGIN="npm:vaulta-wallet" PUBLIC_FEATURE_METAMASK=true +PUBLIC_FEATURE_MSIGAPI=false PUBLIC_FEATURE_POWERUP=true +PUBLIC_FEATURE_PROPOSALS=true PUBLIC_FEATURE_RAMMARKET=true PUBLIC_FEATURE_RAMTRANSFER=true PUBLIC_FEATURE_RENTREX=true PUBLIC_FEATURE_REX=true PUBLIC_FEATURE_ROBO=true +PUBLIC_FEATURE_ROBO2=false PUBLIC_FEATURE_STAKERESOURCE=true PUBLIC_FEATURE_STAKING=true PUBLIC_FEATURE_TIMESERIES=false @@ -96,12 +99,16 @@ PUBLIC_WALLET_SCATTER=false PUBLIC_WALLET_TOKENPOCKET=false PUBLIC_WALLET_WEB_AUTHENTICATOR=false PUBLIC_WALLET_WOMBAT=false +PUBLIC_WALLET_GATEWALLET=false +PUBLIC_RESOURCE_PROVIDER_URL= BACKEND_API_CHAIN="https://jungle4.greymass.com" BACKEND_API_HISTORY="https://jungle4.greymass.com" BACKEND_API_HYPERION= BACKEND_API_LIGHTAPI= BACKEND_API_METRICS= +BACKEND_API_MSIGS= +BACKEND_API_ROBO2= COINBASE_API_KEY_NAME= COINBASE_API_KEY_SECRET= diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 7c2e540a4..41634f767 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -8,7 +8,7 @@ jobs: strategy: fail-fast: false matrix: - chain: ['jungle4', 'kylin', 'vaulta', 'telos', 'telostestnet', 'wax', 'waxtestnet'] + chain: ['jungle4', 'vaulta', 'telos', 'telostestnet', 'wax', 'waxtestnet'] runs-on: ubuntu-latest name: Check against ${{ matrix.chain }} steps: @@ -18,6 +18,5 @@ jobs: fetch-depth: 1 - uses: oven-sh/setup-bun@v2 - run: bun install - - run: bun run build-paraglide - run: make config/${{ matrix.chain }} - run: make check diff --git a/.gitignore b/.gitignore index e930eaa3d..76f0c9aef 100644 --- a/.gitignore +++ b/.gitignore @@ -22,4 +22,7 @@ Thumbs.db # Vite vite.config.js.timestamp-* vite.config.ts.timestamp-* -.wrangler \ No newline at end of file +.wrangler + +# Editor +.vscode/ \ No newline at end of file diff --git a/.prettierignore b/.prettierignore index d3bf0f165..f179ce297 100644 --- a/.prettierignore +++ b/.prettierignore @@ -2,5 +2,8 @@ package-lock.json pnpm-lock.yaml yarn.lock -src/lib/paraglide -src/lib/wharf/contracts \ No newline at end of file +src/lib/wharf/contracts +.opencode +src/locales/* +src/lib/vp/fixtures +.superpowers/sdd \ No newline at end of file diff --git a/Makefile b/Makefile index e96925d70..3f078b20f 100644 --- a/Makefile +++ b/Makefile @@ -8,6 +8,8 @@ BIN := ./node_modules/.bin ENVS=./scripts/env CONTRACTS=./src/lib/wharf/contracts +CODEX_MODEL ?= gpt-5.6-luna +CODEX_REASONING ?= low .PHONY: dev dev: node_modules codegen @@ -35,6 +37,21 @@ install: node_modules node_modules: bun install --frozen-lockfile +.PHONY: translate +translate: node_modules + @command -v codex >/dev/null 2>&1 || { \ + echo "Codex CLI is required. Install it, then run 'codex login'."; \ + exit 1; \ + } + @codex login status >/dev/null 2>&1 || { \ + echo "Codex CLI is not authenticated. Run 'codex login' and try again."; \ + exit 1; \ + } + WUCHALE_AI=codex \ + WUCHALE_CODEX_MODEL="$(CODEX_MODEL)" \ + WUCHALE_CODEX_REASONING="$(CODEX_REASONING)" \ + bunx wuchale + .PHONY: build build: node_modules codegen bun run build @@ -108,7 +125,37 @@ else cp ./configs/contracts/eosio.rex.ts $(CONTRACTS)/eosio.rex.ts endif -codegen: $(CONTRACTS)/system.ts $(CONTRACTS)/token.ts $(CONTRACTS)/msig.ts $(CONTRACTS)/eosio.wram.ts $(CONTRACTS)/eosio.reserv.ts $(CONTRACTS)/eosio.rex.ts $(CONTRACTS)/delphihelper.ts $(CONTRACTS)/delphioracle.ts $(CONTRACTS)/unicove.api.ts $(CONTRACTS)/eosntime.ts $(CONTRACTS)/core.vaulta.ts +$(CONTRACTS)/sentiment.ts: +ifeq ($(PUBLIC_FEATURE_SENTIMENT),true) + $(BIN)/wharfkit generate -u $(PUBLIC_API_CHAIN) -f $(CONTRACTS)/sentiment.ts $(PUBLIC_FEATURE_SENTIMENT_CONTRACT) +else + cp ./configs/contracts/sentiment.ts $(CONTRACTS)/sentiment.ts +endif + +$(CONTRACTS)/create.gm.ts: +ifneq ($(PUBLIC_FEATURE_CREATE_CONTRACT),) + $(BIN)/wharfkit generate -u $(PUBLIC_API_CHAIN) -f $(CONTRACTS)/create.gm.ts $(PUBLIC_FEATURE_CREATE_CONTRACT) +else + cp ./configs/contracts/create.gm.ts $(CONTRACTS)/create.gm.ts +endif + +FORUM_CONTRACT = forum.$(lastword $(subst ., ,$(PUBLIC_FEATURE_DISCUSSION_CONTRACT))) + +$(CONTRACTS)/msg.ts: +ifeq ($(PUBLIC_FEATURE_DISCUSSION),true) + $(BIN)/wharfkit generate -u $(PUBLIC_API_CHAIN) -f $(CONTRACTS)/msg.ts $(PUBLIC_FEATURE_DISCUSSION_CONTRACT) +else + cp ./configs/contracts/msg.ts $(CONTRACTS)/msg.ts +endif + +$(CONTRACTS)/forum.ts: +ifeq ($(PUBLIC_FEATURE_DISCUSSION),true) + $(BIN)/wharfkit generate -u $(PUBLIC_API_CHAIN) -f $(CONTRACTS)/forum.ts $(FORUM_CONTRACT) +else + cp ./configs/contracts/forum.ts $(CONTRACTS)/forum.ts +endif + +codegen: $(CONTRACTS)/system.ts $(CONTRACTS)/token.ts $(CONTRACTS)/msig.ts $(CONTRACTS)/eosio.wram.ts $(CONTRACTS)/eosio.reserv.ts $(CONTRACTS)/eosio.rex.ts $(CONTRACTS)/delphihelper.ts $(CONTRACTS)/delphioracle.ts $(CONTRACTS)/unicove.api.ts $(CONTRACTS)/eosntime.ts $(CONTRACTS)/core.vaulta.ts $(CONTRACTS)/sentiment.ts $(CONTRACTS)/create.gm.ts $(CONTRACTS)/msg.ts $(CONTRACTS)/forum.ts mkdir -p $(CONTRACTS) .PHONY: codegen/base @@ -120,6 +167,10 @@ codegen/base: $(BIN)/wharfkit generate -u $(PUBLIC_API_CHAIN) -f ./configs/contracts/unicove.api.ts $(PUBLIC_FEATURE_UNICOVE_CONTRACT_API) $(BIN)/wharfkit generate -u https://eos.greymass.com -f ./configs/contracts/eosio.rex.ts eosio.rex $(BIN)/wharfkit generate -u https://eos.greymass.com -f ./configs/contracts/eosio.wram.ts eosio.wram + $(BIN)/wharfkit generate -u https://jungle4.greymass.com -f ./configs/contracts/sentiment.ts sentiment.gm + $(BIN)/wharfkit generate -u https://jungle4.greymass.com -f ./configs/contracts/create.gm.ts create.gm + $(BIN)/wharfkit generate -u https://vaulta.greymass.com -f ./configs/contracts/msg.ts msg + $(BIN)/wharfkit generate -u https://vaulta.greymass.com -f ./configs/contracts/forum.ts forum.msg make format .PHONY: clean @@ -137,26 +188,23 @@ clean/sveltekit: codegen/clean: rm -rf $(CONTRACTS)/*.ts -config/eos: codegen/clean - cp ./configs/.env.eos .env.local - config/jungle4: codegen/clean - cp ./configs/.env.jungle4 .env.local + $(ENVS)/merge-env.sh ./configs/.env.jungle4 .env.local config/kylin: codegen/clean - cp ./configs/.env.kylin .env.local + $(ENVS)/merge-env.sh ./configs/.env.kylin .env.local config/telos: codegen/clean - cp ./configs/.env.telos .env.local + $(ENVS)/merge-env.sh ./configs/.env.telos .env.local config/telostestnet: codegen/clean - cp ./configs/.env.telostestnet .env.local + $(ENVS)/merge-env.sh ./configs/.env.telostestnet .env.local config/vaulta: codegen/clean - cp ./configs/.env.vaulta .env.local + $(ENVS)/merge-env.sh ./configs/.env.vaulta .env.local + +config/wax: codegen/clean + $(ENVS)/merge-env.sh ./configs/.env.wax .env.local -config/wax: codegen/clean - cp ./configs/.env.wax .env.local - -config/waxtestnet: codegen/clean - cp ./configs/.env.waxtestnet .env.local +config/waxtestnet: codegen/clean + $(ENVS)/merge-env.sh ./configs/.env.waxtestnet .env.local diff --git a/README.md b/README.md index ac01ee6c4..da67b4d03 100644 --- a/README.md +++ b/README.md @@ -24,16 +24,16 @@ The `make check` command will run through Svelte checks, eslint, and prettier. A The `.env` file contains the default configuration for Unicove running the Jungle 4 testnet. This file shouldn't be modified for local changes, and instead a `.env.development` file should be created to selectively override the defaults in the `.env`. -A number of complete chain configurations are available in the `./configs` directory. These configs can be loaded in using one of the Makefile config commands (e.g. `make config/eos`). This will copy the configuration for a specific chain and paste it into `.env.local` to override the defaults in the `.env` file. +A number of complete chain configurations are available in the `./configs` directory. These configs can be loaded in using one of the Makefile config commands (e.g. `make config/vaulta`). This will copy the configuration for a specific chain and paste it into `.env.local` to override the defaults in the `.env` file. Available configuration commands: ``` -make config/eos make config/jungle4 make config/kylin make config/telos make config/telostestnet +make config/vaulta make config/wax make config/waxtestnet ``` diff --git a/bun.lock b/bun.lock index 2b0f5d80a..407076277 100644 --- a/bun.lock +++ b/bun.lock @@ -1,32 +1,35 @@ { "lockfileVersion": 1, + "configVersion": 0, "workspaces": { "": { "name": "unicove", "dependencies": { - "@accuser/svelte-plausible-analytics": "^1.0.0", "@lucide/svelte": "^0.525.0", "@storyblok/svelte": "^5.0.2", "@wharfkit/account-creation-plugin-metamask": "^1.3.0", "@wharfkit/common": "^1.5.0", "@wharfkit/contract": "^1.2.1", "@wharfkit/hyperion": "^1.0.4", + "@wharfkit/msigs": "^0.3.1", "@wharfkit/protocol-scatter": "^1.4.2", - "@wharfkit/resources": "^1.3.1", - "@wharfkit/roborovski": "^1.1.0", + "@wharfkit/resources": "^1.5.0", + "@wharfkit/roborovski": "^2.0.0-rc5", "@wharfkit/session": "^1.7.1-beta1", - "@wharfkit/transact-plugin-resource-provider": "^1.1.3", - "@wharfkit/wallet-plugin-anchor": "^1.6.0", + "@wharfkit/transact-plugin-resource-provider": "^2.0.0", + "@wharfkit/wallet-plugin-anchor": "^1.7.2", "@wharfkit/wallet-plugin-cleos": "^1.2.0", "@wharfkit/wallet-plugin-cloudwallet": "^1.4.0", + "@wharfkit/wallet-plugin-gatewallet": "^1.1.0", "@wharfkit/wallet-plugin-imtoken": "^1.1.0", "@wharfkit/wallet-plugin-metamask": "^1.2.1", "@wharfkit/wallet-plugin-privatekey": "^1.1.0", "@wharfkit/wallet-plugin-scatter": "^1.5.1", "@wharfkit/wallet-plugin-tokenpocket": "^1.6.3", - "@wharfkit/wallet-plugin-web-authenticator": "^0.4.0", "@wharfkit/wallet-plugin-wombat": "^1.5.1", - "@wharfkit/web-renderer": "^1.4.1", + "@wharfkit/web-ui": "^0.2.1", + "@wuchale/svelte": "^0.16.6", + "@wuchale/vite-plugin": "^0.14.8", "chart.js": "^4.4.3", "clsx": "^2.1.1", "dayjs": "^1.11.13", @@ -35,20 +38,20 @@ "just-extend": "^6.2.0", "runed": "^0.15.3", "svead": "^0.0.13", - "unicove-components": "^0.2.2", + "svelte-exmarkdown": "^5.0.2", + "unicove-components": "^0.6.1", + "valibot": "^1.1.0", + "wuchale": "^0.17.5", "yaml": "^2.7.0", }, "devDependencies": { - "@inlang/paraglide-js": "^1.11.8", - "@inlang/paraglide-sveltekit": "^0.16.1", - "@inlang/paraglide-vite": "^1.4.0", "@melt-ui/pp": "^0.3.2", "@melt-ui/svelte": "^0.83.0", "@sveltejs/adapter-auto": "^5.0.0", "@sveltejs/adapter-cloudflare": "^6.0.1", "@sveltejs/enhanced-img": "^0.6.0", - "@sveltejs/kit": "^2.20.2", - "@sveltejs/vite-plugin-svelte": "^5.0.3", + "@sveltejs/kit": "^2.47.2", + "@sveltejs/vite-plugin-svelte": "^6.2.1", "@tailwindcss/vite": "^4.0.14", "@types/bun": "^1.1.10", "@types/eslint": "^9.6.1", @@ -64,24 +67,20 @@ "prettier-plugin-svelte": "^3.3.3", "prettier-plugin-tailwindcss": "^0.6.11", "storyblok": "^3.36.0", - "svelte": "^5.35.0", + "svelte": "^5.41.1", "svelte-adapter-bun": "^0.5.2", "svelte-check": "^4.1.5", "tailwind-merge": "^3.3.0", "tailwindcss": "^4.0.14", "tslib": "^2.6.3", - "typescript": "^5.5.4", - "typescript-eslint": "^8.32.0", + "typescript": "^5.9.3", + "typescript-eslint": "^8.46.2", "typescript-svelte-plugin": "^0.3.47", - "vite": "^6.2.4", + "vite": "^7.1.11", }, }, }, "packages": { - "@accuser/svelte-plausible-analytics": ["@accuser/svelte-plausible-analytics@1.0.0", "", { "peerDependencies": { "@sveltejs/kit": "^1.30.3 || ^2.0.0", "svelte": "^4.2.8" } }, "sha512-wZegJmMt3UGmTMo1KXEDL7pKjK/GyKfFAociujHsCKkCuzNIIfUhydancxnettLZVfBaOJe6xT6OrPpo/kfBYg=="], - - "@ampproject/remapping": ["@ampproject/remapping@2.3.0", "", { "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.24" } }, "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw=="], - "@bcherny/json-schema-ref-parser": ["@bcherny/json-schema-ref-parser@10.0.5-fork", "", { "dependencies": { "@jsdevtools/ono": "^7.1.3", "@types/json-schema": "^7.0.6", "call-me-maybe": "^1.0.1", "js-yaml": "^4.1.0" } }, "sha512-E/jKbPoca1tfUPj3iSbitDZTGnq6FUFjkH6L8U2oDwSuwK1WhnnVtCG7oFOTg/DDnyoXbQYUiUiGOibHqaGVnw=="], "@cloudflare/kv-asset-handler": ["@cloudflare/kv-asset-handler@0.3.4", "", { "dependencies": { "mime": "^3.0.0" } }, "sha512-YLPHc8yASwjNkmcDMQMY35yiWjoKAKnhUbPRszBRS0YgH+IXtsMp61j+yTcnCE3oO2DgP0U3iejLC8FTtKDC8Q=="], @@ -202,6 +201,8 @@ "@greymass/create-account": ["@greymass/create-account@1.1.0", "", { "dependencies": { "@greymass/return-path": "^0.0.1", "@wharfkit/antelope": "^1.0.13", "@wharfkit/signing-request": "^3.2.0", "tslib": "^2.1.0" } }, "sha512-6FT1Kwx7t5gL75PklNoMTH+CHCaT6/RZAMW48YvnNEdJyL8m5j5FTn8p5zzU9xaVIKzJSvjA1gkK1mjeXIxmIQ=="], + "@greymass/miniaes": ["@greymass/miniaes@1.0.0", "", { "dependencies": { "tslib": "^2.1.0" } }, "sha512-xKYTnAyyoq3gpJS11JvU4dkju28M8Zbp06CuP3aKR4DMH6B2z64LauGGGzKksKh5Qd770JA/dzhLbImnBlymbg=="], + "@greymass/return-path": ["@greymass/return-path@0.0.1", "", { "dependencies": { "tslib": "^2.1.0" } }, "sha512-PMPgSJYSHeaYXbURj4JfsEeReWkJqlTKFMn2iTPhvb+6ICR5GhVPDJKewqZPqpZumcD13M1c701YYWKHZlMsxw=="], "@humanfs/core": ["@humanfs/core@0.19.1", "", {}, "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA=="], @@ -258,48 +259,14 @@ "@img/sharp-win32-x64": ["@img/sharp-win32-x64@0.34.2", "", { "os": "win32", "cpu": "x64" }, "sha512-aUdT6zEYtDKCaxkofmmJDJYGCf0+pJg3eU9/oBuqvEeoB9dKI6ZLc/1iLJCTuJQDO4ptntAlkUmHgGjyuobZbw=="], - "@inlang/detect-json-formatting": ["@inlang/detect-json-formatting@1.0.0", "", { "dependencies": { "guess-json-indent": "2.0.0" } }, "sha512-o0jeI8U4TgNlsPwI0y92jld8/18Loh2KEgHCYCJ42rCOdxFrA8R60cydlEd2/6jkdHFn5DxKj8rOyiKv3z9uOw=="], - - "@inlang/json-types": ["@inlang/json-types@1.1.0", "", { "peerDependencies": { "@sinclair/typebox": "^0.31.0" } }, "sha512-n6vS6AqETsCFbV4TdBvR/EH57waVXzKsMqeUQ+eH2Q6NUATfKhfLabgNms2A+QV3aedH/hLtb1pRmjl2ykBVZg=="], - - "@inlang/language-tag": ["@inlang/language-tag@1.5.1", "", { "dependencies": { "@sinclair/typebox": "^0.31.17" } }, "sha512-+NlYDxDvN5h/TKUmkuQv+Ct1flxaVRousCbek7oFEk3/afZPVLNTJhm+cX2xiOg3tmi2KKrBLfy/V9oUDHj6GQ=="], - - "@inlang/message": ["@inlang/message@2.1.0", "", { "dependencies": { "@inlang/language-tag": "1.5.1" }, "peerDependencies": { "@sinclair/typebox": "^0.31.17" } }, "sha512-Gr3wiErI7fW4iW11xgZzsJEUTjlZuz02fB/EO+ENTBlSHGyI1kzbCCeNqLr1mnGdQYiOxfuZxY0S4G5C6Pju3Q=="], - - "@inlang/message-lint-rule": ["@inlang/message-lint-rule@1.4.7", "", { "dependencies": { "@inlang/json-types": "1.1.0", "@inlang/language-tag": "1.5.1", "@inlang/message": "2.1.0", "@inlang/project-settings": "2.4.2", "@inlang/translatable": "1.3.1" }, "peerDependencies": { "@sinclair/typebox": "^0.31.17" } }, "sha512-FCiFe/H25fqhsIb/YTb0K7eDJqEYzdr6ectF0xG4zARiS7nXz0FHxk2niJrIO8kFkB4mx6tszsgQ0xqD5cHQag=="], - - "@inlang/module": ["@inlang/module@1.2.14", "", { "dependencies": { "@inlang/message-lint-rule": "1.4.7", "@inlang/plugin": "2.4.14" }, "peerDependencies": { "@sinclair/typebox": "^0.31.17" } }, "sha512-Z7rRa6x3RkzjdvNA7x+KskNGdSBEO46X9c7bTl6eZmLXy0J9yGDn6s4jpYqQzyKRG8g5mEqWcRqcVqdNwzj5Gg=="], - - "@inlang/paraglide-js": ["@inlang/paraglide-js@1.11.8", "", { "dependencies": { "@inlang/detect-json-formatting": "1.0.0", "@inlang/language-tag": "1.5.1", "@inlang/plugin-message-format": "2.2.0", "@inlang/recommend-ninja": "0.1.1", "@inlang/recommend-sherlock": "0.1.1", "@inlang/sdk": "0.37.0", "@lix-js/client": "2.2.1", "@lix-js/fs": "2.2.0", "commander": "11.1.0", "consola": "3.2.3", "dedent": "1.5.1", "json5": "2.2.3", "posthog-node": "^4.0.1" }, "bin": { "paraglide-js": "bin/run.js" } }, "sha512-PxzrmDP63fbMNF4/AtiLFTnUodFxVbOkLpIrOzPZvNuLg0wCWnsaBfNT87/rNjL/A7ZPzEBmuDi0P2pn8iB0Fw=="], - - "@inlang/paraglide-sveltekit": ["@inlang/paraglide-sveltekit@0.16.1", "", { "dependencies": { "@inlang/paraglide-js": "1.11.8", "@inlang/paraglide-vite": "1.4.0", "@lix-js/client": "2.2.1", "commander": "^12.0.0", "dedent": "1.5.1", "devalue": "^4.3.2", "magic-string": "^0.30.5", "svelte": "^5.0.0 || ^5.0.0-next.1 || ^5.0.0-rc.1" }, "peerDependencies": { "@sveltejs/kit": "^2.4.3" }, "bin": { "paraglide-sveltekit": "bin/run.js" } }, "sha512-NDmfbeH2lWlktsQrVp/bKpih6fxNMFph4VpRp3wCrK04ZqOkhIRHlCpMlmrb3ol+zuUcFdojTqBC1gz8pZ8bbA=="], - - "@inlang/paraglide-unplugin": ["@inlang/paraglide-unplugin@1.9.5", "", { "dependencies": { "@inlang/paraglide-js": "1.11.8", "@inlang/sdk": "0.37.0", "@lix-js/client": "2.2.1", "typescript": "^5.5.2", "unplugin": "^1.14.1" } }, "sha512-5KklLBvl/y+R4SccWH74USTGQNFW5IwEyMLQ3WIHX9cHX2pnnA5wGqQxYg3EcgCyErHLc3+sm7EMNB5Z0dSeTg=="], - - "@inlang/paraglide-vite": ["@inlang/paraglide-vite@1.4.0", "", { "dependencies": { "@inlang/paraglide-unplugin": "1.9.5" } }, "sha512-JXfHOOhXNMlHkouO6nuYoIYL5iqM6Y6FtLNq64nIUOpVnXSQfyYCF73lHYE7ZqRMQxoCvUWnqAlyUb4MTmP2IQ=="], - - "@inlang/plugin": ["@inlang/plugin@2.4.14", "", { "dependencies": { "@inlang/json-types": "1.1.0", "@inlang/language-tag": "1.5.1", "@inlang/message": "2.1.0", "@inlang/project-settings": "2.4.2", "@inlang/translatable": "1.3.1", "@lix-js/fs": "2.2.0" }, "peerDependencies": { "@sinclair/typebox": "^0.31.17" } }, "sha512-HFI1t1tKs6jXqwKVl59vvt7kvMgg2Po7xA3IFijfJTZCt0tTI8txqeXCUV9jhUop29Hqj6a5zQd32BYv33Dulw=="], - - "@inlang/plugin-message-format": ["@inlang/plugin-message-format@2.2.0", "", {}, "sha512-6MJLExr3OLqbR8gCP4UEgNMgdaJFFCug2GLmFwid7Ana4kObnbCA33YN3m3eN8p+lmnv7zpfW7oeyTZXZLoptg=="], - - "@inlang/project-settings": ["@inlang/project-settings@2.4.2", "", { "dependencies": { "@inlang/json-types": "1.1.0", "@inlang/language-tag": "1.5.1" }, "peerDependencies": { "@sinclair/typebox": "^0.31.17" } }, "sha512-Okus2JdwTzNebZHkXCrUH/zIWwqu7kWm/ZQaM6a31oRIEA2JdQJtyNGM8E/KrwGfEuq18U+WV03+tR3tkwsGvA=="], - - "@inlang/recommend-ninja": ["@inlang/recommend-ninja@0.1.1", "", { "dependencies": { "@inlang/sdk": "0.36.3", "@lix-js/client": "2.2.1", "@lix-js/fs": "2.2.0", "@sinclair/typebox": "^0.31.17", "js-yaml": "^4.1.0" } }, "sha512-dthW8SA6LHUhPFXwKxYy92PG4dg4KeIS0jbgpplXxgoQAeouP6DHEa87kva2DXbk3kUbNz+/MFPjyaygBfamog=="], - - "@inlang/recommend-sherlock": ["@inlang/recommend-sherlock@0.1.1", "", { "dependencies": { "@inlang/sdk": "0.36.4", "@lix-js/fs": "2.2.0", "@sinclair/typebox": "^0.31.17", "comment-json": "^4.2.3" } }, "sha512-8qZ8FJ/QqVh6YqKmHo3SxI4ENM0O80TCzETm+hxeQ2JzPKPFYucFINpLvUygiLFp/hJwhoI5TjRz6jNI2QdfMQ=="], - - "@inlang/result": ["@inlang/result@1.1.0", "", {}, "sha512-zLGroi9EUiHuOjUOaglUVTFO7EWdo2OARMJLBO1Q5Ga/xJmSQb6XS1lhqEXBFAjgFarfEMX5YEJWWALogYV3wA=="], - - "@inlang/sdk": ["@inlang/sdk@0.37.0", "", { "dependencies": { "@inlang/json-types": "1.1.0", "@inlang/language-tag": "1.5.1", "@inlang/message": "2.1.0", "@inlang/message-lint-rule": "1.4.7", "@inlang/module": "1.2.14", "@inlang/plugin": "2.4.14", "@inlang/project-settings": "2.4.2", "@inlang/result": "1.1.0", "@inlang/translatable": "1.3.1", "@lix-js/client": "2.2.1", "@lix-js/fs": "2.2.0", "@sinclair/typebox": "^0.31.17", "debug": "^4.3.4", "dedent": "1.5.1", "deepmerge-ts": "^5.1.0", "murmurhash3js": "^3.0.1", "solid-js": "1.6.12", "throttle-debounce": "^5.0.0" } }, "sha512-/uG/9HrJU+v5jY/nWKZAlI3diD8WdT5bAYuIZ3rVsnphvqV4iWvQwAp3H/K8F5QDJ+GEY79mhKfFhHcKMSiWng=="], - - "@inlang/translatable": ["@inlang/translatable@1.3.1", "", { "dependencies": { "@inlang/language-tag": "1.5.1" } }, "sha512-VAtle21vRpIrB+axtHFrFB0d1HtDaaNj+lV77eZQTJyOWbTFYTVIQJ8WAbyw9eu4F6h6QC2FutLyxjMomxfpcQ=="], - "@internationalized/date": ["@internationalized/date@3.5.5", "", { "dependencies": { "@swc/helpers": "^0.5.0" } }, "sha512-H+CfYvOZ0LTJeeLOqm19E3uj/4YjrmOFtBufDHPfvtI80hFAMqtrp7oCACpe4Cil5l8S0Qu/9dYfZc/5lY8WQQ=="], "@jest/schemas": ["@jest/schemas@29.6.3", "", { "dependencies": { "@sinclair/typebox": "^0.27.8" } }, "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA=="], "@jridgewell/gen-mapping": ["@jridgewell/gen-mapping@0.3.5", "", { "dependencies": { "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", "@jridgewell/trace-mapping": "^0.3.24" } }, "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg=="], + "@jridgewell/remapping": ["@jridgewell/remapping@2.3.5", "", { "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", "@jridgewell/trace-mapping": "^0.3.24" } }, "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ=="], + "@jridgewell/resolve-uri": ["@jridgewell/resolve-uri@3.1.2", "", {}, "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw=="], "@jridgewell/set-array": ["@jridgewell/set-array@1.2.1", "", {}, "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A=="], @@ -312,10 +279,6 @@ "@kurkle/color": ["@kurkle/color@0.3.2", "", {}, "sha512-fuscdXJ9G1qb7W8VdHi+IwRqij3lBkosAm4ydQtEmbY58OzHXqQhvlxqEkoz0yssNVn38bcpRWgA9PP+OGoisw=="], - "@lix-js/client": ["@lix-js/client@2.2.1", "", { "dependencies": { "@lix-js/fs": "2.2.0", "async-lock": "1.4.1", "clean-git-ref": "2.0.1", "crc-32": "1.2.2", "ignore": "5.3.1", "octokit": "3.1.2", "pako": "1.0.11", "pify": "5.0.0", "sha.js": "2.4.11" } }, "sha512-6DTJdRN2L2a1A8OxW1Wqh3ZOORqq8+YlCALMF5UMoxhfHE4Fcq9FZztMkAV+KwhrDSsp0USWvD9myG0XX+v6QQ=="], - - "@lix-js/fs": ["@lix-js/fs@2.2.0", "", { "dependencies": { "typescript": "5.2.2" } }, "sha512-B9X3FjD8WmdG7tbA44JuniSO0KdKBWnjfxl8zpgrDCkavrp/GP7U0xxBkc0WgeeoHjQ/pkqq9VqtWB2kS9jIUg=="], - "@lucide/svelte": ["@lucide/svelte@0.525.0", "", { "peerDependencies": { "svelte": "^5" } }, "sha512-dyUxkXzepagLUzL8jHQNdeH286nC66ClLACsg+Neu/bjkRJWPWMzkT+H0DKlE70QdkicGCfs1ZGmXCc351hmZA=="], "@melt-ui/pp": ["@melt-ui/pp@0.3.2", "", { "dependencies": { "estree-walker": "^3.0.3", "magic-string": "^0.30.5" }, "peerDependencies": { "@melt-ui/svelte": ">= 0.29.0", "svelte": "^3.55.0 || ^4.0.0 || ^5.0.0-next.1" } }, "sha512-xKkPvaIAFinklLXcQOpwZ8YSpqAFxykjWf8Y/fSJQwsixV/0rcFs07hJ49hJjPy5vItvw5Qa0uOjzFUbXzBypQ=="], @@ -350,97 +313,53 @@ "@nodelib/fs.walk": ["@nodelib/fs.walk@1.2.8", "", { "dependencies": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" } }, "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg=="], - "@octokit/app": ["@octokit/app@14.1.0", "", { "dependencies": { "@octokit/auth-app": "^6.0.0", "@octokit/auth-unauthenticated": "^5.0.0", "@octokit/core": "^5.0.0", "@octokit/oauth-app": "^6.0.0", "@octokit/plugin-paginate-rest": "^9.0.0", "@octokit/types": "^12.0.0", "@octokit/webhooks": "^12.0.4" } }, "sha512-g3uEsGOQCBl1+W1rgfwoRFUIR6PtvB2T1E4RpygeUU5LrLvlOqcxrt5lfykIeRpUPpupreGJUYl70fqMDXdTpw=="], - - "@octokit/auth-app": ["@octokit/auth-app@6.1.1", "", { "dependencies": { "@octokit/auth-oauth-app": "^7.1.0", "@octokit/auth-oauth-user": "^4.1.0", "@octokit/request": "^8.3.1", "@octokit/request-error": "^5.1.0", "@octokit/types": "^13.1.0", "deprecation": "^2.3.1", "lru-cache": "^10.0.0", "universal-github-app-jwt": "^1.1.2", "universal-user-agent": "^6.0.0" } }, "sha512-VrTtzRpyuT5nYGUWeGWQqH//hqEZDV+/yb6+w5wmWpmmUA1Tx950XsAc2mBBfvusfcdF2E7w8jZ1r1WwvfZ9pA=="], - - "@octokit/auth-oauth-app": ["@octokit/auth-oauth-app@7.1.0", "", { "dependencies": { "@octokit/auth-oauth-device": "^6.1.0", "@octokit/auth-oauth-user": "^4.1.0", "@octokit/request": "^8.3.1", "@octokit/types": "^13.0.0", "@types/btoa-lite": "^1.0.0", "btoa-lite": "^1.0.0", "universal-user-agent": "^6.0.0" } }, "sha512-w+SyJN/b0l/HEb4EOPRudo7uUOSW51jcK1jwLa+4r7PA8FPFpoxEnHBHMITqCsc/3Vo2qqFjgQfz/xUUvsSQnA=="], - - "@octokit/auth-oauth-device": ["@octokit/auth-oauth-device@6.1.0", "", { "dependencies": { "@octokit/oauth-methods": "^4.1.0", "@octokit/request": "^8.3.1", "@octokit/types": "^13.0.0", "universal-user-agent": "^6.0.0" } }, "sha512-FNQ7cb8kASufd6Ej4gnJ3f1QB5vJitkoV1O0/g6e6lUsQ7+VsSNRHRmFScN2tV4IgKA12frrr/cegUs0t+0/Lw=="], - - "@octokit/auth-oauth-user": ["@octokit/auth-oauth-user@4.1.0", "", { "dependencies": { "@octokit/auth-oauth-device": "^6.1.0", "@octokit/oauth-methods": "^4.1.0", "@octokit/request": "^8.3.1", "@octokit/types": "^13.0.0", "btoa-lite": "^1.0.0", "universal-user-agent": "^6.0.0" } }, "sha512-FrEp8mtFuS/BrJyjpur+4GARteUCrPeR/tZJzD8YourzoVhRics7u7we/aDcKv+yywRNwNi/P4fRi631rG/OyQ=="], - - "@octokit/auth-token": ["@octokit/auth-token@4.0.0", "", {}, "sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA=="], - - "@octokit/auth-unauthenticated": ["@octokit/auth-unauthenticated@5.0.1", "", { "dependencies": { "@octokit/request-error": "^5.0.0", "@octokit/types": "^12.0.0" } }, "sha512-oxeWzmBFxWd+XolxKTc4zr+h3mt+yofn4r7OfoIkR/Cj/o70eEGmPsFbueyJE2iBAGpjgTnEOKM3pnuEGVmiqg=="], - - "@octokit/core": ["@octokit/core@5.2.0", "", { "dependencies": { "@octokit/auth-token": "^4.0.0", "@octokit/graphql": "^7.1.0", "@octokit/request": "^8.3.1", "@octokit/request-error": "^5.1.0", "@octokit/types": "^13.0.0", "before-after-hook": "^2.2.0", "universal-user-agent": "^6.0.0" } }, "sha512-1LFfa/qnMQvEOAdzlQymH0ulepxbxnCYAKJZfMci/5XJyIHWgEYnDmgnKakbTh7CH2tFQ5O60oYDvns4i9RAIg=="], - - "@octokit/endpoint": ["@octokit/endpoint@9.0.5", "", { "dependencies": { "@octokit/types": "^13.1.0", "universal-user-agent": "^6.0.0" } }, "sha512-ekqR4/+PCLkEBF6qgj8WqJfvDq65RH85OAgrtnVp1mSxaXF03u2xW/hUdweGS5654IlC0wkNYC18Z50tSYTAFw=="], - - "@octokit/graphql": ["@octokit/graphql@7.1.0", "", { "dependencies": { "@octokit/request": "^8.3.0", "@octokit/types": "^13.0.0", "universal-user-agent": "^6.0.0" } }, "sha512-r+oZUH7aMFui1ypZnAvZmn0KSqAUgE1/tUXIWaqUCa1758ts/Jio84GZuzsvUkme98kv0WFY8//n0J1Z+vsIsQ=="], - - "@octokit/oauth-app": ["@octokit/oauth-app@6.1.0", "", { "dependencies": { "@octokit/auth-oauth-app": "^7.0.0", "@octokit/auth-oauth-user": "^4.0.0", "@octokit/auth-unauthenticated": "^5.0.0", "@octokit/core": "^5.0.0", "@octokit/oauth-authorization-url": "^6.0.2", "@octokit/oauth-methods": "^4.0.0", "@types/aws-lambda": "^8.10.83", "universal-user-agent": "^6.0.0" } }, "sha512-nIn/8eUJ/BKUVzxUXd5vpzl1rwaVxMyYbQkNZjHrF7Vk/yu98/YDF/N2KeWO7uZ0g3b5EyiFXFkZI8rJ+DH1/g=="], - - "@octokit/oauth-authorization-url": ["@octokit/oauth-authorization-url@6.0.2", "", {}, "sha512-CdoJukjXXxqLNK4y/VOiVzQVjibqoj/xHgInekviUJV73y/BSIcwvJ/4aNHPBPKcPWFnd4/lO9uqRV65jXhcLA=="], - - "@octokit/oauth-methods": ["@octokit/oauth-methods@4.1.0", "", { "dependencies": { "@octokit/oauth-authorization-url": "^6.0.2", "@octokit/request": "^8.3.1", "@octokit/request-error": "^5.1.0", "@octokit/types": "^13.0.0", "btoa-lite": "^1.0.0" } }, "sha512-4tuKnCRecJ6CG6gr0XcEXdZtkTDbfbnD5oaHBmLERTjTMZNi2CbfEHZxPU41xXLDG4DfKf+sonu00zvKI9NSbw=="], - - "@octokit/openapi-types": ["@octokit/openapi-types@20.0.0", "", {}, "sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA=="], - - "@octokit/plugin-paginate-graphql": ["@octokit/plugin-paginate-graphql@4.0.1", "", { "peerDependencies": { "@octokit/core": ">=5" } }, "sha512-R8ZQNmrIKKpHWC6V2gum4x9LG2qF1RxRjo27gjQcG3j+vf2tLsEfE7I/wRWEPzYMaenr1M+qDAtNcwZve1ce1A=="], - - "@octokit/plugin-paginate-rest": ["@octokit/plugin-paginate-rest@9.2.1", "", { "dependencies": { "@octokit/types": "^12.6.0" }, "peerDependencies": { "@octokit/core": "5" } }, "sha512-wfGhE/TAkXZRLjksFXuDZdmGnJQHvtU/joFQdweXUgzo1XwvBCD4o4+75NtFfjfLK5IwLf9vHTfSiU3sLRYpRw=="], - - "@octokit/plugin-rest-endpoint-methods": ["@octokit/plugin-rest-endpoint-methods@10.4.1", "", { "dependencies": { "@octokit/types": "^12.6.0" }, "peerDependencies": { "@octokit/core": "5" } }, "sha512-xV1b+ceKV9KytQe3zCVqjg+8GTGfDYwaT1ATU5isiUyVtlVAO3HNdzpS4sr4GBx4hxQ46s7ITtZrAsxG22+rVg=="], - - "@octokit/plugin-retry": ["@octokit/plugin-retry@6.0.1", "", { "dependencies": { "@octokit/request-error": "^5.0.0", "@octokit/types": "^12.0.0", "bottleneck": "^2.15.3" }, "peerDependencies": { "@octokit/core": ">=5" } }, "sha512-SKs+Tz9oj0g4p28qkZwl/topGcb0k0qPNX/i7vBKmDsjoeqnVfFUquqrE/O9oJY7+oLzdCtkiWSXLpLjvl6uog=="], - - "@octokit/plugin-throttling": ["@octokit/plugin-throttling@8.2.0", "", { "dependencies": { "@octokit/types": "^12.2.0", "bottleneck": "^2.15.3" }, "peerDependencies": { "@octokit/core": "^5.0.0" } }, "sha512-nOpWtLayKFpgqmgD0y3GqXafMFuKcA4tRPZIfu7BArd2lEZeb1988nhWhwx4aZWmjDmUfdgVf7W+Tt4AmvRmMQ=="], - - "@octokit/request": ["@octokit/request@8.4.0", "", { "dependencies": { "@octokit/endpoint": "^9.0.1", "@octokit/request-error": "^5.1.0", "@octokit/types": "^13.1.0", "universal-user-agent": "^6.0.0" } }, "sha512-9Bb014e+m2TgBeEJGEbdplMVWwPmL1FPtggHQRkV+WVsMggPtEkLKPlcVYm/o8xKLkpJ7B+6N8WfQMtDLX2Dpw=="], - - "@octokit/request-error": ["@octokit/request-error@5.1.0", "", { "dependencies": { "@octokit/types": "^13.1.0", "deprecation": "^2.0.0", "once": "^1.4.0" } }, "sha512-GETXfE05J0+7H2STzekpKObFe765O5dlAKUTLNGeH+x47z7JjXHfsHKo5z21D/o/IOZTUEI6nyWyR+bZVP/n5Q=="], + "@polka/url": ["@polka/url@1.0.0-next.25", "", {}, "sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ=="], - "@octokit/types": ["@octokit/types@12.6.0", "", { "dependencies": { "@octokit/openapi-types": "^20.0.0" } }, "sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw=="], + "@rollup/pluginutils": ["@rollup/pluginutils@5.1.4", "", { "dependencies": { "@types/estree": "^1.0.0", "estree-walker": "^2.0.2", "picomatch": "^4.0.2" }, "peerDependencies": { "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" }, "optionalPeers": ["rollup"] }, "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ=="], - "@octokit/webhooks": ["@octokit/webhooks@12.2.0", "", { "dependencies": { "@octokit/request-error": "^5.0.0", "@octokit/webhooks-methods": "^4.1.0", "@octokit/webhooks-types": "7.4.0", "aggregate-error": "^3.1.0" } }, "sha512-CyuLJ0/P7bKZ+kIYw+fnkeVdhUzNuDKgNSI7pU/m7Nod0T7kP+s4s2f0pNmG9HL8/RZN1S0ZWTDll3VTMrFLAw=="], + "@rollup/rollup-android-arm-eabi": ["@rollup/rollup-android-arm-eabi@4.52.5", "", { "os": "android", "cpu": "arm" }, "sha512-8c1vW4ocv3UOMp9K+gToY5zL2XiiVw3k7f1ksf4yO1FlDFQ1C2u72iACFnSOceJFsWskc2WZNqeRhFRPzv+wtQ=="], - "@octokit/webhooks-methods": ["@octokit/webhooks-methods@4.1.0", "", {}, "sha512-zoQyKw8h9STNPqtm28UGOYFE7O6D4Il8VJwhAtMHFt2C4L0VQT1qGKLeefUOqHNs1mNRYSadVv7x0z8U2yyeWQ=="], + "@rollup/rollup-android-arm64": ["@rollup/rollup-android-arm64@4.52.5", "", { "os": "android", "cpu": "arm64" }, "sha512-mQGfsIEFcu21mvqkEKKu2dYmtuSZOBMmAl5CFlPGLY94Vlcm+zWApK7F/eocsNzp8tKmbeBP8yXyAbx0XHsFNA=="], - "@octokit/webhooks-types": ["@octokit/webhooks-types@7.4.0", "", {}, "sha512-FE2V+QZ2UYlh+9wWd5BPLNXG+J/XUD/PPq0ovS+nCcGX4+3qVbi3jYOmCTW48hg9SBBLtInx9+o7fFt4H5iP0Q=="], + "@rollup/rollup-darwin-arm64": ["@rollup/rollup-darwin-arm64@4.52.5", "", { "os": "darwin", "cpu": "arm64" }, "sha512-takF3CR71mCAGA+v794QUZ0b6ZSrgJkArC+gUiG6LB6TQty9T0Mqh3m2ImRBOxS2IeYBo4lKWIieSvnEk2OQWA=="], - "@polka/url": ["@polka/url@1.0.0-next.25", "", {}, "sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ=="], + "@rollup/rollup-darwin-x64": ["@rollup/rollup-darwin-x64@4.52.5", "", { "os": "darwin", "cpu": "x64" }, "sha512-W901Pla8Ya95WpxDn//VF9K9u2JbocwV/v75TE0YIHNTbhqUTv9w4VuQ9MaWlNOkkEfFwkdNhXgcLqPSmHy0fA=="], - "@rollup/pluginutils": ["@rollup/pluginutils@5.1.4", "", { "dependencies": { "@types/estree": "^1.0.0", "estree-walker": "^2.0.2", "picomatch": "^4.0.2" }, "peerDependencies": { "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" }, "optionalPeers": ["rollup"] }, "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ=="], + "@rollup/rollup-freebsd-arm64": ["@rollup/rollup-freebsd-arm64@4.52.5", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-QofO7i7JycsYOWxe0GFqhLmF6l1TqBswJMvICnRUjqCx8b47MTo46W8AoeQwiokAx3zVryVnxtBMcGcnX12LvA=="], - "@rollup/rollup-android-arm-eabi": ["@rollup/rollup-android-arm-eabi@4.32.1", "", { "os": "android", "cpu": "arm" }, "sha512-/pqA4DmqyCm8u5YIDzIdlLcEmuvxb0v8fZdFhVMszSpDTgbQKdw3/mB3eMUHIbubtJ6F9j+LtmyCnHTEqIHyzA=="], + "@rollup/rollup-freebsd-x64": ["@rollup/rollup-freebsd-x64@4.52.5", "", { "os": "freebsd", "cpu": "x64" }, "sha512-jr21b/99ew8ujZubPo9skbrItHEIE50WdV86cdSoRkKtmWa+DDr6fu2c/xyRT0F/WazZpam6kk7IHBerSL7LDQ=="], - "@rollup/rollup-android-arm64": ["@rollup/rollup-android-arm64@4.32.1", "", { "os": "android", "cpu": "arm64" }, "sha512-If3PDskT77q7zgqVqYuj7WG3WC08G1kwXGVFi9Jr8nY6eHucREHkfpX79c0ACAjLj3QIWKPJR7w4i+f5EdLH5Q=="], + "@rollup/rollup-linux-arm-gnueabihf": ["@rollup/rollup-linux-arm-gnueabihf@4.52.5", "", { "os": "linux", "cpu": "arm" }, "sha512-PsNAbcyv9CcecAUagQefwX8fQn9LQ4nZkpDboBOttmyffnInRy8R8dSg6hxxl2Re5QhHBf6FYIDhIj5v982ATQ=="], - "@rollup/rollup-darwin-arm64": ["@rollup/rollup-darwin-arm64@4.32.1", "", { "os": "darwin", "cpu": "arm64" }, "sha512-zCpKHioQ9KgZToFp5Wvz6zaWbMzYQ2LJHQ+QixDKq52KKrF65ueu6Af4hLlLWHjX1Wf/0G5kSJM9PySW9IrvHA=="], + "@rollup/rollup-linux-arm-musleabihf": ["@rollup/rollup-linux-arm-musleabihf@4.52.5", "", { "os": "linux", "cpu": "arm" }, "sha512-Fw4tysRutyQc/wwkmcyoqFtJhh0u31K+Q6jYjeicsGJJ7bbEq8LwPWV/w0cnzOqR2m694/Af6hpFayLJZkG2VQ=="], - "@rollup/rollup-darwin-x64": ["@rollup/rollup-darwin-x64@4.32.1", "", { "os": "darwin", "cpu": "x64" }, "sha512-sFvF+t2+TyUo/ZQqUcifrJIgznx58oFZbdHS9TvHq3xhPVL9nOp+yZ6LKrO9GWTP+6DbFtoyLDbjTpR62Mbr3Q=="], + "@rollup/rollup-linux-arm64-gnu": ["@rollup/rollup-linux-arm64-gnu@4.52.5", "", { "os": "linux", "cpu": "arm64" }, "sha512-a+3wVnAYdQClOTlyapKmyI6BLPAFYs0JM8HRpgYZQO02rMR09ZcV9LbQB+NL6sljzG38869YqThrRnfPMCDtZg=="], - "@rollup/rollup-freebsd-arm64": ["@rollup/rollup-freebsd-arm64@4.32.1", "", { "os": "freebsd", "cpu": "arm64" }, "sha512-NbOa+7InvMWRcY9RG+B6kKIMD/FsnQPH0MWUvDlQB1iXnF/UcKSudCXZtv4lW+C276g3w5AxPbfry5rSYvyeYA=="], + "@rollup/rollup-linux-arm64-musl": ["@rollup/rollup-linux-arm64-musl@4.52.5", "", { "os": "linux", "cpu": "arm64" }, "sha512-AvttBOMwO9Pcuuf7m9PkC1PUIKsfaAJ4AYhy944qeTJgQOqJYJ9oVl2nYgY7Rk0mkbsuOpCAYSs6wLYB2Xiw0Q=="], - "@rollup/rollup-freebsd-x64": ["@rollup/rollup-freebsd-x64@4.32.1", "", { "os": "freebsd", "cpu": "x64" }, "sha512-JRBRmwvHPXR881j2xjry8HZ86wIPK2CcDw0EXchE1UgU0ubWp9nvlT7cZYKc6bkypBt745b4bglf3+xJ7hXWWw=="], + "@rollup/rollup-linux-loong64-gnu": ["@rollup/rollup-linux-loong64-gnu@4.52.5", "", { "os": "linux", "cpu": "none" }, "sha512-DkDk8pmXQV2wVrF6oq5tONK6UHLz/XcEVow4JTTerdeV1uqPeHxwcg7aFsfnSm9L+OO8WJsWotKM2JJPMWrQtA=="], - "@rollup/rollup-linux-arm-gnueabihf": ["@rollup/rollup-linux-arm-gnueabihf@4.32.1", "", { "os": "linux", "cpu": "arm" }, "sha512-PKvszb+9o/vVdUzCCjL0sKHukEQV39tD3fepXxYrHE3sTKrRdCydI7uldRLbjLmDA3TFDmh418XH19NOsDRH8g=="], + "@rollup/rollup-linux-ppc64-gnu": ["@rollup/rollup-linux-ppc64-gnu@4.52.5", "", { "os": "linux", "cpu": "ppc64" }, "sha512-W/b9ZN/U9+hPQVvlGwjzi+Wy4xdoH2I8EjaCkMvzpI7wJUs8sWJ03Rq96jRnHkSrcHTpQe8h5Tg3ZzUPGauvAw=="], - "@rollup/rollup-linux-arm-musleabihf": ["@rollup/rollup-linux-arm-musleabihf@4.32.1", "", { "os": "linux", "cpu": "arm" }, "sha512-9WHEMV6Y89eL606ReYowXuGF1Yb2vwfKWKdD1A5h+OYnPZSJvxbEjxTRKPgi7tkP2DSnW0YLab1ooy+i/FQp/Q=="], + "@rollup/rollup-linux-riscv64-gnu": ["@rollup/rollup-linux-riscv64-gnu@4.52.5", "", { "os": "linux", "cpu": "none" }, "sha512-sjQLr9BW7R/ZiXnQiWPkErNfLMkkWIoCz7YMn27HldKsADEKa5WYdobaa1hmN6slu9oWQbB6/jFpJ+P2IkVrmw=="], - "@rollup/rollup-linux-arm64-gnu": ["@rollup/rollup-linux-arm64-gnu@4.32.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-tZWc9iEt5fGJ1CL2LRPw8OttkCBDs+D8D3oEM8mH8S1ICZCtFJhD7DZ3XMGM8kpqHvhGUTvNUYVDnmkj4BDXnw=="], + "@rollup/rollup-linux-riscv64-musl": ["@rollup/rollup-linux-riscv64-musl@4.52.5", "", { "os": "linux", "cpu": "none" }, "sha512-hq3jU/kGyjXWTvAh2awn8oHroCbrPm8JqM7RUpKjalIRWWXE01CQOf/tUNWNHjmbMHg/hmNCwc/Pz3k1T/j/Lg=="], - "@rollup/rollup-linux-arm64-musl": ["@rollup/rollup-linux-arm64-musl@4.32.1", "", { "os": "linux", "cpu": "arm64" }, "sha512-FTYc2YoTWUsBz5GTTgGkRYYJ5NGJIi/rCY4oK/I8aKowx1ToXeoVVbIE4LGAjsauvlhjfl0MYacxClLld1VrOw=="], + "@rollup/rollup-linux-s390x-gnu": ["@rollup/rollup-linux-s390x-gnu@4.52.5", "", { "os": "linux", "cpu": "s390x" }, "sha512-gn8kHOrku8D4NGHMK1Y7NA7INQTRdVOntt1OCYypZPRt6skGbddska44K8iocdpxHTMMNui5oH4elPH4QOLrFQ=="], - "@rollup/rollup-linux-loongarch64-gnu": ["@rollup/rollup-linux-loongarch64-gnu@4.32.1", "", { "os": "linux", "cpu": "none" }, "sha512-F51qLdOtpS6P1zJVRzYM0v6MrBNypyPEN1GfMiz0gPu9jN8ScGaEFIZQwteSsGKg799oR5EaP7+B2jHgL+d+Kw=="], + "@rollup/rollup-linux-x64-gnu": ["@rollup/rollup-linux-x64-gnu@4.52.5", "", { "os": "linux", "cpu": "x64" }, "sha512-hXGLYpdhiNElzN770+H2nlx+jRog8TyynpTVzdlc6bndktjKWyZyiCsuDAlpd+j+W+WNqfcyAWz9HxxIGfZm1Q=="], - "@rollup/rollup-linux-powerpc64le-gnu": ["@rollup/rollup-linux-powerpc64le-gnu@4.32.1", "", { "os": "linux", "cpu": "ppc64" }, "sha512-wO0WkfSppfX4YFm5KhdCCpnpGbtgQNj/tgvYzrVYFKDpven8w2N6Gg5nB6w+wAMO3AIfSTWeTjfVe+uZ23zAlg=="], + "@rollup/rollup-linux-x64-musl": ["@rollup/rollup-linux-x64-musl@4.52.5", "", { "os": "linux", "cpu": "x64" }, "sha512-arCGIcuNKjBoKAXD+y7XomR9gY6Mw7HnFBv5Rw7wQRvwYLR7gBAgV7Mb2QTyjXfTveBNFAtPt46/36vV9STLNg=="], - "@rollup/rollup-linux-riscv64-gnu": ["@rollup/rollup-linux-riscv64-gnu@4.32.1", "", { "os": "linux", "cpu": "none" }, "sha512-iWswS9cIXfJO1MFYtI/4jjlrGb/V58oMu4dYJIKnR5UIwbkzR0PJ09O0PDZT0oJ3LYWXBSWahNf/Mjo6i1E5/g=="], + "@rollup/rollup-openharmony-arm64": ["@rollup/rollup-openharmony-arm64@4.52.5", "", { "os": "none", "cpu": "arm64" }, "sha512-QoFqB6+/9Rly/RiPjaomPLmR/13cgkIGfA40LHly9zcH1S0bN2HVFYk3a1eAyHQyjs3ZJYlXvIGtcCs5tko9Cw=="], - "@rollup/rollup-linux-s390x-gnu": ["@rollup/rollup-linux-s390x-gnu@4.32.1", "", { "os": "linux", "cpu": "s390x" }, "sha512-RKt8NI9tebzmEthMnfVgG3i/XeECkMPS+ibVZjZ6mNekpbbUmkNWuIN2yHsb/mBPyZke4nlI4YqIdFPgKuoyQQ=="], + "@rollup/rollup-win32-arm64-msvc": ["@rollup/rollup-win32-arm64-msvc@4.52.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-w0cDWVR6MlTstla1cIfOGyl8+qb93FlAVutcor14Gf5Md5ap5ySfQ7R9S/NjNaMLSFdUnKGEasmVnu3lCMqB7w=="], - "@rollup/rollup-linux-x64-gnu": ["@rollup/rollup-linux-x64-gnu@4.32.1", "", { "os": "linux", "cpu": "x64" }, "sha512-WQFLZ9c42ECqEjwg/GHHsouij3pzLXkFdz0UxHa/0OM12LzvX7DzedlY0SIEly2v18YZLRhCRoHZDxbBSWoGYg=="], + "@rollup/rollup-win32-ia32-msvc": ["@rollup/rollup-win32-ia32-msvc@4.52.5", "", { "os": "win32", "cpu": "ia32" }, "sha512-Aufdpzp7DpOTULJCuvzqcItSGDH73pF3ko/f+ckJhxQyHtp67rHw3HMNxoIdDMUITJESNE6a8uh4Lo4SLouOUg=="], - "@rollup/rollup-linux-x64-musl": ["@rollup/rollup-linux-x64-musl@4.32.1", "", { "os": "linux", "cpu": "x64" }, "sha512-BLoiyHDOWoS3uccNSADMza6V6vCNiphi94tQlVIL5de+r6r/CCQuNnerf+1g2mnk2b6edp5dk0nhdZ7aEjOBsA=="], + "@rollup/rollup-win32-x64-gnu": ["@rollup/rollup-win32-x64-gnu@4.52.5", "", { "os": "win32", "cpu": "x64" }, "sha512-UGBUGPFp1vkj6p8wCRraqNhqwX/4kNQPS57BCFc8wYh0g94iVIW33wJtQAx3G7vrjjNtRaxiMUylM0ktp/TRSQ=="], - "@rollup/rollup-win32-arm64-msvc": ["@rollup/rollup-win32-arm64-msvc@4.32.1", "", { "os": "win32", "cpu": "arm64" }, "sha512-w2l3UnlgYTNNU+Z6wOR8YdaioqfEnwPjIsJ66KxKAf0p+AuL2FHeTX6qvM+p/Ue3XPBVNyVSfCrfZiQh7vZHLQ=="], - - "@rollup/rollup-win32-ia32-msvc": ["@rollup/rollup-win32-ia32-msvc@4.32.1", "", { "os": "win32", "cpu": "ia32" }, "sha512-Am9H+TGLomPGkBnaPWie4F3x+yQ2rr4Bk2jpwy+iV+Gel9jLAu/KqT8k3X4jxFPW6Zf8OMnehyutsd+eHoq1WQ=="], - - "@rollup/rollup-win32-x64-msvc": ["@rollup/rollup-win32-x64-msvc@4.32.1", "", { "os": "win32", "cpu": "x64" }, "sha512-ar80GhdZb4DgmW3myIS9nRFYcpJRSME8iqWgzH2i44u+IdrzmiXVxeFnExQ5v4JYUSpg94bWjevMG8JHf1Da5Q=="], + "@rollup/rollup-win32-x64-msvc": ["@rollup/rollup-win32-x64-msvc@4.52.5", "", { "os": "win32", "cpu": "x64" }, "sha512-TAcgQh2sSkykPRWLrdyy2AiceMckNf5loITqXxFI5VuQjS5tSuw3WlwdN8qv8vzjLAUTvYaH/mVjSFpbkFbpTg=="], "@scure/base": ["@scure/base@1.1.7", "", {}, "sha512-PPNYBslrLNNUQ/Yad37MHYsNQtK67EhWb6WtSvNLLPo7SdVZgkUjD6Dg+5On7zNwmskf8OX7I7Nx5oN+MIWE0g=="], @@ -448,10 +367,12 @@ "@scure/bip39": ["@scure/bip39@1.3.0", "", { "dependencies": { "@noble/hashes": "~1.4.0", "@scure/base": "~1.1.6" } }, "sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ=="], - "@sinclair/typebox": ["@sinclair/typebox@0.31.28", "", {}, "sha512-/s55Jujywdw/Jpan+vsy6JZs1z2ZTGxTmbZTPiuSL2wz9mfzA2gN1zzaqmvfi4pq+uOt7Du85fkiwv5ymW84aQ=="], + "@sinclair/typebox": ["@sinclair/typebox@0.27.8", "", {}, "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA=="], "@sindresorhus/is": ["@sindresorhus/is@0.15.0", "", {}, "sha512-lu8BpxjAtRCAo5ifytTpCPCj99LF7o/2Myn+NXyNCBqvPYn7Pjd76AMmUB5l7XF1U6t0hcWrlEM5ESufW7wAeA=="], + "@standard-schema/spec": ["@standard-schema/spec@1.0.0", "", {}, "sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA=="], + "@storyblok/js": ["@storyblok/js@3.4.0", "", { "dependencies": { "@storyblok/richtext": "3.2.0", "storyblok-js-client": "6.10.11" } }, "sha512-naOamqsJREFPgM8bTVg3ycc78NBPSkDhnQMf/3G4w8qD1qN5yhInI3q2OEr0gPp3+NT8FyfLB78sOyHdNnwvsA=="], "@storyblok/region-helper": ["@storyblok/region-helper@1.1.0", "", {}, "sha512-2NU/GHeaS9vFtkZJk/mNH6E5HvrV3vT3AN/Wrl44L3lwLIfcK4E0orjgCi7gvl0N3Ul5E+y6vJAVjD3bmjSZVg=="], @@ -460,7 +381,7 @@ "@storyblok/svelte": ["@storyblok/svelte@5.0.2", "", { "dependencies": { "@storyblok/js": "3.4.0" }, "peerDependencies": { "svelte": "^5.0.0" } }, "sha512-lDr/Lq611jnkS7sXOlAbdwDyTyB+UkxtfpQoNOT2YUQZoBY2pgrZ4/l7Csd5qT5t28wxFIbNUJjKHA4K8NasXQ=="], - "@sveltejs/acorn-typescript": ["@sveltejs/acorn-typescript@1.0.5", "", { "peerDependencies": { "acorn": "^8.9.0" } }, "sha512-IwQk4yfwLdibDlrXVE04jTZYlLnwsTT2PIOQQGNLWfjavGifnk1JD1LcZjZaBTRcxZu2FfPfNLOE04DSu9lqtQ=="], + "@sveltejs/acorn-typescript": ["@sveltejs/acorn-typescript@1.0.6", "", { "peerDependencies": { "acorn": "^8.9.0" } }, "sha512-4awhxtMh4cx9blePWl10HRHj8Iivtqj+2QdDCSMDzxG+XKa9+VCNupQuCuvzEhYPzZSrX+0gC+0lHA/0fFKKQQ=="], "@sveltejs/adapter-auto": ["@sveltejs/adapter-auto@5.0.0", "", { "dependencies": { "import-meta-resolve": "^4.1.0" }, "peerDependencies": { "@sveltejs/kit": "^2.0.0" } }, "sha512-r645Oerr5E9pVX8Xk8ZkObRq/915y5HfZQjFFv4opbstvqQqHfgMhm46tR0iDDKqydZOgJCPa6RdQXh6i7G/2g=="], @@ -468,11 +389,11 @@ "@sveltejs/enhanced-img": ["@sveltejs/enhanced-img@0.6.0", "", { "dependencies": { "magic-string": "^0.30.5", "sharp": "^0.34.1", "svelte-parse-markup": "^0.1.5", "vite-imagetools": "^7.1.0", "zimmerframe": "^1.1.2" }, "peerDependencies": { "@sveltejs/vite-plugin-svelte": "^5.0.0", "svelte": "^5.0.0", "vite": ">= 5.0.0" } }, "sha512-B9rHh6zHnFex6fWxD8rkmUsMvkAG+cZiv+5/NfXyLcDvDFqUQbcADACeioVFuUxNXDXAe3y+Ui3JVmekk8R/zg=="], - "@sveltejs/kit": ["@sveltejs/kit@2.20.2", "", { "dependencies": { "@types/cookie": "^0.6.0", "cookie": "^0.6.0", "devalue": "^5.1.0", "esm-env": "^1.2.2", "import-meta-resolve": "^4.1.0", "kleur": "^4.1.5", "magic-string": "^0.30.5", "mrmime": "^2.0.0", "sade": "^1.8.1", "set-cookie-parser": "^2.6.0", "sirv": "^3.0.0" }, "peerDependencies": { "@sveltejs/vite-plugin-svelte": "^3.0.0 || ^4.0.0-next.1 || ^5.0.0", "svelte": "^4.0.0 || ^5.0.0-next.0", "vite": "^5.0.3 || ^6.0.0" }, "bin": { "svelte-kit": "svelte-kit.js" } }, "sha512-Dv8TOAZC9vyfcAB9TMsvUEJsRbklRTeNfcYBPaeH6KnABJ99i3CvCB2eNx8fiiliIqe+9GIchBg4RodRH5p1BQ=="], + "@sveltejs/kit": ["@sveltejs/kit@2.47.2", "", { "dependencies": { "@standard-schema/spec": "^1.0.0", "@sveltejs/acorn-typescript": "^1.0.5", "@types/cookie": "^0.6.0", "acorn": "^8.14.1", "cookie": "^0.6.0", "devalue": "^5.3.2", "esm-env": "^1.2.2", "kleur": "^4.1.5", "magic-string": "^0.30.5", "mrmime": "^2.0.0", "sade": "^1.8.1", "set-cookie-parser": "^2.6.0", "sirv": "^3.0.0" }, "peerDependencies": { "@opentelemetry/api": "^1.0.0", "@sveltejs/vite-plugin-svelte": "^3.0.0 || ^4.0.0-next.1 || ^5.0.0 || ^6.0.0-next.0", "svelte": "^4.0.0 || ^5.0.0-next.0", "vite": "^5.0.3 || ^6.0.0 || ^7.0.0-beta.0" }, "optionalPeers": ["@opentelemetry/api"], "bin": { "svelte-kit": "svelte-kit.js" } }, "sha512-mbUomaJTiADTrq6GT4ZvQ7v1rs0S+wXGMzrjFwjARAKMEF8FpOUmz2uEJ4M9WMJMQOXCMHpKFzJfdjo9O7M22A=="], - "@sveltejs/vite-plugin-svelte": ["@sveltejs/vite-plugin-svelte@5.0.3", "", { "dependencies": { "@sveltejs/vite-plugin-svelte-inspector": "^4.0.1", "debug": "^4.4.0", "deepmerge": "^4.3.1", "kleur": "^4.1.5", "magic-string": "^0.30.15", "vitefu": "^1.0.4" }, "peerDependencies": { "svelte": "^5.0.0", "vite": "^6.0.0" } }, "sha512-MCFS6CrQDu1yGwspm4qtli0e63vaPCehf6V7pIMP15AsWgMKrqDGCPFF/0kn4SP0ii4aySu4Pa62+fIRGFMjgw=="], + "@sveltejs/vite-plugin-svelte": ["@sveltejs/vite-plugin-svelte@6.2.1", "", { "dependencies": { "@sveltejs/vite-plugin-svelte-inspector": "^5.0.0", "debug": "^4.4.1", "deepmerge": "^4.3.1", "magic-string": "^0.30.17", "vitefu": "^1.1.1" }, "peerDependencies": { "svelte": "^5.0.0", "vite": "^6.3.0 || ^7.0.0" } }, "sha512-YZs/OSKOQAQCnJvM/P+F1URotNnYNeU3P2s4oIpzm1uFaqUEqRxUB0g5ejMjEb5Gjb9/PiBI5Ktrq4rUUF8UVQ=="], - "@sveltejs/vite-plugin-svelte-inspector": ["@sveltejs/vite-plugin-svelte-inspector@4.0.1", "", { "dependencies": { "debug": "^4.3.7" }, "peerDependencies": { "@sveltejs/vite-plugin-svelte": "^5.0.0", "svelte": "^5.0.0", "vite": "^6.0.0" } }, "sha512-J/Nmb2Q2y7mck2hyCX4ckVHcR5tu2J+MtBEQqpDrrgELZ2uvraQcK/ioCV61AqkdXFgriksOKIceDcQmqnGhVw=="], + "@sveltejs/vite-plugin-svelte-inspector": ["@sveltejs/vite-plugin-svelte-inspector@5.0.1", "", { "dependencies": { "debug": "^4.4.1" }, "peerDependencies": { "@sveltejs/vite-plugin-svelte": "^6.0.0-next.0", "svelte": "^5.0.0", "vite": "^6.3.0 || ^7.0.0" } }, "sha512-ubWshlMk4bc8mkwWbg6vNvCeT7lGQojE3ijDh3QTR6Zr/R+GXxsGbyH4PExEPpiFmqPhYiVSVmHBjUcVc1JIrA=="], "@swc/helpers": ["@swc/helpers@0.5.12", "", { "dependencies": { "tslib": "^2.4.0" } }, "sha512-KMZNXiGibsW9kvZAO1Pam2JPTDBm+KSHMMHWdsyI/1DbIZjT2A6Gy3hblVXUMEDvUAKq+e0vL0X0o54owWji7g=="], @@ -506,10 +427,6 @@ "@tailwindcss/vite": ["@tailwindcss/vite@4.0.14", "", { "dependencies": { "@tailwindcss/node": "4.0.14", "@tailwindcss/oxide": "4.0.14", "lightningcss": "1.29.2", "tailwindcss": "4.0.14" }, "peerDependencies": { "vite": "^5.2.0 || ^6" } }, "sha512-y69ztPTRFy+13EPS/7dEFVl7q2Goh1pQueVO8IfGeyqSpcx/joNJXFk0lLhMgUbF0VFJotwRSb9ZY7Xoq3r26Q=="], - "@types/aws-lambda": ["@types/aws-lambda@8.10.142", "", {}, "sha512-wy2y/2hQKrS6myOS++koXg3N1Hg+LLyPjaggCFajczSHZPqBnOMuT2sdH3kiASrmdBYyM3pmjyz5SoWraRllCQ=="], - - "@types/btoa-lite": ["@types/btoa-lite@1.0.2", "", {}, "sha512-ZYbcE2x7yrvNFJiU7xJGrpF/ihpkM7zKgw8bha3LNJSesvTtUNxbpzaT7WXBIryf6jovisrxTBvymxMeLLj1Mg=="], - "@types/bun": ["@types/bun@1.1.10", "", { "dependencies": { "bun-types": "1.1.29" } }, "sha512-76KYVSwrHwr9zsnk6oLXOGs9KvyBg3U066GLO4rk6JZk1ypEPGCUDZ5yOiESyIHWs9cx9iC8r01utYN32XdmgA=="], "@types/cookie": ["@types/cookie@0.6.0", "", {}, "sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA=="], @@ -522,12 +439,14 @@ "@types/glob": ["@types/glob@7.2.0", "", { "dependencies": { "@types/minimatch": "*", "@types/node": "*" } }, "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA=="], - "@types/json-schema": ["@types/json-schema@7.0.15", "", {}, "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA=="], + "@types/hast": ["@types/hast@3.0.5", "", { "dependencies": { "@types/unist": "*" } }, "sha512-rp/ezSWaD1m44dPKICGhiskI13nVr7qTloFwDa/IYkhhf5nzwP+zIQcIJh3WIFSBOy/H1PzB40jPjMDksN4F+g=="], - "@types/jsonwebtoken": ["@types/jsonwebtoken@9.0.6", "", { "dependencies": { "@types/node": "*" } }, "sha512-/5hndP5dCjloafCXns6SZyESp3Ldq7YjH3zwzwczYnjxIT0Fqzk5ROSYVGfFyczIue7IUEj8hkvLbPoLQ18vQw=="], + "@types/json-schema": ["@types/json-schema@7.0.15", "", {}, "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA=="], "@types/lodash": ["@types/lodash@4.17.16", "", {}, "sha512-HX7Em5NYQAXKW+1T+FiuG27NGwzJfCX3s1GjOa7ujxZa52kjJLOr4FUxT+giF6Tgxv1e+/czV/iTtBw27WTU9g=="], + "@types/mdast": ["@types/mdast@4.0.4", "", { "dependencies": { "@types/unist": "*" } }, "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA=="], + "@types/minimatch": ["@types/minimatch@5.1.2", "", {}, "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA=="], "@types/ms": ["@types/ms@0.7.34", "", {}, "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g=="], @@ -540,23 +459,29 @@ "@types/prettier": ["@types/prettier@2.7.3", "", {}, "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA=="], + "@types/unist": ["@types/unist@3.0.3", "", {}, "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q=="], + "@types/ws": ["@types/ws@8.5.12", "", { "dependencies": { "@types/node": "*" } }, "sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ=="], - "@typescript-eslint/eslint-plugin": ["@typescript-eslint/eslint-plugin@8.32.0", "", { "dependencies": { "@eslint-community/regexpp": "^4.10.0", "@typescript-eslint/scope-manager": "8.32.0", "@typescript-eslint/type-utils": "8.32.0", "@typescript-eslint/utils": "8.32.0", "@typescript-eslint/visitor-keys": "8.32.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", "ts-api-utils": "^2.1.0" }, "peerDependencies": { "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-/jU9ettcntkBFmWUzzGgsClEi2ZFiikMX5eEQsmxIAWMOn4H3D4rvHssstmAHGVvrYnaMqdWWWg0b5M6IN/MTQ=="], + "@typescript-eslint/eslint-plugin": ["@typescript-eslint/eslint-plugin@8.46.2", "", { "dependencies": { "@eslint-community/regexpp": "^4.10.0", "@typescript-eslint/scope-manager": "8.46.2", "@typescript-eslint/type-utils": "8.46.2", "@typescript-eslint/utils": "8.46.2", "@typescript-eslint/visitor-keys": "8.46.2", "graphemer": "^1.4.0", "ignore": "^7.0.0", "natural-compare": "^1.4.0", "ts-api-utils": "^2.1.0" }, "peerDependencies": { "@typescript-eslint/parser": "^8.46.2", "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-ZGBMToy857/NIPaaCucIUQgqueOiq7HeAKkhlvqVV4lm089zUFW6ikRySx2v+cAhKeUCPuWVHeimyk6Dw1iY3w=="], + + "@typescript-eslint/parser": ["@typescript-eslint/parser@8.46.2", "", { "dependencies": { "@typescript-eslint/scope-manager": "8.46.2", "@typescript-eslint/types": "8.46.2", "@typescript-eslint/typescript-estree": "8.46.2", "@typescript-eslint/visitor-keys": "8.46.2", "debug": "^4.3.4" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-BnOroVl1SgrPLywqxyqdJ4l3S2MsKVLDVxZvjI1Eoe8ev2r3kGDo+PcMihNmDE+6/KjkTubSJnmqGZZjQSBq/g=="], - "@typescript-eslint/parser": ["@typescript-eslint/parser@8.32.0", "", { "dependencies": { "@typescript-eslint/scope-manager": "8.32.0", "@typescript-eslint/types": "8.32.0", "@typescript-eslint/typescript-estree": "8.32.0", "@typescript-eslint/visitor-keys": "8.32.0", "debug": "^4.3.4" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-B2MdzyWxCE2+SqiZHAjPphft+/2x2FlO9YBx7eKE1BCb+rqBlQdhtAEhzIEdozHd55DXPmxBdpMygFJjfjjA9A=="], + "@typescript-eslint/project-service": ["@typescript-eslint/project-service@8.46.2", "", { "dependencies": { "@typescript-eslint/tsconfig-utils": "^8.46.2", "@typescript-eslint/types": "^8.46.2", "debug": "^4.3.4" }, "peerDependencies": { "typescript": ">=4.8.4 <6.0.0" } }, "sha512-PULOLZ9iqwI7hXcmL4fVfIsBi6AN9YxRc0frbvmg8f+4hQAjQ5GYNKK0DIArNo+rOKmR/iBYwkpBmnIwin4wBg=="], - "@typescript-eslint/scope-manager": ["@typescript-eslint/scope-manager@8.32.0", "", { "dependencies": { "@typescript-eslint/types": "8.32.0", "@typescript-eslint/visitor-keys": "8.32.0" } }, "sha512-jc/4IxGNedXkmG4mx4nJTILb6TMjL66D41vyeaPWvDUmeYQzF3lKtN15WsAeTr65ce4mPxwopPSo1yUUAWw0hQ=="], + "@typescript-eslint/scope-manager": ["@typescript-eslint/scope-manager@8.46.2", "", { "dependencies": { "@typescript-eslint/types": "8.46.2", "@typescript-eslint/visitor-keys": "8.46.2" } }, "sha512-LF4b/NmGvdWEHD2H4MsHD8ny6JpiVNDzrSZr3CsckEgCbAGZbYM4Cqxvi9L+WqDMT+51Ozy7lt2M+d0JLEuBqA=="], - "@typescript-eslint/type-utils": ["@typescript-eslint/type-utils@8.32.0", "", { "dependencies": { "@typescript-eslint/typescript-estree": "8.32.0", "@typescript-eslint/utils": "8.32.0", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-t2vouuYQKEKSLtJaa5bB4jHeha2HJczQ6E5IXPDPgIty9EqcJxpr1QHQ86YyIPwDwxvUmLfP2YADQ5ZY4qddZg=="], + "@typescript-eslint/tsconfig-utils": ["@typescript-eslint/tsconfig-utils@8.46.2", "", { "peerDependencies": { "typescript": ">=4.8.4 <6.0.0" } }, "sha512-a7QH6fw4S57+F5y2FIxxSDyi5M4UfGF+Jl1bCGd7+L4KsaUY80GsiF/t0UoRFDHAguKlBaACWJRmdrc6Xfkkag=="], - "@typescript-eslint/types": ["@typescript-eslint/types@8.32.0", "", {}, "sha512-O5Id6tGadAZEMThM6L9HmVf5hQUXNSxLVKeGJYWNhhVseps/0LddMkp7//VDkzwJ69lPL0UmZdcZwggj9akJaA=="], + "@typescript-eslint/type-utils": ["@typescript-eslint/type-utils@8.46.2", "", { "dependencies": { "@typescript-eslint/types": "8.46.2", "@typescript-eslint/typescript-estree": "8.46.2", "@typescript-eslint/utils": "8.46.2", "debug": "^4.3.4", "ts-api-utils": "^2.1.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-HbPM4LbaAAt/DjxXaG9yiS9brOOz6fabal4uvUmaUYe6l3K1phQDMQKBRUrr06BQkxkvIZVVHttqiybM9nJsLA=="], - "@typescript-eslint/typescript-estree": ["@typescript-eslint/typescript-estree@8.32.0", "", { "dependencies": { "@typescript-eslint/types": "8.32.0", "@typescript-eslint/visitor-keys": "8.32.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", "ts-api-utils": "^2.1.0" }, "peerDependencies": { "typescript": ">=4.8.4 <5.9.0" } }, "sha512-pU9VD7anSCOIoBFnhTGfOzlVFQIA1XXiQpH/CezqOBaDppRwTglJzCC6fUQGpfwey4T183NKhF1/mfatYmjRqQ=="], + "@typescript-eslint/types": ["@typescript-eslint/types@8.46.2", "", {}, "sha512-lNCWCbq7rpg7qDsQrd3D6NyWYu+gkTENkG5IKYhUIcxSb59SQC/hEQ+MrG4sTgBVghTonNWq42bA/d4yYumldQ=="], - "@typescript-eslint/utils": ["@typescript-eslint/utils@8.32.0", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", "@typescript-eslint/scope-manager": "8.32.0", "@typescript-eslint/types": "8.32.0", "@typescript-eslint/typescript-estree": "8.32.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-8S9hXau6nQ/sYVtC3D6ISIDoJzS1NsCK+gluVhLN2YkBPX+/1wkwyUiDKnxRh15579WoOIyVWnoyIf3yGI9REw=="], + "@typescript-eslint/typescript-estree": ["@typescript-eslint/typescript-estree@8.46.2", "", { "dependencies": { "@typescript-eslint/project-service": "8.46.2", "@typescript-eslint/tsconfig-utils": "8.46.2", "@typescript-eslint/types": "8.46.2", "@typescript-eslint/visitor-keys": "8.46.2", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", "ts-api-utils": "^2.1.0" }, "peerDependencies": { "typescript": ">=4.8.4 <6.0.0" } }, "sha512-f7rW7LJ2b7Uh2EiQ+7sza6RDZnajbNbemn54Ob6fRwQbgcIn+GWfyuHDHRYgRoZu1P4AayVScrRW+YfbTvPQoQ=="], - "@typescript-eslint/visitor-keys": ["@typescript-eslint/visitor-keys@8.32.0", "", { "dependencies": { "@typescript-eslint/types": "8.32.0", "eslint-visitor-keys": "^4.2.0" } }, "sha512-1rYQTCLFFzOI5Nl0c8LUpJT8HxpwVRn9E4CkMsYfuN6ctmQqExjSTzzSk0Tz2apmXy7WU6/6fyaZVVA/thPN+w=="], + "@typescript-eslint/utils": ["@typescript-eslint/utils@8.46.2", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.7.0", "@typescript-eslint/scope-manager": "8.46.2", "@typescript-eslint/types": "8.46.2", "@typescript-eslint/typescript-estree": "8.46.2" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-sExxzucx0Tud5tE0XqR0lT0psBQvEpnpiul9XbGUB1QwpWJJAps1O/Z7hJxLGiZLBKMCutjTzDgmd1muEhBnVg=="], + + "@typescript-eslint/visitor-keys": ["@typescript-eslint/visitor-keys@8.46.2", "", { "dependencies": { "@typescript-eslint/types": "8.46.2", "eslint-visitor-keys": "^4.2.1" } }, "sha512-tUFMXI4gxzzMXt4xpGJEsBsTox0XbNQ1y94EwlD/CuZwFcQP79xfQqMhau9HsRc/J0cAPA/HZt1dZPtGn9V/7w=="], "@ungap/structured-clone": ["@ungap/structured-clone@1.3.0", "", {}, "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g=="], @@ -574,28 +499,32 @@ "@wharfkit/hyperion": ["@wharfkit/hyperion@1.0.4", "", { "dependencies": { "@wharfkit/antelope": "^1.0.0", "tslib": "^2.0.3" } }, "sha512-sFeB6UumVCVZTbw6V41jgBopU7j4MpzHnUiZOvkUa00FoJhjcgpdD3Z12+LhtKzowqcvJ2KpREn0hwfNgUc4OQ=="], - "@wharfkit/protocol-esr": ["@wharfkit/protocol-esr@1.5.0", "", { "dependencies": { "@greymass/buoy": "^1.0.3", "@wharfkit/antelope": "^1.1.0", "@wharfkit/sealed-messages": "^1.1.0", "isomorphic-ws": "^5.0.0", "ws": "^8.13.0" }, "peerDependencies": { "@wharfkit/session": "^1.2.7" } }, "sha512-YNcs5rK151uOuI3Gvy7jiJ4JOPx0Mu8zGiDP/KI7JhI19+yiPPUjz5+59jrCwPv5IIl23BZGUDiYA7qergbbVA=="], + "@wharfkit/msigs": ["@wharfkit/msigs@0.3.1", "", { "dependencies": { "@wharfkit/antelope": "^1.0.0", "tslib": "^2.0.3" } }, "sha512-32g8Mr2DVDphhQl1SVKEiv1zSgwi2k0/RZVHsNgNMYeyWz0+cULADZpt++wsm7MXVoOK7kb6nup+OLqWIhPnog=="], + + "@wharfkit/protocol-esr": ["@wharfkit/protocol-esr@1.6.1", "", { "dependencies": { "@greymass/buoy": "^1.0.3", "@wharfkit/antelope": "^1.1.0", "@wharfkit/sealed-messages": "^1.2.0", "isomorphic-ws": "^5.0.0", "ws": "^8.13.0" }, "peerDependencies": { "@wharfkit/session": "^1.2.7" } }, "sha512-m6B28f56Jh+CEB/MI6VkdR+3sMihsdbQULCM5wg17DsorNBXbpwVGsAzJonmLrymhbp8sUDUkXlq0yWqoX7tuQ=="], "@wharfkit/protocol-scatter": ["@wharfkit/protocol-scatter@1.4.2", "", { "dependencies": { "eosjs": "20.0.0", "scatter-ts": "^0.1.9", "tslib": "^2.1.0" }, "peerDependencies": { "@wharfkit/session": "^1.6.1" } }, "sha512-YV2GKICyzk6fMx4MxsS1fxvv8ytsnn/vDGkaLYDjscuLyGth8xt/yuFprHTED4f6i/kCTbJVOnnGtjpylnaoVA=="], - "@wharfkit/resources": ["@wharfkit/resources@1.3.1", "", { "dependencies": { "@wharfkit/antelope": "^1.0.0", "bn.js": "^4.11.9", "js-big-decimal": "^2.0.7", "tslib": "^2.1.0" } }, "sha512-XgL/yiwcJia8chYySt2dBOxa4BRKPqMeNxaZFvvzLgBI3s7m6MUXlXpZSeBvaQH+dr9D9nlBbmgP7PCBrJITIg=="], + "@wharfkit/resources": ["@wharfkit/resources@1.5.0", "", { "dependencies": { "@wharfkit/antelope": "^1.1.0", "bn.js": "^4.11.9", "js-big-decimal": "^2.0.7", "tslib": "^2.1.0" } }, "sha512-wcfww9UOc03JlIrLMIxbHSlrDnGtPRuzOCJtp7i4xEUyJbbWBQLEUStPuR2GsxGbRa2pxKdo8Z1pfyS6AI/gRQ=="], - "@wharfkit/roborovski": ["@wharfkit/roborovski@1.1.0", "", { "dependencies": { "@wharfkit/antelope": "^1.0.0", "tslib": "^2.0.3" } }, "sha512-UPZgkW+fLKcXlI4sNA8vzS/qTQoAZiFudnXhQScNHNalGTKTy3c5WEN4RPicbwcmGNUO3JVXMtKgwgrqRrUaVA=="], + "@wharfkit/roborovski": ["@wharfkit/roborovski@2.0.0-rc5", "", { "dependencies": { "@wharfkit/antelope": "^1.0.0", "tslib": "^2.0.3" } }, "sha512-axuYtO6A2AFmpvGaHlmhx304zJtiQYArhf46652ZUxDWP7BDXa11MhhY4prlNjTPfnv6/jILIIunUhM1PyyMzA=="], - "@wharfkit/sealed-messages": ["@wharfkit/sealed-messages@1.1.0", "", { "dependencies": { "@wharfkit/antelope": "^1.1.0" } }, "sha512-UuN5I4+DOH0mM8fVp4aojKqNPt9KptK4J37YJr6i+f4jTELTt4wsrikq2bZSkzIf6RbLe462f/QYtRqygl6CYg=="], + "@wharfkit/sealed-messages": ["@wharfkit/sealed-messages@1.2.0", "", { "dependencies": { "@greymass/miniaes": "^1.0.0", "@wharfkit/antelope": "^1.1.0" } }, "sha512-AnJJY1U6gOLyhcw7HTJUb0t6uSb/cO3FACuOMnKBmKtp8AFrhEDntwgm5yF8kBh/eoreLDvILlAPANOsig8JGA=="], "@wharfkit/session": ["@wharfkit/session@1.7.1-beta1", "", { "dependencies": { "@wharfkit/abicache": "^1.2.1", "@wharfkit/antelope": "^1.0.11", "@wharfkit/common": "^1.2.0", "@wharfkit/signing-request": "^3.1.0", "pako": "^2.0.4", "tslib": "^2.1.0" } }, "sha512-ml28SLaLLR49veO1Lsl+A6Yp6Rkb5NzKZfVJqFqp1WYSG7SpoMbnw8ys7KMMzXp7FAnLP1ly5LkJUf4Q7ZcvrA=="], "@wharfkit/signing-request": ["@wharfkit/signing-request@3.2.0", "", { "dependencies": { "@wharfkit/antelope": "^1.0.7", "tslib": "^2.0.3" } }, "sha512-rIMzqwAKA5vb09+1BI+9fUXbj73JIkYcD1XT/Tom+k/+bqi51JcmC0trjCOjTUOK9UYDabpxYFixrf1ZvQymKw=="], - "@wharfkit/transact-plugin-resource-provider": ["@wharfkit/transact-plugin-resource-provider@1.1.3", "", { "dependencies": { "tslib": "^2.1.0" }, "peerDependencies": { "@wharfkit/session": "^1.7.0" } }, "sha512-g2J6TO/+uwWL96rnIHL76+7R4xwVyLGjSJYCPbIXFdHZhridYSd7ZWpzrLfeil0o1utnnHqnjsNTxlVbad0XWw=="], + "@wharfkit/transact-plugin-resource-provider": ["@wharfkit/transact-plugin-resource-provider@2.0.0", "", { "dependencies": { "@wharfkit/resources": "^1.0.0", "tslib": "^2.1.0" }, "peerDependencies": { "@wharfkit/session": "^1.7.0" } }, "sha512-1j+TNtPk7k1QnltMClzwiBcKIjOFYZb65RFVo0fsSdiEWzud7Lk9GnzDueRZat3tulN+P533JReQ1EgbLvS5Ow=="], - "@wharfkit/wallet-plugin-anchor": ["@wharfkit/wallet-plugin-anchor@1.6.0", "", { "dependencies": { "@wharfkit/antelope": "^1.0.5", "@wharfkit/protocol-esr": "^1.5.0", "isomorphic-ws": "^5.0.0", "ws": "^8.13.0" }, "peerDependencies": { "@wharfkit/session": "^1.2.7" } }, "sha512-FAhJs9JOA+Ts4lmAgA+XAy8hHlHD/PwucS+EZzP3KjMkGJS7EaLLJbfPBgZ5dbcUusPMTt1WGP9eqlz+FmwJqA=="], + "@wharfkit/wallet-plugin-anchor": ["@wharfkit/wallet-plugin-anchor@1.7.2", "", { "dependencies": { "@greymass/buoy": "^1.0.3", "@wharfkit/antelope": "^1.0.5", "@wharfkit/protocol-esr": "^1.6.1", "isomorphic-ws": "^5.0.0", "ws": "^8.13.0" }, "peerDependencies": { "@wharfkit/session": "^1.2.7" } }, "sha512-oBjBHZTserMpgjJvT12r2crkCDhW717MqhmmWnPvV7fl5O9oEPaV5FB1faDF/t3M++LNNjsmQLIDBItwuRypoQ=="], "@wharfkit/wallet-plugin-cleos": ["@wharfkit/wallet-plugin-cleos@1.2.0", "", { "dependencies": { "tslib": "^2.1.0" }, "peerDependencies": { "@wharfkit/session": "^1.3.1" } }, "sha512-lO1AjLfyzRaj2kZc7vAoRhXWwsltNsW3j8uV9EDWmrpBuHYbq+odgQLgTZFenvxfUjsrnvCP1RHFyubDpo1QQg=="], "@wharfkit/wallet-plugin-cloudwallet": ["@wharfkit/wallet-plugin-cloudwallet@1.4.0", "", { "dependencies": { "tslib": "^2.1.0" }, "peerDependencies": { "@wharfkit/session": "^1.2.7" } }, "sha512-U3iF3iSOcedD5bzKt5aHDjDyDQJM/q1fTiL17YRvIJSkKNx//f+6mf7dj0zkdkC8/z9mrnQ6NN6EHmsXNNdKqg=="], + "@wharfkit/wallet-plugin-gatewallet": ["@wharfkit/wallet-plugin-gatewallet@1.1.0", "", { "dependencies": { "tslib": "^2.1.0" }, "peerDependencies": { "@wharfkit/session": "^1.7.0" } }, "sha512-NoY6uVQII2xd1/S1jsdCpbHRENK9sfptDDUfuVk+Ogqlt/bpW8juOfBw07+gKCgToHoxCAKsZ57SeY1W8CIBlQ=="], + "@wharfkit/wallet-plugin-imtoken": ["@wharfkit/wallet-plugin-imtoken@1.1.0", "", { "dependencies": { "tslib": "^2.1.0" }, "peerDependencies": { "@wharfkit/session": "^1.1.0" } }, "sha512-zb4VQ0PNpbIG2WBYZBSJXvM0Nk2m3Xtc6DWCMk7MCtDlbWlXdc8KuOEMkN2LUlV0rU+LNJxdOTddBwgvjViSog=="], "@wharfkit/wallet-plugin-metamask": ["@wharfkit/wallet-plugin-metamask@1.2.1", "", { "dependencies": { "@metamask/providers": "^17.0.0", "tslib": "^2.1.0" }, "peerDependencies": { "@wharfkit/session": "^1.4.0" } }, "sha512-zu+sX37GNEboiDGtKa5rpaQQRPkbug9v0v3+ddAB/zoXqw0VF353/5tMEJcFCI5M7U98PUFA5/XJFVHL6zRQ/g=="], @@ -606,22 +535,22 @@ "@wharfkit/wallet-plugin-tokenpocket": ["@wharfkit/wallet-plugin-tokenpocket@1.6.3", "", { "dependencies": { "@wharfkit/protocol-scatter": "^1.4.2", "tslib": "^2.1.0" }, "peerDependencies": { "@wharfkit/session": "^1.4.0" } }, "sha512-c6+qXvEaIY+lxZCtoAB31IUpDLRTZGBUrPWM+eoVpapyNNqnsArt25yOBg8koM6sqkebccalthL+nX1IynKycQ=="], - "@wharfkit/wallet-plugin-web-authenticator": ["@wharfkit/wallet-plugin-web-authenticator@0.4.0", "", { "dependencies": { "@greymass/buoy": "^1.0.4", "@wharfkit/protocol-esr": "^1.5.0", "@wharfkit/sealed-messages": "^1.0.0", "isomorphic-ws": "^5.0.0", "tslib": "^2.1.0" }, "peerDependencies": { "@wharfkit/session": "next" } }, "sha512-O6AQjIvM9bBei0s4TyLgf4LpD8NbZXT7GMDLOiBpkEbl1S4YMOFZv8+oKn7hCo7K23ThTnb1yb5KYzsfQsHC1Q=="], - "@wharfkit/wallet-plugin-wombat": ["@wharfkit/wallet-plugin-wombat@1.5.1", "", { "dependencies": { "tslib": "^2.1.0" }, "peerDependencies": { "@wharfkit/protocol-scatter": "^1.3.1", "@wharfkit/session": "^1.4.0" } }, "sha512-zQFBv9Nc/+N2yWLNg35BByA+4mtuU/XcSbQ8UmDcPR8MUQmhn9cRCSUK8y0anDLgZniqIDcML+lgda3MXK+5/w=="], - "@wharfkit/web-renderer": ["@wharfkit/web-renderer@1.4.1", "", { "peerDependencies": { "@wharfkit/session": "^1.4.0" } }, "sha512-ky/keS0rHxJcdIWLo7d9H6eo+rK0l2mQj/3xOCwVaDKBAd/dTQwuqYIzOYMC9azdyMglgNcTRgYWm5PJrU4lIA=="], + "@wharfkit/web-ui": ["@wharfkit/web-ui@0.2.1", "", { "peerDependencies": { "@wharfkit/common": "^1.5.0", "@wharfkit/session": "^1.8.0-rc1" } }, "sha512-3qp+E9oEg6SbuIX0dqt7jxzlMZzr9CtM60Jnu2hx9gemhTLfJqE+XkjSEUHRjDduYNvUVB7wF0ojQWCq7kVIJg=="], + + "@wuchale/svelte": ["@wuchale/svelte@0.16.6", "", { "dependencies": { "svelte": "^5.37.0", "wuchale": "^0.17.5" } }, "sha512-1Syz9Ct7YbjWP1S4wQcXlycyJu/TYQM/1yvXGKxvBG+aPn7Zynp0HsACh3qsudO8bMRAZZv2cG7ofVCIM/E6tg=="], + + "@wuchale/vite-plugin": ["@wuchale/vite-plugin@0.14.8", "", { "dependencies": { "wuchale": "^0.17.0" } }, "sha512-rPTW3wxvJ70AJcF5qE5OatMWn8UJuRRU66o823nmOrEn8e68j3jcikDz/gNoeQH6TI+XrQIJ3t2dPAqezZltMg=="], "accepts": ["accepts@2.0.0", "", { "dependencies": { "mime-types": "^3.0.0", "negotiator": "^1.0.0" } }, "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng=="], - "acorn": ["acorn@8.14.1", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg=="], + "acorn": ["acorn@8.15.0", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg=="], "acorn-jsx": ["acorn-jsx@5.3.2", "", { "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ=="], "acorn-walk": ["acorn-walk@8.3.3", "", { "dependencies": { "acorn": "^8.11.0" } }, "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw=="], - "aggregate-error": ["aggregate-error@3.1.0", "", { "dependencies": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" } }, "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA=="], - "ajv": ["ajv@6.12.6", "", { "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" } }, "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g=="], "ansi-align": ["ansi-align@3.0.1", "", { "dependencies": { "string-width": "^4.1.0" } }, "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w=="], @@ -640,14 +569,10 @@ "aria-query": ["aria-query@5.3.2", "", {}, "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw=="], - "array-timsort": ["array-timsort@1.0.3", "", {}, "sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ=="], - "as-table": ["as-table@1.0.55", "", { "dependencies": { "printable-characters": "^1.0.42" } }, "sha512-xvsWESUJn0JN421Xb9MQw6AsMHRCUknCe0Wjlxvjud80mU4E6hQf1A6NzQKcYNmYw62MfzEtXc+badstZP3JpQ=="], "async-limiter": ["async-limiter@1.0.1", "", {}, "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ=="], - "async-lock": ["async-lock@1.4.1", "", {}, "sha512-Az2ZTpuytrtqENulXwO3GGv1Bztugx6TT37NIo7imr/Qo0gsYiGtSdBa2B6fsXhTpVZDNfu1Qn3pk531e3q+nQ=="], - "asynckit": ["asynckit@0.4.0", "", {}, "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="], "at-least-node": ["at-least-node@1.0.0", "", {}, "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg=="], @@ -660,14 +585,14 @@ "babel-runtime": ["babel-runtime@6.26.0", "", { "dependencies": { "core-js": "^2.4.0", "regenerator-runtime": "^0.11.0" } }, "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g=="], + "bail": ["bail@2.0.2", "", {}, "sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw=="], + "balanced-match": ["balanced-match@1.0.2", "", {}, "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="], "base-x": ["base-x@3.0.10", "", { "dependencies": { "safe-buffer": "^5.0.1" } }, "sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ=="], "base64-js": ["base64-js@1.5.1", "", {}, "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA=="], - "before-after-hook": ["before-after-hook@2.2.3", "", {}, "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ=="], - "big.js": ["big.js@7.0.1", "", {}, "sha512-iFgV784tD8kq4ccF1xtNMZnXeZzVuXWWM+ERFzKQjv+A5G9HC8CY3DuV45vgzFFcW+u2tIvmF95+AzWgs6BjCg=="], "bigi": ["bigi@1.4.2", "", {}, "sha512-ddkU+dFIuEIW8lE7ZwdIAf2UPoM90eaprg5m3YXAVVTmKlqV/9BX4A2M8BOK2yOq6/VgZFVhK6QAxJebhlbhzw=="], @@ -680,8 +605,6 @@ "body-parser": ["body-parser@2.2.0", "", { "dependencies": { "bytes": "^3.1.2", "content-type": "^1.0.5", "debug": "^4.4.0", "http-errors": "^2.0.0", "iconv-lite": "^0.6.3", "on-finished": "^2.4.1", "qs": "^6.14.0", "raw-body": "^3.0.0", "type-is": "^2.0.0" } }, "sha512-02qvAaxv8tp7fBa/mw1ga98OGm+eCbqzJOKoRt70sLmfEEi+jyBYVTDGfCL/k06/4EMk/z01gCe7HoCH/f2LTg=="], - "bottleneck": ["bottleneck@2.19.5", "", {}, "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw=="], - "boxen": ["boxen@5.1.2", "", { "dependencies": { "ansi-align": "^3.0.0", "camelcase": "^6.2.0", "chalk": "^4.1.0", "cli-boxes": "^2.2.1", "string-width": "^4.2.2", "type-fest": "^0.20.2", "widest-line": "^3.1.0", "wrap-ansi": "^7.0.0" } }, "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ=="], "brace-expansion": ["brace-expansion@1.1.11", "", { "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA=="], @@ -694,12 +617,8 @@ "bs58": ["bs58@4.0.1", "", { "dependencies": { "base-x": "^3.0.2" } }, "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw=="], - "btoa-lite": ["btoa-lite@1.0.0", "", {}, "sha512-gvW7InbIyF8AicrqWoptdW08pUxuhq8BEgowNajy9RhiE86fmGAGl+bLKo6oB8QP0CkqHLowfN0oJdKC/J6LbA=="], - "buffer": ["buffer@6.0.3", "", { "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.2.1" } }, "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA=="], - "buffer-equal-constant-time": ["buffer-equal-constant-time@1.0.1", "", {}, "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA=="], - "buffer-xor": ["buffer-xor@1.0.3", "", {}, "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ=="], "bufferutil": ["bufferutil@4.0.9", "", { "dependencies": { "node-gyp-build": "^4.3.0" } }, "sha512-WDtdLmJvAuNNPzByAYpRo2rF1Mmradw6gvWsQKf63476DDXmomT9zUiGypLcG4ibIM67vhAj8jJRdbmEws2Aqw=="], @@ -724,8 +643,12 @@ "capnp-ts": ["capnp-ts@0.7.0", "", { "dependencies": { "debug": "^4.3.1", "tslib": "^2.2.0" } }, "sha512-XKxXAC3HVPv7r674zP0VC3RTXz+/JKhfyw94ljvF80yynK6VkTnqE3jMuN8b3dUVmmc43TjyxjW4KTsmB3c86g=="], + "ccount": ["ccount@2.0.1", "", {}, "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg=="], + "chalk": ["chalk@4.1.2", "", { "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" } }, "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="], + "character-entities": ["character-entities@2.0.2", "", {}, "sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ=="], + "chardet": ["chardet@0.7.0", "", {}, "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA=="], "chart.js": ["chart.js@4.4.4", "", { "dependencies": { "@kurkle/color": "^0.3.0" } }, "sha512-emICKGBABnxhMjUjlYRR12PmOXhJ2eJjEHL2/dZlWjxRAZT1D8xplLFq5M0tMQK8ja+wBS/tuVEJB5C6r7VxJA=="], @@ -736,10 +659,6 @@ "cipher-base": ["cipher-base@1.0.4", "", { "dependencies": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" } }, "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q=="], - "clean-git-ref": ["clean-git-ref@2.0.1", "", {}, "sha512-bLSptAy2P0s6hU4PzuIMKmMJJSE6gLXGH1cntDu7bWJUksvuM+7ReOK61mozULErYvP6a15rnYl0zFDef+pyPw=="], - - "clean-stack": ["clean-stack@2.2.0", "", {}, "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A=="], - "clear": ["clear@0.1.0", "", {}, "sha512-qMjRnoL+JDPJHeLePZJuao6+8orzHMGP04A8CdwCNsKhRbOnKRjefxONR7bwILT3MHecxKBjHkKL/tkZ8r4Uzw=="], "cli-boxes": ["cli-boxes@2.2.1", "", {}, "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw=="], @@ -766,8 +685,6 @@ "commander": ["commander@11.1.0", "", {}, "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ=="], - "comment-json": ["comment-json@4.2.5", "", { "dependencies": { "array-timsort": "^1.0.3", "core-util-is": "^1.0.3", "esprima": "^4.0.1", "has-own-prop": "^2.0.0", "repeat-string": "^1.6.1" } }, "sha512-bKw/r35jR3HGt5PEPm1ljsQQGyCrR8sFGNiN5L+ykDHdpO8Smxkrkla9Yi6NkQyUrb8V54PGhfMs6NrIwtxtdw=="], - "concat-map": ["concat-map@0.0.1", "", {}, "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="], "configstore": ["configstore@5.0.1", "", { "dependencies": { "dot-prop": "^5.2.0", "graceful-fs": "^4.1.2", "make-dir": "^3.0.0", "unique-string": "^2.0.0", "write-file-atomic": "^3.0.0", "xdg-basedir": "^4.0.0" } }, "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA=="], @@ -784,8 +701,6 @@ "core-js": ["core-js@2.6.12", "", {}, "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ=="], - "core-util-is": ["core-util-is@1.0.3", "", {}, "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ=="], - "cors": ["cors@2.8.5", "", { "dependencies": { "object-assign": "^4", "vary": "^1" } }, "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g=="], "crc-32": ["crc-32@1.2.2", "", { "bin": { "crc32": "bin/crc32.njs" } }, "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ=="], @@ -800,8 +715,6 @@ "cssesc": ["cssesc@3.0.0", "", { "bin": { "cssesc": "bin/cssesc" } }, "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg=="], - "csstype": ["csstype@3.1.3", "", {}, "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="], - "d": ["d@1.0.2", "", { "dependencies": { "es5-ext": "^0.10.64", "type": "^2.7.2" } }, "sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw=="], "data-uri-to-buffer": ["data-uri-to-buffer@2.0.2", "", {}, "sha512-ND9qDTLc6diwj+Xe5cdAgVTbLVdXbtxTJRXRhli8Mowuaan+0EJOtdqJ0QCHNSSPyoXGx9HX2/VMnKeC34AChA=="], @@ -810,11 +723,11 @@ "dayjs": ["dayjs@1.11.13", "", {}, "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg=="], - "debug": ["debug@4.4.0", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA=="], + "debug": ["debug@4.4.3", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="], - "decompress-response": ["decompress-response@3.3.0", "", { "dependencies": { "mimic-response": "^1.0.0" } }, "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA=="], + "decode-named-character-reference": ["decode-named-character-reference@1.3.0", "", { "dependencies": { "character-entities": "^2.0.0" } }, "sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q=="], - "dedent": ["dedent@1.5.1", "", { "peerDependencies": { "babel-plugin-macros": "^3.1.0" }, "optionalPeers": ["babel-plugin-macros"] }, "sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg=="], + "decompress-response": ["decompress-response@3.3.0", "", { "dependencies": { "mimic-response": "^1.0.0" } }, "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA=="], "dedent-js": ["dedent-js@1.0.1", "", {}, "sha512-OUepMozQULMLUmhxS95Vudo0jb0UchLimi3+pQ2plj61Fcy8axbP9hbiD4Sz6DPqn6XG3kfmziVfQ1rSys5AJQ=="], @@ -824,8 +737,6 @@ "deepmerge": ["deepmerge@4.3.1", "", {}, "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A=="], - "deepmerge-ts": ["deepmerge-ts@5.1.0", "", {}, "sha512-eS8dRJOckyo9maw9Tu5O5RUi/4inFLrnoLkBe3cPfDMx3WZioXtmOew4TXQaxq7Rhl4xjDtR7c6x8nNTxOvbFw=="], - "defer-to-connect": ["defer-to-connect@1.1.3", "", {}, "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ=="], "defu": ["defu@6.1.4", "", {}, "sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg=="], @@ -834,15 +745,15 @@ "depd": ["depd@2.0.0", "", {}, "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw=="], - "deprecation": ["deprecation@2.3.1", "", {}, "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ=="], - "dequal": ["dequal@2.0.3", "", {}, "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA=="], "detect-browser": ["detect-browser@5.3.0", "", {}, "sha512-53rsFbGdwMwlF7qvCt0ypLM5V5/Mbl0szB7GPN8y9NCcbknYOeVVXdrXEq+90IwAfrrzt6Hd+u2E2ntakICU8w=="], "detect-libc": ["detect-libc@2.0.4", "", {}, "sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA=="], - "devalue": ["devalue@4.3.3", "", {}, "sha512-UH8EL6H2ifcY8TbD2QsxwCC/pr5xSwPvv85LrLXVihmHVC3T3YqTCIwnR5ak0yO1KYqlxrPVOA/JVZJYPy2ATg=="], + "devalue": ["devalue@5.4.1", "", {}, "sha512-YtoaOfsqjbZQKGIMRYDWKjUmSB4VJ/RElB+bXZawQAQYAo4xu08GKTMVlsZDTF6R2MbAgjcAQRPI5eIyRAT2OQ=="], + + "devlop": ["devlop@1.1.0", "", { "dependencies": { "dequal": "^2.0.0" } }, "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA=="], "diff-sequences": ["diff-sequences@29.6.3", "", {}, "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q=="], @@ -856,8 +767,6 @@ "duplexer3": ["duplexer3@0.1.5", "", {}, "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA=="], - "ecdsa-sig-formatter": ["ecdsa-sig-formatter@1.0.11", "", { "dependencies": { "safe-buffer": "^5.0.1" } }, "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ=="], - "ecurve": ["ecurve@1.0.6", "", { "dependencies": { "bigi": "^1.1.0", "safe-buffer": "^5.0.1" } }, "sha512-/BzEjNfiSuB7jIWKcS/z8FK9jNjmEWvUV2YZ4RLSmcDtP7Lq0m6FvDuSnJpBlDpGRpfRQeTLGLBI8H+kEv0r+w=="], "ee-first": ["ee-first@1.1.1", "", {}, "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow=="], @@ -916,11 +825,9 @@ "espree": ["espree@10.3.0", "", { "dependencies": { "acorn": "^8.14.0", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^4.2.0" } }, "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg=="], - "esprima": ["esprima@4.0.1", "", { "bin": { "esparse": "./bin/esparse.js", "esvalidate": "./bin/esvalidate.js" } }, "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A=="], - "esquery": ["esquery@1.6.0", "", { "dependencies": { "estraverse": "^5.1.0" } }, "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg=="], - "esrap": ["esrap@2.0.1", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" } }, "sha512-6n1JodkxeMvyTDCog7J//t8Yti//fGicZgtFLko6h/aEpc54BK9O8k9cZgC2J8+2Dh1U5uYIxuJWSsylybvFBA=="], + "esrap": ["esrap@2.1.0", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" } }, "sha512-yzmPNpl7TBbMRC5Lj2JlJZNPml0tzqoqP5B1JXycNUwtqma9AKCO0M2wHrdgsHcy1WRW7S9rJknAMtByg3usgA=="], "esrecurse": ["esrecurse@4.3.0", "", { "dependencies": { "estraverse": "^5.2.0" } }, "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag=="], @@ -952,6 +859,8 @@ "ext": ["ext@1.7.0", "", { "dependencies": { "type": "^2.7.2" } }, "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw=="], + "extend": ["extend@3.0.2", "", {}, "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g=="], + "extension-port-stream": ["extension-port-stream@4.2.0", "", { "dependencies": { "readable-stream": "^3.6.2 || ^4.4.2" }, "peerDependencies": { "webextension-polyfill": "^0.10.0 || ^0.11.0 || ^0.12.0" } }, "sha512-i5IgiPVMVrHN+Zx8PRjvFsOw8L1A3sboVwPZghDjW9Yp1BMmBDE6mCcTNu4xMXPYduBOwI3CBK7wd72LcOyD6g=="], "external-editor": ["external-editor@3.1.0", "", { "dependencies": { "chardet": "^0.7.0", "iconv-lite": "^0.4.24", "tmp": "^0.0.33" } }, "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew=="], @@ -1046,12 +955,8 @@ "graphemer": ["graphemer@1.4.0", "", {}, "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag=="], - "guess-json-indent": ["guess-json-indent@2.0.0", "", {}, "sha512-3Tm6R43KhtZWEVSHZnFmYMV9+gf3Vu0HXNNYtPVk2s7o8eGwYlJPHrjLtYw/7HBc10YxV+bfzKMuOf24z5qFng=="], - "has-flag": ["has-flag@4.0.0", "", {}, "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="], - "has-own-prop": ["has-own-prop@2.0.0", "", {}, "sha512-Pq0h+hvsVm6dDEa8x82GnLSYHOzNDt7f0ddFa3FqcQlgzEiptPqL+XrOJNavjOzSYiYWIrgeVYYgGlLmnxwilQ=="], - "has-symbols": ["has-symbols@1.1.0", "", {}, "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ=="], "has-tostringtag": ["has-tostringtag@1.0.2", "", { "dependencies": { "has-symbols": "^1.0.3" } }, "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw=="], @@ -1086,8 +991,6 @@ "imurmurhash": ["imurmurhash@0.1.4", "", {}, "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA=="], - "indent-string": ["indent-string@4.0.0", "", {}, "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg=="], - "inflight": ["inflight@1.0.6", "", { "dependencies": { "once": "^1.3.0", "wrappy": "1" } }, "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA=="], "inherits": ["inherits@2.0.4", "", {}, "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="], @@ -1124,6 +1027,8 @@ "is-path-inside": ["is-path-inside@3.0.3", "", {}, "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ=="], + "is-plain-obj": ["is-plain-obj@4.1.0", "", {}, "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg=="], + "is-promise": ["is-promise@4.0.0", "", {}, "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ=="], "is-reference": ["is-reference@3.0.3", "", { "dependencies": { "@types/estree": "^1.0.6" } }, "sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw=="], @@ -1164,18 +1069,10 @@ "json-stable-stringify-without-jsonify": ["json-stable-stringify-without-jsonify@1.0.1", "", {}, "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw=="], - "json5": ["json5@2.2.3", "", { "bin": { "json5": "lib/cli.js" } }, "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg=="], - "jsonfile": ["jsonfile@6.1.0", "", { "dependencies": { "universalify": "^2.0.0" }, "optionalDependencies": { "graceful-fs": "^4.1.6" } }, "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ=="], - "jsonwebtoken": ["jsonwebtoken@9.0.2", "", { "dependencies": { "jws": "^3.2.2", "lodash.includes": "^4.3.0", "lodash.isboolean": "^3.0.3", "lodash.isinteger": "^4.0.4", "lodash.isnumber": "^3.0.3", "lodash.isplainobject": "^4.0.6", "lodash.isstring": "^4.0.1", "lodash.once": "^4.0.0", "ms": "^2.1.1", "semver": "^7.5.4" } }, "sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ=="], - "just-extend": ["just-extend@6.2.0", "", {}, "sha512-cYofQu2Xpom82S6qD778jBDpwvvy39s1l/hrYij2u9AMdQcGRpaBu6kY4mVhuno5kJVi1DAz4aiphA2WI1/OAw=="], - "jwa": ["jwa@1.4.1", "", { "dependencies": { "buffer-equal-constant-time": "1.0.1", "ecdsa-sig-formatter": "1.0.11", "safe-buffer": "^5.0.1" } }, "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA=="], - - "jws": ["jws@3.2.2", "", { "dependencies": { "jwa": "^1.4.1", "safe-buffer": "^5.0.1" } }, "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA=="], - "keyv": ["keyv@4.5.4", "", { "dependencies": { "json-buffer": "3.0.1" } }, "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw=="], "kleur": ["kleur@4.1.5", "", {}, "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ=="], @@ -1220,50 +1117,64 @@ "lodash.groupby": ["lodash.groupby@4.6.0", "", {}, "sha512-5dcWxm23+VAoz+awKmBaiBvzox8+RqMgFhi7UvX9DHZr2HdxHXM/Wrf8cfKpsW37RNrvtPn6hSwNqurSILbmJw=="], - "lodash.includes": ["lodash.includes@4.3.0", "", {}, "sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w=="], - "lodash.isboolean": ["lodash.isboolean@3.0.3", "", {}, "sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg=="], "lodash.isequal": ["lodash.isequal@4.5.0", "", {}, "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ=="], "lodash.isfunction": ["lodash.isfunction@3.0.9", "", {}, "sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw=="], - "lodash.isinteger": ["lodash.isinteger@4.0.4", "", {}, "sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA=="], - "lodash.isnil": ["lodash.isnil@4.0.0", "", {}, "sha512-up2Mzq3545mwVnMhTDMdfoG1OurpA/s5t88JmQX809eH3C8491iu2sfKhTfhQtKY78oPNhiaHJUpT/dUDAAtng=="], - "lodash.isnumber": ["lodash.isnumber@3.0.3", "", {}, "sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw=="], - - "lodash.isplainobject": ["lodash.isplainobject@4.0.6", "", {}, "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA=="], - - "lodash.isstring": ["lodash.isstring@4.0.1", "", {}, "sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw=="], - "lodash.isundefined": ["lodash.isundefined@3.0.1", "", {}, "sha512-MXB1is3s899/cD8jheYYE2V9qTHwKvt+npCwpD+1Sxm3Q3cECXCiYHjeHWXNwr6Q0SOBPrYUDxendrO6goVTEA=="], "lodash.merge": ["lodash.merge@4.6.2", "", {}, "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="], - "lodash.once": ["lodash.once@4.1.1", "", {}, "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg=="], - "lodash.uniq": ["lodash.uniq@4.5.0", "", {}, "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ=="], "long": ["long@3.2.0", "", {}, "sha512-ZYvPPOMqUwPoDsbJaR10iQJYnMuZhRTvHYl62ErLIEX7RgFlziSBUUvrt3OVfc47QlHHpzPZYP17g3Fv7oeJkg=="], + "longest-streak": ["longest-streak@3.1.0", "", {}, "sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g=="], + "lower-case": ["lower-case@2.0.2", "", { "dependencies": { "tslib": "^2.0.3" } }, "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg=="], "lowercase-keys": ["lowercase-keys@1.0.1", "", {}, "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA=="], - "lru-cache": ["lru-cache@10.4.3", "", {}, "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ=="], - "lru-queue": ["lru-queue@0.1.0", "", { "dependencies": { "es5-ext": "~0.10.2" } }, "sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ=="], - "magic-string": ["magic-string@0.30.17", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0" } }, "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA=="], + "magic-string": ["magic-string@0.30.10", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" } }, "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ=="], "make-dir": ["make-dir@3.1.0", "", { "dependencies": { "semver": "^6.0.0" } }, "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw=="], + "markdown-table": ["markdown-table@3.0.4", "", {}, "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw=="], + "math-intrinsics": ["math-intrinsics@1.1.0", "", {}, "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g=="], "md5.js": ["md5.js@1.3.5", "", { "dependencies": { "hash-base": "^3.0.0", "inherits": "^2.0.1", "safe-buffer": "^5.1.2" } }, "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg=="], + "mdast-util-find-and-replace": ["mdast-util-find-and-replace@3.0.2", "", { "dependencies": { "@types/mdast": "^4.0.0", "escape-string-regexp": "^5.0.0", "unist-util-is": "^6.0.0", "unist-util-visit-parents": "^6.0.0" } }, "sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg=="], + + "mdast-util-from-markdown": ["mdast-util-from-markdown@2.0.3", "", { "dependencies": { "@types/mdast": "^4.0.0", "@types/unist": "^3.0.0", "decode-named-character-reference": "^1.0.0", "devlop": "^1.0.0", "mdast-util-to-string": "^4.0.0", "micromark": "^4.0.0", "micromark-util-decode-numeric-character-reference": "^2.0.0", "micromark-util-decode-string": "^2.0.0", "micromark-util-normalize-identifier": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0", "unist-util-stringify-position": "^4.0.0" } }, "sha512-W4mAWTvSlKvf8L6J+VN9yLSqQ9AOAAvHuoDAmPkz4dHf553m5gVj2ejadHJhoJmcmxEnOv6Pa8XJhpxE93kb8Q=="], + + "mdast-util-gfm": ["mdast-util-gfm@3.1.0", "", { "dependencies": { "mdast-util-from-markdown": "^2.0.0", "mdast-util-gfm-autolink-literal": "^2.0.0", "mdast-util-gfm-footnote": "^2.0.0", "mdast-util-gfm-strikethrough": "^2.0.0", "mdast-util-gfm-table": "^2.0.0", "mdast-util-gfm-task-list-item": "^2.0.0", "mdast-util-to-markdown": "^2.0.0" } }, "sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ=="], + + "mdast-util-gfm-autolink-literal": ["mdast-util-gfm-autolink-literal@2.0.1", "", { "dependencies": { "@types/mdast": "^4.0.0", "ccount": "^2.0.0", "devlop": "^1.0.0", "mdast-util-find-and-replace": "^3.0.0", "micromark-util-character": "^2.0.0" } }, "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ=="], + + "mdast-util-gfm-footnote": ["mdast-util-gfm-footnote@2.1.0", "", { "dependencies": { "@types/mdast": "^4.0.0", "devlop": "^1.1.0", "mdast-util-from-markdown": "^2.0.0", "mdast-util-to-markdown": "^2.0.0", "micromark-util-normalize-identifier": "^2.0.0" } }, "sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ=="], + + "mdast-util-gfm-strikethrough": ["mdast-util-gfm-strikethrough@2.0.0", "", { "dependencies": { "@types/mdast": "^4.0.0", "mdast-util-from-markdown": "^2.0.0", "mdast-util-to-markdown": "^2.0.0" } }, "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg=="], + + "mdast-util-gfm-table": ["mdast-util-gfm-table@2.0.0", "", { "dependencies": { "@types/mdast": "^4.0.0", "devlop": "^1.0.0", "markdown-table": "^3.0.0", "mdast-util-from-markdown": "^2.0.0", "mdast-util-to-markdown": "^2.0.0" } }, "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg=="], + + "mdast-util-gfm-task-list-item": ["mdast-util-gfm-task-list-item@2.0.0", "", { "dependencies": { "@types/mdast": "^4.0.0", "devlop": "^1.0.0", "mdast-util-from-markdown": "^2.0.0", "mdast-util-to-markdown": "^2.0.0" } }, "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ=="], + + "mdast-util-phrasing": ["mdast-util-phrasing@4.1.0", "", { "dependencies": { "@types/mdast": "^4.0.0", "unist-util-is": "^6.0.0" } }, "sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w=="], + + "mdast-util-to-hast": ["mdast-util-to-hast@13.2.1", "", { "dependencies": { "@types/hast": "^3.0.0", "@types/mdast": "^4.0.0", "@ungap/structured-clone": "^1.0.0", "devlop": "^1.0.0", "micromark-util-sanitize-uri": "^2.0.0", "trim-lines": "^3.0.0", "unist-util-position": "^5.0.0", "unist-util-visit": "^5.0.0", "vfile": "^6.0.0" } }, "sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA=="], + + "mdast-util-to-markdown": ["mdast-util-to-markdown@2.1.2", "", { "dependencies": { "@types/mdast": "^4.0.0", "@types/unist": "^3.0.0", "longest-streak": "^3.0.0", "mdast-util-phrasing": "^4.0.0", "mdast-util-to-string": "^4.0.0", "micromark-util-classify-character": "^2.0.0", "micromark-util-decode-string": "^2.0.0", "unist-util-visit": "^5.0.0", "zwitch": "^2.0.0" } }, "sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA=="], + + "mdast-util-to-string": ["mdast-util-to-string@4.0.0", "", { "dependencies": { "@types/mdast": "^4.0.0" } }, "sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg=="], + "media-typer": ["media-typer@1.1.0", "", {}, "sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw=="], "melt": ["melt@0.35.3", "", { "dependencies": { "@floating-ui/dom": "^1.6.13", "dequal": "^2.0.3", "jest-axe": "^9.0.0", "nanoid": "^5.0.9", "runed": "^0.23.3" }, "peerDependencies": { "svelte": "^5.30.1" } }, "sha512-ksO8daX+9XWicK5O6SwhwLfoevVfVyx4JvY96wjZDUpBMG7WCg22eXV7/ABUVm8DN7gbVvc8C42aY9JlL9a46g=="], @@ -1276,6 +1187,62 @@ "micro-ftch": ["micro-ftch@0.3.1", "", {}, "sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg=="], + "micromark": ["micromark@4.0.2", "", { "dependencies": { "@types/debug": "^4.0.0", "debug": "^4.0.0", "decode-named-character-reference": "^1.0.0", "devlop": "^1.0.0", "micromark-core-commonmark": "^2.0.0", "micromark-factory-space": "^2.0.0", "micromark-util-character": "^2.0.0", "micromark-util-chunked": "^2.0.0", "micromark-util-combine-extensions": "^2.0.0", "micromark-util-decode-numeric-character-reference": "^2.0.0", "micromark-util-encode": "^2.0.0", "micromark-util-normalize-identifier": "^2.0.0", "micromark-util-resolve-all": "^2.0.0", "micromark-util-sanitize-uri": "^2.0.0", "micromark-util-subtokenize": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA=="], + + "micromark-core-commonmark": ["micromark-core-commonmark@2.0.3", "", { "dependencies": { "decode-named-character-reference": "^1.0.0", "devlop": "^1.0.0", "micromark-factory-destination": "^2.0.0", "micromark-factory-label": "^2.0.0", "micromark-factory-space": "^2.0.0", "micromark-factory-title": "^2.0.0", "micromark-factory-whitespace": "^2.0.0", "micromark-util-character": "^2.0.0", "micromark-util-chunked": "^2.0.0", "micromark-util-classify-character": "^2.0.0", "micromark-util-html-tag-name": "^2.0.0", "micromark-util-normalize-identifier": "^2.0.0", "micromark-util-resolve-all": "^2.0.0", "micromark-util-subtokenize": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg=="], + + "micromark-extension-gfm": ["micromark-extension-gfm@3.0.0", "", { "dependencies": { "micromark-extension-gfm-autolink-literal": "^2.0.0", "micromark-extension-gfm-footnote": "^2.0.0", "micromark-extension-gfm-strikethrough": "^2.0.0", "micromark-extension-gfm-table": "^2.0.0", "micromark-extension-gfm-tagfilter": "^2.0.0", "micromark-extension-gfm-task-list-item": "^2.0.0", "micromark-util-combine-extensions": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w=="], + + "micromark-extension-gfm-autolink-literal": ["micromark-extension-gfm-autolink-literal@2.1.0", "", { "dependencies": { "micromark-util-character": "^2.0.0", "micromark-util-sanitize-uri": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw=="], + + "micromark-extension-gfm-footnote": ["micromark-extension-gfm-footnote@2.1.0", "", { "dependencies": { "devlop": "^1.0.0", "micromark-core-commonmark": "^2.0.0", "micromark-factory-space": "^2.0.0", "micromark-util-character": "^2.0.0", "micromark-util-normalize-identifier": "^2.0.0", "micromark-util-sanitize-uri": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw=="], + + "micromark-extension-gfm-strikethrough": ["micromark-extension-gfm-strikethrough@2.1.0", "", { "dependencies": { "devlop": "^1.0.0", "micromark-util-chunked": "^2.0.0", "micromark-util-classify-character": "^2.0.0", "micromark-util-resolve-all": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw=="], + + "micromark-extension-gfm-table": ["micromark-extension-gfm-table@2.1.1", "", { "dependencies": { "devlop": "^1.0.0", "micromark-factory-space": "^2.0.0", "micromark-util-character": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg=="], + + "micromark-extension-gfm-tagfilter": ["micromark-extension-gfm-tagfilter@2.0.0", "", { "dependencies": { "micromark-util-types": "^2.0.0" } }, "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg=="], + + "micromark-extension-gfm-task-list-item": ["micromark-extension-gfm-task-list-item@2.1.0", "", { "dependencies": { "devlop": "^1.0.0", "micromark-factory-space": "^2.0.0", "micromark-util-character": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw=="], + + "micromark-factory-destination": ["micromark-factory-destination@2.0.1", "", { "dependencies": { "micromark-util-character": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA=="], + + "micromark-factory-label": ["micromark-factory-label@2.0.1", "", { "dependencies": { "devlop": "^1.0.0", "micromark-util-character": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg=="], + + "micromark-factory-space": ["micromark-factory-space@2.0.1", "", { "dependencies": { "micromark-util-character": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg=="], + + "micromark-factory-title": ["micromark-factory-title@2.0.1", "", { "dependencies": { "micromark-factory-space": "^2.0.0", "micromark-util-character": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw=="], + + "micromark-factory-whitespace": ["micromark-factory-whitespace@2.0.1", "", { "dependencies": { "micromark-factory-space": "^2.0.0", "micromark-util-character": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ=="], + + "micromark-util-character": ["micromark-util-character@2.1.1", "", { "dependencies": { "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q=="], + + "micromark-util-chunked": ["micromark-util-chunked@2.0.1", "", { "dependencies": { "micromark-util-symbol": "^2.0.0" } }, "sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA=="], + + "micromark-util-classify-character": ["micromark-util-classify-character@2.0.1", "", { "dependencies": { "micromark-util-character": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q=="], + + "micromark-util-combine-extensions": ["micromark-util-combine-extensions@2.0.1", "", { "dependencies": { "micromark-util-chunked": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg=="], + + "micromark-util-decode-numeric-character-reference": ["micromark-util-decode-numeric-character-reference@2.0.2", "", { "dependencies": { "micromark-util-symbol": "^2.0.0" } }, "sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw=="], + + "micromark-util-decode-string": ["micromark-util-decode-string@2.0.1", "", { "dependencies": { "decode-named-character-reference": "^1.0.0", "micromark-util-character": "^2.0.0", "micromark-util-decode-numeric-character-reference": "^2.0.0", "micromark-util-symbol": "^2.0.0" } }, "sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ=="], + + "micromark-util-encode": ["micromark-util-encode@2.0.1", "", {}, "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw=="], + + "micromark-util-html-tag-name": ["micromark-util-html-tag-name@2.0.1", "", {}, "sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA=="], + + "micromark-util-normalize-identifier": ["micromark-util-normalize-identifier@2.0.1", "", { "dependencies": { "micromark-util-symbol": "^2.0.0" } }, "sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q=="], + + "micromark-util-resolve-all": ["micromark-util-resolve-all@2.0.1", "", { "dependencies": { "micromark-util-types": "^2.0.0" } }, "sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg=="], + + "micromark-util-sanitize-uri": ["micromark-util-sanitize-uri@2.0.1", "", { "dependencies": { "micromark-util-character": "^2.0.0", "micromark-util-encode": "^2.0.0", "micromark-util-symbol": "^2.0.0" } }, "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ=="], + + "micromark-util-subtokenize": ["micromark-util-subtokenize@2.1.0", "", { "dependencies": { "devlop": "^1.0.0", "micromark-util-chunked": "^2.0.0", "micromark-util-symbol": "^2.0.0", "micromark-util-types": "^2.0.0" } }, "sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA=="], + + "micromark-util-symbol": ["micromark-util-symbol@2.0.1", "", {}, "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q=="], + + "micromark-util-types": ["micromark-util-types@2.0.2", "", {}, "sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA=="], + "micromatch": ["micromatch@4.0.7", "", { "dependencies": { "braces": "^3.0.3", "picomatch": "^2.3.1" } }, "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q=="], "mime": ["mime@3.0.0", "", { "bin": { "mime": "cli.js" } }, "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A=="], @@ -1308,8 +1275,6 @@ "ms": ["ms@2.1.3", "", {}, "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="], - "murmurhash3js": ["murmurhash3js@3.0.1", "", {}, "sha512-KL8QYUaxq7kUbcl0Yto51rMcYt7E/4N4BG3/c96Iqw1PQrTRspu8Cpx4TZ4Nunib1d4bEkIH3gjCYlP2RLBdow=="], - "mustache": ["mustache@4.2.0", "", { "bin": { "mustache": "bin/mustache" } }, "sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ=="], "mute-stream": ["mute-stream@0.0.8", "", {}, "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA=="], @@ -1344,8 +1309,6 @@ "object-inspect": ["object-inspect@1.13.4", "", {}, "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew=="], - "octokit": ["octokit@3.1.2", "", { "dependencies": { "@octokit/app": "^14.0.2", "@octokit/core": "^5.0.0", "@octokit/oauth-app": "^6.0.0", "@octokit/plugin-paginate-graphql": "^4.0.0", "@octokit/plugin-paginate-rest": "^9.0.0", "@octokit/plugin-rest-endpoint-methods": "^10.0.0", "@octokit/plugin-retry": "^6.0.0", "@octokit/plugin-throttling": "^8.0.0", "@octokit/request-error": "^5.0.0", "@octokit/types": "^12.0.0" } }, "sha512-MG5qmrTL5y8KYwFgE1A4JWmgfQBaIETE/lOlfwNYx1QOtCQHGVxkRJmdUJltFc1HVn73d61TlMhMyNTOtMl+ng=="], - "on-change": ["on-change@2.2.3", "", {}, "sha512-yx48YQW3XsMHYWJ5n8oOgonrxsIJJNn1fqE3QlQpYS/I6XHvzTARHzaVbwFyJoSaZ4g7UTZheaaxHVtFKcNXgg=="], "on-finished": ["on-finished@2.4.1", "", { "dependencies": { "ee-first": "1.1.1" } }, "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg=="], @@ -1396,12 +1359,12 @@ "picocolors": ["picocolors@1.1.1", "", {}, "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="], - "picomatch": ["picomatch@4.0.2", "", {}, "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg=="], - - "pify": ["pify@5.0.0", "", {}, "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA=="], + "picomatch": ["picomatch@4.0.3", "", {}, "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q=="], "pkce-challenge": ["pkce-challenge@5.0.0", "", {}, "sha512-ueGLflrrnvwB3xuo/uGob5pd5FN7l0MsLf0Z87o/UQmRtwjvfylfc9MurIxRAWywCYTgrvpXBcqjV4OfCYGCIQ=="], + "pofile": ["pofile@1.1.4", "", {}, "sha512-r6Q21sKsY1AjTVVjOuU02VYKVNQGJNQHjTIvs4dEbeuuYfxgYk/DGD2mqqq4RDaVkwdSq0VEtmQUOPe/wH8X3g=="], + "pony-cause": ["pony-cause@2.1.11", "", {}, "sha512-M7LhCsdNbNgiLYiP4WjsfLUuFmCfnjdF6jKe2R9NKl4WFN+HZPGHJZ9lnLP7f9ZnKe3U9nuWD0szirmj+migUg=="], "postcss": ["postcss@8.5.3", "", { "dependencies": { "nanoid": "^3.3.8", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" } }, "sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A=="], @@ -1414,8 +1377,6 @@ "postcss-selector-parser": ["postcss-selector-parser@7.1.0", "", { "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" } }, "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA=="], - "posthog-node": ["posthog-node@4.2.1", "", { "dependencies": { "axios": "^1.7.4", "rusha": "^0.8.14" } }, "sha512-l+fsjYEkTik3m/G0pE7gMr4qBJP84LhK779oQm6MBzhBGpd4By4qieTW+4FUAlNCyzQTynn3Nhsa50c0IELSxQ=="], - "prelude-ls": ["prelude-ls@1.2.1", "", {}, "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g=="], "prepend-http": ["prepend-http@2.0.0", "", {}, "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA=="], @@ -1472,7 +1433,13 @@ "registry-url": ["registry-url@5.1.0", "", { "dependencies": { "rc": "^1.2.8" } }, "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw=="], - "repeat-string": ["repeat-string@1.6.1", "", {}, "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w=="], + "remark-gfm": ["remark-gfm@4.0.1", "", { "dependencies": { "@types/mdast": "^4.0.0", "mdast-util-gfm": "^3.0.0", "micromark-extension-gfm": "^3.0.0", "remark-parse": "^11.0.0", "remark-stringify": "^11.0.0", "unified": "^11.0.0" } }, "sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg=="], + + "remark-parse": ["remark-parse@11.0.0", "", { "dependencies": { "@types/mdast": "^4.0.0", "mdast-util-from-markdown": "^2.0.0", "micromark-util-types": "^2.0.0", "unified": "^11.0.0" } }, "sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA=="], + + "remark-rehype": ["remark-rehype@11.1.2", "", { "dependencies": { "@types/hast": "^3.0.0", "@types/mdast": "^4.0.0", "mdast-util-to-hast": "^13.0.0", "unified": "^11.0.0", "vfile": "^6.0.0" } }, "sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw=="], + + "remark-stringify": ["remark-stringify@11.0.0", "", { "dependencies": { "@types/mdast": "^4.0.0", "mdast-util-to-markdown": "^2.0.0", "unified": "^11.0.0" } }, "sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw=="], "resolve": ["resolve@1.22.8", "", { "dependencies": { "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { "resolve": "bin/resolve" } }, "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw=="], @@ -1490,7 +1457,7 @@ "ripemd160": ["ripemd160@2.0.2", "", { "dependencies": { "hash-base": "^3.0.0", "inherits": "^2.0.1" } }, "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA=="], - "rollup": ["rollup@4.32.1", "", { "dependencies": { "@types/estree": "1.0.6" }, "optionalDependencies": { "@rollup/rollup-android-arm-eabi": "4.32.1", "@rollup/rollup-android-arm64": "4.32.1", "@rollup/rollup-darwin-arm64": "4.32.1", "@rollup/rollup-darwin-x64": "4.32.1", "@rollup/rollup-freebsd-arm64": "4.32.1", "@rollup/rollup-freebsd-x64": "4.32.1", "@rollup/rollup-linux-arm-gnueabihf": "4.32.1", "@rollup/rollup-linux-arm-musleabihf": "4.32.1", "@rollup/rollup-linux-arm64-gnu": "4.32.1", "@rollup/rollup-linux-arm64-musl": "4.32.1", "@rollup/rollup-linux-loongarch64-gnu": "4.32.1", "@rollup/rollup-linux-powerpc64le-gnu": "4.32.1", "@rollup/rollup-linux-riscv64-gnu": "4.32.1", "@rollup/rollup-linux-s390x-gnu": "4.32.1", "@rollup/rollup-linux-x64-gnu": "4.32.1", "@rollup/rollup-linux-x64-musl": "4.32.1", "@rollup/rollup-win32-arm64-msvc": "4.32.1", "@rollup/rollup-win32-ia32-msvc": "4.32.1", "@rollup/rollup-win32-x64-msvc": "4.32.1", "fsevents": "~2.3.2" }, "bin": { "rollup": "dist/bin/rollup" } }, "sha512-z+aeEsOeEa3mEbS1Tjl6sAZ8NE3+AalQz1RJGj81M+fizusbdDMoEJwdJNHfaB40Scr4qNu+welOfes7maKonA=="], + "rollup": ["rollup@4.52.5", "", { "dependencies": { "@types/estree": "1.0.8" }, "optionalDependencies": { "@rollup/rollup-android-arm-eabi": "4.52.5", "@rollup/rollup-android-arm64": "4.52.5", "@rollup/rollup-darwin-arm64": "4.52.5", "@rollup/rollup-darwin-x64": "4.52.5", "@rollup/rollup-freebsd-arm64": "4.52.5", "@rollup/rollup-freebsd-x64": "4.52.5", "@rollup/rollup-linux-arm-gnueabihf": "4.52.5", "@rollup/rollup-linux-arm-musleabihf": "4.52.5", "@rollup/rollup-linux-arm64-gnu": "4.52.5", "@rollup/rollup-linux-arm64-musl": "4.52.5", "@rollup/rollup-linux-loong64-gnu": "4.52.5", "@rollup/rollup-linux-ppc64-gnu": "4.52.5", "@rollup/rollup-linux-riscv64-gnu": "4.52.5", "@rollup/rollup-linux-riscv64-musl": "4.52.5", "@rollup/rollup-linux-s390x-gnu": "4.52.5", "@rollup/rollup-linux-x64-gnu": "4.52.5", "@rollup/rollup-linux-x64-musl": "4.52.5", "@rollup/rollup-openharmony-arm64": "4.52.5", "@rollup/rollup-win32-arm64-msvc": "4.52.5", "@rollup/rollup-win32-ia32-msvc": "4.52.5", "@rollup/rollup-win32-x64-gnu": "4.52.5", "@rollup/rollup-win32-x64-msvc": "4.52.5", "fsevents": "~2.3.2" }, "bin": { "rollup": "dist/bin/rollup" } }, "sha512-3GuObel8h7Kqdjt0gxkEzaifHTqLVW56Y/bjN7PSQtkKr0w3V/QYSdt6QWYtd7A1xUtYQigtdUfgj1RvWVtorw=="], "rollup-plugin-inject": ["rollup-plugin-inject@3.0.2", "", { "dependencies": { "estree-walker": "^0.6.1", "magic-string": "^0.25.3", "rollup-pluginutils": "^2.8.1" } }, "sha512-ptg9PQwzs3orn4jkgXJ74bfs5vYz1NCZlSQMBUA0wKcGp5i5pA1AO3fOUEte8enhGUC+iapTCzEWw2jEFFUO/w=="], @@ -1506,8 +1473,6 @@ "runed": ["runed@0.15.3", "", { "dependencies": { "esm-env": "^1.0.0" }, "peerDependencies": { "svelte": "^5.0.0-next.1" } }, "sha512-HtayB+loDcGdqJDHW8JFdsZzGQMyVzim6+s3052MkjZnwmwDstmF+cusMeTssBe6TCdt5i9D/Tb+KYXN3L0kXA=="], - "rusha": ["rusha@0.8.14", "", {}, "sha512-cLgakCUf6PedEu15t8kbsjnwIFFR2D4RfL+W3iWFJ4iac7z4B0ZI8fxy4R3J956kAI68HclCFGL8MPoUVC3qVA=="], - "rxjs": ["rxjs@6.6.7", "", { "dependencies": { "tslib": "^1.9.0" } }, "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ=="], "sade": ["sade@1.8.1", "", { "dependencies": { "mri": "^1.1.0" } }, "sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A=="], @@ -1558,8 +1523,6 @@ "sirv": ["sirv@3.0.0", "", { "dependencies": { "@polka/url": "^1.0.0-next.24", "mrmime": "^2.0.0", "totalist": "^3.0.0" } }, "sha512-BPwJGUeDaDCHihkORDchNyyTvWFhcusy1XMmhEVTQTwGeybFbp8YEmB+njbPnth1FibULBSBVwCQni25XlCUDg=="], - "solid-js": ["solid-js@1.6.12", "", { "dependencies": { "csstype": "^3.1.0" } }, "sha512-JFqRobfG3q5r1l4RYVOAukk6+FWtHpXGIjgh/GEsHKweN/kK+iHOtzUALE6+P5t/jIcSNeGiVitX8gmJg+cYvQ=="], - "source-map": ["source-map@0.6.1", "", {}, "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="], "source-map-js": ["source-map-js@1.2.1", "", {}, "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA=="], @@ -1590,7 +1553,7 @@ "svead": ["svead@0.0.13", "", { "peerDependencies": { "svelte": "^4.0.0 || ^5.0.0" } }, "sha512-Tcm1xKEClmmAFcbjm9t8+T58BXWPAWgAwna/0Z+sRWuiYDCohF4WwHQzrgsy/73c4c7iT6gW4bENJ/ZV0YkViw=="], - "svelte": ["svelte@5.35.0", "", { "dependencies": { "@ampproject/remapping": "^2.3.0", "@jridgewell/sourcemap-codec": "^1.5.0", "@sveltejs/acorn-typescript": "^1.0.5", "@types/estree": "^1.0.5", "acorn": "^8.12.1", "aria-query": "^5.3.1", "axobject-query": "^4.1.0", "clsx": "^2.1.1", "esm-env": "^1.2.1", "esrap": "^2.0.0", "is-reference": "^3.0.3", "locate-character": "^3.0.0", "magic-string": "^0.30.11", "zimmerframe": "^1.1.2" } }, "sha512-zgtdzln2aPYbsyeeFSjiQVrojZZU2iPYu07FRzfNme7NCBWo00Xn3B5JP/wMhhYG7nK8BZfrqREfoJRHYAOA5w=="], + "svelte": ["svelte@5.41.1", "", { "dependencies": { "@jridgewell/remapping": "^2.3.4", "@jridgewell/sourcemap-codec": "^1.5.0", "@sveltejs/acorn-typescript": "^1.0.5", "@types/estree": "^1.0.5", "acorn": "^8.12.1", "aria-query": "^5.3.1", "axobject-query": "^4.1.0", "clsx": "^2.1.1", "esm-env": "^1.2.1", "esrap": "^2.1.0", "is-reference": "^3.0.3", "locate-character": "^3.0.0", "magic-string": "^0.30.11", "zimmerframe": "^1.1.2" } }, "sha512-0a/huwc8e2es+7KFi70esqsReRfRbrT8h1cJSY/+z1lF0yKM6TT+//HYu28Yxstr50H7ifaqZRDGd0KuKDxP7w=="], "svelte-adapter-bun": ["svelte-adapter-bun@0.5.2", "", { "dependencies": { "tiny-glob": "^0.2.9" } }, "sha512-xEtFgaal6UgrCwwkSIcapO9kopoFNUYCYqyKCikdqxX9bz2TDYnrWQZ7qBnkunMxi1HOIERUCvTcebYGiarZLA=="], @@ -1598,6 +1561,8 @@ "svelte-eslint-parser": ["svelte-eslint-parser@1.1.3", "", { "dependencies": { "eslint-scope": "^8.2.0", "eslint-visitor-keys": "^4.0.0", "espree": "^10.0.0", "postcss": "^8.4.49", "postcss-scss": "^4.0.9", "postcss-selector-parser": "^7.0.0" }, "peerDependencies": { "svelte": "^3.37.0 || ^4.0.0 || ^5.0.0" }, "optionalPeers": ["svelte"] }, "sha512-DUc/z/vk+AFVoxGv54+BOBFqUrmUgNg2gSO2YqrE3OL6ro19/0azPmQj/4wN3s9RxuF5l7G0162q/Ddk4LJhZA=="], + "svelte-exmarkdown": ["svelte-exmarkdown@5.0.2", "", { "dependencies": { "remark-gfm": "^4.0.1", "remark-parse": "^11.0.0", "remark-rehype": "^11.1.2", "unified": "^11.0.5" }, "peerDependencies": { "svelte": "^5.1.3" } }, "sha512-/GhWbh0TBd7OPsL6IhQZm4BVuglP5MP4lVwBDnIF8IYfmHfwfY0z/nu78L8FDwJM2pP+DW8045g+jUhM357U1w=="], + "svelte-parse-markup": ["svelte-parse-markup@0.1.5", "", { "peerDependencies": { "svelte": "^3.0.0 || ^4.0.0 || ^5.0.0-next.1" } }, "sha512-T6mqZrySltPCDwfKXWQ6zehipVLk4GWfH1zCMGgRtLlOIFPuw58ZxVYxVvotMJgJaurKi1i14viB2GIRKXeJTQ=="], "svelte2tsx": ["svelte2tsx@0.7.39", "", { "dependencies": { "dedent-js": "^1.0.1", "pascal-case": "^3.1.1" }, "peerDependencies": { "svelte": "^3.55 || ^4.0.0-next.0 || ^4.0 || ^5.0.0-next.0", "typescript": "^4.9.4 || ^5.0.0" } }, "sha512-NX8a7eSqF1hr6WKArvXr7TV7DeE+y0kDFD7L5JP7TWqlwFidzGKaG415p992MHREiiEWOv2xIWXJ+mlONofs0A=="], @@ -1618,14 +1583,14 @@ "thenify-all": ["thenify-all@1.6.0", "", { "dependencies": { "thenify": ">= 3.1.0 < 4" } }, "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA=="], - "throttle-debounce": ["throttle-debounce@5.0.2", "", {}, "sha512-B71/4oyj61iNH0KeCamLuE2rmKuTO5byTOSVwECM5FA7TiAiAW+UqTKZ9ERueC4qvgSttUhdmq1mXC3kJqGX7A=="], - "through": ["through@2.3.8", "", {}, "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg=="], "timers-ext": ["timers-ext@0.1.8", "", { "dependencies": { "es5-ext": "^0.10.64", "next-tick": "^1.1.0" } }, "sha512-wFH7+SEAcKfJpfLPkrgMPvvwnEtj8W4IurvEyrKsDleXnKLCDw71w8jltvfLa8Rm4qQxxT4jmDBYbJG/z7qoww=="], "tiny-glob": ["tiny-glob@0.2.9", "", { "dependencies": { "globalyzer": "0.1.0", "globrex": "^0.1.2" } }, "sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg=="], + "tinyglobby": ["tinyglobby@0.2.15", "", { "dependencies": { "fdir": "^6.5.0", "picomatch": "^4.0.3" } }, "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ=="], + "tmp": ["tmp@0.0.33", "", { "dependencies": { "os-tmpdir": "~1.0.2" } }, "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw=="], "to-readable-stream": ["to-readable-stream@1.0.0", "", {}, "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q=="], @@ -1638,6 +1603,10 @@ "tr46": ["tr46@0.0.3", "", {}, "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="], + "trim-lines": ["trim-lines@3.0.1", "", {}, "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg=="], + + "trough": ["trough@2.2.0", "", {}, "sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw=="], + "ts-api-utils": ["ts-api-utils@2.1.0", "", { "peerDependencies": { "typescript": ">=4.8.4" } }, "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ=="], "tslib": ["tslib@2.6.3", "", {}, "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ=="], @@ -1652,9 +1621,9 @@ "typedarray-to-buffer": ["typedarray-to-buffer@3.1.5", "", { "dependencies": { "is-typedarray": "^1.0.0" } }, "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q=="], - "typescript": ["typescript@5.5.4", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q=="], + "typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw=="], - "typescript-eslint": ["typescript-eslint@8.32.0", "", { "dependencies": { "@typescript-eslint/eslint-plugin": "8.32.0", "@typescript-eslint/parser": "8.32.0", "@typescript-eslint/utils": "8.32.0" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <5.9.0" } }, "sha512-UMq2kxdXCzinFFPsXc9o2ozIpYCCOiEC46MG3yEh5Vipq6BO27otTtEBZA1fQ66DulEUgE97ucQ/3YY66CPg0A=="], + "typescript-eslint": ["typescript-eslint@8.46.2", "", { "dependencies": { "@typescript-eslint/eslint-plugin": "8.46.2", "@typescript-eslint/parser": "8.46.2", "@typescript-eslint/typescript-estree": "8.46.2", "@typescript-eslint/utils": "8.46.2" }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0", "typescript": ">=4.8.4 <6.0.0" } }, "sha512-vbw8bOmiuYNdzzV3lsiWv6sRwjyuKJMQqWulBOU7M0RrxedXledX8G8kBbQeiOYDnTfiXz0Y4081E1QMNB6iQg=="], "typescript-svelte-plugin": ["typescript-svelte-plugin@0.3.47", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0", "svelte2tsx": "~0.7.35" } }, "sha512-q7NpMvWokP8n0MfAhB375K3PT+1iYuPC/wFYxOTWMiraCkA81GDA8X/b2DfdiuESfDTJ1VANUR2PqdE8pEqXxg=="], @@ -1666,20 +1635,26 @@ "unenv": ["unenv-nightly@1.10.0-1717606461.a117952", "", { "dependencies": { "consola": "^3.2.3", "defu": "^6.1.4", "mime": "^3.0.0", "node-fetch-native": "^1.6.4", "pathe": "^1.1.2", "ufo": "^1.5.3" } }, "sha512-u3TfBX02WzbHTpaEfWEKwDijDSFAHcgXkayUZ+MVDrjhLFvgAJzFGTSTmwlEhwWi2exyRQey23ah9wELMM6etg=="], - "unicove-components": ["unicove-components@0.2.2", "", { "dependencies": { "@fontsource-variable/inter": "^5.2.6", "@fontsource-variable/jetbrains-mono": "^5.2.6", "@lucide/svelte": "^0.516.0", "@melt-ui/svelte": "^0.86.6", "@wharfkit/antelope": "^1.0.13", "@wharfkit/common": "^1.5.0", "big.js": "^7.0.1", "esm-env": "^1.2.2", "melt": "^0.35.1", "tailwind-merge": "^3.3.1" }, "peerDependencies": { "svelte": "^5.0.0", "tailwindcss": "^4.0.0" } }, "sha512-lly2dHfRv75edGgfPjxfOSdbwgPANzRp5/Z2ha/qp3jP0iNjQOkvbwtT3xODKf6JN1UVgUPlQFLv9WA2pR+fkQ=="], + "unicove-components": ["unicove-components@0.6.1", "", { "dependencies": { "@fontsource-variable/inter": "^5.2.6", "@fontsource-variable/jetbrains-mono": "^5.2.6", "@lucide/svelte": "^0.516.0", "@melt-ui/svelte": "^0.86.6", "@wharfkit/antelope": "^1.0.13", "@wharfkit/common": "^1.5.0", "big.js": "^7.0.1", "esm-env": "^1.2.2", "melt": "^0.35.1", "tailwind-merge": "^3.3.1" }, "peerDependencies": { "svelte": "^5.0.0", "tailwindcss": "^4.0.0" } }, "sha512-/A26bicyd9H7eR5pkctjm8i5qBMgknSzrclXpzo2mgoWBz0RZLz+dsur7FNVJU0KNI7Dkkz1ydjBAZBA7GApVQ=="], + + "unified": ["unified@11.0.5", "", { "dependencies": { "@types/unist": "^3.0.0", "bail": "^2.0.0", "devlop": "^1.0.0", "extend": "^3.0.0", "is-plain-obj": "^4.0.0", "trough": "^2.0.0", "vfile": "^6.0.0" } }, "sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA=="], "unique-string": ["unique-string@2.0.0", "", { "dependencies": { "crypto-random-string": "^2.0.0" } }, "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg=="], - "universal-github-app-jwt": ["universal-github-app-jwt@1.1.2", "", { "dependencies": { "@types/jsonwebtoken": "^9.0.0", "jsonwebtoken": "^9.0.2" } }, "sha512-t1iB2FmLFE+yyJY9+3wMx0ejB+MQpEVkH0gQv7dR6FZyltyq+ZZO0uDpbopxhrZ3SLEO4dCEkIujOMldEQ2iOA=="], + "unist-util-is": ["unist-util-is@6.0.1", "", { "dependencies": { "@types/unist": "^3.0.0" } }, "sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g=="], + + "unist-util-position": ["unist-util-position@5.0.0", "", { "dependencies": { "@types/unist": "^3.0.0" } }, "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA=="], + + "unist-util-stringify-position": ["unist-util-stringify-position@4.0.0", "", { "dependencies": { "@types/unist": "^3.0.0" } }, "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ=="], - "universal-user-agent": ["universal-user-agent@6.0.1", "", {}, "sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ=="], + "unist-util-visit": ["unist-util-visit@5.1.0", "", { "dependencies": { "@types/unist": "^3.0.0", "unist-util-is": "^6.0.0", "unist-util-visit-parents": "^6.0.0" } }, "sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg=="], + + "unist-util-visit-parents": ["unist-util-visit-parents@6.0.2", "", { "dependencies": { "@types/unist": "^3.0.0", "unist-util-is": "^6.0.0" } }, "sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ=="], "universalify": ["universalify@2.0.1", "", {}, "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw=="], "unpipe": ["unpipe@1.0.0", "", {}, "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ=="], - "unplugin": ["unplugin@1.14.1", "", { "dependencies": { "acorn": "^8.12.1", "webpack-virtual-modules": "^0.6.2" }, "peerDependencies": { "webpack-sources": "^3" }, "optionalPeers": ["webpack-sources"] }, "sha512-lBlHbfSFPToDYp9pjXlUEFVxYLaue9f9T1HC+4OHlmj+HnMDdz9oZY+erXfoCe/5V/7gKUSY2jpXPb9S7f0f/w=="], - "update-notifier": ["update-notifier@5.1.0", "", { "dependencies": { "boxen": "^5.0.0", "chalk": "^4.1.0", "configstore": "^5.0.1", "has-yarn": "^2.1.0", "import-lazy": "^2.1.0", "is-ci": "^2.0.0", "is-installed-globally": "^0.4.0", "is-npm": "^5.0.0", "is-yarn-global": "^0.3.0", "latest-version": "^5.1.0", "pupa": "^2.1.1", "semver": "^7.3.4", "semver-diff": "^3.1.1", "xdg-basedir": "^4.0.0" } }, "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw=="], "uri-js": ["uri-js@4.4.1", "", { "dependencies": { "punycode": "^2.1.0" } }, "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg=="], @@ -1694,20 +1669,24 @@ "uuid": ["uuid@9.0.1", "", { "bin": { "uuid": "dist/bin/uuid" } }, "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="], + "valibot": ["valibot@1.1.0", "", { "peerDependencies": { "typescript": ">=5" }, "optionalPeers": ["typescript"] }, "sha512-Nk8lX30Qhu+9txPYTwM0cFlWLdPFsFr6LblzqIySfbZph9+BFsAHsNvHOymEviUepeIW6KFHzpX8TKhbptBXXw=="], + "vary": ["vary@1.1.2", "", {}, "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg=="], - "vite": ["vite@6.2.4", "", { "dependencies": { "esbuild": "^0.25.0", "postcss": "^8.5.3", "rollup": "^4.30.1" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-veHMSew8CcRzhL5o8ONjy8gkfmFJAd5Ac16oxBUjlwgX3Gq2Wqr+qNC3TjPIpy7TPV/KporLga5GT9HqdrCizw=="], + "vfile": ["vfile@6.0.3", "", { "dependencies": { "@types/unist": "^3.0.0", "vfile-message": "^4.0.0" } }, "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q=="], + + "vfile-message": ["vfile-message@4.0.3", "", { "dependencies": { "@types/unist": "^3.0.0", "unist-util-stringify-position": "^4.0.0" } }, "sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw=="], + + "vite": ["vite@7.1.11", "", { "dependencies": { "esbuild": "^0.25.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", "rollup": "^4.43.0", "tinyglobby": "^0.2.15" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^20.19.0 || >=22.12.0", "jiti": ">=1.21.0", "less": "^4.0.0", "lightningcss": "^1.21.0", "sass": "^1.70.0", "sass-embedded": "^1.70.0", "stylus": ">=0.54.8", "sugarss": "^5.0.0", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-uzcxnSDVjAopEUjljkWh8EIrg6tlzrjFUfMcR1EVsRDGwf/ccef0qQPRyOrROwhrTDaApueq+ja+KLPlzR/zdg=="], "vite-imagetools": ["vite-imagetools@7.1.0", "", { "dependencies": { "@rollup/pluginutils": "^5.0.5", "imagetools-core": "^7.1.0", "sharp": "^0.34.1" } }, "sha512-Mqh1uUY2DEMuBOogFz5Rd7cAs70VP6wsdQh2IShrJ+qGk5f7yQa4pN8w0YMLlGIKYW1JfM8oXrznUwVkhG+qxg=="], - "vitefu": ["vitefu@1.0.6", "", { "peerDependencies": { "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0" }, "optionalPeers": ["vite"] }, "sha512-+Rex1GlappUyNN6UfwbVZne/9cYC4+R2XDk9xkNXBKMw6HQagdX9PgZ8V2v1WUSK1wfBLp7qbI1+XSNIlB1xmA=="], + "vitefu": ["vitefu@1.1.1", "", { "peerDependencies": { "vite": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0-beta.0" }, "optionalPeers": ["vite"] }, "sha512-B/Fegf3i8zh0yFbpzZ21amWzHmuNlLlmJT6n7bu5e+pCHUKQIfXSYokrqOBGEMMe9UG2sostKQF9mml/vYaWJQ=="], "webextension-polyfill": ["webextension-polyfill@0.12.0", "", {}, "sha512-97TBmpoWJEE+3nFBQ4VocyCdLKfw54rFaJ6EVQYLBCXqCIpLSZkwGgASpv4oPt9gdKCJ80RJlcmNzNn008Ag6Q=="], "webidl-conversions": ["webidl-conversions@3.0.1", "", {}, "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="], - "webpack-virtual-modules": ["webpack-virtual-modules@0.6.2", "", {}, "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ=="], - "whatwg-url": ["whatwg-url@5.0.0", "", { "dependencies": { "tr46": "~0.0.3", "webidl-conversions": "^3.0.0" } }, "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw=="], "which": ["which@2.0.2", "", { "dependencies": { "isexe": "^2.0.0" }, "bin": { "node-which": "./bin/node-which" } }, "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA=="], @@ -1730,6 +1709,8 @@ "ws": ["ws@8.18.0", "", { "peerDependencies": { "bufferutil": "^4.0.1", "utf-8-validate": ">=5.0.2" }, "optionalPeers": ["bufferutil", "utf-8-validate"] }, "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw=="], + "wuchale": ["wuchale@0.17.5", "", { "dependencies": { "@sveltejs/acorn-typescript": "^1.0.6", "acorn": "^8.15.0", "chokidar": "^4.0.3", "magic-string": "^0.30.19", "picomatch": "^4.0.3", "pofile": "^1.1.4", "tinyglobby": "^0.2.15" }, "bin": { "wuchale": "dist/cli/index.js" } }, "sha512-l3GAQhaLlktg2/uEASAHIq8NCecQkaQjGE7DTWukB6OHNe7dTfhWItrouTTFmY1xkMLHnvlHwA61h8coi14YjQ=="], + "xdg-basedir": ["xdg-basedir@4.0.0", "", {}, "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q=="], "xml-js": ["xml-js@1.6.11", "", { "dependencies": { "sax": "^1.2.4" }, "bin": { "xml-js": "./bin/cli.js" } }, "sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g=="], @@ -1748,10 +1729,16 @@ "zod-to-json-schema": ["zod-to-json-schema@3.24.5", "", { "peerDependencies": { "zod": "^3.24.1" } }, "sha512-/AuWwMP+YqiPbsJx5D6TfgRTc4kTLjsh5SOcd4bLsfUg2RcEXrFMJl1DGgdHy2aCfsIA/cr/1JM0xcB2GZji8g=="], + "zwitch": ["zwitch@2.0.4", "", {}, "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A=="], + "@cspotcode/source-map-support/@jridgewell/trace-mapping": ["@jridgewell/trace-mapping@0.3.9", "", { "dependencies": { "@jridgewell/resolve-uri": "^3.0.3", "@jridgewell/sourcemap-codec": "^1.4.10" } }, "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ=="], "@eslint-community/eslint-utils/eslint-visitor-keys": ["eslint-visitor-keys@3.4.3", "", {}, "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag=="], + "@eslint/config-array/debug": ["debug@4.4.0", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA=="], + + "@eslint/eslintrc/debug": ["debug@4.4.0", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA=="], + "@eslint/eslintrc/globals": ["globals@14.0.0", "", {}, "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ=="], "@fast-csv/format/@types/node": ["@types/node@14.18.63", "", {}, "sha512-fAtCfv4jJg+ExtXhvCkCqUKZ+4ok/JQk01qDKhL5BDDoS3AxKXhV5/MAVUZyQnSEd2GT92fkgZl0pz0Q0AzcIQ=="], @@ -1760,66 +1747,44 @@ "@humanfs/node/@humanwhocodes/retry": ["@humanwhocodes/retry@0.3.0", "", {}, "sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew=="], - "@inlang/paraglide-sveltekit/commander": ["commander@12.1.0", "", {}, "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA=="], - - "@inlang/recommend-ninja/@inlang/sdk": ["@inlang/sdk@0.36.3", "", { "dependencies": { "@inlang/json-types": "1.1.0", "@inlang/language-tag": "1.5.1", "@inlang/message": "2.1.0", "@inlang/message-lint-rule": "1.4.7", "@inlang/module": "1.2.14", "@inlang/plugin": "2.4.14", "@inlang/project-settings": "2.4.2", "@inlang/result": "1.1.0", "@inlang/translatable": "1.3.1", "@lix-js/client": "2.2.1", "@lix-js/fs": "2.2.0", "@sinclair/typebox": "^0.31.17", "debug": "^4.3.4", "dedent": "1.5.1", "deepmerge-ts": "^5.1.0", "murmurhash3js": "^3.0.1", "solid-js": "1.6.12", "throttle-debounce": "^5.0.0" } }, "sha512-wjsavc44H24v74tdEQ13FqZZcr43T106oEfHJnBLzEP55Zz2JJWABLund+DEdosZx+9E8mJBEW5JlVnlBwP3Zw=="], - - "@inlang/recommend-sherlock/@inlang/sdk": ["@inlang/sdk@0.36.4", "", { "dependencies": { "@inlang/json-types": "1.1.0", "@inlang/language-tag": "1.5.1", "@inlang/message": "2.1.0", "@inlang/message-lint-rule": "1.4.7", "@inlang/module": "1.2.14", "@inlang/plugin": "2.4.14", "@inlang/project-settings": "2.4.2", "@inlang/result": "1.1.0", "@inlang/translatable": "1.3.1", "@lix-js/client": "2.2.1", "@lix-js/fs": "2.2.0", "@sinclair/typebox": "^0.31.17", "debug": "^4.3.4", "dedent": "1.5.1", "deepmerge-ts": "^5.1.0", "murmurhash3js": "^3.0.1", "solid-js": "1.6.12", "throttle-debounce": "^5.0.0" } }, "sha512-fTr0mkDx2ViZt/8lxaF9Mxj3m8LaqIhcjMJy+CdHREMc9UvpUhGLB7elMp061YysxnN1CFccAgLRug5VWK3yWw=="], - - "@jest/schemas/@sinclair/typebox": ["@sinclair/typebox@0.27.8", "", {}, "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA=="], - - "@lix-js/client/pako": ["pako@1.0.11", "", {}, "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw=="], - - "@lix-js/fs/typescript": ["typescript@5.2.2", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w=="], - - "@melt-ui/pp/magic-string": ["magic-string@0.30.10", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" } }, "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ=="], + "@humanwhocodes/config-array/debug": ["debug@4.4.0", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA=="], "@metamask/utils/debug": ["debug@4.3.5", "", { "dependencies": { "ms": "2.1.2" } }, "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg=="], - "@octokit/auth-app/@octokit/types": ["@octokit/types@13.5.0", "", { "dependencies": { "@octokit/openapi-types": "^22.2.0" } }, "sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ=="], - - "@octokit/auth-oauth-app/@octokit/types": ["@octokit/types@13.5.0", "", { "dependencies": { "@octokit/openapi-types": "^22.2.0" } }, "sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ=="], - - "@octokit/auth-oauth-device/@octokit/types": ["@octokit/types@13.5.0", "", { "dependencies": { "@octokit/openapi-types": "^22.2.0" } }, "sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ=="], - - "@octokit/auth-oauth-user/@octokit/types": ["@octokit/types@13.5.0", "", { "dependencies": { "@octokit/openapi-types": "^22.2.0" } }, "sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ=="], - - "@octokit/core/@octokit/types": ["@octokit/types@13.5.0", "", { "dependencies": { "@octokit/openapi-types": "^22.2.0" } }, "sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ=="], - - "@octokit/endpoint/@octokit/types": ["@octokit/types@13.5.0", "", { "dependencies": { "@octokit/openapi-types": "^22.2.0" } }, "sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ=="], - - "@octokit/graphql/@octokit/types": ["@octokit/types@13.5.0", "", { "dependencies": { "@octokit/openapi-types": "^22.2.0" } }, "sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ=="], - - "@octokit/oauth-methods/@octokit/types": ["@octokit/types@13.5.0", "", { "dependencies": { "@octokit/openapi-types": "^22.2.0" } }, "sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ=="], - - "@octokit/request/@octokit/types": ["@octokit/types@13.5.0", "", { "dependencies": { "@octokit/openapi-types": "^22.2.0" } }, "sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ=="], - - "@octokit/request-error/@octokit/types": ["@octokit/types@13.5.0", "", { "dependencies": { "@octokit/openapi-types": "^22.2.0" } }, "sha512-HdqWTf5Z3qwDVlzCrP8UJquMwunpDiMPt5er+QjGzL4hqr/vBVY/MauQgS1xWxCDT1oMx1EULyqxncdCY/NVSQ=="], - "@rollup/pluginutils/estree-walker": ["estree-walker@2.0.2", "", {}, "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="], + "@rollup/pluginutils/picomatch": ["picomatch@4.0.2", "", {}, "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg=="], + "@storyblok/js/storyblok-js-client": ["storyblok-js-client@6.10.11", "", {}, "sha512-4FuGbQ93X7Ok1hvTRvMy/p4bfX/3C+Uw/m7Mv+wGZyX22IGdCe01qdwgD3CP1F9l5C0lEFCsWxc2PloiM9NutA=="], - "@sveltejs/kit/devalue": ["devalue@5.1.1", "", {}, "sha512-maua5KUiapvEwiEAe+XnlZ3Rh0GD+qI1J/nb9vrJc3muPXvcF/8gXYTWF76+5DAqHyDUtOIImEuo0YKE9mshVw=="], + "@sveltejs/enhanced-img/magic-string": ["magic-string@0.30.17", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0" } }, "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA=="], - "@sveltejs/kit/magic-string": ["magic-string@0.30.12", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0" } }, "sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw=="], + "@sveltejs/kit/magic-string": ["magic-string@0.30.19", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.5" } }, "sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw=="], - "@types/glob/@types/node": ["@types/node@20.14.12", "", { "dependencies": { "undici-types": "~5.26.4" } }, "sha512-r7wNXakLeSsGT0H1AU863vS2wa5wBOK4bWMjZz2wj+8nBx+m5PeIn0k8AloSLpRuiwdRQZwarZqHE4FNArPuJQ=="], + "@sveltejs/vite-plugin-svelte/magic-string": ["magic-string@0.30.19", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.5" } }, "sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw=="], - "@types/jsonwebtoken/@types/node": ["@types/node@20.14.12", "", { "dependencies": { "undici-types": "~5.26.4" } }, "sha512-r7wNXakLeSsGT0H1AU863vS2wa5wBOK4bWMjZz2wj+8nBx+m5PeIn0k8AloSLpRuiwdRQZwarZqHE4FNArPuJQ=="], + "@types/glob/@types/node": ["@types/node@20.14.12", "", { "dependencies": { "undici-types": "~5.26.4" } }, "sha512-r7wNXakLeSsGT0H1AU863vS2wa5wBOK4bWMjZz2wj+8nBx+m5PeIn0k8AloSLpRuiwdRQZwarZqHE4FNArPuJQ=="], "@types/node-forge/@types/node": ["@types/node@20.14.12", "", { "dependencies": { "undici-types": "~5.26.4" } }, "sha512-r7wNXakLeSsGT0H1AU863vS2wa5wBOK4bWMjZz2wj+8nBx+m5PeIn0k8AloSLpRuiwdRQZwarZqHE4FNArPuJQ=="], "@types/ws/@types/node": ["@types/node@20.14.12", "", { "dependencies": { "undici-types": "~5.26.4" } }, "sha512-r7wNXakLeSsGT0H1AU863vS2wa5wBOK4bWMjZz2wj+8nBx+m5PeIn0k8AloSLpRuiwdRQZwarZqHE4FNArPuJQ=="], + "@typescript-eslint/eslint-plugin/ignore": ["ignore@7.0.5", "", {}, "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg=="], + "@typescript-eslint/typescript-estree/minimatch": ["minimatch@9.0.5", "", { "dependencies": { "brace-expansion": "^2.0.1" } }, "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="], + "@typescript-eslint/typescript-estree/semver": ["semver@7.7.2", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA=="], + + "@typescript-eslint/visitor-keys/eslint-visitor-keys": ["eslint-visitor-keys@4.2.1", "", {}, "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ=="], + "@wharfkit/cli/eslint": ["eslint@8.57.1", "", { "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", "@eslint/eslintrc": "^2.1.4", "@eslint/js": "8.57.1", "@humanwhocodes/config-array": "^0.13.0", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", "@ungap/structured-clone": "^1.2.0", "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", "eslint-scope": "^7.2.2", "eslint-visitor-keys": "^3.4.3", "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", "file-entry-cache": "^6.0.1", "find-up": "^5.0.0", "glob-parent": "^6.0.2", "globals": "^13.19.0", "graphemer": "^1.4.0", "ignore": "^5.2.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", "js-yaml": "^4.1.0", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.4.1", "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", "optionator": "^0.9.3", "strip-ansi": "^6.0.1", "text-table": "^0.2.0" }, "bin": { "eslint": "bin/eslint.js" } }, "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA=="], "@wharfkit/cli/prettier": ["prettier@2.8.8", "", { "bin": { "prettier": "bin-prettier.js" } }, "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q=="], "@wharfkit/cli/typescript": ["typescript@4.9.5", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g=="], + "@wuchale/vite-plugin/wuchale": ["wuchale@0.17.4", "", { "dependencies": { "@sveltejs/acorn-typescript": "^1.0.6", "acorn": "^8.15.0", "chokidar": "^4.0.3", "magic-string": "^0.30.19", "picomatch": "^4.0.3", "pofile": "^1.1.4", "tinyglobby": "^0.2.15" }, "bin": { "wuchale": "dist/cli/index.js" } }, "sha512-lQTWe/xlzH1lmo6JtBXLla8O6wPv7QTxcHUw4ZnrHWHmUNilqTbg6Fa9gzI0c4/8cPTbis0VhhDPSry9MR8euA=="], + "accepts/mime-types": ["mime-types@3.0.1", "", { "dependencies": { "mime-db": "^1.54.0" } }, "sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA=="], "acorn-walk/acorn": ["acorn@8.12.1", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg=="], @@ -1830,6 +1795,8 @@ "axios/form-data": ["form-data@4.0.0", "", { "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", "mime-types": "^2.1.12" } }, "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww=="], + "body-parser/debug": ["debug@4.4.0", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA=="], + "cacheable-request/get-stream": ["get-stream@5.2.0", "", { "dependencies": { "pump": "^3.0.0" } }, "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA=="], "cacheable-request/keyv": ["keyv@3.1.0", "", { "dependencies": { "json-buffer": "3.0.0" } }, "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA=="], @@ -1838,10 +1805,18 @@ "capnp-ts/debug": ["debug@4.3.5", "", { "dependencies": { "ms": "2.1.2" } }, "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg=="], + "eslint/debug": ["debug@4.4.0", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA=="], + + "espree/acorn": ["acorn@8.14.1", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg=="], + + "esrap/@jridgewell/sourcemap-codec": ["@jridgewell/sourcemap-codec@1.5.5", "", {}, "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og=="], + "estree-walker/@types/estree": ["@types/estree@1.0.5", "", {}, "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw=="], "express/cookie": ["cookie@0.7.2", "", {}, "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w=="], + "express/debug": ["debug@4.4.0", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA=="], + "express/mime-types": ["mime-types@3.0.1", "", { "dependencies": { "mime-db": "^1.54.0" } }, "sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA=="], "external-editor/iconv-lite": ["iconv-lite@0.4.24", "", { "dependencies": { "safer-buffer": ">= 2.1.2 < 3" } }, "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA=="], @@ -1850,16 +1825,18 @@ "figures/escape-string-regexp": ["escape-string-regexp@1.0.5", "", {}, "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg=="], + "finalhandler/debug": ["debug@4.4.0", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA=="], + "got/@sindresorhus/is": ["@sindresorhus/is@0.14.0", "", {}, "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ=="], "json-schema-to-typescript/prettier": ["prettier@2.8.8", "", { "bin": { "prettier": "bin-prettier.js" } }, "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q=="], - "jsonwebtoken/ms": ["ms@2.1.2", "", {}, "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="], - "lightningcss/detect-libc": ["detect-libc@2.0.3", "", {}, "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw=="], "make-dir/semver": ["semver@6.3.1", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="], + "mdast-util-find-and-replace/escape-string-regexp": ["escape-string-regexp@5.0.0", "", {}, "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw=="], + "melt/@floating-ui/dom": ["@floating-ui/dom@1.7.2", "", { "dependencies": { "@floating-ui/core": "^1.7.2", "@floating-ui/utils": "^0.2.10" } }, "sha512-7cfaOQuCS27HD7DX+6ib2OrnW+b4ZBwDNnCcT0uTyidcmyWb03FnQqJybDBoCnpdxwBSfA94UAYlRCt7mV+TbA=="], "melt/nanoid": ["nanoid@5.1.5", "", { "bin": { "nanoid": "bin/nanoid.js" } }, "sha512-Ir/+ZpE9fDsNH0hQ3C68uyThDXzYcim2EqcZ8zn8Chtt1iylPT9xXJB0kPCnqzgcEGikO9RxSrh63MsmVCU7Fw=="], @@ -1880,20 +1857,22 @@ "postcss-load-config/yaml": ["yaml@1.10.2", "", {}, "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg=="], - "posthog-node/axios": ["axios@1.7.7", "", { "dependencies": { "follow-redirects": "^1.15.6", "form-data": "^4.0.0", "proxy-from-env": "^1.1.0" } }, "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q=="], - "pretty-format/ansi-styles": ["ansi-styles@5.2.0", "", {}, "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA=="], "rc/ini": ["ini@1.3.8", "", {}, "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew=="], "rc/strip-json-comments": ["strip-json-comments@2.0.1", "", {}, "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ=="], + "rollup/@types/estree": ["@types/estree@1.0.8", "", {}, "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w=="], + "rollup-plugin-inject/estree-walker": ["estree-walker@0.6.1", "", {}, "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w=="], "rollup-plugin-inject/magic-string": ["magic-string@0.25.9", "", { "dependencies": { "sourcemap-codec": "^1.4.8" } }, "sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ=="], "rollup-pluginutils/estree-walker": ["estree-walker@0.6.1", "", {}, "sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w=="], + "router/debug": ["debug@4.4.0", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA=="], + "router/path-to-regexp": ["path-to-regexp@8.2.0", "", {}, "sha512-TdrF7fW9Rphjq4RjrW0Kp2AW0Ahwu9sRGTkS6bvDi0SCwZlEZYmcfDbEsTz8RVk0EHIS/Vd1bv3JhG+1xZuAyQ=="], "runed/esm-env": ["esm-env@1.0.0", "", {}, "sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA=="], @@ -1906,16 +1885,22 @@ "semver-diff/semver": ["semver@6.3.1", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA=="], + "send/debug": ["debug@4.4.0", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA=="], + "send/mime-types": ["mime-types@3.0.1", "", { "dependencies": { "mime-db": "^1.54.0" } }, "sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA=="], "sharp/semver": ["semver@7.7.2", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA=="], "storyblok/commander": ["commander@5.1.0", "", {}, "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg=="], + "svelte/magic-string": ["magic-string@0.30.19", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.5" } }, "sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw=="], + "svelte-eslint-parser/eslint-visitor-keys": ["eslint-visitor-keys@4.0.0", "", {}, "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw=="], "svelte-eslint-parser/espree": ["espree@10.1.0", "", { "dependencies": { "acorn": "^8.12.0", "acorn-jsx": "^5.3.2", "eslint-visitor-keys": "^4.0.0" } }, "sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA=="], + "tinyglobby/fdir": ["fdir@6.5.0", "", { "peerDependencies": { "picomatch": "^3 || ^4" }, "optionalPeers": ["picomatch"] }, "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg=="], + "type-is/mime-types": ["mime-types@3.0.1", "", { "dependencies": { "mime-db": "^1.54.0" } }, "sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA=="], "unicove-components/@lucide/svelte": ["@lucide/svelte@0.516.0", "", { "peerDependencies": { "svelte": "^5" } }, "sha512-Ovkg2IgUeF85guSbnG9iPwUMMRuz+rdh8HsnKbD1uEY2Wv3d9qf0ERKFrz0ePZqmPXOedCPcf2a/rvRsqkaZcw=="], @@ -1924,43 +1909,29 @@ "unicove-components/tailwind-merge": ["tailwind-merge@3.3.1", "", {}, "sha512-gBXpgUm/3rp1lMZZrM/w7D8GKqshif0zAymAhbCyIt8KMe+0v9DQ7cdYLR4FHH/cKpdTXb+A/tKKU3eolfsI+g=="], - "unplugin/acorn": ["acorn@8.12.1", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg=="], - "util/inherits": ["inherits@2.0.3", "", {}, "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw=="], "vite/esbuild": ["esbuild@0.25.2", "", { "optionalDependencies": { "@esbuild/aix-ppc64": "0.25.2", "@esbuild/android-arm": "0.25.2", "@esbuild/android-arm64": "0.25.2", "@esbuild/android-x64": "0.25.2", "@esbuild/darwin-arm64": "0.25.2", "@esbuild/darwin-x64": "0.25.2", "@esbuild/freebsd-arm64": "0.25.2", "@esbuild/freebsd-x64": "0.25.2", "@esbuild/linux-arm": "0.25.2", "@esbuild/linux-arm64": "0.25.2", "@esbuild/linux-ia32": "0.25.2", "@esbuild/linux-loong64": "0.25.2", "@esbuild/linux-mips64el": "0.25.2", "@esbuild/linux-ppc64": "0.25.2", "@esbuild/linux-riscv64": "0.25.2", "@esbuild/linux-s390x": "0.25.2", "@esbuild/linux-x64": "0.25.2", "@esbuild/netbsd-arm64": "0.25.2", "@esbuild/netbsd-x64": "0.25.2", "@esbuild/openbsd-arm64": "0.25.2", "@esbuild/openbsd-x64": "0.25.2", "@esbuild/sunos-x64": "0.25.2", "@esbuild/win32-arm64": "0.25.2", "@esbuild/win32-ia32": "0.25.2", "@esbuild/win32-x64": "0.25.2" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ=="], + "vite/fdir": ["fdir@6.5.0", "", { "peerDependencies": { "picomatch": "^3 || ^4" }, "optionalPeers": ["picomatch"] }, "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg=="], + + "vite/postcss": ["postcss@8.5.6", "", { "dependencies": { "nanoid": "^3.3.11", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" } }, "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg=="], + "wrangler/chokidar": ["chokidar@3.6.0", "", { "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", "readdirp": "~3.6.0" }, "optionalDependencies": { "fsevents": "~2.3.2" } }, "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw=="], "wrangler/esbuild": ["esbuild@0.17.19", "", { "optionalDependencies": { "@esbuild/android-arm": "0.17.19", "@esbuild/android-arm64": "0.17.19", "@esbuild/android-x64": "0.17.19", "@esbuild/darwin-arm64": "0.17.19", "@esbuild/darwin-x64": "0.17.19", "@esbuild/freebsd-arm64": "0.17.19", "@esbuild/freebsd-x64": "0.17.19", "@esbuild/linux-arm": "0.17.19", "@esbuild/linux-arm64": "0.17.19", "@esbuild/linux-ia32": "0.17.19", "@esbuild/linux-loong64": "0.17.19", "@esbuild/linux-mips64el": "0.17.19", "@esbuild/linux-ppc64": "0.17.19", "@esbuild/linux-riscv64": "0.17.19", "@esbuild/linux-s390x": "0.17.19", "@esbuild/linux-x64": "0.17.19", "@esbuild/netbsd-x64": "0.17.19", "@esbuild/openbsd-x64": "0.17.19", "@esbuild/sunos-x64": "0.17.19", "@esbuild/win32-arm64": "0.17.19", "@esbuild/win32-ia32": "0.17.19", "@esbuild/win32-x64": "0.17.19" }, "bin": { "esbuild": "bin/esbuild" } }, "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw=="], "wrangler/nanoid": ["nanoid@3.3.7", "", { "bin": { "nanoid": "bin/nanoid.cjs" } }, "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g=="], - "youch/cookie": ["cookie@0.5.0", "", {}, "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw=="], + "wuchale/magic-string": ["magic-string@0.30.19", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.5" } }, "sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw=="], - "@inlang/recommend-ninja/@inlang/sdk/debug": ["debug@4.3.5", "", { "dependencies": { "ms": "2.1.2" } }, "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg=="], + "youch/cookie": ["cookie@0.5.0", "", {}, "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw=="], "@metamask/utils/debug/ms": ["ms@2.1.2", "", {}, "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="], - "@octokit/auth-app/@octokit/types/@octokit/openapi-types": ["@octokit/openapi-types@22.2.0", "", {}, "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg=="], - - "@octokit/auth-oauth-app/@octokit/types/@octokit/openapi-types": ["@octokit/openapi-types@22.2.0", "", {}, "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg=="], + "@sveltejs/kit/magic-string/@jridgewell/sourcemap-codec": ["@jridgewell/sourcemap-codec@1.5.5", "", {}, "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og=="], - "@octokit/auth-oauth-device/@octokit/types/@octokit/openapi-types": ["@octokit/openapi-types@22.2.0", "", {}, "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg=="], - - "@octokit/auth-oauth-user/@octokit/types/@octokit/openapi-types": ["@octokit/openapi-types@22.2.0", "", {}, "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg=="], - - "@octokit/core/@octokit/types/@octokit/openapi-types": ["@octokit/openapi-types@22.2.0", "", {}, "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg=="], - - "@octokit/endpoint/@octokit/types/@octokit/openapi-types": ["@octokit/openapi-types@22.2.0", "", {}, "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg=="], - - "@octokit/graphql/@octokit/types/@octokit/openapi-types": ["@octokit/openapi-types@22.2.0", "", {}, "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg=="], - - "@octokit/oauth-methods/@octokit/types/@octokit/openapi-types": ["@octokit/openapi-types@22.2.0", "", {}, "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg=="], - - "@octokit/request-error/@octokit/types/@octokit/openapi-types": ["@octokit/openapi-types@22.2.0", "", {}, "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg=="], - - "@octokit/request/@octokit/types/@octokit/openapi-types": ["@octokit/openapi-types@22.2.0", "", {}, "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg=="], + "@sveltejs/vite-plugin-svelte/magic-string/@jridgewell/sourcemap-codec": ["@jridgewell/sourcemap-codec@1.5.5", "", {}, "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og=="], "@typescript-eslint/typescript-estree/minimatch/brace-expansion": ["brace-expansion@2.0.1", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="], @@ -1968,6 +1939,8 @@ "@wharfkit/cli/eslint/@eslint/js": ["@eslint/js@8.57.1", "", {}, "sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q=="], + "@wharfkit/cli/eslint/debug": ["debug@4.4.0", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA=="], + "@wharfkit/cli/eslint/eslint-scope": ["eslint-scope@7.2.2", "", { "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^5.2.0" } }, "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg=="], "@wharfkit/cli/eslint/eslint-visitor-keys": ["eslint-visitor-keys@3.4.3", "", {}, "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag=="], @@ -1978,6 +1951,8 @@ "@wharfkit/cli/eslint/globals": ["globals@13.24.0", "", { "dependencies": { "type-fest": "^0.20.2" } }, "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ=="], + "@wuchale/vite-plugin/wuchale/magic-string": ["magic-string@0.30.19", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.5" } }, "sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw=="], + "accepts/mime-types/mime-db": ["mime-db@1.54.0", "", {}, "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ=="], "cacheable-request/keyv/json-buffer": ["json-buffer@3.0.0", "", {}, "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ=="], @@ -1990,12 +1965,12 @@ "melt/@floating-ui/dom/@floating-ui/utils": ["@floating-ui/utils@0.2.10", "", {}, "sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ=="], - "posthog-node/axios/form-data": ["form-data@4.0.0", "", { "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", "mime-types": "^2.1.12" } }, "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww=="], - "send/mime-types/mime-db": ["mime-db@1.54.0", "", {}, "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ=="], "svelte-eslint-parser/espree/acorn": ["acorn@8.12.1", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg=="], + "svelte/magic-string/@jridgewell/sourcemap-codec": ["@jridgewell/sourcemap-codec@1.5.5", "", {}, "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og=="], + "type-is/mime-types/mime-db": ["mime-db@1.54.0", "", {}, "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ=="], "unicove-components/@melt-ui/svelte/@floating-ui/dom": ["@floating-ui/dom@1.7.2", "", { "dependencies": { "@floating-ui/core": "^1.7.2", "@floating-ui/utils": "^0.2.10" } }, "sha512-7cfaOQuCS27HD7DX+6ib2OrnW+b4ZBwDNnCcT0uTyidcmyWb03FnQqJybDBoCnpdxwBSfA94UAYlRCt7mV+TbA=="], @@ -2052,6 +2027,8 @@ "vite/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.25.2", "", { "os": "win32", "cpu": "x64" }, "sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA=="], + "vite/postcss/nanoid": ["nanoid@3.3.11", "", { "bin": { "nanoid": "bin/nanoid.cjs" } }, "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w=="], + "wrangler/chokidar/glob-parent": ["glob-parent@5.1.2", "", { "dependencies": { "is-glob": "^4.0.1" } }, "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow=="], "wrangler/chokidar/readdirp": ["readdirp@3.6.0", "", { "dependencies": { "picomatch": "^2.2.1" } }, "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA=="], @@ -2100,10 +2077,14 @@ "wrangler/esbuild/@esbuild/win32-x64": ["@esbuild/win32-x64@0.17.19", "", { "os": "win32", "cpu": "x64" }, "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA=="], - "@inlang/recommend-ninja/@inlang/sdk/debug/ms": ["ms@2.1.2", "", {}, "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="], + "wuchale/magic-string/@jridgewell/sourcemap-codec": ["@jridgewell/sourcemap-codec@1.5.5", "", {}, "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og=="], + + "@wharfkit/cli/eslint/espree/acorn": ["acorn@8.14.1", "", { "bin": { "acorn": "bin/acorn" } }, "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg=="], "@wharfkit/cli/eslint/file-entry-cache/flat-cache": ["flat-cache@3.2.0", "", { "dependencies": { "flatted": "^3.2.9", "keyv": "^4.5.3", "rimraf": "^3.0.2" } }, "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw=="], + "@wuchale/vite-plugin/wuchale/magic-string/@jridgewell/sourcemap-codec": ["@jridgewell/sourcemap-codec@1.5.5", "", {}, "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og=="], + "unicove-components/@melt-ui/svelte/@floating-ui/dom/@floating-ui/core": ["@floating-ui/core@1.7.2", "", { "dependencies": { "@floating-ui/utils": "^0.2.10" } }, "sha512-wNB5ooIKHQc+Kui96jE/n69rHFWAVoxn5CAzL1Xdd8FG03cgY3MLO+GF9U3W737fYDSgPWA6MReKhBQBop6Pcw=="], "unicove-components/@melt-ui/svelte/@floating-ui/dom/@floating-ui/utils": ["@floating-ui/utils@0.2.10", "", {}, "sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ=="], diff --git a/bunfig.toml b/bunfig.toml new file mode 100644 index 000000000..8755352e5 --- /dev/null +++ b/bunfig.toml @@ -0,0 +1,2 @@ +[test] +preload = ["./test/setup.ts"] diff --git a/configs/.env.jungle4 b/configs/.env.jungle4 index 63138a398..74f0a67ad 100644 --- a/configs/.env.jungle4 +++ b/configs/.env.jungle4 @@ -12,6 +12,7 @@ PUBLIC_SYSTEM_TOKEN_LOCKED_SUPPLY="eosio,eosio.null,core.vaulta" PUBLIC_LEGACY_TOKEN_CONTRACT="eosio.token" PUBLIC_LEGACY_TOKEN_SYMBOL="4,EOS" PUBLIC_LEGACY_TOKEN_EXCHANGERATE="1.0000 EOS" +PUBLIC_LEGACY_TOKEN_EXCHANGEREVERSABLE=true PUBLIC_SYSTEM_CONTRACT="core.vaulta" PUBLIC_SYSTEM_TOKEN_LOGO_LIGHT=https://assets.wharfkit.com/chain/jungle.png PUBLIC_SYSTEM_TOKEN_LOGO_DARK=https://assets.wharfkit.com/chain/jungle.png @@ -20,7 +21,6 @@ PUBLIC_LEGACY_TOKEN_LOGO_DARK=https://assets.wharfkit.com/chain/eos.png PUBLIC_API_CHAIN="https://jungle4.greymass.com" PUBLIC_API_HISTORY="https://jungle4.greymass.com" -PUBLIC_ANALYTICS_DOMAIN="jungle4.unicove.com" PUBLIC_STORYBLOK_TOKEN= PUBLIC_STORYBLOK_REGION= @@ -28,6 +28,8 @@ PUBLIC_STORYBLOK_CONTENT_TYPE= PUBLIC_STORYBLOK_SOURCE= PUBLIC_FEATURE_CMC_PAIRS= +PUBLIC_FEATURE_CREATE_CONTRACT=create.gm +PUBLIC_FEATURE_BIDNAME=true PUBLIC_FEATURE_COINBASE_ASSETS= PUBLIC_FEATURE_DELPHIHELPER=false PUBLIC_FEATURE_DELPHIORACLE=false @@ -35,33 +37,44 @@ PUBLIC_FEATURE_DIRECTFUNDING=false PUBLIC_FEATURE_EOSNTIME=false PUBLIC_FEATURE_GIFTEDRAM=true PUBLIC_FEATURE_LIGHTAPI=false -PUBLIC_FEATURE_METAMASK_PRODUCT_NAME="EOS Wallet" +PUBLIC_FEATURE_METAMASK_PRODUCT_NAME="Vaulta Wallet" PUBLIC_FEATURE_METAMASK_SERVICE_URL="https://dev.account-creation-portal.pages.dev/buy" -PUBLIC_FEATURE_METAMASK_SNAP_ORIGIN="npm:@greymass/eos-wallet" +PUBLIC_FEATURE_MSIGAPI=true +PUBLIC_FEATURE_METAMASK_SNAP_ORIGIN="npm:vaulta-wallet" PUBLIC_FEATURE_METAMASK=true PUBLIC_FEATURE_POWERUP=true +PUBLIC_FEATURE_PROPOSALS=true PUBLIC_FEATURE_RAMMARKET=true PUBLIC_FEATURE_RAMTRANSFER=true PUBLIC_FEATURE_RENTREX=true PUBLIC_FEATURE_REX=true PUBLIC_FEATURE_ROBO=true +PUBLIC_FEATURE_ROBO2=true +PUBLIC_FEATURE_SENTIMENT=true +PUBLIC_FEATURE_SENTIMENT_CONTRACT=sentiment.gm +PUBLIC_FEATURE_DISCUSSION=false +PUBLIC_FEATURE_DISCUSSION_CONTRACT=msg.gm PUBLIC_FEATURE_STAKERESOURCE=true PUBLIC_FEATURE_STAKING=true +PUBLIC_FEATURE_STATINDEX=false PUBLIC_FEATURE_TIMESERIES=false PUBLIC_FEATURE_UNICOVE_CONTRACT_API=unicove.gm -PUBLIC_FEATURE_UNICOVE_CONTRACT_API_TOKENS=02044a554e474c4500000100a6823403ea305504454f5300000000000100a6823403ea3055 +PUBLIC_FEATURE_UNICOVE_CONTRACT_API_TOKENS='[{"symbol":"4,JUNGLE","contract":"eosio.token"},{"symbol":"4,EOS","contract":"eosio.token"},{"symbol":"0,SCRAP","contract":"scrap.gm"}]' PUBLIC_FEATURE_VAULTA_CORE_CONTRACT=core.vaulta -PUBLIC_FEATURE_WEB_AUTHENTICATOR_URL=https://jungle4-account.unicove.com +PUBLIC_FEATURE_VOTE_DECAY=52 PUBLIC_FEATURE_WRAM=false PUBLIC_WALLET_ANCHOR=true PUBLIC_WALLET_METAMASK=true -PUBLIC_WALLET_WEB_AUTHENTICATOR=true BACKEND_API_CHAIN="https://jungle4.greymass.com" BACKEND_API_HISTORY="https://jungle4.greymass.com" BACKEND_API_LIGHTAPI= BACKEND_API_METRICS= +BACKEND_API_ROBO2="https://jungle4-test.unicove.com" +BACKEND_API_SENTIMENT= +BACKEND_API_MSG= +BACKEND_API_STATINDEX= COINBASE_API_KEY_NAME= -COINBASE_API_KEY_SECRET= +COINBASE_API_KEY_SECRET= \ No newline at end of file diff --git a/configs/.env.kylin b/configs/.env.kylin index eae6fb931..53aa85f3a 100644 --- a/configs/.env.kylin +++ b/configs/.env.kylin @@ -20,7 +20,6 @@ PUBLIC_LEGACY_TOKEN_LOGO_DARK= PUBLIC_API_CHAIN="https://kylintestnet.greymass.com" PUBLIC_API_HISTORY="https://kylintestnet.greymass.com" -PUBLIC_ANALYTICS_DOMAIN="kylin.unicove.com" PUBLIC_STORYBLOK_TOKEN= PUBLIC_STORYBLOK_REGION= @@ -28,6 +27,8 @@ PUBLIC_STORYBLOK_CONTENT_TYPE= PUBLIC_STORYBLOK_SOURCE= PUBLIC_FEATURE_CMC_PAIRS= +PUBLIC_FEATURE_CREATE_CONTRACT= +PUBLIC_FEATURE_BIDNAME=true PUBLIC_FEATURE_COINBASE_ASSETS= PUBLIC_FEATURE_DELPHIHELPER=false PUBLIC_FEATURE_DELPHIORACLE=false @@ -37,25 +38,38 @@ PUBLIC_FEATURE_GIFTEDRAM=false PUBLIC_FEATURE_LIGHTAPI=false PUBLIC_FEATURE_METAMASK_PRODUCT_NAME= PUBLIC_FEATURE_METAMASK_SERVICE_URL= +PUBLIC_FEATURE_MSIGAPI=false PUBLIC_FEATURE_METAMASK_SNAP_ORIGIN= PUBLIC_FEATURE_METAMASK=false PUBLIC_FEATURE_POWERUP=true +PUBLIC_FEATURE_PROPOSALS=false PUBLIC_FEATURE_RAMMARKET=true PUBLIC_FEATURE_RAMTRANSFER=true PUBLIC_FEATURE_RENTREX=true PUBLIC_FEATURE_REX=true PUBLIC_FEATURE_ROBO=true +PUBLIC_FEATURE_ROBO2=false +PUBLIC_FEATURE_SENTIMENT=false +PUBLIC_FEATURE_SENTIMENT_CONTRACT=sentiment.gm +PUBLIC_FEATURE_DISCUSSION=false +PUBLIC_FEATURE_DISCUSSION_CONTRACT=msg PUBLIC_FEATURE_STAKERESOURCE=true PUBLIC_FEATURE_STAKING=false +PUBLIC_FEATURE_STATINDEX=false PUBLIC_FEATURE_TIMESERIES=false PUBLIC_FEATURE_UNICOVE_CONTRACT_API= PUBLIC_FEATURE_VAULTA_CORE_CONTRACT= +PUBLIC_FEATURE_VOTE_DECAY=52 PUBLIC_FEATURE_WRAM=false BACKEND_API_CHAIN="https://kylintestnet.greymass.com" BACKEND_API_HISTORY="https://kylintestnet.greymass.com" BACKEND_API_LIGHTAPI= BACKEND_API_METRICS= +BACKEND_API_ROBO2= COINBASE_API_KEY_NAME= COINBASE_API_KEY_SECRET= +BACKEND_API_SENTIMENT= +BACKEND_API_MSG= +BACKEND_API_STATINDEX= \ No newline at end of file diff --git a/configs/.env.telos b/configs/.env.telos index 31abea298..0415967d3 100644 --- a/configs/.env.telos +++ b/configs/.env.telos @@ -20,7 +20,6 @@ PUBLIC_LEGACY_TOKEN_LOGO_DARK= PUBLIC_API_CHAIN="https://telos.greymass.com" PUBLIC_API_HISTORY="https://telos.greymass.com" -PUBLIC_ANALYTICS_DOMAIN="telos.unicove.com" PUBLIC_STORYBLOK_TOKEN= PUBLIC_STORYBLOK_REGION= @@ -28,6 +27,8 @@ PUBLIC_STORYBLOK_CONTENT_TYPE= PUBLIC_STORYBLOK_SOURCE= PUBLIC_FEATURE_CMC_PAIRS= +PUBLIC_FEATURE_CREATE_CONTRACT= +PUBLIC_FEATURE_BIDNAME=true PUBLIC_FEATURE_COINBASE_ASSETS= PUBLIC_FEATURE_DELPHIHELPER=false PUBLIC_FEATURE_DELPHIORACLE=true @@ -37,25 +38,40 @@ PUBLIC_FEATURE_GIFTEDRAM=false PUBLIC_FEATURE_LIGHTAPI=false PUBLIC_FEATURE_METAMASK_PRODUCT_NAME= PUBLIC_FEATURE_METAMASK_SERVICE_URL= +PUBLIC_FEATURE_MSIGAPI=false PUBLIC_FEATURE_METAMASK_SNAP_ORIGIN= PUBLIC_FEATURE_METAMASK=false PUBLIC_FEATURE_POWERUP=false +PUBLIC_FEATURE_PROPOSALS=false PUBLIC_FEATURE_RAMMARKET=true PUBLIC_FEATURE_RAMTRANSFER=false PUBLIC_FEATURE_RENTREX=false PUBLIC_FEATURE_REX=true PUBLIC_FEATURE_ROBO=true +PUBLIC_FEATURE_ROBO2=false +PUBLIC_FEATURE_SENTIMENT=false +PUBLIC_FEATURE_SENTIMENT_CONTRACT=sentiment.gm +PUBLIC_FEATURE_DISCUSSION=false +PUBLIC_FEATURE_DISCUSSION_CONTRACT=msg PUBLIC_FEATURE_STAKERESOURCE=true PUBLIC_FEATURE_STAKING=false +PUBLIC_FEATURE_STATINDEX=false PUBLIC_FEATURE_TIMESERIES=false PUBLIC_FEATURE_UNICOVE_CONTRACT_API= PUBLIC_FEATURE_VAULTA_CORE_CONTRACT= +PUBLIC_FEATURE_VOTE_DECAY=52 PUBLIC_FEATURE_WRAM=false BACKEND_API_CHAIN="https://telos.greymass.com" BACKEND_API_HISTORY="https://telos.greymass.com" BACKEND_API_LIGHTAPI= BACKEND_API_METRICS= +BACKEND_API_ROBO2= COINBASE_API_KEY_NAME= COINBASE_API_KEY_SECRET= +BACKEND_API_SENTIMENT= +BACKEND_API_MSG= +BACKEND_API_STATINDEX= + +PUBLIC_FEATURE_VOTE_DECAY=52 diff --git a/configs/.env.telostestnet b/configs/.env.telostestnet index 8741f33c0..7da95571d 100644 --- a/configs/.env.telostestnet +++ b/configs/.env.telostestnet @@ -17,10 +17,10 @@ PUBLIC_SYSTEM_TOKEN_LOGO_LIGHT=https://assets.wharfkit.com/chain/telos.png PUBLIC_SYSTEM_TOKEN_LOGO_DARK=https://assets.wharfkit.com/chain/telos.png PUBLIC_LEGACY_TOKEN_LOGO_LIGHT= PUBLIC_LEGACY_TOKEN_LOGO_DARK= +PUBLIC_FEATURE_VOTE_DECAY=52 PUBLIC_API_CHAIN="https://telostestnet.greymass.com" PUBLIC_API_HISTORY="https://telostestnet.greymass.com" -PUBLIC_ANALYTICS_DOMAIN="telostestnet.unicove.com" PUBLIC_STORYBLOK_TOKEN= PUBLIC_STORYBLOK_REGION= @@ -28,6 +28,8 @@ PUBLIC_STORYBLOK_CONTENT_TYPE= PUBLIC_STORYBLOK_SOURCE= PUBLIC_FEATURE_CMC_PAIRS= +PUBLIC_FEATURE_CREATE_CONTRACT= +PUBLIC_FEATURE_BIDNAME=true PUBLIC_FEATURE_COINBASE_ASSETS= PUBLIC_FEATURE_DELPHIHELPER=false PUBLIC_FEATURE_DELPHIORACLE=true @@ -37,16 +39,24 @@ PUBLIC_FEATURE_GIFTEDRAM=false PUBLIC_FEATURE_LIGHTAPI=false PUBLIC_FEATURE_METAMASK_PRODUCT_NAME= PUBLIC_FEATURE_METAMASK_SERVICE_URL= +PUBLIC_FEATURE_MSIGAPI=false PUBLIC_FEATURE_METAMASK_SNAP_ORIGIN= PUBLIC_FEATURE_METAMASK=false PUBLIC_FEATURE_POWERUP=false +PUBLIC_FEATURE_PROPOSALS=false PUBLIC_FEATURE_RAMMARKET=true PUBLIC_FEATURE_RAMTRANSFER=false PUBLIC_FEATURE_RENTREX=false PUBLIC_FEATURE_REX=true PUBLIC_FEATURE_ROBO=true +PUBLIC_FEATURE_ROBO2=false +PUBLIC_FEATURE_SENTIMENT=false +PUBLIC_FEATURE_SENTIMENT_CONTRACT=sentiment.gm +PUBLIC_FEATURE_DISCUSSION=false +PUBLIC_FEATURE_DISCUSSION_CONTRACT=msg PUBLIC_FEATURE_STAKERESOURCE=true PUBLIC_FEATURE_STAKING=false +PUBLIC_FEATURE_STATINDEX=false PUBLIC_FEATURE_TIMESERIES=false PUBLIC_FEATURE_UNICOVE_CONTRACT_API= PUBLIC_FEATURE_VAULTA_CORE_CONTRACT= @@ -56,6 +66,10 @@ BACKEND_API_CHAIN="https://telostestnet.greymass.com" BACKEND_API_HISTORY="https://telostestnet.greymass.com" BACKEND_API_LIGHTAPI= BACKEND_API_METRICS= +BACKEND_API_ROBO2= COINBASE_API_KEY_NAME= COINBASE_API_KEY_SECRET= +BACKEND_API_SENTIMENT= +BACKEND_API_MSG= +BACKEND_API_STATINDEX= diff --git a/configs/.env.vaulta b/configs/.env.vaulta index 6913a1429..86507211c 100644 --- a/configs/.env.vaulta +++ b/configs/.env.vaulta @@ -12,7 +12,7 @@ PUBLIC_SYSTEM_TOKEN_LOCKED_SUPPLY="eosio,eosio.null,core.vaulta" PUBLIC_LEGACY_TOKEN_CONTRACT="eosio.token" PUBLIC_LEGACY_TOKEN_SYMBOL="4,EOS" PUBLIC_LEGACY_TOKEN_EXCHANGERATE="1.0000 EOS" -PUBLIC_LEGACY_TOKEN_EXCHANGEREVERSABLE=false +PUBLIC_LEGACY_TOKEN_EXCHANGEREVERSABLE=true PUBLIC_SYSTEM_CONTRACT="core.vaulta" PUBLIC_SYSTEM_TOKEN_LOGO_LIGHT=https://assets.wharfkit.com/chain/vaulta.png PUBLIC_SYSTEM_TOKEN_LOGO_DARK=https://assets.wharfkit.com/chain/vaulta.png @@ -21,40 +21,47 @@ PUBLIC_LEGACY_TOKEN_LOGO_DARK=https://assets.wharfkit.com/chain/eos.png PUBLIC_API_CHAIN="https://eos.greymass.com" PUBLIC_API_HISTORY="https://eos.greymass.com" -PUBLIC_ANALYTICS_DOMAIN="unicove.com" -PUBLIC_STORYBLOK_TOKEN="FQ0qPP8ZJtEQQwfCGhLySwtt" -PUBLIC_STORYBLOK_REGION="us" -PUBLIC_STORYBLOK_CONTENT_TYPE="resource" -PUBLIC_STORYBLOK_SOURCE="https://vaulta.com" +PUBLIC_STORYBLOK_TOKEN="" +PUBLIC_STORYBLOK_REGION="" +PUBLIC_STORYBLOK_CONTENT_TYPE="" +PUBLIC_STORYBLOK_SOURCE="" PUBLIC_FEATURE_CMC_PAIRS="8534,2930" +PUBLIC_FEATURE_CREATE_CONTRACT=create.gm +PUBLIC_FEATURE_BIDNAME=true PUBLIC_FEATURE_DELPHIHELPER=true PUBLIC_FEATURE_DELPHIORACLE=true -PUBLIC_FEATURE_DIRECTFUNDING=true -PUBLIC_FEATURE_COINBASE_ASSETS="EOS" +PUBLIC_FEATURE_DIRECTFUNDING=false +PUBLIC_FEATURE_COINBASE_ASSETS="" PUBLIC_FEATURE_EOSNTIME=true PUBLIC_FEATURE_GIFTEDRAM=true PUBLIC_FEATURE_LIGHTAPI=true -PUBLIC_FEATURE_METAMASK_PRODUCT_NAME="EOS Wallet" +PUBLIC_FEATURE_METAMASK_PRODUCT_NAME="Vaulta Wallet" PUBLIC_FEATURE_METAMASK_SERVICE_URL="https://eos.account.unicove.com/buy" -PUBLIC_FEATURE_METAMASK_SNAP_ORIGIN="npm:@greymass/eos-wallet" -# PUBLIC_FEATURE_METAMASK_PRODUCT_NAME="Vaulta Wallet" -# PUBLIC_FEATURE_METAMASK_SERVICE_URL="https://eos.account.unicove.com/buy" -# PUBLIC_FEATURE_METAMASK_SNAP_ORIGIN="npm:vaulta-wallet" +PUBLIC_FEATURE_MSIGAPI=true +PUBLIC_FEATURE_METAMASK_SNAP_ORIGIN="npm:vaulta-wallet" PUBLIC_FEATURE_METAMASK=true PUBLIC_FEATURE_POWERUP=true +PUBLIC_FEATURE_PROPOSALS=true PUBLIC_FEATURE_RAMMARKET=true PUBLIC_FEATURE_RAMTRANSFER=true PUBLIC_FEATURE_RENTREX=false PUBLIC_FEATURE_REX=true PUBLIC_FEATURE_ROBO=true +PUBLIC_FEATURE_ROBO2=false +PUBLIC_FEATURE_SENTIMENT=true +PUBLIC_FEATURE_SENTIMENT_CONTRACT=sentiment.gm +PUBLIC_FEATURE_DISCUSSION=false +PUBLIC_FEATURE_DISCUSSION_CONTRACT=msg PUBLIC_FEATURE_STAKERESOURCE=false PUBLIC_FEATURE_STAKING=true +PUBLIC_FEATURE_STATINDEX=true PUBLIC_FEATURE_TIMESERIES=true PUBLIC_FEATURE_UNICOVE_CONTRACT_API=unicove.gm +PUBLIC_FEATURE_UNICOVE_CONTRACT_API_TOKENS='[{"symbol":"0,V","contract":"token.rms"},{"symbol":"0,SCRAP","contract":"scrap"},{"symbol":"4,CLOAK","contract":"thezeostoken"}]' PUBLIC_FEATURE_VAULTA_CORE_CONTRACT=core.vaulta -PUBLIC_FEATURE_WEB_AUTHENTICATOR_URL=https://vaulta-account.pages.dev +PUBLIC_FEATURE_VOTE_DECAY=52 PUBLIC_FEATURE_WRAM=true PUBLIC_WALLET_ANCHOR=true @@ -63,12 +70,16 @@ PUBLIC_WALLET_METAMASK=true PUBLIC_WALLET_SCATTER=true PUBLIC_WALLET_TOKENPOCKET=true PUBLIC_WALLET_WOMBAT=true -PUBLIC_WALLET_WEB_AUTHENTICATOR=true BACKEND_API_CHAIN="https://eos.greymass.com" BACKEND_API_HISTORY="https://eos.greymass.com" BACKEND_API_LIGHTAPI="https://eos.light-api.net" BACKEND_API_METRICS= +BACKEND_API_MSIGS="https://eos.greymass.com" +BACKEND_API_ROBO2= +BACKEND_API_SENTIMENT= +BACKEND_API_MSG= +BACKEND_API_STATINDEX= COINBASE_API_KEY_NAME= -COINBASE_API_KEY_SECRET= +COINBASE_API_KEY_SECRET= \ No newline at end of file diff --git a/configs/.env.wax b/configs/.env.wax index 4429e5dc4..306eae3d1 100644 --- a/configs/.env.wax +++ b/configs/.env.wax @@ -20,7 +20,6 @@ PUBLIC_LEGACY_TOKEN_LOGO_DARK= PUBLIC_API_CHAIN="https://wax.greymass.com" PUBLIC_API_HISTORY="https://wax.greymass.com" -PUBLIC_ANALYTICS_DOMAIN="wax.unicove.com" PUBLIC_STORYBLOK_TOKEN= PUBLIC_STORYBLOK_REGION= @@ -28,6 +27,8 @@ PUBLIC_STORYBLOK_CONTENT_TYPE= PUBLIC_STORYBLOK_SOURCE= PUBLIC_FEATURE_CMC_PAIRS= +PUBLIC_FEATURE_CREATE_CONTRACT= +PUBLIC_FEATURE_BIDNAME=true PUBLIC_FEATURE_COINBASE_ASSETS= PUBLIC_FEATURE_DELPHIHELPER=false PUBLIC_FEATURE_DELPHIORACLE=true @@ -37,19 +38,28 @@ PUBLIC_FEATURE_GIFTEDRAM=false PUBLIC_FEATURE_LIGHTAPI=false PUBLIC_FEATURE_METAMASK_PRODUCT_NAME= PUBLIC_FEATURE_METAMASK_SERVICE_URL= +PUBLIC_FEATURE_MSIGAPI=false PUBLIC_FEATURE_METAMASK_SNAP_ORIGIN= PUBLIC_FEATURE_METAMASK=false PUBLIC_FEATURE_POWERUP=true +PUBLIC_FEATURE_PROPOSALS=false PUBLIC_FEATURE_RAMMARKET=true PUBLIC_FEATURE_RAMTRANSFER=false PUBLIC_FEATURE_RENTREX=false PUBLIC_FEATURE_REX=false PUBLIC_FEATURE_ROBO=true +PUBLIC_FEATURE_ROBO2=false +PUBLIC_FEATURE_SENTIMENT=false +PUBLIC_FEATURE_SENTIMENT_CONTRACT=sentiment.gm +PUBLIC_FEATURE_DISCUSSION=false +PUBLIC_FEATURE_DISCUSSION_CONTRACT=msg PUBLIC_FEATURE_STAKERESOURCE=true PUBLIC_FEATURE_STAKING=false +PUBLIC_FEATURE_STATINDEX=false PUBLIC_FEATURE_TIMESERIES=false PUBLIC_FEATURE_UNICOVE_CONTRACT_API= PUBLIC_FEATURE_VAULTA_CORE_CONTRACT= +PUBLIC_FEATURE_VOTE_DECAY=13 PUBLIC_FEATURE_WRAM=false PUBLIC_WALLET_ANCHOR=true @@ -60,6 +70,10 @@ BACKEND_API_CHAIN="https://wax.greymass.com" BACKEND_API_HISTORY="https://wax.greymass.com" BACKEND_API_LIGHTAPI= BACKEND_API_METRICS= +BACKEND_API_ROBO2= COINBASE_API_KEY_NAME= COINBASE_API_KEY_SECRET= +BACKEND_API_SENTIMENT= +BACKEND_API_MSG= +BACKEND_API_STATINDEX= \ No newline at end of file diff --git a/configs/.env.waxtestnet b/configs/.env.waxtestnet index f02125850..56d8f2738 100644 --- a/configs/.env.waxtestnet +++ b/configs/.env.waxtestnet @@ -20,7 +20,6 @@ PUBLIC_LEGACY_TOKEN_LOGO_DARK= PUBLIC_API_CHAIN="https://waxtestnet.greymass.com" PUBLIC_API_HISTORY="https://waxtestnet.greymass.com" -PUBLIC_ANALYTICS_DOMAIN="waxtestnet.unicove.com" PUBLIC_STORYBLOK_TOKEN= PUBLIC_STORYBLOK_REGION= @@ -28,6 +27,8 @@ PUBLIC_STORYBLOK_CONTENT_TYPE= PUBLIC_STORYBLOK_SOURCE= PUBLIC_FEATURE_CMC_PAIRS= +PUBLIC_FEATURE_CREATE_CONTRACT= +PUBLIC_FEATURE_BIDNAME=true PUBLIC_FEATURE_COINBASE_ASSETS= PUBLIC_FEATURE_DELPHIHELPER=false PUBLIC_FEATURE_DELPHIORACLE=true @@ -37,19 +38,28 @@ PUBLIC_FEATURE_GIFTEDRAM=false PUBLIC_FEATURE_LIGHTAPI=false PUBLIC_FEATURE_METAMASK_PRODUCT_NAME= PUBLIC_FEATURE_METAMASK_SERVICE_URL= +PUBLIC_FEATURE_MSIGAPI=false PUBLIC_FEATURE_METAMASK_SNAP_ORIGIN= PUBLIC_FEATURE_METAMASK=false PUBLIC_FEATURE_POWERUP=true +PUBLIC_FEATURE_PROPOSALS=false PUBLIC_FEATURE_RAMMARKET=true PUBLIC_FEATURE_RAMTRANSFER=false PUBLIC_FEATURE_RENTREX=false PUBLIC_FEATURE_REX=false PUBLIC_FEATURE_ROBO=true +PUBLIC_FEATURE_ROBO2=false +PUBLIC_FEATURE_SENTIMENT=false +PUBLIC_FEATURE_SENTIMENT_CONTRACT=sentiment.gm +PUBLIC_FEATURE_DISCUSSION=false +PUBLIC_FEATURE_DISCUSSION_CONTRACT=msg PUBLIC_FEATURE_STAKERESOURCE=true PUBLIC_FEATURE_STAKING=false +PUBLIC_FEATURE_STATINDEX=false PUBLIC_FEATURE_TIMESERIES=false PUBLIC_FEATURE_UNICOVE_CONTRACT_API= PUBLIC_FEATURE_VAULTA_CORE_CONTRACT= +PUBLIC_FEATURE_VOTE_DECAY=13 PUBLIC_FEATURE_WRAM=false PUBLIC_WALLET_ANCHOR=true @@ -60,6 +70,10 @@ BACKEND_API_CHAIN="https://waxtestnet.greymass.com" BACKEND_API_HISTORY="https://waxtestnet.greymass.com" BACKEND_API_LIGHTAPI= BACKEND_API_METRICS= +BACKEND_API_ROBO2= COINBASE_API_KEY_NAME= COINBASE_API_KEY_SECRET= +BACKEND_API_SENTIMENT= +BACKEND_API_MSG= +BACKEND_API_STATINDEX= \ No newline at end of file diff --git a/configs/contracts/create.gm.ts b/configs/contracts/create.gm.ts new file mode 100644 index 000000000..dbf74c395 --- /dev/null +++ b/configs/contracts/create.gm.ts @@ -0,0 +1,137 @@ +import type { Action, AssetType, NameType, UInt64Type } from '@wharfkit/antelope'; +import { + ABI, + Asset, + Blob, + Name, + PublicKey, + Struct, + UInt16, + UInt32, + UInt64 +} from '@wharfkit/antelope'; +import type { ActionOptions, ContractArgs, PartialBy, Table } from '@wharfkit/contract'; +import { Contract as BaseContract } from '@wharfkit/contract'; +export const abiBlob = Blob.from( + 'DmVvc2lvOjphYmkvMS4yAAkJYXV0aG9yaXR5AAQJdGhyZXNob2xkBnVpbnQzMgRrZXlzDGtleV93ZWlnaHRbXQhhY2NvdW50cxlwZXJtaXNzaW9uX2xldmVsX3dlaWdodFtdBXdhaXRzDXdhaXRfd2VpZ2h0W10MZXN0aW1hdGVjb3N0AAAKa2V5X3dlaWdodAACA2tleQpwdWJsaWNfa2V5BndlaWdodAZ1aW50MTYLbG9nY3JlYXRpb24ABQdhY2NvdW50BG5hbWUEZnJvbQRuYW1lBmV4Y2VzcwVhc3NldANyYW0FYXNzZXQJdGltZXN0YW1wBnVpbnQ2NBNwYWlyX25hbWVfYXV0aG9yaXR5AAIFZmlyc3QEbmFtZQZzZWNvbmQJYXV0aG9yaXR5CXBhcnNlbWVtbwABBG1lbW8Gc3RyaW5nEHBlcm1pc3Npb25fbGV2ZWwAAgVhY3RvcgRuYW1lCnBlcm1pc3Npb24EbmFtZRdwZXJtaXNzaW9uX2xldmVsX3dlaWdodAACCnBlcm1pc3Npb24QcGVybWlzc2lvbl9sZXZlbAZ3ZWlnaHQGdWludDE2C3dhaXRfd2VpZ2h0AAIId2FpdF9zZWMGdWludDMyBndlaWdodAZ1aW50MTYDkDFFKhvpMlYMZXN0aW1hdGVjb3N0AAAmddmoixiNC2xvZ2NyZWF0aW9uAAAAoFJJha+pCXBhcnNlbWVtbwAAAQZjcmVhdGUGY3JlYXRlAAAAApAxRSob6TJWBWFzc2V0AACgUkmFr6kTcGFpcl9uYW1lX2F1dGhvcml0eQ==' +); +export const abi = ABI.from(abiBlob); +export namespace Types { + @Struct.type('key_weight') + export class key_weight extends Struct { + @Struct.field(PublicKey) + declare key: PublicKey; + @Struct.field(UInt16) + declare weight: UInt16; + } + @Struct.type('permission_level') + export class permission_level extends Struct { + @Struct.field(Name) + declare actor: Name; + @Struct.field(Name) + declare permission: Name; + } + @Struct.type('permission_level_weight') + export class permission_level_weight extends Struct { + @Struct.field(permission_level) + declare permission: permission_level; + @Struct.field(UInt16) + declare weight: UInt16; + } + @Struct.type('wait_weight') + export class wait_weight extends Struct { + @Struct.field(UInt32) + declare wait_sec: UInt32; + @Struct.field(UInt16) + declare weight: UInt16; + } + @Struct.type('authority') + export class authority extends Struct { + @Struct.field(UInt32) + declare threshold: UInt32; + @Struct.field(key_weight, { array: true }) + declare keys: key_weight[]; + @Struct.field(permission_level_weight, { array: true }) + declare accounts: permission_level_weight[]; + @Struct.field(wait_weight, { array: true }) + declare waits: wait_weight[]; + } + @Struct.type('estimatecost') + export class estimatecost extends Struct {} + @Struct.type('logcreation') + export class logcreation extends Struct { + @Struct.field(Name) + declare account: Name; + @Struct.field(Name) + declare from: Name; + @Struct.field(Asset) + declare excess: Asset; + @Struct.field(Asset) + declare ram: Asset; + @Struct.field(UInt64) + declare timestamp: UInt64; + } + @Struct.type('pair_name_authority') + export class pair_name_authority extends Struct { + @Struct.field(Name) + declare first: Name; + @Struct.field(authority) + declare second: authority; + } + @Struct.type('parsememo') + export class parsememo extends Struct { + @Struct.field('string') + declare memo: string; + } +} +export const TableMap = {}; +export interface TableTypes {} +export type RowType = T extends keyof TableTypes ? TableTypes[T] : any; +export type TableNames = keyof TableTypes; +export namespace ActionParams { + export namespace Type {} + export interface estimatecost {} + export interface logcreation { + account: NameType; + from: NameType; + excess: AssetType; + ram: AssetType; + timestamp: UInt64Type; + } + export interface parsememo { + memo: string; + } +} +export interface ActionNameParams { + estimatecost: ActionParams.estimatecost; + logcreation: ActionParams.logcreation; + parsememo: ActionParams.parsememo; +} +export type ActionNames = keyof ActionNameParams; +export interface ActionReturnValues { + estimatecost: Asset; + parsememo: Types.pair_name_authority; +} +export type ActionReturnNames = keyof ActionReturnValues; +export class Contract extends BaseContract { + constructor(args: PartialBy) { + super({ + client: args.client, + abi: abi, + account: args.account || Name.from('create.gm') + }); + } + action( + name: T, + data: ActionNameParams[T], + options?: ActionOptions + ): Action { + return super.action(name, data, options); + } + readonly( + name: T, + data?: ActionNameParams[T] + ): ActionReturnValues[T] { + return super.readonly(name, data) as unknown as ActionReturnValues[T]; + } +} diff --git a/configs/contracts/delphihelper.ts b/configs/contracts/delphihelper.ts index bdb361305..c8b523471 100644 --- a/configs/contracts/delphihelper.ts +++ b/configs/contracts/delphihelper.ts @@ -3,7 +3,7 @@ import { ABI, Asset, Blob, Name, Struct, TimePoint } from '@wharfkit/antelope'; import type { ActionOptions, ContractArgs, PartialBy, Table } from '@wharfkit/contract'; import { Contract as BaseContract } from '@wharfkit/contract'; export const abiBlob = Blob.from( - 'DmVvc2lvOjphYmkvMS4yAAQIZ2V0cGFpcnMAABB0b2tlbl9kZWZpbml0aW9uAAIGc3ltYm9sBnN5bWJvbAhjb250cmFjdARuYW1lCnRva2VuX3BhaXIABARiYXNlEHRva2VuX2RlZmluaXRpb24FcXVvdGUQdG9rZW5fZGVmaW5pdGlvbgVwcmljZQVhc3NldAd1cGRhdGVkCnRpbWVfcG9pbnQJdG9rZW5wYWlyAAACAAAA+DpTs2IIZ2V0cGFpcnMAAAC4ztSpIM0JdG9rZW5wYWlyAAABA2FwaQNhcGkAAAACAAAA+DpTs2IMdG9rZW5fcGFpcltdAAC4ztSpIM0KdG9rZW5fcGFpcg==' + 'DmVvc2lvOjphYmkvMS4yAAQIZ2V0cGFpcnMAABB0b2tlbl9kZWZpbml0aW9uAAIGc3ltYm9sBnN5bWJvbAhjb250cmFjdARuYW1lCnRva2VuX3BhaXIABARiYXNlEHRva2VuX2RlZmluaXRpb24FcXVvdGUQdG9rZW5fZGVmaW5pdGlvbgVwcmljZQVhc3NldAd1cGRhdGVkCnRpbWVfcG9pbnQJdG9rZW5wYWlyAAACAAAA+DpTs2IIZ2V0cGFpcnPXAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiBnZXRwYWlycwpzdW1tYXJ5OiAnUmVhZC1vbmx5IEFQSSB0byByZXR1cm4gYWxsIGRlbHBob3JhY2xlIHRva2VuIHBhaXJzJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAC4ztSpIM0JdG9rZW5wYWlyywEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogdG9rZW5wYWlyCnN1bW1hcnk6ICdOT09QOiB1c2VkIHRvIGV4cG9ydCB0b2tlbl9wYWlyIHN0cnVjdCcKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQABDGRlbHBoaWhlbHBlcgxkZWxwaGloZWxwZXIAAAACAAAA+DpTs2IMdG9rZW5fcGFpcltdAAC4ztSpIM0KdG9rZW5fcGFpcg==' ); export const abi = ABI.from(abiBlob); export namespace Types { diff --git a/configs/contracts/forum.ts b/configs/contracts/forum.ts new file mode 100644 index 000000000..cb16794c5 --- /dev/null +++ b/configs/contracts/forum.ts @@ -0,0 +1,81 @@ +import type { Action, NameType, UInt32Type, UInt8Type } from '@wharfkit/antelope'; +import { ABI, Blob, Name, Struct, UInt32, UInt8 } from '@wharfkit/antelope'; +import type { ActionOptions, ContractArgs, PartialBy, Table } from '@wharfkit/contract'; +import { Contract as BaseContract } from '@wharfkit/contract'; +export const abiBlob = Blob.from( + 'DmVvc2lvOjphYmkvMS4yAAMKY29uZmlnX3JvdwADEG1heF90aXRsZV9sZW5ndGgGdWludDMyD21heF9ib2R5X2xlbmd0aAZ1aW50MzIIbWF4X3RhZ3MFdWludDgMcG9zdF9jb250ZW50AAMFdGl0bGUGc3RyaW5nBGJvZHkGc3RyaW5nBHRhZ3MGbmFtZVtdCXNldGNvbmZpZwAEB2NoYW5uZWwEbmFtZRBtYXhfdGl0bGVfbGVuZ3RoBnVpbnQzMg9tYXhfYm9keV9sZW5ndGgGdWludDMyCG1heF90YWdzBXVpbnQ4AQAAYG5NirLCCXNldGNvbmZpZwACAAAAADC3JkUDaTY0AAAKY29uZmlnX3JvdwDyVHlSlDGtA2k2NAAADHBvc3RfY29udGVudAAAAAAA' +); +export const abi = ABI.from(abiBlob); +export namespace Types { + @Struct.type('config_row') + export class config_row extends Struct { + @Struct.field(UInt32) + declare max_title_length: UInt32; + @Struct.field(UInt32) + declare max_body_length: UInt32; + @Struct.field(UInt8) + declare max_tags: UInt8; + } + @Struct.type('post_content') + export class post_content extends Struct { + @Struct.field('string') + declare title: string; + @Struct.field('string') + declare body: string; + @Struct.field(Name, { array: true }) + declare tags: Name[]; + } + @Struct.type('setconfig') + export class setconfig extends Struct { + @Struct.field(Name) + declare channel: Name; + @Struct.field(UInt32) + declare max_title_length: UInt32; + @Struct.field(UInt32) + declare max_body_length: UInt32; + @Struct.field(UInt8) + declare max_tags: UInt8; + } +} +export const TableMap = { + config: Types.config_row, + postcontent: Types.post_content +}; +export interface TableTypes { + config: Types.config_row; + postcontent: Types.post_content; +} +export type RowType = T extends keyof TableTypes ? TableTypes[T] : any; +export type TableNames = keyof TableTypes; +export namespace ActionParams { + export namespace Type {} + export interface setconfig { + channel: NameType; + max_title_length: UInt32Type; + max_body_length: UInt32Type; + max_tags: UInt8Type; + } +} +export interface ActionNameParams { + setconfig: ActionParams.setconfig; +} +export type ActionNames = keyof ActionNameParams; +export class Contract extends BaseContract { + constructor(args: PartialBy) { + super({ + client: args.client, + abi: abi, + account: args.account || Name.from('forum.msg') + }); + } + action( + name: T, + data: ActionNameParams[T], + options?: ActionOptions + ): Action { + return super.action(name, data, options); + } + table(name: T, scope?: NameType): Table> { + return super.table(name, scope, TableMap[name]); + } +} diff --git a/configs/contracts/msg.ts b/configs/contracts/msg.ts new file mode 100644 index 000000000..b1001ab27 --- /dev/null +++ b/configs/contracts/msg.ts @@ -0,0 +1,333 @@ +import type { Action, NameType, UInt64Type } from '@wharfkit/antelope'; +import { ABI, Blob, Name, Struct, UInt64 } from '@wharfkit/antelope'; +import type { ActionOptions, ContractArgs, PartialBy, Table } from '@wharfkit/contract'; +import { Contract as BaseContract } from '@wharfkit/contract'; +export const abiBlob = Blob.from( + 'DmVvc2lvOjphYmkvMS4yABULY2hhbm5lbF9yb3cABAJpZARuYW1lBW93bmVyBG5hbWUGZm9ybWF0BG5hbWUFaG9va3MGbmFtZVtdBmNyZWF0ZQACBW93bmVyBG5hbWUHY2hhbm5lbARuYW1lA2RlbAADBnNlbmRlcgRuYW1lB2NoYW5uZWwEbmFtZQNzZXEGdWludDY0CGRlbGluYm94AAEHYWNjb3VudARuYW1lB2Rlc3Ryb3kAAgVvd25lcgRuYW1lB2NoYW5uZWwEbmFtZQJkbQADBnNlbmRlcgRuYW1lCXJlY2lwaWVudARuYW1lB2NvbnRlbnQGc3RyaW5nBGVkaXQABAZzZW5kZXIEbmFtZQdjaGFubmVsBG5hbWUDc2VxBnVpbnQ2NAdjb250ZW50BnN0cmluZxRnZXRfY2hhbm5lbF9yZXNwb25zZQAEAmlkBG5hbWUFb3duZXIEbmFtZQZmb3JtYXQEbmFtZQVob29rcwZuYW1lW10SZ2V0X2luYm94X3Jlc3BvbnNlAAMHYWNjb3VudARuYW1lBmZvcm1hdARuYW1lBWhvb2tzBm5hbWVbXQpnZXRjaGFubmVsAAEHY2hhbm5lbARuYW1lCGdldGluYm94AAEHYWNjb3VudARuYW1lCWluYm94X3JvdwADB2FjY291bnQEbmFtZQZmb3JtYXQEbmFtZQVob29rcwZuYW1lW10FcmVhY3QABAZzZW5kZXIEbmFtZQdjaGFubmVsBG5hbWUDc2VxBnVpbnQ2NAdjb250ZW50BnN0cmluZwVyZXBseQAEBnNlbmRlcgRuYW1lB2NoYW5uZWwEbmFtZQNzZXEGdWludDY0B2NvbnRlbnQGc3RyaW5nBHNlbmQAAwZzZW5kZXIEbmFtZQdjaGFubmVsBG5hbWUHY29udGVudAZzdHJpbmcLc2V0ZG1mb3JtYXQAAgdhY2NvdW50BG5hbWUGZm9ybWF0BG5hbWUKc2V0ZG1ob29rcwACB2FjY291bnQEbmFtZQVob29rcwZuYW1lW10Jc2V0Zm9ybWF0AAMFb3duZXIEbmFtZQdjaGFubmVsBG5hbWUGZm9ybWF0BG5hbWUIc2V0aG9va3MAAwVvd25lcgRuYW1lB2NoYW5uZWwEbmFtZQVob29rcwZuYW1lW10Ic2V0b3duZXIAAwVvd25lcgRuYW1lB2NoYW5uZWwEbmFtZQhuZXdvd25lcgRuYW1lB3VucmVhY3QABAZzZW5kZXIEbmFtZQdjaGFubmVsBG5hbWUDc2VxBnVpbnQ2NAdjb250ZW50BnN0cmluZxEAAAAAqGzURQZjcmVhdGUAAAAAAAAAokoDZGVsAAAAAJ2e6aJKCGRlbGluYm94AAAAAMDTm7FKB2Rlc3Ryb3kAAAAAAAAAgEwCZG0AAAAAAACQXVIEZWRpdAAAQFRzmoayYgpnZXRjaGFubmVsAAAAAJ2e6bJiCGdldGluYm94AAAAAACAjIy6BXJlYWN0AAAAAAAAH6u6BXJlcGx5AAAAAAAAkKbCBHNlbmQAALKRly6ZssILc2V0ZG1mb3JtYXQAAACGlDaZssIKc2V0ZG1ob29rcwAAAMhGXrqywglzZXRmb3JtYXQAAAAAGFLassIIc2V0aG9va3MAAAAAV01Os8IIc2V0b3duZXIAAAAAICOj7tQHdW5yZWFjdAACAAAAOKo5TUMDaTY0AAALY2hhbm5lbF9yb3cAAAAAq07PdANpNjQAAAlpbmJveF9yb3cAAAAAAgBAVHOahrJiFGdldF9jaGFubmVsX3Jlc3BvbnNlAAAAnZ7psmISZ2V0X2luYm94X3Jlc3BvbnNl' +); +export const abi = ABI.from(abiBlob); +export namespace Types { + @Struct.type('channel_row') + export class channel_row extends Struct { + @Struct.field(Name) + declare id: Name; + @Struct.field(Name) + declare owner: Name; + @Struct.field(Name) + declare format: Name; + @Struct.field(Name, { array: true }) + declare hooks: Name[]; + } + @Struct.type('create') + export class create extends Struct { + @Struct.field(Name) + declare owner: Name; + @Struct.field(Name) + declare channel: Name; + } + @Struct.type('del') + export class del extends Struct { + @Struct.field(Name) + declare sender: Name; + @Struct.field(Name) + declare channel: Name; + @Struct.field(UInt64) + declare seq: UInt64; + } + @Struct.type('delinbox') + export class delinbox extends Struct { + @Struct.field(Name) + declare account: Name; + } + @Struct.type('destroy') + export class destroy extends Struct { + @Struct.field(Name) + declare owner: Name; + @Struct.field(Name) + declare channel: Name; + } + @Struct.type('dm') + export class dm extends Struct { + @Struct.field(Name) + declare sender: Name; + @Struct.field(Name) + declare recipient: Name; + @Struct.field('string') + declare content: string; + } + @Struct.type('edit') + export class edit extends Struct { + @Struct.field(Name) + declare sender: Name; + @Struct.field(Name) + declare channel: Name; + @Struct.field(UInt64) + declare seq: UInt64; + @Struct.field('string') + declare content: string; + } + @Struct.type('get_channel_response') + export class get_channel_response extends Struct { + @Struct.field(Name) + declare id: Name; + @Struct.field(Name) + declare owner: Name; + @Struct.field(Name) + declare format: Name; + @Struct.field(Name, { array: true }) + declare hooks: Name[]; + } + @Struct.type('get_inbox_response') + export class get_inbox_response extends Struct { + @Struct.field(Name) + declare account: Name; + @Struct.field(Name) + declare format: Name; + @Struct.field(Name, { array: true }) + declare hooks: Name[]; + } + @Struct.type('getchannel') + export class getchannel extends Struct { + @Struct.field(Name) + declare channel: Name; + } + @Struct.type('getinbox') + export class getinbox extends Struct { + @Struct.field(Name) + declare account: Name; + } + @Struct.type('inbox_row') + export class inbox_row extends Struct { + @Struct.field(Name) + declare account: Name; + @Struct.field(Name) + declare format: Name; + @Struct.field(Name, { array: true }) + declare hooks: Name[]; + } + @Struct.type('react') + export class react extends Struct { + @Struct.field(Name) + declare sender: Name; + @Struct.field(Name) + declare channel: Name; + @Struct.field(UInt64) + declare seq: UInt64; + @Struct.field('string') + declare content: string; + } + @Struct.type('reply') + export class reply extends Struct { + @Struct.field(Name) + declare sender: Name; + @Struct.field(Name) + declare channel: Name; + @Struct.field(UInt64) + declare seq: UInt64; + @Struct.field('string') + declare content: string; + } + @Struct.type('send') + export class send extends Struct { + @Struct.field(Name) + declare sender: Name; + @Struct.field(Name) + declare channel: Name; + @Struct.field('string') + declare content: string; + } + @Struct.type('setdmformat') + export class setdmformat extends Struct { + @Struct.field(Name) + declare account: Name; + @Struct.field(Name) + declare format: Name; + } + @Struct.type('setdmhooks') + export class setdmhooks extends Struct { + @Struct.field(Name) + declare account: Name; + @Struct.field(Name, { array: true }) + declare hooks: Name[]; + } + @Struct.type('setformat') + export class setformat extends Struct { + @Struct.field(Name) + declare owner: Name; + @Struct.field(Name) + declare channel: Name; + @Struct.field(Name) + declare format: Name; + } + @Struct.type('sethooks') + export class sethooks extends Struct { + @Struct.field(Name) + declare owner: Name; + @Struct.field(Name) + declare channel: Name; + @Struct.field(Name, { array: true }) + declare hooks: Name[]; + } + @Struct.type('setowner') + export class setowner extends Struct { + @Struct.field(Name) + declare owner: Name; + @Struct.field(Name) + declare channel: Name; + @Struct.field(Name) + declare newowner: Name; + } + @Struct.type('unreact') + export class unreact extends Struct { + @Struct.field(Name) + declare sender: Name; + @Struct.field(Name) + declare channel: Name; + @Struct.field(UInt64) + declare seq: UInt64; + @Struct.field('string') + declare content: string; + } +} +export const TableMap = { + channels: Types.channel_row, + inboxes: Types.inbox_row +}; +export interface TableTypes { + channels: Types.channel_row; + inboxes: Types.inbox_row; +} +export type RowType = T extends keyof TableTypes ? TableTypes[T] : any; +export type TableNames = keyof TableTypes; +export namespace ActionParams { + export namespace Type {} + export interface create { + owner: NameType; + channel: NameType; + } + export interface del { + sender: NameType; + channel: NameType; + seq: UInt64Type; + } + export interface delinbox { + account: NameType; + } + export interface destroy { + owner: NameType; + channel: NameType; + } + export interface dm { + sender: NameType; + recipient: NameType; + content: string; + } + export interface edit { + sender: NameType; + channel: NameType; + seq: UInt64Type; + content: string; + } + export interface getchannel { + channel: NameType; + } + export interface getinbox { + account: NameType; + } + export interface react { + sender: NameType; + channel: NameType; + seq: UInt64Type; + content: string; + } + export interface reply { + sender: NameType; + channel: NameType; + seq: UInt64Type; + content: string; + } + export interface send { + sender: NameType; + channel: NameType; + content: string; + } + export interface setdmformat { + account: NameType; + format: NameType; + } + export interface setdmhooks { + account: NameType; + hooks: NameType[]; + } + export interface setformat { + owner: NameType; + channel: NameType; + format: NameType; + } + export interface sethooks { + owner: NameType; + channel: NameType; + hooks: NameType[]; + } + export interface setowner { + owner: NameType; + channel: NameType; + newowner: NameType; + } + export interface unreact { + sender: NameType; + channel: NameType; + seq: UInt64Type; + content: string; + } +} +export interface ActionNameParams { + create: ActionParams.create; + del: ActionParams.del; + delinbox: ActionParams.delinbox; + destroy: ActionParams.destroy; + dm: ActionParams.dm; + edit: ActionParams.edit; + getchannel: ActionParams.getchannel; + getinbox: ActionParams.getinbox; + react: ActionParams.react; + reply: ActionParams.reply; + send: ActionParams.send; + setdmformat: ActionParams.setdmformat; + setdmhooks: ActionParams.setdmhooks; + setformat: ActionParams.setformat; + sethooks: ActionParams.sethooks; + setowner: ActionParams.setowner; + unreact: ActionParams.unreact; +} +export type ActionNames = keyof ActionNameParams; +export interface ActionReturnValues { + getchannel: Types.get_channel_response; + getinbox: Types.get_inbox_response; +} +export type ActionReturnNames = keyof ActionReturnValues; +export class Contract extends BaseContract { + constructor(args: PartialBy) { + super({ + client: args.client, + abi: abi, + account: args.account || Name.from('msg') + }); + } + action( + name: T, + data: ActionNameParams[T], + options?: ActionOptions + ): Action { + return super.action(name, data, options); + } + readonly( + name: T, + data?: ActionNameParams[T] + ): ActionReturnValues[T] { + return super.readonly(name, data) as unknown as ActionReturnValues[T]; + } + table(name: T, scope?: NameType): Table> { + return super.table(name, scope, TableMap[name]); + } +} diff --git a/configs/contracts/sentiment.ts b/configs/contracts/sentiment.ts new file mode 100644 index 000000000..31d658e03 --- /dev/null +++ b/configs/contracts/sentiment.ts @@ -0,0 +1,640 @@ +import type { + Action, + AssetType, + Checksum256Type, + NameType, + UInt32Type, + UInt8Type +} from '@wharfkit/antelope'; +import { + ABI, + Asset, + Blob, + Checksum256, + Int64, + Name, + Struct, + UInt32, + UInt8 +} from '@wharfkit/antelope'; +import type { ActionOptions, ContractArgs, PartialBy, Table } from '@wharfkit/contract'; +import { Contract as BaseContract } from '@wharfkit/contract'; +export const abiBlob = Blob.from( + 'DmVvc2lvOjphYmkvMS4yADEQYWNjb3VudF92b3RlX3JvdwADBXZvdGVyBG5hbWUHYWNjb3VudARuYW1lCXZvdGVfdHlwZQV1aW50OAtiYWxhbmNlX3JvdwACB2FjY291bnQEbmFtZQdiYWxhbmNlBWFzc2V0C2J1bGtybXZvdGVzAAIIdG9waWNfaWQEbmFtZQludW1fdm90ZXMGdWludDMyCmNoYW5nZXZvdGUAAwV2b3RlcgRuYW1lCHRvcGljX2lkBG5hbWUJdm90ZV90eXBlBXVpbnQ4CmNvbmZpZ19yb3cABAdlbmFibGVkBGJvb2wPc3lzdGVtX2NvbnRyYWN0BG5hbWUEZmVlcwtmZWVzX2NvbmZpZwdtZXRyaWNzDm1ldHJpY3NfY29uZmlnC2NyZWF0ZXRvcGljAAQHY3JlYXRvcgRuYW1lAmlkBG5hbWULZGVzY3JpcHRpb24Gc3RyaW5nB3BheW1lbnQFYXNzZXQLZGVsZXRldG9waWMAAQJpZARuYW1lB2Rpc2FibGUAAAZlbmFibGUAAAtmZWVzX2NvbmZpZwAEBXRva2VuEHRva2VuX2RlZmluaXRpb24IcmVjZWl2ZXIEbmFtZQtjcmVhdGV0b3BpYwVhc3NldAZhY3Rpb24EbmFtZRlnZXRfYWNjb3VudF92b3RlX3Jlc3BvbnNlAAMFdm90ZXIEbmFtZQdhY2NvdW50BG5hbWUJdm90ZV90eXBlBXVpbnQ4FmdldF9tc2lnX3ZvdGVfcmVzcG9uc2UABAV2b3RlcgRuYW1lCHByb3Bvc2VyBG5hbWUNcHJvcG9zYWxfbmFtZQRuYW1lCXZvdGVfdHlwZQV1aW50OBJnZXRfdG9waWNfcmVzcG9uc2UAAwJpZARuYW1lC2Rlc2NyaXB0aW9uBnN0cmluZwdjcmVhdG9yBG5hbWUXZ2V0X3RvcGljX3ZvdGVfcmVzcG9uc2UAAwV2b3RlcgRuYW1lCHRvcGljX2lkBG5hbWUJdm90ZV90eXBlBXVpbnQ4GmdldF92b3Rlcl9tZXRyaWNzX3Jlc3BvbnNlAAYFdm90ZXIEbmFtZQ1zeXN0ZW1fc3Rha2VkBWludDY0DXN5c3RlbV9saXF1aWQFaW50NjQJcmFtX2J5dGVzBWludDY0CHZfc3Rha2VkBWludDY0CHZfbGlxdWlkBWludDY0GWdldF92b3Rlcl93ZWlnaHRfcmVzcG9uc2UAAgV2b3RlcgRuYW1lBndlaWdodAVpbnQ2NAtnZXRhY2N0dm90ZQACBXZvdGVyBG5hbWUHYWNjb3VudARuYW1lCmdldGFjdHZ0cnMAAQdhY2NvdW50BG5hbWUJZ2V0bWV0cmljAAEFdm90ZXIEbmFtZQpnZXRtZXRyaWNzAAEGdm90ZXJzBm5hbWVbXQtnZXRtc2lndm90ZQADBXZvdGVyBG5hbWUIcHJvcG9zZXIEbmFtZQ1wcm9wb3NhbF9uYW1lBG5hbWULZ2V0bXNpZ3Z0cnMAAghwcm9wb3NlcgRuYW1lDXByb3Bvc2FsX25hbWUEbmFtZQhnZXR0b3BpYwABAmlkBG5hbWUJZ2V0dG9waWNzAAAMZ2V0dG9waWN2b3RlAAIFdm90ZXIEbmFtZQh0b3BpY19pZARuYW1lDGdldHRvcGljdnRycwABCHRvcGljX2lkBG5hbWUHZ2V0dm90ZQACBXZvdGVyBG5hbWUIdG9waWNfaWQEbmFtZQlnZXR2b3RlcnMAAQh0b3BpY19pZARuYW1lCWdldHdlaWdodAABBXZvdGVyBG5hbWUKZ2V0d2VpZ2h0cwABBnZvdGVycwZuYW1lW10ObWV0cmljc19jb25maWcABQxzeXN0ZW1fdG9rZW4QdG9rZW5fZGVmaW5pdGlvbgxsZWdhY3lfdG9rZW4QdG9rZW5fZGVmaW5pdGlvbgp3cmFtX3Rva2VuEHRva2VuX2RlZmluaXRpb24Hdl90b2tlbhB0b2tlbl9kZWZpbml0aW9uEHZfc3Rha2VfY29udHJhY3QEbmFtZQ1tc2lnX3ZvdGVfcm93AAQFdm90ZXIEbmFtZQhwcm9wb3NlcgRuYW1lDXByb3Bvc2FsX25hbWUEbmFtZQl2b3RlX3R5cGUFdWludDgEb3BlbgABB2FjY291bnQEbmFtZQpyZW1vdmV2b3RlAAIFdm90ZXIEbmFtZQh0b3BpY19pZARuYW1lBXJlc2V0AAAKcm1hY2N0dm90ZQACBXZvdGVyBG5hbWUHYWNjb3VudARuYW1lCnJtbXNpZ3ZvdGUAAwV2b3RlcgRuYW1lCHByb3Bvc2VyBG5hbWUNcHJvcG9zYWxfbmFtZQRuYW1lC3JtdG9waWN2b3RlAAIFdm90ZXIEbmFtZQh0b3BpY19pZARuYW1lCXNldGNvbmZpZwAGD3N5c3RlbV9jb250cmFjdARuYW1lDnRva2VuX2NvbnRyYWN0BG5hbWUMdG9rZW5fYWN0aW9uBG5hbWUMdG9rZW5fc3ltYm9sBnN5bWJvbAxmZWVfcmVjZWl2ZXIEbmFtZQ9jcmVhdGV0b3BpY19mZWUFYXNzZXQMc2V0bWV0cmljY2ZnAAEHbWV0cmljcw5tZXRyaWNzX2NvbmZpZxB0b2tlbl9kZWZpbml0aW9uAAMFY2hhaW4MY2hlY2tzdW0yNTY/CGNvbnRyYWN0BG5hbWUGc3ltYm9sBnN5bWJvbAl0b3BpY19yb3cAAwJpZARuYW1lC2Rlc2NyaXB0aW9uBnN0cmluZwdjcmVhdG9yBG5hbWUOdG9waWNfdm90ZV9yb3cAAwV2b3RlcgRuYW1lCHRvcGljX2lkBG5hbWUJdm90ZV90eXBlBXVpbnQ4C3VwZGF0ZXRvcGljAAICaWQEbmFtZQtkZXNjcmlwdGlvbgZzdHJpbmcEdm90ZQADBXZvdGVyBG5hbWUIdG9waWNfaWQEbmFtZQl2b3RlX3R5cGUFdWludDgLdm90ZWFjY291bnQAAwV2b3RlcgRuYW1lB2FjY291bnQEbmFtZQl2b3RlX3R5cGUFdWludDgIdm90ZW1zaWcABAV2b3RlcgRuYW1lCHByb3Bvc2VyBG5hbWUNcHJvcG9zYWxfbmFtZQRuYW1lCXZvdGVfdHlwZQV1aW50OAl2b3RldG9waWMAAwV2b3RlcgRuYW1lCHRvcGljX2lkBG5hbWUJdm90ZV90eXBlBXVpbnQ4CHdpdGhkcmF3AAIHYWNjb3VudARuYW1lCHF1YW50aXR5BWFzc2V0IgCwynTLC6M+C2J1bGtybXZvdGVzsAItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0J1bGsgUmVtb3ZlIFZvdGVzJwpzdW1tYXJ5OiAnTWFpbnRhaW5lciBhY3Rpb24gdG8gcmVtb3ZlIG11bHRpcGxlIHZvdGVzIGZyb20gYSB0b3BpYyBmb3IgYWRtaW5pc3RyYXRpdmUgcHVycG9zZXMuIFJlbW92ZXMgdXAgdG8gdGhlIHNwZWNpZmllZCBudW1iZXIgb2Ygdm90ZXMuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAIDKdCs2TUMKY2hhbmdldm90ZYkCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdDaGFuZ2UgVm90ZScKc3VtbWFyeTogJ0FsbG93cyBhIHVzZXIgdG8gY2hhbmdlIHRoZWlyIGV4aXN0aW5nIHZvdGUgb24gYSB0b3BpYyBmcm9tIHN1cHBvcnQgdG8gb3Bwb3NpdGlvbiBvciB2aWNlIHZlcnNhLicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQCQqzSrbNRFC2NyZWF0ZXRvcGlj5AEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0NyZWF0ZSBUb3BpYycKc3VtbWFyeTogJ0NyZWF0ZXMgYSBuZXcgdG9waWMgd2l0aCB0aGUgc3BlY2lmaWVkIElEIGFuZCBkZXNjcmlwdGlvbi4nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0AkKs0q6yiSgtkZWxldGV0b3BpY9YBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdEZWxldGUgVG9waWMnCnN1bW1hcnk6ICdEZWxldGVzIGFuIGV4aXN0aW5nIHRvcGljIGZyb20gdGhlIHJlZ2lzdHJ5LicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAEDFY7BLB2Rpc2FibGWFAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnRGlzYWJsZSBDb250cmFjdCcKc3VtbWFyeTogJ01haW50YWluZXIgYWN0aW9uIHRvIGRpc2FibGUgdGhlIGNvbnRyYWN0LCBwcmV2ZW50aW5nIHVzZXIgYWN0aW9ucyBmcm9tIGJlaW5nIGV4ZWN1dGVkLicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAACoeMxUBmVuYWJsZfwBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdFbmFibGUgQ29udHJhY3QnCnN1bW1hcnk6ICdNYWludGFpbmVyIGFjdGlvbiB0byBlbmFibGUgdGhlIGNvbnRyYWN0LCBhbGxvd2luZyB1c2VyIGFjdGlvbnMgdG8gYmUgZXhlY3V0ZWQuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAFSmOyNksmILZ2V0YWNjdHZvdGUAAAC+eWdksmIKZ2V0YWN0dnRycwAAAEDuZiWzYglnZXRtZXRyaWMAAABG7mYls2IKZ2V0bWV0cmljcwAAVKabOSyzYgtnZXRtc2lndm90ZQAA8M2bOSyzYgtnZXRtc2lndnRycwAAAADIVZqzYghnZXR0b3BpY9YBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdHZXQgVG9waWMnCnN1bW1hcnk6ICdSZWFkLW9ubHkgYWN0aW9uIHRvIHJldHJpZXZlIGEgdG9waWMgYnkgaXRzIElELicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAwMhVmrNiCWdldHRvcGljc+YBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdHZXQgQWxsIFRvcGljcycKc3VtbWFyeTogJ1JlYWQtb25seSBhY3Rpb24gdG8gcmV0cmlldmUgYWxsIHRvcGljcyBmcm9tIHRoZSByZWdpc3RyeS4nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS2gMt3IVZqzYgxnZXR0b3BpY3ZvdGUAgG/eyFWas2IMZ2V0dG9waWN2dHJzAAAAAEBlurNiB2dldHZvdGXmAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnR2V0IFZvdGUnCnN1bW1hcnk6ICdSZWFkLW9ubHkgYWN0aW9uIHRvIHJldHJpZXZlIGEgc3BlY2lmaWMgdXNlclwncyB2b3RlIG9uIGEgdG9waWMuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAADAV2W6s2IJZ2V0dm90ZXJz+QEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0dldCBBbGwgVm90ZXJzJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byByZXRyaWV2ZSBhbGwgdm90ZXJzIGFuZCB0aGVpciB2b3RlcyBmb3IgYSBzcGVjaWZpYyB0b3BpYy4nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0AAMiNOcWzYglnZXR3ZWlnaHScAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnR2V0IFZvdGVyIFdlaWdodCcKc3VtbWFyeTogJ1JlYWQtb25seSBhY3Rpb24gdG8gcmV0cmlldmUgdGhlIHZvdGluZyB3ZWlnaHQgb2YgYSB2b3RlciBiYXNlZCBvbiB0aGVpciBzdGFrZWQgdG9rZW5zIGluIHRoZSBzeXN0ZW0gY29udHJhY3QuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAADOjTnFs2IKZ2V0d2VpZ2h0c68CLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdHZXQgTXVsdGlwbGUgVm90ZXIgV2VpZ2h0cycKc3VtbWFyeTogJ1JlYWQtb25seSBhY3Rpb24gdG8gcmV0cmlldmUgdGhlIHZvdGluZyB3ZWlnaHRzIG9mIG11bHRpcGxlIHZvdGVycyBiYXNlZCBvbiB0aGVpciBzdGFrZWQgdG9rZW5zIGluIHRoZSBzeXN0ZW0gY29udHJhY3QuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAAAAwVaUEb3BlbgAAgMp0q02lugpyZW1vdmV2b3Rl2QEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ1JlbW92ZSBWb3RlJwpzdW1tYXJ5OiAnQWxsb3dzIGEgdXNlciB0byByZW1vdmUgdGhlaXIgdm90ZSBmcm9tIGEgdG9waWMuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAAICssLoFcmVzZXQAAIDKdGeEjLwKcm1hY2N0dm90ZQAAgMp0M4elvApybW1zaWd2b3RlAABUphu5SrO8C3JtdG9waWN2b3RlAAAAYG5NirLCCXNldGNvbmZpZ5UCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdTZXQgQ29udHJhY3QgQ29uZmlndXJhdGlvbicKc3VtbWFyeTogJ01haW50YWluZXIgYWN0aW9uIHRvIHNldCB0aGUgdmFsdWVzIG9mIHRoZSBjb25maWcgdGFibGUgdG8gdXBkYXRlIGhvdyB0aGlzIGNvbnRyYWN0IG9wZXJhdGVzLicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLcAWQu5mJbPCDHNldG1ldHJpY2NmZwAAkKs0q2xS1Qt1cGRhdGV0b3BpY9cBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdVcGRhdGUgVG9waWMnCnN1bW1hcnk6ICdVcGRhdGVzIHRoZSBkZXNjcmlwdGlvbiBvZiBhbiBleGlzdGluZyB0b3BpYy4nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0AAAAAAKAy3QR2b3Rl9wEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ1ZvdGUgb24gVG9waWMnCnN1bW1hcnk6ICdBbGxvd3MgYSB1c2VyIHRvIGV4cHJlc3MgdGhlaXIgc2VudGltZW50IChzdXBwb3J0IG9yIG9wcG9zaXRpb24pIG9uIGEgdG9waWMuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAPLUFCGjMt0Ldm90ZWFjY291bnQAAAAAzGGpMt0Idm90ZW1zaWcAAABArtKsMt0Jdm90ZXRvcGljAAAAANzc1LLjCHdpdGhkcmF3AAaAVaY7T00RMgNpNjQAABBhY2NvdW50X3ZvdGVfcm93AAAAQKFpojkDaTY0AAALYmFsYW5jZV9yb3cAAAAAMLcmRQNpNjQAAApjb25maWdfcm93AADAKtPNHJYDaTY0AAANbXNpZ192b3RlX3JvdwAAAABg5CrNA2k2NAAACXRvcGljX3JvdwAAAAAArDLdA2k2NAAADnRvcGljX3ZvdGVfcm93AQlzZW50aW1lbnQJc2VudGltZW50AAAADgBUpjsjZLJiGWdldF9hY2NvdW50X3ZvdGVfcmVzcG9uc2UAAL55Z2SyYhtnZXRfYWNjb3VudF92b3RlX3Jlc3BvbnNlW10AAEDuZiWzYhpnZXRfdm90ZXJfbWV0cmljc19yZXNwb25zZQAARu5mJbNiHGdldF92b3Rlcl9tZXRyaWNzX3Jlc3BvbnNlW10AVKabOSyzYhZnZXRfbXNpZ192b3RlX3Jlc3BvbnNlAPDNmzkss2IYZ2V0X21zaWdfdm90ZV9yZXNwb25zZVtdAAAAyFWas2ISZ2V0X3RvcGljX3Jlc3BvbnNlAADAyFWas2IUZ2V0X3RvcGljX3Jlc3BvbnNlW12gMt3IVZqzYhdnZXRfdG9waWNfdm90ZV9yZXNwb25zZYBv3shVmrNiGWdldF90b3BpY192b3RlX3Jlc3BvbnNlW10AAABAZbqzYhdnZXRfdG9waWNfdm90ZV9yZXNwb25zZQAAwFdlurNiGWdldF90b3BpY192b3RlX3Jlc3BvbnNlW10AAMiNOcWzYhlnZXRfdm90ZXJfd2VpZ2h0X3Jlc3BvbnNlAADOjTnFs2IbZ2V0X3ZvdGVyX3dlaWdodF9yZXNwb25zZVtd' +); +export const abi = ABI.from(abiBlob); +export namespace Types { + @Struct.type('account_vote_row') + export class account_vote_row extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare account: Name; + @Struct.field(UInt8) + declare vote_type: UInt8; + } + @Struct.type('balance_row') + export class balance_row extends Struct { + @Struct.field(Name) + declare account: Name; + @Struct.field(Asset) + declare balance: Asset; + } + @Struct.type('bulkrmvotes') + export class bulkrmvotes extends Struct { + @Struct.field(Name) + declare topic_id: Name; + @Struct.field(UInt32) + declare num_votes: UInt32; + } + @Struct.type('changevote') + export class changevote extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare topic_id: Name; + @Struct.field(UInt8) + declare vote_type: UInt8; + } + @Struct.type('token_definition') + export class token_definition extends Struct { + @Struct.field(Checksum256, { optional: true }) + declare chain?: Checksum256; + @Struct.field(Name) + declare contract: Name; + @Struct.field(Asset.Symbol) + declare symbol: Asset.Symbol; + } + @Struct.type('fees_config') + export class fees_config extends Struct { + @Struct.field(token_definition) + declare token: token_definition; + @Struct.field(Name) + declare receiver: Name; + @Struct.field(Asset) + declare createtopic: Asset; + @Struct.field(Name) + declare action: Name; + } + @Struct.type('metrics_config') + export class metrics_config extends Struct { + @Struct.field(token_definition) + declare system_token: token_definition; + @Struct.field(token_definition) + declare legacy_token: token_definition; + @Struct.field(token_definition) + declare wram_token: token_definition; + @Struct.field(token_definition) + declare v_token: token_definition; + @Struct.field(Name) + declare v_stake_contract: Name; + } + @Struct.type('config_row') + export class config_row extends Struct { + @Struct.field('bool') + declare enabled: boolean; + @Struct.field(Name) + declare system_contract: Name; + @Struct.field(fees_config) + declare fees: fees_config; + @Struct.field(metrics_config) + declare metrics: metrics_config; + } + @Struct.type('createtopic') + export class createtopic extends Struct { + @Struct.field(Name) + declare creator: Name; + @Struct.field(Name) + declare id: Name; + @Struct.field('string') + declare description: string; + @Struct.field(Asset) + declare payment: Asset; + } + @Struct.type('deletetopic') + export class deletetopic extends Struct { + @Struct.field(Name) + declare id: Name; + } + @Struct.type('disable') + export class disable extends Struct {} + @Struct.type('enable') + export class enable extends Struct {} + @Struct.type('get_account_vote_response') + export class get_account_vote_response extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare account: Name; + @Struct.field(UInt8) + declare vote_type: UInt8; + } + @Struct.type('get_msig_vote_response') + export class get_msig_vote_response extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare proposer: Name; + @Struct.field(Name) + declare proposal_name: Name; + @Struct.field(UInt8) + declare vote_type: UInt8; + } + @Struct.type('get_topic_response') + export class get_topic_response extends Struct { + @Struct.field(Name) + declare id: Name; + @Struct.field('string') + declare description: string; + @Struct.field(Name) + declare creator: Name; + } + @Struct.type('get_topic_vote_response') + export class get_topic_vote_response extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare topic_id: Name; + @Struct.field(UInt8) + declare vote_type: UInt8; + } + @Struct.type('get_voter_metrics_response') + export class get_voter_metrics_response extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Int64) + declare system_staked: Int64; + @Struct.field(Int64) + declare system_liquid: Int64; + @Struct.field(Int64) + declare ram_bytes: Int64; + @Struct.field(Int64) + declare v_staked: Int64; + @Struct.field(Int64) + declare v_liquid: Int64; + } + @Struct.type('get_voter_weight_response') + export class get_voter_weight_response extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Int64) + declare weight: Int64; + } + @Struct.type('getacctvote') + export class getacctvote extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare account: Name; + } + @Struct.type('getactvtrs') + export class getactvtrs extends Struct { + @Struct.field(Name) + declare account: Name; + } + @Struct.type('getmetric') + export class getmetric extends Struct { + @Struct.field(Name) + declare voter: Name; + } + @Struct.type('getmetrics') + export class getmetrics extends Struct { + @Struct.field(Name, { array: true }) + declare voters: Name[]; + } + @Struct.type('getmsigvote') + export class getmsigvote extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare proposer: Name; + @Struct.field(Name) + declare proposal_name: Name; + } + @Struct.type('getmsigvtrs') + export class getmsigvtrs extends Struct { + @Struct.field(Name) + declare proposer: Name; + @Struct.field(Name) + declare proposal_name: Name; + } + @Struct.type('gettopic') + export class gettopic extends Struct { + @Struct.field(Name) + declare id: Name; + } + @Struct.type('gettopics') + export class gettopics extends Struct {} + @Struct.type('gettopicvote') + export class gettopicvote extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare topic_id: Name; + } + @Struct.type('gettopicvtrs') + export class gettopicvtrs extends Struct { + @Struct.field(Name) + declare topic_id: Name; + } + @Struct.type('getvote') + export class getvote extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare topic_id: Name; + } + @Struct.type('getvoters') + export class getvoters extends Struct { + @Struct.field(Name) + declare topic_id: Name; + } + @Struct.type('getweight') + export class getweight extends Struct { + @Struct.field(Name) + declare voter: Name; + } + @Struct.type('getweights') + export class getweights extends Struct { + @Struct.field(Name, { array: true }) + declare voters: Name[]; + } + @Struct.type('msig_vote_row') + export class msig_vote_row extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare proposer: Name; + @Struct.field(Name) + declare proposal_name: Name; + @Struct.field(UInt8) + declare vote_type: UInt8; + } + @Struct.type('open') + export class open extends Struct { + @Struct.field(Name) + declare account: Name; + } + @Struct.type('removevote') + export class removevote extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare topic_id: Name; + } + @Struct.type('reset') + export class reset extends Struct {} + @Struct.type('rmacctvote') + export class rmacctvote extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare account: Name; + } + @Struct.type('rmmsigvote') + export class rmmsigvote extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare proposer: Name; + @Struct.field(Name) + declare proposal_name: Name; + } + @Struct.type('rmtopicvote') + export class rmtopicvote extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare topic_id: Name; + } + @Struct.type('setconfig') + export class setconfig extends Struct { + @Struct.field(Name) + declare system_contract: Name; + @Struct.field(Name) + declare token_contract: Name; + @Struct.field(Name) + declare token_action: Name; + @Struct.field(Asset.Symbol) + declare token_symbol: Asset.Symbol; + @Struct.field(Name) + declare fee_receiver: Name; + @Struct.field(Asset) + declare createtopic_fee: Asset; + } + @Struct.type('setmetriccfg') + export class setmetriccfg extends Struct { + @Struct.field(metrics_config) + declare metrics: metrics_config; + } + @Struct.type('topic_row') + export class topic_row extends Struct { + @Struct.field(Name) + declare id: Name; + @Struct.field('string') + declare description: string; + @Struct.field(Name) + declare creator: Name; + } + @Struct.type('topic_vote_row') + export class topic_vote_row extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare topic_id: Name; + @Struct.field(UInt8) + declare vote_type: UInt8; + } + @Struct.type('updatetopic') + export class updatetopic extends Struct { + @Struct.field(Name) + declare id: Name; + @Struct.field('string') + declare description: string; + } + @Struct.type('vote') + export class vote extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare topic_id: Name; + @Struct.field(UInt8) + declare vote_type: UInt8; + } + @Struct.type('voteaccount') + export class voteaccount extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare account: Name; + @Struct.field(UInt8) + declare vote_type: UInt8; + } + @Struct.type('votemsig') + export class votemsig extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare proposer: Name; + @Struct.field(Name) + declare proposal_name: Name; + @Struct.field(UInt8) + declare vote_type: UInt8; + } + @Struct.type('votetopic') + export class votetopic extends Struct { + @Struct.field(Name) + declare voter: Name; + @Struct.field(Name) + declare topic_id: Name; + @Struct.field(UInt8) + declare vote_type: UInt8; + } + @Struct.type('withdraw') + export class withdraw extends Struct { + @Struct.field(Name) + declare account: Name; + @Struct.field(Asset) + declare quantity: Asset; + } +} +export const TableMap = { + accountvotes: Types.account_vote_row, + balance: Types.balance_row, + config: Types.config_row, + msigvotes: Types.msig_vote_row, + topics: Types.topic_row, + votes: Types.topic_vote_row +}; +export interface TableTypes { + accountvotes: Types.account_vote_row; + balance: Types.balance_row; + config: Types.config_row; + msigvotes: Types.msig_vote_row; + topics: Types.topic_row; + votes: Types.topic_vote_row; +} +export type RowType = T extends keyof TableTypes ? TableTypes[T] : any; +export type TableNames = keyof TableTypes; +export namespace ActionParams { + export namespace Type { + export interface metrics_config { + system_token: Type.token_definition; + legacy_token: Type.token_definition; + wram_token: Type.token_definition; + v_token: Type.token_definition; + v_stake_contract: NameType; + } + export interface token_definition { + chain?: Checksum256Type; + contract: NameType; + symbol: Asset.SymbolType; + } + } + export interface bulkrmvotes { + topic_id: NameType; + num_votes: UInt32Type; + } + export interface changevote { + voter: NameType; + topic_id: NameType; + vote_type: UInt8Type; + } + export interface createtopic { + creator: NameType; + id: NameType; + description: string; + payment: AssetType; + } + export interface deletetopic { + id: NameType; + } + export interface disable {} + export interface enable {} + export interface getacctvote { + voter: NameType; + account: NameType; + } + export interface getactvtrs { + account: NameType; + } + export interface getmetric { + voter: NameType; + } + export interface getmetrics { + voters: NameType[]; + } + export interface getmsigvote { + voter: NameType; + proposer: NameType; + proposal_name: NameType; + } + export interface getmsigvtrs { + proposer: NameType; + proposal_name: NameType; + } + export interface gettopic { + id: NameType; + } + export interface gettopics {} + export interface gettopicvote { + voter: NameType; + topic_id: NameType; + } + export interface gettopicvtrs { + topic_id: NameType; + } + export interface getvote { + voter: NameType; + topic_id: NameType; + } + export interface getvoters { + topic_id: NameType; + } + export interface getweight { + voter: NameType; + } + export interface getweights { + voters: NameType[]; + } + export interface open { + account: NameType; + } + export interface removevote { + voter: NameType; + topic_id: NameType; + } + export interface reset {} + export interface rmacctvote { + voter: NameType; + account: NameType; + } + export interface rmmsigvote { + voter: NameType; + proposer: NameType; + proposal_name: NameType; + } + export interface rmtopicvote { + voter: NameType; + topic_id: NameType; + } + export interface setconfig { + system_contract: NameType; + token_contract: NameType; + token_action: NameType; + token_symbol: Asset.SymbolType; + fee_receiver: NameType; + createtopic_fee: AssetType; + } + export interface setmetriccfg { + metrics: Type.metrics_config; + } + export interface updatetopic { + id: NameType; + description: string; + } + export interface vote { + voter: NameType; + topic_id: NameType; + vote_type: UInt8Type; + } + export interface voteaccount { + voter: NameType; + account: NameType; + vote_type: UInt8Type; + } + export interface votemsig { + voter: NameType; + proposer: NameType; + proposal_name: NameType; + vote_type: UInt8Type; + } + export interface votetopic { + voter: NameType; + topic_id: NameType; + vote_type: UInt8Type; + } + export interface withdraw { + account: NameType; + quantity: AssetType; + } +} +export interface ActionNameParams { + bulkrmvotes: ActionParams.bulkrmvotes; + changevote: ActionParams.changevote; + createtopic: ActionParams.createtopic; + deletetopic: ActionParams.deletetopic; + disable: ActionParams.disable; + enable: ActionParams.enable; + getacctvote: ActionParams.getacctvote; + getactvtrs: ActionParams.getactvtrs; + getmetric: ActionParams.getmetric; + getmetrics: ActionParams.getmetrics; + getmsigvote: ActionParams.getmsigvote; + getmsigvtrs: ActionParams.getmsigvtrs; + gettopic: ActionParams.gettopic; + gettopics: ActionParams.gettopics; + gettopicvote: ActionParams.gettopicvote; + gettopicvtrs: ActionParams.gettopicvtrs; + getvote: ActionParams.getvote; + getvoters: ActionParams.getvoters; + getweight: ActionParams.getweight; + getweights: ActionParams.getweights; + open: ActionParams.open; + removevote: ActionParams.removevote; + reset: ActionParams.reset; + rmacctvote: ActionParams.rmacctvote; + rmmsigvote: ActionParams.rmmsigvote; + rmtopicvote: ActionParams.rmtopicvote; + setconfig: ActionParams.setconfig; + setmetriccfg: ActionParams.setmetriccfg; + updatetopic: ActionParams.updatetopic; + vote: ActionParams.vote; + voteaccount: ActionParams.voteaccount; + votemsig: ActionParams.votemsig; + votetopic: ActionParams.votetopic; + withdraw: ActionParams.withdraw; +} +export type ActionNames = keyof ActionNameParams; +export interface ActionReturnValues { + getacctvote: Types.get_account_vote_response; + getactvtrs: Types.get_account_vote_response[]; + getmetric: Types.get_voter_metrics_response; + getmetrics: Types.get_voter_metrics_response[]; + getmsigvote: Types.get_msig_vote_response; + getmsigvtrs: Types.get_msig_vote_response[]; + gettopic: Types.get_topic_response; + gettopics: Types.get_topic_response[]; + gettopicvote: Types.get_topic_vote_response; + gettopicvtrs: Types.get_topic_vote_response[]; + getvote: Types.get_topic_vote_response; + getvoters: Types.get_topic_vote_response[]; + getweight: Types.get_voter_weight_response; + getweights: Types.get_voter_weight_response[]; +} +export type ActionReturnNames = keyof ActionReturnValues; +export class Contract extends BaseContract { + constructor(args: PartialBy) { + super({ + client: args.client, + abi: abi, + account: args.account || Name.from('sentiment.gm') + }); + } + action( + name: T, + data: ActionNameParams[T], + options?: ActionOptions + ): Action { + return super.action(name, data, options); + } + readonly( + name: T, + data?: ActionNameParams[T] + ): ActionReturnValues[T] { + return super.readonly(name, data) as unknown as ActionReturnValues[T]; + } + table(name: T, scope?: NameType): Table> { + return super.table(name, scope, TableMap[name]); + } +} diff --git a/configs/contracts/unicove.api.ts b/configs/contracts/unicove.api.ts index 18a4e58b8..d20d54f91 100644 --- a/configs/contracts/unicove.api.ts +++ b/configs/contracts/unicove.api.ts @@ -20,7 +20,7 @@ import { import type { ActionOptions, ContractArgs, PartialBy, Table } from '@wharfkit/contract'; import { Contract as BaseContract } from '@wharfkit/contract'; export const abiBlob = Blob.from( - 'DmVvc2lvOjphYmkvMS4yARtCX3ZlY3Rvcl90b2tlbl9kZWZpbml0aW9uX0USdG9rZW5fZGVmaW5pdGlvbltdKghhYmlfaGFzaAACBW93bmVyBG5hbWUEaGFzaAtjaGVja3N1bTI1NgdhY2NvdW50AAMHYWNjb3VudARuYW1lBnRva2VucxxCX3ZlY3Rvcl90b2tlbl9kZWZpbml0aW9uX0U/DHplcm9iYWxhbmNlcwVib29sPwlhdmFpbGFibGUAAQdhY2NvdW50BG5hbWUIYmFsYW5jZXMAAwdhY2NvdW50BG5hbWUGdG9rZW5zEnRva2VuX2RlZmluaXRpb25bXQx6ZXJvYmFsYW5jZXMEYm9vbBVibG9ja2NoYWluX3BhcmFtZXRlcnMAERNtYXhfYmxvY2tfbmV0X3VzYWdlBnVpbnQ2NBp0YXJnZXRfYmxvY2tfbmV0X3VzYWdlX3BjdAZ1aW50MzIZbWF4X3RyYW5zYWN0aW9uX25ldF91c2FnZQZ1aW50MzIeYmFzZV9wZXJfdHJhbnNhY3Rpb25fbmV0X3VzYWdlBnVpbnQzMhBuZXRfdXNhZ2VfbGVld2F5BnVpbnQzMiNjb250ZXh0X2ZyZWVfZGlzY291bnRfbmV0X3VzYWdlX251bQZ1aW50MzIjY29udGV4dF9mcmVlX2Rpc2NvdW50X25ldF91c2FnZV9kZW4GdWludDMyE21heF9ibG9ja19jcHVfdXNhZ2UGdWludDMyGnRhcmdldF9ibG9ja19jcHVfdXNhZ2VfcGN0BnVpbnQzMhltYXhfdHJhbnNhY3Rpb25fY3B1X3VzYWdlBnVpbnQzMhltaW5fdHJhbnNhY3Rpb25fY3B1X3VzYWdlBnVpbnQzMhhtYXhfdHJhbnNhY3Rpb25fbGlmZXRpbWUGdWludDMyHmRlZmVycmVkX3RyeF9leHBpcmF0aW9uX3dpbmRvdwZ1aW50MzIVbWF4X3RyYW5zYWN0aW9uX2RlbGF5BnVpbnQzMhZtYXhfaW5saW5lX2FjdGlvbl9zaXplBnVpbnQzMhdtYXhfaW5saW5lX2FjdGlvbl9kZXB0aAZ1aW50MTYTbWF4X2F1dGhvcml0eV9kZXB0aAZ1aW50MTYKY29uZmlnX3JvdwAJCGNoYWluX2lkC2NoZWNrc3VtMjU2D3N5c3RlbV9jb250cmFjdARuYW1lFHN5c3RlbV9jb250cmFjdF9tc2lnBG5hbWUVc3lzdGVtX3Rva2VuX2NvbnRyYWN0BG5hbWUTc3lzdGVtX3Rva2VuX3N5bWJvbAZzeW1ib2wVc3lzdGVtX3JhbWNvcmVfc3ltYm9sBnN5bWJvbBFzeXN0ZW1fcmFtX3N5bWJvbAZzeW1ib2wRc3lzdGVtX3JleF9zeW1ib2wGc3ltYm9sEmdpZnRlZF9yYW1fZW5hYmxlZARib29sCWNvbm5lY3RvcgACB2JhbGFuY2UFYXNzZXQGd2VpZ2h0B2Zsb2F0NjQMY29udHJhY3RoYXNoAAEHYWNjb3VudARuYW1lE2RlbGVnYXRlZF9iYW5kd2lkdGgABARmcm9tBG5hbWUCdG8EbmFtZQpuZXRfd2VpZ2h0BWFzc2V0CmNwdV93ZWlnaHQFYXNzZXQLZGVsZWdhdGlvbnMAAQdhY2NvdW50BG5hbWUMZGlzdHJpYnV0aW9uAAEDZGVmEHRva2VuX2RlZmluaXRpb24SZW9zaW9fZ2xvYmFsX3N0YXRlFWJsb2NrY2hhaW5fcGFyYW1ldGVycw0MbWF4X3JhbV9zaXplBnVpbnQ2NBh0b3RhbF9yYW1fYnl0ZXNfcmVzZXJ2ZWQGdWludDY0D3RvdGFsX3JhbV9zdGFrZQVpbnQ2NB1sYXN0X3Byb2R1Y2VyX3NjaGVkdWxlX3VwZGF0ZRRibG9ja190aW1lc3RhbXBfdHlwZRhsYXN0X3BlcnZvdGVfYnVja2V0X2ZpbGwKdGltZV9wb2ludA5wZXJ2b3RlX2J1Y2tldAVpbnQ2NA9wZXJibG9ja19idWNrZXQFaW50NjQTdG90YWxfdW5wYWlkX2Jsb2NrcwZ1aW50MzIVdG90YWxfYWN0aXZhdGVkX3N0YWtlBWludDY0G3RocmVzaF9hY3RpdmF0ZWRfc3Rha2VfdGltZQp0aW1lX3BvaW50G2xhc3RfcHJvZHVjZXJfc2NoZWR1bGVfc2l6ZQZ1aW50MTYadG90YWxfcHJvZHVjZXJfdm90ZV93ZWlnaHQHZmxvYXQ2NA9sYXN0X25hbWVfY2xvc2UUYmxvY2tfdGltZXN0YW1wX3R5cGUOZXhjaGFuZ2Vfc3RhdGUAAwZzdXBwbHkFYXNzZXQEYmFzZQljb25uZWN0b3IFcXVvdGUJY29ubmVjdG9yFGdldF9hY2NvdW50X3Jlc3BvbnNlAAsHYWNjb3VudARuYW1lDGNvbnRyYWN0aGFzaAtjaGVja3N1bTI1NgdiYWxhbmNlDXRva2VuX2JhbGFuY2ULZGVsZWdhdGlvbnMVZGVsZWdhdGVkX2JhbmR3aWR0aFtdCXByb3Bvc2Fscwpwcm9wb3NhbFtdBnJlZnVuZA5yZWZ1bmRfcmVxdWVzdAZyZXhiYWwLcmV4X2JhbGFuY2UHcmV4ZnVuZAhyZXhfZnVuZAR2b3RlCnZvdGVyX2luZm8JZ2lmdGVkcmFtCmdpZnRlZF9yYW0IYmFsYW5jZXMPdG9rZW5fYmFsYW5jZVtdFmdldF9hdmFpbGFibGVfcmVzcG9uc2UAAgdhY2NvdW50BG5hbWUJYXZhaWxhYmxlBGJvb2wUZ2V0X25ldHdvcmtfcmVzcG9uc2UABgZnbG9iYWwSZW9zaW9fZ2xvYmFsX3N0YXRlB3Bvd2VydXANcG93ZXJ1cF9zdGF0ZQNyYW0OZXhjaGFuZ2Vfc3RhdGUDcmV4CHJleF9wb29sBXRva2VuBXRva2VuDnJhbV9naWZ0X2J5dGVzBWludDY0CmdpZnRlZF9yYW0AAwZnaWZ0ZWUEbmFtZQZnaWZ0ZXIEbmFtZQlyYW1fYnl0ZXMFaW50NjQJZ2lmdGVkcmFtAAEHYWNjb3VudARuYW1lBmdsb2JhbAAAB25ldHdvcmsAABlwYWlyX3RpbWVfcG9pbnRfc2VjX2ludDY0AAIFZmlyc3QOdGltZV9wb2ludF9zZWMGc2Vjb25kBWludDY0B3Bvd2VydXAAAA1wb3dlcnVwX3N0YXRlAAUHdmVyc2lvbgV1aW50OANuZXQWcG93ZXJ1cF9zdGF0ZV9yZXNvdXJjZQNjcHUWcG93ZXJ1cF9zdGF0ZV9yZXNvdXJjZQxwb3dlcnVwX2RheXMGdWludDMyD21pbl9wb3dlcnVwX2ZlZQVhc3NldBZwb3dlcnVwX3N0YXRlX3Jlc291cmNlAA8HdmVyc2lvbgV1aW50OAZ3ZWlnaHQFaW50NjQMd2VpZ2h0X3JhdGlvBWludDY0FGFzc3VtZWRfc3Rha2Vfd2VpZ2h0BWludDY0FGluaXRpYWxfd2VpZ2h0X3JhdGlvBWludDY0E3RhcmdldF93ZWlnaHRfcmF0aW8FaW50NjQRaW5pdGlhbF90aW1lc3RhbXAOdGltZV9wb2ludF9zZWMQdGFyZ2V0X3RpbWVzdGFtcA50aW1lX3BvaW50X3NlYwhleHBvbmVudAdmbG9hdDY0CmRlY2F5X3NlY3MGdWludDMyCW1pbl9wcmljZQVhc3NldAltYXhfcHJpY2UFYXNzZXQLdXRpbGl6YXRpb24FaW50NjQUYWRqdXN0ZWRfdXRpbGl6YXRpb24FaW50NjQVdXRpbGl6YXRpb25fdGltZXN0YW1wDnRpbWVfcG9pbnRfc2VjCHByb3Bvc2FsAAMNcHJvcG9zYWxfbmFtZQRuYW1lEnBhY2tlZF90cmFuc2FjdGlvbgVieXRlcxJlYXJsaWVzdF9leGVjX3RpbWUMdGltZV9wb2ludD8kCXByb3Bvc2FscwABB2FjY291bnQEbmFtZQNyYW0AAAZyZWZ1bmQAAQdhY2NvdW50BG5hbWUOcmVmdW5kX3JlcXVlc3QABAVvd25lcgRuYW1lDHJlcXVlc3RfdGltZQ50aW1lX3BvaW50X3NlYwpuZXRfYW1vdW50BWFzc2V0CmNwdV9hbW91bnQFYXNzZXQDcmV4AAALcmV4X2JhbGFuY2UABgd2ZXJzaW9uBXVpbnQ4BW93bmVyBG5hbWUKdm90ZV9zdGFrZQVhc3NldAtyZXhfYmFsYW5jZQVhc3NldAttYXR1cmVkX3JleAVpbnQ2NA5yZXhfbWF0dXJpdGllcxtwYWlyX3RpbWVfcG9pbnRfc2VjX2ludDY0W10IcmV4X2Z1bmQAAwd2ZXJzaW9uBXVpbnQ4BW93bmVyBG5hbWUHYmFsYW5jZQVhc3NldAhyZXhfcG9vbAAIB3ZlcnNpb24FdWludDgKdG90YWxfbGVudAVhc3NldAx0b3RhbF91bmxlbnQFYXNzZXQKdG90YWxfcmVudAVhc3NldA50b3RhbF9sZW5kYWJsZQVhc3NldAl0b3RhbF9yZXgFYXNzZXQQbmFtZWJpZF9wcm9jZWVkcwVhc3NldAhsb2FuX251bQZ1aW50NjQGcmV4YmFsAAEHYWNjb3VudARuYW1lB3JleGZ1bmQAAQdhY2NvdW50BG5hbWUJc2V0Y29uZmlnAAkIY2hhaW5faWQLY2hlY2tzdW0yNTYPc3lzdGVtX2NvbnRyYWN0BG5hbWUUc3lzdGVtX2NvbnRyYWN0X21zaWcEbmFtZRVzeXN0ZW1fdG9rZW5fY29udHJhY3QEbmFtZRNzeXN0ZW1fdG9rZW5fc3ltYm9sBnN5bWJvbBVzeXN0ZW1fcmFtY29yZV9zeW1ib2wGc3ltYm9sEXN5c3RlbV9yYW1fc3ltYm9sBnN5bWJvbBFzeXN0ZW1fcmV4X3N5bWJvbAZzeW1ib2wSZ2lmdGVkX3JhbV9lbmFibGVkBGJvb2wFdG9rZW4AAgJpZBB0b2tlbl9kZWZpbml0aW9uDGRpc3RyaWJ1dGlvbhN0b2tlbl9kaXN0cmlidXRpb24/DXRva2VuX2JhbGFuY2UAAgV0b2tlbgV0b2tlbgdiYWxhbmNlBWFzc2V0EHRva2VuX2RlZmluaXRpb24AAwVjaGFpbgxjaGVja3N1bTI1Nj8IY29udHJhY3QEbmFtZQZzeW1ib2wGc3ltYm9sEnRva2VuX2Rpc3RyaWJ1dGlvbgAFC2NpcmN1bGF0aW5nBWFzc2V0BmxvY2tlZAVhc3NldANtYXgFYXNzZXQGc3Rha2VkBWFzc2V0BnN1cHBseQVhc3NldAp2b3Rlcl9pbmZvAAoFb3duZXIEbmFtZQVwcm94eQRuYW1lCXByb2R1Y2VycwZuYW1lW10Gc3Rha2VkBWludDY0EGxhc3Rfdm90ZV93ZWlnaHQHZmxvYXQ2NBNwcm94aWVkX3ZvdGVfd2VpZ2h0B2Zsb2F0NjQIaXNfcHJveHkEYm9vbAZmbGFnczEGdWludDMyCXJlc2VydmVkMgZ1aW50MzIJcmVzZXJ2ZWQzBWFzc2V0BXZvdGVzAAEHYWNjb3VudARuYW1lEgAAACBPTREyB2FjY291bnTpAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnTG9hZCBBY2NvdW50IFN0YXRlJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBsb2FkIHRoZSBjdXJyZW50IHN0YXRlIG9mIGFuIGFjY291bnQuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAABQ8ZjozDYJYXZhaWxhYmxl8QEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0NoZWNrIE5hbWUgQXZhaWxhYmxlJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBjaGVja3MgdGhlIGF2YWlsYWJpbGl0eSBvZiBhbiBhY2NvdW50IG5hbWUuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAWKFpojkIYmFsYW5jZXODAi0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnTG9hZCBCYWxhbmNlcycKc3VtbWFyeTogJ1JlYWQtb25seSBhY3Rpb24gdG8gbG9hZCB0aGUgdG9rZW4gYmFsYW5jZXMgb2YgdGhlIHByb3ZpZGVkIHRva2VuIGNvbnRyYWN0cyBhbmQgc3ltYm9scy4nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS3QsGkZmZsnRQxjb250cmFjdGhhc2j5AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnTG9hZCBDb250cmFjdCBIYXNoJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBsb2FkIHRoZSBoYXNoIG9mIHRoZSBjb250cmFjdCBkZXBsb3llZCB0byBhbiBhY2NvdW50LicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQDwpC4bpqJKC2RlbGVnYXRpb25z6gEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0xvYWQgRGVsZWdhdGlvbnMnCnN1bW1hcnk6ICdSZWFkLW9ubHkgYWN0aW9uIHRvIGxvYWQgYW55IHRva2VucyBkZWxlZ2F0ZWQgYnkgYW4gYWNjb3VudC4nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0wqcv6uJuxSwxkaXN0cmlidXRpb27+AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnTG9hZCBUb2tlbiBEaXN0cmlidXRpb24nCnN1bW1hcnk6ICdSZWFkLW9ubHkgYWN0aW9uIHRvIGxvYWQgdGhlIGN1cnJlbnQgZGlzdHJpYnV0aW9uIGluZm9ybWF0aW9uIG9mIGEgdG9rZW4uJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAACQ5iaVl2MJZ2lmdGVkcmFt6QEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0xvYWQgR2lmdGVkIFJBTScKc3VtbWFyeTogJ1JlYWQtb25seSBhY3Rpb24gdG8gbG9hZCB0aGUgZ2lmdGVkIFJBTSBzdGF0ZSBvZiBhbiBhY2NvdW50LicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAABEc2hkBmdsb2JhbNoBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdMb2FkIEdsb2JhbCBTdGF0ZScKc3VtbWFyeTogJ1JlYWQtb25seSBhY3Rpb24gdG8gbG9hZCBnbG9iYWwgc3RhdGUgZGF0YS4nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0AAAAAXsqzmgduZXR3b3Jr6gEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0xvYWQgTmV0d29yayBTdGF0ZScKc3VtbWFyeTogJ1JlYWQtb25seSBhY3Rpb24gdG8gbG9hZCB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUgbmV0d29yay4nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0AAACg6qs4rQdwb3dlcnVw+wEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0xvYWQgUG93ZXJ1cCBTdGF0ZScKc3VtbWFyeTogJ1JlYWQtb25seSBhY3Rpb24gdG8gbG9hZCB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUgcG93ZXJ1cCBzeXN0ZW0gY29udHJhY3RzLicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAwNFgWumtCXByb3Bvc2Fsc4ECLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdMb2FkIEFjY291bnQgUHJvcG9zYWxzJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBsb2FkIG11bHRpc2lnIHByb3Bvc2FscyB0aGF0IHdlcmUgcHJvcG9zZWQgYnkgYW4gYWNjb3VudC4nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0AAAAAAACkuQNyYW3wAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnTG9hZCBSQU0gTWFya2V0IFN0YXRlJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBsb2FkIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSBSQU0gTWFya2V0LicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAACkqZe6BnJlZnVuZOUBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdMb2FkIFJlZnVuZCcKc3VtbWFyeTogJ1JlYWQtb25seSBhY3Rpb24gdG8gZmluZCBhbnkgcGVuZGluZyByZWZ1bmRzIGZvciBhbiBhY2NvdW50LicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAAAAALq6A3JleOsBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdMb2FkIFJFWCBTdGF0ZScKc3VtbWFyeTogJ1JlYWQtb25seSBhY3Rpb24gdG8gbG9hZCB0aGUgY3VycmVudCBzdGF0ZSBvZiB0aGUgUkVYIGNvbnRyYWN0LicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAABEc7q6BnJleGJhbP4BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdMb2FkIFJFWCBCYWxhbmNlJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBsb2FkIHRoZSBFT1MgYmFsYW5jZSBvZiBhbiBhY2NvdW50IGlkbGUgaW4gdGhlIFJFWCBjb250cmFjdC4nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0AAAAgTb26ugdyZXhmdW5k9QEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0xvYWQgUkVYIFN0YXRlJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBsb2FkIHRoZSBSRVggc3RhdGUgb2YgYW4gYWNjb3VudCBpbiB0aGUgUkVYIGNvbnRyYWN0LicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAYG5NirLCCXNldGNvbmZpZ5UCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdTZXQgQ29udHJhY3QgQ29uZmlndXJhdGlvbicKc3VtbWFyeTogJ01haW50YWluZXIgYWN0aW9uIHRvIHNldCB0aGUgdmFsdWVzIG9mIHRoZSBjb25maWcgdGFibGUgdG8gdXBkYXRlIGhvdyB0aGlzIGNvbnRyYWN0IG9wZXJhdGVzLicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAAAArDLdBXZvdGVz5gEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0xvYWQgQWNjb3VudCBWb3RlcycKc3VtbWFyeTogJ1JlYWQtb25seSBhY3Rpb24gdG8gbG9hZCB0aGUgdm90ZXMgY2FzdCBieSBhbiBhY2NvdW50LicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQEAAAAAMLcmRQNpNjQAAApjb25maWdfcm93AQNhcGkDYXBpAAAAEQAAACBPTREyFGdldF9hY2NvdW50X3Jlc3BvbnNlAABQ8ZjozDYWZ2V0X2F2YWlsYWJsZV9yZXNwb25zZQAAAFihaaI5D3Rva2VuX2JhbGFuY2VbXdCwaRmZmydFCGFiaV9oYXNoAPCkLhumokoVZGVsZWdhdGVkX2JhbmR3aWR0aFtdMKnL+ribsUsFdG9rZW4AAJDmJpWXYwpnaWZ0ZWRfcmFtAAAAAERzaGQSZW9zaW9fZ2xvYmFsX3N0YXRlAAAAAF7Ks5oUZ2V0X25ldHdvcmtfcmVzcG9uc2UAAACg6qs4rQ1wb3dlcnVwX3N0YXRlAADA0WBa6a0KcHJvcG9zYWxbXQAAAAAAAKS5DmV4Y2hhbmdlX3N0YXRlAAAAAKSpl7oOcmVmdW5kX3JlcXVlc3QAAAAAAAC6ughyZXhfcG9vbAAAAABEc7q6C3JleF9iYWxhbmNlAAAAIE29uroIcmV4X2Z1bmQAAAAAAKwy3Qp2b3Rlcl9pbmZv' + 'DmVvc2lvOjphYmkvMS4yARtCX3ZlY3Rvcl90b2tlbl9kZWZpbml0aW9uX0USdG9rZW5fZGVmaW5pdGlvbltdLAhhYmlfaGFzaAACBW93bmVyBG5hbWUEaGFzaAtjaGVja3N1bTI1NgdhY2NvdW50AAMHYWNjb3VudARuYW1lBnRva2VucxxCX3ZlY3Rvcl90b2tlbl9kZWZpbml0aW9uX0U/DHplcm9iYWxhbmNlcwVib29sPwlhdmFpbGFibGUAAQdhY2NvdW50BG5hbWUIYmFsYW5jZXMAAwdhY2NvdW50BG5hbWUGdG9rZW5zEnRva2VuX2RlZmluaXRpb25bXQx6ZXJvYmFsYW5jZXMEYm9vbBVibG9ja2NoYWluX3BhcmFtZXRlcnMAERNtYXhfYmxvY2tfbmV0X3VzYWdlBnVpbnQ2NBp0YXJnZXRfYmxvY2tfbmV0X3VzYWdlX3BjdAZ1aW50MzIZbWF4X3RyYW5zYWN0aW9uX25ldF91c2FnZQZ1aW50MzIeYmFzZV9wZXJfdHJhbnNhY3Rpb25fbmV0X3VzYWdlBnVpbnQzMhBuZXRfdXNhZ2VfbGVld2F5BnVpbnQzMiNjb250ZXh0X2ZyZWVfZGlzY291bnRfbmV0X3VzYWdlX251bQZ1aW50MzIjY29udGV4dF9mcmVlX2Rpc2NvdW50X25ldF91c2FnZV9kZW4GdWludDMyE21heF9ibG9ja19jcHVfdXNhZ2UGdWludDMyGnRhcmdldF9ibG9ja19jcHVfdXNhZ2VfcGN0BnVpbnQzMhltYXhfdHJhbnNhY3Rpb25fY3B1X3VzYWdlBnVpbnQzMhltaW5fdHJhbnNhY3Rpb25fY3B1X3VzYWdlBnVpbnQzMhhtYXhfdHJhbnNhY3Rpb25fbGlmZXRpbWUGdWludDMyHmRlZmVycmVkX3RyeF9leHBpcmF0aW9uX3dpbmRvdwZ1aW50MzIVbWF4X3RyYW5zYWN0aW9uX2RlbGF5BnVpbnQzMhZtYXhfaW5saW5lX2FjdGlvbl9zaXplBnVpbnQzMhdtYXhfaW5saW5lX2FjdGlvbl9kZXB0aAZ1aW50MTYTbWF4X2F1dGhvcml0eV9kZXB0aAZ1aW50MTYKY29uZmlnX3JvdwAJD3N5c3RlbV9jb250cmFjdARuYW1lFHN5c3RlbV9jb250cmFjdF9tc2lnBG5hbWUVc3lzdGVtX3Rva2VuX2NvbnRyYWN0BG5hbWUTc3lzdGVtX3Rva2VuX3N5bWJvbAZzeW1ib2wVc3lzdGVtX3JhbWNvcmVfc3ltYm9sBnN5bWJvbBFzeXN0ZW1fcmFtX3N5bWJvbAZzeW1ib2wRc3lzdGVtX3JleF9zeW1ib2wGc3ltYm9sEmdpZnRlZF9yYW1fZW5hYmxlZARib29sCGNoYWluX2lkC2NoZWNrc3VtMjU2CWNvbm5lY3RvcgACB2JhbGFuY2UFYXNzZXQGd2VpZ2h0B2Zsb2F0NjQMY29udHJhY3RoYXNoAAEHYWNjb3VudARuYW1lE2RlbGVnYXRlZF9iYW5kd2lkdGgABARmcm9tBG5hbWUCdG8EbmFtZQpuZXRfd2VpZ2h0BWFzc2V0CmNwdV93ZWlnaHQFYXNzZXQLZGVsZWdhdGlvbnMAAQdhY2NvdW50BG5hbWUMZGlzdHJpYnV0aW9uAAEDZGVmEHRva2VuX2RlZmluaXRpb24SZW9zaW9fZ2xvYmFsX3N0YXRlFWJsb2NrY2hhaW5fcGFyYW1ldGVycw0MbWF4X3JhbV9zaXplBnVpbnQ2NBh0b3RhbF9yYW1fYnl0ZXNfcmVzZXJ2ZWQGdWludDY0D3RvdGFsX3JhbV9zdGFrZQVpbnQ2NB1sYXN0X3Byb2R1Y2VyX3NjaGVkdWxlX3VwZGF0ZRRibG9ja190aW1lc3RhbXBfdHlwZRhsYXN0X3BlcnZvdGVfYnVja2V0X2ZpbGwKdGltZV9wb2ludA5wZXJ2b3RlX2J1Y2tldAVpbnQ2NA9wZXJibG9ja19idWNrZXQFaW50NjQTdG90YWxfdW5wYWlkX2Jsb2NrcwZ1aW50MzIVdG90YWxfYWN0aXZhdGVkX3N0YWtlBWludDY0G3RocmVzaF9hY3RpdmF0ZWRfc3Rha2VfdGltZQp0aW1lX3BvaW50G2xhc3RfcHJvZHVjZXJfc2NoZWR1bGVfc2l6ZQZ1aW50MTYadG90YWxfcHJvZHVjZXJfdm90ZV93ZWlnaHQHZmxvYXQ2NA9sYXN0X25hbWVfY2xvc2UUYmxvY2tfdGltZXN0YW1wX3R5cGUOZXhjaGFuZ2Vfc3RhdGUAAwZzdXBwbHkFYXNzZXQEYmFzZQljb25uZWN0b3IFcXVvdGUJY29ubmVjdG9yFGdldF9hY2NvdW50X3Jlc3BvbnNlAAwHYWNjb3VudARuYW1lDGNvbnRyYWN0aGFzaAtjaGVja3N1bTI1NgdiYWxhbmNlDXRva2VuX2JhbGFuY2ULZGVsZWdhdGlvbnMVZGVsZWdhdGVkX2JhbmR3aWR0aFtdCXByb3Bvc2Fscwpwcm9wb3NhbFtdBnJlZnVuZA5yZWZ1bmRfcmVxdWVzdAZyZXhiYWwLcmV4X2JhbGFuY2UHcmV4ZnVuZAhyZXhfZnVuZAR2b3RlCnZvdGVyX2luZm8JZ2lmdGVkcmFtCmdpZnRlZF9yYW0IYmFsYW5jZXMPdG9rZW5fYmFsYW5jZVtdB2NyZWF0ZWQKdGltZV9wb2ludBZnZXRfYXZhaWxhYmxlX3Jlc3BvbnNlAAIHYWNjb3VudARuYW1lCWF2YWlsYWJsZQRib29sFGdldF9uZXR3b3JrX3Jlc3BvbnNlAAYGZ2xvYmFsE2Vvc2lvX2dsb2JhbF9zdGF0ZT8HcG93ZXJ1cA1wb3dlcnVwX3N0YXRlA3JhbQ5leGNoYW5nZV9zdGF0ZQNyZXgIcmV4X3Bvb2wFdG9rZW4FdG9rZW4OcmFtX2dpZnRfYnl0ZXMFaW50NjQKZ2lmdGVkX3JhbQADBmdpZnRlZQRuYW1lBmdpZnRlcgRuYW1lCXJhbV9ieXRlcwVpbnQ2NAlnaWZ0ZWRyYW0AAQdhY2NvdW50BG5hbWUGZ2xvYmFsAAAHbmV0d29yawAAGXBhaXJfdGltZV9wb2ludF9zZWNfaW50NjQAAgVmaXJzdA50aW1lX3BvaW50X3NlYwZzZWNvbmQFaW50NjQHcG93ZXJ1cAAADXBvd2VydXBfc3RhdGUABQd2ZXJzaW9uBXVpbnQ4A25ldBZwb3dlcnVwX3N0YXRlX3Jlc291cmNlA2NwdRZwb3dlcnVwX3N0YXRlX3Jlc291cmNlDHBvd2VydXBfZGF5cwZ1aW50MzIPbWluX3Bvd2VydXBfZmVlBWFzc2V0FnBvd2VydXBfc3RhdGVfcmVzb3VyY2UADwd2ZXJzaW9uBXVpbnQ4BndlaWdodAVpbnQ2NAx3ZWlnaHRfcmF0aW8FaW50NjQUYXNzdW1lZF9zdGFrZV93ZWlnaHQFaW50NjQUaW5pdGlhbF93ZWlnaHRfcmF0aW8FaW50NjQTdGFyZ2V0X3dlaWdodF9yYXRpbwVpbnQ2NBFpbml0aWFsX3RpbWVzdGFtcA50aW1lX3BvaW50X3NlYxB0YXJnZXRfdGltZXN0YW1wDnRpbWVfcG9pbnRfc2VjCGV4cG9uZW50B2Zsb2F0NjQKZGVjYXlfc2VjcwZ1aW50MzIJbWluX3ByaWNlBWFzc2V0CW1heF9wcmljZQVhc3NldAt1dGlsaXphdGlvbgVpbnQ2NBRhZGp1c3RlZF91dGlsaXphdGlvbgVpbnQ2NBV1dGlsaXphdGlvbl90aW1lc3RhbXAOdGltZV9wb2ludF9zZWMIcHJvcG9zYWwAAw1wcm9wb3NhbF9uYW1lBG5hbWUScGFja2VkX3RyYW5zYWN0aW9uBWJ5dGVzEmVhcmxpZXN0X2V4ZWNfdGltZQx0aW1lX3BvaW50PyQJcHJvcG9zYWxzAAEHYWNjb3VudARuYW1lA3JhbQAABnJlZnVuZAABB2FjY291bnQEbmFtZQ5yZWZ1bmRfcmVxdWVzdAAEBW93bmVyBG5hbWUMcmVxdWVzdF90aW1lDnRpbWVfcG9pbnRfc2VjCm5ldF9hbW91bnQFYXNzZXQKY3B1X2Ftb3VudAVhc3NldAVyZXNldAAAA3JleAAAC3JleF9iYWxhbmNlAAYHdmVyc2lvbgV1aW50OAVvd25lcgRuYW1lCnZvdGVfc3Rha2UFYXNzZXQLcmV4X2JhbGFuY2UFYXNzZXQLbWF0dXJlZF9yZXgFaW50NjQOcmV4X21hdHVyaXRpZXMbcGFpcl90aW1lX3BvaW50X3NlY19pbnQ2NFtdCHJleF9mdW5kAAMHdmVyc2lvbgV1aW50OAVvd25lcgRuYW1lB2JhbGFuY2UFYXNzZXQIcmV4X3Bvb2wACAd2ZXJzaW9uBXVpbnQ4CnRvdGFsX2xlbnQFYXNzZXQMdG90YWxfdW5sZW50BWFzc2V0CnRvdGFsX3JlbnQFYXNzZXQOdG90YWxfbGVuZGFibGUFYXNzZXQJdG90YWxfcmV4BWFzc2V0EG5hbWViaWRfcHJvY2VlZHMFYXNzZXQIbG9hbl9udW0GdWludDY0BnJleGJhbAABB2FjY291bnQEbmFtZQdyZXhmdW5kAAEHYWNjb3VudARuYW1lCXNldGNvbmZpZwAJCGNoYWluX2lkC2NoZWNrc3VtMjU2D3N5c3RlbV9jb250cmFjdARuYW1lFHN5c3RlbV9jb250cmFjdF9tc2lnBG5hbWUVc3lzdGVtX3Rva2VuX2NvbnRyYWN0BG5hbWUTc3lzdGVtX3Rva2VuX3N5bWJvbAZzeW1ib2wVc3lzdGVtX3JhbWNvcmVfc3ltYm9sBnN5bWJvbBFzeXN0ZW1fcmFtX3N5bWJvbAZzeW1ib2wRc3lzdGVtX3JleF9zeW1ib2wGc3ltYm9sEmdpZnRlZF9yYW1fZW5hYmxlZARib29sBXRva2VuAAICaWQQdG9rZW5fZGVmaW5pdGlvbgxkaXN0cmlidXRpb24TdG9rZW5fZGlzdHJpYnV0aW9uPw10b2tlbl9iYWxhbmNlAAIFdG9rZW4FdG9rZW4HYmFsYW5jZQVhc3NldBB0b2tlbl9kZWZpbml0aW9uAAMFY2hhaW4MY2hlY2tzdW0yNTY/CGNvbnRyYWN0BG5hbWUGc3ltYm9sBnN5bWJvbBJ0b2tlbl9kaXN0cmlidXRpb24ABQtjaXJjdWxhdGluZwVhc3NldAZsb2NrZWQFYXNzZXQDbWF4BWFzc2V0BnN0YWtlZAVhc3NldAZzdXBwbHkFYXNzZXQKdm90ZXJfaW5mbwAKBW93bmVyBG5hbWUFcHJveHkEbmFtZQlwcm9kdWNlcnMGbmFtZVtdBnN0YWtlZAVpbnQ2NBBsYXN0X3ZvdGVfd2VpZ2h0B2Zsb2F0NjQTcHJveGllZF92b3RlX3dlaWdodAdmbG9hdDY0CGlzX3Byb3h5BGJvb2wGZmxhZ3MxBnVpbnQzMglyZXNlcnZlZDIGdWludDMyCXJlc2VydmVkMwVhc3NldAV2b3RlcwABB2FjY291bnQEbmFtZQR3aXBlAAAUAAAAIE9NETIHYWNjb3VudOkBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdMb2FkIEFjY291bnQgU3RhdGUnCnN1bW1hcnk6ICdSZWFkLW9ubHkgYWN0aW9uIHRvIGxvYWQgdGhlIGN1cnJlbnQgc3RhdGUgb2YgYW4gYWNjb3VudC4nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0AAFDxmOjMNglhdmFpbGFibGXxAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnQ2hlY2sgTmFtZSBBdmFpbGFibGUnCnN1bW1hcnk6ICdSZWFkLW9ubHkgYWN0aW9uIHRvIGNoZWNrcyB0aGUgYXZhaWxhYmlsaXR5IG9mIGFuIGFjY291bnQgbmFtZS4nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0AAABYoWmiOQhiYWxhbmNlc4MCLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdMb2FkIEJhbGFuY2VzJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBsb2FkIHRoZSB0b2tlbiBiYWxhbmNlcyBvZiB0aGUgcHJvdmlkZWQgdG9rZW4gY29udHJhY3RzIGFuZCBzeW1ib2xzLicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLdCwaRmZmydFDGNvbnRyYWN0aGFzaPkBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdMb2FkIENvbnRyYWN0IEhhc2gnCnN1bW1hcnk6ICdSZWFkLW9ubHkgYWN0aW9uIHRvIGxvYWQgdGhlIGhhc2ggb2YgdGhlIGNvbnRyYWN0IGRlcGxveWVkIHRvIGFuIGFjY291bnQuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAPCkLhumokoLZGVsZWdhdGlvbnPqAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnTG9hZCBEZWxlZ2F0aW9ucycKc3VtbWFyeTogJ1JlYWQtb25seSBhY3Rpb24gdG8gbG9hZCBhbnkgdG9rZW5zIGRlbGVnYXRlZCBieSBhbiBhY2NvdW50LicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLTCpy/q4m7FLDGRpc3RyaWJ1dGlvbv4BLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdMb2FkIFRva2VuIERpc3RyaWJ1dGlvbicKc3VtbWFyeTogJ1JlYWQtb25seSBhY3Rpb24gdG8gbG9hZCB0aGUgY3VycmVudCBkaXN0cmlidXRpb24gaW5mb3JtYXRpb24gb2YgYSB0b2tlbi4nCmljb246IGh0dHBzOi8vYXZhdGFycy5naXRodWJ1c2VyY29udGVudC5jb20vdS8xNDcyOTI4NjE/cz00MDAmdT0zYjFhZjY2ZTkwZGQ4NTFmNGQ3YzA5NmVkNmEyZmJiNGI5ZTE5MGRhCgotLS0AAJDmJpWXYwlnaWZ0ZWRyYW3pAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnTG9hZCBHaWZ0ZWQgUkFNJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBsb2FkIHRoZSBnaWZ0ZWQgUkFNIHN0YXRlIG9mIGFuIGFjY291bnQuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAAERzaGQGZ2xvYmFs2gEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0xvYWQgR2xvYmFsIFN0YXRlJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBsb2FkIGdsb2JhbCBzdGF0ZSBkYXRhLicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAABeyrOaB25ldHdvcmvqAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnTG9hZCBOZXR3b3JrIFN0YXRlJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBsb2FkIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSBuZXR3b3JrLicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAKDqqzitB3Bvd2VydXD7AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnTG9hZCBQb3dlcnVwIFN0YXRlJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBsb2FkIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSBwb3dlcnVwIHN5c3RlbSBjb250cmFjdHMuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAADA0WBa6a0JcHJvcG9zYWxzgQItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0xvYWQgQWNjb3VudCBQcm9wb3NhbHMnCnN1bW1hcnk6ICdSZWFkLW9ubHkgYWN0aW9uIHRvIGxvYWQgbXVsdGlzaWcgcHJvcG9zYWxzIHRoYXQgd2VyZSBwcm9wb3NlZCBieSBhbiBhY2NvdW50LicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAAAAAAKS5A3JhbfABLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdMb2FkIFJBTSBNYXJrZXQgU3RhdGUnCnN1bW1hcnk6ICdSZWFkLW9ubHkgYWN0aW9uIHRvIGxvYWQgdGhlIGN1cnJlbnQgc3RhdGUgb2YgdGhlIFJBTSBNYXJrZXQuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAAKSpl7oGcmVmdW5k5QEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0xvYWQgUmVmdW5kJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBmaW5kIGFueSBwZW5kaW5nIHJlZnVuZHMgZm9yIGFuIGFjY291bnQuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAAICssLoFcmVzZXTsAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnREVCVUc6IFJlc2V0IENvbnRyYWN0IFN0YXRlJwpzdW1tYXJ5OiAnREVCVUc6IFJlc2V0cyB0aGUgY29udHJhY3Qgc3RhdGUgdG8gZGVmYXVsdCB2YWx1ZXMuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAAAAAuroDcmV46wEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0xvYWQgUkVYIFN0YXRlJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBsb2FkIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSBSRVggY29udHJhY3QuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAAERzuroGcmV4YmFs/gEtLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ0xvYWQgUkVYIEJhbGFuY2UnCnN1bW1hcnk6ICdSZWFkLW9ubHkgYWN0aW9uIHRvIGxvYWQgdGhlIEVPUyBiYWxhbmNlIG9mIGFuIGFjY291bnQgaWRsZSBpbiB0aGUgUkVYIGNvbnRyYWN0LicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQAAACBNvbq6B3JleGZ1bmT1AS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnTG9hZCBSRVggU3RhdGUnCnN1bW1hcnk6ICdSZWFkLW9ubHkgYWN0aW9uIHRvIGxvYWQgdGhlIFJFWCBzdGF0ZSBvZiBhbiBhY2NvdW50IGluIHRoZSBSRVggY29udHJhY3QuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAABgbk2KssIJc2V0Y29uZmlnlQItLS0KCnNwZWNfdmVyc2lvbjogIjAuMi4wIgp0aXRsZTogJ1NldCBDb250cmFjdCBDb25maWd1cmF0aW9uJwpzdW1tYXJ5OiAnTWFpbnRhaW5lciBhY3Rpb24gdG8gc2V0IHRoZSB2YWx1ZXMgb2YgdGhlIGNvbmZpZyB0YWJsZSB0byB1cGRhdGUgaG93IHRoaXMgY29udHJhY3Qgb3BlcmF0ZXMuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAAACsMt0Fdm90ZXPmAS0tLQoKc3BlY192ZXJzaW9uOiAiMC4yLjAiCnRpdGxlOiAnTG9hZCBBY2NvdW50IFZvdGVzJwpzdW1tYXJ5OiAnUmVhZC1vbmx5IGFjdGlvbiB0byBsb2FkIHRoZSB2b3RlcyBjYXN0IGJ5IGFuIGFjY291bnQuJwppY29uOiBodHRwczovL2F2YXRhcnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3UvMTQ3MjkyODYxP3M9NDAwJnU9M2IxYWY2NmU5MGRkODUxZjRkN2MwOTZlZDZhMmZiYjRiOWUxOTBkYQoKLS0tAAAAAACgquMEd2lwZdkBLS0tCgpzcGVjX3ZlcnNpb246ICIwLjIuMCIKdGl0bGU6ICdERUJVRzogV2lwZSBDb250cmFjdCBEYXRhJwpzdW1tYXJ5OiAnREVCVUc6IFJlbW92ZXMgYWxsIGNvbnRyYWN0IHN0YXRlLicKaWNvbjogaHR0cHM6Ly9hdmF0YXJzLmdpdGh1YnVzZXJjb250ZW50LmNvbS91LzE0NzI5Mjg2MT9zPTQwMCZ1PTNiMWFmNjZlOTBkZDg1MWY0ZDdjMDk2ZWQ2YTJmYmI0YjllMTkwZGEKCi0tLQEAAAAAMLcmRQNpNjQAAApjb25maWdfcm93AQNhcGkDYXBpAAAAEQAAACBPTREyFGdldF9hY2NvdW50X3Jlc3BvbnNlAABQ8ZjozDYWZ2V0X2F2YWlsYWJsZV9yZXNwb25zZQAAAFihaaI5D3Rva2VuX2JhbGFuY2VbXdCwaRmZmydFCGFiaV9oYXNoAPCkLhumokoVZGVsZWdhdGVkX2JhbmR3aWR0aFtdMKnL+ribsUsFdG9rZW4AAJDmJpWXYwpnaWZ0ZWRfcmFtAAAAAERzaGQSZW9zaW9fZ2xvYmFsX3N0YXRlAAAAAF7Ks5oUZ2V0X25ldHdvcmtfcmVzcG9uc2UAAACg6qs4rQ1wb3dlcnVwX3N0YXRlAADA0WBa6a0KcHJvcG9zYWxbXQAAAAAAAKS5DmV4Y2hhbmdlX3N0YXRlAAAAAKSpl7oOcmVmdW5kX3JlcXVlc3QAAAAAAAC6ughyZXhfcG9vbAAAAABEc7q6C3JleF9iYWxhbmNlAAAAIE29uroIcmV4X2Z1bmQAAAAAAKwy3Qp2b3Rlcl9pbmZv' ); export const abi = ABI.from(abiBlob); export namespace Types { @@ -102,8 +102,6 @@ export namespace Types { } @Struct.type('config_row') export class config_row extends Struct { - @Struct.field(Checksum256) - declare chain_id: Checksum256; @Struct.field(Name) declare system_contract: Name; @Struct.field(Name) @@ -120,6 +118,8 @@ export namespace Types { declare system_rex_symbol: Asset.Symbol; @Struct.field('bool') declare gifted_ram_enabled: boolean; + @Struct.field(Checksum256) + declare chain_id: Checksum256; } @Struct.type('connector') export class connector extends Struct { @@ -326,6 +326,8 @@ export namespace Types { declare giftedram: gifted_ram; @Struct.field(token_balance, { array: true }) declare balances: token_balance[]; + @Struct.field(TimePoint) + declare created: TimePoint; } @Struct.type('get_available_response') export class get_available_response extends Struct { @@ -401,8 +403,8 @@ export namespace Types { } @Struct.type('get_network_response') export class get_network_response extends Struct { - @Struct.field(eosio_global_state) - declare global: eosio_global_state; + @Struct.field(eosio_global_state, { optional: true }) + declare global?: eosio_global_state; @Struct.field(powerup_state) declare powerup: powerup_state; @Struct.field(exchange_state) @@ -437,6 +439,8 @@ export namespace Types { @Struct.field(Name) declare account: Name; } + @Struct.type('reset') + export class reset extends Struct {} @Struct.type('rex') export class rex extends Struct {} @Struct.type('rexbal') @@ -475,6 +479,8 @@ export namespace Types { @Struct.field(Name) declare account: Name; } + @Struct.type('wipe') + export class wipe extends Struct {} } export const TableMap = { config: Types.config_row @@ -527,6 +533,7 @@ export namespace ActionParams { export interface refund { account: NameType; } + export interface reset {} export interface rex {} export interface rexbal { account: NameType; @@ -548,6 +555,7 @@ export namespace ActionParams { export interface votes { account: NameType; } + export interface wipe {} } export interface ActionNameParams { account: ActionParams.account; @@ -563,11 +571,13 @@ export interface ActionNameParams { proposals: ActionParams.proposals; ram: ActionParams.ram; refund: ActionParams.refund; + reset: ActionParams.reset; rex: ActionParams.rex; rexbal: ActionParams.rexbal; rexfund: ActionParams.rexfund; setconfig: ActionParams.setconfig; votes: ActionParams.votes; + wipe: ActionParams.wipe; } export type ActionNames = keyof ActionNameParams; export interface ActionReturnValues { diff --git a/eslint.config.js b/eslint.config.js index 979f811d5..1a3430937 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -43,8 +43,7 @@ export default ts.config([ 'dist/', 'configs/contracts', 'src/lib/wharf/contracts/', - 'src/lib/paraglide', - 'src/paraglide', + 'src/locales/*', 'svelte.config.js' ] } diff --git a/package.json b/package.json index 3f7afb001..dcb00eab5 100644 --- a/package.json +++ b/package.json @@ -4,13 +4,12 @@ "private": true, "scripts": { "dev": "vite dev", - "build-paraglide": "bunx @inlang/paraglide-js compile --project ./project.inlang --outdir ./src/lib/paraglide", - "build": "bun run build-paraglide && vite build", - "build-docker": "bun run build-paraglide && ADAPTER=bun vite build", + "build": "vite build", + "build-docker": "ADAPTER=bun vite build", "preview": "vite preview", "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", - "clean": "rm -rf ./.svelte-kit ./node_modules ./src/paraglide", + "clean": "rm -rf ./.svelte-kit ./node_modules", "lint": "bun run prettier && bun run eslint", "prettier": "prettier --check .", "eslint": "eslint .", @@ -18,16 +17,13 @@ "test": "bun test" }, "devDependencies": { - "@inlang/paraglide-js": "^1.11.8", - "@inlang/paraglide-sveltekit": "^0.16.1", - "@inlang/paraglide-vite": "^1.4.0", "@melt-ui/pp": "^0.3.2", "@melt-ui/svelte": "^0.83.0", "@sveltejs/adapter-auto": "^5.0.0", "@sveltejs/adapter-cloudflare": "^6.0.1", "@sveltejs/enhanced-img": "^0.6.0", - "@sveltejs/kit": "^2.20.2", - "@sveltejs/vite-plugin-svelte": "^5.0.3", + "@sveltejs/kit": "^2.47.2", + "@sveltejs/vite-plugin-svelte": "^6.2.1", "@tailwindcss/vite": "^4.0.14", "@types/bun": "^1.1.10", "@types/eslint": "^9.6.1", @@ -43,42 +39,44 @@ "prettier-plugin-svelte": "^3.3.3", "prettier-plugin-tailwindcss": "^0.6.11", "storyblok": "^3.36.0", - "svelte": "^5.35.0", + "svelte": "^5.41.1", "svelte-adapter-bun": "^0.5.2", "svelte-check": "^4.1.5", "tailwind-merge": "^3.3.0", "tailwindcss": "^4.0.14", "tslib": "^2.6.3", - "typescript": "^5.5.4", - "typescript-eslint": "^8.32.0", + "typescript": "^5.9.3", + "typescript-eslint": "^8.46.2", "typescript-svelte-plugin": "^0.3.47", - "vite": "^6.2.4" + "vite": "^7.1.11" }, "type": "module", "dependencies": { - "@accuser/svelte-plausible-analytics": "^1.0.0", "@lucide/svelte": "^0.525.0", "@storyblok/svelte": "^5.0.2", "@wharfkit/account-creation-plugin-metamask": "^1.3.0", "@wharfkit/common": "^1.5.0", "@wharfkit/contract": "^1.2.1", "@wharfkit/hyperion": "^1.0.4", + "@wharfkit/msigs": "^0.3.1", "@wharfkit/protocol-scatter": "^1.4.2", - "@wharfkit/resources": "^1.3.1", - "@wharfkit/roborovski": "^1.1.0", + "@wharfkit/resources": "^1.5.0", + "@wharfkit/roborovski": "^2.0.0-rc5", "@wharfkit/session": "^1.7.1-beta1", - "@wharfkit/transact-plugin-resource-provider": "^1.1.3", - "@wharfkit/wallet-plugin-anchor": "^1.6.0", + "@wharfkit/transact-plugin-resource-provider": "^2.0.0", + "@wharfkit/wallet-plugin-anchor": "^1.7.2", "@wharfkit/wallet-plugin-cleos": "^1.2.0", "@wharfkit/wallet-plugin-cloudwallet": "^1.4.0", + "@wharfkit/wallet-plugin-gatewallet": "^1.1.0", "@wharfkit/wallet-plugin-imtoken": "^1.1.0", "@wharfkit/wallet-plugin-metamask": "^1.2.1", "@wharfkit/wallet-plugin-privatekey": "^1.1.0", "@wharfkit/wallet-plugin-scatter": "^1.5.1", "@wharfkit/wallet-plugin-tokenpocket": "^1.6.3", - "@wharfkit/wallet-plugin-web-authenticator": "^0.4.0", "@wharfkit/wallet-plugin-wombat": "^1.5.1", - "@wharfkit/web-renderer": "^1.4.1", + "@wharfkit/web-ui": "^0.2.1", + "@wuchale/svelte": "^0.16.6", + "@wuchale/vite-plugin": "^0.14.8", "chart.js": "^4.4.3", "clsx": "^2.1.1", "dayjs": "^1.11.13", @@ -87,7 +85,11 @@ "just-extend": "^6.2.0", "runed": "^0.15.3", "svead": "^0.0.13", - "unicove-components": "^0.2.2", + "svelte-exmarkdown": "^5.0.2", + "unicove-components": "^0.6.1", + "valibot": "^1.1.0", + "wuchale": "^0.17.5", "yaml": "^2.7.0" - } + }, + "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e" } diff --git a/project.inlang/.gitignore b/project.inlang/.gitignore deleted file mode 100644 index 5e4659675..000000000 --- a/project.inlang/.gitignore +++ /dev/null @@ -1 +0,0 @@ -cache \ No newline at end of file diff --git a/project.inlang/project_id b/project.inlang/project_id deleted file mode 100644 index daf6e5744..000000000 --- a/project.inlang/project_id +++ /dev/null @@ -1 +0,0 @@ -7a1424155f79c2f5b28f89a7bd586c36a39fbcc32b04c7564e578d3e65eec45f \ No newline at end of file diff --git a/project.inlang/settings.json b/project.inlang/settings.json deleted file mode 100644 index fb81d0a73..000000000 --- a/project.inlang/settings.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "$schema": "https://inlang.com/schema/project-settings", - "languageTags": ["en", "ko", "zh"], - "modules": [ - "https://cdn.jsdelivr.net/npm/@inlang/message-lint-rule-empty-pattern@latest/dist/index.js", - "https://cdn.jsdelivr.net/npm/@inlang/message-lint-rule-missing-translation@latest/dist/index.js", - "https://cdn.jsdelivr.net/npm/@inlang/message-lint-rule-without-source@latest/dist/index.js", - "https://cdn.jsdelivr.net/npm/@inlang/plugin-message-format@latest/dist/index.js", - "https://cdn.jsdelivr.net/npm/@inlang/plugin-m-function-matcher@latest/dist/index.js" - ], - "plugin.inlang.messageFormat": { - "pathPattern": "./messages/{languageTag}.json" - }, - "sourceLanguageTag": "en" -} diff --git a/scripts/env/merge-env.sh b/scripts/env/merge-env.sh new file mode 100755 index 000000000..2116d16f7 --- /dev/null +++ b/scripts/env/merge-env.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env bash +set -euo pipefail + +SOURCE="$1" +TARGET="$2" + +while IFS= read -r line || [[ -n "$line" ]]; do + if [[ "$line" =~ ^[[:space:]]*# ]] || [[ -z "$line" ]]; then + echo "$line" + continue + fi + + var_name="${line%%=*}" + + if [[ -n "${!var_name+x}" ]]; then + echo "$var_name=\"${!var_name}\"" + else + echo "$line" + fi +done < "$SOURCE" > "$TARGET" diff --git a/src/app.css b/src/app.css index 2368abd55..22256af55 100644 --- a/src/app.css +++ b/src/app.css @@ -2,7 +2,20 @@ @import 'unicove-components'; @source "../node_modules/unicove-components"; +/* The component library defines the warning role only under [data-scheme='dark'], so text-warning is unresolved in light mode. */ +:root:not([data-scheme='dark']) { + --role-warning: oklch(0.51 0.1927 var(--warning-hue)); + --role-on-warning: oklch(1 0 var(--warning-hue)); + --role-warning-container: oklch(0.92 0.042 var(--warning-hue)); + --role-on-warning-container: oklch(0.42 0.17 var(--warning-hue)); +} + @theme { + /* The component library defines no headline-sm step, but VpHeading, msigCard and approvalprogress all reference it. */ + --text-headline-sm: var(--text-xl); + --text-headline-sm--line-height: 1.25; + --text-headline-sm--font-weight: 600; + /* TODO: turn these into color roles and remove them */ --color-green-50: #f0fdf4; --color-green-100: #dcfce7; diff --git a/src/app.d.ts b/src/app.d.ts index 348c065e7..a89a22326 100644 --- a/src/app.d.ts +++ b/src/app.d.ts @@ -3,11 +3,13 @@ import type { NetworkState } from '$lib/state/network.svelte'; declare global { namespace App { interface Locals { - lang: string; + locale: string; network: NetworkState; } interface Error { code?: string; + title?: string; + subtitle?: string; } } } diff --git a/src/app.html b/src/app.html index de477bcde..1e121a393 100644 --- a/src/app.html +++ b/src/app.html @@ -1,5 +1,5 @@ - + [0]; - -const renamedNetworks: Record = { - eos: 'vaulta' -}; - -export function getHeaderLang(event: RequestEvent) { - const acceptLanguage = event.request.headers.get('accept-language'); - const locales = - acceptLanguage?.split(',')?.map((lang: string) => lang.split(';')[0].split('-')[0].trim()) ?? - []; - for (const locale of locales) { - if (availableLanguageTags.find((l: string) => l.toLowerCase() === locale.toLowerCase())) { - return locale; - } - } - return null; -} - -function isAPIPath(pathname: string) { - return /^\/[a-z0-9]+\/api/gm.test(pathname); -} - -function skipRedirect(pathname: string) { - return isAPIPath(pathname) || pathname.endsWith('.xml'); -} - -function isNetwork(value: string) { - return isNetworkShortName(value); -} - -const redirects: Record = { - '/earn': '/staking', - '/resources/ram/buy': '/ram/buy', - '/resources/ram/sell': '/ram/sell', - '/swap/eos': `/swap/${systemtoken.id.url}/core.vaulta/4,a`, - '/swap/kb': `/swap/${systemtoken.id.url}/${ramtoken.id.url}}`, - '/swap/ram': `/swap/${systemtoken.id.url}/${ramtoken.id.url}}`, - '/swap/eosio/4,eos/core.vaulta/4,a': '/swap/eosio.token/4,eos/core.vaulta/4,a' +import * as main from './locales/loader.ssr.svelte'; +import * as js from './locales/loader.ssr'; +import { runWithLocale, loadLocales } from 'wuchale/load-utils/server'; +import { locales } from 'virtual:wuchale/locales'; +import { resolveLocale, resolveRedirect } from '$lib/utils/url'; +import { getCacheHeaders } from '$lib/utils'; + +await loadLocales(main.key, main.loadIDs, main.loadCatalog, locales); +await loadLocales(js.key, js.loadIDs, js.loadCatalog, locales); + +export const wuchaleHandle: Handle = async ({ event, resolve }) => { + const locale = resolveLocale(event.url.pathname, event.cookies.get('locale')); + event.locals.locale = locale; + return await runWithLocale(locale, () => + resolve(event, { + transformPageChunk: ({ html }) => html.replace('%lang%', locale) + }) + ); }; -function getManualRedirectPath(pathMore: string[]): string { - const pathname = '/' + pathMore.join('/'); - return redirects[pathname]; -} - -function isManualRedirectPath(pathMore: string[]): boolean { - const pathname = '/' + pathMore.join('/'); - return pathname in redirects; -} +type HandleParams = Parameters[0]; export async function networkHandle({ event, resolve }: HandleParams): Promise { event.locals.network = getBackendNetworkByName(PUBLIC_CHAIN_SHORT, event.fetch); - return resolve(event, { + const response = await resolve(event, { transformPageChunk: ({ html }) => html.replace('%network%', event.locals.network.toString()) }); + if (event.url.pathname.includes('/api/')) response.headers.set('x-robots-tag', 'noindex'); + if (response.status === 404) { + for (const [k, v] of Object.entries(getCacheHeaders(60))) response.headers.set(k, v); + } + return response; } export async function redirectHandle({ event, resolve }: HandleParams): Promise { const { pathname, search } = new URL(event.request.url); - - if (skipRedirect(pathname)) { - return resolve(event); - } - - const [, pathFirst, pathSecond, ...pathMore] = pathname.split('/').map((p) => p.trim()); - - let lang = pathFirst; - const network: string = PUBLIC_CHAIN_SHORT; - - if (!isNetwork(pathSecond) && !renamedNetworks[pathSecond]) { - lang = pathFirst; - pathMore.unshift(pathSecond); - } - - // Ensure that the 'lang' property exists on the 'Locals' type - (event.locals as { lang: string }).lang = lang; - - let url = `/${lang}/${network}`; - - if (pathMore.length > 0) { - if (isManualRedirectPath(pathMore)) { - url += getManualRedirectPath(pathMore); - } else { - url += `/${pathMore.join('/')}`; - } - } - - if (pathname !== url) { - return new Response(undefined, { - headers: { Location: url + search }, - status: 302 - }); - } - - return resolve(event); + const redirect = resolveRedirect(pathname, event.cookies.get('locale')); + if (!redirect) return resolve(event); + const headers: Record = { Location: redirect.location + search }; + if (redirect.cacheable) Object.assign(headers, getCacheHeaders(3600)); + return new Response(undefined, { headers, status: redirect.status }); } -export const handle: Handle = sequence(i18nHandle, redirectHandle, networkHandle); +export const handle: Handle = sequence(wuchaleHandle, redirectHandle, networkHandle); diff --git a/src/hooks.ts b/src/hooks.ts index 0c6e87071..85aca2ea6 100644 --- a/src/hooks.ts +++ b/src/hooks.ts @@ -1,14 +1,11 @@ import type { Transport } from '@sveltejs/kit'; -import { i18n } from '$lib/i18n'; import { NetworkState } from '$lib/state/network.svelte'; import { AccountState } from '$lib/state/client/account.svelte'; import { Name } from '@wharfkit/antelope'; import type { SerializedAccountState } from '$lib/types/account'; import type { SerializedNetworkState } from '$lib/types/network'; -export const reroute = i18n.reroute(); - export const transport: Transport = { AccountState: { encode: (state) => { diff --git a/src/lib/assets/hero/jungle4/logo.svg b/src/lib/assets/hero/jungle4/logo.svg index 16431bd2c..af9cf3a85 100644 --- a/src/lib/assets/hero/jungle4/logo.svg +++ b/src/lib/assets/hero/jungle4/logo.svg @@ -1,46 +1,64 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + + + + + + + diff --git a/src/lib/components/accountswitch.svelte b/src/lib/components/accountswitch.svelte index 6cca632b9..618e3c0a4 100644 --- a/src/lib/components/accountswitch.svelte +++ b/src/lib/components/accountswitch.svelte @@ -9,10 +9,10 @@ type SerializedSession, type WalletPlugin } from '@wharfkit/session'; - import * as m from '$lib/paraglide/messages'; import type { UnicoveContext } from '$lib/state/client.svelte'; import type { NetworkState } from '$lib/state/network.svelte'; + import { supportsAccountCreation } from '$lib/wharf/plugins'; import X from '@lucide/svelte/icons/x'; import CircleX from '@lucide/svelte/icons/circle-x'; @@ -21,12 +21,13 @@ import UserCheck from '@lucide/svelte/icons/user-check'; import UserPlus from '@lucide/svelte/icons/user-plus'; import Search from '@lucide/svelte/icons/search'; - import { goto } from '$lib/utils'; import { Button } from 'unicove-components'; import { TextInput } from 'unicove-components'; import { Wallet } from '@lucide/svelte'; + import { goto } from '$app/navigation'; const context = getContext('state'); + const urlPath = $derived(context.urlPath); interface PageProps { network: NetworkState; @@ -78,7 +79,7 @@ function redirect(account: NameType) { if (!context.settings.data.preventAccountPageSwitching) { - goto(`/${network}/account/${account}`); + goto(urlPath(`/${network}/account/${account}`)); } } @@ -158,7 +159,7 @@ aria-label="account-switcher-label" id="account-switcher" > - {m.common_connect_wallet()} + Connect Wallet {/if} @@ -216,12 +217,12 @@
- {m.common_add_account()} + Add Account
- {m.common_my_accounts()} + My Accounts {#if chainSessions.length > 4 || filterValue} @@ -264,9 +265,7 @@ {session.actor}@{session.permission} {#if session.walletPlugin.id === 'wallet-plugin-multisig'}
- ↳ {m.common_account_multisig_using_account({ - account: session.walletPlugin.data.session.actor - })} + ↳ multisig using {session.walletPlugin.data.session.actor}
{/if} @@ -297,8 +296,8 @@
- {m.common_login_to_unicove()} - {m.common_connect_wallet_login()} + Login to Unicove + Connect your wallet to login
{#if context.wharf.sessionKit} @@ -326,12 +325,14 @@ {/each} {/if} -
- - - +
+ {#if supportsAccountCreation(network.chain.id)} + + {/if} Cancel
diff --git a/src/lib/components/banner/pageBanner.svelte b/src/lib/components/banner/pageBanner.svelte index 3a1bb4e46..4ba5782f3 100644 --- a/src/lib/components/banner/pageBanner.svelte +++ b/src/lib/components/banner/pageBanner.svelte @@ -1,7 +1,6 @@ -

{m.common_available()}

+

Available

{#if context.account} {:else} - {m.common_not_logged_in()} + Not logged in {/if}

{#if market.account?.systemtoken?.liquid} diff --git a/src/lib/components/card/tokenbalance.svelte b/src/lib/components/card/tokenbalance.svelte index 52ccf513c..e144f1eda 100644 --- a/src/lib/components/card/tokenbalance.svelte +++ b/src/lib/components/card/tokenbalance.svelte @@ -13,7 +13,6 @@ ZeroUnits, type TokenPair } from '$lib/types/token'; - import * as m from '$lib/paraglide/messages'; import { Button } from 'unicove-components'; import type { UnicoveContext } from '$lib/state/client.svelte'; import { Code } from 'unicove-components'; @@ -21,6 +20,7 @@ import { Details } from 'unicove-components'; const context = getContext('state'); + const { urlPath } = context; interface CTA { text: string; @@ -68,6 +68,7 @@ const balanceDelegated = $derived(_balance.child('delegated')); const balanceUsed = $derived(_balance.child('used')); const balanceWRAM = $derived(_balance.child('wram')); + const balanceGifted = $derived(_balance.child('gifted')); {#snippet SubBalance(label: string, value: Asset, action?: { text: string; href: string })} @@ -100,13 +101,13 @@ src={_balance.token.media?.logo?.light} /> {#if isRamToken} - + {balance.token.name} (RAM) {:else} {balance.token.name} @@ -143,54 +144,58 @@
{@render SubBalance( - m.common_available(), + isRamToken ? 'Tradable' : 'Available', _balance.balance, !_balance.locked ? { - text: m.common_send(), - href: `/${network}/send/${balance.token.id.url}` + text: 'Send', + href: urlPath(`/send/${balance.token.id.url}`) } : undefined )} {#if tokenEquals(balance.token.id, network.token.id)} {#if network.supports('staking') && balanceStaked} - {@render SubBalance(m.common_staked(), balanceStaked.balance, { - text: m.common_staking(), - href: `/${network}/staking` + {@render SubBalance('Staked', balanceStaked.balance, { + text: 'Staking', + href: urlPath(`/staking`) })} {/if} {#if balanceUnstaked && balanceUnstaked.balance.value > 0} - {@render SubBalance(m.common_unstaked(), balanceUnstaked.balance, { - text: m.common_withdraw(), - href: `/${network}/staking/withdraw` + {@render SubBalance('Unstaked', balanceUnstaked.balance, { + text: 'Withdraw', + href: urlPath(`/staking/withdraw`) })} {/if} {#if balanceDelegated && balanceDelegated.balance.value > 0} - {@render SubBalance(m.common_delegated(), balanceDelegated.balance, { - text: m.common_reclaim(), - href: `/${network}/undelegate` + {@render SubBalance('Delegated', balanceDelegated.balance, { + text: 'Reclaim', + href: urlPath(`/undelegate`) })} {/if} {#if balanceRefunding && balanceRefunding.balance.value > 0} - {@render SubBalance(m.common_refunding(), balanceRefunding.balance, { - text: m.common_claim(), - href: `/${network}/refund` + {@render SubBalance('Refunding', balanceRefunding.balance, { + text: 'Claim', + href: urlPath(`/refund`) })} {/if} {/if} {#if balanceUsed && balanceUsed.balance.value > 0} - {@render SubBalance(m.common_used(), balanceUsed.balance)} + {@render SubBalance('Used', balanceUsed.balance)} + {/if} + + {#if isRamToken && balanceGifted && balanceGifted.balance.value > 0} + {@render SubBalance('Gifted (untransferable)', balanceGifted.balance)} {/if} {#if isRamToken && balanceWRAM} {@render SubBalance('WRAM', balanceWRAM.balance, { - text: m.common_swap(), - href: `/${network}/swap/${balanceWRAM.token.id.url}/${network.getRamToken().id.url}` + text: 'Swap', + href: urlPath(`/swap/${balanceWRAM.token.id.url}/${network.getRamToken().id.url}`) })} {/if} diff --git a/src/lib/components/card/tokenoverview.svelte b/src/lib/components/card/tokenoverview.svelte index afecc8e23..65b231d03 100644 --- a/src/lib/components/card/tokenoverview.svelte +++ b/src/lib/components/card/tokenoverview.svelte @@ -5,10 +5,13 @@ import TradingPair from '$lib/components/elements/tradingpair.svelte'; import { Chip } from 'unicove-components'; import { Breakdown, BreakdownRow } from '$lib/components/breakdown'; - import * as m from '$lib/paraglide/messages'; import type { NetworkState } from '$lib/state/network.svelte'; import { tokenEquals, ZeroUnits, type TokenBalance, type TokenPair } from '$lib/types/token'; import { Button } from 'unicove-components'; + import type { UnicoveContext } from '$lib/state/client.svelte'; + import { getContext } from 'svelte'; + + const { urlPath } = getContext('state'); interface TokenOverviewProps { balance: TokenBalance; @@ -46,11 +49,11 @@
{#if isRamToken} - + {balance.token.symbol.name} (RAM) {:else} - + {balance.token.symbol.name} {/if} @@ -64,7 +67,7 @@ class="col-start-1 col-end-3 row-start-1 flex flex-col py-2 @xs:flex-row @xs:justify-between" > -

{m.common_value()}

+

Value

{#if value.units.gt(ZeroUnits)} @@ -86,9 +89,7 @@ {#if network.supports('directfunding') && tokenEquals(balance.token.id, network.getSystemToken().id) && isCurrentUser}

- +
{/if}
@@ -96,12 +97,12 @@ @@ -122,11 +123,11 @@ {#if balanceUnstaked && balanceUnstaked.balance.value > 0} @@ -134,11 +135,11 @@ {#if balanceDelegated && balanceDelegated.balance.value > 0} @@ -146,11 +147,11 @@ {#if balanceRefunding && balanceRefunding.balance.value > 0} @@ -158,7 +159,7 @@ {/if} {#if balanceTotal && balanceTotal.balance.value > 0} - + {/if} diff --git a/src/lib/components/chart/barchart.svelte b/src/lib/components/chart/barchart.svelte index 4cee6a682..358bf6752 100644 --- a/src/lib/components/chart/barchart.svelte +++ b/src/lib/components/chart/barchart.svelte @@ -3,7 +3,6 @@ import { Chart } from 'chart.js'; import 'chart.js/auto'; import { Card } from 'unicove-components'; - import * as m from '$lib/paraglide/messages'; interface Props { data: { x: number; y: number; y1?: number }[]; @@ -21,13 +20,13 @@ labels: data.map((_, i) => i + 1), datasets: [ { - label: m.common_staked(), + label: 'Staked', data: data.map((d) => d.y), backgroundColor: '#00ED97', borderRadius: 4 }, { - label: m.common_yield(), + label: 'Yield', data: data.map((d) => d.y1), backgroundColor: '#B2FAE0', borderRadius: 4 @@ -75,13 +74,13 @@
- {m.common_staked()} + Staked
- {m.common_yield()} + Yield
- {m.common_today()} + Today
diff --git a/src/lib/components/chart/chart-container.svelte b/src/lib/components/chart/chart-container.svelte index 5742e1e58..427e9cd73 100644 --- a/src/lib/components/chart/chart-container.svelte +++ b/src/lib/components/chart/chart-container.svelte @@ -4,7 +4,6 @@ import { Select, type ExtendedSelectOption } from 'unicove-components'; import type { HistoricalPrice } from '$lib/types'; import LineChart from './line-chart.svelte'; - import * as m from '$lib/paraglide/messages'; interface Props { pair: string; @@ -89,6 +88,6 @@
{startDate} - {m.common_today()} + Today
diff --git a/src/lib/components/chart/rampricehistory.svelte b/src/lib/components/chart/rampricehistory.svelte index e263ebfeb..312d16c5b 100644 --- a/src/lib/components/chart/rampricehistory.svelte +++ b/src/lib/components/chart/rampricehistory.svelte @@ -8,7 +8,7 @@ import { ramtoken } from '$lib/wharf/chains'; import { ZeroUnits } from '$lib/types/token'; - const { network } = getContext('state'); + const { network, urlPath } = getContext('state'); const market = getContext('market'); type Price = { date: string; value: number }; @@ -17,7 +17,7 @@ const fetchRamPrices = async () => { if (network.supports('timeseries')) { try { - const response = await fetch(`/${network}/api/metrics/marketprice/ram`); + const response = await fetch(urlPath(`/api/metrics/marketprice/ram`)); const parsedRamResponse: APIResponse = await response.json(); if (Array.isArray(parsedRamResponse) && parsedRamResponse.length) { diff --git a/src/lib/components/chart/statshistory.svelte b/src/lib/components/chart/statshistory.svelte new file mode 100644 index 000000000..150d28dbe --- /dev/null +++ b/src/lib/components/chart/statshistory.svelte @@ -0,0 +1,82 @@ + + +
+ +
diff --git a/src/lib/components/chart/tokendistribution.svelte b/src/lib/components/chart/tokendistribution.svelte index c501f5fed..b3c1625f8 100644 --- a/src/lib/components/chart/tokendistribution.svelte +++ b/src/lib/components/chart/tokendistribution.svelte @@ -1,9 +1,12 @@ {#if filtered.length} - +
{#each filtered as item}
{/each} @@ -57,12 +60,14 @@ {#each filtered as item} {#snippet title()} -
+
{distributionMap[item.key].label} -
+ {/snippet} -
{percentString(item.value)}
+
{percentString(locale, item.value)}
{/each} diff --git a/src/lib/components/chart/tokenpricehistory.svelte b/src/lib/components/chart/tokenpricehistory.svelte index 6a0040350..2c23e1410 100644 --- a/src/lib/components/chart/tokenpricehistory.svelte +++ b/src/lib/components/chart/tokenpricehistory.svelte @@ -18,7 +18,7 @@ if (context.network.supports('timeseries')) { try { const response = await context.network.fetch( - `/${context.network}/api/metrics/marketprice/token` + context.urlPath(`/api/metrics/marketprice/token`) ); const parsedTokenResponse: APIResponse = await response.json(); diff --git a/src/lib/components/discussion/Comment.svelte b/src/lib/components/discussion/Comment.svelte new file mode 100644 index 000000000..bc8908af9 --- /dev/null +++ b/src/lib/components/discussion/Comment.svelte @@ -0,0 +1,276 @@ + + +
+
+
+ + {#if vote === 1} + Supported + {:else if vote === 0} + Opposed + {/if} +
+ +
+ {#if comment.pending?.phase === 'confirming'} + Confirming + {:else if comment.pending?.phase === 'awaiting'} + Posted. It will appear here shortly. + {/if} + {#if showTarget && targetLabel} + + {targetLabel} + + {/if} + {#snippet stamp()} + + {/snippet} + {#if trxId} + + {@render stamp()} + + {:else} + {@render stamp()} + {/if} +
+
+ + {#if editing} + +
+ {#if draftBytes > MAX_BODY_BYTES} + {draftCharsOver} characters over the limit. + {:else if draftBytes >= MAX_BODY_BYTES * 0.8} + + {#if draftCharsLeft === 0}No characters left.{:else}About {draftCharsLeft} characters left.{/if} + + {/if} +
+ {#if !draftCheck.ok && draftCheck.reason === 'too_long'} +

+ This comment is too long. Shorten it by about {draftCharsOver} characters to post. +

+ {:else if !draftCheck.ok && draftCheck.reason === 'bidi'} +

+ This comment contains hidden text-direction characters that cannot be posted. +

+ {/if} + {#if editError} +

Your change could not be saved.

+

{editError}

+ {/if} +
+ + +
+ {:else} +
+ + {#if collapsed} +
+ {/if} +
+ {#if collapsed || (expanded && (longBySource || tall))} +
+ +
+ {/if} + {/if} + + {#if deleteError} +

The comment could not be deleted.

+

{deleteError}

+ {/if} + + {#if own} +
+ {#if own && !editing} + + {#if confirmingDelete} + Delete this comment? + + + {:else} + + {/if} + {/if} +
+ {/if} +
diff --git a/src/lib/components/discussion/CommentBody.svelte b/src/lib/components/discussion/CommentBody.svelte new file mode 100644 index 000000000..6e4d572af --- /dev/null +++ b/src/lib/components/discussion/CommentBody.svelte @@ -0,0 +1,19 @@ + + +
{body}
+ + diff --git a/src/lib/components/discussion/Composer.svelte b/src/lib/components/discussion/Composer.svelte new file mode 100644 index 000000000..4aa18e525 --- /dev/null +++ b/src/lib/components/discussion/Composer.svelte @@ -0,0 +1,143 @@ + + +
+ {#if !signedIn} +
+ Connect a wallet to join the discussion. Comments stay visible either way. +
+ {:else if ability === null} +
+ {:else if ability.ok === false && ability.reason === 'blocked'} +
+ Your account cannot post here. Comments are moderated for spam, impersonation, harassment, and + posts unrelated to what is being discussed. +
+ {:else if ability.ok === false && ability.reason === 'below_gate'} +
+ You need available to comment. Your + account has available; the rest is staked. + {#if context.network.supports('staking')} + Unstake or add funds to join in. + {/if} +
+ {:else} +
{ + e.preventDefault(); + post(); + }} + > + {#if multiTarget && target} +

+ {#if target.target.kind === 'topic'} + Commenting on the proposal + {:else if target.step} + Commenting on Step {target.step}{#if target.title}: {target.title}{/if} + {/if} +

+ {/if} + {#if target && !target.postable} +

+ This step is closed to new comments. The discussion stays readable. +

+ {/if} + {#if signing} + +

Waiting for your wallet to sign

+ {:else if multiTarget && !target} +

Choose a step above to comment on it.

+ {:else if !(target && !target.postable)} + +
+ Plain text only. Line breaks are kept. + {#if bytes > MAX_BODY_BYTES} + {charsOver} characters over the limit. + {:else if bytes >= MAX_BODY_BYTES * 0.8} + + {#if charsLeft === 0}No characters left.{:else}About {charsLeft} characters left.{/if} + + {/if} +
+ {#if !check.ok && check.reason === 'too_long'} +

+ This comment is too long. Shorten it by about {charsOver} characters to post. +

+ {:else if !check.ok && check.reason === 'bidi'} +

+ This comment contains hidden text-direction characters that cannot be posted. +

+ {/if} + {#if postError} +

Your comment could not be posted.

+

{postError}

+ {/if} +
+ +
+ {/if} +
+ {/if} +
diff --git a/src/lib/components/discussion/DiscussionCard.svelte b/src/lib/components/discussion/DiscussionCard.svelte new file mode 100644 index 000000000..30cef70e2 --- /dev/null +++ b/src/lib/components/discussion/DiscussionCard.svelte @@ -0,0 +1,71 @@ + + +{#if compact} + + {#if summary.unavailable} + Discussion is not available on this network. + {:else if !summary.loaded} + Read the discussion + {:else if summary.total === 1} + Read the discussion (1 comment) + {:else} + Read the discussion ({summary.total} comments) + {/if} + +{:else} + + +
+

Discussion

+ {#if summary.loaded && !summary.unavailable} + + {#if summary.total === 1}1 comment{:else}{summary.total} comments{/if} + + {/if} +
+ {#if summary.unavailable} +

Discussion is not available on this network.

+ {:else if !summary.loaded} +
+
+
+ {:else if latest?.last_message && latest.last_activity} +

+ {latest.last_message.sender} · {dayjs(chainDate(latest.last_activity)).fromNow()} +

+

{teaser}

+ {:else} +

No comments yet.

+ {/if} +

+ Read the discussion +

+
+
+{/if} diff --git a/src/lib/components/discussion/TargetNav.svelte b/src/lib/components/discussion/TargetNav.svelte new file mode 100644 index 000000000..835e272af --- /dev/null +++ b/src/lib/components/discussion/TargetNav.svelte @@ -0,0 +1,45 @@ + + +
+ + {#each descriptors as d (d.key)} + + {/each} +
diff --git a/src/lib/components/discussion/Thread.svelte b/src/lib/components/discussion/Thread.svelte new file mode 100644 index 000000000..a9e06c6d2 --- /dev/null +++ b/src/lib/components/discussion/Thread.svelte @@ -0,0 +1,195 @@ + + +
+ {#if thread.error} +
+ {thread.error} + +
+ {/if} + + {#if thread.unavailable} +

Discussion is not available on this network.

+ {:else if !thread.ready} +
+ Loading comments +
+
+
+ {:else} + {#if showJump} +
+ +
+ {/if} + {#if thread.hasMore} +
+ +
+ {/if} +
+ {#if comments.length === 0} +

+ No comments yet. +

+ {:else} + {#each comments as comment (commentKey(comment))} + + {/each} + {/if} +
+
+ +

+ Comments are on-chain messages signed by your account and are public and permanent. + Moderators remove comments that are spam, impersonation, harassment, or unrelated to what is + being discussed, and block accounts that repeat it. A removed comment stays on chain and + stops appearing on Unicove. +

+
+ {/if} +
diff --git a/src/lib/components/elements/account.svelte b/src/lib/components/elements/account.svelte index 522415570..30f0d040f 100644 --- a/src/lib/components/elements/account.svelte +++ b/src/lib/components/elements/account.svelte @@ -9,10 +9,10 @@ let { contract = false, ...props }: Props = $props(); - let { network } = getContext('state'); + let { network, urlPath } = getContext('state'); const href = $derived( - contract ? `/${network}/contract/${props.name}` : `/${network}/account/${props.name}` + contract ? urlPath(`/contract/${props.name}`) : urlPath(`/${network}/account/${props.name}`) ); diff --git a/src/lib/components/elements/action.svelte b/src/lib/components/elements/action.svelte index f7b9f2998..daa6c58ff 100644 --- a/src/lib/components/elements/action.svelte +++ b/src/lib/components/elements/action.svelte @@ -18,7 +18,6 @@ import SquareTerminal from '@lucide/svelte/icons/square-terminal'; import { Card } from 'unicove-components'; - import * as m from '$lib/paraglide/messages'; import ActionSummaryContainer from '$lib/components/summary/components/container.svelte'; import { getActionSummaryTitle } from '../summary'; import { PUBLIC_SYSTEM_CONTRACT } from '$env/static/public'; @@ -47,8 +46,6 @@ variant = 'pretty' }: Props = $props(); - let advancedMode = $derived(context.settings.data.advancedMode); - let summaryTitle = $derived(getActionSummaryTitle(action.account, action.name, objectified)); @@ -63,7 +60,7 @@ {#if isArray}
- {m.common_length()}({value.length}) + length({value.length})
{/if} {:else} @@ -100,7 +97,7 @@ {#snippet Decoded()} {#await context.network.decodeAction(action)} - + {:then result} {:catch error} @@ -110,7 +107,11 @@ {/snippet} {#snippet Pretty(data: ObjectifiedActionData | undefined)} - + {#if data}
{#each Object.keys(data) as key} @@ -120,7 +121,7 @@ {/each}
{:else} - {m.common_no_data()} + No data {/if}
{/snippet} @@ -225,7 +226,7 @@
{#if action.authorization.length} - {m.common_signed_by()} + Signed by
    {#each action.authorization as auth}
  • @@ -240,8 +241,8 @@
    - {#if advancedMode && notified} - {m.common_notified()} + {#if notified} + notified
      {#each notified as account}
    • @@ -273,7 +274,7 @@ {/if} {@render Pretty(objectified)} {/snippet} - {#if variant === 'summary'} + {#if variant === 'summary' || variant === 'table'} {@render Summary()} {:else if variant === 'ricardian'} {@render Ricardian()} diff --git a/src/lib/components/elements/actiontable.svelte b/src/lib/components/elements/actiontable.svelte new file mode 100644 index 000000000..add34a7a0 --- /dev/null +++ b/src/lib/components/elements/actiontable.svelte @@ -0,0 +1,139 @@ + + + + +
      + {#each traces as trace} + {@const contract = String(trace.action.account)} + {@const action = String(trace.action.name)} + {@const datetime = trace.block_time.toDate()} + {@const trxId = trace.trx_id} + {@const rowKey = `${trxId}-${trace.receipt.global_sequence}`} + {@const isExpanded = expandedRows.has(rowKey)} + {@const summary = getActionSummaryComponent(contract, action, trace.act.data)} + {@const perspective = resolvePerspective(trace)} +
      +
      + {#if showDate} +
      +
      + {formatDateTime(datetime, locale, { + dateStyle: 'short', + timeStyle: 'short' + })} +
      +
      + +
      +
      + {/if} +
      + + + {contract} + + + + + {action} + + +
      +
      +
      +
      + {#if summary} + {@const SummaryComponent = summary} + + {:else if trace.act.data} + + {/if} +
      + {#if overflowingRows.has(rowKey) && !isExpanded} +
      + {/if} +
      + {#if overflowingRows.has(rowKey) || isExpanded} + + {/if} +
      +
      +
      + {/each} +
      +
      diff --git a/src/lib/components/elements/asset.svelte b/src/lib/components/elements/asset.svelte index dce06904e..2418ea16a 100644 --- a/src/lib/components/elements/asset.svelte +++ b/src/lib/components/elements/asset.svelte @@ -1,6 +1,5 @@ diff --git a/src/lib/components/elements/block.svelte b/src/lib/components/elements/block.svelte index e30517e2d..4dcef96de 100644 --- a/src/lib/components/elements/block.svelte +++ b/src/lib/components/elements/block.svelte @@ -5,9 +5,9 @@ let props: Omit = $props(); - let { network } = getContext('state'); + let { urlPath } = getContext('state'); - const href = $derived(`/${network}/block/${String(props.number)}`); + const href = $derived(urlPath(`/block/${String(props.number)}`)); diff --git a/src/lib/components/elements/contract.svelte b/src/lib/components/elements/contract.svelte index fe5b3ed9f..a327b77c1 100644 --- a/src/lib/components/elements/contract.svelte +++ b/src/lib/components/elements/contract.svelte @@ -5,7 +5,7 @@ import type { UnicoveContext } from '$lib/state/client.svelte'; import { cn } from '$lib/utils'; - const { network } = getContext('state'); + const { urlPath } = getContext('state'); interface Props { name: NameType; @@ -18,8 +18,8 @@ let { name, action, struct, table, children, ...props }: Props = $props(); - let href = $derived.by(() => { - const base = `/${network}/contract/${name}`; + let path = $derived.by(() => { + const base = `/contract/${name}`; if (action) { return base + `/actions/${action}`; } @@ -31,6 +31,8 @@ } return base; }); + + const href = $derived(urlPath(path)); {#if name} diff --git a/src/lib/components/elements/key.svelte b/src/lib/components/elements/key.svelte index 773f2da96..f621908f7 100644 --- a/src/lib/components/elements/key.svelte +++ b/src/lib/components/elements/key.svelte @@ -3,11 +3,11 @@ import { Key as KeyElement, type KeyProps } from 'unicove-components'; import { getContext } from 'svelte'; - const { network } = getContext('state'); + const { urlPath } = getContext('state'); let props: Omit = $props(); - const href = $derived(`/${network}/key/${String(props.key)}`); + const href = $derived(urlPath(`/key/${String(props.key)}`)); diff --git a/src/lib/components/elements/proposalname.svelte b/src/lib/components/elements/proposalname.svelte new file mode 100644 index 000000000..975adf8b4 --- /dev/null +++ b/src/lib/components/elements/proposalname.svelte @@ -0,0 +1,87 @@ + + +{#if $open} +
      +
      + +
      +
      +
      { + e.preventDefault(); + submit(); + }} + > +

      Proposal Name

      +

      + Enter a name for this proposal or use the generated default. +

      + +
      + + +
      + +
      + + +
      +
      +
      +
      +
      +{/if} diff --git a/src/lib/components/elements/resourceCard.svelte b/src/lib/components/elements/resourceCard.svelte index c50dc31a2..a1cdd0a02 100644 --- a/src/lib/components/elements/resourceCard.svelte +++ b/src/lib/components/elements/resourceCard.svelte @@ -5,7 +5,6 @@ import Wifi from '@lucide/svelte/icons/wifi'; import HardDrive from '@lucide/svelte/icons/hard-drive'; - import * as m from '$lib/paraglide/messages'; import { Number as NumberFormat } from 'unicove-components'; interface Props { @@ -60,6 +59,6 @@ {unit} - {m.common_available()} + Available

    diff --git a/src/lib/components/elements/suspiciousmemo.svelte b/src/lib/components/elements/suspiciousmemo.svelte new file mode 100644 index 000000000..8a0fa4c5c --- /dev/null +++ b/src/lib/components/elements/suspiciousmemo.svelte @@ -0,0 +1,102 @@ + + + + +{#if !shouldHide || pageRevealed} + {memo} +{:else} + + + +{/if} + +{#if $open} +
    +
    + +
    +
    +
    +
    + +
    +
    +

    Potential Safety Warning

    +

    + This memo contains content that may pose a security risk. +

    +
    +
    + +
    +

    + Scammers often send small transactions with phishing links to steal your funds. +

    +

    + Never enter private keys, seed phrases, or credentials + on websites linked from transaction memos. +

    +
    + +
    + + +
    +
    +
    +
    +{/if} diff --git a/src/lib/components/elements/transaction.svelte b/src/lib/components/elements/transaction.svelte index 17cfb58f9..11e9576fc 100644 --- a/src/lib/components/elements/transaction.svelte +++ b/src/lib/components/elements/transaction.svelte @@ -4,7 +4,7 @@ import { cn, truncateCenter } from '$lib/utils'; import { getContext, type Snippet } from 'svelte'; - const { network } = getContext('state'); + const { urlPath } = getContext('state'); let { id, @@ -18,7 +18,7 @@ {#if id} {#if children} {@render children()} diff --git a/src/lib/components/elements/transferlist.svelte b/src/lib/components/elements/transferlist.svelte new file mode 100644 index 000000000..9330d6b6f --- /dev/null +++ b/src/lib/components/elements/transferlist.svelte @@ -0,0 +1,84 @@ + + +{#if isLoading} +
    +
    Loading transfers...
    +
    +{:else if transfers.length === 0} +
    No transfers found
    +{:else} +
    + {#each transfers as transfer} + {@const data = transfer.trace.act.data as { + from: string; + to: string; + quantity: string; + memo?: string; + }} + {@const isSend = perspectiveOf.equals(data.from)} + {@const counterparty = isSend ? data.to : data.from} + {@const datetime = transfer.trace.block_time.toDate()} + +
    + + {formatDateTime(datetime, locale, { dateStyle: 'short', timeStyle: 'short' })} + +
    + +
    + +
    + +
    + {isSend ? '-' : '+'} + +
    + {/each} +
    + +
    + View all transfers + + +{/if} diff --git a/src/lib/components/elements/unstaking.svelte b/src/lib/components/elements/unstaking.svelte index a00a72244..9e4a3f157 100644 --- a/src/lib/components/elements/unstaking.svelte +++ b/src/lib/components/elements/unstaking.svelte @@ -6,8 +6,11 @@ import { Card, Stack, Table, TD, TH, TR } from 'unicove-components'; import { Button } from 'unicove-components'; import type { UnstakingRecord } from '$lib/utils/staking'; - import { languageTag } from '$lib/paraglide/runtime'; - import * as m from '$lib/paraglide/messages'; + import type { UnicoveContext } from '$lib/state/client.svelte'; + import { getContext } from 'svelte'; + + const context = getContext('state'); + const locale = $derived(context.settings.data.locale); interface Props extends HTMLAttributes { href?: string; @@ -18,15 +21,16 @@ {#if records.filter((r) => !r.savings).length > 0} - +

    - {m.unstaking_description()} + The tokens currently being unstaked are listed below with the date they become available. + These balances will continue to earn rewards until they are withdrawn.

    {#snippet thead()} - - + + {/snippet} {#each records as record} @@ -34,15 +38,15 @@ {/if} {/each}
    {m.common_amount()}{m.common_date_available()}AmountDate Available
    - {record.date ? record.date.toLocaleTimeString(languageTag()) : '--'} - {record.date ? record.date.toLocaleDateString(languageTag()) : '--'} + {record.date ? record.date.toLocaleTimeString(locale) : '--'} + {record.date ? record.date.toLocaleDateString(locale) : '--'}
    {#if href} - + {/if}
    diff --git a/src/lib/components/errors/generic.svelte b/src/lib/components/errors/generic.svelte index ac2449ddf..12b21297d 100644 --- a/src/lib/components/errors/generic.svelte +++ b/src/lib/components/errors/generic.svelte @@ -8,6 +8,7 @@ diff --git a/src/lib/components/filters/ClearFiltersButton.svelte b/src/lib/components/filters/ClearFiltersButton.svelte new file mode 100644 index 000000000..0c953856e --- /dev/null +++ b/src/lib/components/filters/ClearFiltersButton.svelte @@ -0,0 +1,17 @@ + + + diff --git a/src/lib/components/filters/DateRangeInputs.svelte b/src/lib/components/filters/DateRangeInputs.svelte new file mode 100644 index 000000000..d82341993 --- /dev/null +++ b/src/lib/components/filters/DateRangeInputs.svelte @@ -0,0 +1,55 @@ + + +
    + + +
    + +
    + + +
    + + diff --git a/src/lib/components/filters/FilterToggleButton.svelte b/src/lib/components/filters/FilterToggleButton.svelte new file mode 100644 index 000000000..dc499a384 --- /dev/null +++ b/src/lib/components/filters/FilterToggleButton.svelte @@ -0,0 +1,29 @@ + + + diff --git a/src/lib/components/filters/LimitSelect.svelte b/src/lib/components/filters/LimitSelect.svelte new file mode 100644 index 000000000..17c60fcfe --- /dev/null +++ b/src/lib/components/filters/LimitSelect.svelte @@ -0,0 +1,27 @@ + + + +
+{:else} + + +
+ + {#if validationError} +

{validationError}

+ {/if} + + {#if searchError} +

{searchError}

+ {/if} + + {#if searching} +

Searching...

+ {:else if result !== null} + {#if accountExists && !result} +
+

This name is already taken

+

+ The account "{query.trim().toLowerCase()}" already exists on the network. +

+
+ {:else if result} + {@const bid = result} +
+ +
+

{String(bid.newname)}

+ + {formatRelativeTime(bid.last_bid_time.toMilliseconds())} + +
+
+

+ Current bid: + {formatBidAmount(bid.high_bid, symbol)} +

+

+ High bidder: + +

+
+
+ + {#if accountName} + + {/if} +
+
+
+ {:else if !accountExists} +
+ +

No bids yet - be the first!

+

+ No one has placed a bid on "{searchedName}" yet. +

+
+ + {#if accountName} + + {/if} +
+
+
+ {/if} + {/if} + diff --git a/src/routes/[[locale]]/[network]/(account)/bidname/components/your-bids.svelte b/src/routes/[[locale]]/[network]/(account)/bidname/components/your-bids.svelte new file mode 100644 index 000000000..0c9786ab3 --- /dev/null +++ b/src/routes/[[locale]]/[network]/(account)/bidname/components/your-bids.svelte @@ -0,0 +1,299 @@ + + + + + {#if scanning} +
+

Scanning auction table…

+

+ {scannedRows.toLocaleString()} records checked{#if foundNames.length > 0}, {foundNames.length} + name{foundNames.length === 1 ? '' : 's'} found{/if} +

+
+ +
+
+ {:else if scanDone && !scanError} +
+

+ Scan complete — checked {scannedRows.toLocaleString()} records{#if foundNames.length > 0}, + added {foundNames.length} name{foundNames.length === 1 ? '' : 's'}{:else}, no new names + found{/if}. +

+
+ {:else if scanError} +
+

Scan failed: {scanError}

+ {#if foundNames.length > 0} +

+ Partial results: {foundNames.length} name{foundNames.length === 1 ? '' : 's'} added from + {scannedRows.toLocaleString()} records checked. +

+ {/if} +
+ {/if} + + {#if loading} +

Loading tracked names...

+ {:else if trackedBids.length === 0} +

+ Search for a name above and click Track to monitor its bid status. +

+ {:else} +
+ {#each trackedBids as tracked} + {@const badge = statusLabel(tracked.status)} +
+
+
+
+ {tracked.name} + + {badge.text} + +
+ {#if tracked.bid} +
+

+ High bid: + {formatBidAmount(Math.abs(tracked.bid.high_bid.toNumber()), symbol)} +

+

+ Bidder: + +

+
+ {:else if tracked.status === 'no_bids'} +

No one has bid on this name yet.

+ {/if} +
+ +
+ {#if tracked.status === 'outbid'} +

+ You have been outbid on this name.{#if tracked.refund}{' '}You have {String( + tracked.refund.amount + )} available to reclaim.{/if} +

+
+ + {#if tracked.refund} + + {/if} +
+ {:else if tracked.status === 'won'} +
+ +
+ {:else if tracked.status === 'watching'} +
+ +
+ {:else if tracked.status === 'no_bids'} +
+ +
+ {:else if tracked.status === 'claimed'} +
+ +
+ {/if} +
+ {/each} +
+ {/if} + + {#if !scanning} +
+ +
+ {/if} +
+
diff --git a/src/routes/[[locale]]/[network]/(account)/bidname/formatting.ts b/src/routes/[[locale]]/[network]/(account)/bidname/formatting.ts new file mode 100644 index 000000000..c76676a01 --- /dev/null +++ b/src/routes/[[locale]]/[network]/(account)/bidname/formatting.ts @@ -0,0 +1,23 @@ +import { Asset, type Int64Type } from '@wharfkit/antelope'; + +export function formatRelativeTime(timestamp: number): string { + const diff = Date.now() - timestamp; + const hours = Math.floor(diff / (1000 * 60 * 60)); + const days = Math.floor(hours / 24); + if (days > 0) return `${days}d ago`; + if (hours > 0) return `${hours}h ago`; + const minutes = Math.floor(diff / (1000 * 60)); + return `${minutes}m ago`; +} + +export function formatBidAmount(units: Int64Type, symbol: Asset.SymbolType): string { + return String(Asset.fromUnits(units, symbol)); +} + +export function formatCountdown(ms: number): string { + const totalSeconds = Math.floor(ms / 1000); + const hours = Math.floor(totalSeconds / 3600); + const minutes = Math.floor((totalSeconds % 3600) / 60); + const seconds = totalSeconds % 60; + return `${String(hours).padStart(2, '0')}:${String(minutes).padStart(2, '0')}:${String(seconds).padStart(2, '0')}`; +} diff --git a/src/routes/[[locale]]/[network]/(account)/bidname/tracked.ts b/src/routes/[[locale]]/[network]/(account)/bidname/tracked.ts new file mode 100644 index 000000000..c1ef61ec3 --- /dev/null +++ b/src/routes/[[locale]]/[network]/(account)/bidname/tracked.ts @@ -0,0 +1,45 @@ +import { browser } from '$app/environment'; +import { PUBLIC_BIDNAME_MAX_TRACKED } from '$env/static/public'; + +export const MAX_TRACKED_NAMES = parseInt(PUBLIC_BIDNAME_MAX_TRACKED, 10) || 100; + +function storageKey(account: string): string { + return `unicove_bidname_tracked_${account}`; +} + +export function getTrackedNames(account: string): string[] { + if (!browser) return []; + try { + const stored = localStorage.getItem(storageKey(account)); + return stored ? JSON.parse(stored) : []; + } catch { + localStorage.removeItem(storageKey(account)); + return []; + } +} + +export function canTrackMore(account: string): boolean { + return getTrackedNames(account).length < MAX_TRACKED_NAMES; +} + +export function addTrackedName(account: string, name: string): boolean { + const names = getTrackedNames(account); + if (names.includes(name)) return true; + if (names.length >= MAX_TRACKED_NAMES) return false; + names.push(name); + try { + localStorage.setItem(storageKey(account), JSON.stringify(names)); + } catch { + return false; + } + return true; +} + +export function removeTrackedName(account: string, name: string) { + const names = getTrackedNames(account).filter((n) => n !== name); + try { + localStorage.setItem(storageKey(account), JSON.stringify(names)); + } catch { + // ignore + } +} diff --git a/src/routes/[[locale]]/[network]/(account)/create-account/+page.svelte b/src/routes/[[locale]]/[network]/(account)/create-account/+page.svelte new file mode 100644 index 000000000..6be732a0f --- /dev/null +++ b/src/routes/[[locale]]/[network]/(account)/create-account/+page.svelte @@ -0,0 +1,175 @@ + + +{#snippet control(path: CreationPath, variant: 'primary' | 'outlined', className: string)} + {#if path.action} + + {:else} + + {/if} +{/snippet} + +{#snippet chips(path: CreationPath, chipClass: string)} +
+ {path.requirement} + {#if path.advanced} + Advanced + {/if} +
+{/snippet} + +{#snippet anchorFailed()} + +{/snippet} + + +

+ Creating an account reserves a name and a small amount of storage on the network, so it costs a + little. Every option produces the same kind of account. They differ in what you need before you + start. +

+ + {#if featured} + + + Recommended for you +

{featured.heading}

+

{featured.description}

+ {@render chips(featured, 'bg-surface-container-low')} + {#if featured.id === 'anchor' && failed} + {@render anchorFailed()} + {/if} +
+ {@render control(featured, 'primary', 'mt-2 w-full sm:w-auto sm:justify-self-start')} +
+ {/if} + + {#if alternatives.length} +
+ {#each alternatives as path (path.id)} + +

{path.heading}

+

{path.description}

+ {@render chips(path, '')} + {#if path.id === 'anchor' && failed} + {@render anchorFailed()} + {/if} + {@render control(path, 'outlined', 'mt-auto grow-0')} +
+ {/each} +
+ {/if} +
diff --git a/src/routes/[[locale]]/[network]/(account)/create-account/+page.ts b/src/routes/[[locale]]/[network]/(account)/create-account/+page.ts new file mode 100644 index 000000000..7f1dae809 --- /dev/null +++ b/src/routes/[[locale]]/[network]/(account)/create-account/+page.ts @@ -0,0 +1,15 @@ +import { useLocale } from '$lib/utils/intl'; +import type { PageLoad } from './$types'; + +export const load: PageLoad = async ({ parent }) => { + const { network, locale } = await parent(); + await useLocale(locale); + return { + title: 'Create an Account', + subtitle: `Choose how you want to create your new ${network.chain.name} account.`, + pageMetaTags: { + title: `Create a ${network.chain.name} Account`, + description: `Create a new account on the ${network.chain.name} Network.` + } + }; +}; diff --git a/src/routes/[[locale]]/[network]/(account)/create-account/contract/+page.svelte b/src/routes/[[locale]]/[network]/(account)/create-account/contract/+page.svelte new file mode 100644 index 000000000..868a70291 --- /dev/null +++ b/src/routes/[[locale]]/[network]/(account)/create-account/contract/+page.svelte @@ -0,0 +1,414 @@ + + +{#snippet AccountName()} +
+ + + {#if String(accountName).length > 0 && !accountLengthValid} +

Account names must be exactly 12 characters.

+ {:else if checkingAccount || accountCheckPending} +

Checking availability…

+ {:else if accountExists} +

That name is already taken. Try another.

+ {:else if accountLengthValid && accountValid} +

That name is available.

+ {/if} +
+{/snippet} + +{#snippet PublicKeyStep()} +
+ + +

+ This key will have full control of your new account. It becomes both the owner and active key. +

+ {#if context.wharf.session} +

+ You're signed in already, so + + creating from your existing account + + is faster. +

+ {/if} +
+{/snippet} + +{#snippet Create()} +
+
+

Send tokens to create your account

+

+ Withdraw from an exchange, or send from any existing account. All three values must match + exactly. +

+
+ +
+
+
Send at least
+
+ {cost ? String(cost) : '—'} + +
+
+ +
+
To account
+
+ {sendAccount} + +
+
+ +
+
With this memo
+
+ {memo} + +
+

The transfer will not create your account without this exact memo.

+
+
+ +

+ Anything you send above the minimum becomes your new account's opening balance. +

+ +
+ {#if watcher.polling} +

Waiting for transfer…

+ {/if} +

+ Keep this page open until the transfer arrives. +

+
+
+{/snippet} + +{#snippet Complete()} +
+

Account created

+

+ is ready to use. +

+ + +
+{/snippet} + +{#snippet Taken()} +
+

Name already taken

+

+ Someone else registered {accountName} before your transfer arrived. A transfer + for a name that already exists will not go through, so your tokens stay where they are. Choose + another name and start again. +

+ +
+{/snippet} + +{#snippet ButtonGroup()} +
+ {#if f.current === 'account'} + + {:else} + + {/if} + + +
+{/snippet} + + + + {@render AccountName()} + + {@render PublicKeyStep()} + + {@render Create()} + + {@render Complete()} + + {@render Taken()} + + {@render ButtonGroup()} + + + +{#if context.settings.data.debugMode} +

Debugging

+ {JSON.stringify( + { + cost, + values: { + accountName, + publicKey + }, + valid: { + accountValid, + publicKeyValid + } + }, + undefined, + 2 + )} +{/if} diff --git a/src/routes/[[locale]]/[network]/(account)/create-account/contract/+page.ts b/src/routes/[[locale]]/[network]/(account)/create-account/contract/+page.ts new file mode 100644 index 000000000..9cabd99ff --- /dev/null +++ b/src/routes/[[locale]]/[network]/(account)/create-account/contract/+page.ts @@ -0,0 +1,20 @@ +import { error } from '@sveltejs/kit'; + +import { useLocale } from '$lib/utils/intl'; +import type { PageLoad } from './$types'; + +export const load: PageLoad = async ({ parent }) => { + const { network, locale } = await parent(); + if (!network.supports('createcontract')) { + error(404, 'Not found'); + } + await useLocale(locale); + return { + title: 'Send Tokens to Create an Account', + subtitle: 'Send tokens from an exchange or another account, and your new account is created.', + pageMetaTags: { + title: 'Send Tokens to Create an Account', + description: 'Create a new account by sending tokens with a memo.' + } + }; +}; diff --git a/src/routes/[[locale]]/[network]/(account)/create-account/contract/watcher.svelte.ts b/src/routes/[[locale]]/[network]/(account)/create-account/contract/watcher.svelte.ts new file mode 100644 index 000000000..e16ee86fb --- /dev/null +++ b/src/routes/[[locale]]/[network]/(account)/create-account/contract/watcher.svelte.ts @@ -0,0 +1,112 @@ +import type { PublicKey, NameType } from '@wharfkit/antelope'; + +import { browser } from '$app/environment'; +import type { NetworkState } from '$lib/state/network.svelte'; +import { keyFullyControls } from '$lib/utils/create/guard'; + +const FAST_INTERVAL = 3000; +const SLOW_INTERVAL = 10000; +const SLOWDOWN_AFTER = 120000; + +export class CreationWatcher { + found = $state(false); + taken = $state(false); + polling = $state(false); + + private timer: ReturnType | undefined; + private startedAt = 0; + private listening = false; + private onVisibility = () => { + if (document.visibilityState === 'visible') { + this.schedule(0); + } else { + this.clearTimer(); + } + }; + + constructor( + private network: NetworkState, + private accountName: () => NameType, + private publicKey: () => PublicKey | undefined + ) {} + + start() { + if (this.polling || !browser) { + return; + } + this.polling = true; + this.startedAt = Date.now(); + if (!this.listening) { + document.addEventListener('visibilitychange', this.onVisibility); + this.listening = true; + } + this.schedule(0); + } + + stop() { + this.polling = false; + this.clearTimer(); + if (this.listening) { + document.removeEventListener('visibilitychange', this.onVisibility); + this.listening = false; + } + } + + private clearTimer() { + if (this.timer) { + clearTimeout(this.timer); + this.timer = undefined; + } + } + + private schedule(delay: number) { + this.clearTimer(); + if (!this.polling) { + return; + } + this.timer = setTimeout(() => void this.tick(), delay); + } + + private get interval() { + return Date.now() - this.startedAt < SLOWDOWN_AFTER ? FAST_INTERVAL : SLOW_INTERVAL; + } + + private async tick() { + const key = this.publicKey(); + const name = this.accountName(); + if (!key || !String(name)) { + this.schedule(this.interval); + return; + } + + try { + const response = await this.network.client.v1.chain.get_accounts_by_authorizers({ + keys: [key] + }); + if (!this.polling) { + return; + } + const hasActive = response.accounts.some((row) => keyFullyControls(row, name, 'active', key)); + const hasOwner = response.accounts.some((row) => keyFullyControls(row, name, 'owner', key)); + if (hasActive && hasOwner) { + this.found = true; + this.stop(); + return; + } + + const exists = await this.network.doesAccountExist(name); + if (!this.polling) { + return; + } + if (exists) { + this.taken = true; + this.stop(); + return; + } + } catch (error) { + console.warn('Account creation poll failed', error); + } + + this.schedule(this.interval); + } +} diff --git a/src/routes/[network]/(account)/create-account/direct/+page.svelte b/src/routes/[[locale]]/[network]/(account)/create-account/direct/+page.svelte similarity index 84% rename from src/routes/[network]/(account)/create-account/direct/+page.svelte rename to src/routes/[[locale]]/[network]/(account)/create-account/direct/+page.svelte index 325442eb5..12b0eccd4 100644 --- a/src/routes/[network]/(account)/create-account/direct/+page.svelte +++ b/src/routes/[[locale]]/[network]/(account)/create-account/direct/+page.svelte @@ -4,7 +4,6 @@ import { FiniteStateMachine } from 'runed'; import { goto } from '$app/navigation'; import { page } from '$app/state'; - import * as m from '$lib/paraglide/messages'; import { DD, DL, DLRow } from 'unicove-components'; import { preventDefault } from '$lib/utils'; @@ -297,7 +296,7 @@ {#snippet AccountName()}
- +
{/snippet} {#snippet PublicKeys()}
- +
- +
@@ -345,9 +344,9 @@ class={!showAll && f.current !== 'publickey' ? 'hidden' : ''} > {#if mirrorKeys} - {m.common_use_custom_public_keys()} + Enter a custom owner and active public key {:else} - {m.common_use_current_public_keys()} + Use the public keys from my current account {/if} {/snippet} @@ -355,27 +354,25 @@ {#snippet RAMBytes()}
- +
{accountName}
- +
{#if context.account && mirrorKeys} - {`Owner ${m.common_public_key()}`} - from + Owner Public Key from {:else} {ownerPublicKey} {/if}
- +
{#if context.account && mirrorKeys} - {`Active ${m.common_public_key()}`} - from + Active Public Key from {:else} {activePublicKey} @@ -390,17 +387,15 @@
- +
{#if ramBytesUseCustom} - + - {#if context.settings.data.advancedMode} -
- - {#if context.wharf.session} - - {/if} -
- {/if} +
+ + {#if context.wharf.session} + + {/if} +
{/if} @@ -434,19 +425,15 @@
{@render RAMBytes()} {#if !context.wharf.session}

- {m.common_create_account_login_first()} + You must be logged in with an existing account in order to create another account on this + page.

{/if}
@@ -455,28 +442,28 @@ {#snippet ButtonGroup()}
{#if f.current === 'account' || f.current === 'complete'} - + {:else} - + {/if}
{/snippet} {#snippet TransactError()}
-

{m.common_transaction_error()}

+

Transaction Error

{transactError}

{/snippet} {#snippet TransactResult()}
-

{m.common_account_created()}

-

{m.common_account_created_description()}

+

Account Created

+

Your new account has been created successfully.

{/snippet} @@ -498,7 +485,7 @@ {#if context.settings.data.debugMode} -

{m.common_debugging()}

+

Debugging

{JSON.stringify( { diff --git a/src/routes/[[locale]]/[network]/(account)/create-account/direct/+page.ts b/src/routes/[[locale]]/[network]/(account)/create-account/direct/+page.ts new file mode 100644 index 000000000..05a88f086 --- /dev/null +++ b/src/routes/[[locale]]/[network]/(account)/create-account/direct/+page.ts @@ -0,0 +1,15 @@ +import { useLocale } from '$lib/utils/intl'; +import type { PageLoad } from './$types'; + +export const load: PageLoad = async ({ parent }) => { + const { locale } = await parent(); + await useLocale(locale); + return { + title: 'Create Account', + subtitle: 'Create an account using your existing account', + pageMetaTags: { + title: 'Create Account', + description: 'Create an account using your existing account' + } + }; +}; diff --git a/src/routes/[network]/(account)/create-account/request/+page.svelte b/src/routes/[[locale]]/[network]/(account)/create-account/request/+page.svelte similarity index 94% rename from src/routes/[network]/(account)/create-account/request/+page.svelte rename to src/routes/[[locale]]/[network]/(account)/create-account/request/+page.svelte index 7a8dc0ea8..dfa8490e8 100644 --- a/src/routes/[network]/(account)/create-account/request/+page.svelte +++ b/src/routes/[[locale]]/[network]/(account)/create-account/request/+page.svelte @@ -4,7 +4,6 @@ import { getContext } from 'svelte'; import { Debounced, FiniteStateMachine } from 'runed'; import zlib from 'pako'; - import * as m from '$lib/paraglide/messages'; import { preventDefault } from '$lib/utils'; import MetaMaskRequired from '$lib/components/wallets/metamask/required.svelte'; @@ -12,7 +11,7 @@ import type { UnicoveContext } from '$lib/state/client.svelte'; import { requestPublicKeys, requestSnap } from '$lib/metamask-snap'; import { goto } from '$app/navigation'; - import { Types as RAMTypes } from '$lib/types/ram'; + import { Types as VaultaTypes } from '$lib/wharf/contracts/core.vaulta'; import { Label, NameInput, Button, Code, Stack } from 'unicove-components'; const context = getContext('state'); @@ -99,7 +98,7 @@ account: contract.account, name: 'giftram', authorization: [PlaceholderAuth], - data: RAMTypes.giftram.from({ + data: VaultaTypes.giftram.from({ from: PlaceholderName, receiver: accountName, ram_bytes: ramBytes, @@ -137,7 +136,7 @@ zlib }; const request = await SigningRequest.create({ actions }, opts); - redirectLink = `/${context.network}/prompt/${request.encode(true, false, '')}`; + redirectLink = context.urlPath(`/prompt/${request.encode(true, false, '')}`); redirecting = true; goto(redirectLink); } @@ -147,14 +146,14 @@ {#snippet AccountName()}
- +

Select the 12-character long account name you'd like to register. Use only lowercase A-Z and @@ -215,7 +214,7 @@ {#if context.settings.data.debugMode} -

{m.common_debugging()}

+

Debugging

{ return { diff --git a/src/routes/[network]/(account)/fund/+page.svelte b/src/routes/[[locale]]/[network]/(account)/fund/+page.svelte similarity index 54% rename from src/routes/[network]/(account)/fund/+page.svelte rename to src/routes/[[locale]]/[network]/(account)/fund/+page.svelte index e7aea4f7f..26822c478 100644 --- a/src/routes/[network]/(account)/fund/+page.svelte +++ b/src/routes/[[locale]]/[network]/(account)/fund/+page.svelte @@ -2,7 +2,6 @@ import { getContext } from 'svelte'; import { Card } from 'unicove-components'; import binanceLogo from '$lib/assets/exchanges/binance.webp?enhanced'; - import coinbaseIconLogo from '$lib/assets/exchanges/coinbase-icon.webp?enhanced'; import krakenLogo from '$lib/assets/exchanges/kraken.webp?enhanced'; import okxLogo from '$lib/assets/exchanges/okx.webp?enhanced'; import huobiLogo from '$lib/assets/exchanges/huobi.webp?enhanced'; @@ -11,7 +10,6 @@ import kucoinLogo from '$lib/assets/exchanges/kucoin.webp?enhanced'; import type { UnicoveContext } from '$lib/state/client.svelte'; import { Button } from 'unicove-components'; - import * as m from '$lib/paraglide/messages'; import { DL, DLRow, DD } from 'unicove-components'; import coinbaseLogo from '$lib/assets/exchanges/coinbase.svg'; import { Stack } from 'unicove-components'; @@ -22,19 +20,21 @@ const coinbaseOnRamp = new CoinbaseOnRamp(context); - const ON_RAMP_PROVIDERS = [ - { - id: 'coinbase', - logo: coinbaseLogo, - isLoading: coinbaseOnRamp.isLoading, - action: { - text: m.buy_token_with_coinbase({ - token: context.network.token.symbol.name - }), - handler: () => coinbaseOnRamp.open() - } - } - ] as const; + const ON_RAMP_PROVIDERS = $derived( + context.network.config.coinbase + ? [ + { + id: 'coinbase', + logo: coinbaseLogo, + isLoading: coinbaseOnRamp.isLoading, + action: { + text: `Buy ${context.network.token.symbol.name} with Coinbase`, + handler: () => coinbaseOnRamp.open() + } + } + ] + : [] + ); const EXCHANGES = [ { @@ -42,11 +42,6 @@ logo: binanceLogo, url: 'https://www.binance.com' }, - { - name: 'Coinbase', - logo: coinbaseIconLogo, - url: 'https://www.coinbase.com' - }, { name: 'Kraken', logo: krakenLogo, @@ -81,67 +76,67 @@ - -

{m.fund_direct_purchase()}

-

- {m.fund_direct_purchase_description({ - token: context.network.token.symbol.name - })} -

- - {#each ON_RAMP_PROVIDERS as provider} - -
-
- {provider.id} -
-
- {#if context.network.config.coinbase} - -
{context.network.config.coinbase.assets.join(', ')}
+ {#if ON_RAMP_PROVIDERS.length > 0} + +

Purchase Directly

+

+ Purchase {context.network.token.symbol.name} and have it directly send to your account using + one of the platforms below. +

+ + {#each ON_RAMP_PROVIDERS as provider} + +
+
+ {provider.id} +
+
+ {#if context.network.config.coinbase} + +
{context.network.config.coinbase.assets.join(', ')}
+
+ {/if} + +
+ {#if context.account} + {context.account?.name} + {:else} + Not logged in + {/if} +
- {/if} - -
- {#if context.account} - {context.account?.name} - {:else} - {m.common_not_logged_in()} - {/if} -
-
-
-
+
+
-
- {#if !context.account} -

{m.common_must_be_logged_in()}

- {:else} - - {/if} -
-
- {/each} -
-
+
+ {#if !context.account} +

You must be logged in with an account to use this feature.

+ {:else} + + {/if} +
+ + {/each} + +
+ {/if} -

{m.common_exchanges()}

+

Exchanges

- {m.fund_exchange_description({ - token: context.network.token.symbol.name - })} + {context.network.token.symbol.name} can be purchased through a number of platforms, depending on + the users needs and location. Below are some of the most popular options available.

    diff --git a/src/routes/[[locale]]/[network]/(account)/fund/+page.ts b/src/routes/[[locale]]/[network]/(account)/fund/+page.ts new file mode 100644 index 000000000..819445468 --- /dev/null +++ b/src/routes/[[locale]]/[network]/(account)/fund/+page.ts @@ -0,0 +1,13 @@ +import type { PageLoad } from './$types'; + +export const load: PageLoad = async ({ parent }) => { + const { network } = await parent(); + return { + title: 'Fund Account', + subtitle: `Purchase ${network.token.symbol.name} tokens to fund your account`, + pageMetaTags: { + title: 'Fund Account', + description: `Learn how to fund your account with ${network.token.symbol.name} tokens through various methods including cryptocurrency exchanges and on-ramp providers.` + } + }; +}; diff --git a/src/routes/[network]/(account)/fund/onramps/coinbase.svelte.ts b/src/routes/[[locale]]/[network]/(account)/fund/onramps/coinbase.svelte.ts similarity index 86% rename from src/routes/[network]/(account)/fund/onramps/coinbase.svelte.ts rename to src/routes/[[locale]]/[network]/(account)/fund/onramps/coinbase.svelte.ts index da2b25da9..2e2e66324 100644 --- a/src/routes/[network]/(account)/fund/onramps/coinbase.svelte.ts +++ b/src/routes/[[locale]]/[network]/(account)/fund/onramps/coinbase.svelte.ts @@ -1,5 +1,5 @@ -import * as m from '$lib/paraglide/messages'; import type { UnicoveContext } from '$lib/state/client.svelte'; +import { localizePath } from '$lib/utils/url'; export class CoinbaseOnRamp { private readonly ONRAMP_URL = 'https://pay.coinbase.com/buy'; @@ -26,16 +26,15 @@ export class CoinbaseOnRamp { public async open() { if (!this.context.account?.name || !this.context.network.config.coinbase) { console.error('User account or Coinbase config not available.'); - alert(m.common_must_be_logged_in()); + alert('You must be logged in with an account to use this feature.'); return; } this.isLoading = true; try { - const network = this.context.network.toString(); // Get the unique session token - const response = await fetch(`/${network}/api/onramp/coinbase/session`, { + const response = await fetch(localizePath(`/api/onramp/coinbase/session`), { method: 'POST', headers: { 'Content-Type': 'application/json' @@ -67,7 +66,7 @@ export class CoinbaseOnRamp { ); } catch (error) { console.error('An error occurred during the on-ramp process:', error); - alert(m.coinbase_service_unavailable()); + alert('Coinbase service is currently unavailable.'); } finally { this.isLoading = false; } diff --git a/src/routes/[network]/(account)/ram/(forms)/+layout.svelte b/src/routes/[[locale]]/[network]/(account)/ram/(forms)/+layout.svelte similarity index 85% rename from src/routes/[network]/(account)/ram/(forms)/+layout.svelte rename to src/routes/[[locale]]/[network]/(account)/ram/(forms)/+layout.svelte index b9371becf..9fa552a54 100644 --- a/src/routes/[network]/(account)/ram/(forms)/+layout.svelte +++ b/src/routes/[[locale]]/[network]/(account)/ram/(forms)/+layout.svelte @@ -5,5 +5,5 @@ - {@render children()} + {@render children?.()} diff --git a/src/routes/[network]/(account)/ram/(forms)/buy/+page.svelte b/src/routes/[[locale]]/[network]/(account)/ram/(forms)/buy/+page.svelte similarity index 82% rename from src/routes/[network]/(account)/ram/(forms)/buy/+page.svelte rename to src/routes/[[locale]]/[network]/(account)/ram/(forms)/buy/+page.svelte index e6d29d325..85d33f8e9 100644 --- a/src/routes/[network]/(account)/ram/(forms)/buy/+page.svelte +++ b/src/routes/[[locale]]/[network]/(account)/ram/(forms)/buy/+page.svelte @@ -15,7 +15,6 @@ import AssetText from '$lib/components/elements/asset.svelte'; import RamResource from '$lib/components/elements/ramresource.svelte'; import SystemTokenSwap from '$lib/components/banner/systemTokenSwap.svelte'; - import * as m from '$lib/paraglide/messages'; import { BuyRAMState } from './state.svelte'; import { preventDefault } from '$lib/utils'; @@ -37,7 +36,7 @@ async function handleBuyRAM() { errorMessage = undefined; if (!context.wharf || !context.wharf.session) { - alert(m.common_not_logged_in()); + alert('Not logged in'); return; } @@ -99,21 +98,17 @@ {#if transactionId} - - + + {:else if errorMessage} - + {:else}